Imported Upstream version 3.4 upstream/3.4
authorDongHun Kwak <dh0128.kwak@samsung.com>
Tue, 18 Jan 2022 06:22:28 +0000 (15:22 +0900)
committerDongHun Kwak <dh0128.kwak@samsung.com>
Tue, 18 Jan 2022 06:22:28 +0000 (15:22 +0900)
731 files changed:
.prev-version
.tarball-version
.version
ChangeLog
GNUmakefile
Makefile.in
NEWS
aclocal.m4
build-aux/announce-gen
build-aux/config.guess
build-aux/config.rpath
build-aux/config.sub
build-aux/depcomp
build-aux/do-release-commit-and-tag
build-aux/gendocs.sh
build-aux/git-version-gen
build-aux/gitlog-to-changelog
build-aux/gnu-web-doc-update
build-aux/gnupload
build-aux/install-sh
build-aux/mdate-sh
build-aux/mktempd
build-aux/texinfo.tex
build-aux/update-copyright
build-aux/useless-if-before-free
build-aux/vc-list-files
cfg.mk
configure
configure.ac
debug/Makefile.in
debug/test/HOWTO
debug/test/Makefile.in
doc/C/Makefile.in
doc/C/parted.8
doc/Makefile.in
doc/fdl.texi
doc/parted-pt_BR.texi
doc/parted.info
doc/parted.texi
doc/pt_BR/Makefile.in
doc/stamp-vti
doc/version.texi
include/Makefile.in
include/parted/Makefile.in
include/parted/constraint.h
include/parted/constraint.in.h
include/parted/crc32.h
include/parted/crc32.in.h
include/parted/debug.h
include/parted/debug.in.h
include/parted/device.h
include/parted/device.in.h
include/parted/disk.h
include/parted/disk.in.h
include/parted/endian.h
include/parted/endian.in.h
include/parted/exception.h
include/parted/exception.in.h
include/parted/filesys.h
include/parted/filesys.in.h
include/parted/geom.h
include/parted/geom.in.h
include/parted/natmath.h
include/parted/natmath.in.h
include/parted/parted.h
include/parted/parted.in.h
include/parted/timer.h
include/parted/timer.in.h
include/parted/unit.h
include/parted/unit.in.h
lib/Makefile.in
lib/_Noreturn.h
lib/alloca.c
lib/alloca.in.h
lib/arg-nonnull.h
lib/argmatch.c
lib/argmatch.h
lib/assure.h
lib/attribute.h [new file with mode: 0644]
lib/basename-lgpl.c
lib/basename-lgpl.h [new file with mode: 0644]
lib/basename.c
lib/btowc.c
lib/c++defs.h
lib/c-ctype.h
lib/c-strcase.h
lib/c-strcasecmp.c
lib/c-strcaseeq.h
lib/c-strncasecmp.c
lib/calloc.c
lib/canonicalize-lgpl.c
lib/cdefs.h
lib/cloexec.c [new file with mode: 0644]
lib/cloexec.h [new file with mode: 0644]
lib/close-stream.c
lib/close.c
lib/closeout.c
lib/closeout.h
lib/config.h.in
lib/dirname-lgpl.c
lib/dirname.c
lib/dirname.h
lib/dosname.h [deleted file]
lib/dup2.c [new file with mode: 0644]
lib/errno.in.h
lib/error.c
lib/error.h
lib/exitfail.c
lib/exitfail.h
lib/fcntl.c [new file with mode: 0644]
lib/fcntl.in.h
lib/fd-hook.c
lib/fd-hook.h
lib/filename.h
lib/fpending.c
lib/fpending.h
lib/fstat.c
lib/fsync.c
lib/getdtablesize.c [new file with mode: 0644]
lib/getopt-cdefs.in.h
lib/getopt-core.h
lib/getopt-ext.h
lib/getopt-pfx-core.h
lib/getopt-pfx-ext.h
lib/getopt.c
lib/getopt.in.h
lib/getopt1.c
lib/getopt_int.h
lib/getprogname.c
lib/getprogname.h
lib/getrandom.c [new file with mode: 0644]
lib/gettext.h
lib/gettimeofday.c [deleted file]
lib/glthread/lock.c
lib/glthread/lock.h
lib/glthread/threadlib.c
lib/gnulib.mk
lib/hard-locale.c
lib/hard-locale.h
lib/idx.h [new file with mode: 0644]
lib/intprops.h
lib/inttypes.in.h
lib/langinfo.in.h
lib/lc-charset-dispatch.c [new file with mode: 0644]
lib/lc-charset-dispatch.h [new file with mode: 0644]
lib/libc-config.h
lib/limits.in.h
lib/localcharset.c
lib/localcharset.h
lib/locale.in.h
lib/localeconv.c
lib/localtime-buffer.c [deleted file]
lib/localtime-buffer.h [deleted file]
lib/long-options.c
lib/long-options.h
lib/lseek.c
lib/lstat.c
lib/malloc.c
lib/malloca.c
lib/malloca.h
lib/mbrtowc-impl-utf8.h [new file with mode: 0644]
lib/mbrtowc-impl.h [new file with mode: 0644]
lib/mbrtowc.c
lib/mbsinit.c
lib/mbtowc-impl.h
lib/mbtowc-lock.c [new file with mode: 0644]
lib/mbtowc-lock.h [new file with mode: 0644]
lib/mbtowc.c
lib/minmax.h
lib/mkdir.c
lib/mkstemp.c
lib/msvc-inval.c
lib/msvc-inval.h
lib/msvc-nothrow.c
lib/msvc-nothrow.h
lib/nl_langinfo-lock.c [new file with mode: 0644]
lib/nl_langinfo.c
lib/open.c [new file with mode: 0644]
lib/pathmax.h
lib/progname.c
lib/progname.h
lib/quote.h
lib/quotearg.c
lib/quotearg.h
lib/read.c
lib/readlink.c
lib/realloc.c
lib/regcomp.c
lib/regex.c
lib/regex.h
lib/regex_internal.c
lib/regex_internal.h
lib/regexec.c
lib/rpmatch.c
lib/safe-read.c
lib/safe-read.h
lib/setlocale-lock.c [new file with mode: 0644]
lib/setlocale_null.c [new file with mode: 0644]
lib/setlocale_null.h [new file with mode: 0644]
lib/sleep.c
lib/stat-time.h
lib/stat-w32.c
lib/stat-w32.h
lib/stat.c
lib/stdalign.in.h [new file with mode: 0644]
lib/stdarg.in.h
lib/stdbool.in.h
lib/stddef.in.h
lib/stdint.in.h
lib/stdio-impl.h
lib/stdio.in.h
lib/stdlib.in.h
lib/strdup.c
lib/streq.h
lib/strerror-override.c
lib/strerror-override.h
lib/strerror.c
lib/string.in.h
lib/stripslash.c
lib/strndup.c
lib/strnlen.c
lib/strtol.c
lib/strtoll.c
lib/strtoul.c
lib/strtoull.c
lib/sys-limits.h
lib/sys_random.in.h [new file with mode: 0644]
lib/sys_stat.in.h
lib/sys_time.in.h [deleted file]
lib/sys_types.in.h
lib/tempname.c
lib/tempname.h
lib/time.in.h
lib/unistd.in.h
lib/unlink.c
lib/usleep.c
lib/verify.h
lib/version-etc-fsf.c
lib/version-etc.c
lib/version-etc.h
lib/warn-on-use.h
lib/wchar.in.h
lib/wcrtomb.c
lib/wctype.in.h
lib/windows-initguard.h
lib/windows-mutex.c
lib/windows-mutex.h
lib/windows-once.c
lib/windows-once.h
lib/windows-recmutex.c
lib/windows-recmutex.h
lib/windows-rwlock.c
lib/windows-rwlock.h
lib/xalloc-die.c
lib/xalloc-oversized.h
lib/xalloc.h
lib/xmalloc.c
lib/xstrndup.c
lib/xstrndup.h
lib/xstrtol-error.c [deleted file]
lib/xstrtol.c
lib/xstrtol.h
libparted/Makefile.am
libparted/Makefile.in
libparted/arch/beos.c
libparted/arch/gnu.c
libparted/arch/linux.c
libparted/arch/linux.h
libparted/architecture.c
libparted/architecture.h
libparted/cs/constraint.c
libparted/cs/geom.c
libparted/cs/natmath.c
libparted/debug.c
libparted/disk.c
libparted/exception.c
libparted/filesys.c
libparted/fs/Makefile.am
libparted/fs/Makefile.in
libparted/fs/amiga/a-interface.c
libparted/fs/amiga/affs.c
libparted/fs/amiga/affs.h
libparted/fs/amiga/amiga.c
libparted/fs/amiga/amiga.h
libparted/fs/amiga/apfs.c
libparted/fs/amiga/apfs.h
libparted/fs/amiga/asfs.c
libparted/fs/amiga/asfs.h
libparted/fs/btrfs/btrfs.c
libparted/fs/ext2/ext2.h
libparted/fs/ext2/ext2_fs.h
libparted/fs/ext2/interface.c
libparted/fs/f2fs/f2fs.c [new file with mode: 0644]
libparted/fs/f2fs/f2fs.h [new file with mode: 0644]
libparted/fs/fat/bootsector.c
libparted/fs/fat/bootsector.h
libparted/fs/fat/count.h
libparted/fs/fat/fat.c
libparted/fs/fat/fat.h
libparted/fs/hfs/hfs.c
libparted/fs/hfs/hfs.h
libparted/fs/hfs/probe.c
libparted/fs/hfs/probe.h
libparted/fs/jfs/jfs.c
libparted/fs/linux_swap/linux_swap.c
libparted/fs/nilfs2/nilfs2.c
libparted/fs/ntfs/ntfs.c
libparted/fs/r/fat/bootsector.c
libparted/fs/r/fat/bootsector.h
libparted/fs/r/fat/calc.c
libparted/fs/r/fat/calc.h
libparted/fs/r/fat/clstdup.c
libparted/fs/r/fat/clstdup.h
libparted/fs/r/fat/context.c
libparted/fs/r/fat/context.h
libparted/fs/r/fat/count.c
libparted/fs/r/fat/count.h
libparted/fs/r/fat/fat.c
libparted/fs/r/fat/fat.h
libparted/fs/r/fat/fatio.c
libparted/fs/r/fat/fatio.h
libparted/fs/r/fat/resize.c
libparted/fs/r/fat/table.c
libparted/fs/r/fat/table.h
libparted/fs/r/fat/traverse.c
libparted/fs/r/fat/traverse.h
libparted/fs/r/filesys.c
libparted/fs/r/hfs/advfs.c
libparted/fs/r/hfs/advfs.h
libparted/fs/r/hfs/advfs_plus.c
libparted/fs/r/hfs/advfs_plus.h
libparted/fs/r/hfs/cache.c
libparted/fs/r/hfs/cache.h
libparted/fs/r/hfs/file.c
libparted/fs/r/hfs/file.h
libparted/fs/r/hfs/file_plus.c
libparted/fs/r/hfs/file_plus.h
libparted/fs/r/hfs/hfs.c
libparted/fs/r/hfs/hfs.h
libparted/fs/r/hfs/journal.c
libparted/fs/r/hfs/journal.h
libparted/fs/r/hfs/probe.c
libparted/fs/r/hfs/probe.h
libparted/fs/r/hfs/reloc.c
libparted/fs/r/hfs/reloc.h
libparted/fs/r/hfs/reloc_plus.c
libparted/fs/r/hfs/reloc_plus.h
libparted/fs/reiserfs/reiserfs.c
libparted/fs/reiserfs/reiserfs.h
libparted/fs/udf/udf.c
libparted/fs/ufs/ufs.c
libparted/fs/xfs/xfs.c
libparted/labels/Makefile.am
libparted/labels/Makefile.in
libparted/labels/aix.c
libparted/labels/atari.c
libparted/labels/bsd.c
libparted/labels/dasd.c
libparted/labels/dos.c
libparted/labels/dvh.c
libparted/labels/gpt.c
libparted/labels/loop.c
libparted/labels/mac.c
libparted/labels/misc.h
libparted/labels/pc98.c
libparted/labels/pt-tools.c
libparted/labels/pt-tools.h
libparted/labels/rdb.c
libparted/labels/sun.c
libparted/libparted.c
libparted/mbr.s
libparted/tests/Makefile.am
libparted/tests/Makefile.in
libparted/tests/t1000-label.sh
libparted/tests/t2000-disk.sh
libparted/tests/t2100-zerolen.sh
libparted/tests/t3000-symlink.sh
libparted/timer.c
libparted/unit.c
m4/00gnulib.m4
m4/__inline.m4
m4/absolute-header.m4
m4/alloca.m4
m4/arpa_inet_h.m4
m4/assert.m4
m4/btowc.m4
m4/builtin-expect.m4
m4/calloc.m4
m4/canonicalize.m4
m4/clock_time.m4 [new file with mode: 0644]
m4/close.m4
m4/codeset.m4
m4/config-h.m4
m4/configmake.m4
m4/ctype.m4
m4/dirname.m4 [deleted file]
m4/double-slash-root.m4
m4/dup2.m4
m4/eealloc.m4
m4/environ.m4
m4/errno_h.m4
m4/error.m4
m4/extensions.m4
m4/extern-inline.m4
m4/fcntl-o.m4
m4/fcntl.m4
m4/fcntl_h.m4
m4/fdopen.m4
m4/flexmember.m4
m4/fpending.m4
m4/fstat.m4
m4/fsync.m4
m4/ftruncate.m4
m4/getcwd.m4
m4/getdtablesize.m4
m4/getopt.m4
m4/getpagesize.m4
m4/getprogname.m4
m4/getrandom.m4 [new file with mode: 0644]
m4/gettimeofday.m4
m4/glibc21.m4
m4/gnulib-common.m4
m4/gnulib-comp.m4
m4/host-cpu-c-abi.m4 [deleted file]
m4/include_next.m4
m4/inet_pton.m4
m4/intl-thread-locale.m4
m4/intlmacosx.m4
m4/inttypes-pri.m4 [deleted file]
m4/inttypes.m4
m4/ioctl.m4
m4/isblank.m4
m4/langinfo_h.m4
m4/largefile.m4
m4/lcmessage.m4
m4/lib-ignore.m4
m4/lib-ld.m4
m4/lib-link.m4
m4/lib-prefix.m4
m4/limits-h.m4
m4/localcharset.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-tr.m4
m4/locale-zh.m4
m4/locale_h.m4
m4/localeconv.m4
m4/localename.m4
m4/localtime-buffer.m4 [deleted file]
m4/lock.m4
m4/longlong.m4 [deleted file]
m4/lseek.m4
m4/lstat.m4
m4/malloc.m4
m4/malloca.m4
m4/manywarnings.m4
m4/mbrtowc.m4
m4/mbsinit.m4
m4/mbstate_t.m4
m4/mbtowc.m4
m4/minmax.m4
m4/mkdir.m4
m4/mkstemp.m4
m4/mmap-anon.m4
m4/mode_t.m4
m4/msvc-inval.m4
m4/msvc-nothrow.m4
m4/multiarch.m4
m4/musl.m4 [new file with mode: 0644]
m4/nanosleep.m4
m4/netinet_in_h.m4
m4/nl_langinfo.m4
m4/nocrash.m4
m4/o-direct.m4
m4/off_t.m4
m4/open-cloexec.m4
m4/open-slash.m4 [new file with mode: 0644]
m4/open.m4
m4/pathmax.m4
m4/perror.m4
m4/pid_t.m4 [new file with mode: 0644]
m4/pipe.m4
m4/priv-set.m4
m4/pthread-thread.m4
m4/pthread_h.m4
m4/pthread_rwlock_rdlock.m4
m4/pthread_sigmask.m4
m4/putenv.m4
m4/quote.m4
m4/quotearg.m4
m4/raise.m4
m4/read.m4
m4/readlink.m4
m4/realloc.m4
m4/regex.m4
m4/rpmatch.m4
m4/safe-read.m4
m4/sched_h.m4
m4/select.m4
m4/semaphore.m4 [new file with mode: 0644]
m4/setenv.m4
m4/setlocale.m4
m4/setlocale_null.m4 [new file with mode: 0644]
m4/sigaction.m4
m4/signal_h.m4
m4/signalblocking.m4
m4/sleep.m4
m4/socketlib.m4
m4/sockets.m4
m4/socklen.m4
m4/sockpfaf.m4
m4/ssize_t.m4
m4/stat-time.m4
m4/stat.m4
m4/std-gnu11.m4
m4/stdalign.m4
m4/stdarg.m4
m4/stdbool.m4
m4/stddef_h.m4
m4/stdint.m4
m4/stdio_h.m4
m4/stdlib_h.m4
m4/strdup.m4
m4/strerror.m4
m4/strerror_r.m4
m4/string_h.m4
m4/strndup.m4
m4/strnlen.m4
m4/strtoll.m4
m4/strtoull.m4
m4/symlink.m4
m4/sys_ioctl_h.m4
m4/sys_random_h.m4 [new file with mode: 0644]
m4/sys_select_h.m4
m4/sys_socket_h.m4
m4/sys_stat_h.m4
m4/sys_time_h.m4
m4/sys_types_h.m4
m4/sys_uio_h.m4
m4/tempname.m4
m4/thread.m4
m4/threadlib.m4
m4/time_h.m4
m4/unistd_h.m4
m4/unlink.m4
m4/unlinkdir.m4
m4/usleep.m4
m4/version-etc.m4
m4/visibility.m4 [new file with mode: 0644]
m4/warn-on-use.m4
m4/warnings.m4
m4/wchar_h.m4
m4/wchar_t.m4
m4/wcrtomb.m4
m4/wctob.m4
m4/wctomb.m4
m4/wctype_h.m4
m4/wint_t.m4
m4/xalloc.m4
m4/xstrndup.m4
m4/xstrtol.m4
m4/yield.m4
m4/zzgnulib.m4 [new file with mode: 0644]
maint.mk
parted.spec
parted.spec.in
parted/Makefile.in
parted/command.c
parted/command.h
parted/parted.c
parted/strlist.c
parted/strlist.h
parted/table.c
parted/table.h
parted/ui.c
parted/ui.h
partprobe/Makefile.in
partprobe/partprobe.c
po/POTFILES.in
po/ca.gmo
po/ca.po
po/cs.gmo
po/cs.po
po/da.gmo
po/da.po
po/de.gmo
po/de.po
po/es.gmo
po/es.po
po/fr.gmo
po/fr.po
po/fur.gmo
po/fur.po
po/gl.gmo
po/gl.po
po/hu.gmo
po/hu.po
po/id.gmo
po/id.po
po/it.gmo
po/it.po
po/ja.gmo
po/ja.po
po/ko.gmo
po/ko.po
po/nl.gmo
po/nl.po
po/nn.gmo
po/nn.po
po/parted.pot
po/pl.gmo
po/pl.po
po/pt.gmo
po/pt.po
po/pt_BR.gmo
po/pt_BR.po
po/ro.gmo
po/ro.po
po/ru.gmo
po/ru.po
po/rw.gmo
po/rw.po
po/sk.gmo
po/sk.po
po/sl.gmo
po/sl.po
po/sr.gmo
po/sr.po
po/sv.gmo
po/sv.po
po/tr.gmo
po/tr.po
po/uk.gmo
po/uk.po
po/vi.gmo
po/vi.po
po/zh_CN.gmo
po/zh_CN.po
po/zh_TW.gmo
po/zh_TW.po
scripts/extract_symvers
tests/Makefile.in
tests/duplicate.c
tests/gpt-header-move
tests/help-version.sh
tests/init.sh
tests/msdos-overlap
tests/t0000-basic.sh
tests/t0001-tiny.sh
tests/t0010-script-no-ctrl-chars.sh
tests/t0100-print.sh
tests/t0101-print-empty.sh
tests/t0200-gpt.sh
tests/t0201-gpt.sh
tests/t0202-gpt-pmbr.sh
tests/t0203-gpt-create-on-min-sized-device.sh
tests/t0203-gpt-shortened-device-primary-valid.sh
tests/t0203-gpt-tiny-device-abort.sh
tests/t0205-gpt-list-clobbers-pmbr.sh
tests/t0206-gpt-print-with-corrupt-primary-clobbers-pmbr.sh
tests/t0207-IEC-binary-notation.sh
tests/t0208-mkpart-end-in-IEC.sh
tests/t0209-gpt-pmbr_boot.sh
tests/t0210-gpt-resized-partition-entry-array.sh
tests/t0211-gpt-rewrite-header.sh
tests/t0212-gpt-many-partitions.sh
tests/t0213-mkpart-start-negative.sh
tests/t0220-gpt-msftres.sh
tests/t0250-gpt.sh
tests/t0251-gpt-unicode.sh
tests/t0280-gpt-corrupt.sh
tests/t0281-gpt-grow.sh
tests/t0282-gpt-move-backup.sh
tests/t0283-overlap-partitions.sh
tests/t0300-dos-on-gpt.sh
tests/t0301-overwrite-gpt-pmbr.sh
tests/t0350-mac-PT-increases-sector-size.sh
tests/t0400-loop-clobber-infloop.sh
tests/t0500-dup-clobber.sh
tests/t0501-duplicate.sh
tests/t1100-busy-label.sh
tests/t1101-busy-partition.sh
tests/t1102-loop-label.sh
tests/t1104-remove-and-add-partition.sh
tests/t1700-probe-fs.sh
tests/t1701-rescue-fs.sh
tests/t2200-dos-label-recog.sh
tests/t2201-pc98-label-recog.sh
tests/t2300-dos-label-extended-bootcode.sh
tests/t2310-dos-extended-2-sector-min-offset.sh
tests/t2320-dos-extended-noclobber.sh
tests/t2400-dos-hfs-partition-type.sh
tests/t2410-dos-udf-partition-type.sh
tests/t2500-probe-corrupt-hfs.sh
tests/t3000-resize-fs.sh
tests/t3200-resize-partition.sh
tests/t3200-type-change.sh
tests/t3300-palo-prep.sh
tests/t3310-flags.sh
tests/t3400-whole-disk-FAT-partition.sh
tests/t4000-sun-raid-type.sh
tests/t4001-sun-vtoc.sh
tests/t4100-dvh-partition-limits.sh
tests/t4100-msdos-partition-limits.sh
tests/t4100-msdos-starting-sector.sh
tests/t4200-partprobe.sh
tests/t4300-nilfs2-tiny.sh
tests/t4301-nilfs2-badsb2.sh
tests/t4302-nilfs2-lessbadsb2.sh
tests/t5000-tags.sh
tests/t6000-dm.sh
tests/t6001-psep.sh
tests/t6002-dm-busy.sh
tests/t6003-dm-hide.sh
tests/t6004-dm-many-partitions.sh
tests/t6005-dm-uuid.sh
tests/t6006-dm-512b-sectors.sh
tests/t6100-mdraid-partitions.sh
tests/t7000-scripting.sh
tests/t8000-loop.sh
tests/t8001-loop-blkpg.sh
tests/t9010-big-sector.sh
tests/t9020-alignment.sh
tests/t9021-maxima.sh
tests/t9022-one-unit-snap.sh
tests/t9023-value-lt-one.sh
tests/t9030-align-check.sh
tests/t9040-many-partitions.sh
tests/t9041-undetected-in-use-16th-partition.sh
tests/t9042-dos-partition-limit.sh
tests/t9050-partition-table-types.sh

index 24da24d4da92af23f3b968b68b1e01ca3894c456..7799049bdf5f5e549ac117d3a5a733b8cb8a8175 100644 (file)
@@ -1 +1 @@
-3.2.153
+3.3.52
index eb39e5382f4f035e4d71c7f67712cdbfa6c0c335..2f4b60750dc3500b0e4cf08f316a960a7ca42b40 100644 (file)
@@ -1 +1 @@
-3.3
+3.4
index eb39e5382f4f035e4d71c7f67712cdbfa6c0c335..2f4b60750dc3500b0e4cf08f316a960a7ca42b40 100644 (file)
--- a/.version
+++ b/.version
@@ -1 +1 @@
-3.3
+3.4
index 0c6bd20789665969936a54317824d2589ee0e031..d20b8df3c8a4ae9eab7c6968b577ffe5b03782c5 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,295 @@
+2021-01-27  Brian C. Lane  <bcl@redhat.com>
+
+       version 3.4
+       * NEWS: Record release date.
+
+       NEWS: Mention the non-public gnulib commit
+
+2021-01-26  Brian C. Lane  <bcl@redhat.com>
+
+       cfg.mk: disable submodule checks to work around broken upstream gnulib
+
+       Include local gnulib change to version-etc.c date
+
+2021-01-18  Brian C. Lane  <bcl@redhat.com>
+
+       maint: Update copyright statements to 2021
+       By running make update-copyright
+
+       README-release: Add information for updating the Translation Project
+
+2020-12-14  Brian C. Lane  <bcl@redhat.com>
+
+       maint: post-release administrivia
+       * NEWS: Add header line for next release.
+       * .prev-version: Record previous version.
+       * cfg.mk (old_NEWS_hash): Auto-update.
+
+       version 3.3.52
+       * NEWS: Record release date.
+
+2020-12-11  Brian C. Lane  <bcl@redhat.com>
+
+       libparted/fs: Add ./lib to include search path
+
+       libparted: Check for NULL flag_name in ped_partition_flag_get_by_name
+       strcasecmp parameters cannot be NULL according to gcc -Wanalyzer-null-argument
+
+       po/POTFILES.in: Remove xstrtol-error.c
+       Appears to no longer be needed, results in an error when running make
+       check syntax-check.
+
+       maint: Update copyright statements to 2020
+       By running make update-copyright
+
+       configure.ac (AC_PREREQ): Require 2.64
+
+       maint: Bump library REVISION number for release
+
+       maint: Update bootstrap script from latest gnulib
+
+       maint: Update to latest gnulib
+
+2020-12-04  Brian C. Lane  <bcl@redhat.com>
+
+       labels/bsd.c: Drop alpha_bootblock_checksum from bsd_probe
+       Thanks to Alpine Linux for catching this. In commit
+       a5f69f396713ab8ac1e57458cbb9af552d2c1659 I change label to actually
+       point to the label and failed to pass the new s0 to
+       alpha_bootblock_checksum() instead of label. So it was writing the
+       so-called checksum off the end of the 512b sector buffer.
+
+       bug: https://gitlab.alpinelinux.org/alpine/aports/-/issues/12161
+       upstream report: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=45026
+
+2020-11-20  Brian C. Lane  <bcl@redhat.com>
+
+       libparted/fs: Fix GCC warnings suggesting pure for PED_ASSERT functions
+       There was some question about whether or not pure should be used for
+       functions with PED_ASSERT (or exit) in them. It should be fine, since
+       the values checked by the ASSERT are passed to the function directly.
+       Behavior should be exactly the same for the same inputs.
+
+       libparted: Remove disabled code
+
+       fs/r/hfs: Remove disabled code
+
+       fs/r/fat: Remove disabled code
+
+       hfs/reloc_plus: Fix gcc 10 warnings about cast alignment
+
+       hfs/reloc: Fix gcc 10 warnings about cast alignment
+
+       ui: Fix gcc 10 warning about snprintf truncating an int
+       Double the storage to 20 bytes.
+
+       ui: Fix command_line_get_disk_flag
+       It was using PedPartitionFlag instead of PedDiskFlag when walking the
+       available flags.
+
+       ped_assert: Fix incorrect exception option
+       PED_EXCEPTION_FATAL is a type, not an option. A PED_EXCEPTION_BUG should
+       always select CANCEL.
+
+       ufs:  Fix gcc 10 warnings about cast alignment
+
+       ntfs:  Fix gcc 10 warnings about cast alignment
+
+       nilfs2: Fix gcc 10 warnings about cast alignment
+
+       ext2: Fix gcc 10 warnings about cast alignment
+
+       hfs/hfs: Fix gcc 10 warnings about cast alignment
+
+       hfs/advfs_plus: Fix gcc 10 warnings about cast alignment
+
+       hfs/advfs: Fix gcc 10 warnings about cast alignment
+
+       hfs: Fix gcc 10 bounds check warning
+       binfo is actually a list of structs that cannot be known until runtime,
+       so use a variable length array.
+
+       tests: Fix unsigned warning in duplicate.c
+
+       linux: Fix gcc complains about signed sccanf variables
+
+       dos: Fix gcc complaints when using boot_code pointer
+
+       bsd: Fix gcc complaints when using boot_code pointer
+
+2020-11-20  Shin'ichiro Kawasaki  <kawasaki@juno.dti.ne.jp>
+
+       libparted: Fix warnings from GCC 8 -Wsuggest-attribute=const
+       As GCC 8 suggests, add 'const' attribute to six functions. After adding
+       const attributes, GCC suggested two more functions to add const
+       attributes. Add const attributes to those functions also. In total, add
+       const attributes to 8 functions.
+
+       I read code of the functions and confirmed they are const: they examine
+       only their arguments and have no effect other than return value.
+
+2020-11-20  Shin'ichiro Kawasaki  <kawasaki@juno.dti.ne.jp>
+
+       libparted: Fix warnings from GCC 8 -Wsuggest-attribute=pure
+       As GCC 8 suggests, add 'pure' attribute to 17 functions. After adding
+       pure attributes, GCC suggested three more functions to add pure
+       attributes. Add pure attribute to those functions also. In total, add
+       pure attributes to 20 functions.
+
+       I read code of the functions and confirmed the 20 functions are pure:
+       they have no effect except the return value, and their return value
+       depend only on the parameters and/or global variables.
+
+2020-11-05  Shin'ichiro Kawasaki  <kawasaki@juno.dti.ne.jp>
+
+       libparted: Avoid a GCC warning for unused functions
+       libparted/fs/r/hfs/hfs.c has a '#if 0' block. The block refers two
+       functions hfsplus_clobber() and hfs_clobber(). It have GCC report a
+       warning below.
+
+         CC       r/hfs/hfs.lo
+       r/hfs/hfs.c:343:1: warning: 'hfsplus_clobber' defined but not used [-Wunused-function]
+         343 | hfsplus_clobber (PedGeometry* geom)
+             | ^~~~~~~~~~~~~~~
+
+       To avoid the warning, add two more '#if 0' to disable the two functions.
+
+2020-11-05  Shin'ichiro Kawasaki  <kawasaki@juno.dti.ne.jp>
+
+       libparted: Fix warnings from GCC's -Wimplicit-fallthrough
+       Two case statements have intentional fall-throughs but do not have
+       comments to note it. GCC detects and warns those case statements. To
+       avoid the warning, add fall-through comments.
+
+2020-11-05  Shin'ichiro Kawasaki  <kawasaki@juno.dti.ne.jp>
+
+       libparted: Fix warnings from GCC 8 -Wunused-variable and -Warray-bounds
+       GCC 8 reports two warnings as follows.
+
+       r/fat/bootsector.c: In function 'fat_boot_sector_set_boot_code':
+       r/fat/bootsector.c:274:15: warning: unused variable 'fs_info' [-Wunused-variable]
+         FatSpecific* fs_info = FAT_SPECIFIC (fs);
+                      ^~~~~~~
+       In function 'memcpy',
+           inlined from 'fat_boot_sector_set_boot_code' at r/fat/bootsector.c:283:2:
+       /usr/include/bits/string_fortified.h:34:10: warning: '__builtin_memcpy' forming offset [126, 128] is out of the bounds [0, 125] [-Warray-bounds]
+          return __builtin___memcpy_chk (__dest, __src, __len, __bos0 (__dest));
+                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+       To avoid the warnings, remove the unused variable. Use strcpy in place of
+       memcpy checking copy length.
+
+2020-11-05  Shin'ichiro Kawasaki  <kawasaki@juno.dti.ne.jp>
+
+       libparted: Fix a GCC warning -Wunused-but-set-variable
+       GCC warns that a variable 'prealloc' defined for _generic_affs_probe() in
+       fs/amiga/affs.c is set but its value is never used.
+
+         CC       amiga/affs.lo
+       amiga/affs.c: In function '_generic_affs_probe':
+       amiga/affs.c:54:35: warning: variable 'prealloc' set but not used [-Wunused-but-set-variable]
+          54 |  int blocksize = 1, reserved = 2, prealloc = 0;
+             |                                   ^~~~~~~~
+       Remove the variable for simplicity and to avoid the warning.
+
+2020-11-05  Brian C. Lane  <bcl@redhat.com>
+
+       tests: Update all the dmsetup tests to use ENABLE_DEVICE_MAPPER
+
+2020-11-05  Joe Slater  <joe.slater@windriver.com>
+
+       t6001-psep: modify device manage support detection
+       Use the method other tests use -- test an environment variable.
+
+2020-11-05  Petr Lautrbach  <plautrba@redhat.com>
+
+       Do not link to libsepol or libselinux
+       Given that there's no code which would use it there's no reason to link
+       to libsepol or libselinux even when they are available.
+
+2020-09-01  Brian C. Lane  <bcl@redhat.com>
+
+       tests: Add a test for resizepart on a busy partition
+       This makes sure that the resizepart on a busy partition with the size on
+       the cmdline will work.
+
+2020-08-31  Brian C. Lane  <bcl@redhat.com>
+
+       parted: Preserve resizepart End when prompted for busy partition
+       Resizing busy partitions is allowed, but the user is prompted, which
+       erases the cmdline. It is annoying to have to re-end the ending location
+       after answering Yes. This saves the word and pushes it back onto the
+       cmdline after the user agrees to resize the busy partition.
+
+2020-05-04  Romain Perier  <romain.perier@gmail.com>
+
+       tests: Add f2fs to the fs probe test
+
+       Add support for the F2FS filesystem
+       This adds a basic support for the Flash-Friendly File System. So
+       we can manipulate the file system by using the PedFileSystem API and we
+       can do basic device probing for autodetecting the current fs.
+
+2020-03-09  Max Campbell  <max@0m.ax>
+
+       Removed reference to ped_file_system_create
+       Removed a reference to the removed function ped_file_system_create in
+       the docs for ped_file_system_clobber.
+
+2019-12-20  Brian C. Lane  <bcl@redhat.com>
+
+       NEWS: Add bls_boot to new features
+
+       libparted: Add support for bls_boot to GPT disks
+       This sets the partition GUID to bc13c2ff-59e6-4262-a352-b275fd6f7172 to
+       indicate that the partition is a Boot Loader Specification compatible
+       /boot partition.
+
+       libparted: Add support for MSDOS partition type bls_boot (0xea)
+       This type is used by the Boot Loader Specification to identify a
+       compatible /boot boot partition.
+
+2019-12-20  Alper Nebi Yasak  <alpernebiyasak@gmail.com>
+
+       libparted: Add ChromeOS Kernel partition flag
+       This adds a GPT-only partition type flag, chromeos_kernel, for use on
+       Chrome OS machines, with GUID FE3A2A5D-4F32-41A7-B725-ACCC3285A309.
+
+       The firmware/bootloader in these machines relies on special images being
+       written to partitions of this type. Among multiple such partitions, it
+       decides which one it will boot from based on the GUID-specific partition
+       attributes. This patch is not intended to and does not manipulate these
+       bits.
+
+       Google refers to these partitions as "ChromeOS kernel" partitions. They
+       also define partitions for rootfs, firmware, and a reserved one; but
+       these are not necessary for the boot flow and are not included here.
+
+       Relevant ChromiumOS documentation:
+       https://www.chromium.org/chromium-os/chromiumos-design-docs/disk-format
+
+2019-12-16  Brian C. Lane  <bcl@redhat.com>
+
+       Fix end_input usage in do_resizepart
+       It needs to be set to NULL, since it may not get set by the call to
+       command_line_get_sector
+
+       tests: Test incomplete resizepart command
+
+2019-10-11  Brian C. Lane  <bcl@redhat.com>
+
+       maint: Add note about gpg key selection for gnupload
+
+       Switch gpt-header-move and msdos-overlap to python3
+       python2 is EOL on January 1, 2020 so it is time to switch to python3.
+
 2019-10-10  Brian C. Lane  <bcl@redhat.com>
 
+       maint: post-release administrivia
+       * NEWS: Add header line for next release.
+       * .prev-version: Record previous version.
+       * cfg.mk (old_NEWS_hash): Auto-update.
+
        version 3.3
        * NEWS: Record release date.
 
index da25113fc31b6c516538f0e6ff69b2cfb91e2114..770923b8574057b380f6a725fca7fc22a29203f3 100644 (file)
@@ -5,7 +5,7 @@
 # It is necessary if you want to build targets usually of interest
 # only to the maintainer.
 
-# Copyright (C) 2001, 2003, 2006-2019 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003, 2006-2020 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -104,7 +104,7 @@ endif
 
 abort-due-to-no-makefile:
        @echo There seems to be no Makefile in this directory.   1>&2
-       @echo "You must run ./configure before running 'make'." 1>&2
+       @echo "You must run ./configure before running '$(MAKE)'." 1>&2
        @exit 1
 
 endif
index 2dfe7f338199202a370a7e0f6806ea132dba8443..d671e0b10959e5b568afcf68f4d4c002f20eb526 100644 (file)
@@ -95,9 +95,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -109,15 +109,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -127,25 +125,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -157,9 +156,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -174,6 +174,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -182,14 +183,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
@@ -362,6 +364,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -396,6 +399,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -406,6 +411,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -453,19 +459,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -479,6 +489,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -539,6 +551,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -587,9 +600,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -605,6 +621,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -688,11 +705,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -702,12 +721,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -741,10 +765,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -766,14 +790,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -792,7 +819,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -802,7 +828,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -825,6 +850,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -910,7 +936,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -923,6 +951,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -945,6 +974,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -953,15 +983,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -1000,6 +1029,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -1025,16 +1055,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -1083,6 +1125,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -1112,6 +1155,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1148,21 +1192,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1190,6 +1237,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1199,6 +1247,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1231,6 +1281,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1319,6 +1370,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1356,13 +1408,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1381,6 +1433,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
diff --git a/NEWS b/NEWS
index 2630146a8701173481e393a0fbdf78bccc29d2ae..c081eb0c95151d2cd665a190f370dc502fccb9b4 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,23 @@
 GNU parted NEWS                                    -*- outline -*-
 
+* Noteworthy changes in release 3.4 (2021-01-27) [stable]
+
+  Include local gnulib change to version-etc.c date.
+  This means including a non-public gnulib commit in this release.
+  cfg.mk: disable submodule checks to work around broken upstream gnulib
+
+* Noteworthy changes in release 3.3.52 (2020-12-14) [alpha]
+
+** New Features
+
+  Add a new partition type flag, chromeos_kernel, for use with ChromeOS
+  machines. This is a GPT-only flag and sets the type GUID to
+  FE3A2A5D-4F32-41A7-B725-ACCC3285A309.
+
+  Add a new partition flag for Linux Boot Loader Specification /boot
+  partitions. The bls_boot flag will set the msdos partition type to 0xea
+  and the GPT partition type GUID to bc13c2ff-59e6-4262-a352-b275fd6f7172.
+
 * Noteworthy changes in release 3.3 (2019-10-10) [stable]
 
 ** Bug Fixes
@@ -914,7 +932,7 @@ GNU parted NEWS                                    -*- outline -*-
 
 ========================================================================
 
-Copyright (C) 2001-2014, 2019 Free Software Foundation, Inc.
+Copyright (C) 2001-2014, 2019-2021 Free Software Foundation, Inc.
 
 Permission is granted to copy, distribute and/or modify this document
 under the terms of the GNU Free Documentation License, Version 1.3 or
index fef217e5e61890668884f985adb7c7cfac5b7115..fa00b1d1271d10dbe9413078ac73f6d92e354468 100644 (file)
@@ -1519,12 +1519,12 @@ m4_include([m4/btowc.m4])
 m4_include([m4/builtin-expect.m4])
 m4_include([m4/calloc.m4])
 m4_include([m4/canonicalize.m4])
+m4_include([m4/clock_time.m4])
 m4_include([m4/close.m4])
 m4_include([m4/codeset.m4])
 m4_include([m4/config-h.m4])
 m4_include([m4/configmake.m4])
 m4_include([m4/ctype.m4])
-m4_include([m4/dirname.m4])
 m4_include([m4/double-slash-root.m4])
 m4_include([m4/dup2.m4])
 m4_include([m4/eealloc.m4])
@@ -1547,18 +1547,17 @@ m4_include([m4/getdtablesize.m4])
 m4_include([m4/getopt.m4])
 m4_include([m4/getpagesize.m4])
 m4_include([m4/getprogname.m4])
+m4_include([m4/getrandom.m4])
 m4_include([m4/gettext.m4])
 m4_include([m4/gettimeofday.m4])
 m4_include([m4/glibc21.m4])
 m4_include([m4/gnulib-common.m4])
 m4_include([m4/gnulib-comp.m4])
-m4_include([m4/host-cpu-c-abi.m4])
 m4_include([m4/iconv.m4])
 m4_include([m4/include_next.m4])
 m4_include([m4/inet_pton.m4])
 m4_include([m4/intl-thread-locale.m4])
 m4_include([m4/intlmacosx.m4])
-m4_include([m4/inttypes-pri.m4])
 m4_include([m4/inttypes.m4])
 m4_include([m4/ioctl.m4])
 m4_include([m4/isblank.m4])
@@ -1579,9 +1578,7 @@ m4_include([m4/locale-zh.m4])
 m4_include([m4/locale_h.m4])
 m4_include([m4/localeconv.m4])
 m4_include([m4/localename.m4])
-m4_include([m4/localtime-buffer.m4])
 m4_include([m4/lock.m4])
-m4_include([m4/longlong.m4])
 m4_include([m4/lseek.m4])
 m4_include([m4/lstat.m4])
 m4_include([m4/ltoptions.m4])
@@ -1603,6 +1600,7 @@ m4_include([m4/mode_t.m4])
 m4_include([m4/msvc-inval.m4])
 m4_include([m4/msvc-nothrow.m4])
 m4_include([m4/multiarch.m4])
+m4_include([m4/musl.m4])
 m4_include([m4/nanosleep.m4])
 m4_include([m4/netinet_in_h.m4])
 m4_include([m4/nl_langinfo.m4])
@@ -1611,9 +1609,11 @@ m4_include([m4/nocrash.m4])
 m4_include([m4/o-direct.m4])
 m4_include([m4/off_t.m4])
 m4_include([m4/open-cloexec.m4])
+m4_include([m4/open-slash.m4])
 m4_include([m4/open.m4])
 m4_include([m4/pathmax.m4])
 m4_include([m4/perror.m4])
+m4_include([m4/pid_t.m4])
 m4_include([m4/pipe.m4])
 m4_include([m4/po.m4])
 m4_include([m4/priv-set.m4])
@@ -1634,8 +1634,10 @@ m4_include([m4/rpmatch.m4])
 m4_include([m4/safe-read.m4])
 m4_include([m4/sched_h.m4])
 m4_include([m4/select.m4])
+m4_include([m4/semaphore.m4])
 m4_include([m4/setenv.m4])
 m4_include([m4/setlocale.m4])
+m4_include([m4/setlocale_null.m4])
 m4_include([m4/sigaction.m4])
 m4_include([m4/signal_h.m4])
 m4_include([m4/signalblocking.m4])
@@ -1665,6 +1667,7 @@ m4_include([m4/strtoll.m4])
 m4_include([m4/strtoull.m4])
 m4_include([m4/symlink.m4])
 m4_include([m4/sys_ioctl_h.m4])
+m4_include([m4/sys_random_h.m4])
 m4_include([m4/sys_select_h.m4])
 m4_include([m4/sys_socket_h.m4])
 m4_include([m4/sys_stat_h.m4])
@@ -1680,6 +1683,7 @@ m4_include([m4/unlink.m4])
 m4_include([m4/unlinkdir.m4])
 m4_include([m4/usleep.m4])
 m4_include([m4/version-etc.m4])
+m4_include([m4/visibility.m4])
 m4_include([m4/warn-on-use.m4])
 m4_include([m4/warnings.m4])
 m4_include([m4/wchar_h.m4])
@@ -1693,3 +1697,4 @@ m4_include([m4/xalloc.m4])
 m4_include([m4/xstrndup.m4])
 m4_include([m4/xstrtol.m4])
 m4_include([m4/yield.m4])
+m4_include([m4/zzgnulib.m4])
index 8fe0cc8c4b1a8c0ca32afe1b3dc1627a6655f067..ff8d4502586d66aae0b10014505e1772c1ed75a4 100755 (executable)
@@ -3,7 +3,7 @@
 
 # Generate a release announcement message.
 
-# Copyright (C) 2002-2019 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 # are valid code in both sh and perl.  When executed by sh, they re-execute
 # the script through the perl program found in $PATH.  The '-x' option
 # is essential as well; without it, perl would re-execute the script
-# through /bin/sh.  When executed by  perl, the next two lines are a no-op.
+# through /bin/sh.  When executed by perl, the next two lines are a no-op.
 eval 'exec perl -wSx "$0" "$@"'
      if 0;
 
-my $VERSION = '2018-03-07 03:46'; # UTC
+my $VERSION = '2020-05-10 16:13'; # UTC
 # The definition above must lie within the first 8 lines in order
 # for the Emacs time-stamp write hook (at end) to update it.
 # If you change this file with Emacs, please let the write hook
@@ -48,7 +48,7 @@ use POSIX qw(strftime);
 (my $ME = $0) =~ s|.*/||;
 
 my %valid_release_types = map {$_ => 1} qw (alpha beta stable);
-my @archive_suffixes = ('tar.gz', 'tar.bz2', 'tar.lzma', 'tar.xz');
+my @archive_suffixes = qw (tar.gz tar.bz2 tar.lz tar.lzma tar.xz);
 my %digest_classes =
   (
    'md5' => (eval { require Digest::MD5; } and 'Digest::MD5'),
@@ -371,8 +371,8 @@ sub get_tool_versions ($$)
 }
 
 {
-  # Neutralize the locale, so that, for instance, "du" does not
-  # issue "1,2" instead of "1.2", what confuses our regexps.
+  # Use the C locale so that, for instance, "du" does not
+  # print "1,2" instead of "1.2", which would confuse our regexps.
   $ENV{LC_ALL} = "C";
 
   my $mail_headers;
index 97ad0733304d51c825cb2abbc5db47d31d32c0ef..699b3a10b21c297cee53e243ba0407c36c8f7a38 100755 (executable)
@@ -1,8 +1,8 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright 1992-2019 Free Software Foundation, Inc.
+#   Copyright 1992-2020 Free Software Foundation, Inc.
 
-timestamp='2019-07-24'
+timestamp='2020-11-19'
 
 # 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
@@ -27,12 +27,12 @@ timestamp='2019-07-24'
 # Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
 #
 # You can get the latest version of this script from:
-# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
+# https://git.savannah.gnu.org/cgit/config.git/plain/config.guess
 #
 # Please send patches to <config-patches@gnu.org>.
 
 
-me=`echo "$0" | sed -e 's,.*/,,'`
+me=$(echo "$0" | sed -e 's,.*/,,')
 
 usage="\
 Usage: $0 [OPTION]
@@ -50,7 +50,7 @@ version="\
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright 1992-2019 Free Software Foundation, Inc.
+Copyright 1992-2020 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -99,9 +99,11 @@ tmp=
 trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15
 
 set_cc_for_build() {
+    # prevent multiple calls if $tmp is already set
+    test "$tmp" && return 0
     : "${TMPDIR=/tmp}"
     # shellcheck disable=SC2039
-    { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$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" 2>/dev/null) ; } ||
        { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } ||
        { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; }
@@ -129,16 +131,14 @@ if test -f /.attbin/uname ; then
        PATH=$PATH:/.attbin ; export PATH
 fi
 
-UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
-UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
-UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+UNAME_MACHINE=$( (uname -m) 2>/dev/null) || UNAME_MACHINE=unknown
+UNAME_RELEASE=$( (uname -r) 2>/dev/null) || UNAME_RELEASE=unknown
+UNAME_SYSTEM=$( (uname -s) 2>/dev/null) || UNAME_SYSTEM=unknown
+UNAME_VERSION=$( (uname -v) 2>/dev/null) || UNAME_VERSION=unknown
 
 case "$UNAME_SYSTEM" in
 Linux|GNU|GNU/*)
-       # If the system lacks a compiler, then just pick glibc.
-       # We could probably try harder.
-       LIBC=gnu
+       LIBC=unknown
 
        set_cc_for_build
        cat <<-EOF > "$dummy.c"
@@ -147,17 +147,29 @@ Linux|GNU|GNU/*)
        LIBC=uclibc
        #elif defined(__dietlibc__)
        LIBC=dietlibc
-       #else
+       #elif defined(__GLIBC__)
        LIBC=gnu
+       #else
+       #include <stdarg.h>
+       /* First heuristic to detect musl libc.  */
+       #ifdef __DEFINED_va_list
+       LIBC=musl
+       #endif
        #endif
        EOF
-       eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`"
+       eval "$($CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g')"
 
-       # If ldd exists, use it to detect musl libc.
-       if command -v ldd >/dev/null && \
-               ldd --version 2>&1 | grep -q ^musl
-       then
-           LIBC=musl
+       # Second heuristic to detect musl libc.
+       if [ "$LIBC" = unknown ] &&
+          command -v ldd >/dev/null &&
+          ldd --version 2>&1 | grep -q ^musl; then
+               LIBC=musl
+       fi
+
+       # If the system lacks a compiler, then just pick glibc.
+       # We could probably try harder.
+       if [ "$LIBC" = unknown ]; then
+               LIBC=gnu
        fi
        ;;
 esac
@@ -177,19 +189,20 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
        # Note: NetBSD doesn't particularly care about the vendor
        # portion of the name.  We always set it to "unknown".
        sysctl="sysctl -n hw.machine_arch"
-       UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
+       UNAME_MACHINE_ARCH=$( (uname -p 2>/dev/null || \
            "/sbin/$sysctl" 2>/dev/null || \
            "/usr/sbin/$sysctl" 2>/dev/null || \
-           echo unknown)`
+           echo unknown))
        case "$UNAME_MACHINE_ARCH" in
+           aarch64eb) machine=aarch64_be-unknown ;;
            armeb) machine=armeb-unknown ;;
            arm*) machine=arm-unknown ;;
            sh3el) machine=shl-unknown ;;
            sh3eb) machine=sh-unknown ;;
            sh5el) machine=sh5le-unknown ;;
            earmv*)
-               arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
-               endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'`
+               arch=$(echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,')
+               endian=$(echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p')
                machine="${arch}${endian}"-unknown
                ;;
            *) machine="$UNAME_MACHINE_ARCH"-unknown ;;
@@ -220,7 +233,7 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
        case "$UNAME_MACHINE_ARCH" in
            earm*)
                expr='s/^earmv[0-9]/-eabi/;s/eb$//'
-               abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"`
+               abi=$(echo "$UNAME_MACHINE_ARCH" | sed -e "$expr")
                ;;
        esac
        # The OS release
@@ -233,7 +246,7 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
                release='-gnu'
                ;;
            *)
-               release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2`
+               release=$(echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2)
                ;;
        esac
        # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
@@ -242,15 +255,15 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
        echo "$machine-${os}${release}${abi-}"
        exit ;;
     *:Bitrig:*:*)
-       UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
+       UNAME_MACHINE_ARCH=$(arch | sed 's/Bitrig.//')
        echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE"
        exit ;;
     *:OpenBSD:*:*)
-       UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
+       UNAME_MACHINE_ARCH=$(arch | sed 's/OpenBSD.//')
        echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE"
        exit ;;
     *:LibertyBSD:*:*)
-       UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
+       UNAME_MACHINE_ARCH=$(arch | sed 's/^.*BSD\.//')
        echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE"
        exit ;;
     *:MidnightBSD:*:*)
@@ -274,6 +287,9 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
     *:Sortix:*:*)
        echo "$UNAME_MACHINE"-unknown-sortix
        exit ;;
+    *:Twizzler:*:*)
+       echo "$UNAME_MACHINE"-unknown-twizzler
+       exit ;;
     *:Redox:*:*)
        echo "$UNAME_MACHINE"-unknown-redox
        exit ;;
@@ -283,17 +299,17 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
     alpha:OSF1:*:*)
        case $UNAME_RELEASE in
        *4.0)
-               UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
+               UNAME_RELEASE=$(/usr/sbin/sizer -v | awk '{print $3}')
                ;;
        *5.*)
-               UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
+               UNAME_RELEASE=$(/usr/sbin/sizer -v | awk '{print $4}')
                ;;
        esac
        # According to Compaq, /usr/sbin/psrinfo has been available on
        # OSF/1 and Tru64 systems produced since 1995.  I hope that
        # covers most systems running today.  This code pipes the CPU
        # types through head -n 1, so we only detect the type of CPU 0.
-       ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
+       ALPHA_CPU_TYPE=$(/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1)
        case "$ALPHA_CPU_TYPE" in
            "EV4 (21064)")
                UNAME_MACHINE=alpha ;;
@@ -331,7 +347,7 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
        # A Tn.n version is a released field test version.
        # A Xn.n version is an unreleased experimental baselevel.
        # 1.2 uses "1.2" for uname -r.
-       echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`"
+       echo "$UNAME_MACHINE"-dec-osf"$(echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz)"
        # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
        exitcode=$?
        trap '' 0
@@ -365,7 +381,7 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
        exit ;;
     Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
        # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
-       if test "`(/bin/universe) 2>/dev/null`" = att ; then
+       if test "$( (/bin/universe) 2>/dev/null)" = att ; then
                echo pyramid-pyramid-sysv3
        else
                echo pyramid-pyramid-bsd
@@ -378,17 +394,17 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
        echo sparc-icl-nx6
        exit ;;
     DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
-       case `/usr/bin/uname -p` in
+       case $(/usr/bin/uname -p) in
            sparc) echo sparc-icl-nx7; exit ;;
        esac ;;
     s390x:SunOS:*:*)
-       echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
+       echo "$UNAME_MACHINE"-ibm-solaris2"$(echo "$UNAME_RELEASE" | sed -e 's/[^.]*//')"
        exit ;;
     sun4H:SunOS:5.*:*)
-       echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
+       echo sparc-hal-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')"
        exit ;;
     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
-       echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
+       echo sparc-sun-solaris2"$(echo "$UNAME_RELEASE" | sed -e 's/[^.]*//')"
        exit ;;
     i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
        echo i386-pc-auroraux"$UNAME_RELEASE"
@@ -399,7 +415,7 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
        # If there is a compiler, see if it is configured for 64-bit objects.
        # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
        # This test works for both compilers.
-       if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
+       if test "$CC_FOR_BUILD" != no_compiler_found; then
            if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
                (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
                grep IS_64BIT_ARCH >/dev/null
@@ -407,30 +423,30 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
                SUN_ARCH=x86_64
            fi
        fi
-       echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
+       echo "$SUN_ARCH"-pc-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')"
        exit ;;
     sun4*:SunOS:6*:*)
        # According to config.sub, this is the proper way to canonicalize
        # SunOS6.  Hard to guess exactly what SunOS6 will be like, but
        # it's likely to be more like Solaris than SunOS4.
-       echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
+       echo sparc-sun-solaris3"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')"
        exit ;;
     sun4*:SunOS:*:*)
-       case "`/usr/bin/arch -k`" in
+       case "$(/usr/bin/arch -k)" in
            Series*|S4*)
-               UNAME_RELEASE=`uname -v`
+               UNAME_RELEASE=$(uname -v)
                ;;
        esac
        # Japanese Language versions have a version number like `4.1.3-JL'.
-       echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`"
+       echo sparc-sun-sunos"$(echo "$UNAME_RELEASE"|sed -e 's/-/_/')"
        exit ;;
     sun3*:SunOS:*:*)
        echo m68k-sun-sunos"$UNAME_RELEASE"
        exit ;;
     sun*:*:4.2BSD:*)
-       UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
+       UNAME_RELEASE=$( (sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null)
        test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
-       case "`/bin/arch`" in
+       case "$(/bin/arch)" in
            sun3)
                echo m68k-sun-sunos"$UNAME_RELEASE"
                ;;
@@ -510,8 +526,8 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
        }
 EOF
        $CC_FOR_BUILD -o "$dummy" "$dummy.c" &&
-         dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` &&
-         SYSTEM_NAME=`"$dummy" "$dummyarg"` &&
+         dummyarg=$(echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p') &&
+         SYSTEM_NAME=$("$dummy" "$dummyarg") &&
            { echo "$SYSTEM_NAME"; exit; }
        echo mips-mips-riscos"$UNAME_RELEASE"
        exit ;;
@@ -538,11 +554,11 @@ EOF
        exit ;;
     AViiON:dgux:*:*)
        # DG/UX returns AViiON for all architectures
-       UNAME_PROCESSOR=`/usr/bin/uname -p`
-       if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ]
+       UNAME_PROCESSOR=$(/usr/bin/uname -p)
+       if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110
        then
-           if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \
-              [ "$TARGET_BINARY_INTERFACE"x = x ]
+           if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \
+              test "$TARGET_BINARY_INTERFACE"x = x
            then
                echo m88k-dg-dgux"$UNAME_RELEASE"
            else
@@ -566,17 +582,17 @@ EOF
        echo m68k-tektronix-bsd
        exit ;;
     *:IRIX*:*:*)
-       echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`"
+       echo mips-sgi-irix"$(echo "$UNAME_RELEASE"|sed -e 's/-/_/g')"
        exit ;;
     ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
        echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
-       exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
+       exit ;;               # Note that: echo "'$(uname -s)'" gives 'AIX '
     i*86:AIX:*:*)
        echo i386-ibm-aix
        exit ;;
     ia64:AIX:*:*)
-       if [ -x /usr/bin/oslevel ] ; then
-               IBM_REV=`/usr/bin/oslevel`
+       if test -x /usr/bin/oslevel ; then
+               IBM_REV=$(/usr/bin/oslevel)
        else
                IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
        fi
@@ -596,7 +612,7 @@ EOF
                        exit(0);
                        }
 EOF
-               if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`
+               if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=$("$dummy")
                then
                        echo "$SYSTEM_NAME"
                else
@@ -609,15 +625,15 @@ EOF
        fi
        exit ;;
     *:AIX:*:[4567])
-       IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
+       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
        else
                IBM_ARCH=powerpc
        fi
-       if [ -x /usr/bin/lslpp ] ; then
-               IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
-                          awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
+       if test -x /usr/bin/lslpp ; then
+               IBM_REV=$(/usr/bin/lslpp -Lqc bos.rte.libc |
+                          awk -F: '{ print $3 }' | sed s/[0-9]*$/0/)
        else
                IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
        fi
@@ -645,14 +661,14 @@ EOF
        echo m68k-hp-bsd4.4
        exit ;;
     9000/[34678]??:HP-UX:*:*)
-       HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
+       HPUX_REV=$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//')
        case "$UNAME_MACHINE" in
            9000/31?)            HP_ARCH=m68000 ;;
            9000/[34]??)         HP_ARCH=m68k ;;
            9000/[678][0-9][0-9])
-               if [ -x /usr/bin/getconf ]; then
-                   sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
-                   sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
+               if test -x /usr/bin/getconf; then
+                   sc_cpu_version=$(/usr/bin/getconf SC_CPU_VERSION 2>/dev/null)
+                   sc_kernel_bits=$(/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null)
                    case "$sc_cpu_version" in
                      523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
                      528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
@@ -664,7 +680,7 @@ EOF
                        esac ;;
                    esac
                fi
-               if [ "$HP_ARCH" = "" ]; then
+               if test "$HP_ARCH" = ""; then
                    set_cc_for_build
                    sed 's/^            //' << EOF > "$dummy.c"
 
@@ -699,11 +715,11 @@ EOF
                    exit (0);
                }
 EOF
-                   (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"`
+                   (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=$("$dummy")
                    test -z "$HP_ARCH" && HP_ARCH=hppa
                fi ;;
        esac
-       if [ "$HP_ARCH" = hppa2.0w ]
+       if test "$HP_ARCH" = hppa2.0w
        then
            set_cc_for_build
 
@@ -727,7 +743,7 @@ EOF
        echo "$HP_ARCH"-hp-hpux"$HPUX_REV"
        exit ;;
     ia64:HP-UX:*:*)
-       HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
+       HPUX_REV=$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//')
        echo ia64-hp-hpux"$HPUX_REV"
        exit ;;
     3050*:HI-UX:*:*)
@@ -757,7 +773,7 @@ EOF
          exit (0);
        }
 EOF
-       $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&
+       $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=$("$dummy") &&
                { echo "$SYSTEM_NAME"; exit; }
        echo unknown-hitachi-hiuxwe2
        exit ;;
@@ -777,7 +793,7 @@ EOF
        echo hppa1.0-hp-osf
        exit ;;
     i*86:OSF1:*:*)
-       if [ -x /usr/sbin/sysversion ] ; then
+       if test -x /usr/sbin/sysversion ; then
            echo "$UNAME_MACHINE"-unknown-osf1mk
        else
            echo "$UNAME_MACHINE"-unknown-osf1
@@ -826,14 +842,14 @@ EOF
        echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
        exit ;;
     F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
-       FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
-       FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
-       FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'`
+       FUJITSU_PROC=$(uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz)
+       FUJITSU_SYS=$(uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///')
+       FUJITSU_REL=$(echo "$UNAME_RELEASE" | sed -e 's/ /_/')
        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
        exit ;;
     5000:UNIX_System_V:4.*:*)
-       FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
-       FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
+       FUJITSU_SYS=$(uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///')
+       FUJITSU_REL=$(echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/')
        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
        exit ;;
     i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
@@ -846,25 +862,25 @@ EOF
        echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
        exit ;;
     arm:FreeBSD:*:*)
-       UNAME_PROCESSOR=`uname -p`
+       UNAME_PROCESSOR=$(uname -p)
        set_cc_for_build
        if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
            | grep -q __ARM_PCS_VFP
        then
-           echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabi
+           echo "${UNAME_PROCESSOR}"-unknown-freebsd"$(echo ${UNAME_RELEASE}|sed -e 's/[-(].*//')"-gnueabi
        else
-           echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabihf
+           echo "${UNAME_PROCESSOR}"-unknown-freebsd"$(echo ${UNAME_RELEASE}|sed -e 's/[-(].*//')"-gnueabihf
        fi
        exit ;;
     *:FreeBSD:*:*)
-       UNAME_PROCESSOR=`/usr/bin/uname -p`
+       UNAME_PROCESSOR=$(/usr/bin/uname -p)
        case "$UNAME_PROCESSOR" in
            amd64)
                UNAME_PROCESSOR=x86_64 ;;
            i386)
                UNAME_PROCESSOR=i586 ;;
        esac
-       echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
+       echo "$UNAME_PROCESSOR"-unknown-freebsd"$(echo "$UNAME_RELEASE"|sed -e 's/[-(].*//')"
        exit ;;
     i*:CYGWIN*:*)
        echo "$UNAME_MACHINE"-pc-cygwin
@@ -900,15 +916,15 @@ EOF
        echo x86_64-pc-cygwin
        exit ;;
     prep*:SunOS:5.*:*)
-       echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
+       echo powerpcle-unknown-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')"
        exit ;;
     *:GNU:*:*)
        # the GNU system
-       echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`"
+       echo "$(echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,')-unknown-$LIBC$(echo "$UNAME_RELEASE"|sed -e 's,/.*$,,')"
        exit ;;
     *:GNU/*:*:*)
        # other systems with GNU libc and userland
-       echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC"
+       echo "$UNAME_MACHINE-unknown-$(echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]")$(echo "$UNAME_RELEASE"|sed -e 's/[-(].*//')-$LIBC"
        exit ;;
     *:Minix:*:*)
        echo "$UNAME_MACHINE"-unknown-minix
@@ -921,7 +937,7 @@ EOF
        echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
        exit ;;
     alpha:Linux:*:*)
-       case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+       case $(sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null) in
          EV5)   UNAME_MACHINE=alphaev5 ;;
          EV56)  UNAME_MACHINE=alphaev56 ;;
          PCA56) UNAME_MACHINE=alphapca56 ;;
@@ -1030,7 +1046,7 @@ EOF
        #endif
        #endif
 EOF
-       eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'`"
+       eval "$($CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI')"
        test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; }
        ;;
     mips64el:Linux:*:*)
@@ -1050,7 +1066,7 @@ EOF
        exit ;;
     parisc:Linux:*:* | hppa:Linux:*:*)
        # Look for CPU level
-       case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+       case $(grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2) in
          PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;;
          PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;;
          *)    echo hppa-unknown-linux-"$LIBC" ;;
@@ -1090,7 +1106,17 @@ EOF
        echo "$UNAME_MACHINE"-dec-linux-"$LIBC"
        exit ;;
     x86_64:Linux:*:*)
-       echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
+       set_cc_for_build
+       LIBCABI=$LIBC
+       if test "$CC_FOR_BUILD" != no_compiler_found; then
+           if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \
+               (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+               grep IS_X32 >/dev/null
+           then
+               LIBCABI="$LIBC"x32
+           fi
+       fi
+       echo "$UNAME_MACHINE"-pc-linux-"$LIBCABI"
        exit ;;
     xtensa*:Linux:*:*)
        echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
@@ -1130,7 +1156,7 @@ EOF
        echo "$UNAME_MACHINE"-pc-msdosdjgpp
        exit ;;
     i*86:*:4.*:*)
-       UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'`
+       UNAME_REL=$(echo "$UNAME_RELEASE" | sed 's/\/MP$//')
        if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
                echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL"
        else
@@ -1139,7 +1165,7 @@ EOF
        exit ;;
     i*86:*:5:[678]*)
        # UnixWare 7.x, OpenUNIX and OpenServer 6.
-       case `/bin/uname -X | grep "^Machine"` in
+       case $(/bin/uname -X | grep "^Machine") in
            *486*)           UNAME_MACHINE=i486 ;;
            *Pentium)        UNAME_MACHINE=i586 ;;
            *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
@@ -1148,10 +1174,10 @@ EOF
        exit ;;
     i*86:*:3.2:*)
        if test -f /usr/options/cb.name; then
-               UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
+               UNAME_REL=$(sed -n 's/.*Version //p' </usr/options/cb.name)
                echo "$UNAME_MACHINE"-pc-isc"$UNAME_REL"
        elif /bin/uname -X 2>/dev/null >/dev/null ; then
-               UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
+               UNAME_REL=$( (/bin/uname -X|grep Release|sed -e 's/.*= //'))
                (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
                (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
                        && UNAME_MACHINE=i586
@@ -1201,7 +1227,7 @@ EOF
     3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
        OS_REL=''
        test -r /etc/.relid \
-       && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+       && OS_REL=.$(sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid)
        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
          && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
        /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
@@ -1212,7 +1238,7 @@ EOF
     NCR*:*:4.2:* | MPRAS*:*:4.2:*)
        OS_REL='.3'
        test -r /etc/.relid \
-           && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+           && OS_REL=.$(sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid)
        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
            && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
        /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
@@ -1245,7 +1271,7 @@ EOF
        exit ;;
     *:SINIX-*:*:*)
        if uname -p 2>/dev/null >/dev/null ; then
-               UNAME_MACHINE=`(uname -p) 2>/dev/null`
+               UNAME_MACHINE=$( (uname -p) 2>/dev/null)
                echo "$UNAME_MACHINE"-sni-sysv4
        else
                echo ns32k-sni-sysv
@@ -1279,7 +1305,7 @@ EOF
        echo mips-sony-newsos6
        exit ;;
     R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
-       if [ -d /usr/nec ]; then
+       if test -d /usr/nec; then
                echo mips-nec-sysv"$UNAME_RELEASE"
        else
                echo mips-unknown-sysv"$UNAME_RELEASE"
@@ -1327,8 +1353,11 @@ EOF
     *:Rhapsody:*:*)
        echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
        exit ;;
+    arm64:Darwin:*:*)
+       echo aarch64-apple-darwin"$UNAME_RELEASE"
+       exit ;;
     *:Darwin:*:*)
-       UNAME_PROCESSOR=`uname -p`
+       UNAME_PROCESSOR=$(uname -p)
        case $UNAME_PROCESSOR in
            unknown) UNAME_PROCESSOR=powerpc ;;
        esac
@@ -1341,7 +1370,7 @@ EOF
        else
            set_cc_for_build
        fi
-       if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
+       if test "$CC_FOR_BUILD" != no_compiler_found; then
            if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
                   (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
                   grep IS_64BIT_ARCH >/dev/null
@@ -1365,7 +1394,7 @@ EOF
        echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
        exit ;;
     *:procnto*:*:* | *:QNX:[0123456789]*:*)
-       UNAME_PROCESSOR=`uname -p`
+       UNAME_PROCESSOR=$(uname -p)
        if test "$UNAME_PROCESSOR" = x86; then
                UNAME_PROCESSOR=i386
                UNAME_MACHINE=pc
@@ -1433,10 +1462,10 @@ EOF
        echo mips-sei-seiux"$UNAME_RELEASE"
        exit ;;
     *:DragonFly:*:*)
-       echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
+       echo "$UNAME_MACHINE"-unknown-dragonfly"$(echo "$UNAME_RELEASE"|sed -e 's/[-(].*//')"
        exit ;;
     *:*VMS:*:*)
-       UNAME_MACHINE=`(uname -p) 2>/dev/null`
+       UNAME_MACHINE=$( (uname -p) 2>/dev/null)
        case "$UNAME_MACHINE" in
            A*) echo alpha-dec-vms ; exit ;;
            I*) echo ia64-dec-vms ; exit ;;
@@ -1446,7 +1475,7 @@ EOF
        echo i386-pc-xenix
        exit ;;
     i*86:skyos:*:*)
-       echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`"
+       echo "$UNAME_MACHINE"-pc-skyos"$(echo "$UNAME_RELEASE" | sed -e 's/ .*$//')"
        exit ;;
     i*86:rdos:*:*)
        echo "$UNAME_MACHINE"-pc-rdos
@@ -1504,7 +1533,7 @@ main ()
 #define __ARCHITECTURE__ "m68k"
 #endif
   int version;
-  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
+  version=$( (hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null);
   if (version < 4)
     printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
   else
@@ -1596,7 +1625,7 @@ main ()
 }
 EOF
 
-$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`$dummy` &&
+$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=$($dummy) &&
        { echo "$SYSTEM_NAME"; exit; }
 
 # Apollos put the system type in the environment.
@@ -1621,9 +1650,15 @@ This script (version $timestamp), has failed to recognize the
 operating system you are using. If your script is old, overwrite *all*
 copies of config.guess and config.sub with the latest versions from:
 
-  https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
+  https://git.savannah.gnu.org/cgit/config.git/plain/config.guess
 and
-  https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
+  https://git.savannah.gnu.org/cgit/config.git/plain/config.sub
+EOF
+
+year=$(echo $timestamp | sed 's,-.*,,')
+# shellcheck disable=SC2003
+if test "$(expr "$(date +%Y)" - "$year")" -lt 3 ; then
+   cat >&2 <<EOF
 
 If $0 has already been updated, send the following data and any
 information you think might be pertinent to config-patches@gnu.org to
@@ -1631,26 +1666,27 @@ provide the necessary information to handle your system.
 
 config.guess timestamp = $timestamp
 
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
+uname -m = $( (uname -m) 2>/dev/null || echo unknown)
+uname -r = $( (uname -r) 2>/dev/null || echo unknown)
+uname -s = $( (uname -s) 2>/dev/null || echo unknown)
+uname -v = $( (uname -v) 2>/dev/null || echo unknown)
 
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
+/usr/bin/uname -p = $( (/usr/bin/uname -p) 2>/dev/null)
+/bin/uname -X     = $( (/bin/uname -X) 2>/dev/null)
 
-hostinfo               = `(hostinfo) 2>/dev/null`
-/bin/universe          = `(/bin/universe) 2>/dev/null`
-/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
-/bin/arch              = `(/bin/arch) 2>/dev/null`
-/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
+hostinfo               = $( (hostinfo) 2>/dev/null)
+/bin/universe          = $( (/bin/universe) 2>/dev/null)
+/usr/bin/arch -k       = $( (/usr/bin/arch -k) 2>/dev/null)
+/bin/arch              = $( (/bin/arch) 2>/dev/null)
+/usr/bin/oslevel       = $( (/usr/bin/oslevel) 2>/dev/null)
+/usr/convex/getsysinfo = $( (/usr/convex/getsysinfo) 2>/dev/null)
 
 UNAME_MACHINE = "$UNAME_MACHINE"
 UNAME_RELEASE = "$UNAME_RELEASE"
 UNAME_SYSTEM  = "$UNAME_SYSTEM"
 UNAME_VERSION = "$UNAME_VERSION"
 EOF
+fi
 
 exit 1
 
index be202c1a9e79567b62ac71c96ee9f2bec8f40324..17298f2348bf0c5ce90917bf19abfb75a92ae179 100755 (executable)
@@ -2,7 +2,7 @@
 # Output a system dependent set of variables, describing how to set the
 # run time search path of shared libraries in an executable.
 #
-#   Copyright 1996-2019 Free Software Foundation, Inc.
+#   Copyright 1996-2010 Free Software Foundation, Inc.
 #   Taken from GNU libtool, 2001
 #   Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
 #
@@ -25,7 +25,7 @@
 #   known workaround is to choose shorter directory names for the build
 #   directory and/or the installation directory.
 
-# All known linkers require a '.a' archive for static linking (except MSVC,
+# All known linkers require a `.a' archive for static linking (except MSVC,
 # which needs '.lib').
 libext=a
 shrext=.so
@@ -57,6 +57,13 @@ else
     aix*)
       wl='-Wl,'
       ;;
+    darwin*)
+      case $cc_basename in
+        xlc*)
+          wl='-Wl,'
+          ;;
+      esac
+      ;;
     mingw* | cygwin* | pw32* | os2* | cegcc*)
       ;;
     hpux9* | hpux10* | hpux11*)
@@ -65,7 +72,9 @@ else
     irix5* | irix6* | nonstopux*)
       wl='-Wl,'
       ;;
-    linux* | k*bsd*-gnu | kopensolaris*-gnu)
+    newsos6)
+      ;;
+    linux* | k*bsd*-gnu)
       case $cc_basename in
         ecc*)
           wl='-Wl,'
@@ -76,26 +85,17 @@ else
         lf95*)
           wl='-Wl,'
           ;;
-        nagfor*)
-          wl='-Wl,-Wl,,'
-          ;;
-        pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
+        pgcc | pgf77 | pgf90)
           wl='-Wl,'
           ;;
         ccc*)
           wl='-Wl,'
           ;;
-        xl* | bgxl* | bgf* | mpixl*)
-          wl='-Wl,'
-          ;;
         como)
           wl='-lopt='
           ;;
         *)
           case `$CC -V 2>&1 | sed 5q` in
-            *Sun\ F* | *Sun*Fortran*)
-              wl=
-              ;;
             *Sun\ C*)
               wl='-Wl,'
               ;;
@@ -103,24 +103,13 @@ else
           ;;
       esac
       ;;
-    newsos6)
-      ;;
-    *nto* | *qnx*)
-      ;;
     osf3* | osf4* | osf5*)
       wl='-Wl,'
       ;;
     rdos*)
       ;;
     solaris*)
-      case $cc_basename in
-        f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
-          wl='-Qoption ld '
-          ;;
-        *)
-          wl='-Wl,'
-          ;;
-      esac
+      wl='-Wl,'
       ;;
     sunos4*)
       wl='-Qoption ld '
@@ -182,14 +171,15 @@ if test "$with_gnu_ld" = yes; then
       fi
       ;;
     amigaos*)
-      case "$host_cpu" in
-        powerpc)
-          ;;
-        m68k)
-          hardcode_libdir_flag_spec='-L$libdir'
-          hardcode_minus_L=yes
-          ;;
-      esac
+      hardcode_libdir_flag_spec='-L$libdir'
+      hardcode_minus_L=yes
+      # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
+      # that the semantics of dynamic libraries on AmigaOS, at least up
+      # to version 4, is to share data among multiple programs linked
+      # with the same dynamic library.  Since this doesn't match the
+      # behavior of shared libraries on other platforms, we cannot use
+      # them.
+      ld_shlibs=no
       ;;
     beos*)
       if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
@@ -208,13 +198,11 @@ if test "$with_gnu_ld" = yes; then
         ld_shlibs=no
       fi
       ;;
-    haiku*)
-      ;;
     interix[3-9]*)
       hardcode_direct=no
       hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
       ;;
-    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
+    gnu* | linux* | k*bsd*-gnu)
       if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
         :
       else
@@ -337,14 +325,10 @@ else
       fi
       ;;
     amigaos*)
-      case "$host_cpu" in
-        powerpc)
-          ;;
-        m68k)
-          hardcode_libdir_flag_spec='-L$libdir'
-          hardcode_minus_L=yes
-          ;;
-      esac
+      hardcode_libdir_flag_spec='-L$libdir'
+      hardcode_minus_L=yes
+      # see comment about different semantics on the GNU ld section
+      ld_shlibs=no
       ;;
     bsdi[45]*)
       ;;
@@ -358,16 +342,29 @@ else
       ;;
     darwin* | rhapsody*)
       hardcode_direct=no
-      if { case $cc_basename in ifort*) true;; *) test "$GCC" = yes;; esac; }; then
+      if test "$GCC" = yes ; then
         :
       else
-        ld_shlibs=no
+        case $cc_basename in
+          xlc*)
+            ;;
+          *)
+            ld_shlibs=no
+            ;;
+        esac
       fi
       ;;
     dgux*)
       hardcode_libdir_flag_spec='-L$libdir'
       ;;
-    freebsd2.[01]*)
+    freebsd1*)
+      ld_shlibs=no
+      ;;
+    freebsd2.2*)
+      hardcode_libdir_flag_spec='-R$libdir'
+      hardcode_direct=yes
+      ;;
+    freebsd2*)
       hardcode_direct=yes
       hardcode_minus_L=yes
       ;;
@@ -423,8 +420,6 @@ else
       hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
       hardcode_libdir_separator=:
       ;;
-    *nto* | *qnx*)
-      ;;
     openbsd*)
       if test -f /usr/libexec/ld.so; then
         hardcode_direct=yes
@@ -520,12 +515,7 @@ case "$host_os" in
     library_names_spec='$libname$shrext'
     ;;
   amigaos*)
-    case "$host_cpu" in
-      powerpc*)
-        library_names_spec='$libname$shrext' ;;
-      m68k)
-        library_names_spec='$libname.a' ;;
-    esac
+    library_names_spec='$libname.a'
     ;;
   beos*)
     library_names_spec='$libname$shrext'
@@ -544,18 +534,19 @@ case "$host_os" in
   dgux*)
     library_names_spec='$libname$shrext'
     ;;
-  freebsd[23].*)
-    library_names_spec='$libname$shrext$versuffix'
+  freebsd1*)
     ;;
   freebsd* | dragonfly*)
-    library_names_spec='$libname$shrext'
+    case "$host_os" in
+      freebsd[123]*)
+        library_names_spec='$libname$shrext$versuffix' ;;
+      *)
+        library_names_spec='$libname$shrext' ;;
+    esac
     ;;
   gnu*)
     library_names_spec='$libname$shrext'
     ;;
-  haiku*)
-    library_names_spec='$libname$shrext'
-    ;;
   hpux9* | hpux10* | hpux11*)
     case $host_cpu in
       ia64*)
@@ -591,7 +582,7 @@ case "$host_os" in
     ;;
   linux*oldld* | linux*aout* | linux*coff*)
     ;;
-  linux* | k*bsd*-gnu | kopensolaris*-gnu)
+  linux* | k*bsd*-gnu)
     library_names_spec='$libname$shrext'
     ;;
   knetbsd*-gnu)
@@ -603,7 +594,7 @@ case "$host_os" in
   newsos6)
     library_names_spec='$libname$shrext'
     ;;
-  *nto* | *qnx*)
+  nto-qnx*)
     library_names_spec='$libname$shrext'
     ;;
   openbsd*)
@@ -634,9 +625,6 @@ case "$host_os" in
   sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
     library_names_spec='$libname$shrext'
     ;;
-  tpf*)
-    library_names_spec='$libname$shrext'
-    ;;
   uts4*)
     library_names_spec='$libname$shrext'
     ;;
index a318a46868500fbeea993e693e32701041ffad1b..19c9553b1825cafb182115513bc628e0ee801bd0 100755 (executable)
@@ -1,8 +1,8 @@
 #! /bin/sh
 # Configuration validation subroutine script.
-#   Copyright 1992-2019 Free Software Foundation, Inc.
+#   Copyright 1992-2020 Free Software Foundation, Inc.
 
-timestamp='2019-06-30'
+timestamp='2020-12-02'
 
 # 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
@@ -33,7 +33,7 @@ timestamp='2019-06-30'
 # Otherwise, we print the canonical config type on stdout and succeed.
 
 # You can get the latest version of this script from:
-# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
+# https://git.savannah.gnu.org/cgit/config.git/plain/config.sub
 
 # This file is supposed to be the same for all GNU packages
 # and recognize all the CPU types, system types and aliases
@@ -50,7 +50,7 @@ timestamp='2019-06-30'
 #      CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
 # It is wrong to echo any other type of specification.
 
-me=`echo "$0" | sed -e 's,.*/,,'`
+me=$(echo "$0" | sed -e 's,.*/,,')
 
 usage="\
 Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
@@ -67,7 +67,7 @@ Report bugs and patches to <config-patches@gnu.org>."
 version="\
 GNU config.sub ($timestamp)
 
-Copyright 1992-2019 Free Software Foundation, Inc.
+Copyright 1992-2020 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -124,28 +124,27 @@ case $1 in
                ;;
        *-*-*-*)
                basic_machine=$field1-$field2
-               os=$field3-$field4
+               basic_os=$field3-$field4
                ;;
        *-*-*)
                # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
                # parts
                maybe_os=$field2-$field3
                case $maybe_os in
-                       nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc \
-                       | linux-newlib* | linux-musl* | linux-uclibc* | uclinux-uclibc* \
+                       nto-qnx* | linux-* | uclinux-uclibc* \
                        | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \
                        | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
                        | storm-chaos* | os2-emx* | rtmk-nova*)
                                basic_machine=$field1
-                               os=$maybe_os
+                               basic_os=$maybe_os
                                ;;
                        android-linux)
                                basic_machine=$field1-unknown
-                               os=linux-android
+                               basic_os=linux-android
                                ;;
                        *)
                                basic_machine=$field1-$field2
-                               os=$field3
+                               basic_os=$field3
                                ;;
                esac
                ;;
@@ -154,7 +153,7 @@ case $1 in
                case $field1-$field2 in
                        decstation-3100)
                                basic_machine=mips-dec
-                               os=
+                               basic_os=
                                ;;
                        *-*)
                                # Second component is usually, but not always the OS
@@ -162,7 +161,7 @@ case $1 in
                                        # Prevent following clause from handling this valid os
                                        sun*os*)
                                                basic_machine=$field1
-                                               os=$field2
+                                               basic_os=$field2
                                                ;;
                                        # Manufacturers
                                        dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \
@@ -175,11 +174,11 @@ case $1 in
                                        | microblaze* | sim | cisco \
                                        | oki | wec | wrs | winbond)
                                                basic_machine=$field1-$field2
-                                               os=
+                                               basic_os=
                                                ;;
                                        *)
                                                basic_machine=$field1
-                                               os=$field2
+                                               basic_os=$field2
                                                ;;
                                esac
                        ;;
@@ -191,447 +190,451 @@ case $1 in
                case $field1 in
                        386bsd)
                                basic_machine=i386-pc
-                               os=bsd
+                               basic_os=bsd
                                ;;
                        a29khif)
                                basic_machine=a29k-amd
-                               os=udi
+                               basic_os=udi
                                ;;
                        adobe68k)
                                basic_machine=m68010-adobe
-                               os=scout
+                               basic_os=scout
                                ;;
                        alliant)
                                basic_machine=fx80-alliant
-                               os=
+                               basic_os=
                                ;;
                        altos | altos3068)
                                basic_machine=m68k-altos
-                               os=
+                               basic_os=
                                ;;
                        am29k)
                                basic_machine=a29k-none
-                               os=bsd
+                               basic_os=bsd
                                ;;
                        amdahl)
                                basic_machine=580-amdahl
-                               os=sysv
+                               basic_os=sysv
                                ;;
                        amiga)
                                basic_machine=m68k-unknown
-                               os=
+                               basic_os=
                                ;;
                        amigaos | amigados)
                                basic_machine=m68k-unknown
-                               os=amigaos
+                               basic_os=amigaos
                                ;;
                        amigaunix | amix)
                                basic_machine=m68k-unknown
-                               os=sysv4
+                               basic_os=sysv4
                                ;;
                        apollo68)
                                basic_machine=m68k-apollo
-                               os=sysv
+                               basic_os=sysv
                                ;;
                        apollo68bsd)
                                basic_machine=m68k-apollo
-                               os=bsd
+                               basic_os=bsd
                                ;;
                        aros)
                                basic_machine=i386-pc
-                               os=aros
+                               basic_os=aros
                                ;;
                        aux)
                                basic_machine=m68k-apple
-                               os=aux
+                               basic_os=aux
                                ;;
                        balance)
                                basic_machine=ns32k-sequent
-                               os=dynix
+                               basic_os=dynix
                                ;;
                        blackfin)
                                basic_machine=bfin-unknown
-                               os=linux
+                               basic_os=linux
                                ;;
                        cegcc)
                                basic_machine=arm-unknown
-                               os=cegcc
+                               basic_os=cegcc
                                ;;
                        convex-c1)
                                basic_machine=c1-convex
-                               os=bsd
+                               basic_os=bsd
                                ;;
                        convex-c2)
                                basic_machine=c2-convex
-                               os=bsd
+                               basic_os=bsd
                                ;;
                        convex-c32)
                                basic_machine=c32-convex
-                               os=bsd
+                               basic_os=bsd
                                ;;
                        convex-c34)
                                basic_machine=c34-convex
-                               os=bsd
+                               basic_os=bsd
                                ;;
                        convex-c38)
                                basic_machine=c38-convex
-                               os=bsd
+                               basic_os=bsd
                                ;;
                        cray)
                                basic_machine=j90-cray
-                               os=unicos
+                               basic_os=unicos
                                ;;
                        crds | unos)
                                basic_machine=m68k-crds
-                               os=
+                               basic_os=
                                ;;
                        da30)
                                basic_machine=m68k-da30
-                               os=
+                               basic_os=
                                ;;
                        decstation | pmax | pmin | dec3100 | decstatn)
                                basic_machine=mips-dec
-                               os=
+                               basic_os=
                                ;;
                        delta88)
                                basic_machine=m88k-motorola
-                               os=sysv3
+                               basic_os=sysv3
                                ;;
                        dicos)
                                basic_machine=i686-pc
-                               os=dicos
+                               basic_os=dicos
                                ;;
                        djgpp)
                                basic_machine=i586-pc
-                               os=msdosdjgpp
+                               basic_os=msdosdjgpp
                                ;;
                        ebmon29k)
                                basic_machine=a29k-amd
-                               os=ebmon
+                               basic_os=ebmon
                                ;;
                        es1800 | OSE68k | ose68k | ose | OSE)
                                basic_machine=m68k-ericsson
-                               os=ose
+                               basic_os=ose
                                ;;
                        gmicro)
                                basic_machine=tron-gmicro
-                               os=sysv
+                               basic_os=sysv
                                ;;
                        go32)
                                basic_machine=i386-pc
-                               os=go32
+                               basic_os=go32
                                ;;
                        h8300hms)
                                basic_machine=h8300-hitachi
-                               os=hms
+                               basic_os=hms
                                ;;
                        h8300xray)
                                basic_machine=h8300-hitachi
-                               os=xray
+                               basic_os=xray
                                ;;
                        h8500hms)
                                basic_machine=h8500-hitachi
-                               os=hms
+                               basic_os=hms
                                ;;
                        harris)
                                basic_machine=m88k-harris
-                               os=sysv3
+                               basic_os=sysv3
                                ;;
                        hp300 | hp300hpux)
                                basic_machine=m68k-hp
-                               os=hpux
+                               basic_os=hpux
                                ;;
                        hp300bsd)
                                basic_machine=m68k-hp
-                               os=bsd
+                               basic_os=bsd
                                ;;
                        hppaosf)
                                basic_machine=hppa1.1-hp
-                               os=osf
+                               basic_os=osf
                                ;;
                        hppro)
                                basic_machine=hppa1.1-hp
-                               os=proelf
+                               basic_os=proelf
                                ;;
                        i386mach)
                                basic_machine=i386-mach
-                               os=mach
+                               basic_os=mach
                                ;;
                        isi68 | isi)
                                basic_machine=m68k-isi
-                               os=sysv
+                               basic_os=sysv
                                ;;
                        m68knommu)
                                basic_machine=m68k-unknown
-                               os=linux
+                               basic_os=linux
                                ;;
                        magnum | m3230)
                                basic_machine=mips-mips
-                               os=sysv
+                               basic_os=sysv
                                ;;
                        merlin)
                                basic_machine=ns32k-utek
-                               os=sysv
+                               basic_os=sysv
                                ;;
                        mingw64)
                                basic_machine=x86_64-pc
-                               os=mingw64
+                               basic_os=mingw64
                                ;;
                        mingw32)
                                basic_machine=i686-pc
-                               os=mingw32
+                               basic_os=mingw32
                                ;;
                        mingw32ce)
                                basic_machine=arm-unknown
-                               os=mingw32ce
+                               basic_os=mingw32ce
                                ;;
                        monitor)
                                basic_machine=m68k-rom68k
-                               os=coff
+                               basic_os=coff
                                ;;
                        morphos)
                                basic_machine=powerpc-unknown
-                               os=morphos
+                               basic_os=morphos
                                ;;
                        moxiebox)
                                basic_machine=moxie-unknown
-                               os=moxiebox
+                               basic_os=moxiebox
                                ;;
                        msdos)
                                basic_machine=i386-pc
-                               os=msdos
+                               basic_os=msdos
                                ;;
                        msys)
                                basic_machine=i686-pc
-                               os=msys
+                               basic_os=msys
                                ;;
                        mvs)
                                basic_machine=i370-ibm
-                               os=mvs
+                               basic_os=mvs
                                ;;
                        nacl)
                                basic_machine=le32-unknown
-                               os=nacl
+                               basic_os=nacl
                                ;;
                        ncr3000)
                                basic_machine=i486-ncr
-                               os=sysv4
+                               basic_os=sysv4
                                ;;
                        netbsd386)
                                basic_machine=i386-pc
-                               os=netbsd
+                               basic_os=netbsd
                                ;;
                        netwinder)
                                basic_machine=armv4l-rebel
-                               os=linux
+                               basic_os=linux
                                ;;
                        news | news700 | news800 | news900)
                                basic_machine=m68k-sony
-                               os=newsos
+                               basic_os=newsos
                                ;;
                        news1000)
                                basic_machine=m68030-sony
-                               os=newsos
+                               basic_os=newsos
                                ;;
                        necv70)
                                basic_machine=v70-nec
-                               os=sysv
+                               basic_os=sysv
                                ;;
                        nh3000)
                                basic_machine=m68k-harris
-                               os=cxux
+                               basic_os=cxux
                                ;;
                        nh[45]000)
                                basic_machine=m88k-harris
-                               os=cxux
+                               basic_os=cxux
                                ;;
                        nindy960)
                                basic_machine=i960-intel
-                               os=nindy
+                               basic_os=nindy
                                ;;
                        mon960)
                                basic_machine=i960-intel
-                               os=mon960
+                               basic_os=mon960
                                ;;
                        nonstopux)
                                basic_machine=mips-compaq
-                               os=nonstopux
+                               basic_os=nonstopux
                                ;;
                        os400)
                                basic_machine=powerpc-ibm
-                               os=os400
+                               basic_os=os400
                                ;;
                        OSE68000 | ose68000)
                                basic_machine=m68000-ericsson
-                               os=ose
+                               basic_os=ose
                                ;;
                        os68k)
                                basic_machine=m68k-none
-                               os=os68k
+                               basic_os=os68k
                                ;;
                        paragon)
                                basic_machine=i860-intel
-                               os=osf
+                               basic_os=osf
                                ;;
                        parisc)
                                basic_machine=hppa-unknown
-                               os=linux
+                               basic_os=linux
+                               ;;
+                       psp)
+                               basic_machine=mipsallegrexel-sony
+                               basic_os=psp
                                ;;
                        pw32)
                                basic_machine=i586-unknown
-                               os=pw32
+                               basic_os=pw32
                                ;;
                        rdos | rdos64)
                                basic_machine=x86_64-pc
-                               os=rdos
+                               basic_os=rdos
                                ;;
                        rdos32)
                                basic_machine=i386-pc
-                               os=rdos
+                               basic_os=rdos
                                ;;
                        rom68k)
                                basic_machine=m68k-rom68k
-                               os=coff
+                               basic_os=coff
                                ;;
                        sa29200)
                                basic_machine=a29k-amd
-                               os=udi
+                               basic_os=udi
                                ;;
                        sei)
                                basic_machine=mips-sei
-                               os=seiux
+                               basic_os=seiux
                                ;;
                        sequent)
                                basic_machine=i386-sequent
-                               os=
+                               basic_os=
                                ;;
                        sps7)
                                basic_machine=m68k-bull
-                               os=sysv2
+                               basic_os=sysv2
                                ;;
                        st2000)
                                basic_machine=m68k-tandem
-                               os=
+                               basic_os=
                                ;;
                        stratus)
                                basic_machine=i860-stratus
-                               os=sysv4
+                               basic_os=sysv4
                                ;;
                        sun2)
                                basic_machine=m68000-sun
-                               os=
+                               basic_os=
                                ;;
                        sun2os3)
                                basic_machine=m68000-sun
-                               os=sunos3
+                               basic_os=sunos3
                                ;;
                        sun2os4)
                                basic_machine=m68000-sun
-                               os=sunos4
+                               basic_os=sunos4
                                ;;
                        sun3)
                                basic_machine=m68k-sun
-                               os=
+                               basic_os=
                                ;;
                        sun3os3)
                                basic_machine=m68k-sun
-                               os=sunos3
+                               basic_os=sunos3
                                ;;
                        sun3os4)
                                basic_machine=m68k-sun
-                               os=sunos4
+                               basic_os=sunos4
                                ;;
                        sun4)
                                basic_machine=sparc-sun
-                               os=
+                               basic_os=
                                ;;
                        sun4os3)
                                basic_machine=sparc-sun
-                               os=sunos3
+                               basic_os=sunos3
                                ;;
                        sun4os4)
                                basic_machine=sparc-sun
-                               os=sunos4
+                               basic_os=sunos4
                                ;;
                        sun4sol2)
                                basic_machine=sparc-sun
-                               os=solaris2
+                               basic_os=solaris2
                                ;;
                        sun386 | sun386i | roadrunner)
                                basic_machine=i386-sun
-                               os=
+                               basic_os=
                                ;;
                        sv1)
                                basic_machine=sv1-cray
-                               os=unicos
+                               basic_os=unicos
                                ;;
                        symmetry)
                                basic_machine=i386-sequent
-                               os=dynix
+                               basic_os=dynix
                                ;;
                        t3e)
                                basic_machine=alphaev5-cray
-                               os=unicos
+                               basic_os=unicos
                                ;;
                        t90)
                                basic_machine=t90-cray
-                               os=unicos
+                               basic_os=unicos
                                ;;
                        toad1)
                                basic_machine=pdp10-xkl
-                               os=tops20
+                               basic_os=tops20
                                ;;
                        tpf)
                                basic_machine=s390x-ibm
-                               os=tpf
+                               basic_os=tpf
                                ;;
                        udi29k)
                                basic_machine=a29k-amd
-                               os=udi
+                               basic_os=udi
                                ;;
                        ultra3)
                                basic_machine=a29k-nyu
-                               os=sym1
+                               basic_os=sym1
                                ;;
                        v810 | necv810)
                                basic_machine=v810-nec
-                               os=none
+                               basic_os=none
                                ;;
                        vaxv)
                                basic_machine=vax-dec
-                               os=sysv
+                               basic_os=sysv
                                ;;
                        vms)
                                basic_machine=vax-dec
-                               os=vms
+                               basic_os=vms
                                ;;
                        vsta)
                                basic_machine=i386-pc
-                               os=vsta
+                               basic_os=vsta
                                ;;
                        vxworks960)
                                basic_machine=i960-wrs
-                               os=vxworks
+                               basic_os=vxworks
                                ;;
                        vxworks68)
                                basic_machine=m68k-wrs
-                               os=vxworks
+                               basic_os=vxworks
                                ;;
                        vxworks29k)
                                basic_machine=a29k-wrs
-                               os=vxworks
+                               basic_os=vxworks
                                ;;
                        xbox)
                                basic_machine=i686-pc
-                               os=mingw32
+                               basic_os=mingw32
                                ;;
                        ymp)
                                basic_machine=ymp-cray
-                               os=unicos
+                               basic_os=unicos
                                ;;
                        *)
                                basic_machine=$1
-                               os=
+                               basic_os=
                                ;;
                esac
                ;;
@@ -683,17 +686,17 @@ case $basic_machine in
        bluegene*)
                cpu=powerpc
                vendor=ibm
-               os=cnk
+               basic_os=cnk
                ;;
        decsystem10* | dec10*)
                cpu=pdp10
                vendor=dec
-               os=tops10
+               basic_os=tops10
                ;;
        decsystem20* | dec20*)
                cpu=pdp10
                vendor=dec
-               os=tops20
+               basic_os=tops20
                ;;
        delta | 3300 | motorola-3300 | motorola-delta \
              | 3300-motorola | delta-motorola)
@@ -703,7 +706,7 @@ case $basic_machine in
        dpx2*)
                cpu=m68k
                vendor=bull
-               os=sysv3
+               basic_os=sysv3
                ;;
        encore | umax | mmax)
                cpu=ns32k
@@ -712,7 +715,7 @@ case $basic_machine in
        elxsi)
                cpu=elxsi
                vendor=elxsi
-               os=${os:-bsd}
+               basic_os=${basic_os:-bsd}
                ;;
        fx2800)
                cpu=i860
@@ -725,7 +728,7 @@ case $basic_machine in
        h3050r* | hiux*)
                cpu=hppa1.1
                vendor=hitachi
-               os=hiuxwe2
+               basic_os=hiuxwe2
                ;;
        hp3k9[0-9][0-9] | hp9[0-9][0-9])
                cpu=hppa1.0
@@ -766,38 +769,38 @@ case $basic_machine in
                vendor=hp
                ;;
        i*86v32)
-               cpu=`echo "$1" | sed -e 's/86.*/86/'`
+               cpu=$(echo "$1" | sed -e 's/86.*/86/')
                vendor=pc
-               os=sysv32
+               basic_os=sysv32
                ;;
        i*86v4*)
-               cpu=`echo "$1" | sed -e 's/86.*/86/'`
+               cpu=$(echo "$1" | sed -e 's/86.*/86/')
                vendor=pc
-               os=sysv4
+               basic_os=sysv4
                ;;
        i*86v)
-               cpu=`echo "$1" | sed -e 's/86.*/86/'`
+               cpu=$(echo "$1" | sed -e 's/86.*/86/')
                vendor=pc
-               os=sysv
+               basic_os=sysv
                ;;
        i*86sol2)
-               cpu=`echo "$1" | sed -e 's/86.*/86/'`
+               cpu=$(echo "$1" | sed -e 's/86.*/86/')
                vendor=pc
-               os=solaris2
+               basic_os=solaris2
                ;;
        j90 | j90-cray)
                cpu=j90
                vendor=cray
-               os=${os:-unicos}
+               basic_os=${basic_os:-unicos}
                ;;
        iris | iris4d)
                cpu=mips
                vendor=sgi
-               case $os in
+               case $basic_os in
                    irix*)
                        ;;
                    *)
-                       os=irix4
+                       basic_os=irix4
                        ;;
                esac
                ;;
@@ -808,26 +811,26 @@ case $basic_machine in
        *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
                cpu=m68k
                vendor=atari
-               os=mint
+               basic_os=mint
                ;;
        news-3600 | risc-news)
                cpu=mips
                vendor=sony
-               os=newsos
+               basic_os=newsos
                ;;
        next | m*-next)
                cpu=m68k
                vendor=next
-               case $os in
+               case $basic_os in
                    openstep*)
                        ;;
                    nextstep*)
                        ;;
                    ns2*)
-                     os=nextstep2
+                     basic_os=nextstep2
                        ;;
                    *)
-                     os=nextstep3
+                     basic_os=nextstep3
                        ;;
                esac
                ;;
@@ -838,12 +841,12 @@ case $basic_machine in
        op50n-* | op60c-*)
                cpu=hppa1.1
                vendor=oki
-               os=proelf
+               basic_os=proelf
                ;;
        pa-hitachi)
                cpu=hppa1.1
                vendor=hitachi
-               os=hiuxwe2
+               basic_os=hiuxwe2
                ;;
        pbd)
                cpu=sparc
@@ -880,12 +883,12 @@ case $basic_machine in
        sde)
                cpu=mipsisa32
                vendor=sde
-               os=${os:-elf}
+               basic_os=${basic_os:-elf}
                ;;
        simso-wrs)
                cpu=sparclite
                vendor=wrs
-               os=vxworks
+               basic_os=vxworks
                ;;
        tower | tower-32)
                cpu=m68k
@@ -902,7 +905,7 @@ case $basic_machine in
        w89k-*)
                cpu=hppa1.1
                vendor=winbond
-               os=proelf
+               basic_os=proelf
                ;;
        none)
                cpu=none
@@ -914,7 +917,7 @@ case $basic_machine in
                ;;
        leon-*|leon[3-9]-*)
                cpu=sparc
-               vendor=`echo "$basic_machine" | sed 's/-.*//'`
+               vendor=$(echo "$basic_machine" | sed 's/-.*//')
                ;;
 
        *-*)
@@ -955,11 +958,11 @@ case $cpu-$vendor in
        # some cases the only manufacturer, in others, it is the most popular.
        craynv-unknown)
                vendor=cray
-               os=${os:-unicosmp}
+               basic_os=${basic_os:-unicosmp}
                ;;
        c90-unknown | c90-cray)
                vendor=cray
-               os=${os:-unicos}
+               basic_os=${Basic_os:-unicos}
                ;;
        fx80-unknown)
                vendor=alliant
@@ -1003,7 +1006,7 @@ case $cpu-$vendor in
        dpx20-unknown | dpx20-bull)
                cpu=rs6000
                vendor=bull
-               os=${os:-bosx}
+               basic_os=${basic_os:-bosx}
                ;;
 
        # Here we normalize CPU types irrespective of the vendor
@@ -1012,7 +1015,7 @@ case $cpu-$vendor in
                ;;
        blackfin-*)
                cpu=bfin
-               os=linux
+               basic_os=linux
                ;;
        c54x-*)
                cpu=tic54x
@@ -1025,7 +1028,7 @@ case $cpu-$vendor in
                ;;
        e500v[12]-*)
                cpu=powerpc
-               os=$os"spe"
+               basic_os=${basic_os}"spe"
                ;;
        mips3*-*)
                cpu=mips64
@@ -1035,7 +1038,7 @@ case $cpu-$vendor in
                ;;
        m68knommu-*)
                cpu=m68k
-               os=linux
+               basic_os=linux
                ;;
        m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*)
                cpu=s12z
@@ -1045,7 +1048,7 @@ case $cpu-$vendor in
                ;;
        parisc-*)
                cpu=hppa
-               os=linux
+               basic_os=linux
                ;;
        pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
                cpu=i586
@@ -1081,7 +1084,7 @@ case $cpu-$vendor in
                cpu=mipsisa64sb1el
                ;;
        sh5e[lb]-*)
-               cpu=`echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/'`
+               cpu=$(echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/')
                ;;
        spur-*)
                cpu=spur
@@ -1099,13 +1102,16 @@ case $cpu-$vendor in
                cpu=x86_64
                ;;
        xscale-* | xscalee[bl]-*)
-               cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
+               cpu=$(echo "$cpu" | sed 's/^xscale/arm/')
+               ;;
+       arm64-*)
+               cpu=aarch64
                ;;
 
        # Recognize the canonical CPU Types that limit and/or modify the
        # company names they are paired with.
        cr16-*)
-               os=${os:-elf}
+               basic_os=${basic_os:-elf}
                ;;
        crisv32-* | etraxfs*-*)
                cpu=crisv32
@@ -1116,7 +1122,7 @@ case $cpu-$vendor in
                vendor=axis
                ;;
        crx-*)
-               os=${os:-elf}
+               basic_os=${basic_os:-elf}
                ;;
        neo-tandem)
                cpu=neo
@@ -1138,16 +1144,12 @@ case $cpu-$vendor in
                cpu=nsx
                vendor=tandem
                ;;
-       s390-*)
-               cpu=s390
-               vendor=ibm
-               ;;
-       s390x-*)
-               cpu=s390x
-               vendor=ibm
+       mipsallegrexel-sony)
+               cpu=mipsallegrexel
+               vendor=sony
                ;;
        tile*-*)
-               os=${os:-linux-gnu}
+               basic_os=${basic_os:-linux-gnu}
                ;;
 
        *)
@@ -1164,7 +1166,7 @@ case $cpu-$vendor in
                        | am33_2.0 \
                        | amdgcn \
                        | arc | arceb \
-                       | arm  | arm[lb]e | arme[lb] | armv* \
+                       | arm | arm[lb]e | arme[lb] | armv* \
                        | avr | avr32 \
                        | asmjs \
                        | ba \
@@ -1229,6 +1231,7 @@ case $cpu-$vendor in
                        | pyramid \
                        | riscv | riscv32 | riscv64 \
                        | rl78 | romp | rs6000 | rx \
+                       | s390 | s390x \
                        | score \
                        | sh | shl \
                        | sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \
@@ -1238,6 +1241,7 @@ case $cpu-$vendor in
                        | sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \
                        | spu \
                        | tahoe \
+                       | thumbv7* \
                        | tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \
                        | tron \
                        | ubicom32 \
@@ -1275,8 +1279,47 @@ esac
 
 # Decode manufacturer-specific aliases for certain operating systems.
 
-if [ x$os != x ]
+if test x$basic_os != x
 then
+
+# First recognize some ad-hoc caes, or perhaps split kernel-os, or else just
+# set os.
+case $basic_os in
+       gnu/linux*)
+               kernel=linux
+               os=$(echo $basic_os | sed -e 's|gnu/linux|gnu|')
+               ;;
+       os2-emx)
+               kernel=os2
+               os=$(echo $basic_os | sed -e 's|os2-emx|emx|')
+               ;;
+       nto-qnx*)
+               kernel=nto
+               os=$(echo $basic_os | sed -e 's|nto-qnx|qnx|')
+               ;;
+       *-*)
+               # shellcheck disable=SC2162
+               IFS="-" read kernel os <<EOF
+$basic_os
+EOF
+               ;;
+       # Default OS when just kernel was specified
+       nto*)
+               kernel=nto
+               os=$(echo $basic_os | sed -e 's|nto|qnx|')
+               ;;
+       linux*)
+               kernel=linux
+               os=$(echo $basic_os | sed -e 's|linux|gnu|')
+               ;;
+       *)
+               kernel=
+               os=$basic_os
+               ;;
+esac
+
+# Now, normalize the OS (knowing we just have one component, it's not a kernel,
+# etc.)
 case $os in
        # First match some system type aliases that might get confused
        # with valid system types.
@@ -1288,7 +1331,7 @@ case $os in
                os=cnk
                ;;
        solaris1 | solaris1.*)
-               os=`echo $os | sed -e 's|solaris1|sunos4|'`
+               os=$(echo $os | sed -e 's|solaris1|sunos4|')
                ;;
        solaris)
                os=solaris2
@@ -1296,9 +1339,6 @@ case $os in
        unixware*)
                os=sysv4.2uw
                ;;
-       gnu/linux*)
-               os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
-               ;;
        # es1800 is here to avoid being matched by es* (a different OS)
        es1800*)
                os=ose
@@ -1320,12 +1360,9 @@ case $os in
                os=sco3.2v4
                ;;
        sco3.2.[4-9]*)
-               os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
+               os=$(echo $os | sed -e 's/sco3.2./sco3.2v/')
                ;;
-       sco3.2v[4-9]* | sco5v6*)
-               # Don't forget version if it is 3.2v4 or newer.
-               ;;
-       scout)
+       sco*v* | scout)
                # Don't match below
                ;;
        sco*)
@@ -1334,79 +1371,26 @@ case $os in
        psos*)
                os=psos
                ;;
-       # Now accept the basic system types.
-       # The portable systems comes first.
-       # Each alternative MUST end in a * to match a version number.
-       # sysv* is not here because it comes later, after sysvr4.
-       gnu* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
-            | *vms* | esix* | aix* | cnk* | sunos | sunos[34]*\
-            | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
-            | sym* | kopensolaris* | plan9* \
-            | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
-            | aos* | aros* | cloudabi* | sortix* \
-            | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
-            | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
-            | knetbsd* | mirbsd* | netbsd* \
-            | bitrig* | openbsd* | solidbsd* | libertybsd* | os108* \
-            | ekkobsd* | kfreebsd* | freebsd* | riscix* | lynxos* \
-            | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
-            | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
-            | udi* | eabi* | lites* | ieee* | go32* | aux* | hcos* \
-            | chorusrdb* | cegcc* | glidix* \
-            | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
-            | midipix* | mingw32* | mingw64* | linux-gnu* | linux-android* \
-            | linux-newlib* | linux-musl* | linux-uclibc* \
-            | uxpv* | beos* | mpeix* | udk* | moxiebox* \
-            | interix* | uwin* | mks* | rhapsody* | darwin* \
-            | openstep* | oskit* | conix* | pw32* | nonstopux* \
-            | storm-chaos* | tops10* | tenex* | tops20* | its* \
-            | os2* | vos* | palmos* | uclinux* | nucleus* \
-            | morphos* | superux* | rtmk* | windiss* \
-            | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
-            | skyos* | haiku* | rdos* | toppers* | drops* | es* \
-            | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
-            | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
-            | nsk* | powerunix)
-       # Remember, each alternative MUST END IN *, to match a version number.
-               ;;
        qnx*)
-               case $cpu in
-                   x86 | i*86)
-                       ;;
-                   *)
-                       os=nto-$os
-                       ;;
-               esac
+               os=qnx
                ;;
        hiux*)
                os=hiuxwe2
                ;;
-       nto-qnx*)
-               ;;
-       nto*)
-               os=`echo $os | sed -e 's|nto|nto-qnx|'`
-               ;;
-       sim | xray | os68k* | v88r* \
-           | windows* | osx | abug | netware* | os9* \
-           | macos* | mpw* | magic* | mmixware* | mon960* | lnews*)
-               ;;
-       linux-dietlibc)
-               os=linux-dietlibc
-               ;;
-       linux*)
-               os=`echo $os | sed -e 's|linux|linux-gnu|'`
-               ;;
        lynx*178)
                os=lynxos178
                ;;
        lynx*5)
                os=lynxos5
                ;;
+       lynxos*)
+               # don't get caught up in next wildcard
+               ;;
        lynx*)
                os=lynxos
                ;;
-       mac*)
-               os=`echo "$os" | sed -e 's|mac|macos|'`
+       mac[0-9]*)
+               os=$(echo "$os" | sed -e 's|mac|macos|')
                ;;
        opened*)
                os=openedition
@@ -1415,10 +1399,10 @@ case $os in
                os=os400
                ;;
        sunos5*)
-               os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
+               os=$(echo "$os" | sed -e 's|sunos5|solaris2|')
                ;;
        sunos6*)
-               os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
+               os=$(echo "$os" | sed -e 's|sunos6|solaris3|')
                ;;
        wince*)
                os=wince
@@ -1452,7 +1436,7 @@ case $os in
                ;;
        # Preserve the version number of sinix5.
        sinix5.*)
-               os=`echo $os | sed -e 's|sinix|sysv|'`
+               os=$(echo $os | sed -e 's|sinix|sysv|')
                ;;
        sinix*)
                os=sysv4
@@ -1475,18 +1459,12 @@ case $os in
        sysvr4)
                os=sysv4
                ;;
-       # This must come after sysvr4.
-       sysv*)
-               ;;
        ose*)
                os=ose
                ;;
        *mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
                os=mint
                ;;
-       zvmoe)
-               os=zvmoe
-               ;;
        dicos*)
                os=dicos
                ;;
@@ -1503,19 +1481,11 @@ case $os in
                        ;;
                esac
                ;;
-       nacl*)
-               ;;
-       ios)
-               ;;
-       none)
-               ;;
-       *-eabi)
-               ;;
        *)
-               echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2
-               exit 1
+               # No normalization, but not necessarily accepted, that comes below.
                ;;
 esac
+
 else
 
 # Here we handle the default operating systems that come with various machines.
@@ -1528,6 +1498,7 @@ else
 # will signal an error saying that MANUFACTURER isn't an operating
 # system, and we'll never get to this point.
 
+kernel=
 case $cpu-$vendor in
        score-*)
                os=elf
@@ -1539,7 +1510,8 @@ case $cpu-$vendor in
                os=riscix1.2
                ;;
        arm*-rebel)
-               os=linux
+               kernel=linux
+               os=gnu
                ;;
        arm*-semi)
                os=aout
@@ -1705,84 +1677,173 @@ case $cpu-$vendor in
                os=none
                ;;
 esac
+
 fi
 
+# Now, validate our (potentially fixed-up) OS.
+case $os in
+       # Sometimes we do "kernel-abi", so those need to count as OSes.
+       musl* | newlib* | uclibc*)
+               ;;
+       # Likewise for "kernel-libc"
+       eabi | eabihf | gnueabi | gnueabihf)
+               ;;
+       # Now accept the basic system types.
+       # The portable systems comes first.
+       # Each alternative MUST end in a * to match a version number.
+       gnu* | android* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
+            | *vms* | esix* | aix* | cnk* | sunos | sunos[34]* \
+            | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
+            | sym* |  plan9* | psp* | sim* | xray* | os68k* | v88r* \
+            | hiux* | abug | nacl* | netware* | windows* \
+            | os9* | macos* | osx* | ios* \
+            | mpw* | magic* | mmixware* | mon960* | lnews* \
+            | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
+            | aos* | aros* | cloudabi* | sortix* | twizzler* \
+            | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
+            | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
+            | mirbsd* | netbsd* | dicos* | openedition* | ose* \
+            | bitrig* | openbsd* | solidbsd* | libertybsd* | os108* \
+            | ekkobsd* | freebsd* | riscix* | lynxos* | os400* \
+            | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
+            | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
+            | udi* | lites* | ieee* | go32* | aux* | hcos* \
+            | chorusrdb* | cegcc* | glidix* \
+            | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
+            | midipix* | mingw32* | mingw64* | mint* \
+            | uxpv* | beos* | mpeix* | udk* | moxiebox* \
+            | interix* | uwin* | mks* | rhapsody* | darwin* \
+            | openstep* | oskit* | conix* | pw32* | nonstopux* \
+            | storm-chaos* | tops10* | tenex* | tops20* | its* \
+            | os2* | vos* | palmos* | uclinux* | nucleus* | morphos* \
+            | scout* | superux* | sysv* | rtmk* | tpf* | windiss* \
+            | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
+            | skyos* | haiku* | rdos* | toppers* | drops* | es* \
+            | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
+            | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
+            | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx*)
+               ;;
+       # This one is extra strict with allowed versions
+       sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
+               # Don't forget version if it is 3.2v4 or newer.
+               ;;
+       none)
+               ;;
+       *)
+               echo Invalid configuration \`"$1"\': OS \`"$os"\' not recognized 1>&2
+               exit 1
+               ;;
+esac
+
+# As a final step for OS-related things, validate the OS-kernel combination
+# (given a valid OS), if there is a kernel.
+case $kernel-$os in
+       linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* | linux-musl* | linux-uclibc* )
+               ;;
+       uclinux-uclibc* )
+               ;;
+       -dietlibc* | -newlib* | -musl* | -uclibc* )
+               # These are just libc implementations, not actual OSes, and thus
+               # require a kernel.
+               echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2
+               exit 1
+               ;;
+       kfreebsd*-gnu* | kopensolaris*-gnu*)
+               ;;
+       nto-qnx*)
+               ;;
+       os2-emx)
+               ;;
+       *-eabi* | *-gnueabi*)
+               ;;
+       -*)
+               # Blank kernel with real OS is always fine.
+               ;;
+       *-*)
+               echo "Invalid configuration \`$1': Kernel \`$kernel' not known to work with OS \`$os'." 1>&2
+               exit 1
+               ;;
+esac
+
 # Here we handle the case where we know the os, and the CPU type, but not the
 # manufacturer.  We pick the logical manufacturer.
 case $vendor in
        unknown)
-               case $os in
-                       riscix*)
+               case $cpu-$os in
+                       *-riscix*)
                                vendor=acorn
                                ;;
-                       sunos*)
+                       *-sunos*)
                                vendor=sun
                                ;;
-                       cnk*|-aix*)
+                       *-cnk* | *-aix*)
                                vendor=ibm
                                ;;
-                       beos*)
+                       *-beos*)
                                vendor=be
                                ;;
-                       hpux*)
+                       *-hpux*)
                                vendor=hp
                                ;;
-                       mpeix*)
+                       *-mpeix*)
                                vendor=hp
                                ;;
-                       hiux*)
+                       *-hiux*)
                                vendor=hitachi
                                ;;
-                       unos*)
+                       *-unos*)
                                vendor=crds
                                ;;
-                       dgux*)
+                       *-dgux*)
                                vendor=dg
                                ;;
-                       luna*)
+                       *-luna*)
                                vendor=omron
                                ;;
-                       genix*)
+                       *-genix*)
                                vendor=ns
                                ;;
-                       clix*)
+                       *-clix*)
                                vendor=intergraph
                                ;;
-                       mvs* | opened*)
+                       *-mvs* | *-opened*)
+                               vendor=ibm
+                               ;;
+                       *-os400*)
                                vendor=ibm
                                ;;
-                       os400*)
+                       s390-* | s390x-*)
                                vendor=ibm
                                ;;
-                       ptx*)
+                       *-ptx*)
                                vendor=sequent
                                ;;
-                       tpf*)
+                       *-tpf*)
                                vendor=ibm
                                ;;
-                       vxsim* | vxworks* | windiss*)
+                       *-vxsim* | *-vxworks* | *-windiss*)
                                vendor=wrs
                                ;;
-                       aux*)
+                       *-aux*)
                                vendor=apple
                                ;;
-                       hms*)
+                       *-hms*)
                                vendor=hitachi
                                ;;
-                       mpw* | macos*)
+                       *-mpw* | *-macos*)
                                vendor=apple
                                ;;
-                       *mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
+                       *-*mint | *-mint[0-9]* | *-*MiNT | *-MiNT[0-9]*)
                                vendor=atari
                                ;;
-                       vos*)
+                       *-vos*)
                                vendor=stratus
                                ;;
                esac
                ;;
 esac
 
-echo "$cpu-$vendor-$os"
+echo "$cpu-$vendor-${kernel:+$kernel-}$os"
 exit
 
 # Local variables:
index 65cbf7093a1e4c4a2da08ac8dcd725f8376c344c..6b391623c4bf023255fdbc8eceb7acf110e5fa79 100755 (executable)
@@ -3,7 +3,7 @@
 
 scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 1999-2018 Free Software Foundation, Inc.
+# Copyright (C) 1999-2020 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 339c5df083abfe236a14d6405680db7bb8fb2746..f4ec1b1f92a53c1a5f8925c63dc0a0ef07a3613b 100755 (executable)
@@ -7,7 +7,7 @@ VERSION=2018-03-07.03 # UTC
 
 # Note: this is a bash script (could be zsh or dash)
 
-# Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index fd6a4b8ce9861286e3ea44eb33467ba59d1588e2..dec8eb9afdd08af942d6a58949b3a13b7d46027d 100755 (executable)
@@ -2,9 +2,9 @@
 # gendocs.sh -- generate a GNU manual in many formats.  This script is
 #   mentioned in maintain.texi.  See the help message below for usage details.
 
-scriptversion=2019-01-01.00
+scriptversion=2020-01-01.00
 
-# Copyright 2003-2019 Free Software Foundation, Inc.
+# Copyright 2003-2020 Free Software Foundation, Inc.
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -73,7 +73,7 @@ texarg="-t @finalout"
 
 version="gendocs.sh $scriptversion
 
-Copyright 2019 Free Software Foundation, Inc.
+Copyright 2020 Free Software Foundation, Inc.
 There is NO warranty.  You may redistribute this software
 under the terms of the GNU General Public License.
 For more information about these matters, see the files named COPYING."
index 45b5656e6f4e1eaf47574708bbfef73770627531..f4e85924f5803510450fa3f97fecb9ade094f042 100755 (executable)
@@ -1,8 +1,8 @@
 #!/bin/sh
 # Print a version string.
-scriptversion=2018-03-07.03; # UTC
+scriptversion=2019-10-13.15; # UTC
 
-# Copyright (C) 2007-2019 Free Software Foundation, Inc.
+# Copyright (C) 2007-2020 Free Software Foundation, Inc.
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -142,11 +142,9 @@ then
     v=`cat $tarball_version_file` || v=
     case $v in
         *$nl*) v= ;; # reject multi-line output
-        [0-9]*) ;;
-        *) v= ;;
     esac
     test "x$v" = x \
-        && echo "$0: WARNING: $tarball_version_file is missing or damaged" 1>&2
+        && echo "$0: WARNING: $tarball_version_file is damaged" 1>&2
 fi
 
 if test "x$v" != x
index 163c48c8e215508e7e702096c10765eae0a3c064..be8082e7ffd95ebe5051330c60b9e43058918a51 100755 (executable)
@@ -3,7 +3,7 @@
 
 # Convert git log output to ChangeLog format.
 
-# Copyright (C) 2008-2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2020 Free Software Foundation, Inc.
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 # are valid code in both sh and perl.  When executed by sh, they re-execute
 # the script through the perl program found in $PATH.  The '-x' option
 # is essential as well; without it, perl would re-execute the script
-# through /bin/sh.  When executed by  perl, the next two lines are a no-op.
+# through /bin/sh.  When executed by perl, the next two lines are a no-op.
 eval 'exec perl -wSx "$0" "$@"'
      if 0;
 
-my $VERSION = '2018-03-07 03:47'; # UTC
+my $VERSION = '2020-04-04 15:07'; # UTC
 # The definition above must lie within the first 8 lines in order
 # for the Emacs time-stamp write hook (at end) to update it.
 # If you change this file with Emacs, please let the write hook
index 0d52171ecd1395ca936fd71557f64cd8d20dd9ee..ff48cf773ba8801ed0a62bea7f5daebf98311dd5 100755 (executable)
@@ -4,7 +4,7 @@
 
 VERSION=2018-03-07.03; # UTC
 
-# Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index afbafa92409a4456af4f978baf1b1eba9c315048..e4ea542792bfe93912678451a7e568753dbdd0aa 100755 (executable)
@@ -3,7 +3,7 @@
 
 scriptversion=2018-05-19.18; # UTC
 
-# Copyright (C) 2004-2019 Free Software Foundation, Inc.
+# Copyright (C) 2004-2020 Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 8175c640fe6288a75cc846567ea5506086f326f4..ec298b53740270ce82b326c4c2deaa5dcdec4596 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # install - install a program, script, or datafile
 
-scriptversion=2018-03-11.20; # UTC
+scriptversion=2020-11-14.01; # UTC
 
 # This originates from X11R5 (mit/util/scripts/install.sh), which was
 # later released in X11R6 (xc/config/util/install.sh) with the
@@ -69,6 +69,11 @@ posix_mkdir=
 # Desired mode of installed file.
 mode=0755
 
+# Create dirs (including intermediate dirs) using mode 755.
+# This is like GNU 'install' as of coreutils 8.32 (2020).
+mkdir_umask=22
+
+backupsuffix=
 chgrpcmd=
 chmodcmd=$chmodprog
 chowncmd=
@@ -99,18 +104,28 @@ Options:
      --version  display version info and exit.
 
   -c            (ignored)
-  -C            install only if different (preserve the last data modification time)
+  -C            install only if different (preserve data modification time)
   -d            create directories instead of installing files.
   -g GROUP      $chgrpprog installed files to GROUP.
   -m MODE       $chmodprog installed files to MODE.
   -o USER       $chownprog installed files to USER.
+  -p            pass -p to $cpprog.
   -s            $stripprog installed files.
+  -S SUFFIX     attempt to back up existing files, with suffix SUFFIX.
   -t DIRECTORY  install into DIRECTORY.
   -T            report an error if DSTFILE is a directory.
 
 Environment variables override the default commands:
   CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
   RMPROG STRIPPROG
+
+By default, rm is invoked with -f; when overridden with RMPROG,
+it's up to you to specify -f if you want it.
+
+If -S is not specified, no backups are attempted.
+
+Email bug reports to bug-automake@gnu.org.
+Automake home page: https://www.gnu.org/software/automake/
 "
 
 while test $# -ne 0; do
@@ -137,8 +152,13 @@ while test $# -ne 0; do
     -o) chowncmd="$chownprog $2"
         shift;;
 
+    -p) cpprog="$cpprog -p";;
+
     -s) stripcmd=$stripprog;;
 
+    -S) backupsuffix="$2"
+        shift;;
+
     -t)
         is_target_a_directory=always
         dst_arg=$2
@@ -255,6 +275,10 @@ do
     dstdir=$dst
     test -d "$dstdir"
     dstdir_status=$?
+    # Don't chown directories that already exist.
+    if test $dstdir_status = 0; then
+      chowncmd=""
+    fi
   else
 
     # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
@@ -301,22 +325,6 @@ do
   if test $dstdir_status != 0; then
     case $posix_mkdir in
       '')
-        # Create intermediate dirs using mode 755 as modified by the umask.
-        # This is like FreeBSD 'install' as of 1997-10-28.
-        umask=`umask`
-        case $stripcmd.$umask in
-          # Optimize common cases.
-          *[2367][2367]) mkdir_umask=$umask;;
-          .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
-
-          *[0-7])
-            mkdir_umask=`expr $umask + 22 \
-              - $umask % 100 % 40 + $umask % 20 \
-              - $umask % 10 % 4 + $umask % 2
-            `;;
-          *) mkdir_umask=$umask,go-w;;
-        esac
-
         # With -d, create the new directory with the user-specified mode.
         # Otherwise, rely on $mkdir_umask.
         if test -n "$dir_arg"; then
@@ -326,52 +334,49 @@ do
         fi
 
         posix_mkdir=false
-        case $umask in
-          *[123567][0-7][0-7])
-            # POSIX mkdir -p sets u+wx bits regardless of umask, which
-            # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
-            ;;
-          *)
-            # Note that $RANDOM variable is not portable (e.g. dash);  Use it
-            # here however when possible just to lower collision chance.
-            tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
-
-            trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
-
-            # Because "mkdir -p" follows existing symlinks and we likely work
-            # directly in world-writeable /tmp, make sure that the '$tmpdir'
-            # directory is successfully created first before we actually test
-            # 'mkdir -p' feature.
-            if (umask $mkdir_umask &&
-                $mkdirprog $mkdir_mode "$tmpdir" &&
-                exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
-            then
-              if test -z "$dir_arg" || {
-                   # Check for POSIX incompatibilities with -m.
-                   # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
-                   # other-writable bit of parent directory when it shouldn't.
-                   # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
-                   test_tmpdir="$tmpdir/a"
-                   ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
-                   case $ls_ld_tmpdir in
-                     d????-?r-*) different_mode=700;;
-                     d????-?--*) different_mode=755;;
-                     *) false;;
-                   esac &&
-                   $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
-                     ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
-                     test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
-                   }
-                 }
-              then posix_mkdir=:
-              fi
-              rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
-            else
-              # Remove any dirs left behind by ancient mkdir implementations.
-              rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
-            fi
-            trap '' 0;;
-        esac;;
+       # The $RANDOM variable is not portable (e.g., dash).  Use it
+       # here however when possible just to lower collision chance.
+       tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
+
+       trap '
+         ret=$?
+         rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null
+         exit $ret
+       ' 0
+
+       # Because "mkdir -p" follows existing symlinks and we likely work
+       # directly in world-writeable /tmp, make sure that the '$tmpdir'
+       # directory is successfully created first before we actually test
+       # 'mkdir -p'.
+       if (umask $mkdir_umask &&
+           $mkdirprog $mkdir_mode "$tmpdir" &&
+           exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
+       then
+         if test -z "$dir_arg" || {
+              # Check for POSIX incompatibilities with -m.
+              # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
+              # other-writable bit of parent directory when it shouldn't.
+              # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
+              test_tmpdir="$tmpdir/a"
+              ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
+              case $ls_ld_tmpdir in
+                d????-?r-*) different_mode=700;;
+                d????-?--*) different_mode=755;;
+                *) false;;
+              esac &&
+              $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
+                ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
+                test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
+              }
+            }
+         then posix_mkdir=:
+         fi
+         rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
+       else
+         # Remove any dirs left behind by ancient mkdir implementations.
+         rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
+       fi
+       trap '' 0;;
     esac
 
     if
@@ -382,7 +387,7 @@ do
     then :
     else
 
-      # The umask is ridiculous, or mkdir does not conform to POSIX,
+      # mkdir does not conform to POSIX,
       # or it failed possibly due to a race condition.  Create the
       # directory the slow way, step by step, checking for races as we go.
 
@@ -411,7 +416,7 @@ do
           prefixes=
         else
           if $posix_mkdir; then
-            (umask=$mkdir_umask &&
+            (umask $mkdir_umask &&
              $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
             # Don't fail if two instances are running concurrently.
             test -d "$prefix" || exit 1
@@ -451,7 +456,18 @@ do
     trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
 
     # Copy the file name to the temp name.
-    (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
+    (umask $cp_umask &&
+     { test -z "$stripcmd" || {
+        # Create $dsttmp read-write so that cp doesn't create it read-only,
+        # which would cause strip to fail.
+        if test -z "$doit"; then
+          : >"$dsttmp" # No need to fork-exec 'touch'.
+        else
+          $doit touch "$dsttmp"
+        fi
+       }
+     } &&
+     $doit_exec $cpprog "$src" "$dsttmp") &&
 
     # and set any options; do chmod last to preserve setuid bits.
     #
@@ -477,6 +493,13 @@ do
     then
       rm -f "$dsttmp"
     else
+      # If $backupsuffix is set, and the file being installed
+      # already exists, attempt a backup.  Don't worry if it fails,
+      # e.g., if mv doesn't support -f.
+      if test -n "$backupsuffix" && test -f "$dst"; then
+        $doit $mvcmd -f "$dst" "$dst$backupsuffix" 2>/dev/null
+      fi
+
       # Rename the file to the real destination.
       $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
 
@@ -491,9 +514,9 @@ do
         # file should still install successfully.
         {
           test ! -f "$dst" ||
-          $doit $rmcmd -f "$dst" 2>/dev/null ||
+          $doit $rmcmd "$dst" 2>/dev/null ||
           { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
-            { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
+            { $doit $rmcmd "$rmtmp" 2>/dev/null; :; }
           } ||
           { echo "$0: cannot unlink or rename $dst" >&2
             (exit 1); exit 1
index 8c7a5901a0690aded843445b891b91f3fe8002df..6a6a4bcf2b9c0c99ad39e618ee0707ca80070f59 100755 (executable)
@@ -3,7 +3,7 @@
 
 scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 1995-2018 Free Software Foundation, Inc.
+# Copyright (C) 1995-2020 Free Software Foundation, Inc.
 # written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, June 1995
 #
 # This program is free software; you can redistribute it and/or modify
index 2e7fd520672ccdac1198768e72298d0693d7bd1b..8bbef0e2e4845832c7b23e591825952ae9c64d4b 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Create a temporary directory, much like mktemp -d does.
 
-# Copyright (C) 2007-2019 Free Software Foundation, Inc.
+# Copyright (C) 2007-2020 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index ed3f0ee98f4c536be1f99e6f324326df0757623b..3c7051d1c74c7b0afd2afa40e30ce6f79045faee 100644 (file)
@@ -1,11 +1,11 @@
 % texinfo.tex -- TeX macros to handle Texinfo files.
-% 
+%
 % Load plain if necessary, i.e., if running under initex.
 \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
 %
-\def\texinfoversion{2019-06-01.23}
+\def\texinfoversion{2020-10-24.12}
 %
-% Copyright 1985, 1986, 1988, 1990-2019 Free Software Foundation, Inc.
+% Copyright 1985, 1986, 1988, 1990-2020 Free Software Foundation, Inc.
 %
 % This texinfo.tex file is free software: you can redistribute it and/or
 % modify it under the terms of the GNU General Public License as
@@ -33,7 +33,7 @@
 % The texinfo.tex in any given distribution could well be out
 % of date, so if that's what you're using, please check.
 %
-% Send bug reports to bug-texinfo@gnu.org.  Please include including a
+% Send bug reports to bug-texinfo@gnu.org.  Please include a
 % complete document in each bug report with which we can reproduce the
 % problem.  Patches are, of course, greatly appreciated.
 %
 % @errormsg{MSG}.  Do the index-like expansions on MSG, but if things
 % aren't perfect, it's not the end of the world, being an error message,
 % after all.
-% 
+%
 \def\errormsg{\begingroup \indexnofonts \doerrormsg}
 \def\doerrormsg#1{\errmessage{#1}}
 
 % the output routine.  The saved contents are valid until we actually
 % \shipout a page.
 %
-% (We used to run a short output routine to actually set \topmark and 
-% \firstmark to the right values, but if this was called with an empty page 
-% containing whatsits for writing index entries, the whatsits would be thrown 
+% (We used to run a short output routine to actually set \topmark and
+% \firstmark to the right values, but if this was called with an empty page
+% containing whatsits for writing index entries, the whatsits would be thrown
 % away and the index auxiliary file would remain empty.)
 %
 \newtoks\savedtopmark
   \ifodd\pageno  \advance\hoffset by \bindingoffset
   \else \advance\hoffset by -\bindingoffset\fi
   %
+  \checkchapterpage
+  %
   % Retrieve the information for the headings from the marks in the page,
   % and call Plain TeX's \makeheadline and \makefootline, which use the
   % values in \headline and \footline.
   %
-  % This is used to check if we are on the first page of a chapter.
-  \ifcase1\the\savedtopmark\fi
-  \let\prevchaptername\thischaptername
-  \ifcase0\firstmark\fi
-  \let\curchaptername\thischaptername
-  %
-  \ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi
-  %
-  \ifx\curchaptername\prevchaptername
-    \let\thischapterheading\thischapter
-  \else
-    % \thischapterheading is the same as \thischapter except it is blank
-    % for the first page of a chapter.  This is to prevent the chapter name 
-    % being shown twice.
-    \def\thischapterheading{}%
-  \fi
-  %
   % Common context changes for both heading and footing.
   % Do this outside of the \shipout so @code etc. will be expanded in
   % the headline as they should be, not taken literally (outputting ''code).
-  \def\commmonheadfootline{\let\hsize=\txipagewidth \texinfochars}
-  %
-  \global\setbox\headlinebox = \vbox{\commmonheadfootline \makeheadline}%
+  \def\commonheadfootline{\let\hsize=\txipagewidth \texinfochars}
   %
+  \ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi
+  \global\setbox\headlinebox = \vbox{\commonheadfootline \makeheadline}%
   \ifodd\pageno \getoddfootingmarks \else \getevenfootingmarks \fi
-  \global\setbox\footlinebox = \vbox{\commmonheadfootline \makefootline}%
+  \global\setbox\footlinebox = \vbox{\commonheadfootline \makefootline}%
   %
   {%
     % Set context for writing to auxiliary files like index files.
 \ifr@ggedbottom \kern-\dimen@ \vfil \fi}
 }
 
+% Check if we are on the first page of a chapter.  Used for printing headings.
+\newif\ifchapterpage
+\def\checkchapterpage{%
+  % Get the chapter that was current at the end of the last page
+  \ifcase1\the\savedtopmark\fi
+  \let\prevchaptername\thischaptername
+  %
+  \ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi
+  \let\curchaptername\thischaptername
+  %
+  \ifx\curchaptername\prevchaptername
+    \chapterpagefalse
+  \else
+    \chapterpagetrue
+  \fi
+}
 
 % Argument parsing
 
   }%
 }
 
-% First remove any @comment, then any @c comment.  Pass the result on to 
+% First remove any @comment, then any @c comment.  Pass the result on to
 % \argcheckspaces.
 \def\argremovecomment#1\comment#2\ArgTerm{\argremovec #1\c\ArgTerm}
 \def\argremovec#1\c#2\ArgTerm{\argcheckspaces#1\^^M\ArgTerm}
@@ -1010,7 +1011,7 @@ where each line of input produces a line of output.}
 \let\setfilename=\comment
 
 % @bye.
-\outer\def\bye{\pagealignmacro\tracingstats=1\ptexend}
+\outer\def\bye{\chappager\pagelabels\tracingstats=1\ptexend}
 
 
 \message{pdf,}
@@ -1052,7 +1053,7 @@ where each line of input produces a line of output.}
             tex.sprint(
               string.format(string.char(0x5c) .. string.char(0x25) .. '03o' ..
                             string.char(0x5c) .. string.char(0x25) .. '03o',
-                            (c / 256), (c % 256)))
+                            math.floor(c / 256), math.floor(c % 256)))
           else
             c = c - 0x10000
             local c_hi = c / 1024 + 0xd800
@@ -1062,8 +1063,8 @@ where each line of input produces a line of output.}
                             string.char(0x5c) .. string.char(0x25) .. '03o' ..
                             string.char(0x5c) .. string.char(0x25) .. '03o' ..
                             string.char(0x5c) .. string.char(0x25) .. '03o',
-                            (c_hi / 256), (c_hi % 256),
-                            (c_lo / 256), (c_lo % 256)))
+                            math.floor(c_hi / 256), math.floor(c_hi % 256),
+                            math.floor(c_lo / 256), math.floor(c_lo % 256)))
           end
         end
       end
@@ -1076,15 +1077,19 @@ where each line of input produces a line of output.}
       function PDFescstr(str)
         for c in string.bytes(str) do
           if c <= 0x20 or c >= 0x80 or c == 0x28 or c == 0x29 or c == 0x5c then
-            tex.sprint(
+            tex.sprint(-2,
               string.format(string.char(0x5c) .. string.char(0x25) .. '03o',
                             c))
           else
-            tex.sprint(string.char(c))
+            tex.sprint(-2, string.char(c))
           end
         end
       end
     }
+    % The -2 in the arguments here gives all the input to TeX catcode 12
+    % (other) or 10 (space), preventing undefined control sequence errors. See
+    % https://lists.gnu.org/archive/html/bug-texinfo/2019-08/msg00031.html
+    %
   \endgroup
   \def\pdfescapestring#1{\directlua{PDFescstr('\luaescapestring{#1}')}}
   \ifnum\luatexversion>84
@@ -1133,11 +1138,50 @@ where each line of input produces a line of output.}
 \fi
 
 
+% Output page labels information.
+% See PDF reference v.1.7 p.594, section 8.3.1.
+\ifpdf
+\def\pagelabels{%
+  \def\title{0 << /P (T-) /S /D >>}%
+  \edef\roman{\the\romancount << /S /r >>}%
+  \edef\arabic{\the\arabiccount << /S /D >>}%
+  %
+  % Page label ranges must be increasing.  Remove any duplicates.
+  % (There is a slight chance of this being wrong if e.g. there is
+  % a @contents but no @titlepage, etc.)
+  %
+  \ifnum\romancount=0 \def\roman{}\fi
+  \ifnum\arabiccount=0 \def\title{}%
+  \else
+    \ifnum\romancount=\arabiccount \def\roman{}\fi
+  \fi
+  %
+  \ifnum\romancount<\arabiccount
+    \pdfcatalog{/PageLabels << /Nums [\title \roman \arabic ] >> }\relax
+  \else
+    \pdfcatalog{/PageLabels << /Nums [\title \arabic \roman ] >> }\relax
+  \fi
+}
+\else
+  \let\pagelabels\relax
+\fi
+
+\newcount\pagecount \pagecount=0
+\newcount\romancount \romancount=0
+\newcount\arabiccount \arabiccount=0
+\ifpdf
+  \let\ptxadvancepageno\advancepageno
+  \def\advancepageno{%
+    \ptxadvancepageno\global\advance\pagecount by 1
+  }
+\fi
+
+
 % PDF uses PostScript string constants for the names of xref targets,
 % for display in the outlines, and in other places.  Thus, we have to
 % double any backslashes.  Otherwise, a name like "\node" will be
 % interpreted as a newline (\n), followed by o, d, e.  Not good.
-% 
+%
 % See http://www.ntg.nl/pipermail/ntg-pdftex/2004-July/000654.html and
 % related messages.  The final outcome is that it is up to the TeX user
 % to double the backslashes and otherwise make the string valid, so
@@ -1423,7 +1467,13 @@ output) for that.)}
       % subentries, which we calculated on our first read of the .toc above.
       %
       % We use the node names as the destinations.
+      %
+      % Currently we prefix the section name with the section number
+      % for chapter and appendix headings only in order to avoid too much
+      % horizontal space being required in the PDF viewer.
       \def\numchapentry##1##2##3##4{%
+        \dopdfoutline{##2 ##1}{count-\expnumber{chap##2}}{##3}{##4}}%
+      \def\unnchapentry##1##2##3##4{%
         \dopdfoutline{##1}{count-\expnumber{chap##2}}{##3}{##4}}%
       \def\numsecentry##1##2##3##4{%
         \dopdfoutline{##1}{count-\expnumber{sec##2}}{##3}{##4}}%
@@ -1442,7 +1492,7 @@ output) for that.)}
       % their "best" equivalent, based on the @documentencoding.  Too
       % much work for too little return.  Just use the ASCII equivalents
       % we use for the index sort strings.
-      % 
+      %
       \indexnofonts
       \setupdatafile
       % We can have normal brace characters in the PDF outlines, unlike
@@ -1665,9 +1715,13 @@ output) for that.)}
       % Therefore, we read toc only once.
       %
       % We use node names as destinations.
+      %
+      % Currently we prefix the section name with the section number
+      % for chapter and appendix headings only in order to avoid too much
+      % horizontal space being required in the PDF viewer.
       \def\partentry##1##2##3##4{}% ignore parts in the outlines
       \def\numchapentry##1##2##3##4{%
-        \dopdfoutline{##1}{1}{##3}{##4}}%
+        \dopdfoutline{##2 ##1}{1}{##3}{##4}}%
       \def\numsecentry##1##2##3##4{%
         \dopdfoutline{##1}{2}{##3}{##4}}%
       \def\numsubsecentry##1##2##3##4{%
@@ -1679,7 +1733,8 @@ output) for that.)}
       \let\appsecentry\numsecentry%
       \let\appsubsecentry\numsubsecentry%
       \let\appsubsubsecentry\numsubsubsecentry%
-      \let\unnchapentry\numchapentry%
+      \def\unnchapentry##1##2##3##4{%
+        \dopdfoutline{##1}{1}{##3}{##4}}%
       \let\unnsecentry\numsecentry%
       \let\unnsubsecentry\numsubsecentry%
       \let\unnsubsubsecentry\numsubsubsecentry%
@@ -2492,7 +2547,7 @@ end
 \def\it{\fam=\itfam \setfontstyle{it}}
 \def\sl{\fam=\slfam \setfontstyle{sl}}
 \def\bf{\fam=\bffam \setfontstyle{bf}}\def\bfstylename{bf}
-\def\tt{\fam=\ttfam \setfontstyle{tt}}
+\def\tt{\fam=\ttfam \setfontstyle{tt}}\def\ttstylename{tt}
 
 % Texinfo sort of supports the sans serif font style, which plain TeX does not.
 % So we set up a \sf.
@@ -2726,7 +2781,7 @@ end
 }
 
 % Commands to set the quote options.
-% 
+%
 \parseargdef\codequoteundirected{%
   \def\temp{#1}%
   \ifx\temp\onword
@@ -2767,7 +2822,7 @@ end
 % If we are in a monospaced environment, however, 1) always use \ttsl,
 % and 2) do not add an italic correction.
 \def\dosmartslant#1#2{%
-  \ifusingtt 
+  \ifusingtt
     {{\ttsl #2}\let\next=\relax}%
     {\def\next{{#1#2}\futurelet\next\smartitaliccorrection}}%
   \next
@@ -2914,14 +2969,14 @@ end
   \gdef\codedash{\futurelet\next\codedashfinish}
   \gdef\codedashfinish{%
     \normaldash % always output the dash character itself.
-    % 
+    %
     % Now, output a discretionary to allow a line break, unless
     % (a) the next character is a -, or
     % (b) the preceding character is a -.
     % E.g., given --posix, we do not want to allow a break after either -.
     % Given --foo-bar, we do want to allow a break between the - and the b.
     \ifx\next\codedash \else
-      \ifx\codedashprev\codedash 
+      \ifx\codedashprev\codedash
       \else \discretionary{}{}{}\fi
     \fi
     % we need the space after the = for the case when \next itself is a
@@ -2983,10 +3038,18 @@ end
 % arg (if given), and not the url (which is then just the link target).
 \newif\ifurefurlonlylink
 
+% The default \pretolerance setting stops the penalty inserted in
+% \urefallowbreak being a discouragement to line breaking.  Set it to
+% a negative value for this paragraph only.  Hopefully this does not
+% conflict with redefinitions of \par done elsewhere.
+\def\nopretolerance{%
+\pretolerance=-1
+\def\par{\endgraf\pretolerance=100 \let\par\endgraf}%
+}
+
 % The main macro is \urefbreak, which allows breaking at expected
-% places within the url.  (There used to be another version, which
-% didn't support automatic breaking.)
-\def\urefbreak{\begingroup \urefcatcodes \dourefbreak}
+% places within the url.
+\def\urefbreak{\nopretolerance \begingroup \urefcatcodes \dourefbreak}
 \let\uref=\urefbreak
 %
 \def\dourefbreak#1{\urefbreakfinish #1,,,\finish}
@@ -3003,7 +3066,7 @@ end
         % For pdfTeX and LuaTeX
         \ifurefurlonlylink
           % PDF plus option to not display url, show just arg
-          \unhbox0             
+          \unhbox0
         \else
           % PDF, normally display both arg and url for consistency,
           % visibility, if the pdf is eventually used to print, etc.
@@ -3016,7 +3079,7 @@ end
           % For XeTeX
           \ifurefurlonlylink
             % PDF plus option to not display url, show just arg
-            \unhbox0             
+            \unhbox0
           \else
             % PDF, normally display both arg and url for consistency,
             % visibility, if the pdf is eventually used to print, etc.
@@ -3074,10 +3137,10 @@ end
   }
 }
 
-% By default we'll break after the special characters, but some people like to 
-% break before the special chars, so allow that.  Also allow no breaking at 
+% By default we'll break after the special characters, but some people like to
+% break before the special chars, so allow that.  Also allow no breaking at
 % all, for manual control.
-% 
+%
 \parseargdef\urefbreakstyle{%
   \def\txiarg{#1}%
   \ifx\txiarg\wordnone
@@ -3095,12 +3158,17 @@ end
 \def\wordbefore{before}
 \def\wordnone{none}
 
-% Allow a ragged right output to aid breaking long URL's.  Putting stretch in 
-% between characters of the URL doesn't look good.
+% Allow a ragged right output to aid breaking long URL's.  There can
+% be a break at the \allowbreak with no extra glue (if the existing stretch in
+% the line is sufficient), a break at the \penalty with extra glue added
+% at the end of the line, or no break at all here.
+%   Changing the value of the penalty and/or the amount of stretch affects how
+% preferable one choice is over the other.
 \def\urefallowbreak{%
-  \hskip 0pt plus 4 em\relax
-  \allowbreak
-  \hskip 0pt plus -4 em\relax
+  \penalty0\relax
+  \hskip 0pt plus 2 em\relax
+  \penalty1000\relax
+  \hskip 0pt plus -2 em\relax
 }
 
 \urefbreakstyle after
@@ -3296,10 +3364,29 @@ end
 \def\sup{\ifmmode \expandafter\ptexsp \else \expandafter\finishsup\fi}
 \def\finishsup#1{$\ptexsp{\hbox{\switchtolllsize #1}}$}%
 
+% provide this command from LaTeX as it is very common
+\def\frac#1#2{{{#1}\over{#2}}}
+
+% @displaymath.
+% \globaldefs is needed to recognize the end lines in \tex and
+% \end tex.  Set \thisenv as @end displaymath is seen before @end tex.
+{\obeylines
+\globaldefs=1
+\envdef\displaymath{%
+\tex
+\def\thisenv{\displaymath}%
+$$%
+}
+
+\def\Edisplaymath{$$
+\def\thisenv{\tex}%
+\end tex
+}}
+
 % @inlinefmt{FMTNAME,PROCESSED-TEXT} and @inlineraw{FMTNAME,RAW-TEXT}.
 % Ignore unless FMTNAME == tex; then it is like @iftex and @tex,
 % except specified as a normal braced arg, so no newlines to worry about.
-% 
+%
 \def\outfmtnametex{tex}
 %
 \long\def\inlinefmt#1{\doinlinefmt #1,\finish}
@@ -3307,7 +3394,7 @@ end
   \def\inlinefmtname{#1}%
   \ifx\inlinefmtname\outfmtnametex \ignorespaces #2\fi
 }
-% 
+%
 % @inlinefmtifelse{FMTNAME,THEN-TEXT,ELSE-TEXT} expands THEN-TEXT if
 % FMTNAME is tex, else ELSE-TEXT.
 \long\def\inlinefmtifelse#1{\doinlinefmtifelse #1,,,\finish}
@@ -3323,7 +3410,7 @@ end
 % *right* brace they would have to use a command anyway, so they may as
 % well use a command to get a left brace too.  We could re-use the
 % delimiter character idea from \verb, but it seems like overkill.
-% 
+%
 \long\def\inlineraw{\tex \doinlineraw}
 \long\def\doinlineraw#1{\doinlinerawtwo #1,\finish}
 \def\doinlinerawtwo#1,#2,\finish{%
@@ -3500,7 +3587,7 @@ end
 
 % @pounds{} is a sterling sign, which Knuth put in the CM italic font.
 %
-\def\pounds{{\it\$}}
+\def\pounds{\ifmonospace{\ecfont\char"BF}\else{\it\$}\fi}
 
 % @euro{} comes from a separate font, depending on the current style.
 % We use the free feym* fonts from the eurosym package by Henrik
@@ -3600,7 +3687,7 @@ end
 % for non-CM glyphs.  That is ec* for regular text and tc* for the text
 % companion symbols (LaTeX TS1 encoding).  Both are part of the ec
 % package and follow the same conventions.
-% 
+%
 \def\ecfont{\etcfont{e}}
 \def\tcfont{\etcfont{t}}
 %
@@ -3649,11 +3736,19 @@ end
 \fi
 
 % Quotes.
-\chardef\quotedblleft="5C
-\chardef\quotedblright=`\"
 \chardef\quoteleft=`\`
 \chardef\quoteright=`\'
 
+% only change font for tt for correct kerning and to avoid using
+% \ecfont unless necessary.
+\def\quotedblleft{%
+  \ifmonospace{\ecfont\char"10}\else{\char"5C}\fi
+}
+
+\def\quotedblright{%
+  \ifmonospace{\ecfont\char"11}\else{\char`\"}\fi
+}
+
 
 \message{page headings,}
 
@@ -3672,7 +3767,7 @@ end
               after the title page.}}%
 \def\setshortcontentsaftertitlepage{%
   \errmessage{@setshortcontentsaftertitlepage has been removed as a Texinfo
-              command; move your @shortcontents and @contents commands if you 
+              command; move your @shortcontents and @contents commands if you
               want the contents after the title page.}}%
 
 \parseargdef\shorttitlepage{%
@@ -3727,7 +3822,7 @@ end
 % don't worry much about spacing, ragged right.  This should be used
 % inside a \vbox, and fonts need to be set appropriately first. \par should
 % be specified before the end of the \vbox, since a vbox is a group.
-% 
+%
 \def\raggedtitlesettings{%
   \rm
   \hyphenpenalty=10000
@@ -3775,12 +3870,19 @@ end
 
 \newtoks\evenheadline    % headline on even pages
 \newtoks\oddheadline     % headline on odd pages
+\newtoks\evenchapheadline% headline on even pages with a new chapter
+\newtoks\oddchapheadline % headline on odd pages with a new chapter
 \newtoks\evenfootline    % footline on even pages
 \newtoks\oddfootline     % footline on odd pages
 
 % Now make \makeheadline and \makefootline in Plain TeX use those variables
-\headline={{\textfonts\rm \ifodd\pageno \the\oddheadline
-                            \else \the\evenheadline \fi}}
+\headline={{\textfonts\rm
+            \ifchapterpage
+              \ifodd\pageno\the\oddchapheadline\else\the\evenchapheadline\fi
+            \else
+              \ifodd\pageno\the\oddheadline\else\the\evenheadline\fi
+            \fi}}
+
 \footline={{\textfonts\rm \ifodd\pageno \the\oddfootline
                             \else \the\evenfootline \fi}\HEADINGShook}
 \let\HEADINGShook=\relax
@@ -3796,12 +3898,14 @@ end
 \def\evenheading{\parsearg\evenheadingxxx}
 \def\evenheadingxxx #1{\evenheadingyyy #1\|\|\|\|\finish}
 \def\evenheadingyyy #1\|#2\|#3\|#4\finish{%
-\global\evenheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}}
+  \global\evenheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}
+  \global\evenchapheadline=\evenheadline}
 
 \def\oddheading{\parsearg\oddheadingxxx}
 \def\oddheadingxxx #1{\oddheadingyyy #1\|\|\|\|\finish}
 \def\oddheadingyyy #1\|#2\|#3\|#4\finish{%
-\global\oddheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}}
+  \global\oddheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}%
+  \global\oddchapheadline=\oddheadline}
 
 \parseargdef\everyheading{\oddheadingxxx{#1}\evenheadingxxx{#1}}%
 
@@ -3868,37 +3972,34 @@ end
 \parseargdef\headings{\csname HEADINGS#1\endcsname}
 
 \def\headingsoff{% non-global headings elimination
-  \evenheadline={\hfil}\evenfootline={\hfil}%
-   \oddheadline={\hfil}\oddfootline={\hfil}%
+  \evenheadline={\hfil}\evenfootline={\hfil}\evenchapheadline={\hfil}%
+   \oddheadline={\hfil}\oddfootline={\hfil}\oddchapheadline={\hfil}%
 }
 
 \def\HEADINGSoff{{\globaldefs=1 \headingsoff}} % global setting
 \HEADINGSoff  % it's the default
 
 % When we turn headings on, set the page number to 1.
+\def\pageone{
+  \global\pageno=1
+  \global\arabiccount = \pagecount
+}
+
 % For double-sided printing, put current file name in lower left corner,
 % chapter name on inside top of right hand pages, document
 % title on inside top of left hand pages, and page numbers on outside top
 % edge of all pages.
 \def\HEADINGSdouble{%
-\global\pageno=1
-\global\evenfootline={\hfil}
-\global\oddfootline={\hfil}
-\global\evenheadline={\line{\folio\hfil\thistitle}}
-\global\oddheadline={\line{\thischapterheading\hfil\folio}}
-\global\let\contentsalignmacro = \chapoddpage
+\pageone
+\HEADINGSdoublex
 }
 \let\contentsalignmacro = \chappager
 
 % For single-sided printing, chapter title goes across top left of page,
 % page number on top right.
 \def\HEADINGSsingle{%
-\global\pageno=1
-\global\evenfootline={\hfil}
-\global\oddfootline={\hfil}
-\global\evenheadline={\line{\thischapterheading\hfil\folio}}
-\global\oddheadline={\line{\thischapterheading\hfil\folio}}
-\global\let\contentsalignmacro = \chappager
+\pageone
+\HEADINGSsinglex
 }
 \def\HEADINGSon{\HEADINGSdouble}
 
@@ -3908,7 +4009,9 @@ end
 \global\evenfootline={\hfil}
 \global\oddfootline={\hfil}
 \global\evenheadline={\line{\folio\hfil\thistitle}}
-\global\oddheadline={\line{\thischapterheading\hfil\folio}}
+\global\oddheadline={\line{\thischapter\hfil\folio}}
+\global\evenchapheadline={\line{\folio\hfil}}
+\global\oddchapheadline={\line{\hfil\folio}}
 \global\let\contentsalignmacro = \chapoddpage
 }
 
@@ -3916,8 +4019,22 @@ end
 \def\HEADINGSsinglex{%
 \global\evenfootline={\hfil}
 \global\oddfootline={\hfil}
-\global\evenheadline={\line{\thischapterheading\hfil\folio}}
-\global\oddheadline={\line{\thischapterheading\hfil\folio}}
+\global\evenheadline={\line{\thischapter\hfil\folio}}
+\global\oddheadline={\line{\thischapter\hfil\folio}}
+\global\evenchapheadline={\line{\hfil\folio}}
+\global\oddchapheadline={\line{\hfil\folio}}
+\global\let\contentsalignmacro = \chappager
+}
+
+% for @setchapternewpage off
+\def\HEADINGSsinglechapoff{%
+\pageone
+\global\evenfootline={\hfil}
+\global\oddfootline={\hfil}
+\global\evenheadline={\line{\thischapter\hfil\folio}}
+\global\oddheadline={\line{\thischapter\hfil\folio}}
+\global\evenchapheadline=\evenheadline
+\global\oddchapheadline=\oddheadline
 \global\let\contentsalignmacro = \chappager
 }
 
@@ -4350,7 +4467,7 @@ end
 }
 
 % multitable-only commands.
-% 
+%
 % @headitem starts a heading row, which we typeset in bold.  Assignments
 % have to be global since we are inside the implicit group of an
 % alignment entry.  \everycr below resets \everytab so we don't have to
@@ -4669,13 +4786,13 @@ end
 % Like \expandablevalue, but completely expandable (the \message in the
 % definition above operates at the execution level of TeX).  Used when
 % writing to auxiliary files, due to the expansion that \write does.
-% If flag is undefined, pass through an unexpanded @value command: maybe it 
+% If flag is undefined, pass through an unexpanded @value command: maybe it
 % will be set by the time it is read back in.
 %
 % NB flag names containing - or _ may not work here.
 \def\dummyvalue#1{%
   \expandafter\ifx\csname SET#1\endcsname\relax
-    \noexpand\value{#1}%
+    \string\value{#1}%
   \else
     \csname SET#1\endcsname
   \fi
@@ -4693,7 +4810,7 @@ end
 
 % @ifset VAR ... @end ifset reads the `...' iff VAR has been defined
 % with @set.
-% 
+%
 % To get the special treatment we need for `@end ifset,' we call
 % \makecond and then redefine.
 %
@@ -4726,7 +4843,7 @@ end
 % without the @) is in fact defined.  We can only feasibly check at the
 % TeX level, so something like `mathcode' is going to considered
 % defined even though it is not a Texinfo command.
-% 
+%
 \makecond{ifcommanddefined}
 \def\ifcommanddefined{\parsearg{\doifcmddefined{\let\next=\ifcmddefinedfail}}}
 %
@@ -4832,10 +4949,10 @@ end
 
 % like the previous two, but they put @code around the argument.
 \def\docodeindex#1{\edef\indexname{#1}\parsearg\docodeindexxxx}
-\def\docodeindexxxx #1{\doind{\indexname}{\code{#1}}}
+\def\docodeindexxxx #1{\docind{\indexname}{#1}}
 
-\f
-% Used for the aux, toc and index files to prevent expansion of Texinfo 
+
+% Used for the aux, toc and index files to prevent expansion of Texinfo
 % commands.
 %
 \def\atdummies{%
@@ -4843,6 +4960,7 @@ end
   \definedummyletter\ %
   \definedummyletter\{%
   \definedummyletter\}%
+  \definedummyletter\&%
   %
   % Do the redefinitions.
   \definedummies
@@ -4913,6 +5031,7 @@ end
   \definedummyword\TeX
   %
   % Assorted special characters.
+  \definedummyword\ampchar
   \definedummyword\atchar
   \definedummyword\arrow
   \definedummyword\backslashchar
@@ -5106,64 +5225,66 @@ end
   \let\lbracechar\{%
   \let\rbracechar\}%
   %
+  %
+  \let\do\indexnofontsdef
+  %
   % Non-English letters.
-  \def\AA{AA}%
-  \def\AE{AE}%
-  \def\DH{DZZ}%
-  \def\L{L}%
-  \def\OE{OE}%
-  \def\O{O}%
-  \def\TH{TH}%
-  \def\aa{aa}%
-  \def\ae{ae}%
-  \def\dh{dzz}%
-  \def\exclamdown{!}%
-  \def\l{l}%
-  \def\oe{oe}%
-  \def\ordf{a}%
-  \def\ordm{o}%
-  \def\o{o}%
-  \def\questiondown{?}%
-  \def\ss{ss}%
-  \def\th{th}%
-  %
-  \def\LaTeX{LaTeX}%
-  \def\TeX{TeX}%
-  %
-  % Assorted special characters.  \defglyph gives the control sequence a
-  % definition that removes the {} that follows its use.
-  \defglyph\atchar{@}%
-  \defglyph\arrow{->}%
-  \defglyph\bullet{bullet}%
-  \defglyph\comma{,}%
-  \defglyph\copyright{copyright}%
-  \defglyph\dots{...}%
-  \defglyph\enddots{...}%
-  \defglyph\equiv{==}%
-  \defglyph\error{error}%
-  \defglyph\euro{euro}%
-  \defglyph\expansion{==>}%
-  \defglyph\geq{>=}%
-  \defglyph\guillemetleft{<<}%
-  \defglyph\guillemetright{>>}%
-  \defglyph\guilsinglleft{<}%
-  \defglyph\guilsinglright{>}%
-  \defglyph\leq{<=}%
-  \defglyph\lbracechar{\{}%
-  \defglyph\minus{-}%
-  \defglyph\point{.}%
-  \defglyph\pounds{pounds}%
-  \defglyph\print{-|}%
-  \defglyph\quotedblbase{"}%
-  \defglyph\quotedblleft{"}%
-  \defglyph\quotedblright{"}%
-  \defglyph\quoteleft{`}%
-  \defglyph\quoteright{'}%
-  \defglyph\quotesinglbase{,}%
-  \defglyph\rbracechar{\}}%
-  \defglyph\registeredsymbol{R}%
-  \defglyph\result{=>}%
-  \defglyph\textdegree{o}%
+  \do\AA{AA}%
+  \do\AE{AE}%
+  \do\DH{DZZ}%
+  \do\L{L}%
+  \do\OE{OE}%
+  \do\O{O}%
+  \do\TH{TH}%
+  \do\aa{aa}%
+  \do\ae{ae}%
+  \do\dh{dzz}%
+  \do\exclamdown{!}%
+  \do\l{l}%
+  \do\oe{oe}%
+  \do\ordf{a}%
+  \do\ordm{o}%
+  \do\o{o}%
+  \do\questiondown{?}%
+  \do\ss{ss}%
+  \do\th{th}%
+  %
+  \do\LaTeX{LaTeX}%
+  \do\TeX{TeX}%
+  %
+  % Assorted special characters.
+  \do\atchar{@}%
+  \do\arrow{->}%
+  \do\bullet{bullet}%
+  \do\comma{,}%
+  \do\copyright{copyright}%
+  \do\dots{...}%
+  \do\enddots{...}%
+  \do\equiv{==}%
+  \do\error{error}%
+  \do\euro{euro}%
+  \do\expansion{==>}%
+  \do\geq{>=}%
+  \do\guillemetleft{<<}%
+  \do\guillemetright{>>}%
+  \do\guilsinglleft{<}%
+  \do\guilsinglright{>}%
+  \do\leq{<=}%
+  \do\lbracechar{\{}%
+  \do\minus{-}%
+  \do\point{.}%
+  \do\pounds{pounds}%
+  \do\print{-|}%
+  \do\quotedblbase{"}%
+  \do\quotedblleft{"}%
+  \do\quotedblright{"}%
+  \do\quoteleft{`}%
+  \do\quoteright{'}%
+  \do\quotesinglbase{,}%
+  \do\rbracechar{\}}%
+  \do\registeredsymbol{R}%
+  \do\result{=>}%
+  \do\textdegree{o}%
   %
   % We need to get rid of all macros, leaving only the arguments (if present).
   % Of course this is not nearly correct, but it is the best we can do for now.
@@ -5178,9 +5299,12 @@ end
   \macrolist
   \let\value\indexnofontsvalue
 }
-\def\defglyph#1#2{\def#1##1{#2}} % see above
 
-\f
+% Give the control sequence a definition that removes the {} that follows
+% its use, e.g. @AA{} -> AA
+\def\indexnofontsdef#1#2{\def#1##1{#2}}%
+
+
 
 
 % #1 is the index name, #2 is the entry text.
@@ -5197,6 +5321,20 @@ end
   \fi
 }
 
+% Same as \doind, but for code indices
+\def\docind#1#2{%
+  \iflinks
+  {%
+    %
+    \requireopenindexfile{#1}%
+    \edef\writeto{\csname#1indfile\endcsname}%
+    %
+    \def\indextext{#2}%
+    \safewhatsit\docindwrite
+  }%
+  \fi
+}
+
 % Check if an index file has been opened, and if not, open it.
 \def\requireopenindexfile#1{%
 \ifnum\csname #1indfile\endcsname=0
@@ -5207,7 +5345,7 @@ end
   \ifx\suffix\indexisfl\def\suffix{f1}\fi
   % Open the file
   \immediate\openout\csname#1indfile\endcsname \jobname.\suffix
-  % Using \immediate above here prevents an object entering into the current 
+  % Using \immediate above here prevents an object entering into the current
   % box, which could confound checks such as those in \safewhatsit for
   % preceding skips.
   \typeout{Writing index file \jobname.\suffix}%
@@ -5259,10 +5397,13 @@ end
   \ifx\segment\isfinish
   \else
     %
-    % Fully expand the segment, throwing away any @sortas directives, and 
+    % Fully expand the segment, throwing away any @sortas directives, and
     % trim spaces.
     \edef\trimmed{\segment}%
     \edef\trimmed{\expandafter\eatspaces\expandafter{\trimmed}}%
+    \ifincodeindex
+      \edef\trimmed{\noexpand\code{\trimmed}}%
+    \fi
     %
     \xdef\bracedtext{\bracedtext{\trimmed}}%
     %
@@ -5317,18 +5458,23 @@ end
 % the current value of \escapechar.
 \def\escapeisbackslash{\escapechar=`\\}
 
-% Use \ in index files by default.  texi2dvi didn't support @ as the escape 
-% character (as it checked for "\entry" in the files, and not "@entry").  When 
-% the new version of texi2dvi has had a chance to become more prevalent, then 
-% the escape character can change back to @ again.  This should be an easy 
-% change to make now because both @ and \ are only used as escape characters in 
-% index files, never standing for themselves. 
+% Use \ in index files by default.  texi2dvi didn't support @ as the escape
+% character (as it checked for "\entry" in the files, and not "@entry").  When
+% the new version of texi2dvi has had a chance to become more prevalent, then
+% the escape character can change back to @ again.  This should be an easy
+% change to make now because both @ and \ are only used as escape characters in
+% index files, never standing for themselves.
 %
 \set txiindexescapeisbackslash
 
 % Write the entry in \indextext to the index file.
 %
-\def\doindwrite{%
+
+\newif\ifincodeindex
+\def\doindwrite{\incodeindexfalse\doindwritex}
+\def\docindwrite{\incodeindextrue\doindwritex}
+
+\def\doindwritex{%
   \maybemarginindex
   %
   \atdummies
@@ -5342,7 +5488,7 @@ end
   \def\}{\rbracechar{}}%
   \uccode`\~=`\\ \uppercase{\def~{\backslashchar{}}}%
   %
-  % Split the entry into primary entry and any subentries, and get the index 
+  % Split the entry into primary entry and any subentries, and get the index
   % sort key.
   \splitindexentry\indextext
   %
@@ -5523,18 +5669,18 @@ end
     \uccode`\~=`\\ \uppercase{\if\noexpand~}\noexpand#1
       \expandafter\ifx\csname SETtxiskipindexfileswithbackslash\endcsname\relax
 \errmessage{%
-ERROR: A sorted index file in an obsolete format was skipped.  
+ERROR: A sorted index file in an obsolete format was skipped.
 To fix this problem, please upgrade your version of 'texi2dvi'
 or 'texi2pdf' to that at <https://ftp.gnu.org/gnu/texinfo>.
-If you are using an old version of 'texindex' (part of the Texinfo 
+If you are using an old version of 'texindex' (part of the Texinfo
 distribution), you may also need to upgrade to a newer version (at least 6.0).
 You may be able to typeset the index if you run
 'texindex \jobname.\indexname' yourself.
-You could also try setting the 'txiindexescapeisbackslash' flag by 
+You could also try setting the 'txiindexescapeisbackslash' flag by
 running a command like
-'texi2dvi -t "@set txiindexescapeisbackslash" \jobname.texi'.  If you do 
+'texi2dvi -t "@set txiindexescapeisbackslash" \jobname.texi'.  If you do
 this, Texinfo will try to use index files in the old format.
-If you continue to have problems, deleting the index files and starting again 
+If you continue to have problems, deleting the index files and starting again
 might help (with 'rm \jobname.?? \jobname.??s')%
 }%
       \else
@@ -5548,7 +5694,11 @@ might help (with 'rm \jobname.?? \jobname.??s')%
   \else
     \begindoublecolumns
     \catcode`\\=0\relax
-    \catcode`\@=12\relax
+    %
+    % Make @ an escape character to give macros a chance to work.  This
+    % should work because we (hopefully) don't otherwise use @ in index files.
+    %\catcode`\@=12\relax
+    \catcode`\@=0\relax
     \input \jobname.\indexname s
     \enddoublecolumns
   \fi
@@ -5603,7 +5753,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
   % bottom of a column to reduce an increase in inter-line spacing.
   \nobreak
   \vskip 0pt plus 5\baselineskip
-  \penalty -300 
+  \penalty -300
   \vskip 0pt plus -5\baselineskip
   %
   % Typeset the initial.  Making this add up to a whole number of
@@ -5719,7 +5869,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
       \advance\dimen@ii by 1\dimen@i
       \ifdim\wd\boxA > \dimen@ii % If the entry doesn't fit in one line
       \ifdim\dimen@ > 0.8\dimen@ii   % due to long index text
-        % Try to split the text roughly evenly.  \dimen@ will be the length of 
+        % Try to split the text roughly evenly.  \dimen@ will be the length of
         % the first line.
         \dimen@ = 0.7\dimen@
         \dimen@ii = \hsize
@@ -5927,7 +6077,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 \newbox\balancedcolumns
 \setbox\balancedcolumns=\vbox{shouldnt see this}%
 %
-% Only called for the last of the double column material.  \doublecolumnout 
+% Only called for the last of the double column material.  \doublecolumnout
 % does the others.
 \def\balancecolumns{%
   \setbox0 = \vbox{\unvbox\PAGE}% like \box255 but more efficient, see p.120.
@@ -5955,7 +6105,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
     }%
     % Now the left column is in box 1, and the right column in box 3.
     %
-    % Check whether the left column has come out higher than the page itself.  
+    % Check whether the left column has come out higher than the page itself.
     % (Note that we have doubled \vsize for the double columns, so
     % the actual height of the page is 0.5\vsize).
     \ifdim2\ht1>\vsize
@@ -6252,7 +6402,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 \let\top\unnumbered
 
 % Sections.
-% 
+%
 \outer\parseargdef\numberedsec{\numhead1{#1}} % normally calls seczzz
 \def\seczzz#1{%
   \global\subsecno=0 \global\subsubsecno=0  \global\advance\secno by 1
@@ -6275,7 +6425,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 }
 
 % Subsections.
-% 
+%
 % normally calls numberedsubseczzz:
 \outer\parseargdef\numberedsubsec{\numhead2{#1}}
 \def\numberedsubseczzz#1{%
@@ -6300,7 +6450,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 }
 
 % Subsubsections.
-% 
+%
 % normally numberedsubsubseczzz:
 \outer\parseargdef\numberedsubsubsec{\numhead3{#1}}
 \def\numberedsubsubseczzz#1{%
@@ -6390,18 +6540,16 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 \def\CHAPPAGoff{%
 \global\let\contentsalignmacro = \chappager
 \global\let\pchapsepmacro=\chapbreak
-\global\let\pagealignmacro=\chappager}
+\global\def\HEADINGSon{\HEADINGSsinglechapoff}}
 
 \def\CHAPPAGon{%
 \global\let\contentsalignmacro = \chappager
 \global\let\pchapsepmacro=\chappager
-\global\let\pagealignmacro=\chappager
 \global\def\HEADINGSon{\HEADINGSsingle}}
 
 \def\CHAPPAGodd{%
 \global\let\contentsalignmacro = \chapoddpage
 \global\let\pchapsepmacro=\chapoddpage
-\global\let\pagealignmacro=\chapoddpage
 \global\def\HEADINGSon{\HEADINGSdouble}}
 
 \CHAPPAGon
@@ -6766,9 +6914,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 %
 \def\startcontents#1{%
   % If @setchapternewpage on, and @headings double, the contents should
-  % start on an odd page, unlike chapters.  Thus, we maintain
-  % \contentsalignmacro in parallel with \pagealignmacro.
-  % From: Torbjorn Granlund <tege@matematik.su.se>
+  % start on an odd page, unlike chapters.
   \contentsalignmacro
   \immediate\closeout\tocfile
   %
@@ -6783,6 +6929,9 @@ might help (with 'rm \jobname.?? \jobname.??s')%
     %
     % Roman numerals for page numbers.
     \ifnum \pageno>0 \global\pageno = \lastnegativepageno \fi
+    \def\thistitle{}% no title in double-sided headings
+    % Record where the Roman numerals started.
+    \ifnum\romancount=0 \global\romancount=\pagecount \fi
 }
 
 % redefined for the two-volume lispref.  We always output on
@@ -6805,8 +6954,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
     \fi
     \closein 1
   \endgroup
-  \lastnegativepageno = \pageno
-  \global\pageno = \savepageno
+  \contentsendroman
 }
 
 % And just the chapters.
@@ -6841,10 +6989,20 @@ might help (with 'rm \jobname.?? \jobname.??s')%
     \vfill \eject
     \contentsalignmacro % in case @setchapternewpage odd is in effect
   \endgroup
+  \contentsendroman
+}
+\let\shortcontents = \summarycontents
+
+% Get ready to use Arabic numerals again
+\def\contentsendroman{%
   \lastnegativepageno = \pageno
   \global\pageno = \savepageno
+  %
+  % If \romancount > \arabiccount, the contents are at the end of the
+  % document.  Otherwise, advance where the Arabic numerals start for
+  % the page numbers.
+  \ifnum\romancount>\arabiccount\else\global\arabiccount=\pagecount\fi
 }
-\let\shortcontents = \summarycontents
 
 % Typeset the label for a chapter or appendix for the short contents.
 % The arg is, e.g., `A' for an appendix, or `3' for a chapter.
@@ -7358,7 +7516,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 
 % @indentedblock is like @quotation, but indents only on the left and
 % has no optional argument.
-% 
+%
 \makedispenvdef{indentedblock}{\indentedblockstart}
 %
 \def\indentedblockstart{%
@@ -7433,13 +7591,9 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 \newdimen\tabw \setbox0=\hbox{\tt\space} \tabw=8\wd0 % tab amount
 %
 % 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.
+% tabs.
 \newbox\verbbox
-\def\starttabbox{\global\setbox\verbbox=\hbox\bgroup}
+\def\starttabbox{\setbox\verbbox=\hbox\bgroup}
 %
 \begingroup
   \catcode`\^^I=\active
@@ -7450,7 +7604,8 @@ might help (with 'rm \jobname.?? \jobname.??s')%
       \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
+      \wd\verbbox=\dimen\verbbox
+      \leavevmode\box\verbbox \starttabbox
     }%
   }
 \endgroup
@@ -7460,9 +7615,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
   \let\nonarrowing = t%
   \nonfillstart
   \tt % easiest (and conventionally used) font for verbatim
-  % The \leavevmode here is for blank lines.  Otherwise, we would
-  % never \starttabbox and the \egroup would end verbatim mode.
-  \def\par{\leavevmode\egroup\box\verbbox\endgraf}%
+  \def\par{\egroup\leavevmode\box\verbbox\endgraf\starttabbox}%
   \tabexpand
   \setupmarkupstyle{verbatim}%
   % Respect line breaks,
@@ -7470,7 +7623,6 @@ might help (with 'rm \jobname.?? \jobname.??s')%
   % make each space count.
   % Must do in this order:
   \obeylines \uncatcodespecials \sepspaces
-  \everypar{\starttabbox}%
 }
 
 % Do the @verb magic: verbatim text is quoted by unique
@@ -7505,13 +7657,16 @@ might help (with 'rm \jobname.?? \jobname.??s')%
   % ignore everything up to the first ^^M, that's the newline at the end
   % of the @verbatim input line itself.  Otherwise we get an extra blank
   % line in the output.
-  \xdef\doverbatim#1^^M#2@end verbatim{#2\noexpand\end\gobble verbatim}%
+  \xdef\doverbatim#1^^M#2@end verbatim{%
+    \starttabbox#2\egroup\noexpand\end\gobble verbatim}%
   % We really want {...\end verbatim} in the body of the macro, but
   % without the active space; thus we have to use \xdef and \gobble.
+  % The \egroup ends the \verbbox started at the end of the last line in
+  % the block.
 \endgroup
 %
 \envdef\verbatim{%
-    \setupverbatim\doverbatim
+    \setnormaldispenv\setupverbatim\doverbatim
 }
 \let\Everbatim = \afterenvbreak
 
@@ -7529,7 +7684,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
       \wlog{texinfo.tex: doing @verbatiminclude of #1^^J}%
       \edef\tmp{\noexpand\input #1 }
       \expandafter
-    }\tmp
+    }\expandafter\starttabbox\tmp\egroup
     \afterenvbreak
   }%
 }
@@ -7658,7 +7813,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 % @deftypefnnewline on|off says whether the return type of typed functions
 % are printed on their own line.  This affects @deftypefn, @deftypefun,
 % @deftypeop, and @deftypemethod.
-% 
+%
 \parseargdef\deftypefnnewline{%
   \def\temp{#1}%
   \ifx\temp\onword
@@ -7677,8 +7832,8 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 % \dosubind {index}{topic}{subtopic}
 %
 % If SUBTOPIC is present, precede it with a space, and call \doind.
-% (At some time during the 20th century, this made a two-level entry in an 
-% index such as the operation index.  Nobody seemed to notice the change in 
+% (At some time during the 20th century, this made a two-level entry in an
+% index such as the operation index.  Nobody seemed to notice the change in
 % behaviour though.)
 \def\dosubind#1#2#3{%
   \def\thirdarg{#3}%
@@ -7853,7 +8008,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
       \tclose{\temp}% typeset the return type
       \ifrettypeownline
         % put return type on its own line; prohibit line break following:
-        \hfil\vadjust{\nobreak}\break  
+        \hfil\vadjust{\nobreak}\break
       \else
         \space  % type on same line, so just followed by a space
       \fi
@@ -8000,7 +8155,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
   \scantokens{#1@comment}%
   %
   % The \comment is to remove the \newlinechar added by \scantokens, and
-  % can be noticed by \parsearg.  Note \c isn't used because this means cedilla 
+  % can be noticed by \parsearg.  Note \c isn't used because this means cedilla
   % in math mode.
 }
 
@@ -8201,7 +8356,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 % list to some hook where the argument is to be expanded.  If there are
 % less than 10 arguments that hook is to be replaced by ##N where N
 % is the position in that list, that is to say the macro arguments are to be
-% defined `a la TeX in the macro body.  
+% defined `a la TeX in the macro body.
 %
 % That gets used by \mbodybackslash (above).
 %
@@ -8232,8 +8387,8 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 %
 % Read recursive and nonrecursive macro bodies. (They're different since
 % rec and nonrec macros end differently.)
-% 
-% We are in \macrobodyctxt, and the \xdef causes backslashshes in the macro 
+%
+% We are in \macrobodyctxt, and the \xdef causes backslashshes in the macro
 % body to be transformed.
 % Set \macrobody to the body of the macro, and call \defmacro.
 %
@@ -8267,7 +8422,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 % twice the \macarg.BLAH macros does not cost too much processing power.
 \def\parsemmanyargdef@@#1,{%
   \if#1;\let\next=\relax
-  \else 
+  \else
     \let\next=\parsemmanyargdef@@
     \edef\tempb{\eatspaces{#1}}%
     \expandafter\def\expandafter\tempa
@@ -8352,7 +8507,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 
 % Replace arguments by their values in the macro body, and place the result
 % in macro \@tempa.
-% 
+%
 \def\macvalstoargs@{%
   %  To do this we use the property that token registers that are \the'ed
   % within an \edef  expand only once. So we are going to place all argument
@@ -8376,9 +8531,9 @@ might help (with 'rm \jobname.?? \jobname.??s')%
   \expandafter\def\expandafter\@tempa\expandafter{\@tempc}%
   }
 
-% Define the named-macro outside of this group and then close this group. 
-% 
-\def\macargexpandinbody@{% 
+% Define the named-macro outside of this group and then close this group.
+%
+\def\macargexpandinbody@{%
   \expandafter
   \endgroup
   \macargdeflist@
@@ -8416,7 +8571,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 }
 
 % Trailing missing arguments are set to empty.
-% 
+%
 \def\setemptyargvalues@{%
   \ifx\paramlist\nilm@
     \let\next\macargexpandinbody@
@@ -8493,7 +8648,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
   \else % at most 9
     \ifnum\paramno<10\relax
       % @MACNAME sets the context for reading the macro argument
-      % @MACNAME@@ gets the argument, processes backslashes and appends a 
+      % @MACNAME@@ gets the argument, processes backslashes and appends a
       % comma.
       % @MACNAME@@@ removes braces surrounding the argument list.
       % @MACNAME@@@@ scans the macro body with arguments substituted.
@@ -8537,11 +8692,11 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 % Call #1 with a list of tokens #2, with any doubled backslashes in #2
 % compressed to one.
 %
-% This implementation works by expansion, and not execution (so we cannot use 
-% \def or similar).  This reduces the risk of this failing in contexts where 
-% complete expansion is done with no execution (for example, in writing out to 
+% This implementation works by expansion, and not execution (so we cannot use
+% \def or similar).  This reduces the risk of this failing in contexts where
+% complete expansion is done with no execution (for example, in writing out to
 % an auxiliary file for an index entry).
-% 
+%
 % State is kept in the input stream: the argument passed to
 % @look_ahead, @gobble_and_check_finish and @add_segment is
 %
@@ -8563,11 +8718,11 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 % #3 - NEXT_TOKEN
 % #4 used to look ahead
 %
-% If the next token is not a backslash, process the rest of the argument; 
+% If the next token is not a backslash, process the rest of the argument;
 % otherwise, remove the next token.
 @gdef@look_ahead#1!#2#3#4{%
   @ifx#4\%
-   @expandafter@gobble_and_check_finish 
+   @expandafter@gobble_and_check_finish
   @else
    @expandafter@add_segment
   @fi#1!{#2}#4#4%
@@ -8591,9 +8746,9 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 % #3 - NEXT_TOKEN
 % #4 is input stream until next backslash
 %
-% Input stream is either at the start of the argument, or just after a 
-% backslash sequence, either a lone backslash, or a doubled backslash.  
-% NEXT_TOKEN contains the first token in the input stream: if it is \finish, 
+% Input stream is either at the start of the argument, or just after a
+% backslash sequence, either a lone backslash, or a doubled backslash.
+% NEXT_TOKEN contains the first token in the input stream: if it is \finish,
 % finish; otherwise, append to ARG_RESULT the segment of the argument up until
 % the next backslash.  PENDING_BACKSLASH contains a backslash to represent
 % a backslash just before the start of the input stream that has not been
@@ -8605,13 +8760,13 @@ might help (with 'rm \jobname.?? \jobname.??s')%
   % append the pending backslash to the result, followed by the next segment
   @expandafter@is_fi@look_ahead#1#2#4!{\}@fi
   % this @fi is discarded by @look_ahead.
-  % we can't get rid of it with \expandafter because we don't know how 
+  % we can't get rid of it with \expandafter because we don't know how
   % long #4 is.
 }
 
 % #1 - THE_MACRO
 % #2 - ARG_RESULT
-% #3 discards the res of the conditional in @add_segment, and @is_fi ends the 
+% #3 discards the res of the conditional in @add_segment, and @is_fi ends the
 % conditional.
 @gdef@call_the_macro#1#2!#3@fi{@is_fi #1{#2}}
 
@@ -8623,7 +8778,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 % for reading the argument (slightly different in the two cases).  Then,
 % to read the argument, in the whole-line case, it then calls the regular
 % \parsearg MAC; in the lbrace case, it calls \passargtomacro MAC.
-% 
+%
 \def\braceorline#1{\let\macnamexxx=#1\futurelet\nchar\braceorlinexxx}
 \def\braceorlinexxx{%
   \ifx\nchar\bgroup
@@ -8677,7 +8832,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 
 % Used so that the @top node doesn't have to be wrapped in an @ifnottex
 % conditional.
-% \doignore goes to more effort to skip nested conditionals but we don't need 
+% \doignore goes to more effort to skip nested conditionals but we don't need
 % that here.
 \def\omittopnode{%
    \ifx\lastnode\wordTop
@@ -8685,7 +8840,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 }
 \def\wordTop{Top}
 
-% Until the next @node or @bye command, divert output to a box that is not 
+% Until the next @node or @bye command, divert output to a box that is not
 % output.
 \def\ignorenode{\setbox\dummybox\vbox\bgroup\def\node{\egroup\node}%
 \ignorenodebye
@@ -8752,7 +8907,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 % automatically in xrefs, if the third arg is not explicitly specified.
 % This was provided as a "secret" @set xref-automatic-section-title
 % variable, now it's official.
-% 
+%
 \parseargdef\xrefautomaticsectiontitle{%
   \def\temp{#1}%
   \ifx\temp\onword
@@ -8768,7 +8923,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
   \fi\fi
 }
 
-% \f
+%
 % @xref, @pxref, and @ref generate cross-references.  For \xrefX, #1 is
 % the node name, #2 the name of the Info cross-reference, #3 the printed
 % node name, #4 the name of the Info file, #5 the name of the printed
@@ -8921,40 +9076,34 @@ might help (with 'rm \jobname.?? \jobname.??s')%
     \fi
   \else
     % node/anchor (non-float) references.
-    % 
+    %
     % If we use \unhbox to print the node names, TeX does not insert
     % empty discretionaries after hyphens, which means that it will not
     % find a line break at a hyphen in a node names.  Since some manuals
     % are best written with fairly long node names, containing hyphens,
     % this is a loss.  Therefore, we give the text of the node name
     % again, so it is as if TeX is seeing it for the first time.
-    % 
+    %
     \ifdim \wd\printedmanualbox > 0pt
       % Cross-manual reference with a printed manual name.
-      % 
+      %
       \crossmanualxref{\cite{\printedmanual\unskip}}%
     %
     \else\ifdim \wd\infofilenamebox > 0pt
       % Cross-manual reference with only an info filename (arg 4), no
       % printed manual name (arg 5).  This is essentially the same as
       % the case above; we output the filename, since we have nothing else.
-      % 
+      %
       \crossmanualxref{\code{\infofilename\unskip}}%
     %
     \else
       % Reference within this manual.
       %
-      % _ (for example) has to be the character _ for the purposes of the
-      % control sequence corresponding to the node, but it has to expand
-      % into the usual \leavevmode...\vrule stuff for purposes of
-      % printing. So we \turnoffactive for the \refx-snt, back on for the
-      % printing, back off for the \refx-pg.
-      {\turnoffactive
-       % Only output a following space if the -snt ref is nonempty; for
-       % @unnumbered and @anchor, it won't be.
-       \setbox2 = \hbox{\ignorespaces \refx{#1-snt}{}}%
-       \ifdim \wd2 > 0pt \refx{#1-snt}\space\fi
-      }%
+      % Only output a following space if the -snt ref is nonempty; for
+      % @unnumbered and @anchor, it won't be.
+      \setbox2 = \hbox{\ignorespaces \refx{#1-snt}{}}%
+      \ifdim \wd2 > 0pt \refx{#1-snt}\space\fi
+      %
       % output the `[mynode]' via the macro below so it can be overridden.
       \xrefprintnodename\printedrefname
       %
@@ -8978,20 +9127,20 @@ might help (with 'rm \jobname.?? \jobname.??s')%
 \endgroup}
 
 % Output a cross-manual xref to #1.  Used just above (twice).
-% 
+%
 % Only include the text "Section ``foo'' in" if the foo is neither
 % missing or Top.  Thus, @xref{,,,foo,The Foo Manual} outputs simply
 % "see The Foo Manual", the idea being to refer to the whole manual.
-% 
+%
 % But, this being TeX, we can't easily compare our node name against the
 % string "Top" while ignoring the possible spaces before and after in
 % the input.  By adding the arbitrary 7sp below, we make it much less
 % likely that a real node name would have the same width as "Top" (e.g.,
 % in a monospaced font).  Hopefully it will never happen in practice.
-% 
+%
 % For the same basic reason, we retypeset the "Top" at every
 % reference, since the current font is indeterminate.
-% 
+%
 \def\crossmanualxref#1{%
   \setbox\toprefbox = \hbox{Top\kern7sp}%
   \setbox2 = \hbox{\ignorespaces \printedrefname \unskip \kern7sp}%
@@ -9038,13 +9187,13 @@ might help (with 'rm \jobname.?? \jobname.??s')%
   \fi\fi\fi
 }
 
-% \refx{NAME}{SUFFIX} - reference a cross-reference string named NAME.  SUFFIX 
+% \refx{NAME}{SUFFIX} - reference a cross-reference string named NAME.  SUFFIX
 % is output afterwards if non-empty.
 \def\refx#1#2{%
   \requireauxfile
   {%
     \indexnofonts
-    \otherbackslash
+    \turnoffactive
     \def\value##1{##1}%
     \expandafter\global\expandafter\let\expandafter\thisrefX
       \csname XR#1\endcsname
@@ -9070,9 +9219,9 @@ might help (with 'rm \jobname.?? \jobname.??s')%
   #2% Output the suffix in any case.
 }
 
-% This is the macro invoked by entries in the aux file.  Define a control 
-% sequence for a cross-reference target (we prepend XR to the control sequence 
-% name to avoid collisions).  The value is the page number.  If this is a float 
+% This is the macro invoked by entries in the aux file.  Define a control
+% sequence for a cross-reference target (we prepend XR to the control sequence
+% name to avoid collisions).  The value is the page number.  If this is a float
 % type, we have more work to do.
 %
 \def\xrdef#1#2{%
@@ -9088,10 +9237,10 @@ might help (with 'rm \jobname.?? \jobname.??s')%
   \bgroup
     \expandafter\gdef\csname XR\safexrefname\endcsname{#2}%
   \egroup
-  % We put the \gdef inside a group to avoid the definitions building up on 
-  % TeX's save stack, which can cause it to run out of space for aux files with 
+  % We put the \gdef inside a group to avoid the definitions building up on
+  % TeX's save stack, which can cause it to run out of space for aux files with
   % thousands of lines.  \gdef doesn't use the save stack, but \csname does
-  % when it defines an unknown control sequence as \relax. 
+  % when it defines an unknown control sequence as \relax.
   %
   % Was that xref control sequence that we just defined for a float?
   \expandafter\iffloat\csname XR\safexrefname\endcsname
@@ -9450,7 +9599,7 @@ might help (with 'rm \jobname.?? \jobname.??s')%
   %
   \ifimagevmode
     \medskip  % space after a standalone image
-  \fi  
+  \fi
   \ifx\centersub\centerV \egroup \fi
 \endgroup}
 
@@ -10281,7 +10430,7 @@ directory should work if nowhere else does.}
         \uppercase{.}
       \endgroup
     \else
-      \errhelp = \EMsimple     
+      \errhelp = \EMsimple
       \errmessage{Unicode character U+#1 not supported, sorry}%
     \fi
   \else
@@ -10314,7 +10463,7 @@ directory should work if nowhere else does.}
     \countUTFz = "#1\relax
     \begingroup
       \parseXMLCharref
-    
+
       % Give \u8:... its definition.  The sequence of seven \expandafter's
       % expands after the \gdef three times, e.g.
       %
@@ -10326,7 +10475,7 @@ directory should work if nowhere else does.}
       \expandafter\expandafter
       \expandafter\expandafter
       \expandafter\gdef       \UTFviiiTmp{#2}%
-      % 
+      %
       \expandafter\ifx\csname uni:#1\endcsname \relax \else
        \message{Internal error, already defined: #1}%
       \fi
@@ -10365,7 +10514,7 @@ directory should work if nowhere else does.}
     \divide\countUTFz by 64
     \countUTFy = \countUTFz  % Save to be the future value of \countUTFz.
     \multiply\countUTFz by 64
-    
+
     % \countUTFz is now \countUTFx with the last 5 bits cleared.  Subtract
     % in order to get the last five bits.
     \advance\countUTFx by -\countUTFz
@@ -10400,7 +10549,7 @@ directory should work if nowhere else does.}
 % U+0080..U+00FF = https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)
 % U+0100..U+017F = https://en.wikipedia.org/wiki/Latin_Extended-A
 % U+0180..U+024F = https://en.wikipedia.org/wiki/Latin_Extended-B
-% 
+%
 % Many of our renditions are less than wonderful, and all the missing
 % characters are available somewhere.  Loading the necessary fonts
 % awaits user request.  We can't truly support Unicode without
@@ -10701,6 +10850,8 @@ directory should work if nowhere else does.}
   \DeclareUnicodeCharacter{0233}{\=y}%
   \DeclareUnicodeCharacter{0237}{\dotless{j}}%
   %
+  \DeclareUnicodeCharacter{02BC}{'}%
+  %
   \DeclareUnicodeCharacter{02DB}{\ogonek{ }}%
   %
   % Greek letters upper case
@@ -11335,6 +11486,18 @@ directory should work if nowhere else does.}
   \globaldefs = 0
 }}
 
+\def\bsixpaper{{\globaldefs = 1
+  \afourpaper
+  \internalpagesizes{140mm}{100mm}%
+                    {-6.35mm}{-12.7mm}%
+                    {\bindingoffset}{14pt}%
+                    {176mm}{125mm}%
+  \let\SETdispenvsize=\smallword
+  \lispnarrowing = 0.2in
+  \globaldefs = 0
+}}
+
+
 % @pagesizes TEXTHEIGHT[,TEXTWIDTH]
 % Perhaps we should allow setting the margins, \topskip, \parskip,
 % and/or leading, also. Or perhaps we should compute them somehow.
@@ -11348,12 +11511,12 @@ directory should work if nowhere else does.}
   \setleading{\textleading}%
   %
   \dimen0 = #1\relax
-  \advance\dimen0 by \voffset
-  \advance\dimen0 by 1in % reference point for DVI is 1 inch from top of page
+  \advance\dimen0 by 2.5in % default 1in margin above heading line
+                           % and 1.5in to include heading, footing and
+                           % bottom margin
   %
   \dimen2 = \hsize
-  \advance\dimen2 by \normaloffset
-  \advance\dimen2 by 1in % reference point is 1 inch from left edge of page
+  \advance\dimen2 by 2in % default to 1 inch margin on each side
   %
   \internalpagesizes{#1}{\hsize}%
                     {\voffset}{\normaloffset}%
@@ -11438,9 +11601,9 @@ directory should work if nowhere else does.}
 \def\texinfochars{%
   \let< = \activeless
   \let> = \activegtr
-  \let~ = \activetilde 
+  \let~ = \activetilde
   \let^ = \activehat
-  \markupsetuplqdefault \markupsetuprqdefault 
+  \markupsetuplqdefault \markupsetuprqdefault
   \let\b = \strong
   \let\i = \smartitalic
   % in principle, all other definitions in \tex have to be undone too.
index b3f6b298056d91efd44d66f5c9ad44d89794f9f3..d9b7f683a0887f281a43f1634548fd8a64ac975b 100755 (executable)
@@ -3,7 +3,7 @@
 
 # Update an FSF copyright year list to include the current year.
 
-# Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -98,7 +98,7 @@
 #   6. Blank lines, even if preceded by the prefix, do not appear
 #      within the FSF copyright statement.
 #   7. Each copyright year is 2 or 4 digits, and years are separated by
-#      commas or dashes.  Whitespace may appear after commas.
+#      commas, "-", or "--".  Whitespace may appear after commas.
 #
 # Environment variables:
 #
 # are valid code in both sh and perl.  When executed by sh, they re-execute
 # the script through the perl program found in $PATH.  The '-x' option
 # is essential as well; without it, perl would re-execute the script
-# through /bin/sh.  When executed by  perl, the next two lines are a no-op.
+# through /bin/sh.  When executed by perl, the next two lines are a no-op.
 eval 'exec perl -wSx -0777 -pi "$0" "$@"'
      if 0;
 
-my $VERSION = '2018-03-07.03:47'; # UTC
+my $VERSION = '2020-04-04.15:07'; # UTC
 # The definition above must lie within the first 8 lines in order
 # for the Emacs time-stamp write hook (at end) to update it.
 # If you change this file with Emacs, please let the write hook
@@ -192,7 +192,7 @@ while (/(^|\n)(.{0,$prefix_max})$copyright_re/g)
     $holder_re =~ s/\s/$ws_re/g;
     my $stmt_remainder_re =
       "(?:$ws_re$circle_c_re)?"
-      . "$ws_re(?:(?:\\d\\d)?\\d\\d(?:,$ws_re?|-))*"
+      . "$ws_re(?:(?:\\d\\d)?\\d\\d(?:,$ws_re?|--?))*"
       . "((?:\\d\\d)?\\d\\d)$ws_re$holder_re";
     if (/\G$stmt_remainder_re/)
       {
@@ -231,26 +231,28 @@ if (defined $stmt_re)
         # Make the use of intervals consistent.
         if (!$ENV{UPDATE_COPYRIGHT_USE_INTERVALS})
           {
-            $stmt =~ s/(\d{4})-(\d{4})/join(', ', $1..$2)/eg;
+            $stmt =~ s/(\d{4})--?(\d{4})/join(', ', $1..$2)/eg;
           }
         else
           {
+            my $ndash = $ARGV =~ /\.tex(i(nfo)?)?$/ ? "--" : "-";
+
             $stmt =~
               s/
                 (\d{4})
                 (?:
-                  (,\ |-)
+                  (,\ |--?)
                   ((??{
-                    if    ($2 eq '-') { '\d{4}'; }
+                    if   ($2 ne ', ') { '\d{4}'; }
                     elsif (!$3)       { $1 + 1;  }
                     else              { $3 + 1;  }
                   }))
                 )+
-              /$1-$3/gx;
+              /$1$ndash$3/gx;
 
             # When it's 2, emit a single range encompassing all year numbers.
             $ENV{UPDATE_COPYRIGHT_USE_INTERVALS} == 2
-              and $stmt =~ s/\b(\d{4})\b.*\b(\d{4})\b/$1-$2/;
+              and $stmt =~ s/\b(\d{4})\b.*\b(\d{4})\b/$1$ndash$2/;
           }
 
         # Format within margin.
index 6ac8aa91967141adf3201d1f2a06d0c7bc21f764..c9a168f2d0c80bf411878b544a7ef5bf06df6104 100755 (executable)
@@ -4,7 +4,7 @@
 # Detect instances of "if (p) free (p);".
 # Likewise "if (p != 0)", "if (0 != p)", or with NULL; and with braces.
 
-# Copyright (C) 2008-2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2020 Free Software Foundation, Inc.
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 # are valid code in both sh and perl.  When executed by sh, they re-execute
 # the script through the perl program found in $PATH.  The '-x' option
 # is essential as well; without it, perl would re-execute the script
-# through /bin/sh.  When executed by  perl, the next two lines are a no-op.
+# through /bin/sh.  When executed by perl, the next two lines are a no-op.
 eval 'exec perl -wSx "$0" "$@"'
      if 0;
 
-my $VERSION = '2018-03-07 03:47'; # UTC
+my $VERSION = '2020-04-04 15:07'; # UTC
 # The definition above must lie within the first 8 lines in order
 # for the Emacs time-stamp write hook (at end) to update it.
 # If you change this file with Emacs, please let the write hook
index af6b1c0f8ab70167240d49fc3fd5219bb13242f5..a8b8d9ab782846dc11301b8646e5e2a661bb7129 100755 (executable)
@@ -4,7 +4,7 @@
 # Print a version string.
 scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 2006-2019 Free Software Foundation, Inc.
+# Copyright (C) 2006-2020 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -25,7 +25,7 @@ scriptversion=2018-03-07.03; # UTC
 # list the version-controlled files in that directory.
 
 # If there's an argument, it must be a single, "."-relative directory name.
-# cvsu is part of the cvsutils package: http://www.red-bean.com/cvsutils/
+# cvsu is part of the cvsutils package: https://www.red-bean.com/cvsutils/
 
 postprocess=
 case $1 in
diff --git a/cfg.mk b/cfg.mk
index 62f84feab7b228b756508555ece41d7c68aa4035..8ad45e46ef2736d77c9b2c252cacd81a7368ac1b 100644 (file)
--- a/cfg.mk
+++ b/cfg.mk
@@ -1,5 +1,5 @@
 # Customize maint.mk                           -*- makefile -*-
-# Copyright (C) 2003-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2003-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -45,7 +45,7 @@ local-checks-to-skip = \
 export VERBOSE = yes
 
 # Hash of lines 42-208 for release 3.2
-old_NEWS_hash = 662c01eb5a757da59d219a79c06d6495
+old_NEWS_hash = 048e0facc662623870b9eea4e160c3ad
 
 include $(srcdir)/dist-check.mk
 
@@ -59,6 +59,10 @@ update-copyright-env = \
   UPDATE_COPYRIGHT_USE_INTERVALS=1 \
   UPDATE_COPYRIGHT_MAX_LINE_LENGTH=79
 
+# Override submodule check to allow workaround for broken gnulib upstream
+submodule-checks = no-submodule-changes
+gl_public_submodule_commit=
+
 #==> .j/.x-sc_GPL_version <==
 #build-aux/vc-list-files
 
index d6a25215226b257b22f466e9e5dfe9fa9c062a3f..214dbaa6ab9c53560ee733b5c659413070c84bc7 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for GNU parted 3.3.
+# Generated by GNU Autoconf 2.69 for GNU parted 3.4.
 #
 # Report bugs to <bug-parted@gnu.org>.
 #
@@ -590,8 +590,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='GNU parted'
 PACKAGE_TARNAME='parted'
-PACKAGE_VERSION='3.3'
-PACKAGE_STRING='GNU parted 3.3'
+PACKAGE_VERSION='3.4'
+PACKAGE_STRING='GNU parted 3.4'
 PACKAGE_BUGREPORT='bug-parted@gnu.org'
 PACKAGE_URL='http://www.gnu.org/software/parted/'
 
@@ -661,7 +661,6 @@ COMPILE_FOR_S390_TRUE
 INTLINCS
 OS_LIBS
 PARTED_LIBS
-SELINUX_LIBS
 DM_LIBS
 UUID_LIBS
 POSUB
@@ -705,11 +704,9 @@ NEXT_SYS_UIO_H
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H
 NEXT_SYS_IOCTL_H
 HAVE_SYS_IOCTL_H
-GL_GENERATE_STDALIGN_H_FALSE
-GL_GENERATE_STDALIGN_H_TRUE
-STDALIGN_H
 NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H
 NEXT_SIGNAL_H
+LIB_SETLOCALE
 HAVE_STRUCT_SCHED_PARAM
 HAVE_SCHED_H
 NEXT_AS_FIRST_DIRECTIVE_SCHED_H
@@ -871,8 +868,16 @@ REPLACE_PSELECT
 HAVE_PSELECT
 GNULIB_SELECT
 GNULIB_PSELECT
+LIB_SEMAPHORE
 INTL_MACOSX_LIBS
 INET_PTON_LIB
+NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H
+NEXT_SYS_TIME_H
+REPLACE_STRUCT_TIMEVAL
+REPLACE_GETTIMEOFDAY
+HAVE_SYS_TIME_H
+HAVE_STRUCT_TIMEVAL
+HAVE_GETTIMEOFDAY
 NEXT_AS_FIRST_DIRECTIVE_CTYPE_H
 NEXT_CTYPE_H
 HAVE_ISBLANK
@@ -917,6 +922,8 @@ HAVE_WCTYPE_H
 NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H
 NEXT_WCTYPE_H
 HAVE_ISWCNTRL
+REPLACE_ISWXDIGIT
+REPLACE_ISWDIGIT
 REPLACE_ISWBLANK
 HAVE_WCTRANS_T
 HAVE_WCTYPE_T
@@ -925,6 +932,8 @@ GNULIB_TOWCTRANS
 GNULIB_WCTRANS
 GNULIB_ISWCTYPE
 GNULIB_WCTYPE
+GNULIB_ISWXDIGIT
+GNULIB_ISWDIGIT
 GNULIB_ISWBLANK
 HAVE_CRTDEFS_H
 HAVE_WINT_T
@@ -940,10 +949,39 @@ SYS_TIME_H_DEFINES_STRUCT_TIMESPEC
 TIME_H_DEFINES_STRUCT_TIMESPEC
 NEXT_AS_FIRST_DIRECTIVE_TIME_H
 NEXT_TIME_H
+REPLACE_LOCALTIME
+REPLACE_GMTIME
+GNULIB_GETTIMEOFDAY
+REPLACE_TZSET
+REPLACE_TIMEGM
+REPLACE_STRFTIME
+REPLACE_NANOSLEEP
+REPLACE_MKTIME
+REPLACE_LOCALTIME_R
+REPLACE_CTIME
+HAVE_TIMEZONE_T
+HAVE_TIMEGM
+HAVE_STRPTIME
+HAVE_NANOSLEEP
+HAVE_DECL_LOCALTIME_R
+GNULIB_TZSET
+GNULIB_TIME_RZ
+GNULIB_TIME_R
+GNULIB_TIMEGM
+GNULIB_STRPTIME
+GNULIB_STRFTIME
+GNULIB_NANOSLEEP
+GNULIB_LOCALTIME
+GNULIB_MKTIME
+GNULIB_CTIME
+HAVE_SYS_RANDOM_H
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H
+NEXT_SYS_RANDOM_H
 NEXT_AS_FIRST_DIRECTIVE_STRING_H
 NEXT_STRING_H
 UNDEFINE_STRTOK_R
 REPLACE_STRSIGNAL
+REPLACE_STRERRORNAME_NP
 REPLACE_STRERROR_R
 REPLACE_STRERROR
 REPLACE_STRTOK_R
@@ -959,6 +997,9 @@ REPLACE_MEMMEM
 REPLACE_MEMCHR
 HAVE_STRVERSCMP
 HAVE_DECL_STRSIGNAL
+HAVE_SIGDESCR_NP
+HAVE_SIGABBREV_NP
+HAVE_STRERRORNAME_NP
 HAVE_DECL_STRERROR_R
 HAVE_DECL_STRTOK_R
 HAVE_STRCASESTR
@@ -974,13 +1015,15 @@ HAVE_RAWMEMCHR
 HAVE_DECL_MEMRCHR
 HAVE_MEMPCPY
 HAVE_DECL_MEMMEM
-HAVE_MEMCHR
 HAVE_FFSLL
 HAVE_FFSL
 HAVE_EXPLICIT_BZERO
 HAVE_MBSLEN
 GNULIB_STRVERSCMP
 GNULIB_STRSIGNAL
+GNULIB_SIGDESCR_NP
+GNULIB_SIGABBREV_NP
+GNULIB_STRERRORNAME_NP
 GNULIB_STRERROR_R
 GNULIB_STRERROR
 GNULIB_MBSTOK_R
@@ -1069,6 +1112,7 @@ HAVE_DECL_GETDELIM
 HAVE_DECL_FTELLO
 HAVE_DECL_FSEEKO
 HAVE_DECL_FPURGE
+HAVE_DECL_FCLOSEALL
 GNULIB_VSPRINTF_POSIX
 GNULIB_VSNPRINTF
 GNULIB_VPRINTF_POSIX
@@ -1131,9 +1175,16 @@ GL_GENERATE_STDARG_H_TRUE
 STDARG_H
 NEXT_AS_FIRST_DIRECTIVE_STDARG_H
 NEXT_STDARG_H
+GL_GENERATE_STDALIGN_H_FALSE
+GL_GENERATE_STDALIGN_H_TRUE
+STDALIGN_H
 GLIBC21
-LOCALE_FR_UTF8
+LIB_NL_LANGINFO
+HAVE_VISIBILITY
+CFLAG_VISIBILITY
+LIB_MBRTOWC
 LOCALE_ZH_CN
+LOCALE_FR_UTF8
 LOCALE_JA
 SED
 WINDOWS_STAT_INODES
@@ -1144,6 +1195,7 @@ LTLIBMULTITHREAD
 LIBMULTITHREAD
 LTLIBTHREAD
 LIBTHREAD
+LIBSTDTHREAD
 NEXT_AS_FIRST_DIRECTIVE_LOCALE_H
 NEXT_LOCALE_H
 HAVE_XLOCALE_H
@@ -1166,6 +1218,7 @@ HAVE_DUPLOCALE
 HAVE_NEWLOCALE
 GNULIB_LOCALENAME
 GNULIB_DUPLOCALE
+GNULIB_SETLOCALE_NULL
 GNULIB_SETLOCALE
 GNULIB_LOCALECONV
 LOCALCHARSET_TESTS_ENVIRONMENT
@@ -1186,7 +1239,6 @@ NEXT_INTTYPES_H
 UINT64_MAX_EQ_ULONG_MAX
 UINT32_MAX_LT_UINTMAX_MAX
 PRIPTR_PREFIX
-PRI_MACROS_BROKEN
 INT64_MAX_EQ_LONG_MAX
 INT32_MAX_LT_INTMAX_MAX
 REPLACE_STRTOUMAX
@@ -1226,49 +1278,23 @@ NEXT_STDINT_H
 HAVE_SYS_TYPES_H
 HAVE_INTTYPES_H
 HAVE_WCHAR_H
-HAVE_UNSIGNED_LONG_LONG_INT
-HAVE_LONG_LONG_INT
 GNULIB_OVERRIDES_WINT_T
 GL_GENERATE_LIMITS_H_FALSE
 GL_GENERATE_LIMITS_H_TRUE
 LIMITS_H
 NEXT_AS_FIRST_DIRECTIVE_LIMITS_H
 NEXT_LIMITS_H
-REPLACE_LOCALTIME
-REPLACE_GMTIME
-REPLACE_TZSET
-REPLACE_TIMEGM
-REPLACE_STRFTIME
-REPLACE_NANOSLEEP
-REPLACE_MKTIME
-REPLACE_LOCALTIME_R
-REPLACE_CTIME
-HAVE_TIMEZONE_T
-HAVE_TZSET
-HAVE_TIMEGM
-HAVE_STRPTIME
-HAVE_NANOSLEEP
-HAVE_DECL_LOCALTIME_R
-GNULIB_TZSET
-GNULIB_TIME_RZ
-GNULIB_TIME_R
-GNULIB_TIMEGM
-GNULIB_STRPTIME
-GNULIB_STRFTIME
-GNULIB_NANOSLEEP
-GNULIB_LOCALTIME
-GNULIB_MKTIME
-GNULIB_CTIME
-NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H
-NEXT_SYS_TIME_H
-REPLACE_STRUCT_TIMEVAL
-REPLACE_GETTIMEOFDAY
-HAVE_SYS_TIME_H
-HAVE_STRUCT_TIMEVAL
-HAVE_GETTIMEOFDAY
-GNULIB_GETTIMEOFDAY
+LIB_HARD_LOCALE
+LIB_SETLOCALE_NULL
+LIB_SCHED_YIELD
+LIBPMULTITHREAD
+LIBPTHREAD
 LTLIBINTL
 LIBINTL
+LIB_GETRANDOM
+REPLACE_GETRANDOM
+HAVE_GETRANDOM
+GNULIB_GETRANDOM
 GNULIB_GL_UNISTD_H_GETOPT
 GETOPT_CDEFS_H
 GETOPT_H
@@ -1289,6 +1315,7 @@ REPLACE_LSTAT
 REPLACE_FUTIMENS
 REPLACE_FSTATAT
 REPLACE_FSTAT
+REPLACE_FCHMODAT
 HAVE_UTIMENSAT
 HAVE_MKNODAT
 HAVE_MKNOD
@@ -1297,6 +1324,7 @@ HAVE_MKFIFO
 HAVE_MKDIRAT
 HAVE_LSTAT
 HAVE_LCHMOD
+HAVE_GETUMASK
 HAVE_FUTIMENS
 HAVE_FSTATAT
 HAVE_FCHMODAT
@@ -1310,6 +1338,7 @@ GNULIB_MKFIFO
 GNULIB_MKDIRAT
 GNULIB_LSTAT
 GNULIB_LCHMOD
+GNULIB_GETUMASK
 GNULIB_FUTIMENS
 GNULIB_FSTATAT
 GNULIB_FSTAT
@@ -1319,12 +1348,14 @@ NEXT_FCNTL_H
 REPLACE_OPENAT
 REPLACE_OPEN
 REPLACE_FCNTL
+REPLACE_CREAT
 HAVE_OPENAT
 HAVE_FCNTL
 GNULIB_OPENAT
 GNULIB_OPEN
 GNULIB_NONBLOCKING
 GNULIB_FCNTL
+GNULIB_CREAT
 EOVERFLOW_VALUE
 EOVERFLOW_HIDDEN
 ENOLINK_VALUE
@@ -1351,6 +1382,7 @@ GNULIB_IOCTL
 HAVE_MSVC_INVALID_PARAMETER_HANDLER
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS
 UNISTD_H_HAVE_WINSOCK2_H
+UNISTD_H_HAVE_SYS_RANDOM_H
 REPLACE_WRITE
 REPLACE_USLEEP
 REPLACE_UNLINKAT
@@ -1385,6 +1417,7 @@ REPLACE_DUP2
 REPLACE_DUP
 REPLACE_CLOSE
 REPLACE_CHOWN
+REPLACE_ACCESS
 HAVE_SYS_PARAM_H
 HAVE_OS_H
 HAVE_DECL_TTYNAME_R
@@ -1397,6 +1430,7 @@ HAVE_DECL_GETLOGIN
 HAVE_DECL_GETDOMAINNAME
 HAVE_DECL_FDATASYNC
 HAVE_DECL_FCHDIR
+HAVE_DECL_EXECVPE
 HAVE_DECL_ENVIRON
 HAVE_USLEEP
 HAVE_UNLINKAT
@@ -1419,6 +1453,7 @@ HAVE_GETPAGESIZE
 HAVE_GETLOGIN
 HAVE_GETHOSTNAME
 HAVE_GETGROUPS
+HAVE_GETENTROPY
 HAVE_GETDTABLESIZE
 HAVE_FTRUNCATE
 HAVE_FSYNC
@@ -1428,7 +1463,6 @@ HAVE_FCHDIR
 HAVE_FACCESSAT
 HAVE_EUIDACCESS
 HAVE_DUP3
-HAVE_DUP2
 HAVE_COPY_FILE_RANGE
 HAVE_CHOWN
 GNULIB_WRITE
@@ -1460,10 +1494,12 @@ GNULIB_GROUP_MEMBER
 GNULIB_GETUSERSHELL
 GNULIB_GETPASS
 GNULIB_GETPAGESIZE
+GNULIB_GETOPT_POSIX
 GNULIB_GETLOGIN_R
 GNULIB_GETLOGIN
 GNULIB_GETHOSTNAME
 GNULIB_GETGROUPS
+GNULIB_GETENTROPY
 GNULIB_GETDTABLESIZE
 GNULIB_GETDOMAINNAME
 GNULIB_GETCWD
@@ -1482,6 +1518,8 @@ GNULIB_COPY_FILE_RANGE
 GNULIB_CLOSE
 GNULIB_CHOWN
 GNULIB_CHDIR
+GNULIB_ACCESS
+LIB_CLOCK_GETTIME
 REPLACE_WCTOMB
 REPLACE_UNSETENV
 REPLACE_STRTOLD
@@ -1496,12 +1534,14 @@ REPLACE_QSORT_R
 REPLACE_PUTENV
 REPLACE_PTSNAME_R
 REPLACE_PTSNAME
+REPLACE_POSIX_MEMALIGN
 REPLACE_MKSTEMP
 REPLACE_MBTOWC
 REPLACE_MALLOC
 REPLACE_INITSTATE
 REPLACE_CANONICALIZE_FILE_NAME
 REPLACE_CALLOC
+REPLACE_ALIGNED_ALLOC
 HAVE_DECL_UNSETENV
 HAVE_UNLOCKPT
 HAVE_SYS_LOADAVG_H
@@ -1525,6 +1565,7 @@ HAVE_QSORT_R
 HAVE_PTSNAME_R
 HAVE_PTSNAME
 HAVE_POSIX_OPENPT
+HAVE_POSIX_MEMALIGN
 HAVE_MKSTEMPS
 HAVE_MKSTEMP
 HAVE_MKOSTEMPS
@@ -1536,8 +1577,12 @@ HAVE_INITSTATE
 HAVE_GRANTPT
 HAVE_GETSUBOPT
 HAVE_DECL_GETLOADAVG
+HAVE_DECL_GCVT
+HAVE_DECL_FCVT
+HAVE_DECL_ECVT
 HAVE_CANONICALIZE_FILE_NAME
 HAVE_ATOLL
+HAVE_ALIGNED_ALLOC
 HAVE__EXIT
 GNULIB_WCTOMB
 GNULIB_UNSETENV
@@ -1560,6 +1605,7 @@ GNULIB_PUTENV
 GNULIB_PTSNAME_R
 GNULIB_PTSNAME
 GNULIB_POSIX_OPENPT
+GNULIB_POSIX_MEMALIGN
 GNULIB_MKSTEMPS
 GNULIB_MKSTEMP
 GNULIB_MKOSTEMPS
@@ -1573,8 +1619,10 @@ GNULIB_GETLOADAVG
 GNULIB_CANONICALIZE_FILE_NAME
 GNULIB_CALLOC_POSIX
 GNULIB_ATOLL
+GNULIB_ALIGNED_ALLOC
 GNULIB__EXIT
 LOCALE_FR
+REPLACE_WCSTOK
 REPLACE_WCSFTIME
 REPLACE_WCSWIDTH
 REPLACE_WCWIDTH
@@ -1590,6 +1638,7 @@ REPLACE_WCTOB
 REPLACE_BTOWC
 REPLACE_MBSTATE_T
 HAVE_DECL_WCWIDTH
+HAVE_DECL_WCSDUP
 HAVE_DECL_WCTOB
 HAVE_WCSFTIME
 HAVE_WCSWIDTH
@@ -1616,6 +1665,7 @@ HAVE_WCSCPY
 HAVE_WCSNLEN
 HAVE_WCSLEN
 HAVE_WMEMSET
+HAVE_WMEMPCPY
 HAVE_WMEMMOVE
 HAVE_WMEMCPY
 HAVE_WMEMCMP
@@ -1654,6 +1704,7 @@ GNULIB_WCSCPY
 GNULIB_WCSNLEN
 GNULIB_WCSLEN
 GNULIB_WMEMSET
+GNULIB_WMEMPCPY
 GNULIB_WMEMMOVE
 GNULIB_WMEMCPY
 GNULIB_WMEMCMP
@@ -1788,7 +1839,6 @@ enable_silent_rules
 with_readline
 enable_mtrace
 enable_device_mapper
-enable_selinux
 enable_discover_only
 enable_debug
 enable_read_only
@@ -1797,6 +1847,7 @@ enable_hfs_extract_fs
 enable_dependency_tracking
 enable_largefile
 enable_threads
+enable_cross_guesses
 enable_assert
 with_included_regex
 with_packager
@@ -2371,7 +2422,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 parted 3.3 to adapt to many kinds of systems.
+\`configure' configures GNU parted 3.4 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -2441,7 +2492,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of GNU parted 3.3:";;
+     short | recursive ) echo "Configuration of GNU parted 3.4:";;
    esac
   cat <<\_ACEOF
 
@@ -2453,7 +2504,6 @@ Optional Features:
   --disable-silent-rules  verbose build output (undo: "make V=0")
   --enable-mtrace         enable malloc() debugging
   --enable-device-mapper  enable device mapper support default=yes
-  --enable-selinux        enable SELinux support default=no
   --enable-discover-only  support only reading/probing default=no
   --enable-debug          compile in assertions default=yes
   --enable-read-only      disable writing (for debugging) default=no
@@ -2465,9 +2515,11 @@ Optional Features:
   --disable-dependency-tracking
                           speeds up one-time build
   --disable-largefile     omit support for large files
-  --enable-threads={posix|windows}
+  --enable-threads={isoc|posix|isoc+posix|windows}
                           specify multithreading API
   --disable-threads       build without multithread safety
+  --enable-cross-guesses={conservative|risky}
+                          specify policy for cross-compilation guesses
   --disable-assert        turn off assertions
   --enable-gcc-warnings   turn on lots of GCC warnings (for developers)
   --enable-shared[=PKGS]  build shared libraries [default=yes]
@@ -2498,7 +2550,7 @@ Optional Packages:
   --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
   --with-sysroot[=DIR]    Search for dependent libraries within DIR (or the
                           compiler's sysroot if not specified).
-  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
+  --with-gnu-ld           assume the C compiler uses GNU ld default=no
   --with-libiconv-prefix[=DIR]  search for libiconv in DIR/include and DIR/lib
   --without-libiconv-prefix     don't search for libiconv in includedir and libdir
   --with-libintl-prefix[=DIR]  search for libintl in DIR/include and DIR/lib
@@ -2592,7 +2644,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-GNU parted configure 3.3
+GNU parted configure 3.4
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -3201,6 +3253,10 @@ rm -f conftest.val
 # accordingly.
 ac_fn_c_check_decl ()
 {
+  ac_save_ac_compile="$ac_compile"
+  if test -n "$ac_compile_for_check_decl"; then
+    ac_compile="$ac_compile_for_check_decl"
+  fi
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
   as_decl_name=`echo $2|sed 's/ *(.*//'`
   as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
@@ -3238,6 +3294,7 @@ eval ac_res=\$$3
               { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
 $as_echo "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+  ac_compile="$ac_save_ac_compile"
 
 } # ac_fn_c_check_decl
 
@@ -3301,7 +3358,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 parted $as_me 3.3, which was
+It was created by GNU parted $as_me 3.4, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -3583,31 +3640,31 @@ fi
 
 as_fn_append ac_func_list " btowc"
 as_fn_append ac_func_list " canonicalize_file_name"
-as_fn_append ac_func_list " getcwd"
 as_fn_append ac_func_list " readlink"
 as_fn_append ac_func_list " realpath"
 as_fn_append ac_header_list " sys/param.h"
 as_fn_append ac_func_list " _set_invalid_parameter_handler"
 as_fn_append ac_header_list " sys/socket.h"
+as_fn_append ac_func_list " fcntl"
 as_fn_append ac_header_list " unistd.h"
 as_fn_append ac_func_list " symlink"
 as_fn_append ac_header_list " stdio_ext.h"
 as_fn_append ac_header_list " sys/stat.h"
 as_fn_append ac_func_list " fsync"
+as_fn_append ac_func_list " getdtablesize"
 gl_getopt_required=GNU
 as_fn_append ac_header_list " getopt.h"
 as_fn_append ac_header_list " sys/cdefs.h"
 as_fn_append ac_func_list " getprogname"
 as_fn_append ac_func_list " getexecname"
-as_fn_append ac_header_list " sys/time.h"
-as_fn_append ac_func_list " gettimeofday"
+as_fn_append ac_func_list " getrandom"
+as_fn_append ac_header_list " threads.h"
 as_fn_append ac_header_list " limits.h"
 as_fn_append ac_header_list " wchar.h"
 as_fn_append ac_header_list " stdint.h"
 as_fn_append ac_header_list " inttypes.h"
 as_fn_append ac_header_list " langinfo.h"
 as_fn_append ac_header_list " xlocale.h"
-as_fn_append ac_header_list " threads.h"
 as_fn_append ac_func_list " lstat"
 as_fn_append ac_func_list " mbsinit"
 as_fn_append ac_func_list " mbrtowc"
@@ -3617,10 +3674,11 @@ as_fn_append ac_header_list " malloc.h"
 as_fn_append ac_func_list " isblank"
 as_fn_append ac_func_list " iswctype"
 as_fn_append ac_func_list " sleep"
-as_fn_append ac_func_list " strdup"
+as_fn_append ac_header_list " sys/time.h"
 as_fn_append ac_func_list " strerror_r"
 as_fn_append ac_func_list " __xpg_strerror_r"
 as_fn_append ac_func_list " strndup"
+as_fn_append ac_header_list " sys/random.h"
 as_fn_append ac_func_list " usleep"
 as_fn_append ac_header_list " features.h"
 as_fn_append ac_header_list " crtdefs.h"
@@ -3628,14 +3686,13 @@ as_fn_append ac_func_list " wcrtomb"
 as_fn_append ac_func_list " iswcntrl"
 as_fn_append ac_header_list " wctype.h"
 as_fn_append ac_header_list " arpa/inet.h"
-as_fn_append ac_func_list " fcntl"
 as_fn_append ac_func_list " ftruncate"
-as_fn_append ac_func_list " getdtablesize"
+as_fn_append ac_func_list " gettimeofday"
+as_fn_append ac_func_list " duplocale"
 as_fn_append ac_header_list " netdb.h"
 as_fn_append ac_header_list " netinet/in.h"
 as_fn_append ac_func_list " newlocale"
 as_fn_append ac_func_list " uselocale"
-as_fn_append ac_func_list " duplocale"
 as_fn_append ac_func_list " freelocale"
 as_fn_append ac_header_list " semaphore.h"
 as_fn_append ac_header_list " sys/select.h"
@@ -4277,7 +4334,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='parted'
- VERSION='3.3'
+ VERSION='3.4'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -4526,15 +4583,6 @@ $as_echo "#define ENABLE_DEVICE_MAPPER 1" >>confdefs.h
 
 fi
 
-# Check whether --enable-selinux was given.
-if test "${enable_selinux+set}" = set; then :
-  enableval=$enable_selinux;
-else
-  enable_selinux=no
-
-fi
-
-
 # Check whether --enable-discover-only was given.
 if test "${enable_discover_only+set}" = set; then :
   enableval=$enable_discover_only;
@@ -5981,6 +6029,80 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler is clang" >&5
+$as_echo_n "checking whether the compiler is clang... " >&6; }
+if ${gl_cv_compiler_clang+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+                 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+           #ifdef __clang__
+           barfbarf
+           #endif
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_compiler_clang=no
+else
+  gl_cv_compiler_clang=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_compiler_clang" >&5
+$as_echo "$gl_cv_compiler_clang" >&6; }
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for compiler option needed when checking for declarations" >&5
+$as_echo_n "checking for compiler option needed when checking for declarations... " >&6; }
+if ${gl_cv_compiler_check_decl_option+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test $gl_cv_compiler_clang = yes; then
+                     save_ac_compile="$ac_compile"
+       ac_compile="$ac_compile -Werror=implicit-function-declaration"
+                     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_compiler_check_decl_option='-Werror=implicit-function-declaration'
+else
+  gl_cv_compiler_check_decl_option=none
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_compile="$save_ac_compile"
+     else
+       gl_cv_compiler_check_decl_option=none
+     fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_compiler_check_decl_option" >&5
+$as_echo "$gl_cv_compiler_check_decl_option" >&6; }
+  if test "x$gl_cv_compiler_check_decl_option" != xnone; then
+    ac_compile_for_check_decl="$ac_compile $gl_cv_compiler_check_decl_option"
+  else
+    ac_compile_for_check_decl="$ac_compile"
+  fi
+
+
 depcc="$CC"   am_compiler_list=
 
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
@@ -6748,9 +6870,6 @@ $as_echo "$ac_cv_should_define__xopen_source" >&6; }
 
 
 
-
-
-
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Minix Amsterdam compiler" >&5
 $as_echo_n "checking for Minix Amsterdam compiler... " >&6; }
 if ${gl_cv_c_amsterdam_compiler+:} false; then :
@@ -7012,7 +7131,7 @@ else
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                        && LARGE_OFF_T % 2147483647 == 1)
                       ? 1 : -1];
@@ -7058,7 +7177,7 @@ else
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                        && LARGE_OFF_T % 2147483647 == 1)
                       ? 1 : -1];
@@ -7082,7 +7201,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                        && LARGE_OFF_T % 2147483647 == 1)
                       ? 1 : -1];
@@ -7127,7 +7246,7 @@ else
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                        && LARGE_OFF_T % 2147483647 == 1)
                       ? 1 : -1];
@@ -7151,7 +7270,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                        && LARGE_OFF_T % 2147483647 == 1)
                       ? 1 : -1];
@@ -7183,10 +7302,6 @@ _ACEOF
 esac
 rm -rf conftest*
   fi
-
-
-$as_echo "#define _DARWIN_USE_64_BIT_INODE 1" >>confdefs.h
-
 fi
 
 
@@ -7224,8 +7339,14 @@ else
 
 fi
 
-  if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then
-    # For using <pthread.h>:
+  if test "$gl_use_threads" = yes \
+     || test "$gl_use_threads" = isoc \
+     || test "$gl_use_threads" = posix \
+     || test "$gl_use_threads" = isoc+posix; then
+    # For using <threads.h> or <pthread.h>:
+
+
+  if test -z "$gl_anythreadlib_early_done"; then
     case "$host_os" in
       osf*)
         # On OSF/1, the compiler needs the flag -D_REENTRANT so that it
@@ -7244,6 +7365,9 @@ fi
       aix* | freebsd*) CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" ;;
       solaris*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" ;;
     esac
+    gl_anythreadlib_early_done=done
+  fi
+
   fi
 
 
@@ -7266,6 +7390,8 @@ fi
   # Code from module arpa_inet-tests:
   # Code from module assert:
   # Code from module assure:
+  # Code from module attribute:
+  # Code from module basename-lgpl:
   # Code from module binary-io:
   # Code from module binary-io-tests:
   # Code from module bind:
@@ -7284,6 +7410,7 @@ fi
   # Code from module calloc-posix:
   # Code from module canonicalize-lgpl:
   # Code from module canonicalize-lgpl-tests:
+  # Code from module clock-time:
   # Code from module cloexec:
   # Code from module cloexec-tests:
   # Code from module close:
@@ -7300,7 +7427,6 @@ fi
   # Code from module dirname-lgpl:
   # Code from module dirname-tests:
   # Code from module do-release-commit-and-tag:
-  # Code from module dosname:
   # Code from module double-slash-root:
   # Code from module dup2:
   # Code from module dup2-tests:
@@ -7346,6 +7472,8 @@ fi
   # Code from module getpagesize:
   # Code from module getprogname:
   # Code from module getprogname-tests:
+  # Code from module getrandom:
+  # Code from module getrandom-tests:
   # Code from module gettext-h:
   # Code from module gettimeofday:
   # Code from module gettimeofday-tests:
@@ -7355,7 +7483,8 @@ fi
   # Code from module gnumakefile:
   # Code from module gnupload:
   # Code from module hard-locale:
-  # Code from module havelib:
+  # Code from module hard-locale-tests:
+  # Code from module idx:
   # Code from module ignore-value:
   # Code from module ignore-value-tests:
   # Code from module include_next:
@@ -7388,7 +7517,6 @@ fi
   # Code from module localeconv-tests:
   # Code from module localename:
   # Code from module localename-tests:
-  # Code from module localtime-buffer:
   # Code from module lock:
   # Code from module lock-tests:
   # Code from module long-options:
@@ -7436,10 +7564,28 @@ fi
   # Code from module progname:
   # Code from module pthread-h:
 
-$as_echo "#define _REENTRANT 1" >>confdefs.h
 
-
-$as_echo "#define _THREAD_SAFE 1" >>confdefs.h
+  if test -z "$gl_anythreadlib_early_done"; then
+    case "$host_os" in
+      osf*)
+        # On OSF/1, the compiler needs the flag -D_REENTRANT so that it
+        # groks <pthread.h>. cc also understands the flag -pthread, but
+        # we don't use it because 1. gcc-2.95 doesn't understand -pthread,
+        # 2. putting a flag into CPPFLAGS that has an effect on the linker
+        # causes the AC_LINK_IFELSE test below to succeed unexpectedly,
+        # leading to wrong values of LIBTHREAD and LTLIBTHREAD.
+        CPPFLAGS="$CPPFLAGS -D_REENTRANT"
+        ;;
+    esac
+    # Some systems optimize for single-threaded programs by default, and
+    # need special flags to disable these optimizations. For example, the
+    # definition of 'errno' in <errno.h>.
+    case "$host_os" in
+      aix* | freebsd*) CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" ;;
+      solaris*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" ;;
+    esac
+    gl_anythreadlib_early_done=done
+  fi
 
   # Code from module pthread-h-tests:
   # Code from module pthread-thread:
@@ -7473,6 +7619,8 @@ $as_echo "#define _THREAD_SAFE 1" >>confdefs.h
   # Code from module setenv:
   # Code from module setenv-tests:
   # Code from module setlocale:
+  # Code from module setlocale-null:
+  # Code from module setlocale-null-tests:
   # Code from module setlocale-tests:
   # Code from module setsockopt:
   # Code from module setsockopt-tests:
@@ -7505,6 +7653,7 @@ $as_echo "#define _THREAD_SAFE 1" >>confdefs.h
 
 
 
+  # Code from module stdarg-tests:
   # Code from module stdbool:
   # Code from module stdbool-tests:
   # Code from module stddef:
@@ -7535,6 +7684,8 @@ $as_echo "#define _THREAD_SAFE 1" >>confdefs.h
   # Code from module symlink-tests:
   # Code from module sys_ioctl:
   # Code from module sys_ioctl-tests:
+  # Code from module sys_random:
+  # Code from module sys_random-tests:
   # Code from module sys_select:
   # Code from module sys_select-tests:
   # Code from module sys_socket:
@@ -7551,6 +7702,7 @@ $as_echo "#define _THREAD_SAFE 1" >>confdefs.h
   # Code from module test-framework-sh:
   # Code from module test-framework-sh-tests:
   # Code from module thread:
+  # Code from module thread-optim:
   # Code from module thread-tests:
   # Code from module threadlib:
 
@@ -7598,6 +7750,7 @@ $as_echo "#define _THREAD_SAFE 1" >>confdefs.h
   # Code from module xalloc-oversized:
   # Code from module xstrndup:
   # Code from module xstrtol:
+  # Code from module xstrtol-error:
   # Code from module xstrtol-tests:
   # Code from module xstrtoll:
   # Code from module xstrtoll-tests:
@@ -7878,7 +8031,7 @@ else
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                        && LARGE_OFF_T % 2147483647 == 1)
                       ? 1 : -1];
@@ -7924,7 +8077,7 @@ else
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                        && LARGE_OFF_T % 2147483647 == 1)
                       ? 1 : -1];
@@ -7948,7 +8101,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                        && LARGE_OFF_T % 2147483647 == 1)
                       ? 1 : -1];
@@ -7993,7 +8146,7 @@ else
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                        && LARGE_OFF_T % 2147483647 == 1)
                       ? 1 : -1];
@@ -8017,7 +8170,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
                        && LARGE_OFF_T % 2147483647 == 1)
                       ? 1 : -1];
@@ -8049,11 +8202,10 @@ _ACEOF
 esac
 rm -rf conftest*
   fi
+fi
 
 
-$as_echo "#define _DARWIN_USE_64_BIT_INODE 1" >>confdefs.h
 
-fi
 
 
 
@@ -8061,10 +8213,29 @@ fi
 
 
 
+                        # Check whether --enable-cross-guesses was given.
+if test "${enable_cross_guesses+set}" = set; then :
+  enableval=$enable_cross_guesses; if test "x$enableval" != xconservative && test "x$enableval" != xrisky; then
+       { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: invalid argument supplied to --enable-cross-guesses" >&5
+$as_echo "$as_me: WARNING: invalid argument supplied to --enable-cross-guesses" >&2;}
+       enableval=conservative
+     fi
+     gl_cross_guesses="$enableval"
+else
+  gl_cross_guesses=conservative
+fi
 
+  if test $gl_cross_guesses = risky; then
+    gl_cross_guess_normal="guessing yes"
+    gl_cross_guess_inverted="guessing no"
+  else
+    gl_cross_guess_normal="guessing no"
+    gl_cross_guess_inverted="guessing yes"
+  fi
           LIBC_FATAL_STDERR_=1
   export LIBC_FATAL_STDERR_
 
+
 ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
 if test "x$ac_cv_type_size_t" = xyes; then :
 
@@ -8178,47 +8349,6 @@ ALLOCA=\${LIBOBJDIR}alloca.$ac_objext
 $as_echo "#define C_ALLOCA 1" >>confdefs.h
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`alloca.c' needs Cray hooks" >&5
-$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; }
-if ${ac_cv_os_cray+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if defined CRAY && ! defined CRAY2
-webecray
-#else
-wenotbecray
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "webecray" >/dev/null 2>&1; then :
-  ac_cv_os_cray=yes
-else
-  ac_cv_os_cray=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_os_cray" >&5
-$as_echo "$ac_cv_os_cray" >&6; }
-if test $ac_cv_os_cray = yes; then
-  for ac_func in _getb67 GETB67 getb67; do
-    as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-
-cat >>confdefs.h <<_ACEOF
-#define CRAY_STACKSEG_END $ac_func
-_ACEOF
-
-    break
-fi
-
-  done
-fi
-
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5
 $as_echo_n "checking stack direction for C alloca... " >&6; }
 if ${ac_cv_c_stack_direction+:} false; then :
@@ -8282,6 +8412,7 @@ fi
   GNULIB_WMEMCMP=0;
   GNULIB_WMEMCPY=0;
   GNULIB_WMEMMOVE=0;
+  GNULIB_WMEMPCPY=0;
   GNULIB_WMEMSET=0;
   GNULIB_WCSLEN=0;
   GNULIB_WCSNLEN=0;
@@ -8320,6 +8451,7 @@ fi
   HAVE_WMEMCMP=1;
   HAVE_WMEMCPY=1;
   HAVE_WMEMMOVE=1;
+  HAVE_WMEMPCPY=1;
   HAVE_WMEMSET=1;
   HAVE_WCSLEN=1;
   HAVE_WCSNLEN=1;
@@ -8346,6 +8478,7 @@ fi
   HAVE_WCSWIDTH=1;
   HAVE_WCSFTIME=1;
   HAVE_DECL_WCTOB=1;
+  HAVE_DECL_WCSDUP=1;
   HAVE_DECL_WCWIDTH=1;
   REPLACE_MBSTATE_T=0;
   REPLACE_BTOWC=0;
@@ -8361,18 +8494,22 @@ fi
   REPLACE_WCWIDTH=0;
   REPLACE_WCSWIDTH=0;
   REPLACE_WCSFTIME=0;
+  REPLACE_WCSTOK=0;
+
 
 
-            { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether <wchar.h> uses 'inline' correctly" >&5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether <wchar.h> uses 'inline' correctly" >&5
 $as_echo_n "checking whether <wchar.h> uses 'inline' correctly... " >&6; }
 if ${gl_cv_header_wchar_h_correct_inline+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   gl_cv_header_wchar_h_correct_inline=yes
-     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+     case "$host_os" in
+       *-gnu* | gnu*)
+         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
-       #define wcstod renamed_wcstod
+           #define wcstod renamed_wcstod
 /* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
    <wchar.h>.
    BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
@@ -8385,18 +8522,18 @@ extern int zero (void);
 int main () { return zero(); }
 
 _ACEOF
-                              save_ac_compile="$ac_compile"
-     ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest1/`
-     if echo '#include "conftest.c"' >conftest1.c &&
-        { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+                                                      save_ac_compile="$ac_compile"
+         ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest1/`
+         if echo '#include "conftest.c"' >conftest1.c \
+            && { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+           cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
-         #define wcstod renamed_wcstod
+             #define wcstod renamed_wcstod
 /* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
    <wchar.h>.
    BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
@@ -8408,22 +8545,24 @@ _ACEOF
 int zero (void) { return 0; }
 
 _ACEOF
-              ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest2/`
-       if echo '#include "conftest.c"' >conftest2.c &&
-          { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+                      ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest2/`
+           if echo '#include "conftest.c"' >conftest2.c \
+              && { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-         if $CC -o conftest$ac_exeext $CFLAGS $LDFLAGS conftest1.$ac_objext conftest2.$ac_objext $LIBS >&5 2>&1; then
-           :
-         else
-           gl_cv_header_wchar_h_correct_inline=no
+             if $CC -o conftest$ac_exeext $CFLAGS $LDFLAGS conftest1.$ac_objext conftest2.$ac_objext $LIBS >&5 2>&1; then
+               :
+             else
+               gl_cv_header_wchar_h_correct_inline=no
+             fi
+           fi
          fi
-       fi
-     fi
-     ac_compile="$save_ac_compile"
-     rm -f conftest12.c conftest12.$ac_objext conftest$ac_exeext
+         ac_compile="$save_ac_compile"
+         rm -f conftest12.c conftest12.$ac_objext conftest$ac_exeext
+         ;;
+     esac
 
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_wchar_h_correct_inline" >&5
@@ -8635,6 +8774,7 @@ $as_echo "$gt_cv_locale_fr" >&6; }
 
 
   GNULIB__EXIT=0;
+  GNULIB_ALIGNED_ALLOC=0;
   GNULIB_ATOLL=0;
   GNULIB_CALLOC_POSIX=0;
   GNULIB_CANONICALIZE_FILE_NAME=0;
@@ -8648,6 +8788,7 @@ $as_echo "$gt_cv_locale_fr" >&6; }
   GNULIB_MKOSTEMPS=0;
   GNULIB_MKSTEMP=0;
   GNULIB_MKSTEMPS=0;
+  GNULIB_POSIX_MEMALIGN=0;
   GNULIB_POSIX_OPENPT=0;
   GNULIB_PTSNAME=0;
   GNULIB_PTSNAME_R=0;
@@ -8670,8 +8811,12 @@ $as_echo "$gt_cv_locale_fr" >&6; }
   GNULIB_UNSETENV=0;
   GNULIB_WCTOMB=0;
     HAVE__EXIT=1;
+  HAVE_ALIGNED_ALLOC=1;
   HAVE_ATOLL=1;
   HAVE_CANONICALIZE_FILE_NAME=1;
+  HAVE_DECL_ECVT=1;
+  HAVE_DECL_FCVT=1;
+  HAVE_DECL_GCVT=1;
   HAVE_DECL_GETLOADAVG=1;
   HAVE_GETSUBOPT=1;
   HAVE_GRANTPT=1;
@@ -8683,6 +8828,7 @@ $as_echo "$gt_cv_locale_fr" >&6; }
   HAVE_MKOSTEMPS=1;
   HAVE_MKSTEMP=1;
   HAVE_MKSTEMPS=1;
+  HAVE_POSIX_MEMALIGN=1;
   HAVE_POSIX_OPENPT=1;
   HAVE_PTSNAME=1;
   HAVE_PTSNAME_R=1;
@@ -8706,12 +8852,14 @@ $as_echo "$gt_cv_locale_fr" >&6; }
   HAVE_SYS_LOADAVG_H=0;
   HAVE_UNLOCKPT=1;
   HAVE_DECL_UNSETENV=1;
+  REPLACE_ALIGNED_ALLOC=0;
   REPLACE_CALLOC=0;
   REPLACE_CANONICALIZE_FILE_NAME=0;
   REPLACE_INITSTATE=0;
   REPLACE_MALLOC=0;
   REPLACE_MBTOWC=0;
   REPLACE_MKSTEMP=0;
+  REPLACE_POSIX_MEMALIGN=0;
   REPLACE_PTSNAME=0;
   REPLACE_PTSNAME_R=0;
   REPLACE_PUTENV=0;
@@ -8765,8 +8913,6 @@ $as_echo "$gl_cv_func_malloc_posix" >&6; }
 
 
 
-
-
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether // is distinct from /" >&5
 $as_echo_n "checking whether // is distinct from /... " >&6; }
 if ${gl_cv_double_slash_root+:} false; then :
@@ -8814,6 +8960,7 @@ if ${gl_cv_func_realpath_works+:} false; then :
   $as_echo_n "(cached) " >&6
 else
 
+    rm -rf conftest.a conftest.d
     touch conftest.a
     mkdir conftest.d
     if test "$cross_compiling" = yes; then :
@@ -8824,8 +8971,8 @@ else
         *-musl*)       gl_cv_func_realpath_works="guessing yes" ;;
                        # Guess no on native Windows.
         mingw*)        gl_cv_func_realpath_works="guessing no" ;;
-                       # If we don't know, assume the worst.
-        *)             gl_cv_func_realpath_works="guessing no" ;;
+                       # If we don't know, obey --enable-cross-guesses.
+        *)             gl_cv_func_realpath_works="$gl_cross_guess_normal" ;;
       esac
 
 else
@@ -8871,7 +9018,7 @@ nocrash_init (void)
   /* Allocate a port on which the thread shall listen for exceptions.  */
   if (mach_port_allocate (self, MACH_PORT_RIGHT_RECEIVE, &our_exception_port)
       == KERN_SUCCESS) {
-    /* See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html.  */
+    /* See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html.  */
     if (mach_port_insert_right (self, our_exception_port, our_exception_port,
                                 MACH_MSG_TYPE_MAKE_SEND)
         == KERN_SUCCESS) {
@@ -8890,7 +9037,7 @@ nocrash_init (void)
            for a particular thread.  This has the effect that when our exception
            port gets the message, the thread specific exception port has already
            been asked, and we don't need to bother about it.
-           See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html.  */
+           See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html.  */
         task_set_exception_ports (self, mask, our_exception_port,
                                   EXCEPTION_DEFAULT, MACHINE_THREAD_STATE);
       }
@@ -9034,9 +9181,27 @@ done
 
 
 
+  case "$host_os" in
+    mingw*) ;;
+    *)      for ac_func in getcwd
+do :
+  ac_fn_c_check_func "$LINENO" "getcwd" "ac_cv_func_getcwd"
+if test "x$ac_cv_func_getcwd" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_GETCWD 1
+_ACEOF
+
+fi
+done
+ ;;
+  esac
+
+
+
 
 
 
+  GNULIB_ACCESS=0;
   GNULIB_CHDIR=0;
   GNULIB_CHOWN=0;
   GNULIB_CLOSE=0;
@@ -9055,10 +9220,12 @@ done
   GNULIB_GETCWD=0;
   GNULIB_GETDOMAINNAME=0;
   GNULIB_GETDTABLESIZE=0;
+  GNULIB_GETENTROPY=0;
   GNULIB_GETGROUPS=0;
   GNULIB_GETHOSTNAME=0;
   GNULIB_GETLOGIN=0;
   GNULIB_GETLOGIN_R=0;
+  GNULIB_GETOPT_POSIX=0;
   GNULIB_GETPAGESIZE=0;
   GNULIB_GETPASS=0;
   GNULIB_GETUSERSHELL=0;
@@ -9090,7 +9257,6 @@ done
   GNULIB_WRITE=0;
     HAVE_CHOWN=1;
   HAVE_COPY_FILE_RANGE=1;
-  HAVE_DUP2=1;
   HAVE_DUP3=1;
   HAVE_EUIDACCESS=1;
   HAVE_FACCESSAT=1;
@@ -9100,6 +9266,7 @@ done
   HAVE_FSYNC=1;
   HAVE_FTRUNCATE=1;
   HAVE_GETDTABLESIZE=1;
+  HAVE_GETENTROPY=1;
   HAVE_GETGROUPS=1;
   HAVE_GETHOSTNAME=1;
   HAVE_GETLOGIN=1;
@@ -9122,6 +9289,7 @@ done
   HAVE_UNLINKAT=1;
   HAVE_USLEEP=1;
   HAVE_DECL_ENVIRON=1;
+  HAVE_DECL_EXECVPE=1;
   HAVE_DECL_FCHDIR=1;
   HAVE_DECL_FDATASYNC=1;
   HAVE_DECL_GETDOMAINNAME=1;
@@ -9134,6 +9302,7 @@ done
   HAVE_DECL_TTYNAME_R=1;
   HAVE_OS_H=0;
   HAVE_SYS_PARAM_H=0;
+  REPLACE_ACCESS=0;
   REPLACE_CHOWN=0;
   REPLACE_CLOSE=0;
   REPLACE_DUP=0;
@@ -9168,6 +9337,7 @@ done
   REPLACE_UNLINKAT=0;
   REPLACE_USLEEP=0;
   REPLACE_WRITE=0;
+  UNISTD_H_HAVE_SYS_RANDOM_H=0;
   UNISTD_H_HAVE_WINSOCK2_H=0;
   UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=0;
 
@@ -9195,9 +9365,60 @@ $as_echo "#define HAVE_MSVC_INVALID_PARAMETER_HANDLER 1" >>confdefs.h
 
 
 
-
-
-
+gl_mda_defines='
+#if defined _WIN32 && !defined __CYGWIN__
+#define access    _access
+#define chdir     _chdir
+#define chmod     _chmod
+#define close     _close
+#define creat     _creat
+#define dup       _dup
+#define dup2      _dup2
+#define ecvt      _ecvt
+#define execl     _execl
+#define execle    _execle
+#define execlp    _execlp
+#define execv     _execv
+#define execve    _execve
+#define execvp    _execvp
+#define execvpe   _execvpe
+#define fcloseall _fcloseall
+#define fcvt      _fcvt
+#define fdopen    _fdopen
+#define fileno    _fileno
+#define gcvt      _gcvt
+#define getcwd    _getcwd
+#define getpid    _getpid
+#define getw      _getw
+#define isatty    _isatty
+#define j0        _j0
+#define j1        _j1
+#define jn        _jn
+#define lfind     _lfind
+#define lsearch   _lsearch
+#define lseek     _lseek
+#define memccpy   _memccpy
+#define mkdir     _mkdir
+#define mktemp    _mktemp
+#define open      _open
+#define putenv    _putenv
+#define putw      _putw
+#define read      _read
+#define rmdir     _rmdir
+#define strdup    _strdup
+#define swab      _swab
+#define tempnam   _tempnam
+#define tzset     _tzset
+#define umask     _umask
+#define unlink    _unlink
+#define utime     _utime
+#define wcsdup    _wcsdup
+#define write     _write
+#define y0        _y0
+#define y1        _y1
+#define yn        _yn
+#endif
+'
 
 
 
@@ -9281,12 +9502,13 @@ $as_echo "$gl_cv_have_include_next" >&6; }
 
 
 
-  { $as_echo "$as_me:${as_lineno-$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 ${gl_cv_pragma_columns+:} false; then :
+
+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether source code line length is unlimited" >&5
+$as_echo_n "checking whether source code line length is unlimited... " >&6; }
+if ${gl_cv_source_line_length_unlimited+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 #ifdef __TANDEM
@@ -9296,17 +9518,17 @@ choke me
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
   $EGREP "choke me" >/dev/null 2>&1; then :
-  gl_cv_pragma_columns=yes
+  gl_cv_source_line_length_unlimited=no
 else
-  gl_cv_pragma_columns=no
+  gl_cv_source_line_length_unlimited=yes
 fi
 rm -f conftest*
 
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_pragma_columns" >&5
-$as_echo "$gl_cv_pragma_columns" >&6; }
-  if test $gl_cv_pragma_columns = yes; then
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_source_line_length_unlimited" >&5
+$as_echo "$gl_cv_source_line_length_unlimited" >&6; }
+  if test $gl_cv_source_line_length_unlimited = no; then
     PRAGMA_COLUMNS="#pragma COLUMNS 10000"
   else
     PRAGMA_COLUMNS=
 
 
 
+  GNULIB_CREAT=0;
   GNULIB_FCNTL=0;
   GNULIB_NONBLOCKING=0;
   GNULIB_OPEN=0;
   GNULIB_OPENAT=0;
     HAVE_FCNTL=1;
   HAVE_OPENAT=1;
+  REPLACE_CREAT=0;
   REPLACE_FCNTL=0;
   REPLACE_OPEN=0;
   REPLACE_OPENAT=0;
@@ -9807,6 +10031,8 @@ fi
 
 
 
+
+
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working fcntl.h" >&5
 $as_echo_n "checking for working fcntl.h... " >&6; }
 if ${gl_cv_header_working_fcntl_h+:} false; then :
@@ -9832,6 +10058,10 @@ else
            # defined sleep(n) _sleep ((n) * 1000)
            #endif
            #include <fcntl.h>
+
+
+$gl_mda_defines
+
            #ifndef O_NOATIME
             #define O_NOATIME 0
            #endif
@@ -9954,17 +10184,43 @@ cat >>confdefs.h <<_ACEOF
 _ACEOF
 
 
-ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default"
+
+  ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default
+"
 if test "x$ac_cv_type_pid_t" = xyes; then :
 
 else
+                                          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+          #if defined _WIN64 && !defined __CYGWIN__
+          LLP64
+          #endif
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_pid_type='int'
+else
+  gl_pid_type='__int64'
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 
 cat >>confdefs.h <<_ACEOF
-#define pid_t int
+#define pid_t $gl_pid_type
 _ACEOF
 
+
 fi
 
+
 ac_fn_c_check_type "$LINENO" "mode_t" "ac_cv_type_mode_t" "$ac_includes_default"
 if test "x$ac_cv_type_mode_t" = xyes; then :
 
@@ -9983,6 +10239,7 @@ fi
   GNULIB_FSTAT=0;
   GNULIB_FSTATAT=0;
   GNULIB_FUTIMENS=0;
+  GNULIB_GETUMASK=0;
   GNULIB_LCHMOD=0;
   GNULIB_LSTAT=0;
   GNULIB_MKDIRAT=0;
@@ -9996,6 +10253,7 @@ fi
     HAVE_FCHMODAT=1;
   HAVE_FSTATAT=1;
   HAVE_FUTIMENS=1;
+  HAVE_GETUMASK=1;
   HAVE_LCHMOD=1;
   HAVE_LSTAT=1;
   HAVE_MKDIRAT=1;
@@ -10004,6 +10262,7 @@ fi
   HAVE_MKNOD=1;
   HAVE_MKNODAT=1;
   HAVE_UTIMENSAT=1;
+  REPLACE_FCHMODAT=0;
   REPLACE_FSTAT=0;
   REPLACE_FSTATAT=0;
   REPLACE_FUTIMENS=0;
@@ -10136,6 +10395,54 @@ $as_echo "$gl_cv_member_st_size_64" >&6; }
       ;;
   esac
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C/C++ restrict keyword" >&5
+$as_echo_n "checking for C/C++ restrict keyword... " >&6; }
+if ${ac_cv_c_restrict+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_cv_c_restrict=no
+   # The order here caters to the fact that C++ does not require restrict.
+   for ac_kw in __restrict __restrict__ _Restrict restrict; do
+     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+typedef int *int_ptr;
+           int foo (int_ptr $ac_kw ip) { return ip[0]; }
+           int bar (int [$ac_kw]); /* Catch GCC bug 14050.  */
+           int bar (int ip[$ac_kw]) { return ip[0]; }
+
+int
+main ()
+{
+int s[1];
+           int *$ac_kw t = s;
+           t[0] = 0;
+           return foo (t) + bar (t);
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_cv_c_restrict=$ac_kw
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+     test "$ac_cv_c_restrict" != no && break
+   done
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_restrict" >&5
+$as_echo "$ac_cv_c_restrict" >&6; }
+
+ case $ac_cv_c_restrict in
+   restrict) ;;
+   no) $as_echo "#define restrict /**/" >>confdefs.h
+ ;;
+   *)  cat >>confdefs.h <<_ACEOF
+#define restrict $ac_cv_c_restrict
+_ACEOF
+ ;;
+ esac
+
 
 
 
 
 
 
+  case "$host_os" in
+    mingw*)
+      for ac_header in sdkddkver.h
+do :
+  ac_fn_c_check_header_mongrel "$LINENO" "sdkddkver.h" "ac_cv_header_sdkddkver_h" "$ac_includes_default"
+if test "x$ac_cv_header_sdkddkver_h" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_SDKDDKVER_H 1
+_ACEOF
+
+fi
+
+done
+
+      ;;
+  esac
+
+
+
+
+
+ac_fn_c_check_decl "$LINENO" "getdtablesize" "ac_cv_have_decl_getdtablesize" "$ac_includes_default"
+if test "x$ac_cv_have_decl_getdtablesize" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_GETDTABLESIZE $ac_have_decl
+_ACEOF
+
+
+
 
 
 
@@ -10566,7 +10907,7 @@ else
        POSIXLY_CORRECT=1
        export POSIXLY_CORRECT
        if test "$cross_compiling" = yes; then :
-           gl_cv_func_getopt_gnu="guessing no"
+                             gl_cv_func_getopt_gnu="$gl_cross_guess_normal"
 
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -10612,7 +10953,7 @@ nocrash_init (void)
   /* Allocate a port on which the thread shall listen for exceptions.  */
   if (mach_port_allocate (self, MACH_PORT_RIGHT_RECEIVE, &our_exception_port)
       == KERN_SUCCESS) {
-    /* See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html.  */
+    /* See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html.  */
     if (mach_port_insert_right (self, our_exception_port, our_exception_port,
                                 MACH_MSG_TYPE_MAKE_SEND)
         == KERN_SUCCESS) {
@@ -10631,7 +10972,7 @@ nocrash_init (void)
            for a particular thread.  This has the effect that when our exception
            port gets the message, the thread specific exception port has already
            been asked, and we don't need to bother about it.
-           See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html.  */
+           See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html.  */
         task_set_exception_ports (self, mask, our_exception_port,
                                   EXCEPTION_DEFAULT, MACHINE_THREAD_STATE);
       }
@@ -10861,295 +11202,534 @@ $as_echo "$gl_cv_func_getopt_long_gnu" >&6; }
 
 
 
-  GNULIB_GETTIMEOFDAY=0;
-    HAVE_GETTIMEOFDAY=1;
-  HAVE_STRUCT_TIMEVAL=1;
-  HAVE_SYS_TIME_H=1;
-  REPLACE_GETTIMEOFDAY=0;
-  REPLACE_STRUCT_TIMEVAL=0;
+  GNULIB_GETRANDOM=0;
+    HAVE_GETRANDOM=1;
+  REPLACE_GETRANDOM=0;
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C/C++ restrict keyword" >&5
-$as_echo_n "checking for C/C++ restrict keyword... " >&6; }
-if ${ac_cv_c_restrict+:} false; then :
-  $as_echo_n "(cached) " >&6
+
+
+
+
+
+
+  if test -z "$gl_pthreadlib_body_done"; then
+    gl_pthread_api=no
+    LIBPTHREAD=
+    LIBPMULTITHREAD=
+    # On OSF/1, the compiler needs the flag -pthread or -D_REENTRANT so that
+    # it groks <pthread.h>. It's added above, in gl_ANYTHREADLIB_EARLY.
+    ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default"
+if test "x$ac_cv_header_pthread_h" = xyes; then :
+  gl_have_pthread_h=yes
 else
-  ac_cv_c_restrict=no
-   # The order here caters to the fact that C++ does not require restrict.
-   for ac_kw in __restrict __restrict__ _Restrict restrict; do
-     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+  gl_have_pthread_h=no
+fi
+
+
+    if test "$gl_have_pthread_h" = yes; then
+      # Other possible tests:
+      #   -lpthreads (FSU threads, PCthreads)
+      #   -lgthreads
+      # Test whether both pthread_mutex_lock and pthread_mutexattr_init exist
+      # in libc. IRIX 6.5 has the first one in both libc and libpthread, but
+      # the second one only in libpthread, and lock.c needs it.
+      #
+      # If -pthread works, prefer it to -lpthread, since Ubuntu 14.04
+      # needs -pthread for some reason.  See:
+      # https://lists.gnu.org/r/bug-gnulib/2014-09/msg00023.html
+      save_LIBS=$LIBS
+      for gl_pthread in '' '-pthread'; do
+        LIBS="$LIBS $gl_pthread"
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-typedef int *int_ptr;
-           int foo (int_ptr $ac_kw ip) { return ip[0]; }
-           int bar (int [$ac_kw]); /* Catch GCC bug 14050.  */
-           int bar (int ip[$ac_kw]) { return ip[0]; }
+#include <pthread.h>
+               pthread_mutex_t m;
+               pthread_mutexattr_t ma;
 
 int
 main ()
 {
-int s[1];
-           int *$ac_kw t = s;
-           t[0] = 0;
-           return foo (t) + bar (t);
-
+pthread_mutex_lock (&m);
+               pthread_mutexattr_init (&ma);
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_restrict=$ac_kw
+if ac_fn_c_try_link "$LINENO"; then :
+  gl_pthread_api=yes
+           LIBPTHREAD=$gl_pthread
+           LIBPMULTITHREAD=$gl_pthread
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-     test "$ac_cv_c_restrict" != no && break
-   done
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+        LIBS=$save_LIBS
+        test $gl_pthread_api = yes && break
+      done
 
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_restrict" >&5
-$as_echo "$ac_cv_c_restrict" >&6; }
+      # Test for libpthread by looking for pthread_kill. (Not pthread_self,
+      # since it is defined as a macro on OSF/1.)
+      if test $gl_pthread_api = yes && test -z "$LIBPTHREAD"; then
+        # The program links fine without libpthread. But it may actually
+        # need to link with libpthread in order to create multiple threads.
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5
+$as_echo_n "checking for pthread_kill in -lpthread... " >&6; }
+if ${ac_cv_lib_pthread_pthread_kill+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lpthread  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
 
- case $ac_cv_c_restrict in
-   restrict) ;;
-   no) $as_echo "#define restrict /**/" >>confdefs.h
- ;;
-   *)  cat >>confdefs.h <<_ACEOF
-#define restrict $ac_cv_c_restrict
+/* 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 pthread_kill ();
+int
+main ()
+{
+return pthread_kill ();
+  ;
+  return 0;
+}
 _ACEOF
- ;;
- esac
-
-
-
-
-
-
-
-
-
-
-
-
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_pthread_pthread_kill=yes
+else
+  ac_cv_lib_pthread_pthread_kill=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5
+$as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; }
+if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then :
+  LIBPMULTITHREAD=-lpthread
+           # On Solaris and HP-UX, most pthread functions exist also in libc.
+           # Therefore pthread_in_use() needs to actually try to create a
+           # thread: pthread_create from libc will fail, whereas
+           # pthread_create will actually create a thread.
+           # On Solaris 10 or newer, this test is no longer needed, because
+           # libc contains the fully functional pthread functions.
+           case "$host_os" in
+             solaris | solaris2.1-9 | solaris2.1-9.* | hpux*)
 
+$as_echo "#define PTHREAD_IN_USE_DETECTION_HARD 1" >>confdefs.h
 
+           esac
 
+fi
 
-     if test $gl_cv_have_include_next = yes; then
-       gl_cv_next_sys_time_h='<'sys/time.h'>'
-     else
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/time.h>" >&5
-$as_echo_n "checking absolute name of <sys/time.h>... " >&6; }
-if ${gl_cv_next_sys_time_h+:} false; then :
+      elif test $gl_pthread_api != yes; then
+        # Some library is needed. Try libpthread and libc_r.
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5
+$as_echo_n "checking for pthread_kill in -lpthread... " >&6; }
+if ${ac_cv_lib_pthread_pthread_kill+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-
-             if test $ac_cv_header_sys_time_h = yes; then
-
-
-
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lpthread  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <sys/time.h>
-_ACEOF
-                case "$host_os" in
-    aix*) gl_absname_cpp="$ac_cpp -C" ;;
-    *)    gl_absname_cpp="$ac_cpp" ;;
-  esac
-
-  case "$host_os" in
-    mingw*)
-                                          gl_dirsep_regex='[/\\]'
-      ;;
-    *)
-      gl_dirsep_regex='\/'
-      ;;
-  esac
-      gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
-  gl_header_literal_regex=`echo 'sys/time.h' \
-                           | sed -e "$gl_make_literal_regex_sed"`
-  gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{
-      s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/
-      s|^/[^/]|//&|
-      p
-      q
-    }'
-
-        gl_cv_absolute_sys_time_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
-  sed -n "$gl_absolute_header_sed"`
-
-           gl_header=$gl_cv_absolute_sys_time_h
-           gl_cv_next_sys_time_h='"'$gl_header'"'
-          else
-               gl_cv_next_sys_time_h='<'sys/time.h'>'
-             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 pthread_kill ();
+int
+main ()
+{
+return pthread_kill ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_pthread_pthread_kill=yes
+else
+  ac_cv_lib_pthread_pthread_kill=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5
+$as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; }
+if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then :
+  gl_pthread_api=yes
+           LIBPTHREAD=-lpthread
+           LIBPMULTITHREAD=-lpthread
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_time_h" >&5
-$as_echo "$gl_cv_next_sys_time_h" >&6; }
-     fi
-     NEXT_SYS_TIME_H=$gl_cv_next_sys_time_h
-
-     if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then
-       # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next'
-       gl_next_as_first_directive='<'sys/time.h'>'
-     else
-       # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
-       gl_next_as_first_directive=$gl_cv_next_sys_time_h
-     fi
-     NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H=$gl_next_as_first_directive
-
-
 
+        if test $gl_pthread_api != yes; then
+          # For FreeBSD 4.
+          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lc_r" >&5
+$as_echo_n "checking for pthread_kill in -lc_r... " >&6; }
+if ${ac_cv_lib_c_r_pthread_kill+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lc_r  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
 
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char pthread_kill ();
+int
+main ()
+{
+return pthread_kill ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_c_r_pthread_kill=yes
+else
+  ac_cv_lib_c_r_pthread_kill=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_r_pthread_kill" >&5
+$as_echo "$ac_cv_lib_c_r_pthread_kill" >&6; }
+if test "x$ac_cv_lib_c_r_pthread_kill" = xyes; then :
+  gl_pthread_api=yes
+             LIBPTHREAD=-lc_r
+             LIBPMULTITHREAD=-lc_r
+fi
 
-  if test $ac_cv_header_sys_time_h != yes; then
-    HAVE_SYS_TIME_H=0
-  fi
+        fi
+      fi
+    fi
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads API is available" >&5
+$as_echo_n "checking whether POSIX threads API is available... " >&6; }
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_pthread_api" >&5
+$as_echo "$gl_pthread_api" >&6; }
 
 
+    if test $gl_pthread_api = yes; then
 
+$as_echo "#define HAVE_PTHREAD_API 1" >>confdefs.h
 
+    fi
 
-  if test $ac_cv_header_sys_socket_h != yes; then
-                    for ac_header in winsock2.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default"
-if test "x$ac_cv_header_winsock2_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK2_H 1
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <sched.h>
+int
+main ()
+{
+sched_yield ();
+  ;
+  return 0;
+}
 _ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  LIB_SCHED_YIELD=
 
-fi
-
-done
-
-  fi
-  if test "$ac_cv_header_winsock2_h" = yes; then
-    HAVE_WINSOCK2_H=1
-    UNISTD_H_HAVE_WINSOCK2_H=1
-    SYS_IOCTL_H_HAVE_WINSOCK2_H=1
-  else
-    HAVE_WINSOCK2_H=0
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timeval" >&5
-$as_echo_n "checking for struct timeval... " >&6; }
-if ${gl_cv_sys_struct_timeval+:} false; then :
+else
+         { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lrt" >&5
+$as_echo_n "checking for sched_yield in -lrt... " >&6; }
+if ${ac_cv_lib_rt_sched_yield+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lrt  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#if HAVE_SYS_TIME_H
-             #include <sys/time.h>
-            #endif
-            #include <time.h>
-            #if HAVE_WINSOCK2_H
-            # include <winsock2.h>
-            #endif
 
+/* 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 sched_yield ();
 int
 main ()
 {
-static struct timeval x; x.tv_sec = x.tv_usec;
+return sched_yield ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_sys_struct_timeval=yes
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_rt_sched_yield=yes
 else
-  gl_cv_sys_struct_timeval=no
+  ac_cv_lib_rt_sched_yield=no
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timeval" >&5
-$as_echo "$gl_cv_sys_struct_timeval" >&6; }
-  if test $gl_cv_sys_struct_timeval != yes; then
-    HAVE_STRUCT_TIMEVAL=0
-  else
-                            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wide-enough struct timeval.tv_sec member" >&5
-$as_echo_n "checking for wide-enough struct timeval.tv_sec member... " >&6; }
-if ${gl_cv_sys_struct_timeval_tv_sec+:} false; then :
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_sched_yield" >&5
+$as_echo "$ac_cv_lib_rt_sched_yield" >&6; }
+if test "x$ac_cv_lib_rt_sched_yield" = xyes; then :
+  LIB_SCHED_YIELD=-lrt
+else
+            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lposix4" >&5
+$as_echo_n "checking for sched_yield in -lposix4... " >&6; }
+if ${ac_cv_lib_posix4_sched_yield+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lposix4  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#if HAVE_SYS_TIME_H
-               #include <sys/time.h>
-              #endif
-              #include <time.h>
-              #if HAVE_WINSOCK2_H
-              # include <winsock2.h>
-              #endif
 
+/* 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 sched_yield ();
 int
 main ()
 {
-static struct timeval x;
-              typedef int verify_tv_sec_type[
-                sizeof (time_t) <= sizeof x.tv_sec ? 1 : -1
-              ];
-
+return sched_yield ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_sys_struct_timeval_tv_sec=yes
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_posix4_sched_yield=yes
 else
-  gl_cv_sys_struct_timeval_tv_sec=no
+  ac_cv_lib_posix4_sched_yield=no
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix4_sched_yield" >&5
+$as_echo "$ac_cv_lib_posix4_sched_yield" >&6; }
+if test "x$ac_cv_lib_posix4_sched_yield" = xyes; then :
+  LIB_SCHED_YIELD=-lposix4
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timeval_tv_sec" >&5
-$as_echo "$gl_cv_sys_struct_timeval_tv_sec" >&6; }
-    if test $gl_cv_sys_struct_timeval_tv_sec != yes; then
-      REPLACE_STRUCT_TIMEVAL=1
-    fi
-  fi
-
-
 
+fi
 
 
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 
 
+    gl_pthreadlib_body_done=done
+  fi
 
 
 
 
-  NEED_LOCALTIME_BUFFER=0
 
 
-  GNULIB_CTIME=0;
-  GNULIB_MKTIME=0;
-  GNULIB_LOCALTIME=0;
-  GNULIB_NANOSLEEP=0;
-  GNULIB_STRFTIME=0;
-  GNULIB_STRPTIME=0;
-  GNULIB_TIMEGM=0;
-  GNULIB_TIME_R=0;
-  GNULIB_TIME_RZ=0;
-  GNULIB_TZSET=0;
-    HAVE_DECL_LOCALTIME_R=1;
-  HAVE_NANOSLEEP=1;
-  HAVE_STRPTIME=1;
-  HAVE_TIMEGM=1;
-  HAVE_TZSET=1;
-    HAVE_TIMEZONE_T=0;
-        REPLACE_CTIME=GNULIB_PORTCHECK;
-  REPLACE_LOCALTIME_R=GNULIB_PORTCHECK;
-  REPLACE_MKTIME=GNULIB_PORTCHECK;
-  REPLACE_NANOSLEEP=GNULIB_PORTCHECK;
-  REPLACE_STRFTIME=GNULIB_PORTCHECK;
-  REPLACE_TIMEGM=GNULIB_PORTCHECK;
-  REPLACE_TZSET=GNULIB_PORTCHECK;
 
-      : ${GNULIB_GETTIMEOFDAY=0};
-        REPLACE_GMTIME=0;
-  REPLACE_LOCALTIME=0;
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether setlocale (LC_ALL, NULL) is multithread-safe" >&5
+$as_echo_n "checking whether setlocale (LC_ALL, NULL) is multithread-safe... " >&6; }
+if ${gl_cv_func_setlocale_null_all_mtsafe+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case "$host_os" in
+       # Guess no on musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku, Cygwin.
+       *-musl* | darwin* | freebsd* | netbsd* | openbsd* | aix* | haiku* | cygwin*)
+         gl_cv_func_setlocale_null_all_mtsafe=no ;;
+       # Guess yes on glibc, HP-UX, IRIX, Solaris, native Windows.
+       *-gnu* | gnu* | hpux* | irix* | solaris* | mingw*)
+         gl_cv_func_setlocale_null_all_mtsafe=yes ;;
+       # If we don't know, obey --enable-cross-guesses.
+       *)
+         gl_cv_func_setlocale_null_all_mtsafe="$gl_cross_guess_normal" ;;
+     esac
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_setlocale_null_all_mtsafe" >&5
+$as_echo "$gl_cv_func_setlocale_null_all_mtsafe" >&6; }
+    case "$host_os" in
+    mingw*) ;;
+    *)
+      if test $gl_pthread_api = no && test $ac_cv_header_threads_h = no; then
+        gl_cv_func_setlocale_null_all_mtsafe="trivially yes"
+      fi
+      ;;
+  esac
+  case "$gl_cv_func_setlocale_null_all_mtsafe" in
+    *yes) SETLOCALE_NULL_ALL_MTSAFE=1 ;;
+    *)    SETLOCALE_NULL_ALL_MTSAFE=0 ;;
+  esac
+
+cat >>confdefs.h <<_ACEOF
+#define SETLOCALE_NULL_ALL_MTSAFE $SETLOCALE_NULL_ALL_MTSAFE
+_ACEOF
+
+
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether setlocale (category, NULL) is multithread-safe" >&5
+$as_echo_n "checking whether setlocale (category, NULL) is multithread-safe... " >&6; }
+if ${gl_cv_func_setlocale_null_one_mtsafe+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case "$host_os" in
+       # Guess no on OpenBSD, AIX.
+       openbsd* | aix*)
+         gl_cv_func_setlocale_null_one_mtsafe=no ;;
+       # Guess yes on glibc, musl libc, macOS, FreeBSD, NetBSD, HP-UX, IRIX, Solaris, Haiku, Cygwin, native Windows.
+       *-gnu* | gnu* | *-musl* | darwin* | freebsd* | netbsd* | hpux* | irix* | solaris* | haiku* | cygwin* | mingw*)
+         gl_cv_func_setlocale_null_one_mtsafe=yes ;;
+       # If we don't know, obey --enable-cross-guesses.
+       *)
+         gl_cv_func_setlocale_null_one_mtsafe="$gl_cross_guess_normal" ;;
+     esac
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_setlocale_null_one_mtsafe" >&5
+$as_echo "$gl_cv_func_setlocale_null_one_mtsafe" >&6; }
+    case "$host_os" in
+    mingw*) ;;
+    *)
+      if test $gl_pthread_api = no && test $ac_cv_header_threads_h = no; then
+        gl_cv_func_setlocale_null_one_mtsafe="trivially yes"
+      fi
+      ;;
+  esac
+  case "$gl_cv_func_setlocale_null_one_mtsafe" in
+    *yes) SETLOCALE_NULL_ONE_MTSAFE=1 ;;
+    *)    SETLOCALE_NULL_ONE_MTSAFE=0 ;;
+  esac
+
+cat >>confdefs.h <<_ACEOF
+#define SETLOCALE_NULL_ONE_MTSAFE $SETLOCALE_NULL_ONE_MTSAFE
+_ACEOF
+
+
+    if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then
+    case "$host_os" in
+      mingw*) LIB_SETLOCALE_NULL= ;;
+      *)
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether imported symbols can be declared weak" >&5
+$as_echo_n "checking whether imported symbols can be declared weak... " >&6; }
+if ${gl_cv_have_weak+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  gl_cv_have_weak=no
+          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+extern void xyzzy ();
+#pragma weak xyzzy
+int
+main ()
+{
+xyzzy();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  gl_cv_have_weak=maybe
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+     if test $gl_cv_have_weak = maybe; then
+                     if test "$cross_compiling" = yes; then :
+                      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#ifdef __ELF__
+             Extensible Linking Format
+             #endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  $EGREP "Extensible Linking Format" >/dev/null 2>&1; then :
+  gl_cv_have_weak="guessing yes"
+else
+  gl_cv_have_weak="guessing no"
+fi
+rm -f conftest*
+
+
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+#include <stdio.h>
+#pragma weak fputs
+int main ()
+{
+  return (fputs == NULL);
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  gl_cv_have_weak=yes
+else
+  gl_cv_have_weak=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+     fi
+          case " $LDFLAGS " in
+       *" -static "*) gl_cv_have_weak=no ;;
+     esac
+                    case "$gl_cv_have_weak" in
+       *yes)
+         case "$host_os" in
+           freebsd* | dragonfly*)
+             : > conftest1.c
+             $CC $CPPFLAGS $CFLAGS $LDFLAGS -fPIC -shared -o libempty.so conftest1.c -lpthread >&5 2>&1
+             cat <<EOF > conftest2.c
+#include <pthread.h>
+#pragma weak pthread_mutexattr_gettype
+int main ()
+{
+  return (pthread_mutexattr_gettype != NULL);
+}
+EOF
+             $CC $CPPFLAGS $CFLAGS $LDFLAGS -o conftest conftest2.c libempty.so >&5 2>&1 \
+               || gl_cv_have_weak=no
+             rm -f conftest1.c libempty.so conftest2.c conftest
+             ;;
+         esac
+         ;;
+     esac
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_weak" >&5
+$as_echo "$gl_cv_have_weak" >&6; }
+  case "$gl_cv_have_weak" in
+    *yes)
+
+$as_echo "#define HAVE_WEAK_SYMBOLS 1" >>confdefs.h
+
+      ;;
+  esac
+
+        case "$gl_cv_have_weak" in
+          *yes) LIB_SETLOCALE_NULL= ;;
+          *)    LIB_SETLOCALE_NULL="$LIBPTHREAD" ;;
+        esac
+        ;;
+    esac
+  else
+    LIB_SETLOCALE_NULL=
+  fi
+
 
 
 
@@ -11320,9 +11900,9 @@ $as_echo "$gt_cv_c_wint_t" >&6; }
 $as_echo "#define HAVE_WINT_T 1" >>confdefs.h
 
 
-            { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether wint_t is too small" >&5
-$as_echo_n "checking whether wint_t is too small... " >&6; }
-if ${gl_cv_type_wint_t_too_small+:} false; then :
+            { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether wint_t is large enough" >&5
+$as_echo_n "checking whether wint_t is large enough... " >&6; }
+if ${gl_cv_type_wint_t_large_enough+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -11338,7 +11918,7 @@ else
 # include <time.h>
 #endif
 #include <wchar.h>
-              int verify[sizeof (wint_t) < sizeof (int) ? -1 : 1];
+            int verify[sizeof (wint_t) < sizeof (int) ? -1 : 1];
 
 int
 main ()
@@ -11349,15 +11929,15 @@ main ()
 }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_type_wint_t_too_small=no
+  gl_cv_type_wint_t_large_enough=yes
 else
-  gl_cv_type_wint_t_too_small=yes
+  gl_cv_type_wint_t_large_enough=no
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wint_t_too_small" >&5
-$as_echo "$gl_cv_type_wint_t_too_small" >&6; }
-    if test $gl_cv_type_wint_t_too_small = yes; then
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wint_t_large_enough" >&5
+$as_echo "$gl_cv_type_wint_t_large_enough" >&6; }
+    if test $gl_cv_type_wint_t_large_enough = no; then
       GNULIB_OVERRIDES_WINT_T=1
     else
       GNULIB_OVERRIDES_WINT_T=0
@@ -11368,161 +11948,53 @@ $as_echo "$gl_cv_type_wint_t_too_small" >&6; }
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for unsigned long long int" >&5
-$as_echo_n "checking for unsigned long long int... " >&6; }
-if ${ac_cv_type_unsigned_long_long_int+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_type_unsigned_long_long_int=yes
-     if test "x${ac_cv_prog_cc_c99-no}" = xno; then
-       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-  /* For now, do not test the preprocessor; as of 2007 there are too many
-         implementations with broken preprocessors.  Perhaps this can
-         be revisited in 2012.  In the meantime, code should not expect
-         #if to work with literals wider than 32 bits.  */
-      /* Test literals.  */
-      long long int ll = 9223372036854775807ll;
-      long long int nll = -9223372036854775807LL;
-      unsigned long long int ull = 18446744073709551615ULL;
-      /* Test constant expressions.   */
-      typedef int a[((-9223372036854775807LL < 0 && 0 < 9223372036854775807ll)
-                     ? 1 : -1)];
-      typedef int b[(18446744073709551615ULL <= (unsigned long long int) -1
-                     ? 1 : -1)];
-      int i = 63;
-int
-main ()
-{
-/* Test availability of runtime routines for shift and division.  */
-      long long int llmax = 9223372036854775807ll;
-      unsigned long long int ullmax = 18446744073709551615ull;
-      return ((ll << 63) | (ll >> 63) | (ll < i) | (ll > i)
-              | (llmax / ll) | (llmax % ll)
-              | (ull << 63) | (ull >> 63) | (ull << i) | (ull >> i)
-              | (ullmax / ull) | (ullmax % ull));
-  ;
-  return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-else
-  ac_cv_type_unsigned_long_long_int=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-     fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_unsigned_long_long_int" >&5
-$as_echo "$ac_cv_type_unsigned_long_long_int" >&6; }
-  if test $ac_cv_type_unsigned_long_long_int = yes; then
-
-$as_echo "#define HAVE_UNSIGNED_LONG_LONG_INT 1" >>confdefs.h
 
-  fi
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for long long int" >&5
-$as_echo_n "checking for long long int... " >&6; }
-if ${ac_cv_type_long_long_int+:} false; then :
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler produces multi-arch binaries" >&5
+$as_echo_n "checking whether the compiler produces multi-arch binaries... " >&6; }
+if ${gl_cv_c_multiarch+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  ac_cv_type_long_long_int=yes
-      if test "x${ac_cv_prog_cc_c99-no}" = xno; then
-        ac_cv_type_long_long_int=$ac_cv_type_unsigned_long_long_int
-        if test $ac_cv_type_long_long_int = yes; then
-                                        if test "$cross_compiling" = yes; then :
-  :
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <limits.h>
-                 #ifndef LLONG_MAX
-                 # define HALF \
-                          (1LL << (sizeof (long long int) * CHAR_BIT - 2))
-                 # define LLONG_MAX (HALF - 1 + HALF)
-                 #endif
-int
-main ()
-{
-long long int n = 1;
-                 int i;
-                 for (i = 0; ; i++)
-                   {
-                     long long int m = n << i;
-                     if (m >> i != n)
-                       return 1;
-                     if (LLONG_MAX / 2 < m)
-                       break;
-                   }
-                 return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
-  ac_cv_type_long_long_int=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-        fi
-      fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_long_long_int" >&5
-$as_echo "$ac_cv_type_long_long_int" >&6; }
-  if test $ac_cv_type_long_long_int = yes; then
-
-$as_echo "#define HAVE_LONG_LONG_INT 1" >>confdefs.h
-
-  fi
-
-
-
-
-
-
-    gl_cv_c_multiarch=no
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+  gl_cv_c_multiarch=no
+     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #ifndef __APPLE_CC__
-         not a universal capable compiler
-        #endif
-        typedef int dummy;
+            not a universal capable compiler
+           #endif
+           typedef int dummy;
 
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
 
-               arch=
-     prev=
-     for word in ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}; do
-       if test -n "$prev"; then
-         case $word in
-           i?86 | x86_64 | ppc | ppc64)
-             if test -z "$arch" || test "$arch" = "$word"; then
-               arch="$word"
-             else
-               gl_cv_c_multiarch=yes
-             fi
-             ;;
-         esac
-         prev=
-       else
-         if test "x$word" = "x-arch"; then
-           prev=arch
-         fi
-       fi
-     done
+                        arch=
+        prev=
+        for word in ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}; do
+          if test -n "$prev"; then
+            case $word in
+              i?86 | x86_64 | ppc | ppc64 | arm | arm64)
+                if test -z "$arch" || test "$arch" = "$word"; then
+                  arch="$word"
+                else
+                  gl_cv_c_multiarch=yes
+                fi
+                ;;
+            esac
+            prev=
+          else
+            if test "x$word" = "x-arch"; then
+              prev=arch
+            fi
+          fi
+        done
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_c_multiarch" >&5
+$as_echo "$gl_cv_c_multiarch" >&6; }
   if test $gl_cv_c_multiarch = yes; then
     APPLE_UNIVERSAL_BUILD=1
   else
@@ -11536,18 +12008,10 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 
 
 
-  if test $ac_cv_type_long_long_int = yes; then
-    HAVE_LONG_LONG_INT=1
-  else
-    HAVE_LONG_LONG_INT=0
-  fi
+$as_echo "#define HAVE_LONG_LONG_INT 1" >>confdefs.h
 
 
-  if test $ac_cv_type_unsigned_long_long_int = yes; then
-    HAVE_UNSIGNED_LONG_LONG_INT=1
-  else
-    HAVE_UNSIGNED_LONG_LONG_INT=0
-  fi
+$as_echo "#define HAVE_UNSIGNED_LONG_LONG_INT 1" >>confdefs.h
 
 
 
@@ -11764,7 +12228,7 @@ uintmax_t j = UINTMAX_MAX;
 /* Check that SIZE_MAX has the correct type, if possible.  */
 #if 201112 <= __STDC_VERSION__
 int k = _Generic (SIZE_MAX, size_t: 0);
-#elif (2 <= __GNUC__ || defined __IBM__TYPEOF__ \
+#elif (2 <= __GNUC__ || 4 <= __clang_major__ || defined __IBM__TYPEOF__ \
        || (0x5110 <= __SUNPRO_C && !__STDC__))
 extern size_t k;
 extern __typeof__ (SIZE_MAX) k;
@@ -11948,12 +12412,12 @@ $as_echo "$gl_cv_header_working_stdint_h" >&6; }
   case "$gl_cv_header_working_stdint_h" in
     *yes)
       HAVE_C99_STDINT_H=1
-                  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stdint.h predates C++11" >&5
-$as_echo_n "checking whether stdint.h predates C++11... " >&6; }
-if ${gl_cv_header_stdint_predates_cxx11_h+:} false; then :
+                        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stdint.h works without ISO C predefines" >&5
+$as_echo_n "checking whether stdint.h works without ISO C predefines... " >&6; }
+if ${gl_cv_header_stdint_without_STDC_macros+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  gl_cv_header_stdint_predates_cxx11_h=yes
+  gl_cv_header_stdint_without_STDC_macros=no
          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -11985,14 +12449,15 @@ main ()
 }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_header_stdint_predates_cxx11_h=no
+  gl_cv_header_stdint_without_STDC_macros=yes
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_predates_cxx11_h" >&5
-$as_echo "$gl_cv_header_stdint_predates_cxx11_h" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_without_STDC_macros" >&5
+$as_echo "$gl_cv_header_stdint_without_STDC_macros" >&6; }
 
-      if test "$gl_cv_header_stdint_predates_cxx11_h" = yes; then
+      if test $gl_cv_header_stdint_without_STDC_macros = no; then
 
 $as_echo "#define __STDC_CONSTANT_MACROS 1" >>confdefs.h
 
@@ -12411,7 +12876,6 @@ fi
   REPLACE_STRTOUMAX=0;
   INT32_MAX_LT_INTMAX_MAX=1;
   INT64_MAX_EQ_LONG_MAX='defined _LP64';
-  PRI_MACROS_BROKEN=0;
   PRIPTR_PREFIX=__PRIPTR_PREFIX;
   UINT32_MAX_LT_UINTMAX_MAX=1;
   UINT64_MAX_EQ_ULONG_MAX='defined _LP64';
@@ -12507,63 +12971,6 @@ $as_echo "$gl_cv_next_inttypes_h" >&6; }
 
 
 
-  for ac_header in inttypes.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "inttypes.h" "ac_cv_header_inttypes_h" "$ac_includes_default"
-if test "x$ac_cv_header_inttypes_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_INTTYPES_H 1
-_ACEOF
-
-fi
-
-done
-
-  if test $ac_cv_header_inttypes_h = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the inttypes.h PRIxNN macros are broken" >&5
-$as_echo_n "checking whether the inttypes.h PRIxNN macros are broken... " >&6; }
-if ${gt_cv_inttypes_pri_broken+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <inttypes.h>
-#ifdef PRId32
-char *p = PRId32;
-#endif
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gt_cv_inttypes_pri_broken=no
-else
-  gt_cv_inttypes_pri_broken=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_inttypes_pri_broken" >&5
-$as_echo "$gt_cv_inttypes_pri_broken" >&6; }
-  fi
-  if test "$gt_cv_inttypes_pri_broken" = yes; then
-
-cat >>confdefs.h <<_ACEOF
-#define PRI_MACROS_BROKEN 1
-_ACEOF
-
-    PRI_MACROS_BROKEN=1
-  else
-    PRI_MACROS_BROKEN=0
-  fi
-
 
 
   GNULIB_NL_LANGINFO=0;
@@ -12575,6 +12982,7 @@ _ACEOF
 
   GNULIB_LOCALECONV=0;
   GNULIB_SETLOCALE=0;
+  GNULIB_SETLOCALE_NULL=0;
   GNULIB_DUPLOCALE=0;
   GNULIB_LOCALENAME=0;
     HAVE_NEWLOCALE=1;
@@ -12639,7 +13047,7 @@ else
 /* end confdefs.h.  */
 #include <stddef.h>
             unsigned int s = sizeof (max_align_t);
-            #if defined __GNUC__ || defined __IBM__ALIGNOF__
+            #if defined __GNUC__ || defined __clang__ || defined __IBM__ALIGNOF__
             int check1[2 * (__alignof__ (double) <= __alignof__ (max_align_t)) - 1];
             int check2[2 * (__alignof__ (long double) <= __alignof__ (max_align_t)) - 1];
             #endif
@@ -12792,6 +13200,55 @@ $as_echo "$gl_cv_next_stddef_h" >&6; }
 
 
 
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether locale.h defines locale_t" >&5
+$as_echo_n "checking whether locale.h defines locale_t... " >&6; }
+if ${gl_cv_header_locale_has_locale_t+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <locale.h>
+            locale_t x;
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_header_locale_has_locale_t=yes
+else
+  gl_cv_header_locale_has_locale_t=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_locale_has_locale_t" >&5
+$as_echo "$gl_cv_header_locale_has_locale_t" >&6; }
+
+
+  if test $ac_cv_header_xlocale_h = yes; then
+    HAVE_XLOCALE_H=1
+    if test $gl_cv_header_locale_has_locale_t = yes; then
+      gl_cv_header_locale_h_needs_xlocale_h=no
+    else
+      gl_cv_header_locale_h_needs_xlocale_h=yes
+    fi
+    HAVE_LOCALE_T=1
+  else
+    HAVE_XLOCALE_H=0
+    gl_cv_header_locale_h_needs_xlocale_h=no
+    if test $gl_cv_header_locale_has_locale_t = yes; then
+      HAVE_LOCALE_T=1
+    else
+      HAVE_LOCALE_T=0
+    fi
+  fi
+
+
+
 
   gl_threads_api=none
   LIBTHREAD=
@@ -12799,13 +13256,15 @@ $as_echo "$gl_cv_next_stddef_h" >&6; }
   LIBMULTITHREAD=
   LTLIBMULTITHREAD=
   if test "$gl_use_threads" != no; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether imported symbols can be declared weak" >&5
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether imported symbols can be declared weak" >&5
 $as_echo_n "checking whether imported symbols can be declared weak... " >&6; }
 if ${gl_cv_have_weak+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   gl_cv_have_weak=no
-              cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 extern void xyzzy ();
 #pragma weak xyzzy
@@ -12822,13 +13281,13 @@ if ac_fn_c_try_link "$LINENO"; then :
 fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
-       if test $gl_cv_have_weak = maybe; then
-                           if test "$cross_compiling" = yes; then :
-                          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+     if test $gl_cv_have_weak = maybe; then
+                     if test "$cross_compiling" = yes; then :
+                      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #ifdef __ELF__
-               Extensible Linking Format
-               #endif
+             Extensible Linking Format
+             #endif
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
@@ -12860,22 +13319,63 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
-       fi
-              case " $LDFLAGS " in
-         *" -static "*) gl_cv_have_weak=no ;;
-       esac
+     fi
+          case " $LDFLAGS " in
+       *" -static "*) gl_cv_have_weak=no ;;
+     esac
+                    case "$gl_cv_have_weak" in
+       *yes)
+         case "$host_os" in
+           freebsd* | dragonfly*)
+             : > conftest1.c
+             $CC $CPPFLAGS $CFLAGS $LDFLAGS -fPIC -shared -o libempty.so conftest1.c -lpthread >&5 2>&1
+             cat <<EOF > conftest2.c
+#include <pthread.h>
+#pragma weak pthread_mutexattr_gettype
+int main ()
+{
+  return (pthread_mutexattr_gettype != NULL);
+}
+EOF
+             $CC $CPPFLAGS $CFLAGS $LDFLAGS -o conftest conftest2.c libempty.so >&5 2>&1 \
+               || gl_cv_have_weak=no
+             rm -f conftest1.c libempty.so conftest2.c conftest
+             ;;
+         esac
+         ;;
+     esac
 
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_weak" >&5
 $as_echo "$gl_cv_have_weak" >&6; }
+  case "$gl_cv_have_weak" in
+    *yes)
+
+$as_echo "#define HAVE_WEAK_SYMBOLS 1" >>confdefs.h
+
+      ;;
+  esac
+
     if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then
 
       :
     fi
-    if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then
-      # On OSF/1, the compiler needs the flag -pthread or -D_REENTRANT so that
-      # it groks <pthread.h>. It's added above, in gl_THREADLIB_EARLY_BODY.
-      ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default"
+    if test "$gl_use_threads" = isoc || test "$gl_use_threads" = isoc+posix; then
+
+      gl_have_isoc_threads="$ac_cv_header_threads_h"
+    fi
+    if test "$gl_use_threads" = yes \
+       || test "$gl_use_threads" = posix \
+       || test "$gl_use_threads" = isoc+posix; then
+
+
+  if test -z "$gl_pthreadlib_body_done"; then
+    gl_pthread_api=no
+    LIBPTHREAD=
+    LIBPMULTITHREAD=
+    # On OSF/1, the compiler needs the flag -pthread or -D_REENTRANT so that
+    # it groks <pthread.h>. It's added above, in gl_ANYTHREADLIB_EARLY.
+    ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default"
 if test "x$ac_cv_header_pthread_h" = xyes; then :
   gl_have_pthread_h=yes
 else
@@ -12883,53 +13383,52 @@ else
 fi
 
 
-      if test "$gl_have_pthread_h" = yes; then
-        # Other possible tests:
-        #   -lpthreads (FSU threads, PCthreads)
-        #   -lgthreads
-        gl_have_pthread=
-        # Test whether both pthread_mutex_lock and pthread_mutexattr_init exist
-        # in libc. IRIX 6.5 has the first one in both libc and libpthread, but
-        # the second one only in libpthread, and lock.c needs it.
-        #
-        # If -pthread works, prefer it to -lpthread, since Ubuntu 14.04
-        # needs -pthread for some reason.  See:
-        # https://lists.gnu.org/r/bug-gnulib/2014-09/msg00023.html
-        save_LIBS=$LIBS
-        for gl_pthread in '' '-pthread'; do
-          LIBS="$LIBS $gl_pthread"
-          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+    if test "$gl_have_pthread_h" = yes; then
+      # Other possible tests:
+      #   -lpthreads (FSU threads, PCthreads)
+      #   -lgthreads
+      # Test whether both pthread_mutex_lock and pthread_mutexattr_init exist
+      # in libc. IRIX 6.5 has the first one in both libc and libpthread, but
+      # the second one only in libpthread, and lock.c needs it.
+      #
+      # If -pthread works, prefer it to -lpthread, since Ubuntu 14.04
+      # needs -pthread for some reason.  See:
+      # https://lists.gnu.org/r/bug-gnulib/2014-09/msg00023.html
+      save_LIBS=$LIBS
+      for gl_pthread in '' '-pthread'; do
+        LIBS="$LIBS $gl_pthread"
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <pthread.h>
-                 pthread_mutex_t m;
-                 pthread_mutexattr_t ma;
+               pthread_mutex_t m;
+               pthread_mutexattr_t ma;
 
 int
 main ()
 {
 pthread_mutex_lock (&m);
-                 pthread_mutexattr_init (&ma);
+               pthread_mutexattr_init (&ma);
   ;
   return 0;
 }
 _ACEOF
 if ac_fn_c_try_link "$LINENO"; then :
-  gl_have_pthread=yes
-             LIBTHREAD=$gl_pthread LTLIBTHREAD=$gl_pthread
-             LIBMULTITHREAD=$gl_pthread LTLIBMULTITHREAD=$gl_pthread
+  gl_pthread_api=yes
+           LIBPTHREAD=$gl_pthread
+           LIBPMULTITHREAD=$gl_pthread
 fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
-          LIBS=$save_LIBS
-          test -n "$gl_have_pthread" && break
-        done
+        LIBS=$save_LIBS
+        test $gl_pthread_api = yes && break
+      done
 
-        # Test for libpthread by looking for pthread_kill. (Not pthread_self,
-        # since it is defined as a macro on OSF/1.)
-        if test -n "$gl_have_pthread" && test -z "$LIBTHREAD"; then
-          # The program links fine without libpthread. But it may actually
-          # need to link with libpthread in order to create multiple threads.
-          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5
+      # Test for libpthread by looking for pthread_kill. (Not pthread_self,
+      # since it is defined as a macro on OSF/1.)
+      if test $gl_pthread_api = yes && test -z "$LIBPTHREAD"; then
+        # The program links fine without libpthread. But it may actually
+        # need to link with libpthread in order to create multiple threads.
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5
 $as_echo_n "checking for pthread_kill in -lpthread... " >&6; }
 if ${ac_cv_lib_pthread_pthread_kill+:} false; then :
   $as_echo_n "(cached) " >&6
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5
 $as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; }
 if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then :
-  LIBMULTITHREAD=-lpthread LTLIBMULTITHREAD=-lpthread
-             # On Solaris and HP-UX, most pthread functions exist also in libc.
-             # Therefore pthread_in_use() needs to actually try to create a
-             # thread: pthread_create from libc will fail, whereas
-             # pthread_create will actually create a thread.
-             # On Solaris 10 or newer, this test is no longer needed, because
-             # libc contains the fully functional pthread functions.
-             case "$host_os" in
-               solaris | solaris2.1-9 | solaris2.1-9.* | hpux*)
+  LIBPMULTITHREAD=-lpthread
+           # On Solaris and HP-UX, most pthread functions exist also in libc.
+           # Therefore pthread_in_use() needs to actually try to create a
+           # thread: pthread_create from libc will fail, whereas
+           # pthread_create will actually create a thread.
+           # On Solaris 10 or newer, this test is no longer needed, because
+           # libc contains the fully functional pthread functions.
+           case "$host_os" in
+             solaris | solaris2.1-9 | solaris2.1-9.* | hpux*)
 
 $as_echo "#define PTHREAD_IN_USE_DETECTION_HARD 1" >>confdefs.h
 
-             esac
+           esac
 
 fi
 
-        elif test -z "$gl_have_pthread"; then
-          # Some library is needed. Try libpthread and libc_r.
-          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5
+      elif test $gl_pthread_api != yes; then
+        # Some library is needed. Try libpthread and libc_r.
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5
 $as_echo_n "checking for pthread_kill in -lpthread... " >&6; }
 if ${ac_cv_lib_pthread_pthread_kill+:} false; then :
   $as_echo_n "(cached) " >&6
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5
 $as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; }
 if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then :
-  gl_have_pthread=yes
-             LIBTHREAD=-lpthread LTLIBTHREAD=-lpthread
-             LIBMULTITHREAD=-lpthread LTLIBMULTITHREAD=-lpthread
+  gl_pthread_api=yes
+           LIBPTHREAD=-lpthread
+           LIBPMULTITHREAD=-lpthread
 fi
 
-          if test -z "$gl_have_pthread"; then
-            # For FreeBSD 4.
-            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lc_r" >&5
+        if test $gl_pthread_api != yes; then
+          # For FreeBSD 4.
+          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lc_r" >&5
 $as_echo_n "checking for pthread_kill in -lc_r... " >&6; }
 if ${ac_cv_lib_c_r_pthread_kill+:} false; then :
   $as_echo_n "(cached) " >&6
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_r_pthread_kill" >&5
 $as_echo "$ac_cv_lib_c_r_pthread_kill" >&6; }
 if test "x$ac_cv_lib_c_r_pthread_kill" = xyes; then :
-  gl_have_pthread=yes
-               LIBTHREAD=-lc_r LTLIBTHREAD=-lc_r
-               LIBMULTITHREAD=-lc_r LTLIBMULTITHREAD=-lc_r
+  gl_pthread_api=yes
+             LIBPTHREAD=-lc_r
+             LIBPMULTITHREAD=-lc_r
 fi
 
-          fi
         fi
-        if test -n "$gl_have_pthread"; then
+      fi
+    fi
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads API is available" >&5
+$as_echo_n "checking whether POSIX threads API is available... " >&6; }
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_pthread_api" >&5
+$as_echo "$gl_pthread_api" >&6; }
+
+
+    if test $gl_pthread_api = yes; then
+
+$as_echo "#define HAVE_PTHREAD_API 1" >>confdefs.h
+
+    fi
+
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <sched.h>
+int
+main ()
+{
+sched_yield ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  LIB_SCHED_YIELD=
+
+else
+         { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lrt" >&5
+$as_echo_n "checking for sched_yield in -lrt... " >&6; }
+if ${ac_cv_lib_rt_sched_yield+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lrt  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char sched_yield ();
+int
+main ()
+{
+return sched_yield ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_rt_sched_yield=yes
+else
+  ac_cv_lib_rt_sched_yield=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_sched_yield" >&5
+$as_echo "$ac_cv_lib_rt_sched_yield" >&6; }
+if test "x$ac_cv_lib_rt_sched_yield" = xyes; then :
+  LIB_SCHED_YIELD=-lrt
+else
+            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lposix4" >&5
+$as_echo_n "checking for sched_yield in -lposix4... " >&6; }
+if ${ac_cv_lib_posix4_sched_yield+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lposix4  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char sched_yield ();
+int
+main ()
+{
+return sched_yield ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_posix4_sched_yield=yes
+else
+  ac_cv_lib_posix4_sched_yield=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix4_sched_yield" >&5
+$as_echo "$ac_cv_lib_posix4_sched_yield" >&6; }
+if test "x$ac_cv_lib_posix4_sched_yield" = xyes; then :
+  LIB_SCHED_YIELD=-lposix4
+fi
+
+fi
+
+
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+
+
+    gl_pthreadlib_body_done=done
+  fi
+
+      LIBTHREAD=$LIBPTHREAD LTLIBTHREAD=$LIBPTHREAD
+      LIBMULTITHREAD=$LIBPMULTITHREAD LTLIBMULTITHREAD=$LIBPMULTITHREAD
+      if test $gl_pthread_api = yes; then
+        if test "$gl_use_threads" = isoc+posix && test "$gl_have_isoc_threads" = yes; then
+          gl_threads_api='isoc+posix'
+
+$as_echo "#define USE_ISOC_AND_POSIX_THREADS 1" >>confdefs.h
+
+          LIBTHREAD= LTLIBTHREAD=
+        else
           gl_threads_api=posix
 
 $as_echo "#define USE_POSIX_THREADS 1" >>confdefs.h
@@ -13082,14 +13708,442 @@ $as_echo "#define USE_POSIX_THREADS 1" >>confdefs.h
 
 $as_echo "#define USE_POSIX_THREADS_WEAK 1" >>confdefs.h
 
-              LIBTHREAD=
-              LTLIBTHREAD=
+              LIBTHREAD= LTLIBTHREAD=
+            else
+              case "$host_os" in
+                freebsd* | dragonfly*)
+                  if test "x$LIBTHREAD" != "x$LIBMULTITHREAD"; then
+
+$as_echo "#define PTHREAD_IN_USE_DETECTION_HARD 1" >>confdefs.h
+
+                  fi
+                  ;;
+              esac
             fi
           fi
         fi
       fi
     fi
-    if test -z "$gl_have_pthread"; then
+    if test $gl_threads_api = none; then
+      if test "$gl_use_threads" = isoc && test "$gl_have_isoc_threads" = yes; then
+
+
+
+  if test -z "$gl_stdthreadlib_body_done"; then
+
+
+    case "$host_os" in
+      mingw*)
+        LIBSTDTHREAD=
+        ;;
+      *)
+
+
+  if test -z "$gl_pthreadlib_body_done"; then
+    gl_pthread_api=no
+    LIBPTHREAD=
+    LIBPMULTITHREAD=
+    # On OSF/1, the compiler needs the flag -pthread or -D_REENTRANT so that
+    # it groks <pthread.h>. It's added above, in gl_ANYTHREADLIB_EARLY.
+    ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default"
+if test "x$ac_cv_header_pthread_h" = xyes; then :
+  gl_have_pthread_h=yes
+else
+  gl_have_pthread_h=no
+fi
+
+
+    if test "$gl_have_pthread_h" = yes; then
+      # Other possible tests:
+      #   -lpthreads (FSU threads, PCthreads)
+      #   -lgthreads
+      # Test whether both pthread_mutex_lock and pthread_mutexattr_init exist
+      # in libc. IRIX 6.5 has the first one in both libc and libpthread, but
+      # the second one only in libpthread, and lock.c needs it.
+      #
+      # If -pthread works, prefer it to -lpthread, since Ubuntu 14.04
+      # needs -pthread for some reason.  See:
+      # https://lists.gnu.org/r/bug-gnulib/2014-09/msg00023.html
+      save_LIBS=$LIBS
+      for gl_pthread in '' '-pthread'; do
+        LIBS="$LIBS $gl_pthread"
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <pthread.h>
+               pthread_mutex_t m;
+               pthread_mutexattr_t ma;
+
+int
+main ()
+{
+pthread_mutex_lock (&m);
+               pthread_mutexattr_init (&ma);
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  gl_pthread_api=yes
+           LIBPTHREAD=$gl_pthread
+           LIBPMULTITHREAD=$gl_pthread
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+        LIBS=$save_LIBS
+        test $gl_pthread_api = yes && break
+      done
+
+      # Test for libpthread by looking for pthread_kill. (Not pthread_self,
+      # since it is defined as a macro on OSF/1.)
+      if test $gl_pthread_api = yes && test -z "$LIBPTHREAD"; then
+        # The program links fine without libpthread. But it may actually
+        # need to link with libpthread in order to create multiple threads.
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5
+$as_echo_n "checking for pthread_kill in -lpthread... " >&6; }
+if ${ac_cv_lib_pthread_pthread_kill+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lpthread  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char pthread_kill ();
+int
+main ()
+{
+return pthread_kill ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_pthread_pthread_kill=yes
+else
+  ac_cv_lib_pthread_pthread_kill=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5
+$as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; }
+if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then :
+  LIBPMULTITHREAD=-lpthread
+           # On Solaris and HP-UX, most pthread functions exist also in libc.
+           # Therefore pthread_in_use() needs to actually try to create a
+           # thread: pthread_create from libc will fail, whereas
+           # pthread_create will actually create a thread.
+           # On Solaris 10 or newer, this test is no longer needed, because
+           # libc contains the fully functional pthread functions.
+           case "$host_os" in
+             solaris | solaris2.1-9 | solaris2.1-9.* | hpux*)
+
+$as_echo "#define PTHREAD_IN_USE_DETECTION_HARD 1" >>confdefs.h
+
+           esac
+
+fi
+
+      elif test $gl_pthread_api != yes; then
+        # Some library is needed. Try libpthread and libc_r.
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5
+$as_echo_n "checking for pthread_kill in -lpthread... " >&6; }
+if ${ac_cv_lib_pthread_pthread_kill+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lpthread  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char pthread_kill ();
+int
+main ()
+{
+return pthread_kill ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_pthread_pthread_kill=yes
+else
+  ac_cv_lib_pthread_pthread_kill=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5
+$as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; }
+if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then :
+  gl_pthread_api=yes
+           LIBPTHREAD=-lpthread
+           LIBPMULTITHREAD=-lpthread
+fi
+
+        if test $gl_pthread_api != yes; then
+          # For FreeBSD 4.
+          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lc_r" >&5
+$as_echo_n "checking for pthread_kill in -lc_r... " >&6; }
+if ${ac_cv_lib_c_r_pthread_kill+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lc_r  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char pthread_kill ();
+int
+main ()
+{
+return pthread_kill ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_c_r_pthread_kill=yes
+else
+  ac_cv_lib_c_r_pthread_kill=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_r_pthread_kill" >&5
+$as_echo "$ac_cv_lib_c_r_pthread_kill" >&6; }
+if test "x$ac_cv_lib_c_r_pthread_kill" = xyes; then :
+  gl_pthread_api=yes
+             LIBPTHREAD=-lc_r
+             LIBPMULTITHREAD=-lc_r
+fi
+
+        fi
+      fi
+    fi
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads API is available" >&5
+$as_echo_n "checking whether POSIX threads API is available... " >&6; }
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_pthread_api" >&5
+$as_echo "$gl_pthread_api" >&6; }
+
+
+    if test $gl_pthread_api = yes; then
+
+$as_echo "#define HAVE_PTHREAD_API 1" >>confdefs.h
+
+    fi
+
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <sched.h>
+int
+main ()
+{
+sched_yield ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  LIB_SCHED_YIELD=
+
+else
+         { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lrt" >&5
+$as_echo_n "checking for sched_yield in -lrt... " >&6; }
+if ${ac_cv_lib_rt_sched_yield+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lrt  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char sched_yield ();
+int
+main ()
+{
+return sched_yield ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_rt_sched_yield=yes
+else
+  ac_cv_lib_rt_sched_yield=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_sched_yield" >&5
+$as_echo "$ac_cv_lib_rt_sched_yield" >&6; }
+if test "x$ac_cv_lib_rt_sched_yield" = xyes; then :
+  LIB_SCHED_YIELD=-lrt
+else
+            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lposix4" >&5
+$as_echo_n "checking for sched_yield in -lposix4... " >&6; }
+if ${ac_cv_lib_posix4_sched_yield+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lposix4  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char sched_yield ();
+int
+main ()
+{
+return sched_yield ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_posix4_sched_yield=yes
+else
+  ac_cv_lib_posix4_sched_yield=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix4_sched_yield" >&5
+$as_echo "$ac_cv_lib_posix4_sched_yield" >&6; }
+if test "x$ac_cv_lib_posix4_sched_yield" = xyes; then :
+  LIB_SCHED_YIELD=-lposix4
+fi
+
+fi
+
+
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+
+
+    gl_pthreadlib_body_done=done
+  fi
+
+        if test $ac_cv_header_threads_h = yes; then
+                                                  for ac_func in thrd_create
+do :
+  ac_fn_c_check_func "$LINENO" "thrd_create" "ac_cv_func_thrd_create"
+if test "x$ac_cv_func_thrd_create" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_THRD_CREATE 1
+_ACEOF
+
+fi
+done
+
+          if test $ac_cv_func_thrd_create = yes; then
+            LIBSTDTHREAD=
+          else
+            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for thrd_create in -lstdthreads" >&5
+$as_echo_n "checking for thrd_create in -lstdthreads... " >&6; }
+if ${ac_cv_lib_stdthreads_thrd_create+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lstdthreads  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char thrd_create ();
+int
+main ()
+{
+return thrd_create ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_stdthreads_thrd_create=yes
+else
+  ac_cv_lib_stdthreads_thrd_create=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_stdthreads_thrd_create" >&5
+$as_echo "$ac_cv_lib_stdthreads_thrd_create" >&6; }
+if test "x$ac_cv_lib_stdthreads_thrd_create" = xyes; then :
+
+              LIBSTDTHREAD='-lstdthreads -lpthread'
+
+else
+
+                            LIBSTDTHREAD="$LIBPMULTITHREAD"
+
+fi
+
+          fi
+        else
+                    LIBSTDTHREAD="$LIBPMULTITHREAD $LIB_SCHED_YIELD"
+        fi
+        ;;
+    esac
+
+
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ISO C threads API is available" >&5
+$as_echo_n "checking whether ISO C threads API is available... " >&6; }
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_threads_h" >&5
+$as_echo "$ac_cv_header_threads_h" >&6; }
+    gl_stdthreadlib_body_done=done
+  fi
+
+        LIBTHREAD=$LIBSTDTHREAD LTLIBTHREAD=$LIBSTDTHREAD
+        LIBMULTITHREAD=$LIBSTDTHREAD LTLIBMULTITHREAD=$LIBSTDTHREAD
+        gl_threads_api=isoc
+
+$as_echo "#define USE_ISOC_THREADS 1" >>confdefs.h
+
+      fi
+    fi
+    if test $gl_threads_api = none; then
       case "$gl_use_threads" in
         yes | windows | win32) # The 'win32' is for backward compatibility.
           if { case "$host_os" in
@@ -13238,8 +14292,8 @@ else
             # Guess no on native Windows.
             gl_cv_func_lstat_dereferences_slashed_symlink="guessing no" ;;
           *)
-            # If we don't know, assume the worst.
-            gl_cv_func_lstat_dereferences_slashed_symlink="guessing no" ;;
+            # If we don't know, obey --enable-cross-guesses.
+            gl_cv_func_lstat_dereferences_slashed_symlink="$gl_cross_guess_normal" ;;
         esac
 
 else
@@ -13356,19 +14410,7 @@ $as_echo "$ac_cv_path_SED" >&6; }
 
 
 
-      for ac_header in stdlib.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default"
-if test "x$ac_cv_header_stdlib_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_STDLIB_H 1
-_ACEOF
-
-fi
-
-done
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5
 $as_echo_n "checking for GNU libc compatible malloc... " >&6; }
 if ${ac_cv_func_malloc_0_nonnull+:} false; then :
   $as_echo_n "(cached) " >&6
@@ -13379,18 +14421,14 @@ else
           *-gnu* | gnu* | *-musl* | freebsd* | netbsd* | openbsd* \
           | hpux* | solaris* | cygwin* | mingw*)
             ac_cv_func_malloc_0_nonnull="guessing yes" ;;
-          # If we don't know, assume the worst.
-          *) ac_cv_func_malloc_0_nonnull="guessing no" ;;
+          # If we don't know, obey --enable-cross-guesses.
+          *) ac_cv_func_malloc_0_nonnull="$gl_cross_guess_normal" ;;
         esac
 
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#if defined STDC_HEADERS || defined HAVE_STDLIB_H
-            # include <stdlib.h>
-            #else
-            char *malloc ();
-            #endif
+#include <stdlib.h>
 
 int
 main ()
@@ -13631,10 +14669,9 @@ $as_echo "$gt_cv_locale_ja" >&6; }
 
 
 
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5
-$as_echo_n "checking for a transitional chinese locale... " >&6; }
-if ${gt_cv_locale_zh_CN+:} false; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5
+$as_echo_n "checking for a french Unicode locale... " >&6; }
+if ${gt_cv_locale_fr_utf8+:} false; then :
   $as_echo_n "(cached) " >&6
 else
 
@@ -13642,7 +14679,6 @@ else
 /* end confdefs.h.  */
 
 #include <locale.h>
-#include <stdlib.h>
 #include <time.h>
 #if HAVE_LANGINFO_CODESET
 # include <langinfo.h>
@@ -13651,14 +14687,11 @@ else
 #include <string.h>
 struct tm t;
 char buf[16];
-int main ()
-{
+int main () {
   /* On BeOS and Haiku, locales are not implemented in libc.  Rather, libintl
      imitates locale dependent behaviour by looking at the environment
      variables, and all locales use the UTF-8 encoding.  */
-#if defined __BEOS__ || defined __HAIKU__
-  return 1;
-#else
+#if !(defined __BEOS__ || defined __HAIKU__)
   /* Check whether the given locale name is recognized by the system.  */
 # if defined _WIN32 && !defined __CYGWIN__
   /* On native Windows, setlocale(category, "") looks at the system settings,
@@ -13676,14 +14709,11 @@ 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.
-     On MirBSD 10, when an unsupported locale is specified, setlocale()
-     succeeds but then nl_langinfo(CODESET) is "UTF-8".  */
+     some unit tests fail.  */
 # if HAVE_LANGINFO_CODESET
   {
     const char *cs = nl_langinfo (CODESET);
-    if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0
-        || strcmp (cs, "UTF-8") == 0)
+    if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0)
       return 1;
   }
 # endif
@@ -13693,22 +14723,21 @@ int main ()
      LC_ALL is set on the command line.  */
   if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1;
 # endif
-  /* Check whether in a month name, no byte in the range 0x80..0x9F occurs.
-     This excludes the UTF-8 encoding (except on MirBSD).  */
-  {
-    const char *p;
-    t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4;
-    if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1;
-    for (p = buf; *p != '\0'; p++)
-      if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0)
-        return 1;
-  }
-  /* Check whether a typical GB18030 multibyte sequence is recognized as a
-     single wide character.  This excludes the GB2312 and GBK encodings.  */
-  if (mblen ("\203\062\332\066", 5) != 4)
-    return 1;
-  return 0;
+  /* Check whether in the abbreviation of the second month, the second
+     character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is
+     two bytes long, with UTF-8 encoding.  */
+  t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4;
+  if (strftime (buf, sizeof (buf), "%b", &t) < 4
+      || buf[1] != (char) 0xc3 || buf[2] != (char) 0xa9 || buf[3] != 'v')
+    return 1;
+#endif
+#if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy.  */
+  /* Check whether the decimal separator is a comma.
+     On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point
+     are nl_langinfo(RADIXCHAR) are both ".".  */
+  if (localeconv () ->decimal_point[0] != ',') return 1;
 #endif
+  return 0;
 }
 
 _ACEOF
@@ -13726,56 +14755,52 @@ _ACEOF
         # and similar.
         mingw*)
           # Test for the hypothetical native Windows locale name.
-          if (LC_ALL=Chinese_China.54936 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then
-            gt_cv_locale_zh_CN=Chinese_China.54936
+          if (LC_ALL=French_France.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then
+            gt_cv_locale_fr_utf8=French_France.65001
           else
             # None found.
-            gt_cv_locale_zh_CN=none
+            gt_cv_locale_fr_utf8=none
           fi
           ;;
-        solaris2.8)
-          # On Solaris 8, the locales zh_CN.GB18030, zh_CN.GBK, zh.GBK are
-          # broken. One witness is the test case in gl_MBRTOWC_SANITYCHECK.
-          # Another witness is that "LC_ALL=zh_CN.GB18030 bash -c true" dumps core.
-          gt_cv_locale_zh_CN=none
-          ;;
         *)
           # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because
           # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the
           # configure script would override the LC_ALL setting. Likewise for
           # LC_CTYPE, which is also set at the beginning of the configure script.
-          # Test for the locale name without encoding suffix.
-          if (LC_ALL=zh_CN LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then
-            gt_cv_locale_zh_CN=zh_CN
+          # Test for the usual locale name.
+          if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then
+            gt_cv_locale_fr_utf8=fr_FR
           else
             # Test for the locale name with explicit encoding suffix.
-            if (LC_ALL=zh_CN.GB18030 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then
-              gt_cv_locale_zh_CN=zh_CN.GB18030
+            if (LC_ALL=fr_FR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then
+              gt_cv_locale_fr_utf8=fr_FR.UTF-8
             else
-              # None found.
-              gt_cv_locale_zh_CN=none
+              # Test for the Solaris 7 locale name.
+              if (LC_ALL=fr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then
+                gt_cv_locale_fr_utf8=fr.UTF-8
+              else
+                # None found.
+                gt_cv_locale_fr_utf8=none
+              fi
             fi
           fi
           ;;
       esac
-    else
-      # If there was a link error, due to mblen(), the system is so old that
-      # it certainly doesn't have a chinese locale.
-      gt_cv_locale_zh_CN=none
     fi
     rm -fr conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_zh_CN" >&5
-$as_echo "$gt_cv_locale_zh_CN" >&6; }
-  LOCALE_ZH_CN=$gt_cv_locale_zh_CN
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr_utf8" >&5
+$as_echo "$gt_cv_locale_fr_utf8" >&6; }
+  LOCALE_FR_UTF8=$gt_cv_locale_fr_utf8
 
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5
-$as_echo_n "checking for a french Unicode locale... " >&6; }
-if ${gt_cv_locale_fr_utf8+:} false; then :
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5
+$as_echo_n "checking for a transitional chinese locale... " >&6; }
+if ${gt_cv_locale_zh_CN+:} false; then :
   $as_echo_n "(cached) " >&6
 else
 
@@ -13783,6 +14808,7 @@ else
 /* end confdefs.h.  */
 
 #include <locale.h>
+#include <stdlib.h>
 #include <time.h>
 #if HAVE_LANGINFO_CODESET
 # include <langinfo.h>
@@ -13791,11 +14817,14 @@ else
 #include <string.h>
 struct tm t;
 char buf[16];
-int main () {
+int main ()
+{
   /* On BeOS and Haiku, locales are not implemented in libc.  Rather, libintl
      imitates locale dependent behaviour by looking at the environment
      variables, and all locales use the UTF-8 encoding.  */
-#if !(defined __BEOS__ || defined __HAIKU__)
+#if defined __BEOS__ || defined __HAIKU__
+  return 1;
+#else
   /* Check whether the given locale name is recognized by the system.  */
 # if defined _WIN32 && !defined __CYGWIN__
   /* On native Windows, setlocale(category, "") looks at the system settings,
@@ -13813,11 +14842,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
@@ -13827,21 +14859,22 @@ int main () {
      LC_ALL is set on the command line.  */
   if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1;
 # endif
-  /* Check whether in the abbreviation of the second month, the second
-     character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is
-     two bytes long, with UTF-8 encoding.  */
-  t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4;
-  if (strftime (buf, sizeof (buf), "%b", &t) < 4
-      || buf[1] != (char) 0xc3 || buf[2] != (char) 0xa9 || buf[3] != 'v')
+  /* Check whether in a month name, no byte in the range 0x80..0x9F occurs.
+     This excludes the UTF-8 encoding (except on MirBSD).  */
+  {
+    const char *p;
+    t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4;
+    if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1;
+    for (p = buf; *p != '\0'; p++)
+      if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0)
+        return 1;
+  }
+  /* Check whether a typical GB18030 multibyte sequence is recognized as a
+     single wide character.  This excludes the GB2312 and GBK encodings.  */
+  if (mblen ("\203\062\332\066", 5) != 4)
     return 1;
-#endif
-#if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy.  */
-  /* Check whether the decimal separator is a comma.
-     On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point
-     are nl_langinfo(RADIXCHAR) are both ".".  */
-  if (localeconv () ->decimal_point[0] != ',') return 1;
-#endif
   return 0;
+#endif
 }
 
 _ACEOF
@@ -13859,44 +14892,49 @@ _ACEOF
         # and similar.
         mingw*)
           # Test for the hypothetical native Windows locale name.
-          if (LC_ALL=French_France.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then
-            gt_cv_locale_fr_utf8=French_France.65001
+          if (LC_ALL=Chinese_China.54936 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then
+            gt_cv_locale_zh_CN=Chinese_China.54936
           else
             # None found.
-            gt_cv_locale_fr_utf8=none
+            gt_cv_locale_zh_CN=none
           fi
           ;;
+        solaris2.8)
+          # On Solaris 8, the locales zh_CN.GB18030, zh_CN.GBK, zh.GBK are
+          # broken. One witness is the test case in gl_MBRTOWC_SANITYCHECK.
+          # Another witness is that "LC_ALL=zh_CN.GB18030 bash -c true" dumps core.
+          gt_cv_locale_zh_CN=none
+          ;;
         *)
           # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because
           # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the
           # configure script would override the LC_ALL setting. Likewise for
           # LC_CTYPE, which is also set at the beginning of the configure script.
-          # Test for the usual locale name.
-          if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then
-            gt_cv_locale_fr_utf8=fr_FR
+          # Test for the locale name without encoding suffix.
+          if (LC_ALL=zh_CN LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then
+            gt_cv_locale_zh_CN=zh_CN
           else
             # Test for the locale name with explicit encoding suffix.
-            if (LC_ALL=fr_FR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then
-              gt_cv_locale_fr_utf8=fr_FR.UTF-8
+            if (LC_ALL=zh_CN.GB18030 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then
+              gt_cv_locale_zh_CN=zh_CN.GB18030
             else
-              # Test for the Solaris 7 locale name.
-              if (LC_ALL=fr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then
-                gt_cv_locale_fr_utf8=fr.UTF-8
-              else
-                # None found.
-                gt_cv_locale_fr_utf8=none
-              fi
+              # None found.
+              gt_cv_locale_zh_CN=none
             fi
           fi
           ;;
       esac
+    else
+      # If there was a link error, due to mblen(), the system is so old that
+      # it certainly doesn't have a chinese locale.
+      gt_cv_locale_zh_CN=none
     fi
     rm -fr conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr_utf8" >&5
-$as_echo "$gt_cv_locale_fr_utf8" >&6; }
-  LOCALE_FR_UTF8=$gt_cv_locale_fr_utf8
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_zh_CN" >&5
+$as_echo "$gt_cv_locale_zh_CN" >&6; }
+  LOCALE_ZH_CN=$gt_cv_locale_zh_CN
 
 
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
@@ -14024,6 +15062,72 @@ $as_echo "#define HAVE_MINMAX_IN_SYS_PARAM_H 1" >>confdefs.h
 
 
 
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for O_CLOEXEC" >&5
+$as_echo_n "checking for O_CLOEXEC... " >&6; }
+if ${gl_cv_macro_O_CLOEXEC+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <fcntl.h>
+                          #ifndef O_CLOEXEC
+                            choke me;
+                          #endif
+
+int
+main ()
+{
+return O_CLOEXEC;
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_macro_O_CLOEXEC=yes
+else
+  gl_cv_macro_O_CLOEXEC=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_macro_O_CLOEXEC" >&5
+$as_echo "$gl_cv_macro_O_CLOEXEC" >&6; }
+
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for promoted mode_t type" >&5
+$as_echo_n "checking for promoted mode_t type... " >&6; }
+if ${gl_cv_promoted_mode_t+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+
+                cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <sys/types.h>
+int
+main ()
+{
+typedef int array[2 * (sizeof (mode_t) < sizeof (int)) - 1];
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_promoted_mode_t='int'
+else
+  gl_cv_promoted_mode_t='mode_t'
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_promoted_mode_t" >&5
+$as_echo "$gl_cv_promoted_mode_t" >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define PROMOTED_MODE_T $gl_cv_promoted_mode_t
+_ACEOF
+
+
 ac_fn_c_check_decl "$LINENO" "alarm" "ac_cv_have_decl_alarm" "$ac_includes_default"
 if test "x$ac_cv_have_decl_alarm" = xyes; then :
   ac_have_decl=1
@@ -14113,6 +15217,8 @@ $as_echo "#define ssize_t int" >>confdefs.h
 
 
 
+
+
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdbool.h that conforms to C99" >&5
 $as_echo_n "checking for stdbool.h that conforms to C99... " >&6; }
 if ${ac_cv_header_stdbool_h+:} false; then :
@@ -14262,7 +15368,8 @@ fi
   GNULIB_VPRINTF_POSIX=0;
   GNULIB_VSNPRINTF=0;
   GNULIB_VSPRINTF_POSIX=0;
-    HAVE_DECL_FPURGE=1;
+    HAVE_DECL_FCLOSEALL=1;
+  HAVE_DECL_FPURGE=1;
   HAVE_DECL_FSEEKO=1;
   HAVE_DECL_FTELLO=1;
   HAVE_DECL_GETDELIM=1;
   REPLACE_VSNPRINTF=0;
   REPLACE_VSPRINTF=0;
 
+ac_fn_c_check_decl "$LINENO" "fcloseall" "ac_cv_have_decl_fcloseall" "$ac_includes_default"
+if test "x$ac_cv_have_decl_fcloseall" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_FCLOSEALL $ac_have_decl
+_ACEOF
+
+ac_fn_c_check_decl "$LINENO" "ecvt" "ac_cv_have_decl_ecvt" "$ac_includes_default"
+if test "x$ac_cv_have_decl_ecvt" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_ECVT $ac_have_decl
+_ACEOF
+
+ac_fn_c_check_decl "$LINENO" "fcvt" "ac_cv_have_decl_fcvt" "$ac_includes_default"
+if test "x$ac_cv_have_decl_fcvt" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_FCVT $ac_have_decl
+_ACEOF
+
+ac_fn_c_check_decl "$LINENO" "gcvt" "ac_cv_have_decl_gcvt" "$ac_includes_default"
+if test "x$ac_cv_have_decl_gcvt" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_GCVT $ac_have_decl
+_ACEOF
+
 
   GNULIB_EXPLICIT_BZERO=0;
   GNULIB_FFSL=0;
   GNULIB_MBSTOK_R=0;
   GNULIB_STRERROR=0;
   GNULIB_STRERROR_R=0;
+  GNULIB_STRERRORNAME_NP=0;
+  GNULIB_SIGABBREV_NP=0;
+  GNULIB_SIGDESCR_NP=0;
   GNULIB_STRSIGNAL=0;
   GNULIB_STRVERSCMP=0;
   HAVE_MBSLEN=0;
     HAVE_EXPLICIT_BZERO=1;
   HAVE_FFSL=1;
   HAVE_FFSLL=1;
-  HAVE_MEMCHR=1;
   HAVE_DECL_MEMMEM=1;
   HAVE_MEMPCPY=1;
   HAVE_DECL_MEMRCHR=1;
@@ -14370,6 +15523,9 @@ fi
   HAVE_STRCASESTR=1;
   HAVE_DECL_STRTOK_R=1;
   HAVE_DECL_STRERROR_R=1;
+  HAVE_STRERRORNAME_NP=1;
+  HAVE_SIGABBREV_NP=1;
+  HAVE_SIGDESCR_NP=1;
   HAVE_DECL_STRSIGNAL=1;
   HAVE_STRVERSCMP=1;
   REPLACE_MEMCHR=0;
   REPLACE_STRTOK_R=0;
   REPLACE_STRERROR=0;
   REPLACE_STRERROR_R=0;
+  REPLACE_STRERRORNAME_NP=0;
   REPLACE_STRSIGNAL=0;
   UNDEFINE_STRTOK_R=0;
 
-
-
 ac_fn_c_check_decl "$LINENO" "strdup" "ac_cv_have_decl_strdup" "$ac_includes_default"
 if test "x$ac_cv_have_decl_strdup" = xyes; then :
   ac_have_decl=1
@@ -14416,8 +15571,8 @@ else
          *-musl*)       gl_cv_func_strerror_0_works="guessing yes" ;;
                         # Guess yes on native Windows.
          mingw*)        gl_cv_func_strerror_0_works="guessing yes" ;;
-                        # If we don't know, assume the worst.
-         *)             gl_cv_func_strerror_0_works="guessing no" ;;
+                        # If we don't know, obey --enable-cross-guesses.
+         *)             gl_cv_func_strerror_0_works="$gl_cross_guess_normal" ;;
        esac
 
 else
@@ -14582,7 +15737,7 @@ if ${gl_cv_func_strerror_r_works+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   if test "$cross_compiling" = yes; then :
-                                  gl_cv_func_strerror_r_works="guessing no"
+                                  gl_cv_func_strerror_r_works="$gl_cross_guess_normal"
 
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -14644,7 +15799,6 @@ $as_echo "$gl_cv_func_strerror_r_works" >&6; }
 
 
 
-
      if test $gl_cv_have_include_next = yes; then
        gl_cv_next_string_h='<'string.h'>'
      else
@@ -14713,6 +15867,8 @@ $as_echo "$gl_cv_next_string_h" >&6; }
 
 
 
+
+
 ac_fn_c_check_decl "$LINENO" "strndup" "ac_cv_have_decl_strndup" "$ac_includes_default"
 if test "x$ac_cv_have_decl_strndup" = xyes; then :
   ac_have_decl=1
@@ -14739,6 +15895,36 @@ _ACEOF
 
 
 
+
+  GNULIB_CTIME=0;
+  GNULIB_MKTIME=0;
+  GNULIB_LOCALTIME=0;
+  GNULIB_NANOSLEEP=0;
+  GNULIB_STRFTIME=0;
+  GNULIB_STRPTIME=0;
+  GNULIB_TIMEGM=0;
+  GNULIB_TIME_R=0;
+  GNULIB_TIME_RZ=0;
+  GNULIB_TZSET=0;
+    HAVE_DECL_LOCALTIME_R=1;
+  HAVE_NANOSLEEP=1;
+  HAVE_STRPTIME=1;
+  HAVE_TIMEGM=1;
+    HAVE_TIMEZONE_T=0;
+        REPLACE_CTIME=GNULIB_PORTCHECK;
+  REPLACE_LOCALTIME_R=GNULIB_PORTCHECK;
+  REPLACE_MKTIME=GNULIB_PORTCHECK;
+  REPLACE_NANOSLEEP=GNULIB_PORTCHECK;
+  REPLACE_STRFTIME=GNULIB_PORTCHECK;
+  REPLACE_TIMEGM=GNULIB_PORTCHECK;
+  REPLACE_TZSET=GNULIB_PORTCHECK;
+
+      : ${GNULIB_GETTIMEOFDAY=0};
+        REPLACE_GMTIME=0;
+  REPLACE_LOCALTIME=0;
+
+
+
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in <time.h>" >&5
 $as_echo_n "checking for struct timespec in <time.h>... " >&6; }
 if ${gl_cv_sys_struct_timespec_in_time_h+:} false; then :
@@ -14946,6 +16132,19 @@ $as_echo "$gl_cv_next_time_h" >&6; }
 
 
 
+ac_fn_c_check_decl "$LINENO" "execvpe" "ac_cv_have_decl_execvpe" "$ac_includes_default"
+if test "x$ac_cv_have_decl_execvpe" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_EXECVPE $ac_have_decl
+_ACEOF
+
+
+
 
 
 
@@ -14972,6 +16171,8 @@ $as_echo "$gl_cv_next_time_h" >&6; }
 
 
   GNULIB_ISWBLANK=0;
+  GNULIB_ISWDIGIT=0;
+  GNULIB_ISWXDIGIT=0;
   GNULIB_WCTYPE=0;
   GNULIB_ISWCTYPE=0;
   GNULIB_WCTRANS=0;
@@ -14980,6 +16181,8 @@ $as_echo "$gl_cv_next_time_h" >&6; }
   HAVE_WCTYPE_T=1;
   HAVE_WCTRANS_T=1;
   REPLACE_ISWBLANK=0;
+  REPLACE_ISWDIGIT=0;
+  REPLACE_ISWXDIGIT=0;
 
 
 
@@ -15316,6 +16519,8 @@ done
 
 
 
+
+
   GNULIB_INET_NTOP=0;
   GNULIB_INET_PTON=0;
     HAVE_DECL_INET_NTOP=1;
@@ -15382,8 +16587,6 @@ $as_echo "#define HAVE_ENVIRON_DECL 1" >>confdefs.h
 
 
 
-
-
    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getcwd (NULL, 0) allocates memory for result" >&5
 $as_echo_n "checking whether getcwd (NULL, 0) allocates memory for result... " >&6; }
 if ${gl_cv_func_getcwd_null+:} false; then :
@@ -15397,8 +16600,8 @@ else
             *-musl*)       gl_cv_func_getcwd_null="guessing yes";;
                            # Guess yes on Cygwin.
             cygwin*)       gl_cv_func_getcwd_null="guessing yes";;
-                           # If we don't know, assume the worst.
-            *)             gl_cv_func_getcwd_null="guessing no";;
+                           # If we don't know, obey --enable-cross-guesses.
+            *)             gl_cv_func_getcwd_null="$gl_cross_guess_normal";;
           esac
 
 else
@@ -15411,6 +16614,10 @@ else
 #        else /* on Windows with MSVC */
 #         include <direct.h>
 #        endif
+
+
+$gl_mda_defines
+
 #        ifndef getcwd
          char *getcwd ();
 #        endif
@@ -15420,7 +16627,7 @@ main ()
 {
 
 #if defined _WIN32 && ! defined __CYGWIN__
-/* mingw cwd does not start with '/', but getcwd does allocate.
+/* mingw cwd does not start with '/', but _getcwd does allocate.
    However, mingw fails to honor non-zero size.  */
 #else
            if (chdir ("/") != 0)
@@ -15465,6 +16672,10 @@ else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <unistd.h>
+
+
+$gl_mda_defines
+
 int
 main ()
 {
 $as_echo "$gl_cv_func_getcwd_posix_signature" >&6; }
 
 
+  GNULIB_GETTIMEOFDAY=0;
+    HAVE_GETTIMEOFDAY=1;
+  HAVE_STRUCT_TIMEVAL=1;
+  HAVE_SYS_TIME_H=1;
+  REPLACE_GETTIMEOFDAY=0;
+  REPLACE_STRUCT_TIMEVAL=0;
 
-ac_fn_c_check_decl "$LINENO" "getdtablesize" "ac_cv_have_decl_getdtablesize" "$ac_includes_default"
-if test "x$ac_cv_have_decl_getdtablesize" = xyes; then :
-  ac_have_decl=1
+
+
+
+
+
+
+
+
+
+
+
+
+
+     if test $gl_cv_have_include_next = yes; then
+       gl_cv_next_sys_time_h='<'sys/time.h'>'
+     else
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/time.h>" >&5
+$as_echo_n "checking absolute name of <sys/time.h>... " >&6; }
+if ${gl_cv_next_sys_time_h+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  ac_have_decl=0
+
+             if test $ac_cv_header_sys_time_h = yes; then
+
+
+
+
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <sys/time.h>
+_ACEOF
+                case "$host_os" in
+    aix*) gl_absname_cpp="$ac_cpp -C" ;;
+    *)    gl_absname_cpp="$ac_cpp" ;;
+  esac
+
+  case "$host_os" in
+    mingw*)
+                                          gl_dirsep_regex='[/\\]'
+      ;;
+    *)
+      gl_dirsep_regex='\/'
+      ;;
+  esac
+      gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+  gl_header_literal_regex=`echo 'sys/time.h' \
+                           | sed -e "$gl_make_literal_regex_sed"`
+  gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{
+      s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/
+      s|^/[^/]|//&|
+      p
+      q
+    }'
+
+        gl_cv_absolute_sys_time_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+  sed -n "$gl_absolute_header_sed"`
+
+           gl_header=$gl_cv_absolute_sys_time_h
+           gl_cv_next_sys_time_h='"'$gl_header'"'
+          else
+               gl_cv_next_sys_time_h='<'sys/time.h'>'
+             fi
+
+
 fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_time_h" >&5
+$as_echo "$gl_cv_next_sys_time_h" >&6; }
+     fi
+     NEXT_SYS_TIME_H=$gl_cv_next_sys_time_h
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_GETDTABLESIZE $ac_have_decl
+     if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then
+       # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next'
+       gl_next_as_first_directive='<'sys/time.h'>'
+     else
+       # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
+       gl_next_as_first_directive=$gl_cv_next_sys_time_h
+     fi
+     NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H=$gl_next_as_first_directive
+
+
+
+
+
+  if test $ac_cv_header_sys_time_h != yes; then
+    HAVE_SYS_TIME_H=0
+  fi
+
+
+
+
+
+  if test $ac_cv_header_sys_socket_h != yes; then
+                    for ac_header in winsock2.h
+do :
+  ac_fn_c_check_header_mongrel "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default"
+if test "x$ac_cv_header_winsock2_h" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_WINSOCK2_H 1
+_ACEOF
+
+fi
+
+done
+
+  fi
+  if test "$ac_cv_header_winsock2_h" = yes; then
+    HAVE_WINSOCK2_H=1
+    UNISTD_H_HAVE_WINSOCK2_H=1
+    SYS_IOCTL_H_HAVE_WINSOCK2_H=1
+  else
+    HAVE_WINSOCK2_H=0
+  fi
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timeval" >&5
+$as_echo_n "checking for struct timeval... " >&6; }
+if ${gl_cv_sys_struct_timeval+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#if HAVE_SYS_TIME_H
+             #include <sys/time.h>
+            #endif
+            #include <time.h>
+            #if HAVE_WINSOCK2_H
+            # include <winsock2.h>
+            #endif
+
+int
+main ()
+{
+static struct timeval x; x.tv_sec = x.tv_usec;
+  ;
+  return 0;
+}
 _ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_sys_struct_timeval=yes
+else
+  gl_cv_sys_struct_timeval=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timeval" >&5
+$as_echo "$gl_cv_sys_struct_timeval" >&6; }
+  if test $gl_cv_sys_struct_timeval != yes; then
+    HAVE_STRUCT_TIMEVAL=0
+  else
+                            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wide-enough struct timeval.tv_sec member" >&5
+$as_echo_n "checking for wide-enough struct timeval.tv_sec member... " >&6; }
+if ${gl_cv_sys_struct_timeval_tv_sec+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#if HAVE_SYS_TIME_H
+               #include <sys/time.h>
+              #endif
+              #include <time.h>
+              #if HAVE_WINSOCK2_H
+              # include <winsock2.h>
+              #endif
+
+int
+main ()
+{
+static struct timeval x;
+              typedef int verify_tv_sec_type[
+                sizeof (time_t) <= sizeof x.tv_sec ? 1 : -1
+              ];
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_sys_struct_timeval_tv_sec=yes
+else
+  gl_cv_sys_struct_timeval_tv_sec=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timeval_tv_sec" >&5
+$as_echo "$gl_cv_sys_struct_timeval_tv_sec" >&6; }
+    if test $gl_cv_sys_struct_timeval_tv_sec != yes; then
+      REPLACE_STRUCT_TIMEVAL=1
+    fi
+  fi
+
+
+
+
+
+
+
+
+
+
+
+
+  case "$host_os" in
+    *-musl*)
+$as_echo "#define MUSL_LIBC 1" >>confdefs.h
+ ;;
+  esac
+
+
 
 
 
@@ -15643,7 +17060,8 @@ $as_echo "#define HAVE_LC_MESSAGES 1" >>confdefs.h
 
 
 
-      if test $ac_cv_func_uselocale = yes; then
+
+          if test $ac_cv_func_uselocale = yes; then
 
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether uselocale works" >&5
 $as_echo_n "checking whether uselocale works... " >&6; }
@@ -15651,10 +17069,10 @@ if ${gt_cv_func_uselocale_works+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   if test "$cross_compiling" = yes; then :
-  # Guess no on AIX, yes otherwise.
+  # Guess no on AIX and z/OS, yes otherwise.
           case "$host_os" in
-            aix*) gt_cv_func_uselocale_works="guessing no" ;;
-            *)    gt_cv_func_uselocale_works="guessing yes" ;;
+            aix* | openedition*) gt_cv_func_uselocale_works="guessing no" ;;
+            *)                   gt_cv_func_uselocale_works="guessing yes" ;;
           esac
 
 else
@@ -15665,6 +17083,7 @@ else
 #if HAVE_XLOCALE_H
 # include <xlocale.h>
 #endif
+locale_t loc1;
 int main ()
 {
   uselocale (NULL);
@@ -15815,13 +17234,15 @@ done
       ;;
   esac
 
-              gt_nameless_locales=no
-  if false; then
-    gt_nameless_locales=yes
+            gt_nameless_locales=no
+  case "$host_os" in
+        aix*)
+      gt_nameless_locales=yes
 
 $as_echo "#define HAVE_NAMELESS_LOCALES 1" >>confdefs.h
 
-  fi
+      ;;
+  esac
 
 
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5
@@ -15905,6 +17326,62 @@ $as_echo "#define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1" >>confdefs.h
 
 
 
+                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library needed for semaphore functions" >&5
+$as_echo_n "checking for library needed for semaphore functions... " >&6; }
+if ${gl_cv_semaphore_lib+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  save_LIBS="$LIBS"
+     LIBS="$LIBS $LIBMULTITHREAD"
+     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <semaphore.h>
+int
+main ()
+{
+sem_post ((sem_t *)0);
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  gl_cv_semaphore_lib=none
+else
+  LIBS="$LIBS -lrt"
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <semaphore.h>
+int
+main ()
+{
+sem_post ((sem_t *)0);
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  gl_cv_semaphore_lib='-lrt'
+else
+  gl_cv_semaphore_lib=none
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+     LIBS="$save_LIBS"
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_semaphore_lib" >&5
+$as_echo "$gl_cv_semaphore_lib" >&6; }
+  if test "x$gl_cv_semaphore_lib" = xnone; then
+    LIB_SEMAPHORE=
+  else
+    LIB_SEMAPHORE="$gl_cv_semaphore_lib"
+  fi
+
+
 
   GNULIB_PSELECT=0;
   GNULIB_SELECT=0;
@@ -16143,15 +17620,15 @@ done
 
    LIBSOCKET=
   if test $HAVE_WINSOCK2_H = 1; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we need to call WSAStartup in winsock2.h and -lws2_32" >&5
-$as_echo_n "checking if we need to call WSAStartup in winsock2.h and -lws2_32... " >&6; }
+                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for WSAStartup" >&5
+$as_echo_n "checking for WSAStartup... " >&6; }
 if ${gl_cv_func_wsastartup+:} false; then :
   $as_echo_n "(cached) " >&6
 else
 
-      gl_save_LIBS="$LIBS"
-      LIBS="$LIBS -lws2_32"
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+       gl_save_LIBS="$LIBS"
+       LIBS="$LIBS -lws2_32"
+       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 #ifdef HAVE_WINSOCK2_H
@@ -16161,13 +17638,15 @@ int
 main ()
 {
 
-          WORD wVersionRequested = MAKEWORD(1, 1);
-          WSADATA wsaData;
-          int err = WSAStartup(wVersionRequested, &wsaData);
-          WSACleanup ();
+            WORD wVersionRequested = MAKEWORD(1, 1);
+            WSADATA wsaData;
+            int err = WSAStartup(wVersionRequested, &wsaData);
+            WSACleanup ();
+
   ;
   return 0;
 }
+
 _ACEOF
 if ac_fn_c_try_link "$LINENO"; then :
   gl_cv_func_wsastartup=yes
@@ -16176,7 +17655,7 @@ else
 fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
-      LIBS="$gl_save_LIBS"
+       LIBS="$gl_save_LIBS"
 
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wsastartup" >&5
@@ -16377,8 +17856,8 @@ else
             linux-* | linux) gl_cv_func_select_detects_ebadf="guessing yes" ;;
                              # Guess yes on glibc systems.
             *-gnu* | gnu*)   gl_cv_func_select_detects_ebadf="guessing yes" ;;
-                             # If we don't know, assume the worst.
-            *)               gl_cv_func_select_detects_ebadf="guessing no" ;;
+                             # If we don't know, obey --enable-cross-guesses.
+            *)               gl_cv_func_select_detects_ebadf="$gl_cross_guess_normal" ;;
            esac
 
 else
@@ -16393,6 +17872,9 @@ else
 #include <unistd.h>
 #include <errno.h>
 
+
+$gl_mda_defines
+
 int
 main ()
 {
@@ -16458,72 +17940,6 @@ rm -f core conftest.err conftest.$ac_objext \
   fi
 
 
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for O_CLOEXEC" >&5
-$as_echo_n "checking for O_CLOEXEC... " >&6; }
-if ${gl_cv_macro_O_CLOEXEC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <fcntl.h>
-                          #ifndef O_CLOEXEC
-                            choke me;
-                          #endif
-
-int
-main ()
-{
-return O_CLOEXEC;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_macro_O_CLOEXEC=yes
-else
-  gl_cv_macro_O_CLOEXEC=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_macro_O_CLOEXEC" >&5
-$as_echo "$gl_cv_macro_O_CLOEXEC" >&6; }
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for promoted mode_t type" >&5
-$as_echo_n "checking for promoted mode_t type... " >&6; }
-if ${gl_cv_promoted_mode_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-                cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-int
-main ()
-{
-typedef int array[2 * (sizeof (mode_t) < sizeof (int)) - 1];
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_promoted_mode_t='int'
-else
-  gl_cv_promoted_mode_t='mode_t'
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_promoted_mode_t" >&5
-$as_echo "$gl_cv_promoted_mode_t" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define PROMOTED_MODE_T $gl_cv_promoted_mode_t
-_ACEOF
-
-
 ac_fn_c_check_decl "$LINENO" "strerror_r" "ac_cv_have_decl_strerror_r" "$ac_includes_default"
 if test "x$ac_cv_have_decl_strerror_r" = xyes; then :
   ac_have_decl=1
@@ -16851,89 +18267,12 @@ _ACEOF
 
 
 
-    YIELD_LIB=
-  if test $gl_threads_api = posix; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lrt" >&5
-$as_echo_n "checking for sched_yield in -lrt... " >&6; }
-if ${ac_cv_lib_rt_sched_yield+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lrt  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char sched_yield ();
-int
-main ()
-{
-return sched_yield ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_rt_sched_yield=yes
-else
-  ac_cv_lib_rt_sched_yield=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_sched_yield" >&5
-$as_echo "$ac_cv_lib_rt_sched_yield" >&6; }
-if test "x$ac_cv_lib_rt_sched_yield" = xyes; then :
-  YIELD_LIB=-lrt
-else
-         { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lposix4" >&5
-$as_echo_n "checking for sched_yield in -lposix4... " >&6; }
-if ${ac_cv_lib_posix4_sched_yield+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lposix4  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char sched_yield ();
-int
-main ()
-{
-return sched_yield ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_posix4_sched_yield=yes
-else
-  ac_cv_lib_posix4_sched_yield=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix4_sched_yield" >&5
-$as_echo "$ac_cv_lib_posix4_sched_yield" >&6; }
-if test "x$ac_cv_lib_posix4_sched_yield" = xyes; then :
-  YIELD_LIB=-lposix4
-fi
 
-fi
 
+  if test $gl_threads_api = posix; then
+    YIELD_LIB="$LIB_SCHED_YIELD"
+  else
+    YIELD_LIB=
   fi
 
 
@@ -16957,6 +18296,7 @@ fi
 
 
 
+
   gl_source_base='lib'
 LTALLOCA=`echo "$ALLOCA" | sed -e 's/\.[^.]* /.lo /g;s/\.[^.]*$/.lo/'`
 
@@ -17263,18 +18603,13 @@ $as_echo_n "checking for GNU libc compatible calloc... " >&6; }
 if ${ac_cv_func_calloc_0_nonnull+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  if test "$cross_compiling" = yes; then :
-  case "$host_os" in
-                         # Guess yes on glibc systems.
-          *-gnu* | gnu*) ac_cv_func_calloc_0_nonnull="guessing yes" ;;
-                         # Guess yes on musl systems.
-          *-musl*)       ac_cv_func_calloc_0_nonnull="guessing yes" ;;
-                         # Guess yes on native Windows.
-          mingw*)        ac_cv_func_calloc_0_nonnull="guessing yes" ;;
-                         # If we don't know, assume the worst.
-          *)             ac_cv_func_calloc_0_nonnull="guessing no" ;;
-        esac
-
+  if test $cross_compiling != yes; then
+       ac_cv_func_calloc_0_nonnull=yes
+       if test "$cross_compiling" = yes; then :
+  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot run test program while cross compiling
+See \`config.log' for more details" "$LINENO" 5; }
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -17283,22 +18618,18 @@ int
 main ()
 {
 int result = 0;
-            char *p = calloc (0, 0);
-            if (!p)
-              result |= 1;
-            free (p);
-            p = calloc ((size_t) -1 / 8 + 1, 8);
-            if (p)
-              result |= 2;
-            free (p);
-            return result;
+              char * volatile p = calloc (0, 0);
+              if (!p)
+                result |= 1;
+              free (p);
+              return result;
 
   ;
   return 0;
 }
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_func_calloc_0_nonnull=yes
+
 else
   ac_cv_func_calloc_0_nonnull=no
 fi
@@ -17306,6 +18637,59 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+       if test "$cross_compiling" = yes; then :
+  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot run test program while cross compiling
+See \`config.log' for more details" "$LINENO" 5; }
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$ac_includes_default
+int
+main ()
+{
+int result;
+              typedef struct { char c[8]; } S8;
+              size_t n = (size_t) -1 / sizeof (S8) + 2;
+              S8 * volatile s = calloc (n, sizeof (S8));
+              if (s)
+                {
+                  s[0].c[0] = 1;
+                  if (s[n - 1].c[0])
+                    result = 0;
+                  else
+                    result = 2;
+                }
+              else
+                result = 3;
+              free (s);
+              return result;
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+                                      ac_cv_func_calloc_0_nonnull=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+     else
+       case "$host_os" in
+                        # Guess yes on glibc systems.
+         *-gnu* | gnu*) ac_cv_func_calloc_0_nonnull="guessing yes" ;;
+                        # Guess yes on musl systems.
+         *-musl*)       ac_cv_func_calloc_0_nonnull="guessing yes" ;;
+                        # Guess yes on native Windows.
+         mingw*)        ac_cv_func_calloc_0_nonnull="guessing yes" ;;
+                        # If we don't know, obey --enable-cross-guesses.
+         *)             ac_cv_func_calloc_0_nonnull="$gl_cross_guess_normal" ;;
+       esac
+     fi
+
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_calloc_0_nonnull" >&5
 $as_echo "$ac_cv_func_calloc_0_nonnull" >&6; }
@@ -17457,6 +18841,94 @@ $as_echo "#define GNULIB_TEST_REALPATH 1" >>confdefs.h
 
 
 
+  # Solaris 2.5.1 needs -lposix4 to get the clock_gettime function.
+  # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4.
+
+  # Save and restore LIBS so e.g., -lrt, isn't added to it.  Otherwise, *all*
+  # programs in the package would end up linked with that potentially-shared
+  # library, inducing unnecessary run-time overhead.
+  LIB_CLOCK_GETTIME=
+
+  gl_saved_libs=$LIBS
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing clock_gettime" >&5
+$as_echo_n "checking for library containing clock_gettime... " >&6; }
+if ${ac_cv_search_clock_gettime+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char clock_gettime ();
+int
+main ()
+{
+return clock_gettime ();
+  ;
+  return 0;
+}
+_ACEOF
+for ac_lib in '' rt posix4; do
+  if test -z "$ac_lib"; then
+    ac_res="none required"
+  else
+    ac_res=-l$ac_lib
+    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
+  fi
+  if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_search_clock_gettime=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext
+  if ${ac_cv_search_clock_gettime+:} false; then :
+  break
+fi
+done
+if ${ac_cv_search_clock_gettime+:} false; then :
+
+else
+  ac_cv_search_clock_gettime=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_clock_gettime" >&5
+$as_echo "$ac_cv_search_clock_gettime" >&6; }
+ac_res=$ac_cv_search_clock_gettime
+if test "$ac_res" != no; then :
+  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+  test "$ac_cv_search_clock_gettime" = "none required" ||
+                    LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime
+fi
+
+    for ac_func in clock_gettime clock_settime
+do :
+  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
+  cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
+
+  LIBS=$gl_saved_libs
+
+
+
+$as_echo "#define GNULIB_TEST_CLOEXEC 1" >>confdefs.h
+
+
+
+
+
 
     if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then
       REPLACE_CLOSE=1
@@ -17546,9 +19018,6 @@ _ACEOF
 
 
 
-
-
-
 cat >>confdefs.h <<_ACEOF
 #define GNULIB_DIRNAME 1
 _ACEOF
@@ -17556,10 +19025,6 @@ _ACEOF
 
 
 
-
-
-
-
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether // is distinct from /" >&5
 $as_echo_n "checking whether // is distinct from /... " >&6; }
 if ${gl_cv_double_slash_root+:} false; then :
@@ -17599,6 +19064,160 @@ $as_echo "#define DOUBLE_SLASH_IS_DISTINCT_ROOT 1" >>confdefs.h
 
 
 
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether dup2 works" >&5
+$as_echo_n "checking whether dup2 works... " >&6; }
+if ${gl_cv_func_dup2_works+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test "$cross_compiling" = yes; then :
+  case "$host_os" in
+         mingw*) # on this platform, dup2 always returns 0 for success
+           gl_cv_func_dup2_works="guessing no" ;;
+         cygwin*) # on cygwin 1.5.x, dup2(1,1) returns 0
+           gl_cv_func_dup2_works="guessing no" ;;
+         aix* | freebsd*)
+                 # on AIX 7.1 and FreeBSD 6.1, dup2 (1,toobig) gives EMFILE,
+                 # not EBADF.
+           gl_cv_func_dup2_works="guessing no" ;;
+         haiku*) # on Haiku alpha 2, dup2(1, 1) resets FD_CLOEXEC.
+           gl_cv_func_dup2_works="guessing no" ;;
+         *-android*) # implemented using dup3(), which fails if oldfd == newfd
+           gl_cv_func_dup2_works="guessing no" ;;
+         os2*) # on OS/2 kLIBC, dup2() does not work on a directory fd.
+           gl_cv_func_dup2_works="guessing no" ;;
+         *) gl_cv_func_dup2_works="guessing yes" ;;
+       esac
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+       #include <errno.h>
+           #include <fcntl.h>
+           #include <limits.h>
+           #include <sys/resource.h>
+           #include <unistd.h>
+
+
+$gl_mda_defines
+
+           #ifndef RLIM_SAVED_CUR
+           # define RLIM_SAVED_CUR RLIM_INFINITY
+           #endif
+           #ifndef RLIM_SAVED_MAX
+           # define RLIM_SAVED_MAX RLIM_INFINITY
+           #endif
+
+int
+main ()
+{
+int result = 0;
+           int bad_fd = INT_MAX;
+           struct rlimit rlim;
+           if (getrlimit (RLIMIT_NOFILE, &rlim) == 0
+               && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX
+               && rlim.rlim_cur != RLIM_INFINITY
+               && rlim.rlim_cur != RLIM_SAVED_MAX
+               && rlim.rlim_cur != RLIM_SAVED_CUR)
+             bad_fd = rlim.rlim_cur;
+           #ifdef FD_CLOEXEC
+             if (fcntl (1, F_SETFD, FD_CLOEXEC) == -1)
+               result |= 1;
+           #endif
+           if (dup2 (1, 1) != 1)
+             result |= 2;
+           #ifdef FD_CLOEXEC
+             if (fcntl (1, F_GETFD) != FD_CLOEXEC)
+               result |= 4;
+           #endif
+           close (0);
+           if (dup2 (0, 0) != -1)
+             result |= 8;
+           /* Many gnulib modules require POSIX conformance of EBADF.  */
+           if (dup2 (2, bad_fd) == -1 && errno != EBADF)
+             result |= 16;
+           /* Flush out some cygwin core dumps.  */
+           if (dup2 (2, -1) != -1 || errno != EBADF)
+             result |= 32;
+           dup2 (2, 255);
+           dup2 (2, 256);
+           /* On OS/2 kLIBC, dup2() does not work on a directory fd.  */
+           {
+             int fd = open (".", O_RDONLY);
+             if (fd == -1)
+               result |= 64;
+             else if (dup2 (fd, fd + 1) == -1)
+               result |= 128;
+             close (fd);
+           }
+           return result;
+  ;
+  return 0;
+}
+
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  gl_cv_func_dup2_works=yes
+else
+  gl_cv_func_dup2_works=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_dup2_works" >&5
+$as_echo "$gl_cv_func_dup2_works" >&6; }
+  case "$gl_cv_func_dup2_works" in
+    *yes) ;;
+    *)
+      REPLACE_DUP2=1
+      for ac_func in setdtablesize
+do :
+  ac_fn_c_check_func "$LINENO" "setdtablesize" "ac_cv_func_setdtablesize"
+if test "x$ac_cv_func_setdtablesize" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_SETDTABLESIZE 1
+_ACEOF
+
+fi
+done
+
+      ;;
+  esac
+
+
+  if test $REPLACE_DUP2 = 1; then
+
+
+
+
+
+
+
+
+  gl_LIBOBJS="$gl_LIBOBJS dup2.$ac_objext"
+
+
+  fi
+
+
+
+
+
+          GNULIB_DUP2=1
+
+
+
+
+
+$as_echo "#define GNULIB_TEST_DUP2 1" >>confdefs.h
+
+
+
+
+
       { $as_echo "$as_me:${as_lineno-$LINENO}: checking for error_at_line" >&5
 $as_echo_n "checking for error_at_line... " >&6; }
 if ${ac_cv_lib_error_at_line+:} false; then :
@@ -17656,6 +19275,224 @@ $as_echo "$ac_cv_lib_error_at_line" >&6; }
 
 
 
+  if test $ac_cv_func_fcntl = no; then
+
+
+
+  if test $ac_cv_func_fcntl = no; then
+    HAVE_FCNTL=0
+  else
+    REPLACE_FCNTL=1
+  fi
+
+  else
+            { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether fcntl handles F_DUPFD correctly" >&5
+$as_echo_n "checking whether fcntl handles F_DUPFD correctly... " >&6; }
+if ${gl_cv_func_fcntl_f_dupfd_works+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test "$cross_compiling" = yes; then :
+  case $host_os in
+            aix* | cygwin* | haiku*)
+               gl_cv_func_fcntl_f_dupfd_works="guessing no" ;;
+            *) gl_cv_func_fcntl_f_dupfd_works="guessing yes" ;;
+          esac
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <errno.h>
+              #include <fcntl.h>
+              #include <limits.h>
+              #include <sys/resource.h>
+              #include <unistd.h>
+
+
+$gl_mda_defines
+
+              #ifndef RLIM_SAVED_CUR
+              # define RLIM_SAVED_CUR RLIM_INFINITY
+              #endif
+              #ifndef RLIM_SAVED_MAX
+              # define RLIM_SAVED_MAX RLIM_INFINITY
+              #endif
+
+int
+main ()
+{
+int result = 0;
+              int bad_fd = INT_MAX;
+              struct rlimit rlim;
+              if (getrlimit (RLIMIT_NOFILE, &rlim) == 0
+                  && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX
+                  && rlim.rlim_cur != RLIM_INFINITY
+                  && rlim.rlim_cur != RLIM_SAVED_MAX
+                  && rlim.rlim_cur != RLIM_SAVED_CUR)
+                bad_fd = rlim.rlim_cur;
+              if (fcntl (0, F_DUPFD, -1) != -1) result |= 1;
+              if (errno != EINVAL) result |= 2;
+              if (fcntl (0, F_DUPFD, bad_fd) != -1) result |= 4;
+              if (errno != EINVAL) result |= 8;
+              /* On OS/2 kLIBC, F_DUPFD does not work on a directory fd */
+              {
+                int fd;
+                fd = open (".", O_RDONLY);
+                if (fd == -1)
+                  result |= 16;
+                else if (fcntl (fd, F_DUPFD, STDERR_FILENO + 1) == -1)
+                  result |= 32;
+
+                close (fd);
+              }
+              return result;
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  gl_cv_func_fcntl_f_dupfd_works=yes
+else
+  gl_cv_func_fcntl_f_dupfd_works=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fcntl_f_dupfd_works" >&5
+$as_echo "$gl_cv_func_fcntl_f_dupfd_works" >&6; }
+    case $gl_cv_func_fcntl_f_dupfd_works in
+      *yes) ;;
+      *)
+
+
+  if test $ac_cv_func_fcntl = no; then
+    HAVE_FCNTL=0
+  else
+    REPLACE_FCNTL=1
+  fi
+
+
+$as_echo "#define FCNTL_DUPFD_BUGGY 1" >>confdefs.h
+ ;;
+    esac
+
+            { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether fcntl understands F_DUPFD_CLOEXEC" >&5
+$as_echo_n "checking whether fcntl understands F_DUPFD_CLOEXEC... " >&6; }
+if ${gl_cv_func_fcntl_f_dupfd_cloexec+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test "$cross_compiling" = yes; then :
+  case "$host_os" in
+                     # Guess no on NetBSD.
+            netbsd*) gl_cv_func_fcntl_f_dupfd_cloexec="guessing no" ;;
+            *)       gl_cv_func_fcntl_f_dupfd_cloexec="$gl_cross_guess_normal" ;;
+          esac
+
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <fcntl.h>
+              #include <unistd.h>
+              int main (int argc, char *argv[])
+              {
+                if (argc == 1)
+                  /* parent process */
+                  {
+                    if (fcntl (1, F_DUPFD_CLOEXEC, 10) < 0)
+                      return 1;
+                    return execl ("./conftest", "./conftest", "child", NULL);
+                  }
+                else
+                  /* child process */
+                  return (fcntl (10, F_GETFL) < 0 ? 0 : 42);
+              }
+
+
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+#ifdef __linux__
+/* The Linux kernel only added F_DUPFD_CLOEXEC in 2.6.24, so we always replace
+   it to support the semantics on older kernels that failed with EINVAL.  */
+choke me
+#endif
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_func_fcntl_f_dupfd_cloexec=yes
+else
+  gl_cv_func_fcntl_f_dupfd_cloexec="needs runtime check"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+else
+  gl_cv_func_fcntl_f_dupfd_cloexec=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fcntl_f_dupfd_cloexec" >&5
+$as_echo "$gl_cv_func_fcntl_f_dupfd_cloexec" >&6; }
+    case "$gl_cv_func_fcntl_f_dupfd_cloexec" in
+      *yes) ;;
+      *)
+
+
+  if test $ac_cv_func_fcntl = no; then
+    HAVE_FCNTL=0
+  else
+    REPLACE_FCNTL=1
+  fi
+
+                        ;;
+    esac
+  fi
+
+
+  if test $HAVE_FCNTL = 0 || test $REPLACE_FCNTL = 1; then
+
+
+
+
+
+
+
+
+  gl_LIBOBJS="$gl_LIBOBJS fcntl.$ac_objext"
+
+  fi
+
+
+
+
+
+          GNULIB_FCNTL=1
+
+
+
+
+
+$as_echo "#define GNULIB_TEST_FCNTL 1" >>confdefs.h
+
+
+
+
+
+
+
+
 
 
 
@@ -17836,6 +19673,7 @@ _ACEOF
     esac
 
 
+
   :
 
   fi
@@ -17894,6 +19732,102 @@ $as_echo "#define GNULIB_TEST_FSYNC 1" >>confdefs.h
 
 
 
+  if test $ac_cv_func_getdtablesize = yes &&
+     test $ac_cv_have_decl_getdtablesize = yes; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getdtablesize works" >&5
+$as_echo_n "checking whether getdtablesize works... " >&6; }
+if ${gl_cv_func_getdtablesize_works+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+                                                   case "$host_os" in
+         vms*) gl_cv_func_getdtablesize_works="no (limitation)" ;;
+         *)
+                                                       if test "$cross_compiling" = yes; then :
+  case "$host_os" in
+                cygwin*) # on cygwin 1.5.25, getdtablesize() automatically grows
+                  gl_cv_func_getdtablesize_works="guessing no" ;;
+                *) gl_cv_func_getdtablesize_works="guessing yes" ;;
+              esac
+
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+             #include <unistd.h>
+
+
+$gl_mda_defines
+
+
+int
+main ()
+{
+int size = getdtablesize();
+                 if (dup2 (0, getdtablesize()) != -1)
+                   return 1;
+                 if (size != getdtablesize())
+                   return 2;
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  gl_cv_func_getdtablesize_works=yes
+else
+  gl_cv_func_getdtablesize_works=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+           ;;
+       esac
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getdtablesize_works" >&5
+$as_echo "$gl_cv_func_getdtablesize_works" >&6; }
+    case "$gl_cv_func_getdtablesize_works" in
+      *yes | "no (limitation)") ;;
+      *) REPLACE_GETDTABLESIZE=1 ;;
+    esac
+  else
+    HAVE_GETDTABLESIZE=0
+  fi
+
+  if test $HAVE_GETDTABLESIZE = 0 || test $REPLACE_GETDTABLESIZE = 1; then
+
+
+
+
+
+
+
+
+  gl_LIBOBJS="$gl_LIBOBJS getdtablesize.$ac_objext"
+
+    :
+  fi
+
+
+
+
+
+          GNULIB_GETDTABLESIZE=1
+
+
+
+
+
+$as_echo "#define GNULIB_TEST_GETDTABLESIZE 1" >>confdefs.h
+
+
+
+
+
+
+
+
 
 
 
@@ -17950,6 +19884,21 @@ $as_echo "#define __GETOPT_PREFIX rpl_" >>confdefs.h
 
 
 
+
+
+          GNULIB_GETOPT_POSIX=1
+
+
+
+
+
+$as_echo "#define GNULIB_TEST_GETOPT_POSIX 1" >>confdefs.h
+
+
+
+
+
+
   ac_found=0
   ac_fn_c_check_decl "$LINENO" "program_invocation_name" "ac_cv_have_decl_program_invocation_name" "#include <errno.h>
 "
@@ -18042,166 +19991,108 @@ $as_echo "#define HAVE_VAR___PROGNAME 1" >>confdefs.h
 
 
 
-
-
-
-
-
-  gl_gettimeofday_timezone=void
-  if test $ac_cv_func_gettimeofday != yes; then
-    HAVE_GETTIMEOFDAY=0
+  if test "$ac_cv_func_getrandom" != yes; then
+    HAVE_GETRANDOM=0
   else
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gettimeofday clobbers localtime buffer" >&5
-$as_echo_n "checking whether gettimeofday clobbers localtime buffer... " >&6; }
-if ${gl_cv_func_gettimeofday_clobber+:} false; then :
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getrandom is compatible with its GNU+BSD signature" >&5
+$as_echo_n "checking whether getrandom is compatible with its GNU+BSD signature... " >&6; }
+if ${gl_cv_func_getrandom_ok+:} false; then :
   $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  # When cross-compiling:
-      case "$host_os" in
-                       # Guess all is fine on glibc systems.
-        *-gnu* | gnu*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
-                       # Guess all is fine on musl systems.
-        *-musl*)       gl_cv_func_gettimeofday_clobber="guessing no" ;;
-                       # Guess no on native Windows.
-        mingw*)        gl_cv_func_gettimeofday_clobber="guessing no" ;;
-                       # If we don't know, assume the worst.
-        *)             gl_cv_func_gettimeofday_clobber="guessing yes" ;;
-      esac
-
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <string.h>
-          #include <sys/time.h>
-          #include <time.h>
-          #include <stdlib.h>
+/* Additional includes are needed before <sys/random.h> on uClibc
+                 and Mac OS X.  */
+              #include <sys/types.h>
+              #include <stdlib.h>
+              #include <sys/random.h>
+              ssize_t getrandom (void *, size_t, unsigned int);
 
 int
 main ()
 {
 
-          time_t t = 0;
-          struct tm *lt;
-          struct tm saved_lt;
-          struct timeval tv;
-          lt = localtime (&t);
-          saved_lt = *lt;
-          gettimeofday (&tv, NULL);
-          return memcmp (lt, &saved_lt, sizeof (struct tm)) != 0;
-
   ;
   return 0;
 }
+
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  gl_cv_func_gettimeofday_clobber=no
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_func_getrandom_ok=yes
 else
-  gl_cv_func_gettimeofday_clobber=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
+  gl_cv_func_getrandom_ok=no
 fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_gettimeofday_clobber" >&5
-$as_echo "$gl_cv_func_gettimeofday_clobber" >&6; }
-
- case "$gl_cv_func_gettimeofday_clobber" in
-   *yes)
-     REPLACE_GETTIMEOFDAY=1
-
-$as_echo "#define GETTIMEOFDAY_CLOBBERS_LOCALTIME 1" >>confdefs.h
-
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getrandom_ok" >&5
+$as_echo "$gl_cv_func_getrandom_ok" >&6; }
+    if test $gl_cv_func_getrandom_ok = no; then
+      REPLACE_GETRANDOM=1
+    fi
+  fi
 
+  case "$host_os" in
+    mingw*)
+      for ac_header in bcrypt.h
+do :
+  ac_fn_c_check_header_compile "$LINENO" "bcrypt.h" "ac_cv_header_bcrypt_h" "#include <windows.h>
 
+"
+if test "x$ac_cv_header_bcrypt_h" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_BCRYPT_H 1
+_ACEOF
 
-  NEED_LOCALTIME_BUFFER=1
-  REPLACE_GMTIME=1
-  REPLACE_LOCALTIME=1
+fi
 
-     ;;
- esac
+done
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gettimeofday with POSIX signature" >&5
-$as_echo_n "checking for gettimeofday with POSIX signature... " >&6; }
-if ${gl_cv_func_gettimeofday_posix_signature+:} false; then :
+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the bcrypt library is guaranteed to be present" >&5
+$as_echo_n "checking whether the bcrypt library is guaranteed to be present... " >&6; }
+if ${gl_cv_lib_assume_bcrypt+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <sys/time.h>
-              struct timeval c;
-              int gettimeofday (struct timeval *restrict, void *restrict);
-
+#include <windows.h>
 int
 main ()
 {
-/* glibc uses struct timezone * rather than the POSIX void *
-                 if _GNU_SOURCE is defined.  However, since the only portable
-                 use of gettimeofday uses NULL as the second parameter, and
-                 since the glibc definition is actually more typesafe, it is
-                 not worth wrapping this to get a compliant signature.  */
-              int (*f) (struct timeval *restrict, void *restrict)
-                = gettimeofday;
-              int x = f (&c, 0);
-              return !(x | c.tv_sec | c.tv_usec);
+#if !(_WIN32_WINNT >= _WIN32_WINNT_WIN7)
+                  cannot assume it
+                #endif
 
   ;
   return 0;
 }
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_func_gettimeofday_posix_signature=yes
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/time.h>
-int gettimeofday (struct timeval *restrict, struct timezone *restrict);
 
-int
-main ()
-{
-
-  ;
-  return 0;
-}
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_func_gettimeofday_posix_signature=almost
+  gl_cv_lib_assume_bcrypt=yes
 else
-  gl_cv_func_gettimeofday_posix_signature=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+  gl_cv_lib_assume_bcrypt=no
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_gettimeofday_posix_signature" >&5
-$as_echo "$gl_cv_func_gettimeofday_posix_signature" >&6; }
-    if test $gl_cv_func_gettimeofday_posix_signature = almost; then
-      gl_gettimeofday_timezone='struct timezone'
-    elif test $gl_cv_func_gettimeofday_posix_signature != yes; then
-      REPLACE_GETTIMEOFDAY=1
-    fi
-        if test $REPLACE_STRUCT_TIMEVAL = 1; then
-      REPLACE_GETTIMEOFDAY=1
-    fi
-            case "$host_os" in
-      mingw*) REPLACE_GETTIMEOFDAY=1 ;;
-    esac
-  fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_lib_assume_bcrypt" >&5
+$as_echo "$gl_cv_lib_assume_bcrypt" >&6; }
+      if test $gl_cv_lib_assume_bcrypt = yes; then
 
-cat >>confdefs.h <<_ACEOF
-#define GETTIMEOFDAY_TIMEZONE $gl_gettimeofday_timezone
-_ACEOF
+$as_echo "#define HAVE_LIB_BCRYPT 1" >>confdefs.h
 
+        LIB_GETRANDOM='-lbcrypt'
+      else
+        LIB_GETRANDOM='-ladvapi32'
+      fi
+      ;;
+    *)
+      LIB_GETRANDOM= ;;
+  esac
 
-  if test $HAVE_GETTIMEOFDAY = 0 || test $REPLACE_GETTIMEOFDAY = 1; then
 
+  if test $HAVE_GETRANDOM = 0 || test $REPLACE_GETRANDOM = 1; then
 
 
 
@@ -18209,22 +20100,24 @@ _ACEOF
 
 
 
-  gl_LIBOBJS="$gl_LIBOBJS gettimeofday.$ac_objext"
 
-    :
+  gl_LIBOBJS="$gl_LIBOBJS getrandom.$ac_objext"
+
   fi
 
 
 
 
 
-          GNULIB_GETTIMEOFDAY=1
+          GNULIB_GETRANDOM=1
 
 
 
 
 
-$as_echo "#define GNULIB_TEST_GETTIMEOFDAY 1" >>confdefs.h
+$as_echo "#define GNULIB_TEST_GETRANDOM 1" >>confdefs.h
+
+
 
 
 
@@ -18237,13 +20130,35 @@ $as_echo "#define GNULIB_TEST_GETTIMEOFDAY 1" >>confdefs.h
   ac_config_links="$ac_config_links $GNUmakefile:$GNUmakefile"
 
 
+  LIB_HARD_LOCALE="$LIB_SETLOCALE_NULL"
 
 
 
 
   PRIPTR_PREFIX=
   if test -n "$STDINT_H"; then
-        PRIPTR_PREFIX='"l"'
+            cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+         #ifdef _WIN64
+         LLP64
+         #endif
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  PRIPTR_PREFIX='"l"'
+else
+  PRIPTR_PREFIX='"ll"'
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
   else
         for glpfx in '' l ll I64; do
       case $glpfx in
@@ -18295,10 +20210,8 @@ else
 
             #if defined INT32_MAX && defined INTMAX_MAX
              #define CONDITION (INT32_MAX < INTMAX_MAX)
-            #elif HAVE_LONG_LONG_INT
-             #define CONDITION (sizeof (int) < sizeof (long long int))
             #else
-             #define CONDITION 0
+             #define CONDITION (sizeof (int) < sizeof (long long int))
             #endif
             int test[CONDITION ? 1 : -1];
 int
@@ -18347,10 +20260,8 @@ else
 
             #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
+             #define CONDITION (sizeof (long long int) == sizeof (long int))
             #endif
             int test[CONDITION ? 1 : -1];
 int
@@ -18401,10 +20312,8 @@ else
 
             #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
+             #define CONDITION (sizeof (unsigned int) < sizeof (unsigned long long int))
             #endif
             int test[CONDITION ? 1 : -1];
 int
@@ -18453,10 +20362,8 @@ else
 
             #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
+             #define CONDITION (sizeof (unsigned long long int) == sizeof (unsigned long int))
             #endif
             int test[CONDITION ? 1 : -1];
 int
@@ -18581,7 +20488,7 @@ $as_echo "$gl_cv_next_langinfo_h" >&6; }
 
   if test $ac_cv_header_langinfo_h = yes; then
     HAVE_LANGINFO_H=1
-                { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether langinfo.h defines CODESET" >&5
+                        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether langinfo.h defines CODESET" >&5
 $as_echo_n "checking whether langinfo.h defines CODESET... " >&6; }
 if ${gl_cv_header_langinfo_codeset+:} false; then :
   $as_echo_n "(cached) " >&6
@@ -18855,6 +20762,8 @@ $as_echo "#define HAVE___INLINE 1" >>confdefs.h
 
 
 
+
+
   case "$host_os" in
     solaris*)
 
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_locale_h_posix2001" >&5
 $as_echo "$gl_cv_header_locale_h_posix2001" >&6; }
 
-
-  if test $ac_cv_header_xlocale_h = yes; then
-    HAVE_XLOCALE_H=1
-                { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether locale.h defines locale_t" >&5
-$as_echo_n "checking whether locale.h defines locale_t... " >&6; }
-if ${gl_cv_header_locale_has_locale_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <locale.h>
-              locale_t x;
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_header_locale_has_locale_t=yes
-else
-  gl_cv_header_locale_has_locale_t=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_locale_has_locale_t" >&5
-$as_echo "$gl_cv_header_locale_has_locale_t" >&6; }
-    if test $gl_cv_header_locale_has_locale_t = yes; then
-      gl_cv_header_locale_h_needs_xlocale_h=no
-    else
-      gl_cv_header_locale_h_needs_xlocale_h=yes
-    fi
-  else
-    HAVE_XLOCALE_H=0
-    gl_cv_header_locale_h_needs_xlocale_h=no
-  fi
-
-
           { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct lconv is properly defined" >&5
 $as_echo_n "checking whether struct lconv is properly defined... " >&6; }
 if ${gl_cv_sys_struct_lconv_ok+:} false; then :
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_lconv_ok" >&5
 $as_echo "$gl_cv_sys_struct_lconv_ok" >&6; }
   if test $gl_cv_sys_struct_lconv_ok = no; then
-    REPLACE_STRUCT_LCONV=1
+            case "$host_os" in
+      mingw*)
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+#ifdef _MSC_VER
+ Special
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  $EGREP "Special" >/dev/null 2>&1; then :
+
+else
+  REPLACE_STRUCT_LCONV=1
+fi
+rm -f conftest*
+
+        ;;
+      *) REPLACE_STRUCT_LCONV=1 ;;
+    esac
   fi
 
 
@@ -19091,17 +20979,6 @@ $as_echo "#define GNULIB_TEST_LOCALECONV 1" >>confdefs.h
 
 
 
-
-
-
-
-
-
-
-  gl_LIBOBJS="$gl_LIBOBJS localtime-buffer.$ac_objext"
-
-
-
   if test "$gl_threads_api" = posix; then
     # OSF/1 4.0 and Mac OS X 10.1 lack the pthread_rwlock_t type and the
     # pthread_rwlock_* functions.
@@ -19118,7 +20995,7 @@ fi
     if $has_rwlock; then
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthread_rwlock_rdlock prefers a writer to a reader" >&5
+     { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthread_rwlock_rdlock prefers a writer to a reader" >&5
 $as_echo_n "checking whether pthread_rwlock_rdlock prefers a writer to a reader... " >&6; }
 if ${gl_cv_pthread_rwlock_rdlock_prefer_writer+:} false; then :
   $as_echo_n "(cached) " >&6
@@ -19126,7 +21003,25 @@ else
   save_LIBS="$LIBS"
      LIBS="$LIBS $LIBMULTITHREAD"
      if test "$cross_compiling" = yes; then :
-  gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing yes"
+  case "$host_os" in
+                         # Guess no on glibc systems.
+          *-gnu* | gnu*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;;
+                         # Guess no on musl systems.
+          *-musl*)       gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;;
+                         # Guess no on bionic systems.
+          *-android*)    gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;;
+                         # Guess yes on native Windows with the mingw-w64 winpthreads library.
+                         # Guess no on native Windows with the gnulib windows-rwlock module.
+          mingw*)        if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then
+                           gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing yes"
+                         else
+                           gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no"
+                         fi
+                         ;;
+                         # If we don't know, obey --enable-cross-guesses.
+          *)             gl_cv_pthread_rwlock_rdlock_prefer_writer="$gl_cross_guess_normal" ;;
+         esac
+
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -19333,6 +21228,9 @@ else
 # include <io.h>
 #endif
 
+
+$gl_mda_defines
+
 int
 main ()
 {
@@ -19469,19 +21367,7 @@ $as_echo "#define GNULIB_TEST_LSTAT 1" >>confdefs.h
 
 
 
-      for ac_header in stdlib.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default"
-if test "x$ac_cv_header_stdlib_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_STDLIB_H 1
-_ACEOF
-
-fi
-
-done
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5
 $as_echo_n "checking for GNU libc compatible malloc... " >&6; }
 if ${ac_cv_func_malloc_0_nonnull+:} false; then :
   $as_echo_n "(cached) " >&6
@@ -19492,18 +21378,14 @@ else
           *-gnu* | gnu* | *-musl* | freebsd* | netbsd* | openbsd* \
           | hpux* | solaris* | cygwin* | mingw*)
             ac_cv_func_malloc_0_nonnull="guessing yes" ;;
-          # If we don't know, assume the worst.
-          *) ac_cv_func_malloc_0_nonnull="guessing no" ;;
+          # If we don't know, obey --enable-cross-guesses.
+          *) ac_cv_func_malloc_0_nonnull="$gl_cross_guess_normal" ;;
         esac
 
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#if defined STDC_HEADERS || defined HAVE_STDLIB_H
-            # include <stdlib.h>
-            #else
-            char *malloc ();
-            #endif
+#include <stdlib.h>
 
 int
 main ()
@@ -19616,7 +21498,14 @@ $as_echo "#define GNULIB_TEST_MALLOC_POSIX 1" >>confdefs.h
 
 
 
-  if test $ac_cv_func_mbsinit = yes && test $ac_cv_func_mbrtowc = yes; then
+
+
+        if case "$host_os" in
+       mingw*) true ;;
+       *) test $ac_cv_func_mbsinit = yes ;;
+     esac \
+    && test $ac_cv_func_mbrtowc = yes; then
+
 
 
 
@@ -19674,6 +21563,50 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+      else
+        if test $LOCALE_FR_UTF8 != none; then
+          if test "$cross_compiling" = yes; then :
+  :
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+#include <locale.h>
+#include <string.h>
+/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
+   <wchar.h>.
+   BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
+   included before <wchar.h>.  */
+#include <stddef.h>
+#include <stdio.h>
+#include <time.h>
+#include <wchar.h>
+int main ()
+{
+  if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+    {
+      const char input[] = "B\303\274\303\237er"; /* "Büßer" */
+      mbstate_t state;
+      wchar_t wc;
+
+      memset (&state, '\0', sizeof (mbstate_t));
+      if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2))
+        if (mbsinit (&state))
+          return 2;
+    }
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  gl_cv_func_mbrtowc_incomplete_state=yes
+else
+  gl_cv_func_mbrtowc_incomplete_state=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+        fi
       fi
 
 fi
@@ -20136,6 +22069,144 @@ $as_echo "$gl_cv_func_mbrtowc_nul_retval" >&6; }
 
 
 
+     { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc stores incomplete characters" >&5
+$as_echo_n "checking whether mbrtowc stores incomplete characters... " >&6; }
+if ${gl_cv_func_mbrtowc_stores_incomplete+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+
+               case "$host_os" in
+               # Guess yes on native Windows.
+       mingw*) gl_cv_func_mbrtowc_stores_incomplete="guessing yes" ;;
+       *)      gl_cv_func_mbrtowc_stores_incomplete="guessing no" ;;
+     esac
+     case "$host_os" in
+       mingw*)
+         if test "$cross_compiling" = yes; then :
+  :
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+#include <locale.h>
+#include <string.h>
+/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
+   <wchar.h>.
+   BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
+   included before <wchar.h>.  */
+#include <stddef.h>
+#include <stdio.h>
+#include <time.h>
+#include <wchar.h>
+int main ()
+{
+  int result = 0;
+  if (setlocale (LC_ALL, "French_France.65001") != NULL)
+    {
+      wchar_t wc = (wchar_t) 0xBADFACE;
+      mbstate_t state;
+
+      memset (&state, '\0', sizeof (mbstate_t));
+      if (mbrtowc (&wc, "\303", 1, &state) == (size_t)(-2)
+          && wc != (wchar_t) 0xBADFACE)
+        result |= 1;
+    }
+  if (setlocale (LC_ALL, "Japanese_Japan.932") != NULL)
+    {
+      wchar_t wc = (wchar_t) 0xBADFACE;
+      mbstate_t state;
+
+      memset (&state, '\0', sizeof (mbstate_t));
+      if (mbrtowc (&wc, "\226", 1, &state) == (size_t)(-2)
+          && wc != (wchar_t) 0xBADFACE)
+        result |= 2;
+    }
+  if (setlocale (LC_ALL, "Chinese_Taiwan.950") != NULL)
+    {
+      wchar_t wc = (wchar_t) 0xBADFACE;
+      mbstate_t state;
+
+      memset (&state, '\0', sizeof (mbstate_t));
+      if (mbrtowc (&wc, "\245", 1, &state) == (size_t)(-2)
+          && wc != (wchar_t) 0xBADFACE)
+        result |= 4;
+    }
+  if (setlocale (LC_ALL, "Chinese_China.936") != NULL)
+    {
+      wchar_t wc = (wchar_t) 0xBADFACE;
+      mbstate_t state;
+
+      memset (&state, '\0', sizeof (mbstate_t));
+      if (mbrtowc (&wc, "\261", 1, &state) == (size_t)(-2)
+          && wc != (wchar_t) 0xBADFACE)
+        result |= 8;
+    }
+  return result;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  gl_cv_func_mbrtowc_stores_incomplete=no
+else
+  gl_cv_func_mbrtowc_stores_incomplete=yes
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+         ;;
+       *)
+
+         if test $LOCALE_FR_UTF8 != none; then
+           if test "$cross_compiling" = yes; then :
+  :
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+#include <locale.h>
+#include <string.h>
+/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
+   <wchar.h>.
+   BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
+   included before <wchar.h>.  */
+#include <stddef.h>
+#include <stdio.h>
+#include <time.h>
+#include <wchar.h>
+int main ()
+{
+  if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+    {
+      wchar_t wc = (wchar_t) 0xBADFACE;
+      mbstate_t state;
+
+      memset (&state, '\0', sizeof (mbstate_t));
+      if (mbrtowc (&wc, "\303", 1, &state) == (size_t)(-2)
+          && wc != (wchar_t) 0xBADFACE)
+        return 1;
+    }
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  gl_cv_func_mbrtowc_stores_incomplete=no
+else
+  gl_cv_func_mbrtowc_stores_incomplete=yes
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+         fi
+         ;;
+     esac
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_stores_incomplete" >&5
+$as_echo "$gl_cv_func_mbrtowc_stores_incomplete" >&6; }
+
+
+
      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works on empty input" >&5
 $as_echo_n "checking whether mbrtowc works on empty input... " >&6; }
 if ${gl_cv_func_mbrtowc_empty_input+:} false; then :
@@ -20181,16 +22252,16 @@ $as_echo "$gl_cv_func_mbrtowc_empty_input" >&6; }
 
      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C locale is free of encoding errors" >&5
 $as_echo_n "checking whether the C locale is free of encoding errors... " >&6; }
-if ${gl_cv_C_locale_sans_EILSEQ+:} false; then :
+if ${gl_cv_func_mbrtowc_C_locale_sans_EILSEQ+:} false; then :
   $as_echo_n "(cached) " >&6
 else
 
-               gl_cv_C_locale_sans_EILSEQ="guessing no"
+               gl_cv_func_mbrtowc_C_locale_sans_EILSEQ="$gl_cross_guess_normal"
 
      if test "$cross_compiling" = yes; then :
   case "$host_os" in
                  # Guess yes on native Windows.
-         mingw*) gl_cv_C_locale_sans_EILSEQ="guessing yes" ;;
+         mingw*) gl_cv_func_mbrtowc_C_locale_sans_EILSEQ="guessing yes" ;;
        esac
 
 else
@@ -20224,9 +22295,9 @@ main ()
 }
 _ACEOF
 if ac_fn_c_try_run "$LINENO"; then :
-  gl_cv_C_locale_sans_EILSEQ=yes
+  gl_cv_func_mbrtowc_C_locale_sans_EILSEQ=yes
 else
-  gl_cv_C_locale_sans_EILSEQ=no
+  gl_cv_func_mbrtowc_C_locale_sans_EILSEQ=no
 fi
 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
   conftest.$ac_objext conftest.beam conftest.$ac_ext
@@ -20234,8 +22305,8 @@ fi
 
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_C_locale_sans_EILSEQ" >&5
-$as_echo "$gl_cv_C_locale_sans_EILSEQ" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" >&5
+$as_echo "$gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" >&6; }
 
       case "$gl_cv_func_mbrtowc_null_arg1" in
         *yes) ;;
@@ -20269,6 +22340,14 @@ $as_echo "#define MBRTOWC_NUL_RETVAL_BUG 1" >>confdefs.h
            REPLACE_MBRTOWC=1
            ;;
       esac
+      case "$gl_cv_func_mbrtowc_stores_incomplete" in
+        *no) ;;
+        *)
+$as_echo "#define MBRTOWC_STORES_INCOMPLETE_BUG 1" >>confdefs.h
+
+           REPLACE_MBRTOWC=1
+           ;;
+      esac
       case "$gl_cv_func_mbrtowc_empty_input" in
         *yes) ;;
         *)
@@ -20277,16 +22356,130 @@ $as_echo "#define MBRTOWC_EMPTY_INPUT_BUG 1" >>confdefs.h
            REPLACE_MBRTOWC=1
            ;;
       esac
-      case $gl_cv_C_locale_sans_EILSEQ in
+      case "$gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" in
         *yes) ;;
         *)
-$as_echo "#define C_LOCALE_MAYBE_EILSEQ 1" >>confdefs.h
+$as_echo "#define MBRTOWC_IN_C_LOCALE_MAYBE_EILSEQ 1" >>confdefs.h
 
            REPLACE_MBRTOWC=1
            ;;
       esac
     fi
   fi
+  if test $REPLACE_MBSTATE_T = 1; then
+    case "$host_os" in
+      mingw*) LIB_MBRTOWC= ;;
+      *)
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether imported symbols can be declared weak" >&5
+$as_echo_n "checking whether imported symbols can be declared weak... " >&6; }
+if ${gl_cv_have_weak+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  gl_cv_have_weak=no
+          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+extern void xyzzy ();
+#pragma weak xyzzy
+int
+main ()
+{
+xyzzy();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  gl_cv_have_weak=maybe
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+     if test $gl_cv_have_weak = maybe; then
+                     if test "$cross_compiling" = yes; then :
+                      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#ifdef __ELF__
+             Extensible Linking Format
+             #endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  $EGREP "Extensible Linking Format" >/dev/null 2>&1; then :
+  gl_cv_have_weak="guessing yes"
+else
+  gl_cv_have_weak="guessing no"
+fi
+rm -f conftest*
+
+
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+#include <stdio.h>
+#pragma weak fputs
+int main ()
+{
+  return (fputs == NULL);
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  gl_cv_have_weak=yes
+else
+  gl_cv_have_weak=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+     fi
+          case " $LDFLAGS " in
+       *" -static "*) gl_cv_have_weak=no ;;
+     esac
+                    case "$gl_cv_have_weak" in
+       *yes)
+         case "$host_os" in
+           freebsd* | dragonfly*)
+             : > conftest1.c
+             $CC $CPPFLAGS $CFLAGS $LDFLAGS -fPIC -shared -o libempty.so conftest1.c -lpthread >&5 2>&1
+             cat <<EOF > conftest2.c
+#include <pthread.h>
+#pragma weak pthread_mutexattr_gettype
+int main ()
+{
+  return (pthread_mutexattr_gettype != NULL);
+}
+EOF
+             $CC $CPPFLAGS $CFLAGS $LDFLAGS -o conftest conftest2.c libempty.so >&5 2>&1 \
+               || gl_cv_have_weak=no
+             rm -f conftest1.c libempty.so conftest2.c conftest
+             ;;
+         esac
+         ;;
+     esac
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_weak" >&5
+$as_echo "$gl_cv_have_weak" >&6; }
+  case "$gl_cv_have_weak" in
+    *yes)
+
+$as_echo "#define HAVE_WEAK_SYMBOLS 1" >>confdefs.h
+
+      ;;
+  esac
+
+        case "$gl_cv_have_weak" in
+          *yes) LIB_MBRTOWC= ;;
+          *)    LIB_MBRTOWC="$LIBPTHREAD" ;;
+        esac
+        ;;
+    esac
+  else
+    LIB_MBRTOWC=
+  fi
+
 
   if test $HAVE_MBRTOWC = 0 || test $REPLACE_MBRTOWC = 1; then
 
@@ -20299,6 +22492,114 @@ $as_echo "#define C_LOCALE_MAYBE_EILSEQ 1" >>confdefs.h
 
   gl_LIBOBJS="$gl_LIBOBJS mbrtowc.$ac_objext"
 
+    if test $REPLACE_MBSTATE_T = 1; then
+
+
+
+
+
+
+
+
+  gl_LIBOBJS="$gl_LIBOBJS lc-charset-dispatch.$ac_objext"
+
+
+
+
+
+
+
+
+
+  gl_LIBOBJS="$gl_LIBOBJS mbtowc-lock.$ac_objext"
+
+
+
+
+  CFLAG_VISIBILITY=
+  HAVE_VISIBILITY=0
+  if test -n "$GCC"; then
+                { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the -Werror option is usable" >&5
+$as_echo_n "checking whether the -Werror option is usable... " >&6; }
+if ${gl_cv_cc_vis_werror+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  gl_save_CFLAGS="$CFLAGS"
+       CFLAGS="$CFLAGS -Werror"
+       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_cc_vis_werror=yes
+else
+  gl_cv_cc_vis_werror=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       CFLAGS="$gl_save_CFLAGS"
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_vis_werror" >&5
+$as_echo "$gl_cv_cc_vis_werror" >&6; }
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for simple visibility declarations" >&5
+$as_echo_n "checking for simple visibility declarations... " >&6; }
+if ${gl_cv_cc_visibility+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  gl_save_CFLAGS="$CFLAGS"
+       CFLAGS="$CFLAGS -fvisibility=hidden"
+                                          if test $gl_cv_cc_vis_werror = yes; then
+         CFLAGS="$CFLAGS -Werror"
+       fi
+       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+extern __attribute__((__visibility__("hidden"))) int hiddenvar;
+              extern __attribute__((__visibility__("default"))) int exportedvar;
+              extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void);
+              extern __attribute__((__visibility__("default"))) int exportedfunc (void);
+              void dummyfunc (void) {}
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_cc_visibility=yes
+else
+  gl_cv_cc_visibility=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       CFLAGS="$gl_save_CFLAGS"
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_visibility" >&5
+$as_echo "$gl_cv_cc_visibility" >&6; }
+    if test $gl_cv_cc_visibility = yes; then
+      CFLAG_VISIBILITY="-fvisibility=hidden"
+      HAVE_VISIBILITY=1
+    fi
+  fi
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_VISIBILITY $HAVE_VISIBILITY
+_ACEOF
+
+
+
+    fi
 
 
   :
@@ -20330,7 +22631,13 @@ $as_echo "#define GNULIB_TEST_MBRTOWC 1" >>confdefs.h
 
 
 
-  if test $ac_cv_func_mbsinit = yes && test $ac_cv_func_mbrtowc = yes; then
+
+        if case "$host_os" in
+       mingw*) true ;;
+       *) test $ac_cv_func_mbsinit = yes ;;
+     esac \
+    && test $ac_cv_func_mbrtowc = yes; then
+
 
 
 
@@ -20388,6 +22695,50 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+      else
+        if test $LOCALE_FR_UTF8 != none; then
+          if test "$cross_compiling" = yes; then :
+  :
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+#include <locale.h>
+#include <string.h>
+/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
+   <wchar.h>.
+   BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
+   included before <wchar.h>.  */
+#include <stddef.h>
+#include <stdio.h>
+#include <time.h>
+#include <wchar.h>
+int main ()
+{
+  if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+    {
+      const char input[] = "B\303\274\303\237er"; /* "Büßer" */
+      mbstate_t state;
+      wchar_t wc;
+
+      memset (&state, '\0', sizeof (mbstate_t));
+      if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2))
+        if (mbsinit (&state))
+          return 2;
+    }
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  gl_cv_func_mbrtowc_incomplete_state=yes
+else
+  gl_cv_func_mbrtowc_incomplete_state=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+        fi
       fi
 
 fi
@@ -20605,14 +22956,14 @@ if ${gl_cv_func_mkdir_trailing_slash_works+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   rm -rf conftest.dir
-      if test "$cross_compiling" = yes; then :
+     if test "$cross_compiling" = yes; then :
   case "$host_os" in
-                          # Guess yes on Linux systems.
-         linux-* | linux) gl_cv_func_mkdir_trailing_slash_works="guessing yes" ;;
-                          # Guess yes on glibc systems.
-         *-gnu* | gnu*)   gl_cv_func_mkdir_trailing_slash_works="guessing yes" ;;
-                          # Guess yes on MSVC, no on mingw.
-         mingw*)          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+                           # Guess yes on Linux systems.
+          linux-* | linux) gl_cv_func_mkdir_trailing_slash_works="guessing yes" ;;
+                           # Guess yes on glibc systems.
+          *-gnu* | gnu*)   gl_cv_func_mkdir_trailing_slash_works="guessing yes" ;;
+                           # Guess yes on MSVC, no on mingw.
+          mingw*)          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 #ifdef _MSC_VER
@@ -20628,17 +22979,20 @@ else
 fi
 rm -f conftest*
 
-                          ;;
-                          # If we don't know, assume the worst.
-         *)               gl_cv_func_mkdir_trailing_slash_works="guessing no" ;;
-       esac
+                           ;;
+                           # If we don't know, obey --enable-cross-guesses.
+          *)               gl_cv_func_mkdir_trailing_slash_works="$gl_cross_guess_normal" ;;
+        esac
 
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
-#       include <sys/types.h>
-#       include <sys/stat.h>
+          #include <sys/types.h>
+          #include <sys/stat.h>
+
+
+$gl_mda_defines
 
 int
 main ()
@@ -20657,8 +23011,7 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
-    rm -rf conftest.dir
-
+     rm -rf conftest.dir
 
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mkdir_trailing_slash_works" >&5
@@ -20676,24 +23029,27 @@ if ${gl_cv_func_mkdir_trailing_dot_works+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   rm -rf conftest.dir
-      if test "$cross_compiling" = yes; then :
+     if test "$cross_compiling" = yes; then :
   case "$host_os" in
-                        # Guess yes on glibc systems.
-         *-gnu* | gnu*) gl_cv_func_mkdir_trailing_dot_works="guessing yes" ;;
-                        # Guess yes on musl systems.
-         *-musl*)       gl_cv_func_mkdir_trailing_dot_works="guessing yes" ;;
-                        # Guess no on native Windows.
-         mingw*)        gl_cv_func_mkdir_trailing_dot_works="guessing no" ;;
-                        # If we don't know, assume the worst.
-         *)             gl_cv_func_mkdir_trailing_dot_works="guessing no" ;;
-       esac
+                         # Guess yes on glibc systems.
+          *-gnu* | gnu*) gl_cv_func_mkdir_trailing_dot_works="guessing yes" ;;
+                         # Guess yes on musl systems.
+          *-musl*)       gl_cv_func_mkdir_trailing_dot_works="guessing yes" ;;
+                         # Guess no on native Windows.
+          mingw*)        gl_cv_func_mkdir_trailing_dot_works="guessing no" ;;
+                         # If we don't know, obey --enable-cross-guesses.
+          *)             gl_cv_func_mkdir_trailing_dot_works="$gl_cross_guess_normal" ;;
+        esac
 
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
-#       include <sys/types.h>
-#       include <sys/stat.h>
+          #include <sys/types.h>
+          #include <sys/stat.h>
+
+
+$gl_mda_defines
 
 int
 main ()
@@ -20712,7 +23068,7 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
-    rm -rf conftest.dir
+     rm -rf conftest.dir
 
 
 fi
@@ -20760,14 +23116,18 @@ else
              *-musl*)       gl_cv_func_working_mkstemp="guessing yes" ;;
                             # Guess no on native Windows.
              mingw*)        gl_cv_func_working_mkstemp="guessing no" ;;
-                            # If we don't know, assume the worst.
-             *)             gl_cv_func_working_mkstemp="guessing no" ;;
+                            # If we don't know, obey --enable-cross-guesses.
+             *)             gl_cv_func_working_mkstemp="$gl_cross_guess_normal" ;;
            esac
 
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $ac_includes_default
+
+
+$gl_mda_defines
+
 int
 main ()
 {
@@ -20893,7 +23253,11 @@ _ACEOF
 
 
 
-     if test $ac_cv_func_nl_langinfo = yes; then
+
+
+
+
+  if test $ac_cv_func_nl_langinfo = yes; then
     # On Irix 6.5, YESEXPR is defined, but nl_langinfo(YESEXPR) is broken.
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether YESEXPR works" >&5
 $as_echo_n "checking whether YESEXPR works... " >&6; }
@@ -20943,13 +23307,24 @@ $as_echo "$gl_cv_func_nl_langinfo_yesexpr_works" >&6; }
 
 cat >>confdefs.h <<_ACEOF
 #define FUNC_NL_LANGINFO_YESEXPR_WORKS $FUNC_NL_LANGINFO_YESEXPR_WORKS
+_ACEOF
+
+    # On Solaris 10 and Solaris 11.3, nl_langinfo is not multithread-safe.
+    case "$host_os" in
+      solaris*) NL_LANGINFO_MTSAFE=0 ;;
+      *)        NL_LANGINFO_MTSAFE=1 ;;
+    esac
+
+cat >>confdefs.h <<_ACEOF
+#define NL_LANGINFO_MTSAFE $NL_LANGINFO_MTSAFE
 _ACEOF
 
     if test $HAVE_LANGINFO_CODESET = 1 \
        && test $HAVE_LANGINFO_T_FMT_AMPM = 1 \
        && test $HAVE_LANGINFO_ALTMON = 1 \
        && test $HAVE_LANGINFO_ERA = 1 \
-       && test $FUNC_NL_LANGINFO_YESEXPR_WORKS = 1; then
+       && test $FUNC_NL_LANGINFO_YESEXPR_WORKS = 1 \
+       && test $NL_LANGINFO_MTSAFE = 1; then
       :
     else
       REPLACE_NL_LANGINFO=1
@@ -20960,6 +23335,12 @@ $as_echo "#define REPLACE_NL_LANGINFO 1" >>confdefs.h
   else
     HAVE_NL_LANGINFO=0
   fi
+  if test $HAVE_NL_LANGINFO = 0 || test $HAVE_LANGINFO_CODESET = 0; then
+    LIB_NL_LANGINFO="$LIB_SETLOCALE_NULL"
+  else
+    LIB_NL_LANGINFO=
+  fi
+
 
   if test $HAVE_NL_LANGINFO = 0 || test $REPLACE_NL_LANGINFO = 1; then
 
@@ -20972,6 +23353,104 @@ $as_echo "#define REPLACE_NL_LANGINFO 1" >>confdefs.h
 
   gl_LIBOBJS="$gl_LIBOBJS nl_langinfo.$ac_objext"
 
+  fi
+  if test $REPLACE_NL_LANGINFO = 1 && test $NL_LANGINFO_MTSAFE = 0; then
+
+
+
+
+
+
+
+
+  gl_LIBOBJS="$gl_LIBOBJS nl_langinfo-lock.$ac_objext"
+
+
+
+
+  CFLAG_VISIBILITY=
+  HAVE_VISIBILITY=0
+  if test -n "$GCC"; then
+                { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the -Werror option is usable" >&5
+$as_echo_n "checking whether the -Werror option is usable... " >&6; }
+if ${gl_cv_cc_vis_werror+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  gl_save_CFLAGS="$CFLAGS"
+       CFLAGS="$CFLAGS -Werror"
+       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_cc_vis_werror=yes
+else
+  gl_cv_cc_vis_werror=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       CFLAGS="$gl_save_CFLAGS"
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_vis_werror" >&5
+$as_echo "$gl_cv_cc_vis_werror" >&6; }
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for simple visibility declarations" >&5
+$as_echo_n "checking for simple visibility declarations... " >&6; }
+if ${gl_cv_cc_visibility+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  gl_save_CFLAGS="$CFLAGS"
+       CFLAGS="$CFLAGS -fvisibility=hidden"
+                                          if test $gl_cv_cc_vis_werror = yes; then
+         CFLAGS="$CFLAGS -Werror"
+       fi
+       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+extern __attribute__((__visibility__("hidden"))) int hiddenvar;
+              extern __attribute__((__visibility__("default"))) int exportedvar;
+              extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void);
+              extern __attribute__((__visibility__("default"))) int exportedfunc (void);
+              void dummyfunc (void) {}
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_cc_visibility=yes
+else
+  gl_cv_cc_visibility=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       CFLAGS="$gl_save_CFLAGS"
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_visibility" >&5
+$as_echo "$gl_cv_cc_visibility" >&6; }
+    if test $gl_cv_cc_visibility = yes; then
+      CFLAG_VISIBILITY="-fvisibility=hidden"
+      HAVE_VISIBILITY=1
+    fi
+  fi
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_VISIBILITY $HAVE_VISIBILITY
+_ACEOF
+
+
+
   fi
 
 
@@ -20991,6 +23470,126 @@ $as_echo "#define GNULIB_TEST_NL_LANGINFO 1" >>confdefs.h
 
 
 
+  case "$host_os" in
+    mingw* | pw*)
+      REPLACE_OPEN=1
+      ;;
+    *)
+
+      if test "$gl_cv_macro_O_CLOEXEC" != yes; then
+        REPLACE_OPEN=1
+      fi
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether open recognizes a trailing slash" >&5
+$as_echo_n "checking whether open recognizes a trailing slash... " >&6; }
+if ${gl_cv_func_open_slash+:} false; 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] | solaris2.[0-9].*)
+            gl_cv_func_open_slash="guessing no" ;;
+          *)
+            gl_cv_func_open_slash="guessing yes" ;;
+        esac
+
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+#include <fcntl.h>
+#if HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+
+
+$gl_mda_defines
+
+int main ()
+{
+  int result = 0;
+#if HAVE_LSTAT
+  if (open ("conftest.lnk/", O_RDONLY) != -1)
+    result |= 1;
+#endif
+  if (open ("conftest.sl/", O_CREAT, 0600) >= 0)
+    result |= 2;
+  return result;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  gl_cv_func_open_slash=yes
+else
+  gl_cv_func_open_slash=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+     rm -f conftest.sl conftest.tmp conftest.lnk
+
+fi
+{ $as_echo "$as_me:${as_lineno-$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 "#define OPEN_TRAILING_SLASH_BUG 1" >>confdefs.h
+
+      ;;
+  esac
+
+      case "$gl_cv_func_open_slash" in
+        *no)
+          REPLACE_OPEN=1
+          ;;
+      esac
+      ;;
+  esac
+
+
+
+  if test $REPLACE_OPEN = 1; then
+
+
+
+
+
+
+
+
+  gl_LIBOBJS="$gl_LIBOBJS open.$ac_objext"
+
+
+
+  :
+
+  fi
+
+
+
+
+
+          GNULIB_OPEN=1
+
+
+
+
+
+$as_echo "#define GNULIB_TEST_OPEN 1" >>confdefs.h
+
+
+
+
+
+
   ac_fn_c_check_decl "$LINENO" "program_invocation_name" "ac_cv_have_decl_program_invocation_name" "#include <errno.h>
 "
 if test "x$ac_cv_have_decl_program_invocation_name" = xyes; then :
@@ -21019,6 +23618,7 @@ _ACEOF
       :
 
 
+
   :
 
 
@@ -21106,8 +23706,8 @@ else
             linux-* | linux) gl_cv_func_readlink_works="guessing yes" ;;
                              # Guess yes on glibc systems.
             *-gnu* | gnu*)   gl_cv_func_readlink_works="guessing yes" ;;
-                             # If we don't know, assume the worst.
-            *)               gl_cv_func_readlink_works="guessing no" ;;
+                             # If we don't know, obey --enable-cross-guesses.
+            *)               gl_cv_func_readlink_works="$gl_cross_guess_normal" ;;
           esac
 
 else
@@ -21185,19 +23785,7 @@ $as_echo "#define GNULIB_TEST_READLINK 1" >>confdefs.h
 
 
 
-      for ac_header in stdlib.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default"
-if test "x$ac_cv_header_stdlib_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_STDLIB_H 1
-_ACEOF
-
-fi
-
-done
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible realloc" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible realloc" >&5
 $as_echo_n "checking for GNU libc compatible realloc... " >&6; }
 if ${ac_cv_func_realloc_0_nonnull+:} false; then :
   $as_echo_n "(cached) " >&6
@@ -21208,18 +23796,14 @@ else
           *-gnu* | gnu* | *-musl* | freebsd* | netbsd* | openbsd* \
           | hpux* | solaris* | cygwin* | mingw*)
             ac_cv_func_realloc_0_nonnull="guessing yes" ;;
-          # If we don't know, assume the worst.
-          *) ac_cv_func_realloc_0_nonnull="guessing no" ;;
+          # If we don't know, obey --enable-cross-guesses.
+          *) ac_cv_func_realloc_0_nonnull="$gl_cross_guess_normal" ;;
         esac
 
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#if defined STDC_HEADERS || defined HAVE_STDLIB_H
-            # include <stdlib.h>
-            #else
-            char *realloc ();
-            #endif
+#include <stdlib.h>
 
 int
 main ()
@@ -21345,8 +23929,8 @@ else
   case "$host_os" in
                    # Guess no on native Windows.
            mingw*) gl_cv_func_re_compile_pattern_working="guessing no" ;;
-                   # Otherwise, assume it is not working.
-           *)      gl_cv_func_re_compile_pattern_working="guessing no" ;;
+                   # Otherwise obey --enable-cross-guesses.
+           *)      gl_cv_func_re_compile_pattern_working="$gl_cross_guess_normal" ;;
          esac
 
 else
@@ -21411,11 +23995,14 @@ int result = 0;
                   s = re_compile_pattern (pat, sizeof pat - 1, &regex);
                   if (s)
                     result |= 1;
-                  else if (re_search (&regex, data, sizeof data - 1,
-                                      0, sizeof data - 1, &regs)
-                           != -1)
-                    result |= 1;
-                  regfree (&regex);
+                  else
+                    {
+                      if (re_search (&regex, data, sizeof data - 1,
+                                     0, sizeof data - 1, &regs)
+                          != -1)
+                        result |= 1;
+                      regfree (&regex);
+                    }
                 }
 
                 {
@@ -21446,8 +24033,8 @@ int result = 0;
                                      0, sizeof data - 1, 0);
                       if (i != 0 && i != 21)
                         result |= 1;
+                      regfree (&regex);
                     }
-                  regfree (&regex);
                 }
 
                 if (! setlocale (LC_ALL, "C"))
@@ -21460,9 +24047,13 @@ int result = 0;
             s = re_compile_pattern ("a[^x]b", 6, &regex);
             if (s)
               result |= 2;
-            /* This should fail, but succeeds for glibc-2.5.  */
-            else if (re_search (&regex, "a\nb", 3, 0, 3, &regs) != -1)
-              result |= 2;
+            else
+              {
+                /* This should fail, but succeeds for glibc-2.5.  */
+                if (re_search (&regex, "a\nb", 3, 0, 3, &regs) != -1)
+                  result |= 2;
+                regfree (&regex);
+              }
 
             /* This regular expression is from Spencer ere test number 75
                in grep-2.3.  */
@@ -21474,7 +24065,10 @@ int result = 0;
             s = re_compile_pattern ("a[[:]:]]b\n", 11, &regex);
             /* This should fail with _Invalid character class name_ error.  */
             if (!s)
-              result |= 4;
+              {
+                result |= 4;
+                regfree (&regex);
+              }
 
             /* Ensure that [b-a] is diagnosed as invalid, when
                using RE_NO_EMPTY_RANGES. */
@@ -21482,13 +24076,18 @@ int result = 0;
             memset (&regex, 0, sizeof regex);
             s = re_compile_pattern ("a[b-a]", 6, &regex);
             if (s == 0)
-              result |= 8;
+              {
+                result |= 8;
+                regfree (&regex);
+              }
 
             /* This should succeed, but does not for glibc-2.1.3.  */
             memset (&regex, 0, sizeof regex);
             s = re_compile_pattern ("{1", 2, &regex);
             if (s)
               result |= 8;
+            else
+              regfree (&regex);
 
             /* The following example is derived from a problem report
                against gawk from Jorge Stolfi <stolfi@ic.unicamp.br>.  */
@@ -21496,17 +24095,35 @@ int result = 0;
             s = re_compile_pattern ("[an\371]*n", 7, &regex);
             if (s)
               result |= 8;
-            /* This should match, but does not for glibc-2.2.1.  */
-            else if (re_match (&regex, "an", 2, 0, &regs) != 2)
-              result |= 8;
+            else
+              {
+                /* This should match, but does not for glibc-2.2.1.  */
+                if (re_match (&regex, "an", 2, 0, &regs) != 2)
+                  result |= 8;
+                else
+                  {
+                    free (regs.start);
+                    free (regs.end);
+                  }
+                regfree (&regex);
+              }
 
             memset (&regex, 0, sizeof regex);
             s = re_compile_pattern ("x", 1, &regex);
             if (s)
               result |= 8;
-            /* glibc-2.2.93 does not work with a negative RANGE argument.  */
-            else if (re_search (&regex, "wxy", 3, 2, -2, &regs) != 1)
-              result |= 8;
+            else
+              {
+                /* glibc-2.2.93 does not work with a negative RANGE argument.  */
+                if (re_search (&regex, "wxy", 3, 2, -2, &regs) != 1)
+                  result |= 8;
+                else
+                  {
+                    free (regs.start);
+                    free (regs.end);
+                  }
+                regfree (&regex);
+              }
 
             /* The version of regex.c in older versions of gnulib
                ignored RE_ICASE.  Detect that problem too.  */
@@ -21515,8 +24132,17 @@ int result = 0;
             s = re_compile_pattern ("x", 1, &regex);
             if (s)
               result |= 16;
-            else if (re_search (&regex, "WXY", 3, 0, 3, &regs) < 0)
-              result |= 16;
+            else
+              {
+                if (re_search (&regex, "WXY", 3, 0, 3, &regs) < 0)
+                  result |= 16;
+                else
+                  {
+                    free (regs.start);
+                    free (regs.end);
+                  }
+                regfree (&regex);
+              }
 
             /* Catch a bug reported by Vin Shelton in
                https://lists.gnu.org/r/bug-coreutils/2007-06/msg00089.html
@@ -21528,6 +24154,8 @@ int result = 0;
             s = re_compile_pattern ("[[:alnum:]_-]\\\\+$", 16, &regex);
             if (s)
               result |= 32;
+            else
+              regfree (&regex);
 
             /* REG_STARTEND was added to glibc on 2004-01-15.
                Reject older versions.  */
@@ -21542,8 +24170,14 @@ int result = 0;
             re_set_syntax (RE_SYNTAX_POSIX_EGREP);
             memset (&regex, 0, sizeof regex);
             s = re_compile_pattern ("0|()0|\\1|0", 10, &regex);
-            if (!s || strcmp (s, "Invalid back reference"))
+            if (!s)
               result |= 64;
+            else
+              {
+                if (strcmp (s, "Invalid back reference"))
+                  result |= 64;
+                regfree (&regex);
+              }
 
 #if 0
             /* It would be nice to reject hosts whose regoff_t values are too
@@ -21769,6 +24403,315 @@ $as_echo "#define GNULIB_TEST_RPMATCH 1" >>confdefs.h
 
 
 
+
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether setlocale (LC_ALL, NULL) is multithread-safe" >&5
+$as_echo_n "checking whether setlocale (LC_ALL, NULL) is multithread-safe... " >&6; }
+if ${gl_cv_func_setlocale_null_all_mtsafe+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case "$host_os" in
+       # Guess no on musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku, Cygwin.
+       *-musl* | darwin* | freebsd* | netbsd* | openbsd* | aix* | haiku* | cygwin*)
+         gl_cv_func_setlocale_null_all_mtsafe=no ;;
+       # Guess yes on glibc, HP-UX, IRIX, Solaris, native Windows.
+       *-gnu* | gnu* | hpux* | irix* | solaris* | mingw*)
+         gl_cv_func_setlocale_null_all_mtsafe=yes ;;
+       # If we don't know, obey --enable-cross-guesses.
+       *)
+         gl_cv_func_setlocale_null_all_mtsafe="$gl_cross_guess_normal" ;;
+     esac
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_setlocale_null_all_mtsafe" >&5
+$as_echo "$gl_cv_func_setlocale_null_all_mtsafe" >&6; }
+    case "$host_os" in
+    mingw*) ;;
+    *)
+      if test $gl_pthread_api = no && test $ac_cv_header_threads_h = no; then
+        gl_cv_func_setlocale_null_all_mtsafe="trivially yes"
+      fi
+      ;;
+  esac
+  case "$gl_cv_func_setlocale_null_all_mtsafe" in
+    *yes) SETLOCALE_NULL_ALL_MTSAFE=1 ;;
+    *)    SETLOCALE_NULL_ALL_MTSAFE=0 ;;
+  esac
+
+cat >>confdefs.h <<_ACEOF
+#define SETLOCALE_NULL_ALL_MTSAFE $SETLOCALE_NULL_ALL_MTSAFE
+_ACEOF
+
+
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether setlocale (category, NULL) is multithread-safe" >&5
+$as_echo_n "checking whether setlocale (category, NULL) is multithread-safe... " >&6; }
+if ${gl_cv_func_setlocale_null_one_mtsafe+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case "$host_os" in
+       # Guess no on OpenBSD, AIX.
+       openbsd* | aix*)
+         gl_cv_func_setlocale_null_one_mtsafe=no ;;
+       # Guess yes on glibc, musl libc, macOS, FreeBSD, NetBSD, HP-UX, IRIX, Solaris, Haiku, Cygwin, native Windows.
+       *-gnu* | gnu* | *-musl* | darwin* | freebsd* | netbsd* | hpux* | irix* | solaris* | haiku* | cygwin* | mingw*)
+         gl_cv_func_setlocale_null_one_mtsafe=yes ;;
+       # If we don't know, obey --enable-cross-guesses.
+       *)
+         gl_cv_func_setlocale_null_one_mtsafe="$gl_cross_guess_normal" ;;
+     esac
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_setlocale_null_one_mtsafe" >&5
+$as_echo "$gl_cv_func_setlocale_null_one_mtsafe" >&6; }
+    case "$host_os" in
+    mingw*) ;;
+    *)
+      if test $gl_pthread_api = no && test $ac_cv_header_threads_h = no; then
+        gl_cv_func_setlocale_null_one_mtsafe="trivially yes"
+      fi
+      ;;
+  esac
+  case "$gl_cv_func_setlocale_null_one_mtsafe" in
+    *yes) SETLOCALE_NULL_ONE_MTSAFE=1 ;;
+    *)    SETLOCALE_NULL_ONE_MTSAFE=0 ;;
+  esac
+
+cat >>confdefs.h <<_ACEOF
+#define SETLOCALE_NULL_ONE_MTSAFE $SETLOCALE_NULL_ONE_MTSAFE
+_ACEOF
+
+
+    if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then
+    case "$host_os" in
+      mingw*) LIB_SETLOCALE_NULL= ;;
+      *)
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether imported symbols can be declared weak" >&5
+$as_echo_n "checking whether imported symbols can be declared weak... " >&6; }
+if ${gl_cv_have_weak+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  gl_cv_have_weak=no
+          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+extern void xyzzy ();
+#pragma weak xyzzy
+int
+main ()
+{
+xyzzy();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  gl_cv_have_weak=maybe
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+     if test $gl_cv_have_weak = maybe; then
+                     if test "$cross_compiling" = yes; then :
+                      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#ifdef __ELF__
+             Extensible Linking Format
+             #endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  $EGREP "Extensible Linking Format" >/dev/null 2>&1; then :
+  gl_cv_have_weak="guessing yes"
+else
+  gl_cv_have_weak="guessing no"
+fi
+rm -f conftest*
+
+
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+#include <stdio.h>
+#pragma weak fputs
+int main ()
+{
+  return (fputs == NULL);
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  gl_cv_have_weak=yes
+else
+  gl_cv_have_weak=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+     fi
+          case " $LDFLAGS " in
+       *" -static "*) gl_cv_have_weak=no ;;
+     esac
+                    case "$gl_cv_have_weak" in
+       *yes)
+         case "$host_os" in
+           freebsd* | dragonfly*)
+             : > conftest1.c
+             $CC $CPPFLAGS $CFLAGS $LDFLAGS -fPIC -shared -o libempty.so conftest1.c -lpthread >&5 2>&1
+             cat <<EOF > conftest2.c
+#include <pthread.h>
+#pragma weak pthread_mutexattr_gettype
+int main ()
+{
+  return (pthread_mutexattr_gettype != NULL);
+}
+EOF
+             $CC $CPPFLAGS $CFLAGS $LDFLAGS -o conftest conftest2.c libempty.so >&5 2>&1 \
+               || gl_cv_have_weak=no
+             rm -f conftest1.c libempty.so conftest2.c conftest
+             ;;
+         esac
+         ;;
+     esac
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_weak" >&5
+$as_echo "$gl_cv_have_weak" >&6; }
+  case "$gl_cv_have_weak" in
+    *yes)
+
+$as_echo "#define HAVE_WEAK_SYMBOLS 1" >>confdefs.h
+
+      ;;
+  esac
+
+        case "$gl_cv_have_weak" in
+          *yes) LIB_SETLOCALE_NULL= ;;
+          *)    LIB_SETLOCALE_NULL="$LIBPTHREAD" ;;
+        esac
+        ;;
+    esac
+  else
+    LIB_SETLOCALE_NULL=
+  fi
+
+
+  if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then
+
+
+
+
+
+
+
+
+  gl_LIBOBJS="$gl_LIBOBJS setlocale-lock.$ac_objext"
+
+
+
+
+  CFLAG_VISIBILITY=
+  HAVE_VISIBILITY=0
+  if test -n "$GCC"; then
+                { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the -Werror option is usable" >&5
+$as_echo_n "checking whether the -Werror option is usable... " >&6; }
+if ${gl_cv_cc_vis_werror+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  gl_save_CFLAGS="$CFLAGS"
+       CFLAGS="$CFLAGS -Werror"
+       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_cc_vis_werror=yes
+else
+  gl_cv_cc_vis_werror=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       CFLAGS="$gl_save_CFLAGS"
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_vis_werror" >&5
+$as_echo "$gl_cv_cc_vis_werror" >&6; }
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for simple visibility declarations" >&5
+$as_echo_n "checking for simple visibility declarations... " >&6; }
+if ${gl_cv_cc_visibility+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  gl_save_CFLAGS="$CFLAGS"
+       CFLAGS="$CFLAGS -fvisibility=hidden"
+                                          if test $gl_cv_cc_vis_werror = yes; then
+         CFLAGS="$CFLAGS -Werror"
+       fi
+       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+extern __attribute__((__visibility__("hidden"))) int hiddenvar;
+              extern __attribute__((__visibility__("default"))) int exportedvar;
+              extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void);
+              extern __attribute__((__visibility__("default"))) int exportedfunc (void);
+              void dummyfunc (void) {}
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_cc_visibility=yes
+else
+  gl_cv_cc_visibility=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       CFLAGS="$gl_save_CFLAGS"
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_visibility" >&5
+$as_echo "$gl_cv_cc_visibility" >&6; }
+    if test $gl_cv_cc_visibility = yes; then
+      CFLAG_VISIBILITY="-fvisibility=hidden"
+      HAVE_VISIBILITY=1
+    fi
+  fi
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_VISIBILITY $HAVE_VISIBILITY
+_ACEOF
+
+
+
+  fi
+
+
+
+
+
+          GNULIB_SETLOCALE_NULL=1
+
+
+
+
+
+$as_echo "#define GNULIB_TEST_SETLOCALE_NULL 1" >>confdefs.h
+
+
+
+
+
                ac_fn_c_check_decl "$LINENO" "sleep" "ac_cv_have_decl_sleep" "#include <unistd.h>
 "
 if test "x$ac_cv_have_decl_sleep" = xyes; then :
@@ -21798,8 +24741,8 @@ else
          *-musl*)       gl_cv_func_sleep_works="guessing yes" ;;
                         # Guess no on native Windows.
          mingw*)        gl_cv_func_sleep_works="guessing no" ;;
-                        # If we don't know, assume the worst.
-         *)             gl_cv_func_sleep_works="guessing no" ;;
+                        # If we don't know, obey --enable-cross-guesses.
+         *)             gl_cv_func_sleep_works="$gl_cross_guess_normal" ;;
        esac
 
 else
@@ -21942,8 +24885,8 @@ else
               linux-* | linux) gl_cv_func_stat_file_slash="guessing yes" ;;
                                # Guess yes on glibc systems.
               *-gnu* | gnu*)   gl_cv_func_stat_file_slash="guessing yes" ;;
-                               # If we don't know, assume the worst.
-              *)               gl_cv_func_stat_file_slash="guessing no" ;;
+                               # If we don't know, obey --enable-cross-guesses.
+              *)               gl_cv_func_stat_file_slash="$gl_cross_guess_normal" ;;
             esac
 
 else
@@ -22022,6 +24965,7 @@ $as_echo "#define REPLACE_FUNC_STAT_FILE 1" >>confdefs.h
     esac
 
 
+
   :
 
   fi
 
 
 
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working stdalign.h" >&5
+$as_echo_n "checking for working stdalign.h... " >&6; }
+if ${gl_cv_header_working_stdalign_h+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <stdalign.h>
+            #include <stddef.h>
+
+            /* Test that alignof yields a result consistent with offsetof.
+               This catches GCC bug 52023
+               <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52023>.  */
+            #ifdef __cplusplus
+               template <class t> struct alignof_helper { char a; t b; };
+            # define ao(type) offsetof (alignof_helper<type>, b)
+            #else
+            # define ao(type) offsetof (struct { char a; type b; }, b)
+            #endif
+            char test_double[ao (double) % _Alignof (double) == 0 ? 1 : -1];
+            char test_long[ao (long int) % _Alignof (long int) == 0 ? 1 : -1];
+            char test_alignof[alignof (double) == _Alignof (double) ? 1 : -1];
+
+            /* Test _Alignas only on platforms where gnulib can help.  */
+            #if \
+                ((defined __cplusplus && 201103 <= __cplusplus) \
+                 || (defined __APPLE__ && defined __MACH__ \
+                     ? 4 < __GNUC__ + (1 <= __GNUC_MINOR__) \
+                     : __GNUC__) \
+                 || (__ia64 && (61200 <= __HP_cc || 61200 <= __HP_aCC)) \
+                 || __ICC || 0x590 <= __SUNPRO_C || 0x0600 <= __xlC__ \
+                 || 1300 <= _MSC_VER)
+              struct alignas_test { char c; char alignas (8) alignas_8; };
+              char test_alignas[offsetof (struct alignas_test, alignas_8) == 8
+                                ? 1 : -1];
+            #endif
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_header_working_stdalign_h=yes
+else
+  gl_cv_header_working_stdalign_h=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_working_stdalign_h" >&5
+$as_echo "$gl_cv_header_working_stdalign_h" >&6; }
+
+  if test $gl_cv_header_working_stdalign_h = yes; then
+    STDALIGN_H=''
+  else
+    STDALIGN_H='stdalign.h'
+  fi
+
+
+   if test -n "$STDALIGN_H"; then
+  GL_GENERATE_STDALIGN_H_TRUE=
+  GL_GENERATE_STDALIGN_H_FALSE='#'
+else
+  GL_GENERATE_STDALIGN_H_TRUE='#'
+  GL_GENERATE_STDALIGN_H_FALSE=
+fi
+
+
+
   STDARG_H=''
   NEXT_STDARG_H='<stdarg.h>'
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for va_copy" >&5
@@ -22306,9 +25322,10 @@ $as_echo "$gl_cv_next_stdarg_h" >&6; }
       fi
     else
 
-  saved_as_echo_n="$as_echo_n"
-  as_echo_n=':'
-  if ${gl_cv_func___va_copy+:} false; then :
+
+  exec 9>&6 6>/dev/null
+
+    if ${gl_cv_func___va_copy+:} false; then :
   $as_echo_n "(cached) " >&6
 else
 
@@ -22335,7 +25352,9 @@ fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
 
-  as_echo_n="$saved_as_echo_n"
+
+  exec 6>&9 9>&-
+
 
       if test $gl_cv_func___va_copy = yes; then
 
 
 
 
-  # Define two additional variables used in the Makefile substitution.
 
-  if test "$ac_cv_header_stdbool_h" = yes; then
-    STDBOOL_H=''
+          if test "$ac_cv_header_stdbool_h" = yes; then
+    case "$host_os" in
+      solaris*)
+        if test -z "$GCC"; then
+          STDBOOL_H='stdbool.h'
+        else
+          STDBOOL_H=''
+        fi
+        ;;
+      *)
+        STDBOOL_H=''
+        ;;
+    esac
   else
     STDBOOL_H='stdbool.h'
   fi
@@ -22401,7 +25430,7 @@ else
 /* end confdefs.h.  */
 #include <stddef.h>
             unsigned int s = sizeof (max_align_t);
-            #if defined __GNUC__ || defined __IBM__ALIGNOF__
+            #if defined __GNUC__ || defined __clang__ || defined __IBM__ALIGNOF__
             int check1[2 * (__alignof__ (double) <= __alignof__ (max_align_t)) - 1];
             int check2[2 * (__alignof__ (long double) <= __alignof__ (max_align_t)) - 1];
             #endif
@@ -22712,6 +25741,13 @@ _ACEOF
 
 
 
+  if test $ac_cv_have_decl_fcloseall = no; then
+    HAVE_DECL_FCLOSEALL=0
+  fi
+
+
+
+
 
 
 
@@ -22790,18 +25826,30 @@ $as_echo "$gl_cv_next_stdlib_h" >&6; }
 
 
 
+  if test $ac_cv_have_decl_ecvt = no; then
+    HAVE_DECL_ECVT=0
+  fi
 
-  if test $ac_cv_func_strdup = yes; then
-    if test $gl_cv_func_malloc_posix != yes; then
-      REPLACE_STRDUP=1
-    fi
+  if test $ac_cv_have_decl_fcvt = no; then
+    HAVE_DECL_FCVT=0
+  fi
+
+  if test $ac_cv_have_decl_gcvt = no; then
+    HAVE_DECL_GCVT=0
+  fi
+
+
+
+
+  if test $gl_cv_func_malloc_posix != yes; then
+    REPLACE_STRDUP=1
   fi
 
   if test $ac_cv_have_decl_strdup = no; then
     HAVE_DECL_STRDUP=0
   fi
 
-  if test $ac_cv_func_strdup = no || test $REPLACE_STRDUP = 1; then
+  if test $REPLACE_STRDUP = 1; then
 
 
 
@@ -22848,8 +25896,8 @@ else
            *-gnu* | gnu*) gl_cv_func_working_strerror="guessing yes" ;;
                           # Guess yes on musl systems.
            *-musl*)       gl_cv_func_working_strerror="guessing yes" ;;
-                          # If we don't know, assume the worst.
-           *)             gl_cv_func_working_strerror="guessing no" ;;
+                          # If we don't know, obey --enable-cross-guesses.
+           *)             gl_cv_func_working_strerror="$gl_cross_guess_normal" ;;
          esac
 
 else
@@ -23169,9 +26217,7 @@ $as_echo "#define GNULIB_TEST_STRNLEN 1" >>confdefs.h
 
 
 
-
-  if test "$ac_cv_type_long_long_int" = yes; then
-    for ac_func in strtoll
+  for ac_func in strtoll
 do :
   ac_fn_c_check_func "$LINENO" "strtoll" "ac_cv_func_strtoll"
 if test "x$ac_cv_func_strtoll" = xyes; then :
@@ -23182,9 +26228,8 @@ _ACEOF
 fi
 done
 
-    if test $ac_cv_func_strtoll = no; then
-      HAVE_STRTOLL=0
-    fi
+  if test $ac_cv_func_strtoll = no; then
+    HAVE_STRTOLL=0
   fi
 
   if test $HAVE_STRTOLL = 0; then
@@ -23219,9 +26264,7 @@ $as_echo "#define GNULIB_TEST_STRTOLL 1" >>confdefs.h
 
 
 
-
-  if test "$ac_cv_type_unsigned_long_long_int" = yes; then
-    for ac_func in strtoull
+  for ac_func in strtoull
 do :
   ac_fn_c_check_func "$LINENO" "strtoull" "ac_cv_func_strtoull"
 if test "x$ac_cv_func_strtoull" = xyes; then :
@@ -23232,9 +26275,8 @@ _ACEOF
 fi
 done
 
-    if test $ac_cv_func_strtoull = no; then
-      HAVE_STRTOULL=0
-    fi
+  if test $ac_cv_func_strtoull = no; then
+    HAVE_STRTOULL=0
   fi
 
   if test $HAVE_STRTOULL = 0; then
@@ -23278,6 +26320,103 @@ $as_echo "#define GNULIB_TEST_STRTOULL 1" >>confdefs.h
 
 
 
+     if test $gl_cv_have_include_next = yes; then
+       gl_cv_next_sys_random_h='<'sys/random.h'>'
+     else
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/random.h>" >&5
+$as_echo_n "checking absolute name of <sys/random.h>... " >&6; }
+if ${gl_cv_next_sys_random_h+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+
+             if test $ac_cv_header_sys_random_h = yes; then
+
+
+
+
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <sys/random.h>
+_ACEOF
+                case "$host_os" in
+    aix*) gl_absname_cpp="$ac_cpp -C" ;;
+    *)    gl_absname_cpp="$ac_cpp" ;;
+  esac
+
+  case "$host_os" in
+    mingw*)
+                                          gl_dirsep_regex='[/\\]'
+      ;;
+    *)
+      gl_dirsep_regex='\/'
+      ;;
+  esac
+      gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+  gl_header_literal_regex=`echo 'sys/random.h' \
+                           | sed -e "$gl_make_literal_regex_sed"`
+  gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{
+      s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/
+      s|^/[^/]|//&|
+      p
+      q
+    }'
+
+        gl_cv_absolute_sys_random_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+  sed -n "$gl_absolute_header_sed"`
+
+           gl_header=$gl_cv_absolute_sys_random_h
+           gl_cv_next_sys_random_h='"'$gl_header'"'
+          else
+               gl_cv_next_sys_random_h='<'sys/random.h'>'
+             fi
+
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_random_h" >&5
+$as_echo "$gl_cv_next_sys_random_h" >&6; }
+     fi
+     NEXT_SYS_RANDOM_H=$gl_cv_next_sys_random_h
+
+     if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then
+       # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next'
+       gl_next_as_first_directive='<'sys/random.h'>'
+     else
+       # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
+       gl_next_as_first_directive=$gl_cv_next_sys_random_h
+     fi
+     NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H=$gl_next_as_first_directive
+
+
+
+
+  if test $ac_cv_header_sys_random_h = yes; then
+    HAVE_SYS_RANDOM_H=1
+  else
+    HAVE_SYS_RANDOM_H=0
+  fi
+
+
+
+  if test $ac_cv_header_sys_random_h = yes; then
+    UNISTD_H_HAVE_SYS_RANDOM_H=1
+  fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 
 
 
 
 
 
+  :
 
 
-  :
+
+
+cat >>confdefs.h <<_ACEOF
+#define GNULIB_TEMPNAME 1
+_ACEOF
 
 
 
@@ -23494,6 +26638,13 @@ $as_echo "$gl_cv_next_unistd_h" >&6; }
 
 
 
+  if test $ac_cv_have_decl_execvpe = no; then
+    HAVE_DECL_EXECVPE=0
+  fi
+
+
+
+
 
 
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether unlink honors trailing slashes" >&5
@@ -23514,8 +26665,8 @@ else
          *-gnu*)          gl_cv_func_unlink_honors_slashes="guessing yes" ;;
                           # Guess no on native Windows.
          mingw*)          gl_cv_func_unlink_honors_slashes="guessing no" ;;
-                          # If we don't know, assume the worst.
-         *)               gl_cv_func_unlink_honors_slashes="guessing no" ;;
+                          # If we don't know, obey --enable-cross-guesses.
+         *)               gl_cv_func_unlink_honors_slashes="$gl_cross_guess_normal" ;;
        esac
 
 else
@@ -23528,6 +26679,9 @@ else
            #endif
            #include <errno.h>
 
+
+$gl_mda_defines
+
 int
 main ()
 {
@@ -23593,8 +26747,8 @@ else
            GL_SUBDIR_FOR_UNLINK="$tmp/subdir"
            export GL_SUBDIR_FOR_UNLINK
            if test "$cross_compiling" = yes; then :
-  # If we don't know, assume the worst.
-              gl_cv_func_unlink_parent_fails="guessing no"
+  # If we don't know, obey --enable-cross-guesses.
+              gl_cv_func_unlink_parent_fails="$gl_cross_guess_normal"
 
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -23607,6 +26761,10 @@ else
                 # include <direct.h>
                 # include <io.h>
                 #endif
+
+
+$gl_mda_defines
+
                 int main ()
                 {
                   int result = 0;
@@ -23706,8 +26864,8 @@ else
            *-musl*)       gl_cv_func_usleep_works="guessing yes" ;;
                           # Guess no on native Windows.
            mingw*)        gl_cv_func_usleep_works="guessing no" ;;
-                          # If we don't know, assume the worst.
-           *)             gl_cv_func_usleep_works="guessing no" ;;
+                          # If we don't know, obey --enable-cross-guesses.
+           *)             gl_cv_func_usleep_works="$gl_cross_guess_normal" ;;
          esac
 
 else
@@ -23928,6 +27086,37 @@ $as_echo "$gl_cv_next_wchar_h" >&6; }
 
 
 
+  ac_fn_c_check_decl "$LINENO" "wcsdup" "ac_cv_have_decl_wcsdup" "
+/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
+   <wchar.h>.
+   BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
+   included before <wchar.h>.  */
+#if !(defined __GLIBC__ && !defined __UCLIBC__)
+# include <stddef.h>
+# include <stdio.h>
+# include <time.h>
+#endif
+#include <wchar.h>
+
+"
+if test "x$ac_cv_have_decl_wcsdup" = xyes; then :
+  ac_have_decl=1
+else
+  ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_WCSDUP $ac_have_decl
+_ACEOF
+
+  if test $ac_cv_have_decl_wcsdup = no; then
+    HAVE_DECL_WCSDUP=0
+  fi
+
+
+
+
+
 
 
 
@@ -23935,8 +27124,12 @@ $as_echo "$gl_cv_next_wchar_h" >&6; }
 
 
 
+        if case "$host_os" in
+       mingw*) true ;;
+       *) test $ac_cv_func_mbsinit = yes ;;
+     esac \
+    && test $ac_cv_func_mbrtowc = yes; then
 
-  if test $ac_cv_func_mbsinit = yes && test $ac_cv_func_mbrtowc = yes; then
 
 
 
@@ -23994,6 +27187,50 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+      else
+        if test $LOCALE_FR_UTF8 != none; then
+          if test "$cross_compiling" = yes; then :
+  :
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+#include <locale.h>
+#include <string.h>
+/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
+   <wchar.h>.
+   BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
+   included before <wchar.h>.  */
+#include <stddef.h>
+#include <stdio.h>
+#include <time.h>
+#include <wchar.h>
+int main ()
+{
+  if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+    {
+      const char input[] = "B\303\274\303\237er"; /* "Büßer" */
+      mbstate_t state;
+      wchar_t wc;
+
+      memset (&state, '\0', sizeof (mbstate_t));
+      if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2))
+        if (mbsinit (&state))
+          return 2;
+    }
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  gl_cv_func_mbrtowc_incomplete_state=yes
+else
+  gl_cv_func_mbrtowc_incomplete_state=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+        fi
       fi
 
 fi
@@ -24109,10 +27346,7 @@ _ACEOF
                         REPLACE_WCRTOMB=1
     fi
   else
-    if test $REPLACE_MBSTATE_T = 1; then
-      REPLACE_WCRTOMB=1
-    fi
-    if test $REPLACE_WCRTOMB = 0; then
+                        if test $REPLACE_WCRTOMB = 0; then
 
 
 
 $as_echo "$gl_cv_func_wcrtomb_works" >&6; }
       case "$gl_cv_func_wcrtomb_works" in
         *yes) ;;
-        *) REPLACE_WCRTOMB=1 ;;
+        *)
+$as_echo "#define WCRTOMB_C_LOCALE_BUG 1" >>confdefs.h
+
+           REPLACE_WCRTOMB=1 ;;
       esac
     fi
     if test $REPLACE_WCRTOMB = 0; then
@@ -24181,12 +27418,10 @@ if ${gl_cv_func_wcrtomb_retval+:} false; then :
 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 on native Windows.
-            mingw*)                  gl_cv_func_wcrtomb_retval="guessing yes" ;;
-                                     # Guess yes otherwise.
-            *)                       gl_cv_func_wcrtomb_retval="guessing yes" ;;
+            # Guess no on AIX 4, OSF/1, Solaris, native Windows.
+            aix4* | osf* | solaris* | mingw*) 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 :
@@ -24205,6 +27440,7 @@ else
 #include <stdio.h>
 #include <time.h>
 #include <wchar.h>
+#include <stdlib.h>
 int main ()
 {
   int result = 0;
@@ -24217,6 +27453,12 @@ int main ()
     {
       if (wcrtomb (NULL, 0, NULL) != 1)
         result |= 2;
+      {
+        wchar_t wc = (wchar_t) 0xBADFACE;
+        if (mbtowc (&wc, "\303\274", 2) == 2)
+          if (wcrtomb (NULL, wc, NULL) != 1)
+            result |= 2;
+      }
     }
   if (setlocale (LC_ALL, "$LOCALE_JA") != NULL)
     {
 $as_echo "$gl_cv_func_wcrtomb_retval" >&6; }
       case "$gl_cv_func_wcrtomb_retval" in
         *yes) ;;
-        *) REPLACE_WCRTOMB=1 ;;
+        *)
+$as_echo "#define WCRTOMB_RETVAL_BUG 1" >>confdefs.h
+
+           REPLACE_WCRTOMB=1 ;;
       esac
     fi
   fi
@@ -24448,10 +27693,14 @@ $as_echo "$gl_cv_func_iswcntrl_works" >&6; }
   fi
 
 
-  case "$gl_cv_func_iswcntrl_works" in
-    *yes) REPLACE_ISWCNTRL=0 ;;
-    *)    REPLACE_ISWCNTRL=1 ;;
-  esac
+  if test $GNULIB_OVERRIDES_WINT_T = 1; then
+    REPLACE_ISWCNTRL=1
+  else
+    case "$gl_cv_func_iswcntrl_works" in
+      *yes) REPLACE_ISWCNTRL=0 ;;
+      *)    REPLACE_ISWCNTRL=1 ;;
+    esac
+  fi
 
 
   if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then
@@ -24660,94 +27909,26 @@ $as_echo "$gl_cv_type_wctrans_t" >&6; }
   :
 
 
-  :
-
-
-
-  :
-
-
-
-
-
-
-
-
-
-  gl_LIBOBJS="$gl_LIBOBJS xstrtoll.$ac_objext"
-
-
-
-
+cat >>confdefs.h <<_ACEOF
+#define GNULIB_XALLOC 1
+_ACEOF
 
 
 
 
+cat >>confdefs.h <<_ACEOF
+#define GNULIB_XALLOC_DIE 1
+_ACEOF
 
-  gl_LIBOBJS="$gl_LIBOBJS xstrtoull.$ac_objext"
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for long long int" >&5
-$as_echo_n "checking for long long int... " >&6; }
-if ${ac_cv_type_long_long_int+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_type_long_long_int=yes
-      if test "x${ac_cv_prog_cc_c99-no}" = xno; then
-        ac_cv_type_long_long_int=$ac_cv_type_unsigned_long_long_int
-        if test $ac_cv_type_long_long_int = yes; then
-                                        if test "$cross_compiling" = yes; then :
   :
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <limits.h>
-                 #ifndef LLONG_MAX
-                 # define HALF \
-                          (1LL << (sizeof (long long int) * CHAR_BIT - 2))
-                 # define LLONG_MAX (HALF - 1 + HALF)
-                 #endif
-int
-main ()
-{
-long long int n = 1;
-                 int i;
-                 for (i = 0; ; i++)
-                   {
-                     long long int m = n << i;
-                     if (m >> i != n)
-                       return 1;
-                     if (LLONG_MAX / 2 < m)
-                       break;
-                   }
-                 return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
-  ac_cv_type_long_long_int=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
 
-        fi
-      fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_long_long_int" >&5
-$as_echo "$ac_cv_type_long_long_int" >&6; }
-  if test $ac_cv_type_long_long_int = yes; then
 
-$as_echo "#define HAVE_LONG_LONG_INT 1" >>confdefs.h
 
-  fi
+  :
 
-  test $ac_cv_type_long_long_int = no \
-    && as_fn_error $? "you lack long long support; required by gnulib's xstrtoll module" "$LINENO" 5
   # End of code from modules
 
 
@@ -24769,6 +27950,7 @@ $as_echo "#define HAVE_LONG_LONG_INT 1" >>confdefs.h
 
 
 
+
   gl_source_base='gnulib-tests'
   gltests_WITNESS=IN_`echo "${PACKAGE-$PACKAGE_TARNAME}" | LC_ALL=C tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ | LC_ALL=C sed -e 's/[^A-Z0-9_]/_/g'`_GNULIB_TESTS
 
@@ -25383,6 +28565,7 @@ else
 #endif
 #include <stdlib.h>
 #include <string.h>
+#include <wctype.h>
 struct tm t;
 char buf[16];
 int main () {
@@ -25495,11 +28678,6 @@ $as_echo "$gt_cv_locale_tr_utf8" >&6; }
 
 
 
-
-$as_echo "#define GNULIB_TEST_CLOEXEC 1" >>confdefs.h
-
-
-
   if test "$ac_cv_header_winsock2_h" = yes; then
 
 
@@ -25617,170 +28795,6 @@ $as_echo "$gl_cv_next_ctype_h" >&6; }
 
 
 
-$as_echo "#define HAVE_DUP2 1" >>confdefs.h
-
-
-  if test $HAVE_DUP2 = 1; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether dup2 works" >&5
-$as_echo_n "checking whether dup2 works... " >&6; }
-if ${gl_cv_func_dup2_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  case "$host_os" in
-           mingw*) # on this platform, dup2 always returns 0 for success
-             gl_cv_func_dup2_works="guessing no" ;;
-           cygwin*) # on cygwin 1.5.x, dup2(1,1) returns 0
-             gl_cv_func_dup2_works="guessing no" ;;
-           aix* | freebsd*)
-                   # on AIX 7.1 and FreeBSD 6.1, dup2 (1,toobig) gives EMFILE,
-                   # not EBADF.
-             gl_cv_func_dup2_works="guessing no" ;;
-           haiku*) # on Haiku alpha 2, dup2(1, 1) resets FD_CLOEXEC.
-             gl_cv_func_dup2_works="guessing no" ;;
-           *-android*) # implemented using dup3(), which fails if oldfd == newfd
-             gl_cv_func_dup2_works="guessing no" ;;
-           os2*) # on OS/2 kLIBC, dup2() does not work on a directory fd.
-             gl_cv_func_dup2_works="guessing no" ;;
-           *) gl_cv_func_dup2_works="guessing yes" ;;
-         esac
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-         #include <errno.h>
-             #include <fcntl.h>
-             #include <limits.h>
-             #include <sys/resource.h>
-             #include <unistd.h>
-             #ifndef RLIM_SAVED_CUR
-             # define RLIM_SAVED_CUR RLIM_INFINITY
-             #endif
-             #ifndef RLIM_SAVED_MAX
-             # define RLIM_SAVED_MAX RLIM_INFINITY
-             #endif
-
-int
-main ()
-{
-int result = 0;
-             int bad_fd = INT_MAX;
-             struct rlimit rlim;
-             if (getrlimit (RLIMIT_NOFILE, &rlim) == 0
-                 && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX
-                 && rlim.rlim_cur != RLIM_INFINITY
-                 && rlim.rlim_cur != RLIM_SAVED_MAX
-                 && rlim.rlim_cur != RLIM_SAVED_CUR)
-               bad_fd = rlim.rlim_cur;
-             #ifdef FD_CLOEXEC
-               if (fcntl (1, F_SETFD, FD_CLOEXEC) == -1)
-                 result |= 1;
-             #endif
-             if (dup2 (1, 1) != 1)
-               result |= 2;
-             #ifdef FD_CLOEXEC
-               if (fcntl (1, F_GETFD) != FD_CLOEXEC)
-                 result |= 4;
-             #endif
-             close (0);
-             if (dup2 (0, 0) != -1)
-               result |= 8;
-             /* Many gnulib modules require POSIX conformance of EBADF.  */
-             if (dup2 (2, bad_fd) == -1 && errno != EBADF)
-               result |= 16;
-             /* Flush out some cygwin core dumps.  */
-             if (dup2 (2, -1) != -1 || errno != EBADF)
-               result |= 32;
-             dup2 (2, 255);
-             dup2 (2, 256);
-             /* On OS/2 kLIBC, dup2() does not work on a directory fd.  */
-             {
-               int fd = open (".", O_RDONLY);
-               if (fd == -1)
-                 result |= 64;
-               else if (dup2 (fd, fd + 1) == -1)
-                 result |= 128;
-
-               close (fd);
-             }
-             return result;
-  ;
-  return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  gl_cv_func_dup2_works=yes
-else
-  gl_cv_func_dup2_works=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_dup2_works" >&5
-$as_echo "$gl_cv_func_dup2_works" >&6; }
-    case "$gl_cv_func_dup2_works" in
-      *yes) ;;
-      *)
-        REPLACE_DUP2=1
-        for ac_func in setdtablesize
-do :
-  ac_fn_c_check_func "$LINENO" "setdtablesize" "ac_cv_func_setdtablesize"
-if test "x$ac_cv_func_setdtablesize" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_SETDTABLESIZE 1
-_ACEOF
-
-fi
-done
-
-        ;;
-    esac
-  fi
-
-
-  if test $HAVE_DUP2 = 0 || test $REPLACE_DUP2 = 1; then
-
-
-
-
-
-
-
-
-  gltests_LIBOBJS="$gltests_LIBOBJS dup2.$ac_objext"
-
-
-  fi
-
-
-
-
-
-    if test "$GNULIB_DUP2" != 1; then
-        if test "$GNULIB_DUP2" = 0; then
-      GNULIB_DUP2=$gl_module_indicator_condition
-    else
-      GNULIB_DUP2="($GNULIB_DUP2 || $gl_module_indicator_condition)"
-    fi
-  fi
-
-
-
-
-
-$as_echo "#define GNULIB_TEST_DUP2 1" >>confdefs.h
-
-
-
-
-
-
-
-
 
     if test "$GNULIB_ENVIRON" != 1; then
         if test "$GNULIB_ENVIRON" = 0; then
@@ -25802,207 +28816,6 @@ $as_echo "#define GNULIB_TEST_ENVIRON 1" >>confdefs.h
 
 
 
-
-  if test $ac_cv_func_fcntl = no; then
-
-
-
-  if test $ac_cv_func_fcntl = no; then
-    HAVE_FCNTL=0
-  else
-    REPLACE_FCNTL=1
-  fi
-
-  else
-            { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether fcntl handles F_DUPFD correctly" >&5
-$as_echo_n "checking whether fcntl handles F_DUPFD correctly... " >&6; }
-if ${gl_cv_func_fcntl_f_dupfd_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "$cross_compiling" = yes; then :
-  case $host_os in
-            aix* | cygwin* | haiku*)
-               gl_cv_func_fcntl_f_dupfd_works="guessing no" ;;
-            *) gl_cv_func_fcntl_f_dupfd_works="guessing yes" ;;
-          esac
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <errno.h>
-              #include <fcntl.h>
-              #include <limits.h>
-              #include <sys/resource.h>
-              #include <unistd.h>
-              #ifndef RLIM_SAVED_CUR
-              # define RLIM_SAVED_CUR RLIM_INFINITY
-              #endif
-              #ifndef RLIM_SAVED_MAX
-              # define RLIM_SAVED_MAX RLIM_INFINITY
-              #endif
-
-int
-main ()
-{
-int result = 0;
-              int bad_fd = INT_MAX;
-              struct rlimit rlim;
-              if (getrlimit (RLIMIT_NOFILE, &rlim) == 0
-                  && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX
-                  && rlim.rlim_cur != RLIM_INFINITY
-                  && rlim.rlim_cur != RLIM_SAVED_MAX
-                  && rlim.rlim_cur != RLIM_SAVED_CUR)
-                bad_fd = rlim.rlim_cur;
-              if (fcntl (0, F_DUPFD, -1) != -1) result |= 1;
-              if (errno != EINVAL) result |= 2;
-              if (fcntl (0, F_DUPFD, bad_fd) != -1) result |= 4;
-              if (errno != EINVAL) result |= 8;
-              /* On OS/2 kLIBC, F_DUPFD does not work on a directory fd */
-              {
-                int fd;
-                fd = open (".", O_RDONLY);
-                if (fd == -1)
-                  result |= 16;
-                else if (fcntl (fd, F_DUPFD, STDERR_FILENO + 1) == -1)
-                  result |= 32;
-
-                close (fd);
-              }
-              return result;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  gl_cv_func_fcntl_f_dupfd_works=yes
-else
-  gl_cv_func_fcntl_f_dupfd_works=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fcntl_f_dupfd_works" >&5
-$as_echo "$gl_cv_func_fcntl_f_dupfd_works" >&6; }
-    case $gl_cv_func_fcntl_f_dupfd_works in
-      *yes) ;;
-      *)
-
-
-  if test $ac_cv_func_fcntl = no; then
-    HAVE_FCNTL=0
-  else
-    REPLACE_FCNTL=1
-  fi
-
-
-$as_echo "#define FCNTL_DUPFD_BUGGY 1" >>confdefs.h
- ;;
-    esac
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether fcntl understands F_DUPFD_CLOEXEC" >&5
-$as_echo_n "checking whether fcntl understands F_DUPFD_CLOEXEC... " >&6; }
-if ${gl_cv_func_fcntl_f_dupfd_cloexec+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <fcntl.h>
-#ifndef F_DUPFD_CLOEXEC
-choke me
-#endif
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef __linux__
-/* The Linux kernel only added F_DUPFD_CLOEXEC in 2.6.24, so we always replace
-   it to support the semantics on older kernels that failed with EINVAL.  */
-choke me
-#endif
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_func_fcntl_f_dupfd_cloexec=yes
-else
-  gl_cv_func_fcntl_f_dupfd_cloexec="needs runtime check"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-else
-  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:${as_lineno-$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
-
-          fi
-  fi
-
-
-  if test $HAVE_FCNTL = 0 || test $REPLACE_FCNTL = 1; then
-
-
-
-
-
-
-
-
-  gltests_LIBOBJS="$gltests_LIBOBJS fcntl.$ac_objext"
-
-  fi
-
-
-
-
-
-    if test "$GNULIB_FCNTL" != 1; then
-        if test "$GNULIB_FCNTL" = 0; then
-      GNULIB_FCNTL=$gl_module_indicator_condition
-    else
-      GNULIB_FCNTL="($GNULIB_FCNTL || $gl_module_indicator_condition)"
-    fi
-  fi
-
-
-
-
-
-$as_echo "#define GNULIB_TEST_FCNTL 1" >>confdefs.h
-
-
-
-
-
-
-
     if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then
       REPLACE_FDOPEN=1
     fi
@@ -26026,6 +28839,10 @@ else
 
 #include <stdio.h>
 #include <errno.h>
+
+
+$gl_mda_defines
+
 int
 main (void)
 {
@@ -26164,12 +28981,12 @@ $as_echo "#define FLEXIBLE_ARRAY_MEMBER /**/" >>confdefs.h
   gltests_LIBOBJS="$gltests_LIBOBJS ftruncate.$ac_objext"
 
 
-  for ac_func in chsize
+  for ac_func in _chsize
 do :
-  ac_fn_c_check_func "$LINENO" "chsize" "ac_cv_func_chsize"
-if test "x$ac_cv_func_chsize" = xyes; then :
+  ac_fn_c_check_func "$LINENO" "_chsize" "ac_cv_func__chsize"
+if test "x$ac_cv_func__chsize" = xyes; then :
   cat >>confdefs.h <<_ACEOF
-#define HAVE_CHSIZE 1
+#define HAVE__CHSIZE 1
 _ACEOF
 
 fi
@@ -26247,103 +29064,6 @@ $as_echo "#define GNULIB_TEST_GETCWD 1" >>confdefs.h
 
 
 
-
-  if test $ac_cv_func_getdtablesize = yes &&
-     test $ac_cv_have_decl_getdtablesize = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getdtablesize works" >&5
-$as_echo_n "checking whether getdtablesize works... " >&6; }
-if ${gl_cv_func_getdtablesize_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-                                                   case "$host_os" in
-         vms*) gl_cv_func_getdtablesize_works="no (limitation)" ;;
-         *)
-                                                       if test "$cross_compiling" = yes; then :
-  case "$host_os" in
-                cygwin*) # on cygwin 1.5.25, getdtablesize() automatically grows
-                  gl_cv_func_getdtablesize_works="guessing no" ;;
-                *) gl_cv_func_getdtablesize_works="guessing yes" ;;
-              esac
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-             #include <unistd.h>
-int
-main ()
-{
-int size = getdtablesize();
-                if (dup2 (0, getdtablesize()) != -1)
-                  return 1;
-                if (size != getdtablesize())
-                  return 2;
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  gl_cv_func_getdtablesize_works=yes
-else
-  gl_cv_func_getdtablesize_works=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-           ;;
-       esac
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getdtablesize_works" >&5
-$as_echo "$gl_cv_func_getdtablesize_works" >&6; }
-    case "$gl_cv_func_getdtablesize_works" in
-      *yes | "no (limitation)") ;;
-      *) REPLACE_GETDTABLESIZE=1 ;;
-    esac
-  else
-    HAVE_GETDTABLESIZE=0
-  fi
-
-  if test $HAVE_GETDTABLESIZE = 0 || test $REPLACE_GETDTABLESIZE = 1; then
-
-
-
-
-
-
-
-
-  gltests_LIBOBJS="$gltests_LIBOBJS getdtablesize.$ac_objext"
-
-    :
-  fi
-
-
-
-
-
-    if test "$GNULIB_GETDTABLESIZE" != 1; then
-        if test "$GNULIB_GETDTABLESIZE" = 0; then
-      GNULIB_GETDTABLESIZE=$gl_module_indicator_condition
-    else
-      GNULIB_GETDTABLESIZE="($GNULIB_GETDTABLESIZE || $gl_module_indicator_condition)"
-    fi
-  fi
-
-
-
-
-
-$as_echo "#define GNULIB_TEST_GETDTABLESIZE 1" >>confdefs.h
-
-
-
-
-
-
-
       { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getpagesize" >&5
 $as_echo_n "checking for getpagesize... " >&6; }
 if ${gl_cv_func_getpagesize+:} false; then :
@@ -26459,6 +29179,126 @@ $as_echo "#define GNULIB_TEST_GETPAGESIZE 1" >>confdefs.h
 
 
 
+  gl_gettimeofday_timezone=void
+  if test $ac_cv_func_gettimeofday != yes; then
+    HAVE_GETTIMEOFDAY=0
+  else
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gettimeofday with POSIX signature" >&5
+$as_echo_n "checking for gettimeofday with POSIX signature... " >&6; }
+if ${gl_cv_func_gettimeofday_posix_signature+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <sys/time.h>
+              struct timeval c;
+              int gettimeofday (struct timeval *restrict, void *restrict);
+
+int
+main ()
+{
+/* glibc uses struct timezone * rather than the POSIX void *
+                 if _GNU_SOURCE is defined.  However, since the only portable
+                 use of gettimeofday uses NULL as the second parameter, and
+                 since the glibc definition is actually more typesafe, it is
+                 not worth wrapping this to get a compliant signature.  */
+              int (*f) (struct timeval *restrict, void *restrict)
+                = gettimeofday;
+              int x = f (&c, 0);
+              return !(x | c.tv_sec | c.tv_usec);
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_func_gettimeofday_posix_signature=yes
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <sys/time.h>
+int gettimeofday (struct timeval *restrict, struct timezone *restrict);
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gl_cv_func_gettimeofday_posix_signature=almost
+else
+  gl_cv_func_gettimeofday_posix_signature=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:${as_lineno-$LINENO}: result: $gl_cv_func_gettimeofday_posix_signature" >&5
+$as_echo "$gl_cv_func_gettimeofday_posix_signature" >&6; }
+    if test $gl_cv_func_gettimeofday_posix_signature = almost; then
+      gl_gettimeofday_timezone='struct timezone'
+    elif test $gl_cv_func_gettimeofday_posix_signature != yes; then
+      REPLACE_GETTIMEOFDAY=1
+    fi
+        if test $REPLACE_STRUCT_TIMEVAL = 1; then
+      REPLACE_GETTIMEOFDAY=1
+    fi
+            case "$host_os" in
+      mingw*) REPLACE_GETTIMEOFDAY=1 ;;
+    esac
+  fi
+
+cat >>confdefs.h <<_ACEOF
+#define GETTIMEOFDAY_TIMEZONE $gl_gettimeofday_timezone
+_ACEOF
+
+
+  if test $HAVE_GETTIMEOFDAY = 0 || test $REPLACE_GETTIMEOFDAY = 1; then
+
+
+
+
+
+
+
+
+  gltests_LIBOBJS="$gltests_LIBOBJS gettimeofday.$ac_objext"
+
+    :
+  fi
+
+
+
+
+
+    if test "$GNULIB_GETTIMEOFDAY" != 1; then
+        if test "$GNULIB_GETTIMEOFDAY" = 0; then
+      GNULIB_GETTIMEOFDAY=$gl_module_indicator_condition
+    else
+      GNULIB_GETTIMEOFDAY="($GNULIB_GETTIMEOFDAY || $gl_module_indicator_condition)"
+    fi
+  fi
+
+
+
+
+
+$as_echo "#define GNULIB_TEST_GETTIMEOFDAY 1" >>confdefs.h
+
+
+
+
+
+
+
+
+
+
+
+
                 HAVE_INET_PTON=1
   INET_PTON_LIB=
 
@@ -26980,6 +29820,13 @@ $as_echo "#define GNULIB_TEST_IOCTL 1" >>confdefs.h
   fi
 
 
+cat >>confdefs.h <<_ACEOF
+#define GNULIB_ISBLANK $gl_module_indicator_condition
+_ACEOF
+
+
+
+
 
 
 
@@ -27036,13 +29883,23 @@ $as_echo "#define GNULIB_TEST_LISTEN 1" >>confdefs.h
 
 
 
-  if test $ac_cv_func_newlocale != yes; then
+  if test $HAVE_LOCALE_T = 1; then
+
+    gl_func_newlocale="$ac_cv_func_newlocale"
+    gl_func_duplocale="$ac_cv_func_duplocale"
+    gl_func_freelocale="$ac_cv_func_freelocale"
+  else
+            gl_func_newlocale=no
+    gl_func_duplocale=no
+    gl_func_freelocale=no
+  fi
+  if test $gl_func_newlocale != yes; then
     HAVE_NEWLOCALE=0
   fi
-  if test $ac_cv_func_duplocale != yes; then
+  if test $gl_func_duplocale != yes; then
     HAVE_DUPLOCALE=0
   fi
-  if test $ac_cv_func_freelocale != yes; then
+  if test $gl_func_freelocale != yes; then
     HAVE_FREELOCALE=0
   fi
   if test $gt_nameless_locales = yes; then
@@ -27078,6 +29935,7 @@ $as_echo "#define GNULIB_TEST_LOCALENAME 1" >>confdefs.h
 
 
 
+
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5
 $as_echo_n "checking for a traditional french locale... " >&6; }
 if ${gt_cv_locale_fr+:} false; then :
@@ -27858,8 +30716,8 @@ else
             gl_cv_func_nanosleep='guessing no (mishandles large arguments)' ;;
           mingw*) # Guess no on native Windows.
             gl_cv_func_nanosleep='guessing no' ;;
-          *)      # If we don't know, assume the worst.
-            gl_cv_func_nanosleep='guessing no' ;;
+          *)      # If we don't know, obey --enable-cross-guesses.
+            gl_cv_func_nanosleep="$gl_cross_guess_normal" ;;
         esac
 
 else
@@ -28420,121 +31278,6 @@ $as_echo "$gt_cv_locale_fr_utf8" >&6; }
 
 
 
-  case "$host_os" in
-    mingw* | pw*)
-      REPLACE_OPEN=1
-      ;;
-    *)
-
-      if test "$gl_cv_macro_O_CLOEXEC" != yes; then
-        REPLACE_OPEN=1
-      fi
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether open recognizes a trailing slash" >&5
-$as_echo_n "checking whether open recognizes a trailing slash... " >&6; }
-if ${gl_cv_func_open_slash+:} false; 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] | solaris2.[0-9].*)
-                 gl_cv_func_open_slash="guessing no" ;;
-               *)
-                 gl_cv_func_open_slash="guessing yes" ;;
-             esac
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <fcntl.h>
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-int main ()
-{
-  int result = 0;
-#if HAVE_LSTAT
-  if (open ("conftest.lnk/", O_RDONLY) != -1)
-    result |= 1;
-#endif
-  if (open ("conftest.sl/", O_CREAT, 0600) >= 0)
-    result |= 2;
-  return result;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  gl_cv_func_open_slash=yes
-else
-  gl_cv_func_open_slash=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-          rm -f conftest.sl conftest.tmp conftest.lnk
-
-fi
-{ $as_echo "$as_me:${as_lineno-$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 "#define OPEN_TRAILING_SLASH_BUG 1" >>confdefs.h
-
-          REPLACE_OPEN=1
-          ;;
-      esac
-      ;;
-  esac
-
-
-
-  if test $REPLACE_OPEN = 1; then
-
-
-
-
-
-
-
-
-  gltests_LIBOBJS="$gltests_LIBOBJS open.$ac_objext"
-
-
-
-  :
-
-  fi
-
-
-
-
-
-    if test "$GNULIB_OPEN" != 1; then
-        if test "$GNULIB_OPEN" = 0; then
-      GNULIB_OPEN=$gl_module_indicator_condition
-    else
-      GNULIB_OPEN="($GNULIB_OPEN || $gl_module_indicator_condition)"
-    fi
-  fi
-
-
-
-
-
-$as_echo "#define GNULIB_TEST_OPEN 1" >>confdefs.h
-
-
-
-
-
-
 
 
              if test "$ERRNO_H:$REPLACE_STRERROR_0" != :0; then
@@ -28553,8 +31296,8 @@ else
               *-musl*) gl_cv_func_perror_works="guessing yes" ;;
                        # Guess yes on native Windows.
               mingw*)  gl_cv_func_perror_works="guessing yes" ;;
-                       # Otherwise guess no.
-              *)       gl_cv_func_perror_works="guessing no" ;;
+                       # Otherwise obey --enable-cross-guesses.
+              *)       gl_cv_func_perror_works="$gl_cross_guess_normal" ;;
             esac
 
 else
@@ -28711,6 +31454,7 @@ done
 
 
 
+
      if test $gl_cv_have_include_next = yes; then
        gl_cv_next_pthread_h='<'pthread.h'>'
      else
@@ -28780,8 +31524,15 @@ $as_echo "$gl_cv_next_pthread_h" >&6; }
 
 
 
-      if test $ac_cv_header_pthread_h = yes && test $gl_threads_api != windows; then
+  if test $ac_cv_header_pthread_h = yes; then
     HAVE_PTHREAD_H=1
+
+
+      if { case "$host_os" in mingw*) true;; *) false;; esac; } \
+         && test $gl_threads_api = windows; then
+        HAVE_PTHREAD_H=0
+      fi
+
   else
     HAVE_PTHREAD_H=0
   fi
@@ -28956,7 +31707,7 @@ $as_echo "$gl_cv_const_PTHREAD_PROCESS_SHARED" >&6; }
 
 
 
-    LIB_PTHREAD="$LIBMULTITHREAD"
+    LIB_PTHREAD="$LIBPMULTITHREAD"
 
 
 
@@ -28994,7 +31745,7 @@ if ${gl_cv_func_pthread_create+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   saved_LIBS="$LIBS"
-         LIBS="$LIBS $LIBMULTITHREAD"
+         LIBS="$LIBS $LIBPMULTITHREAD"
          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 extern
@@ -29304,6 +32055,10 @@ else
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
+
+
+$gl_mda_defines
+
 static volatile int sigint_occurred;
 static void
 sigint_handler (int sig)
@@ -29405,38 +32160,42 @@ if ${gl_cv_func_svid_putenv+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   if test "$cross_compiling" = yes; then :
-               case "$host_os" in
-                               # Guess yes on glibc systems.
-                *-gnu* | gnu*) gl_cv_func_svid_putenv="guessing yes" ;;
-                               # Guess yes on musl systems.
-                *-musl*)       gl_cv_func_svid_putenv="guessing yes" ;;
-                               # Guess no on native Windows.
-                mingw*)        gl_cv_func_svid_putenv="guessing no" ;;
-                               # If we don't know, assume the worst.
-                *)             gl_cv_func_svid_putenv="guessing no" ;;
-              esac
+          case "$host_os" in
+                         # Guess yes on glibc systems.
+          *-gnu* | gnu*) gl_cv_func_svid_putenv="guessing yes" ;;
+                         # Guess yes on musl systems.
+          *-musl*)       gl_cv_func_svid_putenv="guessing yes" ;;
+                         # Guess no on native Windows.
+          mingw*)        gl_cv_func_svid_putenv="guessing no" ;;
+                         # If we don't know, obey --enable-cross-guesses.
+          *)             gl_cv_func_svid_putenv="$gl_cross_guess_normal" ;;
+        esac
 
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $ac_includes_default
+
+
+$gl_mda_defines
+
 int
 main ()
 {
 
-    /* Put it in env.  */
-    if (putenv ("CONFTEST_putenv=val"))
-      return 1;
+            /* Put it in env.  */
+            if (putenv ("CONFTEST_putenv=val"))
+              return 1;
 
-    /* Try to remove it.  */
-    if (putenv ("CONFTEST_putenv"))
-      return 2;
+            /* Try to remove it.  */
+            if (putenv ("CONFTEST_putenv"))
+              return 2;
 
-    /* Make sure it was deleted.  */
-    if (getenv ("CONFTEST_putenv") != 0)
-      return 3;
+            /* Make sure it was deleted.  */
+            if (getenv ("CONFTEST_putenv") != 0)
+              return 3;
 
-    return 0;
+            return 0;
 
   ;
   return 0;
@@ -29600,15 +32359,13 @@ done
 
 
 
-  if test $gl_cv_type_sigset_t = yes; then
+  HAVE_POSIX_SIGNALBLOCKING=0
+  if test "$gl_cv_type_sigset_t" = yes; then
     ac_fn_c_check_func "$LINENO" "sigprocmask" "ac_cv_func_sigprocmask"
 if test "x$ac_cv_func_sigprocmask" = xyes; then :
-  gl_cv_func_sigprocmask=1
+  HAVE_POSIX_SIGNALBLOCKING=1
 fi
 
-  fi
-  if test -z "$gl_cv_func_sigprocmask"; then
-    HAVE_POSIX_SIGNALBLOCKING=0
   fi
 
       if test $HAVE_POSIX_SIGNALBLOCKING = 0; then
@@ -29872,8 +32629,8 @@ else
             linux-* | linux) gl_cv_func_select_detects_ebadf="guessing yes" ;;
                              # Guess yes on glibc systems.
             *-gnu* | gnu*)   gl_cv_func_select_detects_ebadf="guessing yes" ;;
-                             # If we don't know, assume the worst.
-            *)               gl_cv_func_select_detects_ebadf="guessing no" ;;
+                             # If we don't know, obey --enable-cross-guesses.
+            *)               gl_cv_func_select_detects_ebadf="$gl_cross_guess_normal" ;;
            esac
 
 else
@@ -29888,6 +32645,9 @@ else
 #include <unistd.h>
 #include <errno.h>
 
+
+$gl_mda_defines
+
 int
 main ()
 {
@@ -30003,8 +32763,8 @@ else
          *-gnu* | gnu*) gl_cv_func_setenv_works="guessing yes" ;;
                         # Guess yes on musl systems.
          *-musl*)       gl_cv_func_setenv_works="guessing yes" ;;
-                        # If we don't know, assume the worst.
-         *)             gl_cv_func_setenv_works="guessing no" ;;
+                        # If we don't know, obey --enable-cross-guesses.
+         *)             gl_cv_func_setenv_works="$gl_cross_guess_normal" ;;
        esac
 
 else
@@ -30094,11 +32854,14 @@ $as_echo "#define GNULIB_TEST_SETENV 1" >>confdefs.h
 
 
 
+
+
+    NEED_SETLOCALE_IMPROVED=0
   case "$host_os" in
-            mingw*) REPLACE_SETLOCALE=1 ;;
+            mingw*) NEED_SETLOCALE_IMPROVED=1 ;;
             cygwin*)
       case `uname -r` in
-        1.5.*) REPLACE_SETLOCALE=1 ;;
+        1.5.*) NEED_SETLOCALE_IMPROVED=1 ;;
       esac
       ;;
         *)
 $as_echo "$gl_cv_func_setlocale_works" >&6; }
       case "$gl_cv_func_setlocale_works" in
         *yes) ;;
-        *) REPLACE_SETLOCALE=1 ;;
+        *) NEED_SETLOCALE_IMPROVED=1 ;;
       esac
       ;;
   esac
 
+cat >>confdefs.h <<_ACEOF
+#define NEED_SETLOCALE_IMPROVED $NEED_SETLOCALE_IMPROVED
+_ACEOF
+
+
+    NEED_SETLOCALE_MTSAFE=0
+  if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then
+    NEED_SETLOCALE_MTSAFE=1
+  fi
+
+cat >>confdefs.h <<_ACEOF
+#define NEED_SETLOCALE_MTSAFE $NEED_SETLOCALE_MTSAFE
+_ACEOF
+
+
+  if test $NEED_SETLOCALE_IMPROVED = 1 || test $NEED_SETLOCALE_MTSAFE = 1; then
+    REPLACE_SETLOCALE=1
+  fi
+
+  if test $NEED_SETLOCALE_MTSAFE = 1; then
+    LIB_SETLOCALE="$LIB_SETLOCALE_NULL"
+  else
+    LIB_SETLOCALE=
+  fi
+
+
   if test $REPLACE_SETLOCALE = 1; then
 
 
 
 
 
-  if test $gl_cv_type_sigset_t = yes; then
+
+
+  HAVE_POSIX_SIGNALBLOCKING=0
+  if test "$gl_cv_type_sigset_t" = yes; then
     ac_fn_c_check_func "$LINENO" "sigprocmask" "ac_cv_func_sigprocmask"
 if test "x$ac_cv_func_sigprocmask" = xyes; then :
-  gl_cv_func_sigprocmask=1
+  HAVE_POSIX_SIGNALBLOCKING=1
 fi
 
   fi
-  if test -z "$gl_cv_func_sigprocmask"; then
-    HAVE_POSIX_SIGNALBLOCKING=0
-  fi
 
   if test $HAVE_POSIX_SIGNALBLOCKING = 0; then
 
@@ -31118,78 +33907,6 @@ _ACEOF
 fi
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working stdalign.h" >&5
-$as_echo_n "checking for working stdalign.h... " >&6; }
-if ${gl_cv_header_working_stdalign_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdalign.h>
-            #include <stddef.h>
-
-            /* Test that alignof yields a result consistent with offsetof.
-               This catches GCC bug 52023
-               <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52023>.  */
-            #ifdef __cplusplus
-               template <class t> struct alignof_helper { char a; t b; };
-            # define ao(type) offsetof (alignof_helper<type>, b)
-            #else
-            # define ao(type) offsetof (struct { char a; type b; }, b)
-            #endif
-            char test_double[ao (double) % _Alignof (double) == 0 ? 1 : -1];
-            char test_long[ao (long int) % _Alignof (long int) == 0 ? 1 : -1];
-            char test_alignof[alignof (double) == _Alignof (double) ? 1 : -1];
-
-            /* Test _Alignas only on platforms where gnulib can help.  */
-            #if \
-                ((defined __cplusplus && 201103 <= __cplusplus) \
-                 || (defined __APPLE__ && defined __MACH__ \
-                     ? 4 < __GNUC__ + (1 <= __GNUC_MINOR__) \
-                     : __GNUC__) \
-                 || (__ia64 && (61200 <= __HP_cc || 61200 <= __HP_aCC)) \
-                 || __ICC || 0x590 <= __SUNPRO_C || 0x0600 <= __xlC__ \
-                 || 1300 <= _MSC_VER)
-              struct alignas_test { char c; char alignas (8) alignas_8; };
-              char test_alignas[offsetof (struct alignas_test, alignas_8) == 8
-                                ? 1 : -1];
-            #endif
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_header_working_stdalign_h=yes
-else
-  gl_cv_header_working_stdalign_h=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_working_stdalign_h" >&5
-$as_echo "$gl_cv_header_working_stdalign_h" >&6; }
-
-  if test $gl_cv_header_working_stdalign_h = yes; then
-    STDALIGN_H=''
-  else
-    STDALIGN_H='stdalign.h'
-  fi
-
-
-   if test -n "$STDALIGN_H"; then
-  GL_GENERATE_STDALIGN_H_TRUE=
-  GL_GENERATE_STDALIGN_H_FALSE='#'
-else
-  GL_GENERATE_STDALIGN_H_TRUE='#'
-  GL_GENERATE_STDALIGN_H_FALSE=
-fi
-
-
-
 
 
 
@@ -31343,8 +34060,8 @@ else
             linux-* | linux) gl_cv_func_symlink_works="guessing yes" ;;
                              # Guess yes on glibc systems.
             *-gnu* | gnu*)   gl_cv_func_symlink_works="guessing yes" ;;
-                             # If we don't know, assume the worst.
-            *)               gl_cv_func_symlink_works="guessing no" ;;
+                             # If we don't know, obey --enable-cross-guesses.
+            *)               gl_cv_func_symlink_works="$gl_cross_guess_normal" ;;
           esac
 
 else
@@ -31436,7 +34153,6 @@ else
          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <sys/ioctl.h>
-
 int
 main ()
 {
@@ -31554,6 +34270,10 @@ $as_echo "$gl_cv_next_sys_ioctl_h" >&6; }
 
 
 
+
+
+
+
 
 
 
@@ -31656,6 +34376,18 @@ done
     LIBS="$gl_save_LIBS"
   fi
 
+  for ac_header in sys/single_threaded.h
+do :
+  ac_fn_c_check_header_mongrel "$LINENO" "sys/single_threaded.h" "ac_cv_header_sys_single_threaded_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_single_threaded_h" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_SYS_SINGLE_THREADED_H 1
+_ACEOF
+
+fi
+
+done
+
 
 
 
@@ -31747,39 +34479,42 @@ if ${gl_cv_func_unsetenv_works+:} false; then :
 else
   if test "$cross_compiling" = yes; then :
   case "$host_os" in
-                 # Guess yes on glibc systems.
-         *-gnu*) gl_cv_func_unsetenv_works="guessing yes" ;;
-                 # If we don't know, assume the worst.
-         *)      gl_cv_func_unsetenv_works="guessing no" ;;
-       esac
+                    # Guess yes on glibc systems.
+            *-gnu*) gl_cv_func_unsetenv_works="guessing yes" ;;
+                    # If we don't know, obey --enable-cross-guesses.
+            *)      gl_cv_func_unsetenv_works="$gl_cross_guess_normal" ;;
+          esac
 
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
-       #include <stdlib.h>
-       #include <errno.h>
-       extern char **environ;
+            #include <stdlib.h>
+            #include <errno.h>
+            extern char **environ;
+
+
+$gl_mda_defines
 
 int
 main ()
 {
 
-       char entry1[] = "a=1";
-       char entry2[] = "b=2";
-       char *env[] = { entry1, entry2, NULL };
-       if (putenv ((char *) "a=1")) return 1;
-       if (putenv (entry2)) return 2;
-       entry2[0] = 'a';
-       unsetenv ("a");
-       if (getenv ("a")) return 3;
-       if (!unsetenv ("") || errno != EINVAL) return 4;
-       entry2[0] = 'b';
-       environ = env;
-       if (!getenv ("a")) return 5;
-       entry2[0] = 'a';
-       unsetenv ("a");
-       if (getenv ("a")) return 6;
+            char entry1[] = "a=1";
+            char entry2[] = "b=2";
+            char *env[] = { entry1, entry2, NULL };
+            if (putenv ((char *) "a=1")) return 1;
+            if (putenv (entry2)) return 2;
+            entry2[0] = 'a';
+            unsetenv ("a");
+            if (getenv ("a")) return 3;
+            if (!unsetenv ("") || errno != EINVAL) return 4;
+            entry2[0] = 'b';
+            environ = env;
+            if (!getenv ("a")) return 5;
+            entry2[0] = 'a';
+            unsetenv ("a");
+            if (getenv ("a")) return 6;
 
   ;
   return 0;
@@ -31794,6 +34529,7 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
   conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_unsetenv_works" >&5
 $as_echo "$gl_cv_func_unsetenv_works" >&6; }
@@ -32485,6 +35221,7 @@ else
 /* end confdefs.h.  */
 
 #include <locale.h>
+#include <stdlib.h>
 #include <string.h>
 /* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
    <wchar.h>.
@@ -32752,7 +35489,7 @@ if ${gl_cv_cc_nomfi_supported+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   gl_save_CFLAGS="$CFLAGS"
-       CFLAGS="$CFLAGS -W -Werror -Wno-missing-field-initializers"
+       CFLAGS="$CFLAGS -Wextra -Werror -Wno-missing-field-initializers"
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -32783,7 +35520,7 @@ if ${gl_cv_cc_nomfi_needed+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   gl_save_CFLAGS="$CFLAGS"
-         CFLAGS="$CFLAGS -W -Werror"
+         CFLAGS="$CFLAGS -Wextra -Werror"
          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 int f (void)
@@ -32850,133 +35587,41 @@ $as_echo "$gl_cv_cc_uninitialized_supported" >&6; }
   # To compare this list to your installed GCC's, run this Bash command:
   #
   # comm -3 \
-  #  <((sed -n 's/^  *\(-[^ 0-9][^ ]*\) .*/\1/p' manywarnings.m4; \
+  #  <((sed -n 's/^  *\(-[^ 0-9][^ ]*\).*/\1/p' manywarnings.m4; \
   #     awk '/^[^#]/ {print ws}' ../build-aux/gcc-warning.spec) | sort) \
   #  <(LC_ALL=C gcc --help=warnings | sed -n 's/^  \(-[^ ]*\) .*/\1/p' | sort)
 
-  gl_manywarn_set=
-  for gl_manywarn_item in -fno-common \
-    -W \
-    -Wabsolute-value \
-    -Waddress \
-    -Waddress-of-packed-member \
-    -Waggressive-loop-optimizations \
+  ws=
+  for gl_manywarn_item in -fanalyzer -fno-common \
     -Wall \
-    -Wattribute-warning \
-    -Wattributes \
+    -Warith-conversion \
     -Wbad-function-cast \
-    -Wbool-compare \
-    -Wbool-operation \
-    -Wbuiltin-declaration-mismatch \
-    -Wbuiltin-macro-redefined \
-    -Wcannot-profile \
-    -Wcast-align \
     -Wcast-align=strict \
-    -Wcast-function-type \
-    -Wchar-subscripts \
-    -Wclobbered \
-    -Wcomment \
-    -Wcomments \
-    -Wcoverage-mismatch \
-    -Wcpp \
-    -Wdangling-else \
     -Wdate-time \
-    -Wdeprecated \
-    -Wdeprecated-declarations \
-    -Wdesignated-init \
     -Wdisabled-optimization \
-    -Wdiscarded-array-qualifiers \
-    -Wdiscarded-qualifiers \
-    -Wdiv-by-zero \
     -Wdouble-promotion \
     -Wduplicated-branches \
     -Wduplicated-cond \
-    -Wduplicate-decl-specifier \
-    -Wempty-body \
-    -Wendif-labels \
-    -Wenum-compare \
-    -Wexpansion-to-defined \
     -Wextra \
-    -Wformat-contains-nul \
-    -Wformat-extra-args \
-    -Wformat-nonliteral \
-    -Wformat-security \
     -Wformat-signedness \
-    -Wformat-y2k \
-    -Wformat-zero-length \
-    -Wframe-address \
-    -Wfree-nonheap-object \
-    -Whsa \
-    -Wif-not-aligned \
-    -Wignored-attributes \
-    -Wignored-qualifiers \
-    -Wimplicit \
-    -Wimplicit-function-declaration \
-    -Wimplicit-int \
-    -Wincompatible-pointer-types \
     -Winit-self \
     -Winline \
-    -Wint-conversion \
-    -Wint-in-bool-context \
-    -Wint-to-pointer-cast \
-    -Winvalid-memory-model \
     -Winvalid-pch \
-    -Wlogical-not-parentheses \
     -Wlogical-op \
-    -Wmain \
-    -Wmaybe-uninitialized \
-    -Wmemset-elt-size \
-    -Wmemset-transposed-args \
-    -Wmisleading-indentation \
-    -Wmissing-attributes \
-    -Wmissing-braces \
     -Wmissing-declarations \
-    -Wmissing-field-initializers \
     -Wmissing-include-dirs \
-    -Wmissing-parameter-type \
-    -Wmissing-profile \
     -Wmissing-prototypes \
-    -Wmultichar \
-    -Wmultistatement-macros \
-    -Wnarrowing \
     -Wnested-externs \
-    -Wnonnull \
-    -Wnonnull-compare \
     -Wnull-dereference \
-    -Wodr \
-    -Wold-style-declaration \
     -Wold-style-definition \
     -Wopenmp-simd \
-    -Woverflow \
     -Woverlength-strings \
-    -Woverride-init \
     -Wpacked \
-    -Wpacked-bitfield-compat \
-    -Wpacked-not-aligned \
-    -Wparentheses \
     -Wpointer-arith \
-    -Wpointer-compare \
-    -Wpointer-sign \
-    -Wpointer-to-int-cast \
-    -Wpragmas \
-    -Wpsabi \
-    -Wrestrict \
-    -Wreturn-local-addr \
-    -Wreturn-type \
-    -Wscalar-storage-order \
-    -Wsequence-point \
     -Wshadow \
-    -Wshift-count-negative \
-    -Wshift-count-overflow \
-    -Wshift-negative-value \
-    -Wsizeof-array-argument \
-    -Wsizeof-pointer-div \
-    -Wsizeof-pointer-memaccess \
     -Wstack-protector \
-    -Wstrict-aliasing \
     -Wstrict-overflow \
     -Wstrict-prototypes \
-    -Wstringop-truncation \
     -Wsuggest-attribute=cold \
     -Wsuggest-attribute=const \
     -Wsuggest-attribute=format \
@@ -32985,97 +35630,63 @@ $as_echo "$gl_cv_cc_uninitialized_supported" >&6; }
     -Wsuggest-attribute=pure \
     -Wsuggest-final-methods \
     -Wsuggest-final-types \
-    -Wswitch \
-    -Wswitch-bool \
-    -Wswitch-unreachable \
     -Wsync-nand \
     -Wsystem-headers \
-    -Wtautological-compare \
     -Wtrampolines \
-    -Wtrigraphs \
-    -Wtype-limits \
     -Wuninitialized \
     -Wunknown-pragmas \
     -Wunsafe-loop-optimizations \
-    -Wunused \
-    -Wunused-but-set-parameter \
-    -Wunused-but-set-variable \
-    -Wunused-function \
-    -Wunused-label \
-    -Wunused-local-typedefs \
     -Wunused-macros \
-    -Wunused-parameter \
-    -Wunused-result \
-    -Wunused-value \
-    -Wunused-variable \
-    -Wvarargs \
     -Wvariadic-macros \
     -Wvector-operation-performance \
     -Wvla \
-    -Wvolatile-register-var \
     -Wwrite-strings \
     \
     ; do
-    gl_manywarn_set="$gl_manywarn_set $gl_manywarn_item"
+    as_fn_append ws " $gl_manywarn_item"
   done
 
   # gcc --help=warnings outputs an unusual form for these options; list
   # them here so that the above 'comm' command doesn't report a false match.
-  # Would prefer "min (PTRDIFF_MAX, SIZE_MAX)", but it must be a literal.
-  # Also, AC_COMPUTE_INT requires it to fit in a long; it is 2**63 on
-  # the only platforms where it does not fit in a long, so make that
-  # a special case.
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking max safe object size" >&5
-$as_echo_n "checking max safe object size... " >&6; }
-  if ac_fn_c_compute_int "$LINENO" "LONG_MAX < (PTRDIFF_MAX < (size_t) -1 ? PTRDIFF_MAX : (size_t) -1)
-     ? -1
-     : PTRDIFF_MAX < (size_t) -1 ? (long) PTRDIFF_MAX : (long) (size_t) -1" "gl_alloc_max"        "#include <limits.h>
-      #include <stddef.h>
-      #include <stdint.h>
-    "; then :
-
-else
-  gl_alloc_max=2147483647
-fi
-
-  case $gl_alloc_max in
-    -1) gl_alloc_max=9223372036854775807;;
-  esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_alloc_max" >&5
-$as_echo "$gl_alloc_max" >&6; }
-  gl_manywarn_set="$gl_manywarn_set -Walloc-size-larger-than=$gl_alloc_max"
-  gl_manywarn_set="$gl_manywarn_set -Warray-bounds=2"
-  gl_manywarn_set="$gl_manywarn_set -Wattribute-alias=2"
-  gl_manywarn_set="$gl_manywarn_set -Wformat-overflow=2"
-  gl_manywarn_set="$gl_manywarn_set -Wformat-truncation=2"
-  gl_manywarn_set="$gl_manywarn_set -Wimplicit-fallthrough=5"
-  gl_manywarn_set="$gl_manywarn_set -Wnormalized=nfc"
-  gl_manywarn_set="$gl_manywarn_set -Wshift-overflow=2"
-  gl_manywarn_set="$gl_manywarn_set -Wstringop-overflow=2"
-  gl_manywarn_set="$gl_manywarn_set -Wunused-const-variable=2"
-  gl_manywarn_set="$gl_manywarn_set -Wvla-larger-than=4031"
+  as_fn_append ws ' -Warray-bounds=2'
+  as_fn_append ws ' -Wattribute-alias=2'
+  as_fn_append ws ' -Wformat-overflow=2'
+  as_fn_append ws ' -Wformat=2'
+  as_fn_append ws ' -Wformat-truncation=2'
+  as_fn_append ws ' -Wimplicit-fallthrough=5'
+  as_fn_append ws ' -Wshift-overflow=2'
+  as_fn_append ws ' -Wunused-const-variable=2'
+  as_fn_append ws ' -Wvla-larger-than=4031'
 
   # These are needed for older GCC versions.
   if test -n "$GCC"; then
     case `($CC --version) 2>/dev/null` in
       'gcc (GCC) '[0-3].* | \
       'gcc (GCC) '4.[0-7].*)
-        gl_manywarn_set="$gl_manywarn_set -fdiagnostics-show-option"
-        gl_manywarn_set="$gl_manywarn_set -funit-at-a-time"
+        as_fn_append ws ' -fdiagnostics-show-option'
+        as_fn_append ws ' -funit-at-a-time'
           ;;
     esac
   fi
 
   # Disable specific options as needed.
   if test "$gl_cv_cc_nomfi_needed" = yes; then
-    gl_manywarn_set="$gl_manywarn_set -Wno-missing-field-initializers"
+    as_fn_append ws ' -Wno-missing-field-initializers'
   fi
 
   if test "$gl_cv_cc_uninitialized_supported" = no; then
-    gl_manywarn_set="$gl_manywarn_set -Wno-uninitialized"
+    as_fn_append ws ' -Wno-uninitialized'
   fi
 
-  ws=$gl_manywarn_set
+  # Some warnings have too many false alarms in GCC 10.1.
+  # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93695
+  as_fn_append ws ' -Wno-analyzer-double-free'
+  # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94458
+  as_fn_append ws ' -Wno-analyzer-malloc-leak'
+  # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94851
+  as_fn_append ws ' -Wno-analyzer-null-dereference'
+  # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95758
+  as_fn_append ws ' -Wno-analyzer-use-after-free'
 
   ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
@@ -33093,7 +35704,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
       *" $gl_warn_item "*)
         ;;
       *)
-        gl_warn_set="$gl_warn_set $gl_warn_item"
+        as_fn_append gl_warn_set " $gl_warn_item"
         ;;
     esac
   done
@@ -41333,7 +43944,6 @@ CC=$lt_save_CC
   prefix="$acl_save_prefix"
 
 
-
 # Check whether --with-gnu-ld was given.
 if test "${with_gnu_ld+set}" = set; then :
   withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
 # Prepare PATH_SEPARATOR.
 # The user is always right.
 if test "${PATH_SEPARATOR+set}" != set; then
-  # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which
-  # contains only /bin. Note that ksh looks also at the FPATH variable,
-  # so we have to set that as well for the test.
-  PATH_SEPARATOR=:
-  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \
-    && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \
-           || PATH_SEPARATOR=';'
-       }
+  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
 fi
-
-if test -n "$LD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld" >&5
-$as_echo_n "checking for ld... " >&6; }
-elif test "$GCC" = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
+ac_prog=ld
+if test "$GCC" = yes; then
+  # Check if gcc -print-prog-name=ld gives a path.
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by GCC" >&5
+$as_echo_n "checking for ld used by GCC... " >&6; }
+  case $host in
+  *-*-mingw*)
+    # gcc leaves a trailing carriage return which upsets mingw
+    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
+  *)
+    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
+  esac
+  case $ac_prog in
+    # Accept absolute paths.
+    [\\/]* | [A-Za-z]:[\\/]*)
+      re_direlt='/[^/][^/]*/\.\./'
+      # Canonicalize the path of ld
+      ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
+      while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
+        ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
+      done
+      test -z "$LD" && LD="$ac_prog"
+      ;;
+  "")
+    # If it fails, then pretend we aren't using GCC.
+    ac_prog=ld
+    ;;
+  *)
+    # If it is relative, then search for the first ld in PATH.
+    with_gnu_ld=unknown
+    ;;
+  esac
 elif test "$with_gnu_ld" = yes; then
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
 $as_echo_n "checking for GNU ld... " >&6; }
@@ -41367,142 +44003,52 @@ else
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
 $as_echo_n "checking for non-GNU ld... " >&6; }
 fi
-if test -n "$LD"; then
-  # Let the user override the test with a path.
-  :
-else
-  if ${acl_cv_path_LD+:} false; then :
+if ${acl_cv_path_LD+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-
-    acl_cv_path_LD= # Final result of this test
-    ac_prog=ld # Program to search in $PATH
-    if test "$GCC" = yes; then
-      # Check if gcc -print-prog-name=ld gives a path.
-      case $host in
-        *-*-mingw*)
-          # gcc leaves a trailing carriage return which upsets mingw
-          acl_output=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
-        *)
-          acl_output=`($CC -print-prog-name=ld) 2>&5` ;;
-      esac
-      case $acl_output in
-        # Accept absolute paths.
-        [\\/]* | ?:[\\/]*)
-          re_direlt='/[^/][^/]*/\.\./'
-          # Canonicalize the pathname of ld
-          acl_output=`echo "$acl_output" | sed 's%\\\\%/%g'`
-          while echo "$acl_output" | grep "$re_direlt" > /dev/null 2>&1; do
-            acl_output=`echo $acl_output | sed "s%$re_direlt%/%"`
-          done
-          # Got the pathname. No search in PATH is needed.
-          acl_cv_path_LD="$acl_output"
-          ac_prog=
-          ;;
-        "")
-          # If it fails, then pretend we aren't using GCC.
-          ;;
-        *)
-          # If it is relative, then search for the first ld in PATH.
-          with_gnu_ld=unknown
-          ;;
+  if test -z "$LD"; then
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
+  for ac_dir in $PATH; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
+      acl_cv_path_LD="$ac_dir/$ac_prog"
+      # Check to see if the program is GNU ld.  I'd rather use --version,
+      # but apparently some GNU ld's only accept -v.
+      # Break only if it was the GNU/non-GNU ld that we prefer.
+      case `"$acl_cv_path_LD" -v 2>&1 < /dev/null` in
+      *GNU* | *'with BFD'*)
+        test "$with_gnu_ld" != no && break ;;
+      *)
+        test "$with_gnu_ld" != yes && break ;;
       esac
     fi
-    if test -n "$ac_prog"; then
-      # Search for $ac_prog in $PATH.
-      acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-      for ac_dir in $PATH; do
-        IFS="$acl_save_ifs"
-        test -z "$ac_dir" && ac_dir=.
-        if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-          acl_cv_path_LD="$ac_dir/$ac_prog"
-          # Check to see if the program is GNU ld.  I'd rather use --version,
-          # but apparently some variants of GNU ld only accept -v.
-          # Break only if it was the GNU/non-GNU ld that we prefer.
-          case `"$acl_cv_path_LD" -v 2>&1 </dev/null` in
-            *GNU* | *'with BFD'*)
-              test "$with_gnu_ld" != no && break
-              ;;
-            *)
-              test "$with_gnu_ld" != yes && break
-              ;;
-          esac
-        fi
-      done
-      IFS="$acl_save_ifs"
-    fi
-    case $host in
-      *-*-aix*)
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if defined __powerpc64__ || defined _ARCH_PPC64
-                int ok;
-               #else
-                error fail
-               #endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  # The compiler produces 64-bit code. Add option '-b64' so that the
-           # linker groks 64-bit object files.
-           case "$acl_cv_path_LD " in
-             *" -b64 "*) ;;
-             *) acl_cv_path_LD="$acl_cv_path_LD -b64" ;;
-           esac
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-        ;;
-      sparc64-*-netbsd*)
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if defined __sparcv9 || defined __arch64__
-                int ok;
-               #else
-                error fail
-               #endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
+  done
+  IFS="$ac_save_ifs"
 else
-  # The compiler produces 32-bit code. Add option '-m elf32_sparc'
-           # so that the linker groks 32-bit object files.
-           case "$acl_cv_path_LD " in
-             *" -m elf32_sparc "*) ;;
-             *) acl_cv_path_LD="$acl_cv_path_LD -m elf32_sparc" ;;
-           esac
-
+  acl_cv_path_LD="$LD" # Let the user override the test with a path.
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-        ;;
-    esac
-
 fi
 
-  LD="$acl_cv_path_LD"
-fi
+LD="$acl_cv_path_LD"
 if test -n "$LD"; then
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
 $as_echo "$LD" >&6; }
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
-  as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
 fi
+test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
 if ${acl_cv_prog_gnu_ld+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  # I'd rather use --version here, but apparently some GNU lds only accept -v.
+  # I'd rather use --version here, but apparently some GNU ld's only accept -v.
 case `$LD -v 2>&1 </dev/null` in
 *GNU* | *'with BFD'*)
-  acl_cv_prog_gnu_ld=yes
-  ;;
+  acl_cv_prog_gnu_ld=yes ;;
 *)
-  acl_cv_prog_gnu_ld=no
-  ;;
+  acl_cv_prog_gnu_ld=no ;;
 esac
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_prog_gnu_ld" >&5
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking 32-bit host C ABI" >&5
-$as_echo_n "checking 32-bit host C ABI... " >&6; }
-if ${gl_cv_host_cpu_c_abi_32bit+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$gl_cv_host_cpu_c_abi"; then
-       case "$gl_cv_host_cpu_c_abi" in
-         i386 | x86_64-x32 | arm | armhf | arm64-ilp32 | hppa | ia64-ilp32 | mips | mipsn32 | powerpc | riscv*-ilp32* | s390 | sparc)
-           gl_cv_host_cpu_c_abi_32bit=yes ;;
-         *)
-           gl_cv_host_cpu_c_abi_32bit=no ;;
-       esac
-     else
-       case "$host_cpu" in
-
-         i[4567]86 )
-           gl_cv_host_cpu_c_abi_32bit=yes
-           ;;
-
-         x86_64 )
-           # On x86_64 systems, the C compiler may be generating code in one of
-           # these ABIs:
-           # - 64-bit instruction set, 64-bit pointers, 64-bit 'long': x86_64.
-           # - 64-bit instruction set, 64-bit pointers, 32-bit 'long': x86_64
-           #   with native Windows (mingw, MSVC).
-           # - 64-bit instruction set, 32-bit pointers, 32-bit 'long': x86_64-x32.
-           # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': i386.
-           cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if (defined __x86_64__ || defined __amd64__ \
-                       || defined _M_X64 || defined _M_AMD64) \
-                      && !(defined __ILP32__ || defined _ILP32)
-                   int ok;
-                  #else
-                   error fail
-                  #endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_host_cpu_c_abi_32bit=no
-else
-  gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-           ;;
-
-         arm* | aarch64 )
-           # Assume arm with EABI.
-           # On arm64 systems, the C compiler may be generating code in one of
-           # these ABIs:
-           # - aarch64 instruction set, 64-bit pointers, 64-bit 'long': arm64.
-           # - aarch64 instruction set, 32-bit pointers, 32-bit 'long': arm64-ilp32.
-           # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': arm or armhf.
-           cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if defined __aarch64__ && !(defined __ILP32__ || defined _ILP32)
-                   int ok;
-                  #else
-                   error fail
-                  #endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_host_cpu_c_abi_32bit=no
-else
-  gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-           ;;
-
-         hppa1.0 | hppa1.1 | hppa2.0* | hppa64 )
-           # On hppa, the C compiler may be generating 32-bit code or 64-bit
-           # code. In the latter case, it defines _LP64 and __LP64__.
-           cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __LP64__
-                   int ok;
-                  #else
-                   error fail
-                  #endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_host_cpu_c_abi_32bit=no
-else
-  gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-           ;;
-
-         ia64* )
-           # On ia64 on HP-UX, the C compiler may be generating 64-bit code or
-           # 32-bit code. In the latter case, it defines _ILP32.
-           cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef _ILP32
-                   int ok;
-                  #else
-                   error fail
-                  #endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_host_cpu_c_abi_32bit=yes
-else
-  gl_cv_host_cpu_c_abi_32bit=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-           ;;
-
-         mips* )
-           # We should also check for (_MIPS_SZPTR == 64), but gcc keeps this
-           # at 32.
-           cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if defined _MIPS_SZLONG && (_MIPS_SZLONG == 64)
-                   int ok;
-                  #else
-                   error fail
-                  #endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_host_cpu_c_abi_32bit=no
-else
-  gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-           ;;
-
-         powerpc* )
-           # Different ABIs are in use on AIX vs. Mac OS X vs. Linux,*BSD.
-           # No need to distinguish them here; the caller may distinguish
-           # them based on the OS.
-           # On powerpc64 systems, the C compiler may still be generating
-           # 32-bit code. And on powerpc-ibm-aix systems, the C compiler may
-           # be generating 64-bit code.
-           cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if defined __powerpc64__ || defined _ARCH_PPC64
-                   int ok;
-                  #else
-                   error fail
-                  #endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_host_cpu_c_abi_32bit=no
-else
-  gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-           ;;
-
-         rs6000 )
-           gl_cv_host_cpu_c_abi_32bit=yes
-           ;;
-
-         riscv32 | riscv64 )
-           # There are 6 ABIs: ilp32, ilp32f, ilp32d, lp64, lp64f, lp64d.
-           # Size of 'long' and 'void *':
-           cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if defined __LP64__
-                    int ok;
-                  #else
-                    error fail
-                  #endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_host_cpu_c_abi_32bit=no
-else
-  gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-           ;;
-
-         s390* )
-           # On s390x, the C compiler may be generating 64-bit (= s390x) code
-           # or 31-bit (= s390) code.
-           cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if defined __LP64__ || defined __s390x__
-                    int ok;
-                  #else
-                    error fail
-                  #endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_host_cpu_c_abi_32bit=no
-else
-  gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-           ;;
-
-         sparc | sparc64 )
-           # UltraSPARCs running Linux have `uname -m` = "sparc64", but the
-           # C compiler still generates 32-bit code.
-           cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#if defined __sparcv9 || defined __arch64__
-                   int ok;
-                  #else
-                   error fail
-                  #endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  gl_cv_host_cpu_c_abi_32bit=no
-else
-  gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-           ;;
-
-         *)
-           gl_cv_host_cpu_c_abi_32bit=no
-           ;;
-       esac
-     fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_host_cpu_c_abi_32bit" >&5
-$as_echo "$gl_cv_host_cpu_c_abi_32bit" >&6; }
-
-  HOST_CPU_C_ABI_32BIT="$gl_cv_host_cpu_c_abi_32bit"
-
-
-
-
-
+  acl_libdirstem=lib
+  acl_libdirstem2=
   case "$host_os" in
     solaris*)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5
+                                    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5
 $as_echo_n "checking for 64-bit host... " >&6; }
 if ${gl_cv_solaris_64bit+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
+
 #ifdef _LP64
-                 int ok;
-                #else
-                 error fail
-                #endif
+sixtyfour bits
+#endif
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  $EGREP "sixtyfour bits" >/dev/null 2>&1; then :
   gl_cv_solaris_64bit=yes
 else
   gl_cv_solaris_64bit=no
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f conftest*
+
 
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_solaris_64bit" >&5
-$as_echo "$gl_cv_solaris_64bit" >&6; };;
-  esac
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the common suffixes of directories in the library search path" >&5
-$as_echo_n "checking for the common suffixes of directories in the library search path... " >&6; }
-if ${acl_cv_libdirstems+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  acl_libdirstem=lib
-     acl_libdirstem2=
-     case "$host_os" in
-       solaris*)
-                                                      if test $gl_cv_solaris_64bit = yes; then
-           acl_libdirstem=lib/64
-           case "$host_cpu" in
-             sparc*)        acl_libdirstem2=lib/sparcv9 ;;
-             i*86 | x86_64) acl_libdirstem2=lib/amd64 ;;
-           esac
-         fi
-         ;;
-       *)
-                           if test "$HOST_CPU_C_ABI_32BIT" != yes; then
-                                            searchpath=`(if test -f /usr/bin/gcc \
-                           && LC_ALL=C /usr/bin/gcc -print-search-dirs >/dev/null 2>/dev/null; then \
-                          LC_ALL=C /usr/bin/gcc -print-search-dirs; \
-                        else \
-                          LC_ALL=C $CC -print-search-dirs; \
-                        fi) 2>/dev/null \
-                       | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
-           if test -n "$searchpath"; then
-             acl_save_IFS="${IFS=      }"; IFS=":"
-             for searchdir in $searchpath; do
-               if test -d "$searchdir"; then
+$as_echo "$gl_cv_solaris_64bit" >&6; }
+      if test $gl_cv_solaris_64bit = yes; then
+        acl_libdirstem=lib/64
+        case "$host_cpu" in
+          sparc*)        acl_libdirstem2=lib/sparcv9 ;;
+          i*86 | x86_64) acl_libdirstem2=lib/amd64 ;;
+        esac
+      fi
+      ;;
+    *)
+      searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
+      if test -n "$searchpath"; then
+        acl_save_IFS="${IFS=   }"; IFS=":"
+        for searchdir in $searchpath; do
+          if test -d "$searchdir"; then
+            case "$searchdir" in
+              */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
+              */../ | */.. )
+                # Better ignore directories of this form. They are misleading.
+                ;;
+              *) searchdir=`cd "$searchdir" && pwd`
                  case "$searchdir" in
-                   */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
-                   */../ | */.. )
-                     # Better ignore directories of this form. They are misleading.
-                     ;;
-                   *) searchdir=`cd "$searchdir" && pwd`
-                      case "$searchdir" in
-                        */lib64 ) acl_libdirstem=lib64 ;;
-                      esac ;;
-                 esac
-               fi
-             done
-             IFS="$acl_save_IFS"
-           fi
-         fi
-         ;;
-     esac
-     test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem"
-     acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2"
+                   */lib64 ) acl_libdirstem=lib64 ;;
+                 esac ;;
+            esac
+          fi
+        done
+        IFS="$acl_save_IFS"
+      fi
+      ;;
+  esac
+  test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem"
 
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_libdirstems" >&5
-$as_echo "$acl_cv_libdirstems" >&6; }
-  # Decompose acl_cv_libdirstems into acl_libdirstem and acl_libdirstem2.
-  acl_libdirstem=`echo "$acl_cv_libdirstems" | sed -e 's/,.*//'`
-  acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e '/,/s/.*,//'`
 
 
 
@@ -41912,7 +44201,7 @@ if test "${with_libiconv_prefix+set}" = set; then :
         additional_includedir="$withval/include"
         additional_libdir="$withval/$acl_libdirstem"
         if test "$acl_libdirstem2" != "$acl_libdirstem" \
-           && test ! -d "$withval/$acl_libdirstem"; then
+           && ! test -d "$withval/$acl_libdirstem"; then
           additional_libdir="$withval/$acl_libdirstem2"
         fi
       fi
@@ -41942,7 +44231,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
@@ -42334,6 +44623,7 @@ fi
 
 
 
+
           am_save_CPPFLAGS="$CPPFLAGS"
 
   for element in $INCICONV; do
@@ -43306,6 +45596,7 @@ $as_echo "$LIBICONV" >&6; }
 
 
 
+
     use_additional=yes
 
   acl_save_prefix="$prefix"
@@ -43343,7 +45634,7 @@ if test "${with_libintl_prefix+set}" = set; then :
         additional_includedir="$withval/include"
         additional_libdir="$withval/$acl_libdirstem"
         if test "$acl_libdirstem2" != "$acl_libdirstem" \
-           && test ! -d "$withval/$acl_libdirstem"; then
+           && ! test -d "$withval/$acl_libdirstem"; then
           additional_libdir="$withval/$acl_libdirstem2"
         fi
       fi
@@ -43373,7 +45664,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
@@ -43759,6 +46050,7 @@ fi
 
 
 
+
           { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5
 $as_echo_n "checking for GNU gettext in libintl... " >&6; }
 if eval \${$gt_func_gnugettext_libintl+:} false; then :
 fi
 
 
-SELINUX_LIBS=""
-if test "$enable_selinux" = yes; then
-       SELINUX_LIBS="-lselinux -lsepol"
-fi
-
-
 if test "$with_readline" = yes; then
        OLD_LIBS="$LIBS"
        LIBS=""
@@ -45604,6 +47890,10 @@ Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 CONFIG_INCLUDE=lib/config.h
 
+if test -z "${GL_GENERATE_STDALIGN_H_TRUE}" && test -z "${GL_GENERATE_STDALIGN_H_FALSE}"; then
+  as_fn_error $? "conditional \"GL_GENERATE_STDALIGN_H\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${GL_GENERATE_STDARG_H_TRUE}" && test -z "${GL_GENERATE_STDARG_H_FALSE}"; then
   as_fn_error $? "conditional \"GL_GENERATE_STDARG_H\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 if test -z "${GL_GENERATE_NETINET_IN_H_TRUE}" && test -z "${GL_GENERATE_NETINET_IN_H_FALSE}"; then
   as_fn_error $? "conditional \"GL_GENERATE_NETINET_IN_H\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${GL_GENERATE_STDALIGN_H_TRUE}" && test -z "${GL_GENERATE_STDALIGN_H_FALSE}"; then
-  as_fn_error $? "conditional \"GL_GENERATE_STDALIGN_H\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 
     gltests_libobjs=
@@ -46063,7 +48349,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by GNU parted $as_me 3.3, which was
+This file was extended by GNU parted $as_me 3.4, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -46135,7 +48421,7 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-GNU parted config.status 3.3
+GNU parted config.status 3.4
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
index c46a3ffabd1aa9787202b916950924a5976def08..d034064e2bfd207a3305dbb6309b01f7b17af9d3 100644 (file)
@@ -1,9 +1,10 @@
 dnl GNU Parted - a library and front end for manipulation hard disk partitions
-dnl Copyright (C) 1998-2002, 2005-2014, 2019 Free Software Foundation, Inc.
+dnl Copyright (C) 1998-2002, 2005-2014, 2019-2021 Free Software Foundation,
+dnl Inc.
 dnl
 dnl This file may be modified and/or distributed without restriction.
 
-AC_PREREQ([2.63])
+AC_PREREQ([2.64])
 AC_INIT([GNU parted], m4_esyscmd([build-aux/git-version-gen .version]),
         [bug-parted@gnu.org])
 
@@ -89,11 +90,6 @@ if test $ENABLE_DEVICE_MAPPER = yes; then
                   1, [device mapper (libdevmapper) support])
 fi
 
-AC_ARG_ENABLE([selinux],
-       [  --enable-selinux        enable SELinux support [default=no]], ,
-       enable_selinux=no
-)
-
 AC_ARG_ENABLE([discover-only],
        [  --enable-discover-only  support only reading/probing [default=no]], ,
        enable_discover_only=no
@@ -320,13 +316,6 @@ package as well (it may be called device-mapper-devel or something similar).]
 fi
 AC_SUBST([DM_LIBS])
 
-dnl Check for SELinux
-SELINUX_LIBS=""
-if test "$enable_selinux" = yes; then
-       SELINUX_LIBS="-lselinux -lsepol"
-fi
-AC_SUBST([SELINUX_LIBS])
-
 dnl Check for termcap
 if test "$with_readline" = yes; then
        OLD_LIBS="$LIBS"
index 3f654251da8a09398bb286d97ae02496fc54b26a..a3b1751ffa33afc26e96ab31266e68fbcff0f745 100644 (file)
@@ -94,9 +94,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -108,15 +108,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -126,25 +124,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -156,9 +155,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -173,6 +173,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -181,14 +182,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -300,6 +302,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -334,6 +337,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -344,6 +349,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -391,19 +397,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -417,6 +427,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -477,6 +489,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -525,9 +538,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -543,6 +559,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -626,11 +643,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -640,12 +659,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -679,10 +703,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -704,14 +728,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -730,7 +757,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -740,7 +766,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -763,6 +788,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -848,7 +874,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -861,6 +889,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -883,6 +912,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -891,15 +921,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -938,6 +967,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -963,16 +993,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -1021,6 +1063,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -1050,6 +1093,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1086,21 +1130,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1128,6 +1175,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1137,6 +1185,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1169,6 +1219,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1257,6 +1308,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1294,13 +1346,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1319,6 +1371,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
index 20ad61d44e99328c16f0bf9ac8aab70581356c93..07fbdbd84114ba2a1452c98ad6d6387b65b737f3 100644 (file)
@@ -4,7 +4,7 @@
 
        by Andrew Clausen
 
-       Copyright (C) 2002, 2009-2014, 2019 Free Software Foundation, Inc.
+       Copyright (C) 2002, 2009-2014, 2019-2021 Free Software Foundation, Inc.
        This document may be distributed and/or modified
        without restriction
 
index 836c95027717bccfe4e8ee1878f5d72db2dc7d4c..2319781387939a61664e6ff8a17256597ca327be 100644 (file)
@@ -95,9 +95,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -109,15 +109,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -127,25 +125,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -157,9 +156,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -174,6 +174,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -182,14 +183,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -242,6 +244,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -276,6 +279,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -286,6 +291,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -333,19 +339,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -359,6 +369,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -419,6 +431,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -467,9 +480,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -485,6 +501,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -568,11 +585,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -582,12 +601,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -621,10 +645,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -646,14 +670,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -672,7 +699,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -682,7 +708,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -705,6 +730,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -790,7 +816,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -803,6 +831,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -825,6 +854,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -833,15 +863,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -880,6 +909,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -905,16 +935,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -963,6 +1005,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -992,6 +1035,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1028,21 +1072,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1070,6 +1117,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1079,6 +1127,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1111,6 +1161,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1199,6 +1250,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1236,13 +1288,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1261,6 +1313,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
index 28d82edab222455bbcd56df78b3f526d5a3fedba..de3742427f680bdafb2342e7dc1e8206873a4ced 100644 (file)
@@ -94,9 +94,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -108,15 +108,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -126,25 +124,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -156,9 +155,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -173,6 +173,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -181,14 +182,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -271,6 +273,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -305,6 +308,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -315,6 +320,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -362,19 +368,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -388,6 +398,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -448,6 +460,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -496,9 +509,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -514,6 +530,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -597,11 +614,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -611,12 +630,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -650,10 +674,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -675,14 +699,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -701,7 +728,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -711,7 +737,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -734,6 +759,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -819,7 +845,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -832,6 +860,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -854,6 +883,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -862,15 +892,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -909,6 +938,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -934,16 +964,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -992,6 +1034,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -1021,6 +1064,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1057,21 +1101,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1099,6 +1146,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1108,6 +1156,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1140,6 +1190,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1228,6 +1279,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1265,13 +1317,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1290,6 +1342,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
index 15932c27ee220c6453aeda9b3563926e1c26d0ff..297c39a293390aaae4def51c1935dd3a17c80836 100644 (file)
@@ -112,7 +112,7 @@ or an LVM logical volume if necessary.
 .B set \fIpartition\fP \fIflag\fP \fIstate\fP
 Change the state of the \fIflag\fP on \fIpartition\fP to \fIstate\fP.
 Supported flags are: "boot", "root", "swap", "hidden", "raid", "lvm", "lba",
-"legacy_boot", "irst", "msftres", "esp" and "palo".
+"legacy_boot", "irst", "msftres", "esp", "chromeos_kernel", "bls_boot" and "palo".
 \fIstate\fP should be either "on" or "off".
 .TP
 .B unit \fIunit\fP
index 9ae38b9626ddddb4c67c1943c3a4c04dd8661921..1f057252853b4b9a939439775c66086398a0b306 100644 (file)
@@ -94,9 +94,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -108,15 +108,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -126,25 +124,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -156,9 +155,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -173,6 +173,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -181,14 +182,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/version.texi \
@@ -372,6 +374,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -406,6 +409,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -416,6 +421,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -463,19 +469,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -489,6 +499,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -549,6 +561,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -597,9 +610,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -615,6 +631,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -698,11 +715,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -712,12 +731,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -751,10 +775,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -776,14 +800,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -802,7 +829,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -812,7 +838,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -835,6 +860,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -920,7 +946,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -933,6 +961,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -955,6 +984,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -963,15 +993,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -1010,6 +1039,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -1035,16 +1065,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -1093,6 +1135,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -1122,6 +1165,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1158,21 +1202,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1200,6 +1247,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1209,6 +1257,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1241,6 +1291,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1329,6 +1380,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1366,13 +1418,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1391,6 +1443,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
index 542edaad258a2cfecffb25e35338547dfe16f291..eaf3da0e92dcb5f82d495be23dec933dfa86fb84 100644 (file)
@@ -414,7 +414,7 @@ The Free Software Foundation may publish new, revised versions
 of the GNU Free Documentation License from time to time.  Such new
 versions will be similar in spirit to the present version, but may
 differ in detail to address new problems or concerns.  See
-@uref{https://www.gnu.org/copyleft/}.
+@uref{https://www.gnu.org/licenses/}.
 
 Each version of the License is given a distinguishing version number.
 If the Document specifies that a particular numbered version of this
index fb1a807adbef2691594bad89ccb84ab45626bb02..45e3334e88413c5b62d6ff34b87f164e85fbae62 100644 (file)
@@ -22,7 +22,7 @@
 This file documents the use of GNU Parted, a program for creating,
 resising, checking and copy partitions, and file systems on them.
 
-Copyright 1999-2002, 2009-2014, 2019 Free Software Foundation, Inc.
+Copyright 1999--2002, 2009--2014, 2019--2021 Free Software Foundation, Inc.
 
 Permission is granted to copy, distribute and/or modify this document
 under the terms of the GNU Free Documentation License, Version 1.3 or
index 36bced07f858ee71fff239968618277b4ccca1c8..149447e0b5be6a0c343994cfb113de4739d3cb1a 100644 (file)
@@ -1,6 +1,6 @@
-This is parted.info, produced by makeinfo version 6.6 from parted.texi.
+This is parted.info, produced by makeinfo version 6.7 from parted.texi.
 
-Copyright (C) 1999-2014, 2019 Free Software Foundation, Inc.
+Copyright (C) 1999-2014, 2019-2021 Free Software Foundation, Inc.
 
   Permission is granted to copy, distribute and/or modify this document
 under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -25,7 +25,7 @@ GNU Parted User Manual
 This file documents the use of GNU Parted, a program for creating and
 manipulating partition tables.
 
-  This document applies roughly to version *3.3* of GNU Parted.
+  This document applies roughly to version *3.4* of GNU Parted.
 
   The original version was written by Andrew Clausen in text format.
 Richard M. Kreuter translated it into Texinfo format in 2002, to be
@@ -719,6 +719,11 @@ File: parted.info,  Node: set,  Next: unit,  Prev: select,  Up: Command explanat
           (GPT) - this flag is used to tell special purpose software
           that the GPT partition may be bootable.
 
+     'bls_boot'
+          (MS-DOS, GPT) - Enable this to indicate that the selected
+          partition is a Linux Boot Loader Specification compatible
+          /boot partition.
+
      'boot'
           (Mac, MS-DOS, PC98) - should be enabled if you want to boot
           off the partition.  The semantics vary between disk labels.
@@ -750,6 +755,10 @@ File: parted.info,  Node: set,  Next: unit,  Prev: select,  Up: Command explanat
           (MS-DOS, GPT) - this flag identifies a UEFI System Partition.
           On GPT it is an alias for boot.
 
+     'chromeos_kernel'
+          (GPT) - this flag indicates a partition that can be used with
+          the Chrome OS bootloader and verified boot implementation.
+
      'lba'
           (MS-DOS) - this flag can be enabled to tell MS DOS, MS Windows
           9x and MS Windows ME based operating systems to use Linear
@@ -1356,7 +1365,7 @@ A.1 GNU Free Documentation License
      the GNU Free Documentation License from time to time.  Such new
      versions will be similar in spirit to the present version, but may
      differ in detail to address new problems or concerns.  See
-     <https://www.gnu.org/copyleft/>.
+     <https://www.gnu.org/licenses/>.
 
      Each version of the License is given a distinguishing version
      number.  If the Document specifies that a particular numbered
@@ -1528,39 +1537,44 @@ Index
 
 \1f
 Tag Table:
-Node: Top\7f770
-Node: Introduction\7f1573
-Node: Overview\7f2029
-Node: Software Required\7f3556
-Node: Supported Platforms\7f4657
-Node: License\7f5111
-Node: Compiling\7f5715
-Node: Using Parted\7f6995
-Node: Partitioning\7f7414
-Node: Running Parted\7f9052
-Node: Invoking Parted\7f11431
-Node: Command explanations\7f12212
-Node: align-check\7f12677
-Node: disk_set\7f13402
-Node: help\7f14103
-Node: mklabel\7f14386
-Ref: mklabel-Footnote-1\7f15265
-Node: mkpart\7f15395
-Ref: mkpart-Footnote-1\7f17805
-Node: name\7f18056
-Node: print\7f18573
-Node: quit\7f19461
-Node: rescue\7f19955
-Node: resizepart\7f21480
-Node: rm\7f22028
-Node: select\7f22913
-Node: set\7f23383
-Node: unit\7f26834
-Ref: IEC binary units\7f29217
-Node: Related information\7f31310
-Node: Copying This Manual\7f32132
-Node: GNU Free Documentation License\7f32376
-Node: History\7f57488
-Node: Concept index\7f58293
+Node: Top\7f775
+Node: Introduction\7f1578
+Node: Overview\7f2034
+Node: Software Required\7f3561
+Node: Supported Platforms\7f4662
+Node: License\7f5116
+Node: Compiling\7f5720
+Node: Using Parted\7f7000
+Node: Partitioning\7f7419
+Node: Running Parted\7f9057
+Node: Invoking Parted\7f11436
+Node: Command explanations\7f12217
+Node: align-check\7f12682
+Node: disk_set\7f13407
+Node: help\7f14108
+Node: mklabel\7f14391
+Ref: mklabel-Footnote-1\7f15270
+Node: mkpart\7f15400
+Ref: mkpart-Footnote-1\7f17810
+Node: name\7f18061
+Node: print\7f18578
+Node: quit\7f19466
+Node: rescue\7f19960
+Node: resizepart\7f21485
+Node: rm\7f22033
+Node: select\7f22918
+Node: set\7f23388
+Node: unit\7f27184
+Ref: IEC binary units\7f29567
+Node: Related information\7f31660
+Node: Copying This Manual\7f32482
+Node: GNU Free Documentation License\7f32726
+Node: History\7f57838
+Node: Concept index\7f58643
 \1f
 End Tag Table
+
+\1f
+Local Variables:
+coding: utf-8
+End:
index 77c9628c23a19f7d441cd6d345e7ff2dc5779940..d89d74df08764947903c2b693c25c8fdb8430723 100644 (file)
@@ -14,7 +14,7 @@ and manipulating partition tables.
 @ifnottex @c texi2pdf don't understand copying and insertcopying ???
 @c modifications must also be done in the titlepage
 @copying
-Copyright @copyright{} 1999-2014, 2019 Free Software Foundation, Inc.
+Copyright @copyright{} 1999--2014, 2019--2021 Free Software Foundation, Inc.
 
 Permission is granted to copy, distribute and/or modify this document
 under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -844,6 +844,10 @@ GRUB BIOS partition.
 (GPT) - this flag is used to tell special purpose software that the GPT
 partition may be bootable.
 
+@item bls_boot
+(MS-DOS, GPT) - Enable this to indicate that the selected partition is a
+Linux Boot Loader Specification compatible /boot partition.
+
 @item boot
 (Mac, MS-DOS, PC98) - should be enabled if you want to boot off the
 partition.  The semantics vary between disk labels.  For MS-DOS disk
@@ -874,6 +878,10 @@ partition.
 (MS-DOS, GPT) - this flag identifies a UEFI System Partition. On GPT
 it is an alias for boot.
 
+@item chromeos_kernel
+(GPT) - this flag indicates a partition that can be used with the Chrome OS
+bootloader and verified boot implementation.
+
 @item lba
 (MS-DOS) - this flag can be enabled to tell MS DOS, MS Windows 9x and
 MS Windows ME based operating systems to use Linear (LBA) mode.
index 32b86022c5e2c679e6504a06bff0c4f7afe652a1..fe80c6c4fe28ba62308039af4cb8e60970bc499f 100644 (file)
@@ -119,9 +119,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -133,15 +133,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -151,25 +149,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -181,9 +180,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -198,6 +198,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -206,14 +207,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -266,6 +268,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -300,6 +303,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -310,6 +315,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -357,19 +363,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -383,6 +393,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -443,6 +455,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -491,9 +504,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -509,6 +525,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -592,11 +609,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -606,12 +625,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -645,10 +669,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -670,14 +694,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -696,7 +723,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -706,7 +732,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -729,6 +754,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -814,7 +840,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -827,6 +855,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -849,6 +878,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -857,15 +887,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -904,6 +933,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -929,16 +959,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -987,6 +1029,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -1016,6 +1059,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1052,21 +1096,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1094,6 +1141,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1103,6 +1151,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1135,6 +1185,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1223,6 +1274,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1260,13 +1312,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1285,6 +1337,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
index 900b9aec5cf863ba4c9cbbd62bf62f7099542d32..f2419f4af49a966c884dd9cdc00bbc03bb5aa4fa 100644 (file)
@@ -1,4 +1,4 @@
-@set UPDATED 10 October 2019
-@set UPDATED-MONTH October 2019
-@set EDITION 3.3
-@set VERSION 3.3
+@set UPDATED 25 January 2021
+@set UPDATED-MONTH January 2021
+@set EDITION 3.4
+@set VERSION 3.4
index 900b9aec5cf863ba4c9cbbd62bf62f7099542d32..f2419f4af49a966c884dd9cdc00bbc03bb5aa4fa 100644 (file)
@@ -1,4 +1,4 @@
-@set UPDATED 10 October 2019
-@set UPDATED-MONTH October 2019
-@set EDITION 3.3
-@set VERSION 3.3
+@set UPDATED 25 January 2021
+@set UPDATED-MONTH January 2021
+@set EDITION 3.4
+@set VERSION 3.4
index a1352216f9a2d86511ce24fc39d5f5361e62b5b6..daf704f3491cc427828298b1e58b6c2b2f98ef1a 100644 (file)
@@ -94,9 +94,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -108,15 +108,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -126,25 +124,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -156,9 +155,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -173,6 +173,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -181,14 +182,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -300,6 +302,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -334,6 +337,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -344,6 +349,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -391,19 +397,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -417,6 +427,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -477,6 +489,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -525,9 +538,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -543,6 +559,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -626,11 +643,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -640,12 +659,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -679,10 +703,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -704,14 +728,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -730,7 +757,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -740,7 +766,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -763,6 +788,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -848,7 +874,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -861,6 +889,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -883,6 +912,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -891,15 +921,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -938,6 +967,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -963,16 +993,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -1021,6 +1063,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -1050,6 +1093,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1086,21 +1130,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1128,6 +1175,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1137,6 +1185,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1169,6 +1219,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1257,6 +1308,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1294,13 +1346,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1319,6 +1371,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
index c4be9335cbc6bd1476989924d71cf71b5e384abb..7f0e4338988e6943e3ec53da5e82d84276b3e7ce 100644 (file)
@@ -95,9 +95,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -109,15 +109,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -127,25 +125,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -157,9 +156,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -174,6 +174,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -182,14 +183,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__noinst_HEADERS_DIST) \
@@ -290,6 +292,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -324,6 +327,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -334,6 +339,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -381,19 +387,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -407,6 +417,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -467,6 +479,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -515,9 +528,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -533,6 +549,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -616,11 +633,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -630,12 +649,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -669,10 +693,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -694,14 +718,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -720,7 +747,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -730,7 +756,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -753,6 +778,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -838,7 +864,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -851,6 +879,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -873,6 +902,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -881,15 +911,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -928,6 +957,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -953,16 +983,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -1011,6 +1053,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -1040,6 +1083,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1076,21 +1120,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1118,6 +1165,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1127,6 +1175,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1159,6 +1209,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1247,6 +1298,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1284,13 +1336,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1309,6 +1361,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
index e2f6a2b076aa46a164015fbae857735ee5adf2ca..42351ec89f8cb8265074db2621572411b8620342 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index efa6d1ebb00bba194378de32f3543b2f243ffbca..b7f7dcf8f8202edbfa5faa53dda735efea98412d 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 5ae6d0fa03826841ca4f175c5b66e66b9c8cc5c7..60e775deb4e428a19d4f57e2392427bf2ea0ff8f 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     crc32.h
 
index cbae91eb39f3b2f068425b637673898e8542f6c2..6158d40e8ecdc08e0cccf550d73d9b4f390cf597 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     crc32.h
 
index 4321dd9c9b2012f0b740d52620f6d0e70bee7775..33573b9e911cb29f070c08b22883a4a63d775155 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1998-2000, 2002, 2007, 2009-2014, 2019 Free Software
+    Copyright (C) 1998-2000, 2002, 2007, 2009-2014, 2019-2021 Free Software
     Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
index 4321dd9c9b2012f0b740d52620f6d0e70bee7775..33573b9e911cb29f070c08b22883a4a63d775155 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1998-2000, 2002, 2007, 2009-2014, 2019 Free Software
+    Copyright (C) 1998-2000, 2002, 2007, 2009-2014, 2019-2021 Free Software
     Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
index 3f4ca8618122b2eb13943babd3e974c12e7593df..c3e83eb833efb5c11bb79de9204b05c05a99d2c5 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1998-2001, 2005, 2007-2008, 2011-2014, 2019 Free Software
-    Foundation, Inc.
+    Copyright (C) 1998-2001, 2005, 2007-2008, 2011-2014, 2019-2021 Free
+    Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 84652484dd548f1778d86928f81a8e735bf4b55d..414f770aca4fa9f078fc10729d8b947b75c3ccfc 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1998-2001, 2005, 2007-2008, 2011-2014, 2019 Free Software
-    Foundation, Inc.
+    Copyright (C) 1998-2001, 2005, 2007-2008, 2011-2014, 2019-2021 Free
+    Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index d666985a432314f25879c2c770a6729d07e4cd8d..5392fb54e4822b6fd36f2baf56cefa33bf67cb8d 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2002, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1999-2002, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -75,10 +76,12 @@ enum _PedPartitionFlag {
         PED_PARTITION_LEGACY_BOOT=15,
         PED_PARTITION_MSFT_DATA=16,
         PED_PARTITION_IRST=17,
-        PED_PARTITION_ESP=18
+        PED_PARTITION_ESP=18,
+        PED_PARTITION_CHROMEOS_KERNEL=19,
+        PED_PARTITION_BLS_BOOT=20
 };
 #define PED_PARTITION_FIRST_FLAG        PED_PARTITION_BOOT
-#define PED_PARTITION_LAST_FLAG         PED_PARTITION_ESP
+#define PED_PARTITION_LAST_FLAG         PED_PARTITION_BLS_BOOT
 
 enum _PedDiskTypeFeature {
         PED_DISK_TYPE_EXTENDED=1,       /**< supports extended partitions */
index a3b380d97d724aa9092e5257f833cb3eb27b7e4a..6f42145bab35ee327b460a3ceb3d2895b2d4e718 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2002, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1999-2002, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -75,10 +76,12 @@ enum _PedPartitionFlag {
         PED_PARTITION_LEGACY_BOOT=15,
         PED_PARTITION_MSFT_DATA=16,
         PED_PARTITION_IRST=17,
-        PED_PARTITION_ESP=18
+        PED_PARTITION_ESP=18,
+        PED_PARTITION_CHROMEOS_KERNEL=19,
+        PED_PARTITION_BLS_BOOT=20
 };
 #define PED_PARTITION_FIRST_FLAG        PED_PARTITION_BOOT
-#define PED_PARTITION_LAST_FLAG         PED_PARTITION_ESP
+#define PED_PARTITION_LAST_FLAG         PED_PARTITION_BLS_BOOT
 
 enum _PedDiskTypeFeature {
         PED_DISK_TYPE_EXTENDED=1,       /**< supports extended partitions */
index 7ef0112ab29843c014d475b1aa2e7a286db07c9f..1dbcf12ab58df4d3303fc0be1d5d60a38c20835e 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1998-2002, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2002, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 7ef0112ab29843c014d475b1aa2e7a286db07c9f..1dbcf12ab58df4d3303fc0be1d5d60a38c20835e 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1998-2002, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2002, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index bf6692e8dff4b07f69dfb0ce34e6832cd7a6c0b9..5efe5ad6fdaeee1eb9a5a874addb2a5efe43d1e1 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1999-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index bfc1fc9a69107f42a5aceaa2181823f5bdafcf17..20abb08d6dba64851c68ba87741465bd7f6d76c9 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1999-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 51534f81e583cbb70cf2e190d8de3a23e34b4c74..9ac4cb2c88b4f65bef261b81185cf28bb03e5ef4 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2001, 2006-2007, 2009-2014, 2019 Free Software
+    Copyright (C) 1999-2001, 2006-2007, 2009-2014, 2019-2021 Free Software
     Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
index e5356174230e9e6cf4202d47b1dfa0a3b3f2c838..8ff87b4065fef26e5bfcf5bebf19cff3c71a360e 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2001, 2006-2007, 2009-2014, 2019 Free Software
+    Copyright (C) 1999-2001, 2006-2007, 2009-2014, 2019-2021 Free Software
     Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
index 77e3a68df436264421834f40bcb95935554e2d79..b218c223a7c3b7772dc48c5c525fe575219bc2bb 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1998-2001, 2005, 2007, 2009-2014, 2019 Free Software
+    Copyright (C) 1998-2001, 2005, 2007, 2009-2014, 2019-2021 Free Software
     Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
index c4c067d68d1eef12cdb3a3d6f8fbd98c86328499..8ee66a48dfdd2b0a3a054934f656c3e07e9dca10 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1998-2001, 2005, 2007, 2009-2014, 2019 Free Software
+    Copyright (C) 1998-2001, 2005, 2007, 2009-2014, 2019-2021 Free Software
     Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
index 0d7f642185538f22e55fa4ba0fa0015e90c05289..6941bbab3b7d7fb743402b8681bbbdb08cb37ea8 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2000, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2000, 2007-2014, 2019-2021 Free Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 36bffbe2fc0bc4b03be23b40b45f9c82225b46d9..4ba1936943a358ae3a4900b61d64eae637a7e9f7 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2000, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2000, 2007-2014, 2019-2021 Free Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index f62d5bd0800f582ac0e1f5f632dfc55b1422d5dc..01150be3ab15e52253e4ab3ac0325542bbf09501 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2001, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1999-2001, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 215062389f39c83daa004fc61dce590c10870ef8..0fb96d9c8466dbe067e5b71d55126cca61a03512 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2001, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1999-2001, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index cee659d8752f9ce669e103c5bd0c2d88348f3509..cdeefe33a162e9e6ac342f35962b6eee9f98a55b 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2001-2002, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2001-2002, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index cee659d8752f9ce669e103c5bd0c2d88348f3509..cdeefe33a162e9e6ac342f35962b6eee9f98a55b 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2001-2002, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2001-2002, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 1f4025b792eaf1edb2a568568263315a754618d9..493fb6d99f9d2c70e7c792c2714fe8d2f8eada5e 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2005, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2005, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index a8d4eb72fe0c57a2f3d32ef4f2a9164c11d08a62..ba8d8520449a358b08709d27d46c39c85c54ce81 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2005, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2005, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index d42dde65ca4f4e83626ed68fad9b5729ce677627..2c99df7bcccd67d117512233adbde5fd6c289baa 100644 (file)
@@ -14,7 +14,7 @@
 
 @SET_MAKE@
 
-# Copyright (C) 2002-2019 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This file is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -177,9 +177,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -191,15 +191,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -209,25 +207,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -239,9 +238,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -256,6 +256,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -264,14 +265,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -282,15 +284,16 @@ CONFIG_CLEAN_VPATH_FILES =
 LTLIBRARIES = $(noinst_LTLIBRARIES)
 am__DEPENDENCIES_1 =
 am__dirstamp = $(am__leading_dot)dirstamp
-am_libgnulib_la_OBJECTS = argmatch.lo c-ctype.lo c-strcasecmp.lo \
-       c-strncasecmp.lo close-stream.lo closeout.lo dirname.lo \
-       basename.lo dirname-lgpl.lo basename-lgpl.lo stripslash.lo \
-       exitfail.lo fd-hook.lo getprogname.lo hard-locale.lo \
-       localcharset.lo glthread/lock.lo long-options.lo malloca.lo \
-       progname.lo quotearg.lo safe-read.lo stat-time.lo tempname.lo \
+am_libgnulib_la_OBJECTS = argmatch.lo basename-lgpl.lo c-ctype.lo \
+       c-strcasecmp.lo c-strncasecmp.lo cloexec.lo close-stream.lo \
+       closeout.lo dirname.lo basename.lo dirname-lgpl.lo \
+       stripslash.lo exitfail.lo fd-hook.lo getprogname.lo \
+       hard-locale.lo localcharset.lo glthread/lock.lo \
+       long-options.lo malloca.lo progname.lo quotearg.lo \
+       safe-read.lo setlocale_null.lo stat-time.lo tempname.lo \
        glthread/threadlib.lo unistd.lo version-etc.lo \
        version-etc-fsf.lo wctype-h.lo xmalloc.lo xalloc-die.lo \
-       xstrndup.lo xstrtol.lo xstrtoul.lo xstrtol-error.lo
+       xstrndup.lo xstrtol.lo xstrtoul.lo xstrtoll.lo xstrtoull.lo
 libgnulib_la_OBJECTS = $(am_libgnulib_la_OBJECTS)
 AM_V_lt = $(am__v_lt_@AM_V@)
 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
@@ -319,28 +322,33 @@ am__depfiles_remade = ./$(DEPDIR)/alloca.Plo ./$(DEPDIR)/argmatch.Plo \
        ./$(DEPDIR)/btowc.Plo ./$(DEPDIR)/c-ctype.Plo \
        ./$(DEPDIR)/c-strcasecmp.Plo ./$(DEPDIR)/c-strncasecmp.Plo \
        ./$(DEPDIR)/calloc.Plo ./$(DEPDIR)/canonicalize-lgpl.Plo \
-       ./$(DEPDIR)/close-stream.Plo ./$(DEPDIR)/close.Plo \
-       ./$(DEPDIR)/closeout.Plo ./$(DEPDIR)/dirname-lgpl.Plo \
-       ./$(DEPDIR)/dirname.Plo ./$(DEPDIR)/error.Plo \
-       ./$(DEPDIR)/exitfail.Plo ./$(DEPDIR)/fd-hook.Plo \
-       ./$(DEPDIR)/fpending.Plo ./$(DEPDIR)/fstat.Plo \
-       ./$(DEPDIR)/fsync.Plo ./$(DEPDIR)/getopt.Plo \
+       ./$(DEPDIR)/cloexec.Plo ./$(DEPDIR)/close-stream.Plo \
+       ./$(DEPDIR)/close.Plo ./$(DEPDIR)/closeout.Plo \
+       ./$(DEPDIR)/dirname-lgpl.Plo ./$(DEPDIR)/dirname.Plo \
+       ./$(DEPDIR)/dup2.Plo ./$(DEPDIR)/error.Plo \
+       ./$(DEPDIR)/exitfail.Plo ./$(DEPDIR)/fcntl.Plo \
+       ./$(DEPDIR)/fd-hook.Plo ./$(DEPDIR)/fpending.Plo \
+       ./$(DEPDIR)/fstat.Plo ./$(DEPDIR)/fsync.Plo \
+       ./$(DEPDIR)/getdtablesize.Plo ./$(DEPDIR)/getopt.Plo \
        ./$(DEPDIR)/getopt1.Plo ./$(DEPDIR)/getprogname.Plo \
-       ./$(DEPDIR)/gettimeofday.Plo ./$(DEPDIR)/hard-locale.Plo \
+       ./$(DEPDIR)/getrandom.Plo ./$(DEPDIR)/hard-locale.Plo \
+       ./$(DEPDIR)/lc-charset-dispatch.Plo \
        ./$(DEPDIR)/localcharset.Plo ./$(DEPDIR)/localeconv.Plo \
-       ./$(DEPDIR)/localtime-buffer.Plo ./$(DEPDIR)/long-options.Plo \
-       ./$(DEPDIR)/lseek.Plo ./$(DEPDIR)/lstat.Plo \
-       ./$(DEPDIR)/malloc.Plo ./$(DEPDIR)/malloca.Plo \
-       ./$(DEPDIR)/mbrtowc.Plo ./$(DEPDIR)/mbsinit.Plo \
+       ./$(DEPDIR)/long-options.Plo ./$(DEPDIR)/lseek.Plo \
+       ./$(DEPDIR)/lstat.Plo ./$(DEPDIR)/malloc.Plo \
+       ./$(DEPDIR)/malloca.Plo ./$(DEPDIR)/mbrtowc.Plo \
+       ./$(DEPDIR)/mbsinit.Plo ./$(DEPDIR)/mbtowc-lock.Plo \
        ./$(DEPDIR)/mbtowc.Plo ./$(DEPDIR)/mkdir.Plo \
        ./$(DEPDIR)/mkstemp.Plo ./$(DEPDIR)/msvc-inval.Plo \
-       ./$(DEPDIR)/msvc-nothrow.Plo ./$(DEPDIR)/nl_langinfo.Plo \
+       ./$(DEPDIR)/msvc-nothrow.Plo ./$(DEPDIR)/nl_langinfo-lock.Plo \
+       ./$(DEPDIR)/nl_langinfo.Plo ./$(DEPDIR)/open.Plo \
        ./$(DEPDIR)/progname.Plo ./$(DEPDIR)/quotearg.Plo \
        ./$(DEPDIR)/read.Plo ./$(DEPDIR)/readlink.Plo \
        ./$(DEPDIR)/realloc.Plo ./$(DEPDIR)/regcomp.Plo \
        ./$(DEPDIR)/regex.Plo ./$(DEPDIR)/regex_internal.Plo \
        ./$(DEPDIR)/regexec.Plo ./$(DEPDIR)/rpmatch.Plo \
-       ./$(DEPDIR)/safe-read.Plo ./$(DEPDIR)/sleep.Plo \
+       ./$(DEPDIR)/safe-read.Plo ./$(DEPDIR)/setlocale-lock.Plo \
+       ./$(DEPDIR)/setlocale_null.Plo ./$(DEPDIR)/sleep.Plo \
        ./$(DEPDIR)/stat-time.Plo ./$(DEPDIR)/stat-w32.Plo \
        ./$(DEPDIR)/stat.Plo ./$(DEPDIR)/strdup.Plo \
        ./$(DEPDIR)/strerror-override.Plo ./$(DEPDIR)/strerror.Plo \
@@ -355,10 +363,9 @@ am__depfiles_remade = ./$(DEPDIR)/alloca.Plo ./$(DEPDIR)/argmatch.Plo \
        ./$(DEPDIR)/windows-once.Plo ./$(DEPDIR)/windows-recmutex.Plo \
        ./$(DEPDIR)/windows-rwlock.Plo ./$(DEPDIR)/xalloc-die.Plo \
        ./$(DEPDIR)/xmalloc.Plo ./$(DEPDIR)/xstrndup.Plo \
-       ./$(DEPDIR)/xstrtol-error.Plo ./$(DEPDIR)/xstrtol.Plo \
-       ./$(DEPDIR)/xstrtoll.Plo ./$(DEPDIR)/xstrtoul.Plo \
-       ./$(DEPDIR)/xstrtoull.Plo glthread/$(DEPDIR)/lock.Plo \
-       glthread/$(DEPDIR)/threadlib.Plo
+       ./$(DEPDIR)/xstrtol.Plo ./$(DEPDIR)/xstrtoll.Plo \
+       ./$(DEPDIR)/xstrtoul.Plo ./$(DEPDIR)/xstrtoull.Plo \
+       glthread/$(DEPDIR)/lock.Plo glthread/$(DEPDIR)/threadlib.Plo
 am__mv = mv -f
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
        $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
@@ -430,6 +437,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -464,6 +472,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -474,6 +484,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -521,19 +532,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -547,6 +562,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -607,6 +624,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -655,9 +673,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -673,6 +694,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -756,11 +778,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -770,12 +794,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -809,10 +838,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -834,14 +863,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -860,7 +892,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -870,7 +901,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -893,6 +923,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -978,7 +1009,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -991,6 +1024,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -1013,6 +1047,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -1021,15 +1056,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -1068,6 +1102,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -1093,16 +1128,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -1151,6 +1198,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -1180,6 +1228,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1216,21 +1265,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1258,6 +1310,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1267,6 +1320,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1299,6 +1354,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1387,6 +1443,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1424,13 +1481,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1449,6 +1506,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
@@ -1529,97 +1587,103 @@ AM_CFLAGS = $(GNULIB_WARN_CFLAGS) $(WERROR_CFLAGS)
 AM_CPPFLAGS = 
 BUILT_SOURCES = $(ALLOCA_H) configmake.h $(ERRNO_H) fcntl.h \
        $(GETOPT_H) $(GETOPT_CDEFS_H) inttypes.h langinfo.h \
-       $(LIMITS_H) locale.h $(STDARG_H) $(STDBOOL_H) $(STDDEF_H) \
-       $(STDINT_H) stdio.h stdlib.h string.h sys/stat.h sys/time.h \
-       sys/types.h time.h unistd.h wchar.h wctype.h
+       $(LIMITS_H) locale.h $(STDALIGN_H) $(STDARG_H) $(STDBOOL_H) \
+       $(STDDEF_H) $(STDINT_H) stdio.h stdlib.h string.h sys/random.h \
+       sys/stat.h sys/types.h time.h unistd.h wchar.h wctype.h
 CLEANFILES = configmake.h configmake.h-t
 EXTRA_DIST = alloca.c alloca.in.h $(top_srcdir)/build-aux/announce-gen \
-       argmatch.h assure.h btowc.c c-strcaseeq.h calloc.c calloc.c \
-       canonicalize-lgpl.c close.c close-stream.h closeout.h \
-       stripslash.c dirname.h \
-       $(top_srcdir)/build-aux/do-release-commit-and-tag dosname.h \
-       errno.in.h error.c error.h exitfail.h fcntl.in.h fd-hook.h \
-       filename.h fpending.c fpending.h stdio-impl.h fstat.c \
-       stat-w32.c stat-w32.h fsync.c \
-       $(top_srcdir)/build-aux/gendocs.sh getopt-cdefs.in.h \
-       getopt-core.h getopt-ext.h getopt-pfx-core.h getopt-pfx-ext.h \
-       getopt.c getopt.in.h getopt1.c getopt_int.h gettimeofday.c \
-       $(top_srcdir)/build-aux/git-version-gen \
+       argmatch.h assure.h attribute.h basename-lgpl.h btowc.c \
+       c-strcaseeq.h calloc.c calloc.c canonicalize-lgpl.c cloexec.h \
+       close.c close-stream.h closeout.h stripslash.c dirname.h \
+       $(top_srcdir)/build-aux/do-release-commit-and-tag dup2.c \
+       errno.in.h error.c error.h exitfail.h fcntl.c fcntl.in.h \
+       fd-hook.h filename.h fpending.c fpending.h stdio-impl.h \
+       fstat.c stat-w32.c stat-w32.h fsync.c \
+       $(top_srcdir)/build-aux/gendocs.sh getdtablesize.c \
+       getopt-cdefs.in.h getopt-core.h getopt-ext.h getopt-pfx-core.h \
+       getopt-pfx-ext.h getopt.c getopt.in.h getopt1.c getopt_int.h \
+       getrandom.c $(top_srcdir)/build-aux/git-version-gen \
        $(top_srcdir)/build-aux/gitlog-to-changelog \
        $(top_srcdir)/build-aux/gnu-web-doc-update \
        $(top_srcdir)/GNUmakefile $(top_srcdir)/build-aux/gnupload \
-       hard-locale.h $(top_srcdir)/build-aux/config.rpath intprops.h \
-       inttypes.in.h langinfo.in.h cdefs.h libc-config.h limits.in.h \
-       localcharset.h locale.in.h localeconv.c localtime-buffer.c \
-       localtime-buffer.h long-options.h lseek.c lstat.c \
-       $(top_srcdir)/maint.mk malloc.c malloc.c malloca.h mbrtowc.c \
-       mbsinit.c mbtowc-impl.h mbtowc.c mkdir.c mkstemp.c \
-       $(top_srcdir)/build-aux/mktempd msvc-inval.c msvc-inval.h \
-       msvc-nothrow.c msvc-nothrow.h nl_langinfo.c pathmax.h quote.h \
-       quote.h quotearg.h read.c readlink.c realloc.c realloc.c \
-       regcomp.c regex.c regex.h regex_internal.c regex_internal.h \
-       regexec.c rpmatch.c safe-read.h sys-limits.h sleep.c \
+       hard-locale.h intprops.h inttypes.in.h langinfo.in.h cdefs.h \
+       libc-config.h limits.in.h localcharset.h locale.in.h \
+       localeconv.c long-options.h lseek.c lstat.c \
+       $(top_srcdir)/maint.mk malloc.c malloc.c malloca.h \
+       lc-charset-dispatch.c lc-charset-dispatch.h \
+       mbrtowc-impl-utf8.h mbrtowc-impl.h mbrtowc.c mbtowc-lock.c \
+       mbtowc-lock.h windows-initguard.h mbsinit.c mbtowc-impl.h \
+       mbtowc.c mkdir.c mkstemp.c $(top_srcdir)/build-aux/mktempd \
+       msvc-inval.c msvc-inval.h msvc-nothrow.c msvc-nothrow.h \
+       nl_langinfo-lock.c nl_langinfo.c windows-initguard.h open.c \
+       pathmax.h quote.h quote.h quotearg.h read.c readlink.c \
+       realloc.c realloc.c regcomp.c regex.c regex.h regex_internal.c \
+       regex_internal.h regexec.c rpmatch.c safe-read.h sys-limits.h \
+       setlocale-lock.c setlocale_null.h windows-initguard.h sleep.c \
        _Noreturn.h arg-nonnull.h c++defs.h warn-on-use.h stat-w32.c \
-       stat-w32.h stat.c stat-time.h stdarg.in.h stdbool.in.h \
-       stddef.in.h stdint.in.h stdio.in.h stdlib.in.h strdup.c \
-       streq.h strerror.c strerror-override.c strerror-override.h \
-       string.in.h strndup.c strnlen.c strtol.c strtoll.c strtol.c \
-       strtoul.c strtoull.c sys_stat.in.h sys_time.in.h \
-       sys_types.in.h tempname.h $(top_srcdir)/build-aux/config.rpath \
-       time.in.h unistd.in.h unlink.c \
-       $(top_srcdir)/build-aux/update-copyright \
+       stat-w32.h stat.c stat-time.h stdalign.in.h stdarg.in.h \
+       stdbool.in.h stddef.in.h stdint.in.h stdio.in.h stdlib.in.h \
+       strdup.c streq.h strerror.c strerror-override.c \
+       strerror-override.h string.in.h strndup.c strnlen.c strtol.c \
+       strtoll.c strtol.c strtoul.c strtoull.c sys_random.in.h \
+       sys_stat.in.h sys_types.in.h tempname.h time.in.h unistd.in.h \
+       unlink.c $(top_srcdir)/build-aux/update-copyright \
        $(top_srcdir)/build-aux/useless-if-before-free usleep.c \
        $(top_srcdir)/build-aux/vc-list-files verify.h wchar.in.h \
        wcrtomb.c wctype.in.h windows-initguard.h windows-mutex.c \
        windows-mutex.h windows-once.c windows-once.h \
        windows-initguard.h windows-recmutex.c windows-recmutex.h \
        windows-initguard.h windows-rwlock.c windows-rwlock.h xalloc.h \
-       xalloc-oversized.h xstrtol.h xstrtoll.c xstrtoull.c
+       xalloc.h xalloc-oversized.h xstrtol.h
 MAINTAINERCLEANFILES = 
-MOSTLYCLEANDIRS = sys
+MOSTLYCLEANDIRS = sys sys
 MOSTLYCLEANFILES = core *.stackdump alloca.h alloca.h-t errno.h \
        errno.h-t fcntl.h fcntl.h-t getopt.h getopt.h-t getopt-cdefs.h \
        getopt-cdefs.h-t inttypes.h inttypes.h-t langinfo.h \
-       langinfo.h-t limits.h limits.h-t locale.h locale.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 sys/stat.h sys/stat.h-t sys/time.h sys/time.h-t \
-       sys/types.h sys/types.h-t time.h time.h-t unistd.h unistd.h-t \
-       wchar.h wchar.h-t wctype.h wctype.h-t
+       langinfo.h-t limits.h limits.h-t locale.h locale.h-t \
+       stdalign.h stdalign.h-t stdarg.h stdarg.h-t stdbool.h \
+       stdbool.h-t stddef.h stddef.h-t stdint.h stdint.h-t stdio.h \
+       stdio.h-t stdlib.h stdlib.h-t string.h string.h-t sys/random.h \
+       sys/random.h-t sys/stat.h sys/stat.h-t sys/types.h \
+       sys/types.h-t time.h time.h-t unistd.h unistd.h-t wchar.h \
+       wchar.h-t wctype.h wctype.h-t
 SUFFIXES = 
 # No GNU Make output.
 noinst_LTLIBRARIES = libgnulib.la
-libgnulib_la_SOURCES = argmatch.c c-ctype.h c-ctype.c c-strcase.h \
-       c-strcasecmp.c c-strncasecmp.c close-stream.c closeout.c \
-       dirname.c basename.c dirname-lgpl.c basename-lgpl.c \
+libgnulib_la_SOURCES = argmatch.c basename-lgpl.c c-ctype.h c-ctype.c \
+       c-strcase.h c-strcasecmp.c c-strncasecmp.c cloexec.c \
+       close-stream.c closeout.c dirname.c basename.c dirname-lgpl.c \
        stripslash.c exitfail.c fd-hook.c getprogname.h getprogname.c \
-       gettext.h hard-locale.c localcharset.c glthread/lock.h \
+       gettext.h hard-locale.c idx.h localcharset.c glthread/lock.h \
        glthread/lock.c long-options.c malloca.c minmax.h progname.h \
-       progname.c quotearg.c safe-read.c stat-time.c tempname.c \
-       glthread/threadlib.c unistd.c version-etc.h version-etc.c \
-       version-etc-fsf.c wctype-h.c xmalloc.c xalloc-die.c xstrndup.h \
-       xstrndup.c xstrtol.c xstrtoul.c xstrtol-error.c
+       progname.c quotearg.c safe-read.c setlocale_null.c stat-time.c \
+       tempname.c glthread/threadlib.c unistd.c version-etc.h \
+       version-etc.c version-etc-fsf.c wctype-h.c xmalloc.c \
+       xalloc-die.c xstrndup.h xstrndup.c xstrtol.c xstrtoul.c \
+       xstrtoll.c xstrtoull.c
 libgnulib_la_LIBADD = $(gl_LTLIBOBJS) @LTALLOCA@
 libgnulib_la_DEPENDENCIES = $(gl_LTLIBOBJS) @LTALLOCA@
 EXTRA_libgnulib_la_SOURCES = alloca.c btowc.c calloc.c calloc.c \
-       canonicalize-lgpl.c close.c stripslash.c error.c fpending.c \
-       fstat.c stat-w32.c fsync.c getopt.c getopt1.c gettimeofday.c \
-       localeconv.c localtime-buffer.c lseek.c lstat.c malloc.c \
-       malloc.c mbrtowc.c mbsinit.c mbtowc.c mkdir.c mkstemp.c \
-       msvc-inval.c msvc-nothrow.c nl_langinfo.c read.c readlink.c \
-       realloc.c realloc.c regcomp.c regex.c regex_internal.c \
-       regexec.c rpmatch.c sleep.c stat-w32.c stat.c strdup.c \
-       strerror.c strerror-override.c strndup.c strnlen.c strtol.c \
-       strtoll.c strtol.c strtoul.c strtoull.c unlink.c usleep.c \
-       wcrtomb.c windows-mutex.c windows-once.c windows-recmutex.c \
-       windows-rwlock.c xstrtoll.c xstrtoull.c
-libgnulib_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined $(LTLIBINTL) \
-       $(LTLIBTHREAD)
+       canonicalize-lgpl.c close.c stripslash.c dup2.c error.c \
+       fcntl.c fpending.c fstat.c stat-w32.c fsync.c getdtablesize.c \
+       getopt.c getopt1.c getrandom.c localeconv.c lseek.c lstat.c \
+       malloc.c malloc.c lc-charset-dispatch.c mbrtowc.c \
+       mbtowc-lock.c mbsinit.c mbtowc.c mkdir.c mkstemp.c \
+       msvc-inval.c msvc-nothrow.c nl_langinfo-lock.c nl_langinfo.c \
+       open.c read.c readlink.c realloc.c realloc.c regcomp.c regex.c \
+       regex_internal.c regexec.c rpmatch.c setlocale-lock.c sleep.c \
+       stat-w32.c stat.c strdup.c strerror.c strerror-override.c \
+       strndup.c strnlen.c strtol.c strtoll.c strtol.c strtoul.c \
+       strtoull.c unlink.c usleep.c wcrtomb.c windows-mutex.c \
+       windows-once.c windows-recmutex.c windows-rwlock.c
+libgnulib_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined $(LIBTHREAD) \
+       $(LIB_CLOCK_GETTIME) $(LIB_GETRANDOM) $(LIB_HARD_LOCALE) \
+       $(LIB_MBRTOWC) $(LIB_SETLOCALE_NULL) $(LTLIBINTL)
 
 # Use this preprocessor expression to decide whether #include_next works.
 # Do not rely on a 'configure'-time test for this, since the expression
 # might appear in an installed header, which is used by some other compiler.
-HAVE_INCLUDE_NEXT = (__GNUC__ || 60000000 <= __DECC_VER)
+HAVE_INCLUDE_NEXT = (__GNUC__ || __clang__ || 60000000 <= __DECC_VER)
 
 # Because this Makefile snippet defines a variable used by other
 # gnulib Makefile snippets, it must be present in all makefiles that
@@ -1733,25 +1797,29 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-strncasecmp.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/calloc.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/canonicalize-lgpl.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cloexec.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/close-stream.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/close.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/closeout.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dirname-lgpl.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dirname.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dup2.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/error.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exitfail.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcntl.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fd-hook.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fpending.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fstat.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fsync.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getdtablesize.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt1.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getprogname.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gettimeofday.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getrandom.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hard-locale.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lc-charset-dispatch.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/localcharset.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/localeconv.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/localtime-buffer.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/long-options.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lseek.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lstat.Plo@am__quote@ # am--include-marker
@@ -1759,12 +1827,15 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/malloca.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbrtowc.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsinit.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbtowc-lock.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbtowc.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mkdir.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mkstemp.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/msvc-inval.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/msvc-nothrow.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nl_langinfo-lock.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nl_langinfo.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/open.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/progname.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/quotearg.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/read.Plo@am__quote@ # am--include-marker
@@ -1776,6 +1847,8 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regexec.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rpmatch.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/safe-read.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setlocale-lock.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setlocale_null.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sleep.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stat-time.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stat-w32.Plo@am__quote@ # am--include-marker
@@ -1805,7 +1878,6 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xalloc-die.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmalloc.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrndup.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtol-error.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtol.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtoll.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtoul.Plo@am__quote@ # am--include-marker
@@ -1993,25 +2065,29 @@ distclean: distclean-am
        -rm -f ./$(DEPDIR)/c-strncasecmp.Plo
        -rm -f ./$(DEPDIR)/calloc.Plo
        -rm -f ./$(DEPDIR)/canonicalize-lgpl.Plo
+       -rm -f ./$(DEPDIR)/cloexec.Plo
        -rm -f ./$(DEPDIR)/close-stream.Plo
        -rm -f ./$(DEPDIR)/close.Plo
        -rm -f ./$(DEPDIR)/closeout.Plo
        -rm -f ./$(DEPDIR)/dirname-lgpl.Plo
        -rm -f ./$(DEPDIR)/dirname.Plo
+       -rm -f ./$(DEPDIR)/dup2.Plo
        -rm -f ./$(DEPDIR)/error.Plo
        -rm -f ./$(DEPDIR)/exitfail.Plo
+       -rm -f ./$(DEPDIR)/fcntl.Plo
        -rm -f ./$(DEPDIR)/fd-hook.Plo
        -rm -f ./$(DEPDIR)/fpending.Plo
        -rm -f ./$(DEPDIR)/fstat.Plo
        -rm -f ./$(DEPDIR)/fsync.Plo
+       -rm -f ./$(DEPDIR)/getdtablesize.Plo
        -rm -f ./$(DEPDIR)/getopt.Plo
        -rm -f ./$(DEPDIR)/getopt1.Plo
        -rm -f ./$(DEPDIR)/getprogname.Plo
-       -rm -f ./$(DEPDIR)/gettimeofday.Plo
+       -rm -f ./$(DEPDIR)/getrandom.Plo
        -rm -f ./$(DEPDIR)/hard-locale.Plo
+       -rm -f ./$(DEPDIR)/lc-charset-dispatch.Plo
        -rm -f ./$(DEPDIR)/localcharset.Plo
        -rm -f ./$(DEPDIR)/localeconv.Plo
-       -rm -f ./$(DEPDIR)/localtime-buffer.Plo
        -rm -f ./$(DEPDIR)/long-options.Plo
        -rm -f ./$(DEPDIR)/lseek.Plo
        -rm -f ./$(DEPDIR)/lstat.Plo
@@ -2019,12 +2095,15 @@ distclean: distclean-am
        -rm -f ./$(DEPDIR)/malloca.Plo
        -rm -f ./$(DEPDIR)/mbrtowc.Plo
        -rm -f ./$(DEPDIR)/mbsinit.Plo
+       -rm -f ./$(DEPDIR)/mbtowc-lock.Plo
        -rm -f ./$(DEPDIR)/mbtowc.Plo
        -rm -f ./$(DEPDIR)/mkdir.Plo
        -rm -f ./$(DEPDIR)/mkstemp.Plo
        -rm -f ./$(DEPDIR)/msvc-inval.Plo
        -rm -f ./$(DEPDIR)/msvc-nothrow.Plo
+       -rm -f ./$(DEPDIR)/nl_langinfo-lock.Plo
        -rm -f ./$(DEPDIR)/nl_langinfo.Plo
+       -rm -f ./$(DEPDIR)/open.Plo
        -rm -f ./$(DEPDIR)/progname.Plo
        -rm -f ./$(DEPDIR)/quotearg.Plo
        -rm -f ./$(DEPDIR)/read.Plo
@@ -2036,6 +2115,8 @@ distclean: distclean-am
        -rm -f ./$(DEPDIR)/regexec.Plo
        -rm -f ./$(DEPDIR)/rpmatch.Plo
        -rm -f ./$(DEPDIR)/safe-read.Plo
+       -rm -f ./$(DEPDIR)/setlocale-lock.Plo
+       -rm -f ./$(DEPDIR)/setlocale_null.Plo
        -rm -f ./$(DEPDIR)/sleep.Plo
        -rm -f ./$(DEPDIR)/stat-time.Plo
        -rm -f ./$(DEPDIR)/stat-w32.Plo
@@ -2065,7 +2146,6 @@ distclean: distclean-am
        -rm -f ./$(DEPDIR)/xalloc-die.Plo
        -rm -f ./$(DEPDIR)/xmalloc.Plo
        -rm -f ./$(DEPDIR)/xstrndup.Plo
-       -rm -f ./$(DEPDIR)/xstrtol-error.Plo
        -rm -f ./$(DEPDIR)/xstrtol.Plo
        -rm -f ./$(DEPDIR)/xstrtoll.Plo
        -rm -f ./$(DEPDIR)/xstrtoul.Plo
@@ -2127,25 +2207,29 @@ maintainer-clean: maintainer-clean-am
        -rm -f ./$(DEPDIR)/c-strncasecmp.Plo
        -rm -f ./$(DEPDIR)/calloc.Plo
        -rm -f ./$(DEPDIR)/canonicalize-lgpl.Plo
+       -rm -f ./$(DEPDIR)/cloexec.Plo
        -rm -f ./$(DEPDIR)/close-stream.Plo
        -rm -f ./$(DEPDIR)/close.Plo
        -rm -f ./$(DEPDIR)/closeout.Plo
        -rm -f ./$(DEPDIR)/dirname-lgpl.Plo
        -rm -f ./$(DEPDIR)/dirname.Plo
+       -rm -f ./$(DEPDIR)/dup2.Plo
        -rm -f ./$(DEPDIR)/error.Plo
        -rm -f ./$(DEPDIR)/exitfail.Plo
+       -rm -f ./$(DEPDIR)/fcntl.Plo
        -rm -f ./$(DEPDIR)/fd-hook.Plo
        -rm -f ./$(DEPDIR)/fpending.Plo
        -rm -f ./$(DEPDIR)/fstat.Plo
        -rm -f ./$(DEPDIR)/fsync.Plo
+       -rm -f ./$(DEPDIR)/getdtablesize.Plo
        -rm -f ./$(DEPDIR)/getopt.Plo
        -rm -f ./$(DEPDIR)/getopt1.Plo
        -rm -f ./$(DEPDIR)/getprogname.Plo
-       -rm -f ./$(DEPDIR)/gettimeofday.Plo
+       -rm -f ./$(DEPDIR)/getrandom.Plo
        -rm -f ./$(DEPDIR)/hard-locale.Plo
+       -rm -f ./$(DEPDIR)/lc-charset-dispatch.Plo
        -rm -f ./$(DEPDIR)/localcharset.Plo
        -rm -f ./$(DEPDIR)/localeconv.Plo
-       -rm -f ./$(DEPDIR)/localtime-buffer.Plo
        -rm -f ./$(DEPDIR)/long-options.Plo
        -rm -f ./$(DEPDIR)/lseek.Plo
        -rm -f ./$(DEPDIR)/lstat.Plo
@@ -2153,12 +2237,15 @@ maintainer-clean: maintainer-clean-am
        -rm -f ./$(DEPDIR)/malloca.Plo
        -rm -f ./$(DEPDIR)/mbrtowc.Plo
        -rm -f ./$(DEPDIR)/mbsinit.Plo
+       -rm -f ./$(DEPDIR)/mbtowc-lock.Plo
        -rm -f ./$(DEPDIR)/mbtowc.Plo
        -rm -f ./$(DEPDIR)/mkdir.Plo
        -rm -f ./$(DEPDIR)/mkstemp.Plo
        -rm -f ./$(DEPDIR)/msvc-inval.Plo
        -rm -f ./$(DEPDIR)/msvc-nothrow.Plo
+       -rm -f ./$(DEPDIR)/nl_langinfo-lock.Plo
        -rm -f ./$(DEPDIR)/nl_langinfo.Plo
+       -rm -f ./$(DEPDIR)/open.Plo
        -rm -f ./$(DEPDIR)/progname.Plo
        -rm -f ./$(DEPDIR)/quotearg.Plo
        -rm -f ./$(DEPDIR)/read.Plo
@@ -2170,6 +2257,8 @@ maintainer-clean: maintainer-clean-am
        -rm -f ./$(DEPDIR)/regexec.Plo
        -rm -f ./$(DEPDIR)/rpmatch.Plo
        -rm -f ./$(DEPDIR)/safe-read.Plo
+       -rm -f ./$(DEPDIR)/setlocale-lock.Plo
+       -rm -f ./$(DEPDIR)/setlocale_null.Plo
        -rm -f ./$(DEPDIR)/sleep.Plo
        -rm -f ./$(DEPDIR)/stat-time.Plo
        -rm -f ./$(DEPDIR)/stat-w32.Plo
@@ -2199,7 +2288,6 @@ maintainer-clean: maintainer-clean-am
        -rm -f ./$(DEPDIR)/xalloc-die.Plo
        -rm -f ./$(DEPDIR)/xmalloc.Plo
        -rm -f ./$(DEPDIR)/xstrndup.Plo
-       -rm -f ./$(DEPDIR)/xstrtol-error.Plo
        -rm -f ./$(DEPDIR)/xstrtol.Plo
        -rm -f ./$(DEPDIR)/xstrtoll.Plo
        -rm -f ./$(DEPDIR)/xstrtoul.Plo
@@ -2328,12 +2416,14 @@ fcntl.h: fcntl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
              -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
              -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
              -e 's|@''NEXT_FCNTL_H''@|$(NEXT_FCNTL_H)|g' \
+             -e 's/@''GNULIB_CREAT''@/$(GNULIB_CREAT)/g' \
              -e 's/@''GNULIB_FCNTL''@/$(GNULIB_FCNTL)/g' \
              -e 's/@''GNULIB_NONBLOCKING''@/$(GNULIB_NONBLOCKING)/g' \
              -e 's/@''GNULIB_OPEN''@/$(GNULIB_OPEN)/g' \
              -e 's/@''GNULIB_OPENAT''@/$(GNULIB_OPENAT)/g' \
              -e 's|@''HAVE_FCNTL''@|$(HAVE_FCNTL)|g' \
              -e 's|@''HAVE_OPENAT''@|$(HAVE_OPENAT)|g' \
+             -e 's|@''REPLACE_CREAT''@|$(REPLACE_CREAT)|g' \
              -e 's|@''REPLACE_FCNTL''@|$(REPLACE_FCNTL)|g' \
              -e 's|@''REPLACE_OPEN''@|$(REPLACE_OPEN)|g' \
              -e 's|@''REPLACE_OPENAT''@|$(REPLACE_OPENAT)|g' \
@@ -2381,10 +2471,7 @@ inttypes.h: inttypes.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_U
              -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' \
-             -e 's/@''HAVE_LONG_LONG_INT''@/$(HAVE_LONG_LONG_INT)/g' \
-             -e 's/@''HAVE_UNSIGNED_LONG_LONG_INT''@/$(HAVE_UNSIGNED_LONG_LONG_INT)/g' \
              -e 's/@''PRIPTR_PREFIX''@/$(PRIPTR_PREFIX)/g' \
              -e 's/@''GNULIB_IMAXABS''@/$(GNULIB_IMAXABS)/g' \
              -e 's/@''GNULIB_IMAXDIV''@/$(GNULIB_IMAXDIV)/g' \
@@ -2461,6 +2548,7 @@ locale.h: locale.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''NEXT_LOCALE_H''@|$(NEXT_LOCALE_H)|g' \
              -e 's/@''GNULIB_LOCALECONV''@/$(GNULIB_LOCALECONV)/g' \
              -e 's/@''GNULIB_SETLOCALE''@/$(GNULIB_SETLOCALE)/g' \
+             -e 's/@''GNULIB_SETLOCALE_NULL''@/$(GNULIB_SETLOCALE_NULL)/g' \
              -e 's/@''GNULIB_DUPLOCALE''@/$(GNULIB_DUPLOCALE)/g' \
              -e 's/@''GNULIB_LOCALENAME''@/$(GNULIB_LOCALENAME)/g' \
              -e 's|@''HAVE_NEWLOCALE''@|$(HAVE_NEWLOCALE)|g' \
@@ -2480,6 +2568,17 @@ locale.h: locale.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
        } > $@-t && \
        mv $@-t $@
 
+# We need the following in order to create <stdalign.h> when the system
+# doesn't have one that works.
+@GL_GENERATE_STDALIGN_H_TRUE@stdalign.h: stdalign.in.h $(top_builddir)/config.status
+@GL_GENERATE_STDALIGN_H_TRUE@  $(AM_V_GEN)rm -f $@-t $@ && \
+@GL_GENERATE_STDALIGN_H_TRUE@  { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+@GL_GENERATE_STDALIGN_H_TRUE@    cat $(srcdir)/stdalign.in.h; \
+@GL_GENERATE_STDALIGN_H_TRUE@  } > $@-t && \
+@GL_GENERATE_STDALIGN_H_TRUE@  mv $@-t $@
+@GL_GENERATE_STDALIGN_H_FALSE@stdalign.h: $(top_builddir)/config.status
+@GL_GENERATE_STDALIGN_H_FALSE@ rm -f $@
+
 # We need the following in order to create <stdarg.h> when the system
 # doesn't have one that works with the given compiler.
 @GL_GENERATE_STDARG_H_TRUE@stdarg.h: stdarg.in.h $(top_builddir)/config.status
@@ -2543,8 +2642,6 @@ locale.h: locale.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
 @GL_GENERATE_STDINT_H_TRUE@          -e 's/@''HAVE_SYS_INTTYPES_H''@/$(HAVE_SYS_INTTYPES_H)/g' \
 @GL_GENERATE_STDINT_H_TRUE@          -e 's/@''HAVE_SYS_BITYPES_H''@/$(HAVE_SYS_BITYPES_H)/g' \
 @GL_GENERATE_STDINT_H_TRUE@          -e 's/@''HAVE_WCHAR_H''@/$(HAVE_WCHAR_H)/g' \
-@GL_GENERATE_STDINT_H_TRUE@          -e 's/@''HAVE_LONG_LONG_INT''@/$(HAVE_LONG_LONG_INT)/g' \
-@GL_GENERATE_STDINT_H_TRUE@          -e 's/@''HAVE_UNSIGNED_LONG_LONG_INT''@/$(HAVE_UNSIGNED_LONG_LONG_INT)/g' \
 @GL_GENERATE_STDINT_H_TRUE@          -e 's/@''APPLE_UNIVERSAL_BUILD''@/$(APPLE_UNIVERSAL_BUILD)/g' \
 @GL_GENERATE_STDINT_H_TRUE@          -e 's/@''BITSIZEOF_PTRDIFF_T''@/$(BITSIZEOF_PTRDIFF_T)/g' \
 @GL_GENERATE_STDINT_H_TRUE@          -e 's/@''PTRDIFF_T_SUFFIX''@/$(PTRDIFF_T_SUFFIX)/g' \
@@ -2630,7 +2727,8 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
              -e 's/@''GNULIB_VSNPRINTF''@/$(GNULIB_VSNPRINTF)/g' \
              -e 's/@''GNULIB_VSPRINTF_POSIX''@/$(GNULIB_VSPRINTF_POSIX)/g' \
              < $(srcdir)/stdio.in.h | \
-         sed -e 's|@''HAVE_DECL_FPURGE''@|$(HAVE_DECL_FPURGE)|g' \
+         sed -e 's|@''HAVE_DECL_FCLOSEALL''@|$(HAVE_DECL_FCLOSEALL)|g' \
+             -e 's|@''HAVE_DECL_FPURGE''@|$(HAVE_DECL_FPURGE)|g' \
              -e 's|@''HAVE_DECL_FSEEKO''@|$(HAVE_DECL_FSEEKO)|g' \
              -e 's|@''HAVE_DECL_FTELLO''@|$(HAVE_DECL_FTELLO)|g' \
              -e 's|@''HAVE_DECL_GETDELIM''@|$(HAVE_DECL_GETDELIM)|g' \
@@ -2697,6 +2795,7 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
              -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_ALIGNED_ALLOC''@/$(GNULIB_ALIGNED_ALLOC)/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' \
@@ -2710,6 +2809,7 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
              -e 's/@''GNULIB_MKOSTEMPS''@/$(GNULIB_MKOSTEMPS)/g' \
              -e 's/@''GNULIB_MKSTEMP''@/$(GNULIB_MKSTEMP)/g' \
              -e 's/@''GNULIB_MKSTEMPS''@/$(GNULIB_MKSTEMPS)/g' \
+             -e 's/@''GNULIB_POSIX_MEMALIGN''@/$(GNULIB_POSIX_MEMALIGN)/g' \
              -e 's/@''GNULIB_POSIX_OPENPT''@/$(GNULIB_POSIX_OPENPT)/g' \
              -e 's/@''GNULIB_PTSNAME''@/$(GNULIB_PTSNAME)/g' \
              -e 's/@''GNULIB_PTSNAME_R''@/$(GNULIB_PTSNAME_R)/g' \
@@ -2733,8 +2833,12 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
              -e 's/@''GNULIB_WCTOMB''@/$(GNULIB_WCTOMB)/g' \
              < $(srcdir)/stdlib.in.h | \
          sed -e 's|@''HAVE__EXIT''@|$(HAVE__EXIT)|g' \
+             -e 's|@''HAVE_ALIGNED_ALLOC''@|$(HAVE_ALIGNED_ALLOC)|g' \
              -e 's|@''HAVE_ATOLL''@|$(HAVE_ATOLL)|g' \
              -e 's|@''HAVE_CANONICALIZE_FILE_NAME''@|$(HAVE_CANONICALIZE_FILE_NAME)|g' \
+             -e 's|@''HAVE_DECL_ECVT''@|$(HAVE_DECL_ECVT)|g' \
+             -e 's|@''HAVE_DECL_FCVT''@|$(HAVE_DECL_FCVT)|g' \
+             -e 's|@''HAVE_DECL_GCVT''@|$(HAVE_DECL_GCVT)|g' \
              -e 's|@''HAVE_DECL_GETLOADAVG''@|$(HAVE_DECL_GETLOADAVG)|g' \
              -e 's|@''HAVE_GETSUBOPT''@|$(HAVE_GETSUBOPT)|g' \
              -e 's|@''HAVE_GRANTPT''@|$(HAVE_GRANTPT)|g' \
@@ -2746,6 +2850,7 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
              -e 's|@''HAVE_MKOSTEMPS''@|$(HAVE_MKOSTEMPS)|g' \
              -e 's|@''HAVE_MKSTEMP''@|$(HAVE_MKSTEMP)|g' \
              -e 's|@''HAVE_MKSTEMPS''@|$(HAVE_MKSTEMPS)|g' \
+             -e 's|@''HAVE_POSIX_MEMALIGN''@|$(HAVE_POSIX_MEMALIGN)|g' \
              -e 's|@''HAVE_POSIX_OPENPT''@|$(HAVE_POSIX_OPENPT)|g' \
              -e 's|@''HAVE_PTSNAME''@|$(HAVE_PTSNAME)|g' \
              -e 's|@''HAVE_PTSNAME_R''@|$(HAVE_PTSNAME_R)|g' \
@@ -2768,12 +2873,14 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
              -e 's|@''HAVE_SYS_LOADAVG_H''@|$(HAVE_SYS_LOADAVG_H)|g' \
              -e 's|@''HAVE_UNLOCKPT''@|$(HAVE_UNLOCKPT)|g' \
              -e 's|@''HAVE_DECL_UNSETENV''@|$(HAVE_DECL_UNSETENV)|g' \
+             -e 's|@''REPLACE_ALIGNED_ALLOC''@|$(REPLACE_ALIGNED_ALLOC)|g' \
              -e 's|@''REPLACE_CALLOC''@|$(REPLACE_CALLOC)|g' \
              -e 's|@''REPLACE_CANONICALIZE_FILE_NAME''@|$(REPLACE_CANONICALIZE_FILE_NAME)|g' \
              -e 's|@''REPLACE_INITSTATE''@|$(REPLACE_INITSTATE)|g' \
              -e 's|@''REPLACE_MALLOC''@|$(REPLACE_MALLOC)|g' \
              -e 's|@''REPLACE_MBTOWC''@|$(REPLACE_MBTOWC)|g' \
              -e 's|@''REPLACE_MKSTEMP''@|$(REPLACE_MKSTEMP)|g' \
+             -e 's|@''REPLACE_POSIX_MEMALIGN''@|$(REPLACE_POSIX_MEMALIGN)|g' \
              -e 's|@''REPLACE_PTSNAME''@|$(REPLACE_PTSNAME)|g' \
              -e 's|@''REPLACE_PTSNAME_R''@|$(REPLACE_PTSNAME_R)|g' \
              -e 's|@''REPLACE_PUTENV''@|$(REPLACE_PUTENV)|g' \
@@ -2841,6 +2948,9 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's/@''GNULIB_STRTOK_R''@/$(GNULIB_STRTOK_R)/g' \
              -e 's/@''GNULIB_STRERROR''@/$(GNULIB_STRERROR)/g' \
              -e 's/@''GNULIB_STRERROR_R''@/$(GNULIB_STRERROR_R)/g' \
+             -e 's/@''GNULIB_STRERRORNAME_NP''@/$(GNULIB_STRERRORNAME_NP)/g' \
+             -e 's/@''GNULIB_SIGABBREV_NP''@/$(GNULIB_SIGABBREV_NP)/g' \
+             -e 's/@''GNULIB_SIGDESCR_NP''@/$(GNULIB_SIGDESCR_NP)/g' \
              -e 's/@''GNULIB_STRSIGNAL''@/$(GNULIB_STRSIGNAL)/g' \
              -e 's/@''GNULIB_STRVERSCMP''@/$(GNULIB_STRVERSCMP)/g' \
              < $(srcdir)/string.in.h | \
@@ -2848,7 +2958,6 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''HAVE_FFSL''@|$(HAVE_FFSL)|g' \
              -e 's|@''HAVE_FFSLL''@|$(HAVE_FFSLL)|g' \
              -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' \
@@ -2864,6 +2973,9 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''HAVE_STRCASESTR''@|$(HAVE_STRCASESTR)|g' \
              -e 's|@''HAVE_DECL_STRTOK_R''@|$(HAVE_DECL_STRTOK_R)|g' \
              -e 's|@''HAVE_DECL_STRERROR_R''@|$(HAVE_DECL_STRERROR_R)|g' \
+             -e 's|@''HAVE_STRERRORNAME_NP''@|$(HAVE_STRERRORNAME_NP)|g' \
+             -e 's|@''HAVE_SIGABBREV_NP''@|$(HAVE_SIGABBREV_NP)|g' \
+             -e 's|@''HAVE_SIGDESCR_NP''@|$(HAVE_SIGDESCR_NP)|g' \
              -e 's|@''HAVE_DECL_STRSIGNAL''@|$(HAVE_DECL_STRSIGNAL)|g' \
              -e 's|@''HAVE_STRVERSCMP''@|$(HAVE_STRVERSCMP)|g' \
              -e 's|@''REPLACE_MEMCHR''@|$(REPLACE_MEMCHR)|g' \
@@ -2879,6 +2991,7 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''REPLACE_STRTOK_R''@|$(REPLACE_STRTOK_R)|g' \
              -e 's|@''REPLACE_STRERROR''@|$(REPLACE_STRERROR)|g' \
              -e 's|@''REPLACE_STRERROR_R''@|$(REPLACE_STRERROR_R)|g' \
+             -e 's|@''REPLACE_STRERRORNAME_NP''@|$(REPLACE_STRERRORNAME_NP)|g' \
              -e 's|@''REPLACE_STRSIGNAL''@|$(REPLACE_STRSIGNAL)|g' \
              -e 's|@''UNDEFINE_STRTOK_R''@|$(UNDEFINE_STRTOK_R)|g' \
              -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
@@ -2888,6 +3001,28 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
        } > $@-t && \
        mv $@-t $@
 
+# We need the following in order to create <sys/random.h> when the system
+# doesn't have one.
+sys/random.h: sys_random.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H)
+       $(AM_V_at)$(MKDIR_P) sys
+       $(AM_V_GEN)rm -f $@-t $@ && \
+       { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+         sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+             -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_RANDOM_H''@|$(NEXT_SYS_RANDOM_H)|g' \
+             -e 's|@''HAVE_SYS_RANDOM_H''@|$(HAVE_SYS_RANDOM_H)|g' \
+             -e 's/@''GNULIB_GETRANDOM''@/$(GNULIB_GETRANDOM)/g' \
+             -e 's/@''HAVE_GETRANDOM''@/$(HAVE_GETRANDOM)/g' \
+             -e 's/@''REPLACE_GETRANDOM''@/$(REPLACE_GETRANDOM)/g' \
+             -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
+             -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \
+             -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
+             < $(srcdir)/sys_random.in.h; \
+       } > $@-t && \
+       mv -f $@-t $@
+
 # We need the following in order to create <sys/stat.h> when the system
 # has one that is incomplete.
 sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H)
@@ -2905,6 +3040,7 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU
              -e 's/@''GNULIB_FSTAT''@/$(GNULIB_FSTAT)/g' \
              -e 's/@''GNULIB_FSTATAT''@/$(GNULIB_FSTATAT)/g' \
              -e 's/@''GNULIB_FUTIMENS''@/$(GNULIB_FUTIMENS)/g' \
+             -e 's/@''GNULIB_GETUMASK''@/$(GNULIB_GETUMASK)/g' \
              -e 's/@''GNULIB_LCHMOD''@/$(GNULIB_LCHMOD)/g' \
              -e 's/@''GNULIB_LSTAT''@/$(GNULIB_LSTAT)/g' \
              -e 's/@''GNULIB_MKDIRAT''@/$(GNULIB_MKDIRAT)/g' \
@@ -2918,6 +3054,7 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU
              -e 's|@''HAVE_FCHMODAT''@|$(HAVE_FCHMODAT)|g' \
              -e 's|@''HAVE_FSTATAT''@|$(HAVE_FSTATAT)|g' \
              -e 's|@''HAVE_FUTIMENS''@|$(HAVE_FUTIMENS)|g' \
+             -e 's|@''HAVE_GETUMASK''@|$(HAVE_GETUMASK)|g' \
              -e 's|@''HAVE_LCHMOD''@|$(HAVE_LCHMOD)|g' \
              -e 's|@''HAVE_LSTAT''@|$(HAVE_LSTAT)|g' \
              -e 's|@''HAVE_MKDIRAT''@|$(HAVE_MKDIRAT)|g' \
@@ -2926,6 +3063,7 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU
              -e 's|@''HAVE_MKNOD''@|$(HAVE_MKNOD)|g' \
              -e 's|@''HAVE_MKNODAT''@|$(HAVE_MKNODAT)|g' \
              -e 's|@''HAVE_UTIMENSAT''@|$(HAVE_UTIMENSAT)|g' \
+             -e 's|@''REPLACE_FCHMODAT''@|$(REPLACE_FCHMODAT)|g' \
              -e 's|@''REPLACE_FSTAT''@|$(REPLACE_FSTAT)|g' \
              -e 's|@''REPLACE_FSTATAT''@|$(REPLACE_FSTATAT)|g' \
              -e 's|@''REPLACE_FUTIMENS''@|$(REPLACE_FUTIMENS)|g' \
@@ -2942,31 +3080,6 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU
        } > $@-t && \
        mv $@-t $@
 
-# We need the following in order to create <sys/time.h> when the system
-# doesn't have one that works with the given compiler.
-sys/time.h: sys_time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H)
-       $(AM_V_at)$(MKDIR_P) sys
-       $(AM_V_GEN)rm -f $@-t $@ && \
-       { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
-         sed -e 's|@''GUARD_PREFIX''@|GL|g' \
-             -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_WINSOCK2_H''@|$(HAVE_WINSOCK2_H)|g' \
-             -e 's/@''HAVE_GETTIMEOFDAY''@/$(HAVE_GETTIMEOFDAY)/g' \
-             -e 's/@''HAVE_STRUCT_TIMEVAL''@/$(HAVE_STRUCT_TIMEVAL)/g' \
-             -e 's/@''REPLACE_GETTIMEOFDAY''@/$(REPLACE_GETTIMEOFDAY)/g' \
-             -e 's/@''REPLACE_STRUCT_TIMEVAL''@/$(REPLACE_STRUCT_TIMEVAL)/g' \
-             -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
-             -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \
-             -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
-             < $(srcdir)/sys_time.in.h; \
-       } > $@-t && \
-       mv $@-t $@
-
 # We need the following in order to create <sys/types.h> when the system
 # doesn't have one that works with the given compiler.
 sys/types.h: sys_types.in.h $(top_builddir)/config.status
@@ -3009,7 +3122,6 @@ time.h: time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(
              -e 's|@''HAVE_STRPTIME''@|$(HAVE_STRPTIME)|g' \
              -e 's|@''HAVE_TIMEGM''@|$(HAVE_TIMEGM)|g' \
              -e 's|@''HAVE_TIMEZONE_T''@|$(HAVE_TIMEZONE_T)|g' \
-             -e 's|@''HAVE_TZSET''@|$(HAVE_TZSET)|g' \
              -e 's|@''REPLACE_CTIME''@|$(REPLACE_CTIME)|g' \
              -e 's|@''REPLACE_GMTIME''@|$(REPLACE_GMTIME)|g' \
              -e 's|@''REPLACE_LOCALTIME''@|$(REPLACE_LOCALTIME)|g' \
@@ -3042,6 +3154,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
              -e 's|@''NEXT_UNISTD_H''@|$(NEXT_UNISTD_H)|g' \
              -e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \
+             -e 's/@''GNULIB_ACCESS''@/$(GNULIB_ACCESS)/g' \
              -e 's/@''GNULIB_CHDIR''@/$(GNULIB_CHDIR)/g' \
              -e 's/@''GNULIB_CHOWN''@/$(GNULIB_CHOWN)/g' \
              -e 's/@''GNULIB_CLOSE''@/$(GNULIB_CLOSE)/g' \
@@ -3060,10 +3173,12 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's/@''GNULIB_GETCWD''@/$(GNULIB_GETCWD)/g' \
              -e 's/@''GNULIB_GETDOMAINNAME''@/$(GNULIB_GETDOMAINNAME)/g' \
              -e 's/@''GNULIB_GETDTABLESIZE''@/$(GNULIB_GETDTABLESIZE)/g' \
+             -e 's/@''GNULIB_GETENTROPY''@/$(GNULIB_GETENTROPY)/g' \
              -e 's/@''GNULIB_GETGROUPS''@/$(GNULIB_GETGROUPS)/g' \
              -e 's/@''GNULIB_GETHOSTNAME''@/$(GNULIB_GETHOSTNAME)/g' \
              -e 's/@''GNULIB_GETLOGIN''@/$(GNULIB_GETLOGIN)/g' \
              -e 's/@''GNULIB_GETLOGIN_R''@/$(GNULIB_GETLOGIN_R)/g' \
+             -e 's/@''GNULIB_GETOPT_POSIX''@/$(GNULIB_GETOPT_POSIX)/g' \
              -e 's/@''GNULIB_GETPAGESIZE''@/$(GNULIB_GETPAGESIZE)/g' \
              -e 's/@''GNULIB_GETPASS''@/$(GNULIB_GETPASS)/g' \
              -e 's/@''GNULIB_GETUSERSHELL''@/$(GNULIB_GETUSERSHELL)/g' \
@@ -3097,7 +3212,6 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              < $(srcdir)/unistd.in.h | \
          sed -e 's|@''HAVE_CHOWN''@|$(HAVE_CHOWN)|g' \
              -e 's|@''HAVE_COPY_FILE_RANGE''@|$(HAVE_COPY_FILE_RANGE)|g' \
-             -e 's|@''HAVE_DUP2''@|$(HAVE_DUP2)|g' \
              -e 's|@''HAVE_DUP3''@|$(HAVE_DUP3)|g' \
              -e 's|@''HAVE_EUIDACCESS''@|$(HAVE_EUIDACCESS)|g' \
              -e 's|@''HAVE_FACCESSAT''@|$(HAVE_FACCESSAT)|g' \
@@ -3107,6 +3221,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''HAVE_FSYNC''@|$(HAVE_FSYNC)|g' \
              -e 's|@''HAVE_FTRUNCATE''@|$(HAVE_FTRUNCATE)|g' \
              -e 's|@''HAVE_GETDTABLESIZE''@|$(HAVE_GETDTABLESIZE)|g' \
+             -e 's|@''HAVE_GETENTROPY''@|$(HAVE_GETENTROPY)|g' \
              -e 's|@''HAVE_GETGROUPS''@|$(HAVE_GETGROUPS)|g' \
              -e 's|@''HAVE_GETHOSTNAME''@|$(HAVE_GETHOSTNAME)|g' \
              -e 's|@''HAVE_GETPAGESIZE''@|$(HAVE_GETPAGESIZE)|g' \
@@ -3128,6 +3243,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -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_EXECVPE''@|$(HAVE_DECL_EXECVPE)|g' \
              -e 's|@''HAVE_DECL_FCHDIR''@|$(HAVE_DECL_FCHDIR)|g' \
              -e 's|@''HAVE_DECL_FDATASYNC''@|$(HAVE_DECL_FDATASYNC)|g' \
              -e 's|@''HAVE_DECL_GETDOMAINNAME''@|$(HAVE_DECL_GETDOMAINNAME)|g' \
@@ -3141,7 +3257,8 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''HAVE_OS_H''@|$(HAVE_OS_H)|g' \
              -e 's|@''HAVE_SYS_PARAM_H''@|$(HAVE_SYS_PARAM_H)|g' \
          | \
-         sed -e 's|@''REPLACE_CHOWN''@|$(REPLACE_CHOWN)|g' \
+         sed -e 's|@''REPLACE_ACCESS''@|$(REPLACE_ACCESS)|g' \
+             -e 's|@''REPLACE_CHOWN''@|$(REPLACE_CHOWN)|g' \
              -e 's|@''REPLACE_CLOSE''@|$(REPLACE_CLOSE)|g' \
              -e 's|@''REPLACE_DUP''@|$(REPLACE_DUP)|g' \
              -e 's|@''REPLACE_DUP2''@|$(REPLACE_DUP2)|g' \
@@ -3175,6 +3292,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''REPLACE_UNLINKAT''@|$(REPLACE_UNLINKAT)|g' \
              -e 's|@''REPLACE_USLEEP''@|$(REPLACE_USLEEP)|g' \
              -e 's|@''REPLACE_WRITE''@|$(REPLACE_WRITE)|g' \
+             -e 's|@''UNISTD_H_HAVE_SYS_RANDOM_H''@|$(UNISTD_H_HAVE_SYS_RANDOM_H)|g' \
              -e 's|@''UNISTD_H_HAVE_WINSOCK2_H''@|$(UNISTD_H_HAVE_WINSOCK2_H)|g' \
              -e 's|@''UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS''@|$(UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS)|g' \
              -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
@@ -3212,6 +3330,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
              -e 's/@''GNULIB_WMEMCMP''@/$(GNULIB_WMEMCMP)/g' \
              -e 's/@''GNULIB_WMEMCPY''@/$(GNULIB_WMEMCPY)/g' \
              -e 's/@''GNULIB_WMEMMOVE''@/$(GNULIB_WMEMMOVE)/g' \
+             -e 's/@''GNULIB_WMEMPCPY''@/$(GNULIB_WMEMPCPY)/g' \
              -e 's/@''GNULIB_WMEMSET''@/$(GNULIB_WMEMSET)/g' \
              -e 's/@''GNULIB_WCSLEN''@/$(GNULIB_WCSLEN)/g' \
              -e 's/@''GNULIB_WCSNLEN''@/$(GNULIB_WCSNLEN)/g' \
@@ -3252,6 +3371,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
              -e 's|@''HAVE_WMEMCMP''@|$(HAVE_WMEMCMP)|g' \
              -e 's|@''HAVE_WMEMCPY''@|$(HAVE_WMEMCPY)|g' \
              -e 's|@''HAVE_WMEMMOVE''@|$(HAVE_WMEMMOVE)|g' \
+             -e 's|@''HAVE_WMEMPCPY''@|$(HAVE_WMEMPCPY)|g' \
              -e 's|@''HAVE_WMEMSET''@|$(HAVE_WMEMSET)|g' \
              -e 's|@''HAVE_WCSLEN''@|$(HAVE_WCSLEN)|g' \
              -e 's|@''HAVE_WCSNLEN''@|$(HAVE_WCSNLEN)|g' \
@@ -3278,6 +3398,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
              -e 's|@''HAVE_WCSWIDTH''@|$(HAVE_WCSWIDTH)|g' \
              -e 's|@''HAVE_WCSFTIME''@|$(HAVE_WCSFTIME)|g' \
              -e 's|@''HAVE_DECL_WCTOB''@|$(HAVE_DECL_WCTOB)|g' \
+             -e 's|@''HAVE_DECL_WCSDUP''@|$(HAVE_DECL_WCSDUP)|g' \
              -e 's|@''HAVE_DECL_WCWIDTH''@|$(HAVE_DECL_WCWIDTH)|g' \
          | \
          sed -e 's|@''REPLACE_MBSTATE_T''@|$(REPLACE_MBSTATE_T)|g' \
@@ -3294,6 +3415,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
              -e 's|@''REPLACE_WCWIDTH''@|$(REPLACE_WCWIDTH)|g' \
              -e 's|@''REPLACE_WCSWIDTH''@|$(REPLACE_WCSWIDTH)|g' \
              -e 's|@''REPLACE_WCSFTIME''@|$(REPLACE_WCSFTIME)|g' \
+             -e 's|@''REPLACE_WCSTOK''@|$(REPLACE_WCSTOK)|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)'; \
@@ -3314,6 +3436,8 @@ wctype.h: wctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H
              -e 's/@''HAVE_CRTDEFS_H''@/$(HAVE_CRTDEFS_H)/g' \
              -e 's/@''GNULIB_OVERRIDES_WINT_T''@/$(GNULIB_OVERRIDES_WINT_T)/g' \
              -e 's/@''GNULIB_ISWBLANK''@/$(GNULIB_ISWBLANK)/g' \
+             -e 's/@''GNULIB_ISWDIGIT''@/$(GNULIB_ISWDIGIT)/g' \
+             -e 's/@''GNULIB_ISWXDIGIT''@/$(GNULIB_ISWXDIGIT)/g' \
              -e 's/@''GNULIB_WCTYPE''@/$(GNULIB_WCTYPE)/g' \
              -e 's/@''GNULIB_ISWCTYPE''@/$(GNULIB_ISWCTYPE)/g' \
              -e 's/@''GNULIB_WCTRANS''@/$(GNULIB_WCTRANS)/g' \
@@ -3324,6 +3448,8 @@ wctype.h: wctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H
              -e 's/@''HAVE_WCTRANS_T''@/$(HAVE_WCTRANS_T)/g' \
              -e 's/@''HAVE_WINT_T''@/$(HAVE_WINT_T)/g' \
              -e 's/@''REPLACE_ISWBLANK''@/$(REPLACE_ISWBLANK)/g' \
+             -e 's/@''REPLACE_ISWDIGIT''@/$(REPLACE_ISWDIGIT)/g' \
+             -e 's/@''REPLACE_ISWXDIGIT''@/$(REPLACE_ISWXDIGIT)/g' \
              -e 's/@''REPLACE_ISWCNTRL''@/$(REPLACE_ISWCNTRL)/g' \
              -e 's/@''REPLACE_TOWLOWER''@/$(REPLACE_TOWLOWER)/g' \
              -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
index db9b45554c5bab55aac4bcacfa3dbf56b8f08599..394ca3c2aa2ba7c91e446e0303aeff24665068b8 100644 (file)
@@ -1,5 +1,5 @@
 /* A C macro for declaring that a function does not return.
-   Copyright (C) 2011-2019 Free Software Foundation, Inc.
+   Copyright (C) 2011-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published
 #ifndef _Noreturn
 # if (defined __cplusplus \
       && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \
-          || (defined _MSC_VER && 1900 <= _MSC_VER)))
+          || (defined _MSC_VER && 1900 <= _MSC_VER)) \
+      && 0)
+    /* [[noreturn]] is not practically usable, because with it the syntax
+         extern _Noreturn void func (...);
+       would not be valid; such a declaration would only be valid with 'extern'
+       and '_Noreturn' swapped, or without the 'extern' keyword.  However, some
+       AIX system header files and several gnulib header files use precisely
+       this syntax with 'extern'.  */
 #  define _Noreturn [[noreturn]]
 # elif ((!defined __cplusplus || defined __clang__)                     \
         && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0)  \
-            || 4 < __GNUC__ + (7 <= __GNUC_MINOR__)))
+            || 4 < __GNUC__ + (7 <= __GNUC_MINOR__) \
+            || (defined __apple_build_version__ \
+                ? 6000000 <= __apple_build_version__ \
+                : 3 < __clang_major__ + (5 <= __clang_minor__))))
    /* _Noreturn works as-is.  */
 # elif 2 < __GNUC__ + (8 <= __GNUC_MINOR__) || 0x5110 <= __SUNPRO_C
 #  define _Noreturn __attribute__ ((__noreturn__))
index d0476d53e6c756eca6158a07a49589df9aef0dee..91b9ec38916067e082f2a88867503a7b3960a518 100644 (file)
@@ -39,8 +39,8 @@
 # define memory_full() abort ()
 #endif
 
-/* If compiling with GCC 2, this file's not needed.  */
-#if !defined (__GNUC__) || __GNUC__ < 2
+/* If compiling with GCC or clang, this file is not needed.  */
+#if !(defined __GNUC__ || defined __clang__)
 
 /* If someone has defined alloca as a macro,
    there must be some other way alloca is supposed to work.  */
@@ -62,16 +62,6 @@ lose
 #   endif /* static */
 #  endif /* emacs */
 
-/* If your stack is a linked list of frames, you have to
-   provide an "address metric" ADDRESS_FUNCTION macro.  */
-
-#  if defined (CRAY) && defined (CRAY_STACKSEG_END)
-long i00afunc ();
-#   define ADDRESS_FUNCTION(arg) (char *) i00afunc (&(arg))
-#  else
-#   define ADDRESS_FUNCTION(arg) &(arg)
-#  endif
-
 /* Define STACK_DIRECTION if you know the direction of stack
    growth for your system; otherwise it will be automatically
    deduced at run-time.
@@ -140,7 +130,7 @@ void *
 alloca (size_t size)
 {
   auto char probe;              /* Probes stack depth: */
-  register char *depth = ADDRESS_FUNCTION (probe);
+  register char *depth = &probe;
 
 #  if STACK_DIRECTION == 0
   if (STACK_DIR == 0)           /* Unknown growth direction.  */
@@ -206,273 +196,5 @@ alloca (size_t size)
   }
 }
 
-#  if defined (CRAY) && defined (CRAY_STACKSEG_END)
-
-#   ifdef DEBUG_I00AFUNC
-#    include <stdio.h>
-#   endif
-
-#   ifndef CRAY_STACK
-#    define CRAY_STACK
-#    ifndef CRAY2
-/* Stack structures for CRAY-1, CRAY X-MP, and CRAY Y-MP */
-struct stack_control_header
-  {
-    long shgrow:32;             /* Number of times stack has grown.  */
-    long shaseg:32;             /* Size of increments to stack.  */
-    long shhwm:32;              /* High water mark of stack.  */
-    long shsize:32;             /* Current size of stack (all segments).  */
-  };
-
-/* The stack segment linkage control information occurs at
-   the high-address end of a stack segment.  (The stack
-   grows from low addresses to high addresses.)  The initial
-   part of the stack segment linkage control information is
-   0200 (octal) words.  This provides for register storage
-   for the routine which overflows the stack.  */
-
-struct stack_segment_linkage
-  {
-    long ss[0200];              /* 0200 overflow words.  */
-    long sssize:32;             /* Number of words in this segment.  */
-    long ssbase:32;             /* Offset to stack base.  */
-    long:32;
-    long sspseg:32;             /* Offset to linkage control of previous
-                                   segment of stack.  */
-    long:32;
-    long sstcpt:32;             /* Pointer to task common address block.  */
-    long sscsnm;                /* Private control structure number for
-                                   microtasking.  */
-    long ssusr1;                /* Reserved for user.  */
-    long ssusr2;                /* Reserved for user.  */
-    long sstpid;                /* Process ID for pid based multi-tasking.  */
-    long ssgvup;                /* Pointer to multitasking thread giveup.  */
-    long sscray[7];             /* Reserved for Cray Research.  */
-    long ssa0;
-    long ssa1;
-    long ssa2;
-    long ssa3;
-    long ssa4;
-    long ssa5;
-    long ssa6;
-    long ssa7;
-    long sss0;
-    long sss1;
-    long sss2;
-    long sss3;
-    long sss4;
-    long sss5;
-    long sss6;
-    long sss7;
-  };
-
-#    else /* CRAY2 */
-/* The following structure defines the vector of words
-   returned by the STKSTAT library routine.  */
-struct stk_stat
-  {
-    long now;                   /* Current total stack size.  */
-    long maxc;                  /* Amount of contiguous space which would
-                                   be required to satisfy the maximum
-                                   stack demand to date.  */
-    long high_water;            /* Stack high-water mark.  */
-    long overflows;             /* Number of stack overflow ($STKOFEN) calls.  */
-    long hits;                  /* Number of internal buffer hits.  */
-    long extends;               /* Number of block extensions.  */
-    long stko_mallocs;          /* Block allocations by $STKOFEN.  */
-    long underflows;            /* Number of stack underflow calls ($STKRETN).  */
-    long stko_free;             /* Number of deallocations by $STKRETN.  */
-    long stkm_free;             /* Number of deallocations by $STKMRET.  */
-    long segments;              /* Current number of stack segments.  */
-    long maxs;                  /* Maximum number of stack segments so far.  */
-    long pad_size;              /* Stack pad size.  */
-    long current_address;       /* Current stack segment address.  */
-    long current_size;          /* Current stack segment size.  This
-                                   number is actually corrupted by STKSTAT to
-                                   include the fifteen word trailer area.  */
-    long initial_address;       /* Address of initial segment.  */
-    long initial_size;          /* Size of initial segment.  */
-  };
-
-/* The following structure describes the data structure which trails
-   any stack segment.  I think that the description in 'asdef' is
-   out of date.  I only describe the parts that I am sure about.  */
-
-struct stk_trailer
-  {
-    long this_address;          /* Address of this block.  */
-    long this_size;             /* Size of this block (does not include
-                                   this trailer).  */
-    long unknown2;
-    long unknown3;
-    long link;                  /* Address of trailer block of previous
-                                   segment.  */
-    long unknown5;
-    long unknown6;
-    long unknown7;
-    long unknown8;
-    long unknown9;
-    long unknown10;
-    long unknown11;
-    long unknown12;
-    long unknown13;
-    long unknown14;
-  };
-
-#    endif /* CRAY2 */
-#   endif /* not CRAY_STACK */
-
-#   ifdef CRAY2
-/* Determine a "stack measure" for an arbitrary ADDRESS.
-   I doubt that "lint" will like this much.  */
-
-static long
-i00afunc (long *address)
-{
-  struct stk_stat status;
-  struct stk_trailer *trailer;
-  long *block, size;
-  long result = 0;
-
-  /* We want to iterate through all of the segments.  The first
-     step is to get the stack status structure.  We could do this
-     more quickly and more directly, perhaps, by referencing the
-     $LM00 common block, but I know that this works.  */
-
-  STKSTAT (&status);
-
-  /* Set up the iteration.  */
-
-  trailer = (struct stk_trailer *) (status.current_address
-                                    + status.current_size
-                                    - 15);
-
-  /* There must be at least one stack segment.  Therefore it is
-     a fatal error if "trailer" is null.  */
-
-  if (trailer == NULL)
-    abort ();
-
-  /* Discard segments that do not contain our argument address.  */
-
-  while (trailer != NULL)
-    {
-      block = (long *) trailer->this_address;
-      size = trailer->this_size;
-      if (block == NULL || size == 0)
-        abort ();
-      trailer = (struct stk_trailer *) trailer->link;
-      if ((block <= address) && (address < (block + size)))
-        break;
-    }
-
-  /* Set the result to the offset in this segment and add the sizes
-     of all predecessor segments.  */
-
-  result = address - block;
-
-  if (trailer == NULL)
-    {
-      return result;
-    }
-
-  do
-    {
-      if (trailer->this_size <= 0)
-        abort ();
-      result += trailer->this_size;
-      trailer = (struct stk_trailer *) trailer->link;
-    }
-  while (trailer != NULL);
-
-  /* We are done.  Note that if you present a bogus address (one
-     not in any segment), you will get a different number back, formed
-     from subtracting the address of the first block.  This is probably
-     not what you want.  */
-
-  return (result);
-}
-
-#   else /* not CRAY2 */
-/* Stack address function for a CRAY-1, CRAY X-MP, or CRAY Y-MP.
-   Determine the number of the cell within the stack,
-   given the address of the cell.  The purpose of this
-   routine is to linearize, in some sense, stack addresses
-   for alloca.  */
-
-static long
-i00afunc (long address)
-{
-  long stkl = 0;
-
-  long size, pseg, this_segment, stack;
-  long result = 0;
-
-  struct stack_segment_linkage *ssptr;
-
-  /* Register B67 contains the address of the end of the
-     current stack segment.  If you (as a subprogram) store
-     your registers on the stack and find that you are past
-     the contents of B67, you have overflowed the segment.
-
-     B67 also points to the stack segment linkage control
-     area, which is what we are really interested in.  */
-
-  stkl = CRAY_STACKSEG_END ();
-  ssptr = (struct stack_segment_linkage *) stkl;
-
-  /* If one subtracts 'size' from the end of the segment,
-     one has the address of the first word of the segment.
-
-     If this is not the first segment, 'pseg' will be
-     nonzero.  */
-
-  pseg = ssptr->sspseg;
-  size = ssptr->sssize;
-
-  this_segment = stkl - size;
-
-  /* It is possible that calling this routine itself caused
-     a stack overflow.  Discard stack segments which do not
-     contain the target address.  */
-
-  while (!(this_segment <= address && address <= stkl))
-    {
-#    ifdef DEBUG_I00AFUNC
-      fprintf (stderr, "%011o %011o %011o\n", this_segment, address, stkl);
-#    endif
-      if (pseg == 0)
-        break;
-      stkl = stkl - pseg;
-      ssptr = (struct stack_segment_linkage *) stkl;
-      size = ssptr->sssize;
-      pseg = ssptr->sspseg;
-      this_segment = stkl - size;
-    }
-
-  result = address - this_segment;
-
-  /* If you subtract pseg from the current end of the stack,
-     you get the address of the previous stack segment's end.
-     This seems a little convoluted to me, but I'll bet you save
-     a cycle somewhere.  */
-
-  while (pseg != 0)
-    {
-#    ifdef DEBUG_I00AFUNC
-      fprintf (stderr, "%011o %011o\n", pseg, size);
-#    endif
-      stkl = stkl - pseg;
-      ssptr = (struct stack_segment_linkage *) stkl;
-      size = ssptr->sssize;
-      pseg = ssptr->sspseg;
-      result += size;
-    }
-  return (result);
-}
-
-#   endif /* not CRAY2 */
-#  endif /* CRAY */
-
 # endif /* no alloca */
-#endif /* not GCC 2 */
+#endif /* not GCC || clang */
index a581d58f83497cf08306cb6d860e69a26d8ad2fc..c71e9bfed9e2e7a0344072790bd4033fd02b9714 100644 (file)
@@ -1,6 +1,6 @@
 /* Memory allocation on the stack.
 
-   Copyright (C) 1995, 1999, 2001-2004, 2006-2019 Free Software Foundation,
+   Copyright (C) 1995, 1999, 2001-2004, 2006-2020 Free Software Foundation,
    Inc.
 
    This program is free software; you can redistribute it and/or modify it
  */
 
 #ifndef alloca
-# ifdef __GNUC__
-   /* Some version of mingw have an <alloca.h> that causes trouble when
-      included after 'alloca' gets defined as a macro.  As a workaround, include
-      this <alloca.h> first and define 'alloca' as a macro afterwards.  */
-#  if (defined _WIN32 && ! defined __CYGWIN__) && @HAVE_ALLOCA_H@
-#   include_next <alloca.h>
-#  endif
+  /* Some version of mingw have an <alloca.h> that causes trouble when
+     included after 'alloca' gets defined as a macro.  As a workaround,
+     include this <alloca.h> first and define 'alloca' as a macro afterwards
+     if needed.  */
+# if defined __GNUC__ && (defined _WIN32 && ! defined __CYGWIN__) && @HAVE_ALLOCA_H@
+#  include_next <alloca.h>
+# endif
+#endif
+#ifndef alloca
+# if defined __GNUC__ || (__clang_major__ >= 4)
 #  define alloca __builtin_alloca
 # elif defined _AIX
 #  define alloca __alloca
index ad8c26c225e7c0c0857ec5c12d395a2e098248ae..db9d9ae116a07e9ce6dba705e5db5ee48ac377c9 100644 (file)
@@ -1,5 +1,5 @@
 /* A C macro for declaring that specific arguments must not be NULL.
-   Copyright (C) 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published
@@ -18,7 +18,7 @@
    that the values passed as arguments n, ..., m must be non-NULL pointers.
    n = 1 stands for the first argument, n = 2 for the second argument etc.  */
 #ifndef _GL_ARG_NONNULL
-# if (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || __GNUC__ > 3
+# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || defined __clang__
 #  define _GL_ARG_NONNULL(params) __attribute__ ((__nonnull__ params))
 # else
 #  define _GL_ARG_NONNULL(params)
index 9eeb4514d8c715e229b5665b958bbdc2a668d224..195f90252bce39b66aa3ab1b4664d2c95d329e04 100644 (file)
@@ -1,6 +1,6 @@
 /* argmatch.c -- find a match for a string in an array
 
-   Copyright (C) 1990, 1998-1999, 2001-2007, 2009-2019 Free Software
+   Copyright (C) 1990, 1998-1999, 2001-2007, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
index 897fa415d6927dad7f956c25c29657d1e544e190..daa0fdbf3ab038092343f6cb8ed45c52451a4ab9 100644 (file)
@@ -1,6 +1,6 @@
 /* argmatch.h -- definitions and prototypes for argmatch.c
 
-   Copyright (C) 1990, 1998-1999, 2001-2002, 2004-2005, 2009-2019 Free Software
+   Copyright (C) 1990, 1998-1999, 2001-2002, 2004-2005, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
index c21b6a6b806f598c862c574b7863f04fa36d44e4..09a4edfa592c62f7f282c00d4dbf78c74cfa76db 100644 (file)
@@ -1,6 +1,6 @@
 /* Run-time assert-like macros.
 
-   Copyright (C) 2014-2019 Free Software Foundation, Inc.
+   Copyright (C) 2014-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 #define _GL_ASSURE_H
 
 #include <assert.h>
+#include "verify.h"
+
+/* Evaluate an assertion E that is guaranteed to be true.
+   If NDEBUG is not defined, abort the program if E is false.
+   If NDEBUG is defined, the compiler can assume E and behavior is
+   undefined if E is false, fails to evaluate, or has side effects.
+
+   Unlike standard 'assert', this macro evaluates E even when NDEBUG
+   is defined, so as to catch typos, avoid some GCC warnings, and
+   improve performance when E is simple enough.
+
+   Also see the documentation for 'assume' in verify.h.  */
+
+#ifdef NDEBUG
+# define affirm(E) assume (E)
+#else
+# define affirm(E) assert (E)
+#endif
 
 /* Check E's value at runtime, and report an error and abort if not.
    However, do nothing if NDEBUG is defined.
 
-   Unlike standard 'assert', this macro always compiles E even when NDEBUG
-   is defined, so as to catch typos and avoid some GCC warnings.  */
+   Unlike standard 'assert', this macro compiles E even when NDEBUG
+   is defined, so as to catch typos and avoid some GCC warnings.
+   Unlike 'affirm', it is OK for E to use hard-to-optimize features,
+   since E is not executed if NDEBUG is defined.  */
 
 #ifdef NDEBUG
 # define assure(E) ((void) (0 && (E)))
diff --git a/lib/attribute.h b/lib/attribute.h
new file mode 100644 (file)
index 0000000..5afcb8e
--- /dev/null
@@ -0,0 +1,218 @@
+/* ATTRIBUTE_* macros for using attributes in GCC and similar compilers
+
+   Copyright 2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify it
+   under the terms of the GNU General Public License as published
+   by the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+/* Written by Paul Eggert.  */
+
+/* Provide public ATTRIBUTE_* names for the private _GL_ATTRIBUTE_*
+   macros used within Gnulib.  */
+
+/* These attributes can be placed in two ways:
+     - At the start of a declaration (i.e. even before storage-class
+       specifiers!); then they apply to all entities that are declared
+       by the declaration.
+     - Immediately after the name of an entity being declared by the
+       declaration; then they apply to that entity only.  */
+
+#ifndef _GL_ATTRIBUTE_H
+#define _GL_ATTRIBUTE_H
+
+
+/* This file defines two types of attributes:
+   * C2X standard attributes.  These have macro names that do not begin with
+     'ATTRIBUTE_'.
+   * Selected GCC attributes; see:
+     https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html
+     https://gcc.gnu.org/onlinedocs/gcc/Common-Variable-Attributes.html
+     https://gcc.gnu.org/onlinedocs/gcc/Common-Type-Attributes.html
+     These names begin with 'ATTRIBUTE_' to avoid name clashes.  */
+
+
+/* =============== Attributes for specific kinds of functions =============== */
+
+/* Attributes for functions that should not be used.  */
+
+/* Warn if the entity is used.  */
+/* Applies to:
+     - function, variable,
+     - struct, union, struct/union member,
+     - enumeration, enumeration item,
+     - typedef,
+   in C++ also: namespace, class, template specialization.  */
+#define DEPRECATED _GL_ATTRIBUTE_DEPRECATED
+
+/* If a function call is not optimized way, warn with MSG.  */
+/* Applies to: functions.  */
+#define ATTRIBUTE_WARNING(msg) _GL_ATTRIBUTE_WARNING (msg)
+
+/* If a function call is not optimized way, report an error with MSG.  */
+/* Applies to: functions.  */
+#define ATTRIBUTE_ERROR(msg) _GL_ATTRIBUTE_ERROR (msg)
+
+
+/* Attributes for memory-allocating functions.  */
+
+/* The function returns a pointer to freshly allocated memory.  */
+/* Applies to: functions.  */
+#define ATTRIBUTE_MALLOC _GL_ATTRIBUTE_MALLOC
+
+/* ATTRIBUTE_ALLOC_SIZE ((N)) - The Nth argument of the function
+   is the size of the returned memory block.
+   ATTRIBUTE_ALLOC_SIZE ((M, N)) - Multiply the Mth and Nth arguments
+   to determine the size of the returned memory block.  */
+/* Applies to: function, pointer to function, function types.  */
+#define ATTRIBUTE_ALLOC_SIZE(args) _GL_ATTRIBUTE_ALLOC_SIZE (args)
+
+
+/* Attributes for variadic functions.  */
+
+/* The variadic function expects a trailing NULL argument.
+   ATTRIBUTE_SENTINEL () - The last argument is NULL (requires C99).
+   ATTRIBUTE_SENTINEL ((N)) - The (N+1)st argument from the end is NULL.  */
+/* Applies to: functions.  */
+#define ATTRIBUTE_SENTINEL(pos) _GL_ATTRIBUTE_SENTINEL (pos)
+
+
+/* ================== Attributes for compiler diagnostics ================== */
+
+/* Attributes that help the compiler diagnose programmer mistakes.
+   Some of them may also help for some compiler optimizations.  */
+
+/* ATTRIBUTE_FORMAT ((ARCHETYPE, STRING-INDEX, FIRST-TO-CHECK)) -
+   The STRING-INDEXth function argument is a format string of style
+   ARCHETYPE, which is one of:
+     printf, gnu_printf
+     scanf, gnu_scanf,
+     strftime, gnu_strftime,
+     strfmon,
+   or the same thing prefixed and suffixed with '__'.
+   If FIRST-TO-CHECK is not 0, arguments starting at FIRST-TO_CHECK
+   are suitable for the format string.  */
+/* Applies to: functions.  */
+#define ATTRIBUTE_FORMAT(spec) _GL_ATTRIBUTE_FORMAT (spec)
+
+/* ATTRIBUTE_NONNULL ((N1, N2,...)) - Arguments N1, N2,... must not be NULL.
+   ATTRIBUTE_NONNULL () - All pointer arguments must not be null.  */
+/* Applies to: functions.  */
+#define ATTRIBUTE_NONNULL(args) _GL_ATTRIBUTE_NONNULL (args)
+
+/* The function's return value is a non-NULL pointer.  */
+/* Applies to: functions.  */
+#define ATTRIBUTE_RETURNS_NONNULL _GL_ATTRIBUTE_RETURNS_NONNULL
+
+/* Warn if the caller does not use the return value,
+   unless the caller uses something like ignore_value.  */
+/* Applies to: function, enumeration, class.  */
+#define NODISCARD _GL_ATTRIBUTE_NODISCARD
+
+
+/* Attributes that disable false alarms when the compiler diagnoses
+   programmer "mistakes".  */
+
+/* Do not warn if the entity is not used.  */
+/* Applies to:
+     - function, variable,
+     - struct, union, struct/union member,
+     - enumeration, enumeration item,
+     - typedef,
+   in C++ also: class.  */
+#define MAYBE_UNUSED _GL_ATTRIBUTE_MAYBE_UNUSED
+
+/* The contents of a character array is not meant to be NUL-terminated.  */
+/* Applies to: struct/union members and variables that are arrays of element
+   type '[[un]signed] char'.  */
+#define ATTRIBUTE_NONSTRING _GL_ATTRIBUTE_NONSTRING
+
+/* Do not warn if control flow falls through to the immediately
+   following 'case' or 'default' label.  */
+/* Applies to: Empty statement (;), inside a 'switch' statement.  */
+#define FALLTHROUGH _GL_ATTRIBUTE_FALLTHROUGH
+
+
+/* ================== Attributes for debugging information ================== */
+
+/* Attributes regarding debugging information emitted by the compiler.  */
+
+/* Omit the function from stack traces when debugging.  */
+/* Applies to: function.  */
+#define ATTRIBUTE_ARTIFICIAL _GL_ATTRIBUTE_ARTIFICIAL
+
+/* Make the entity visible to debuggers etc., even with '-fwhole-program'.  */
+/* Applies to: functions, variables.  */
+#define ATTRIBUTE_EXTERNALLY_VISIBLE _GL_ATTRIBUTE_EXTERNALLY_VISIBLE
+
+
+/* ========== Attributes that mainly direct compiler optimizations ========== */
+
+/* The function does not throw exceptions.  */
+/* Applies to: functions.  */
+#define ATTRIBUTE_NOTHROW _GL_ATTRIBUTE_NOTHROW
+
+/* Do not inline the function.  */
+/* Applies to: functions.  */
+#define ATTRIBUTE_NOINLINE _GL_ATTRIBUTE_NOINLINE
+
+/* Always inline the function, and report an error if the compiler
+   cannot inline.  */
+/* Applies to: function.  */
+#define ATTRIBUTE_ALWAYS_INLINE _GL_ATTRIBUTE_ALWAYS_INLINE
+
+/* It is OK for a compiler to omit duplicate calls with the same arguments.
+   This attribute is safe for a function that neither depends on
+   nor affects observable state, and always returns exactly once -
+   e.g., does not loop forever, and does not call longjmp.
+   (This attribute is stricter than ATTRIBUTE_PURE.)  */
+/* Applies to: functions.  */
+#define ATTRIBUTE_CONST _GL_ATTRIBUTE_CONST
+
+/* It is OK for a compiler to omit duplicate calls with the same
+   arguments if observable state is not changed between calls.
+   This attribute is safe for a function that does not affect
+   observable state, and always returns exactly once.
+   (This attribute is looser than ATTRIBUTE_CONST.)  */
+/* Applies to: functions.  */
+#define ATTRIBUTE_PURE _GL_ATTRIBUTE_PURE
+
+/* The function is rarely executed.  */
+/* Applies to: functions.  */
+#define ATTRIBUTE_COLD _GL_ATTRIBUTE_COLD
+
+/* If called from some other compilation unit, the function executes
+   code from that unit only by return or by exception handling,
+   letting the compiler optimize that unit more aggressively.  */
+/* Applies to: functions.  */
+#define ATTRIBUTE_LEAF _GL_ATTRIBUTE_LEAF
+
+/* For struct members: The member has the smallest possible alignment.
+   For struct, union, class: All members have the smallest possible alignment,
+   minimizing the memory required.  */
+/* Applies to: struct members, struct, union,
+   in C++ also: class.  */
+#define ATTRIBUTE_PACKED _GL_ATTRIBUTE_PACKED
+
+
+/* ================ Attributes that make invalid code valid ================ */
+
+/* Attributes that prevent fatal compiler optimizations for code that is not
+   fully ISO C compliant.  */
+
+/* Pointers to the type may point to the same storage as pointers to
+   other types, thus disabling strict aliasing optimization.  */
+/* Applies to: types.  */
+#define ATTRIBUTE_MAY_ALIAS _GL_ATTRIBUTE_MAY_ALIAS
+
+
+#endif /* _GL_ATTRIBUTE_H */
index 0ae04ee5722bc7c9405e13e3ac09a4491e9d3afd..6bb28d45f1ffd70a250eb3d5c8be77c5ddddbda4 100644 (file)
@@ -1,6 +1,6 @@
 /* basename.c -- return the last element in a file name
 
-   Copyright (C) 1990, 1998-2001, 2003-2006, 2009-2019 Free Software
+   Copyright (C) 1990, 1998-2001, 2003-2006, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
 
 #include <config.h>
 
-#include "dirname.h"
+/* Specification.  */
+#include "basename-lgpl.h"
 
+#include <stdbool.h>
 #include <string.h>
 
-/* Return the address of the last file name component of NAME.  If
-   NAME has no relative file name components because it is a file
-   system root, return the empty string.  */
+#include "filename.h"
 
 char *
 last_component (char const *name)
 {
   char const *base = name + FILE_SYSTEM_PREFIX_LEN (name);
   char const *p;
-  bool saw_slash = false;
+  bool last_was_slash = false;
 
   while (ISSLASH (*base))
     base++;
@@ -39,21 +39,17 @@ last_component (char const *name)
   for (p = base; *p; p++)
     {
       if (ISSLASH (*p))
-        saw_slash = true;
-      else if (saw_slash)
+        last_was_slash = true;
+      else if (last_was_slash)
         {
           base = p;
-          saw_slash = false;
+          last_was_slash = false;
         }
     }
 
   return (char *) base;
 }
 
-/* Return the length of the basename NAME.  Typically NAME is the
-   value returned by base_name or last_component.  Act like strlen
-   (NAME), except omit all trailing slashes.  */
-
 size_t
 base_len (char const *name)
 {
diff --git a/lib/basename-lgpl.h b/lib/basename-lgpl.h
new file mode 100644 (file)
index 0000000..3807094
--- /dev/null
@@ -0,0 +1,78 @@
+/*  Extract the last component (base name) of a file name.
+
+    Copyright (C) 1998, 2001, 2003-2006, 2009-2020 Free Software Foundation,
+    Inc.
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+#ifndef _BASENAME_LGPL_H
+#define _BASENAME_LGPL_H
+
+#include <stddef.h>
+
+#ifndef DOUBLE_SLASH_IS_DISTINCT_ROOT
+# define DOUBLE_SLASH_IS_DISTINCT_ROOT 0
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+/* Return the address of the last file name component of FILENAME.
+   If FILENAME has some trailing slash(es), they are considered to be
+   part of the last component.
+   If FILENAME has no relative file name components because it is a file
+   system root, return the empty string.
+   Examples:
+              FILENAME      RESULT
+              "foo.c"       "foo.c"
+              "foo/bar.c"   "bar.c"
+              "/foo/bar.c"  "bar.c"
+              "foo/bar/"    "bar/"
+              "foo/bar//"   "bar//"
+              "/"           ""
+              "//"          ""
+              ""            ""
+   The return value is a tail of the given FILENAME; do NOT free() it!  */
+
+/* This function was traditionally called 'basename', but we avoid this
+   function name because
+     * Various platforms have different functions in their libc.
+       In particular, the glibc basename(), defined in <string.h>, does
+       not consider trailing slashes to be part of the component:
+              FILENAME      RESULT
+              "foo/bar/"    ""
+              "foo/bar//"   ""
+     * The 'basename' command eliminates trailing slashes and for a root
+       produces a non-empty result:
+              FILENAME      RESULT
+              "foo/bar/"    "bar"
+              "foo/bar//"   "bar"
+              "/"           "/"
+              "//"          "/"
+ */
+extern char *last_component (char const *filename) _GL_ATTRIBUTE_PURE;
+
+/* Return the length of the basename FILENAME.
+   Typically FILENAME is the value returned by base_name or last_component.
+   Act like strlen (FILENAME), except omit all trailing slashes.  */
+extern size_t base_len (char const *filename) _GL_ATTRIBUTE_PURE;
+
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* _BASENAME_LGPL_H */
index 1b6e0ea59bd7edff75fcbd5b6769a81a8050ad95..b14417f48d7067d4613e0df8635047b7511cb67d 100644 (file)
@@ -1,6 +1,6 @@
 /* basename.c -- return the last element in a file name
 
-   Copyright (C) 1990, 1998-2001, 2003-2006, 2009-2019 Free Software
+   Copyright (C) 1990, 1998-2001, 2003-2006, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
index 9e2496d40212327f8b1589062266d857904de789..6828b701aa1ad9c514d1a02ec41ca654189b2bde 100644 (file)
@@ -1,5 +1,5 @@
 /* Convert unibyte character to wide character.
-   Copyright (C) 2008, 2010-2019 Free Software Foundation, Inc.
+   Copyright (C) 2008, 2010-2020 Free Software Foundation, Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2008.
 
    This program is free software: you can redistribute it and/or modify
index 87d0716723eefca93d243b6097ad9a8b8a485650..01ef8140cad4f438d00306afee3909a554496fb7 100644 (file)
@@ -1,5 +1,5 @@
 /* C++ compatible function declaration macros.
-   Copyright (C) 2010-2019 Free Software Foundation, Inc.
+   Copyright (C) 2010-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published
     _GL_EXTERN_C int _gl_cxxalias_dummy
 #endif
 
+/* _GL_CXXALIAS_MDA (func, rettype, parameters);
+   is to be used when func is a Microsoft deprecated alias, on native Windows.
+   It declares a C++ alias called GNULIB_NAMESPACE::func
+   that redirects to _func, if GNULIB_NAMESPACE is defined.
+   Example:
+     _GL_CXXALIAS_MDA (open, int, (const char *filename, int flags, ...));
+ */
+#define _GL_CXXALIAS_MDA(func,rettype,parameters) \
+  _GL_CXXALIAS_RPL_1 (func, _##func, rettype, parameters)
+
 /* _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
     _GL_EXTERN_C int _gl_cxxalias_dummy
 #endif
 
+/* _GL_CXXALIAS_MDA_CAST (func, rettype, parameters);
+   is like  _GL_CXXALIAS_MDA (func, rettype, parameters);
+   except that the C function func may have a slightly different declaration.
+   A cast is used to silence the "invalid conversion" error that would
+   otherwise occur.  */
+#define _GL_CXXALIAS_MDA_CAST(func,rettype,parameters) \
+  _GL_CXXALIAS_RPL_CAST_1 (func, _##func, rettype, parameters)
+
 /* _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
    _GL_CXXALIASWARN_2 (func, namespace)
 /* To work around GCC bug <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43881>,
    we enable the warning only when not optimizing.  */
-# if !__OPTIMIZE__
+# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__)
 #  define _GL_CXXALIASWARN_2(func,namespace) \
     _GL_WARN_ON_USE (func, \
                      "The symbol ::" #func " refers to the system function. " \
    _GL_CXXALIASWARN1_2 (func, rettype, parameters_and_attributes, namespace)
 /* To work around GCC bug <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43881>,
    we enable the warning only when not optimizing.  */
-# if !__OPTIMIZE__
+# if !(defined __GNUC__ && !defined __clang__ && __OPTIMIZE__)
 #  define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \
-    _GL_WARN_ON_USE_CXX (func, rettype, parameters_and_attributes, \
+    _GL_WARN_ON_USE_CXX (func, rettype, 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
index 4d521763843f3a82d940b33046bdb55ae4dad7ad..fbd11b34508faa01015493fda496faf25c58d743 100644 (file)
@@ -5,7 +5,7 @@
    <ctype.h> functions' behaviour depends on the current locale set via
    setlocale.
 
-   Copyright (C) 2000-2003, 2006, 2008-2019 Free Software Foundation, Inc.
+   Copyright (C) 2000-2003, 2006, 2008-2020 Free Software Foundation, Inc.
 
 This program is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
index b67c9b5da0e35146e23862dfc8c46fd1edd7089b..3b711f5aa57f9d235ed19dac4792fd379efd93f4 100644 (file)
@@ -1,5 +1,5 @@
 /* Case-insensitive string comparison functions in C locale.
-   Copyright (C) 1995-1996, 2001, 2003, 2005, 2009-2019 Free Software
+   Copyright (C) 1995-1996, 2001, 2003, 2005, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
index ec50f1abe763d51530a95795b86ff19e87763a09..f1a4b98fa5558a47643b15ec7a5ddea9f8754d0b 100644 (file)
@@ -1,5 +1,5 @@
 /* c-strcasecmp.c -- case insensitive string comparator in C locale
-   Copyright (C) 1998-1999, 2005-2006, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 1998-1999, 2005-2006, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -52,5 +52,5 @@ c_strcasecmp (const char *s1, const char *s2)
     /* On machines where 'char' and 'int' are types of the same size, the
        difference of two 'unsigned char' values - including the sign bit -
        doesn't fit in an 'int'.  */
-    return (c1 > c2 ? 1 : c1 < c2 ? -1 : 0);
+    return _GL_CMP (c1, c2);
 }
index bcc81fc388dbe8555291c8ca7884e941c3049a61..0f7c50a161eb090766db9c3fe1714e1d17effcaf 100644 (file)
@@ -1,5 +1,5 @@
 /* Optimized case-insensitive string comparison in C locale.
-   Copyright (C) 2001-2002, 2007, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2001-2002, 2007, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published
@@ -27,7 +27,7 @@
 
 /* Help GCC to generate good code for string comparisons with
    immediate strings. */
-#if defined (__GNUC__) && defined (__OPTIMIZE__)
+#if (defined __GNUC__ || defined __clang__) && defined __OPTIMIZE__
 
 /* Case insensitive comparison of ASCII characters.  */
 # if C_CTYPE_ASCII
index 513c353f6c289be3428b363600f861cf04be6671..1d6e1411a67b7a54ba9235cdec246654cfd94686 100644 (file)
@@ -1,5 +1,5 @@
 /* c-strncasecmp.c -- case insensitive string comparator in C locale
-   Copyright (C) 1998-1999, 2005-2006, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 1998-1999, 2005-2006, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -52,5 +52,5 @@ c_strncasecmp (const char *s1, const char *s2, size_t n)
     /* On machines where 'char' and 'int' are types of the same size, the
        difference of two 'unsigned char' values - including the sign bit -
        doesn't fit in an 'int'.  */
-    return (c1 > c2 ? 1 : c1 < c2 ? -1 : 0);
+    return _GL_CMP (c1, c2);
 }
index a0f572839585338caa56dc076522f7ca046a928a..be37c2a650f4a0836bed409ef041decab74c839a 100644 (file)
@@ -1,6 +1,6 @@
 /* calloc() function that is glibc compatible.
    This wrapper function is required at least on Tru64 UNIX 5.1 and mingw.
-   Copyright (C) 2004-2007, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2004-2007, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 4d1be6dc24b4d0a1f8005fb2d80597d33c6d2b93..d090dcda1d62524cb567778e0c097099bc696f74 100644 (file)
@@ -1,5 +1,5 @@
 /* Return the canonical absolute name of a given file.
-   Copyright (C) 1996-2019 Free Software Foundation, Inc.
+   Copyright (C) 1996-2020 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
 #if HAVE_SYS_PARAM_H || defined _LIBC
 # include <sys/param.h>
 #endif
-#include <sys/stat.h>
 #include <errno.h>
 #include <stddef.h>
 
 #ifdef _LIBC
 # include <shlib-compat.h>
+typedef ptrdiff_t idx_t;
 #else
 # define SHLIB_COMPAT(lib, introduced, obsoleted) 0
 # define versioned_symbol(lib, local, symbol, version) extern int dummy
 # define weak_alias(local, symbol)
 # define __canonicalize_file_name canonicalize_file_name
 # define __realpath realpath
+# include "idx.h"
 # include "pathmax.h"
 # include "malloca.h"
-# include "dosname.h"
-# if HAVE_GETCWD
+# include "filename.h"
+# if defined _WIN32 && !defined __CYGWIN__
+#  define __getcwd _getcwd
+# elif 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.
@@ -196,12 +199,6 @@ __realpath (const char *name, char *resolved)
 
   for (end = start; *start; start = end)
     {
-#ifdef _LIBC
-      struct stat64 st;
-#else
-      struct stat st;
-#endif
-
       /* Skip sequence of multiple path-separators.  */
       while (ISSLASH (*start))
         ++start;
@@ -210,9 +207,7 @@ __realpath (const char *name, char *resolved)
       for (end = start; *end && !ISSLASH (*end); ++end)
         /* Nothing.  */;
 
-      if (end - start == 0)
-        break;
-      else if (end - start == 1 && start[0] == '.')
+      if (end - start == 1 && start[0] == '.')
         /* nothing */;
       else if (end - start == 2 && start[0] == '.' && start[1] == '.')
         {
@@ -232,9 +227,9 @@ __realpath (const char *name, char *resolved)
           if (!ISSLASH (dest[-1]))
             *dest++ = '/';
 
-          if (dest + (end - start) >= rpath_limit)
+          if (rpath_limit - dest <= end - start)
             {
-              ptrdiff_t dest_offset = dest - rpath;
+              idx_t dest_offset = dest - rpath;
               char *new_rpath;
 
               if (resolved)
@@ -270,20 +265,17 @@ __realpath (const char *name, char *resolved)
 #endif
           *dest = '\0';
 
-          /* FIXME: if lstat fails with errno == EOVERFLOW,
-             the entry exists.  */
-#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 linkbuf[128];
+          ssize_t n = __readlink (rpath, linkbuf, sizeof linkbuf);
+          if (n < 0)
+            {
+              if (errno != EINVAL)
+                goto error;
+            }
+          else
             {
               char *buf;
               size_t len;
-              ssize_t n;
 
               if (++num_links > MAXSYMLINKS)
                 {
@@ -291,39 +283,30 @@ __realpath (const char *name, char *resolved)
                   goto error;
                 }
 
-              buf = malloca (path_max);
-              if (!buf)
-                {
-                  __set_errno (ENOMEM);
-                  goto error;
-                }
-
-              n = __readlink (rpath, buf, path_max - 1);
-              if (n < 0)
-                {
-                  int saved_errno = errno;
-                  freea (buf);
-                  __set_errno (saved_errno);
-                  goto error;
-                }
-              buf[n] = '\0';
-
               if (!extra_buf)
                 {
-                  extra_buf = malloca (path_max);
+                  extra_buf = malloca (2 * path_max);
                   if (!extra_buf)
                     {
-                      freea (buf);
-                      __set_errno (ENOMEM);
+                      alloc_failed ();
                       goto error;
                     }
                 }
+              if (n < sizeof linkbuf)
+                buf = linkbuf;
+              else
+                {
+                  buf = extra_buf + path_max;
+                  n = __readlink (rpath, buf, path_max - 1);
+                  if (n < 0)
+                    goto error;
+                }
+              buf[n] = '\0';
 
               len = strlen (end);
               /* Check that n + len + 1 doesn't overflow and is <= path_max. */
               if (n >= SIZE_MAX - len || n + len >= path_max)
                 {
-                  freea (buf);
                   __set_errno (ENAMETOOLONG);
                   goto error;
                 }
@@ -361,11 +344,6 @@ __realpath (const char *name, char *resolved)
                     dest++;
                 }
             }
-          else if (!S_ISDIR (st.st_mode) && *end != '\0')
-            {
-              __set_errno (ENOTDIR);
-              goto error;
-            }
         }
     }
   if (dest > rpath + prefix_len + 1 && ISSLASH (dest[-1]))
index 96d26164199a9494a6e2dbd30d98b038d1784da9..1a2805d72590aff421a72a92f1962de2effeced4 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1992-2019 Free Software Foundation, Inc.
+/* Copyright (C) 1992-2020 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
 #undef __P
 #undef __PMT
 
-#ifdef __GNUC__
+/* Compilers that are not clang may object to
+       #if defined __clang__ && __has_attribute(...)
+   even though they do not need to evaluate the right-hand side of the &&.  */
+#if defined __clang__ && defined __has_attribute
+# define __glibc_clang_has_attribute(name) __has_attribute (name)
+#else
+# define __glibc_clang_has_attribute(name) 0
+#endif
+
+/* Compilers that are not clang may object to
+       #if defined __clang__ && __has_builtin(...)
+   even though they do not need to evaluate the right-hand side of the &&.  */
+#if defined __clang__ && defined __has_builtin
+# define __glibc_clang_has_builtin(name) __has_builtin (name)
+#else
+# define __glibc_clang_has_builtin(name) 0
+#endif
+
+/* Compilers that are not clang may object to
+       #if defined __clang__ && __has_extension(...)
+   even though they do not need to evaluate the right-hand side of the &&.  */
+#if defined __clang__ && defined __has_extension
+# define __glibc_clang_has_extension(ext) __has_extension (ext)
+#else
+# define __glibc_clang_has_extension(ext) 0
+#endif
+
+#if defined __GNUC__ || defined __clang__
 
 /* All functions, except those with callbacks or those that
    synchronize memory, are leaf functions.  */
 
 /* GCC can always grok prototypes.  For C++ programs we add throw()
    to help it optimize the function calls.  But this works only with
-   gcc 2.8.x and egcs.  For gcc 3.2 and up we even mark C functions
+   gcc 2.8.x and egcs.  For gcc 3.4 and up we even mark C functions
    as non-throwing using a function attribute since programs can use
    the -fexceptions options for C code as well.  */
-# if !defined __cplusplus && __GNUC_PREREQ (3, 3)
+# if !defined __cplusplus \
+     && (__GNUC_PREREQ (3, 4) || __glibc_clang_has_attribute (__nothrow__))
 #  define __THROW      __attribute__ ((__nothrow__ __LEAF))
 #  define __THROWNL    __attribute__ ((__nothrow__))
 #  define __NTH(fct)   __attribute__ ((__nothrow__ __LEAF)) fct
 #  define __NTHNL(fct)  __attribute__ ((__nothrow__)) fct
 # else
-#  if defined __cplusplus && __GNUC_PREREQ (2,8)
+#  if defined __cplusplus && (__GNUC_PREREQ (2,8) || __clang_major >= 4)
 #   define __THROW     throw ()
 #   define __THROWNL   throw ()
 #   define __NTH(fct)  __LEAF_ATTR fct throw ()
@@ -70,7 +98,7 @@
 #  endif
 # endif
 
-#else  /* Not GCC.  */
+#else  /* Not GCC or clang.  */
 
 # if (defined __cplusplus                                              \
       || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L))
 # define __THROWNL
 # define __NTH(fct)    fct
 
-#endif /* GCC.  */
-
-/* Compilers that are not clang may object to
-       #if defined __clang__ && __has_extension(...)
-   even though they do not need to evaluate the right-hand side of the &&.  */
-#if defined __clang__ && defined __has_extension
-# define __glibc_clang_has_extension(ext) __has_extension (ext)
-#else
-# define __glibc_clang_has_extension(ext) 0
-#endif
+#endif /* GCC || clang.  */
 
 /* These two macros are not used in glibc anymore.  They are kept here
    only because some other projects expect the macros to be defined.  */
 # define __warnattr(msg) __attribute__((__warning__ (msg)))
 # define __errordecl(name, msg) \
   extern void name (void) __attribute__((__error__ (msg)))
+#elif __glibc_clang_has_attribute (__diagnose_if__) && 0
+/* These definitions are not enabled, because they produce bogus warnings
+   in the glibc Fortify functions.  These functions are written in a style
+   that works with GCC.  In order to work with clang, these functions would
+   need to be modified.  */
+# define __warndecl(name, msg) \
+  extern void name (void) __attribute__((__diagnose_if__ (1, msg, "warning")))
+# define __warnattr(msg) __attribute__((__diagnose_if__ (1, msg, "warning")))
+# define __errordecl(name, msg) \
+  extern void name (void) __attribute__((__diagnose_if__ (1, msg, "error")))
 #else
 # define __warndecl(name, msg) extern void name (void)
 # define __warnattr(msg)
 #if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L && !defined __HP_cc
 # define __flexarr     []
 # define __glibc_c99_flexarr_available 1
-#elif __GNUC_PREREQ (2,97)
-/* GCC 2.97 supports C99 flexible array members as an extension,
+#elif __GNUC_PREREQ (2,97) || defined __clang__
+/* GCC 2.97 and clang support C99 flexible array members as an extension,
    even when in C89 mode or compiling C++ (any version).  */
 # define __flexarr     []
 # define __glibc_c99_flexarr_available 1
    Example:
    int __REDIRECT(setpgrp, (__pid_t pid, __pid_t pgrp), setpgid); */
 
-#if defined __GNUC__ && __GNUC__ >= 2
+#if (defined __GNUC__ && __GNUC__ >= 2) || (__clang_major__ >= 4)
 
 # define __REDIRECT(name, proto, alias) name proto __asm__ (__ASMNAME (#alias))
 # ifdef __cplusplus
 */
 #endif
 
-/* GCC has various useful declarations that can be made with the
-   `__attribute__' syntax.  All of the ways we use this do fine if
-   they are omitted for compilers that don't understand it. */
-#if !defined __GNUC__ || __GNUC__ < 2
+/* GCC and clang have various useful declarations that can be made with
+   the '__attribute__' syntax.  All of the ways we use this do fine if
+   they are omitted for compilers that don't understand it.  */
+#if !(defined __GNUC__ || defined __clang__)
 # define __attribute__(xyz)    /* Ignore */
 #endif
 
 /* At some point during the gcc 2.96 development the `malloc' attribute
    for functions was introduced.  We don't want to use it unconditionally
    (although this would be possible) since it generates warnings.  */
-#if __GNUC_PREREQ (2,96)
+#if __GNUC_PREREQ (2,96) || __glibc_clang_has_attribute (__malloc__)
 # define __attribute_malloc__ __attribute__ ((__malloc__))
 #else
 # define __attribute_malloc__ /* Ignore */
 /* At some point during the gcc 2.96 development the `pure' attribute
    for functions was introduced.  We don't want to use it unconditionally
    (although this would be possible) since it generates warnings.  */
-#if __GNUC_PREREQ (2,96)
+#if __GNUC_PREREQ (2,96) || __glibc_clang_has_attribute (__pure__)
 # define __attribute_pure__ __attribute__ ((__pure__))
 #else
 # define __attribute_pure__ /* Ignore */
 #endif
 
 /* This declaration tells the compiler that the value is constant.  */
-#if __GNUC_PREREQ (2,5)
+#if __GNUC_PREREQ (2,5) || __glibc_clang_has_attribute (__const__)
 # define __attribute_const__ __attribute__ ((__const__))
 #else
 # define __attribute_const__ /* Ignore */
 /* At some point during the gcc 3.1 development the `used' attribute
    for functions was introduced.  We don't want to use it unconditionally
    (although this would be possible) since it generates warnings.  */
-#if __GNUC_PREREQ (3,1)
+#if __GNUC_PREREQ (3,1) || __glibc_clang_has_attribute (__used__)
 # define __attribute_used__ __attribute__ ((__used__))
 # define __attribute_noinline__ __attribute__ ((__noinline__))
 #else
 #endif
 
 /* Since version 3.2, gcc allows marking deprecated functions.  */
-#if __GNUC_PREREQ (3,2)
+#if __GNUC_PREREQ (3,2) || __glibc_clang_has_attribute (__deprecated__)
 # define __attribute_deprecated__ __attribute__ ((__deprecated__))
 #else
 # define __attribute_deprecated__ /* Ignore */
    If several `format_arg' attributes are given for the same function, in
    gcc-3.0 and older, all but the last one are ignored.  In newer gccs,
    all designated arguments are considered.  */
-#if __GNUC_PREREQ (2,8)
+#if __GNUC_PREREQ (2,8) || __glibc_clang_has_attribute (__format_arg__)
 # define __attribute_format_arg__(x) __attribute__ ((__format_arg__ (x)))
 #else
 # define __attribute_format_arg__(x) /* Ignore */
    attribute for functions was introduced.  We don't want to use it
    unconditionally (although this would be possible) since it
    generates warnings.  */
-#if __GNUC_PREREQ (2,97)
+#if __GNUC_PREREQ (2,97) || __glibc_clang_has_attribute (__format__)
 # define __attribute_format_strfmon__(a,b) \
   __attribute__ ((__format__ (__strfmon__, a, b)))
 #else
    must not be NULL.  Do not define __nonnull if it is already defined,
    for portability when this file is used in Gnulib.  */
 #ifndef __nonnull
-# if __GNUC_PREREQ (3,3)
+# if __GNUC_PREREQ (3,3) || __glibc_clang_has_attribute (__nonnull__)
 #  define __nonnull(params) __attribute__ ((__nonnull__ params))
 # else
 #  define __nonnull(params)
 
 /* If fortification mode, we warn about unused results of certain
    function calls which can lead to problems.  */
-#if __GNUC_PREREQ (3,4)
+#if __GNUC_PREREQ (3,4) || __glibc_clang_has_attribute (__warn_unused_result__)
 # define __attribute_warn_unused_result__ \
    __attribute__ ((__warn_unused_result__))
 # if defined __USE_FORTIFY_LEVEL && __USE_FORTIFY_LEVEL > 0
 #endif
 
 /* Forces a function to be always inlined.  */
-#if __GNUC_PREREQ (3,2)
+#if __GNUC_PREREQ (3,2) || __glibc_clang_has_attribute (__always_inline__)
 /* The Linux kernel defines __always_inline in stddef.h (283d7573), and
    it conflicts with this definition.  Therefore undefine it first to
    allow either header to be included first.  */
 
 /* Associate error messages with the source location of the call site rather
    than with the source location inside the function.  */
-#if __GNUC_PREREQ (4,3)
+#if __GNUC_PREREQ (4,3) || __glibc_clang_has_attribute (__artificial__)
 # define __attribute_artificial__ __attribute__ ((__artificial__))
 #else
 # define __attribute_artificial__ /* Ignore */
    run in pedantic mode if the uses are carefully marked using the
    `__extension__' keyword.  But this is not generally available before
    version 2.8.  */
-#if !__GNUC_PREREQ (2,8)
+#if !(__GNUC_PREREQ (2,8) || defined __clang__)
 # define __extension__         /* Ignore */
 #endif
 
-/* __restrict is known in EGCS 1.2 and above. */
-#if !__GNUC_PREREQ (2,92)
+/* __restrict is known in EGCS 1.2 and above, and in clang.
+   It works also in C++ mode (outside of arrays), but only when spelled
+   as '__restrict', not 'restrict'.  */
+#if !(__GNUC_PREREQ (2,92) || __clang_major__ >= 3)
 # if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L
 #  define __restrict   restrict
 # else
 
 /* ISO C99 also allows to declare arrays as non-overlapping.  The syntax is
      array_name[restrict]
-   GCC 3.1 supports this.  */
-#if __GNUC_PREREQ (3,1) && !defined __GNUG__
+   GCC 3.1 and clang support this.
+   This syntax is not usable in C++ mode.  */
+#if (__GNUC_PREREQ (3,1) || __clang_major__ >= 3) && !defined __cplusplus
 # define __restrict_arr        __restrict
 #else
 # ifdef __GNUC__
 # endif
 #endif
 
-#if __GNUC__ >= 3
+#if (__GNUC__ >= 3) || __glibc_clang_has_builtin (__builtin_expect)
 # define __glibc_unlikely(cond)        __builtin_expect ((cond), 0)
 # define __glibc_likely(cond)  __builtin_expect ((cond), 1)
 #else
 
 #if (!defined _Noreturn \
      && (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) < 201112 \
-     &&  !__GNUC_PREREQ (4,7))
+     &&  !(__GNUC_PREREQ (4,7) \
+           || (3 < __clang_major__ + (5 <= __clang_minor__))))
 # if __GNUC_PREREQ (2,8)
 #  define _Noreturn __attribute__ ((__noreturn__))
 # else
 
 #if (!defined _Static_assert && !defined __cplusplus \
      && (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) < 201112 \
-     && (!__GNUC_PREREQ (4, 6) || defined __STRICT_ANSI__))
+     && (!(__GNUC_PREREQ (4, 6) || __clang_major__ >= 4) \
+         || defined __STRICT_ANSI__))
 # define _Static_assert(expr, diagnostic) \
     extern int (*__Static_assert_function (void)) \
       [!!sizeof (struct { int __error_if_negative: (expr) ? 2 : -1; })]
diff --git a/lib/cloexec.c b/lib/cloexec.c
new file mode 100644 (file)
index 0000000..510be3d
--- /dev/null
@@ -0,0 +1,83 @@
+/* cloexec.c - set or clear the close-on-exec descriptor flag
+
+   Copyright (C) 1991, 2004-2006, 2009-2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.
+
+   The code is taken from glibc/manual/llio.texi  */
+
+#include <config.h>
+
+#include "cloexec.h"
+
+#include <errno.h>
+#include <fcntl.h>
+#include <unistd.h>
+
+/* 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/lib/cloexec.h b/lib/cloexec.h
new file mode 100644 (file)
index 0000000..f14a997
--- /dev/null
@@ -0,0 +1,38 @@
+/* cloexec.c - set or clear the close-on-exec descriptor flag
+
+   Copyright (C) 2004, 2009-2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.
+
+*/
+
+#include <stdbool.h>
+
+/* 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);
index 5458c4f29f36f30dfbea11238ba1b954d704b27b..04bc8009a573f51d0a5e1eac183b552fe7bfc8d6 100644 (file)
@@ -1,6 +1,6 @@
 /* Close a stream, with nicer error checking than fclose's.
 
-   Copyright (C) 1998-2002, 2004, 2006-2019 Free Software Foundation, Inc.
+   Copyright (C) 1998-2002, 2004, 2006-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 40ce845bc33315ac9473a6b34562b7ce9a94af84..32503c03135f99f4b17b965e2f25f7b9a5abaf5f 100644 (file)
@@ -1,5 +1,5 @@
 /* close replacement.
-   Copyright (C) 2008-2019 Free Software Foundation, Inc.
+   Copyright (C) 2008-2020 Free Software Foundation, Inc.
 
    This 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,7 +28,8 @@
 
 #undef close
 
-#if HAVE_MSVC_INVALID_PARAMETER_HANDLER
+#if defined _WIN32 && !defined __CYGWIN__
+# if HAVE_MSVC_INVALID_PARAMETER_HANDLER
 static int
 close_nothrow (int fd)
 {
@@ -36,7 +37,7 @@ close_nothrow (int fd)
 
   TRY_MSVC_INVAL
     {
-      result = close (fd);
+      result = _close (fd);
     }
   CATCH_MSVC_INVAL
     {
@@ -47,6 +48,9 @@ close_nothrow (int fd)
 
   return result;
 }
+# else
+#  define close_nothrow _close
+# endif
 #else
 # define close_nothrow close
 #endif
index 4a604ec35d4b2854580d2ff4d5d2c45fb16021a3..8b92ce9476b4cf7a5b941e0f43f72986ae13e427 100644 (file)
@@ -1,6 +1,6 @@
 /* Close standard output and standard error, exiting with a diagnostic on error.
 
-   Copyright (C) 1998-2002, 2004, 2006, 2008-2019 Free Software Foundation,
+   Copyright (C) 1998-2002, 2004, 2006, 2008-2020 Free Software Foundation,
    Inc.
 
    This program is free software: you can redistribute it and/or modify
index ac89f760a952691e3705d06e7d89f9a88eedac63..8294c6268c9b435cc91ff4a6c6c6ecad322ee4bc 100644 (file)
@@ -1,6 +1,6 @@
 /* Close standard output and standard error.
 
-   Copyright (C) 1998, 2000, 2003-2004, 2006, 2008-2019 Free Software
+   Copyright (C) 1998, 2000, 2003-2004, 2006, 2008-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
index d0640d2b72e82fdec2cec3b72b2a13a6f6a4671c..124d95b3315ece5d5183eace55d1961a2e669e52 100644 (file)
 /* Define to the number of bits in type 'wint_t'. */
 #undef BITSIZEOF_WINT_T
 
-/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
-   systems. This function is required for `alloca.c' support on those systems.
-   */
-#undef CRAY_STACKSEG_END
-
-/* Define to 1 if using `alloca.c'. */
+/* Define to 1 if using 'alloca.c'. */
 #undef C_ALLOCA
 
-/* Define to 1 if the C locale may have encoding errors. */
-#undef C_LOCALE_MAYBE_EILSEQ
-
 /* Enable assertions, etc. */
 #undef DEBUG
 
@@ -73,9 +65,6 @@
    and handles trailing slash correctly. */
 #undef FUNC_REALPATH_WORKS
 
-/* Define if gettimeofday clobbers the localtime buffer. */
-#undef GETTIMEOFDAY_CLOBBERS_LOCALTIME
-
 /* Define this to 'void' or 'struct timezone' to match the system's
    declaration of the second argument to gettimeofday. */
 #undef GETTIMEOFDAY_TIMEZONE
    whether the gnulib module fscanf shall be considered present. */
 #undef GNULIB_FSCANF
 
+/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
+   whether the gnulib module isblank shall be considered present. */
+#undef GNULIB_ISBLANK
+
 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
    whether the gnulib module lock shall be considered present. */
 #undef GNULIB_LOCK
    whether the gnulib module strerror_r-posix shall be considered present. */
 #undef GNULIB_STRERROR_R_POSIX
 
+/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
+   whether the gnulib module tempname shall be considered present. */
+#undef GNULIB_TEMPNAME
+
 /* Define to 1 when the gnulib module accept should be tested. */
 #undef GNULIB_TEST_ACCEPT
 
 /* Define to 1 when the gnulib module getdtablesize should be tested. */
 #undef GNULIB_TEST_GETDTABLESIZE
 
+/* Define to 1 when the gnulib module getopt-posix should be tested. */
+#undef GNULIB_TEST_GETOPT_POSIX
+
 /* Define to 1 when the gnulib module getpagesize should be tested. */
 #undef GNULIB_TEST_GETPAGESIZE
 
+/* Define to 1 when the gnulib module getrandom should be tested. */
+#undef GNULIB_TEST_GETRANDOM
+
 /* Define to 1 when the gnulib module gettimeofday should be tested. */
 #undef GNULIB_TEST_GETTIMEOFDAY
 
 /* Define to 1 when the gnulib module setlocale should be tested. */
 #undef GNULIB_TEST_SETLOCALE
 
+/* Define to 1 when the gnulib module setlocale_null should be tested. */
+#undef GNULIB_TEST_SETLOCALE_NULL
+
 /* Define to 1 when the gnulib module setsockopt should be tested. */
 #undef GNULIB_TEST_SETSOCKOPT
 
 /* Define to 1 when the gnulib module wctomb should be tested. */
 #undef GNULIB_TEST_WCTOMB
 
+/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
+   whether the gnulib module xalloc shall be considered present. */
+#undef GNULIB_XALLOC
+
+/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
+   whether the gnulib module xalloc-die shall be considered present. */
+#undef GNULIB_XALLOC_DIE
+
 /* Define to 1 if you have 'alloca' after including <alloca.h>, a header that
    may be supplied by this distribution. */
 #undef HAVE_ALLOCA
 /* Has backtrace support */
 #undef HAVE_BACKTRACE
 
+/* Define to 1 if you have the <bcrypt.h> header file. */
+#undef HAVE_BCRYPT_H
+
 /* Define to 1 if you have the <blkid/blkid.h> header file. */
 #undef HAVE_BLKID_BLKID_H
 
    the CoreFoundation framework. */
 #undef HAVE_CFPREFERENCESCOPYAPPVALUE
 
-/* 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
+
+/* Define to 1 if you have the `clock_settime' function. */
+#undef HAVE_CLOCK_SETTIME
 
 /* Define to 1 if you have the <crtdefs.h> header file. */
 #undef HAVE_CRTDEFS_H
    */
 #undef HAVE_DECL_ALARM
 
+/* Define to 1 if you have the declaration of `ecvt', and to 0 if you don't.
+   */
+#undef HAVE_DECL_ECVT
+
+/* Define to 1 if you have the declaration of `execvpe', and to 0 if you
+   don't. */
+#undef HAVE_DECL_EXECVPE
+
+/* Define to 1 if you have the declaration of `fcloseall', and to 0 if you
+   don't. */
+#undef HAVE_DECL_FCLOSEALL
+
+/* Define to 1 if you have the declaration of `fcvt', and to 0 if you don't.
+   */
+#undef HAVE_DECL_FCVT
+
+/* Define to 1 if you have the declaration of `gcvt', and to 0 if you don't.
+   */
+#undef HAVE_DECL_GCVT
+
 /* Define to 1 if you have the declaration of `getdtablesize', and to 0 if you
    don't. */
 #undef HAVE_DECL_GETDTABLESIZE
    don't. */
 #undef HAVE_DECL_WCRTOMB
 
+/* Define to 1 if you have the declaration of `wcsdup', and to 0 if you don't.
+   */
+#undef HAVE_DECL_WCSDUP
+
 /* Define to 1 if you have the declaration of `wctob', and to 0 if you don't.
    */
 #undef HAVE_DECL_WCTOB
 /* Define to 1 if you have the <dlfcn.h> header file. */
 #undef HAVE_DLFCN_H
 
-/* Define to 1 if you have the 'dup2' function. */
-#undef HAVE_DUP2
-
 /* Define to 1 if you have the `duplocale' function. */
 #undef HAVE_DUPLOCALE
 
 /* Define to 1 if you have the `getprogname' function. */
 #undef HAVE_GETPROGNAME
 
+/* Define to 1 if you have the `getrandom' function. */
+#undef HAVE_GETRANDOM
+
 /* Define if the GNU gettext() function is already present or preinstalled. */
 #undef HAVE_GETTEXT
 
 /* have readline */
 #undef HAVE_LIBREADLINE
 
+/* Define to 1 if the bcrypt library is guaranteed to be present. */
+#undef HAVE_LIB_BCRYPT
+
 /* Define to 1 if you have the <limits.h> header file. */
 #undef HAVE_LIMITS_H
 
 /* Define to 1 if you have the <priv.h> header file. */
 #undef HAVE_PRIV_H
 
+/* Define if you have the <pthread.h> header and the POSIX threads API. */
+#undef HAVE_PTHREAD_API
+
 /* Define to 1 if you have the `pthread_atfork' function. */
 #undef HAVE_PTHREAD_ATFORK
 
 /* Define to 1 if you have the <sched.h> header file. */
 #undef HAVE_SCHED_H
 
+/* Define to 1 if you have the <sdkddkver.h> header file. */
+#undef HAVE_SDKDDKVER_H
+
 /* Define to 1 if you have the <search.h> header file. */
 #undef HAVE_SEARCH_H
 
 /* Define to 1 if you have the <stdlib.h> header file. */
 #undef HAVE_STDLIB_H
 
-/* Define to 1 if you have the `strdup' function. */
-#undef HAVE_STRDUP
-
 /* Define to 1 if you have the `strerror_r' function. */
 #undef HAVE_STRERROR_R
 
 /* Define to 1 if you have the <sys/param.h> header file. */
 #undef HAVE_SYS_PARAM_H
 
+/* Define to 1 if you have the <sys/random.h> header file. */
+#undef HAVE_SYS_RANDOM_H
+
 /* Define to 1 if you have the <sys/select.h> header file. */
 #undef HAVE_SYS_SELECT_H
 
+/* Define to 1 if you have the <sys/single_threaded.h> header file. */
+#undef HAVE_SYS_SINGLE_THREADED_H
+
 /* Define to 1 if you have the <sys/socket.h> header file. */
 #undef HAVE_SYS_SOCKET_H
 
 /* Define to 1 if you have the <termcap.h> header file. */
 #undef HAVE_TERMCAP_H
 
+/* Define to 1 if you have the `thrd_create' function. */
+#undef HAVE_THRD_CREATE
+
 /* Define to 1 if you have the <threads.h> header file. */
 #undef HAVE_THREADS_H
 
 /* Define if you have a global __progname variable */
 #undef HAVE_VAR___PROGNAME
 
+/* Define to 1 or 0, depending whether the compiler supports simple visibility
+   declarations. */
+#undef HAVE_VISIBILITY
+
 /* Define to 1 if you have the <wchar.h> header file. */
 #undef HAVE_WCHAR_H
 
 /* Define to 1 if you have the <wctype.h> header file. */
 #undef HAVE_WCTYPE_H
 
+/* Define to 1 if the compiler and linker support weak declarations of
+   symbols. */
+#undef HAVE_WEAK_SYMBOLS
+
 /* Define to 1 if you have the <winsock2.h> header file. */
 #undef HAVE_WINSOCK2_H
 
 /* Define to 1 if the system has the type `_Bool'. */
 #undef HAVE__BOOL
 
+/* Define to 1 if you have the `_chsize' function. */
+#undef HAVE__CHSIZE
+
 /* Define to 1 if you have the `_set_invalid_parameter_handler' function. */
 #undef HAVE__SET_INVALID_PARAMETER_HANDLER
 
    */
 #undef MBRTOWC_EMPTY_INPUT_BUG
 
+/* Define if the mbrtowc function may signal encoding errors in the C locale.
+   */
+#undef MBRTOWC_IN_C_LOCALE_MAYBE_EILSEQ
+
 /* Define if the mbrtowc function has the NULL pwc argument bug. */
 #undef MBRTOWC_NULL_ARG1_BUG
 
 /* Define if the mbrtowc function returns a wrong return value. */
 #undef MBRTOWC_RETVAL_BUG
 
+/* Define if the mbrtowc function stores a wide character when reporting
+   incomplete input. */
+#undef MBRTOWC_STORES_INCOMPLETE_BUG
+
 /* Use GNU style printf and scanf.  */
 #ifndef __USE_MINGW_ANSI_STDIO
 # undef __USE_MINGW_ANSI_STDIO
 #endif
 
 
+/* Define to 1 on musl libc. */
+#undef MUSL_LIBC
+
 /* Define to 1 if assertions should be disabled. */
 #undef NDEBUG
 
+/* Define to 1 to enable general improvements of setlocale. */
+#undef NEED_SETLOCALE_IMPROVED
+
+/* Define to 1 to enable a multithread-safety fix of setlocale. */
+#undef NEED_SETLOCALE_MTSAFE
+
+/* Define to 1 if nl_langinfo is multithread-safe. */
+#undef NL_LANGINFO_MTSAFE
+
 /* Define to 1 if open() fails to recognize a trailing slash. */
 #undef OPEN_TRAILING_SLASH_BUG
 
 /* Define to the version of this package. */
 #undef PACKAGE_VERSION
 
-/* Define if <inttypes.h> exists and defines unusable PRI* macros. */
-#undef PRI_MACROS_BROKEN
-
 /* Define to the type that is the result of default argument promotions of
    type mode_t. */
 #undef PROMOTED_MODE_T
 /* Define to 1 if strerror(0) does not return a message implying success. */
 #undef REPLACE_STRERROR_0
 
+/* Define to 1 if setlocale (LC_ALL, NULL) is multithread-safe. */
+#undef SETLOCALE_NULL_ALL_MTSAFE
+
+/* Define to 1 if setlocale (category, NULL) is multithread-safe. */
+#undef SETLOCALE_NULL_ONE_MTSAFE
+
 /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
    'sig_atomic_t'. */
 #undef SIG_ATOMIC_T_SUFFIX
 /* If using the C implementation of alloca, define if you know the
    direction of stack growth for your system; otherwise it will be
    automatically deduced at runtime.
-       STACK_DIRECTION > 0 => grows toward higher addresses
-       STACK_DIRECTION < 0 => grows toward lower addresses
-       STACK_DIRECTION = 0 => direction of growth unknown */
+        STACK_DIRECTION > 0 => grows toward higher addresses
+        STACK_DIRECTION < 0 => grows toward lower addresses
+        STACK_DIRECTION = 0 => direction of growth unknown */
 #undef STACK_DIRECTION
 
 /* Define to 1 if the `S_IS*' macros in <sys/stat.h> do not work properly. */
 /* Define if you have sufficient blkid support. */
 #undef USE_BLKID
 
+/* Define if the combination of the ISO C and POSIX multithreading APIs can be
+   used. */
+#undef USE_ISOC_AND_POSIX_THREADS
+
+/* Define if the ISO C multithreading library can be used. */
+#undef USE_ISOC_THREADS
+
 /* Define if the POSIX multithreading library can be used. */
 #undef USE_POSIX_THREADS
 
    'wchar_t'. */
 #undef WCHAR_T_SUFFIX
 
+/* Define if the wcrtomb function does not work in the C locale. */
+#undef WCRTOMB_C_LOCALE_BUG
+
+/* Define if the wcrtomb function has an incorrect return value. */
+#undef WCRTOMB_RETVAL_BUG
+
 /* Define if WSAStartup is needed. */
 #undef WINDOWS_SOCKETS
 
 # endif
 #endif
 
-/* Enable large inode numbers on Mac OS X 10.5. */
-#undef _DARWIN_USE_64_BIT_INODE
-
 /* Number of bits in a file offset, on hosts where this is settable. */
 #undef _FILE_OFFSET_BITS
 
 /* enable compile-time and run-time bounds-checking, and some warnings */
 #undef _FORTIFY_SOURCE
 
+/* True if the compiler says it groks GNU C version MAJOR.MINOR.  */
+#if defined __GNUC__ && defined __GNUC_MINOR__
+# define _GL_GNUC_PREREQ(major, minor) \
+    ((major) < __GNUC__ + ((minor) <= __GNUC_MINOR__))
+#else
+# define _GL_GNUC_PREREQ(major, minor) 0
+#endif
+
+
 /* Define for large files, on AIX-style hosts. */
 #undef _LARGE_FILES
 
 #ifndef _Noreturn
 # if (defined __cplusplus \
       && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \
-          || (defined _MSC_VER && 1900 <= _MSC_VER)))
+          || (defined _MSC_VER && 1900 <= _MSC_VER)) \
+      && 0)
+    /* [[noreturn]] is not practically usable, because with it the syntax
+         extern _Noreturn void func (...);
+       would not be valid; such a declaration would only be valid with 'extern'
+       and '_Noreturn' swapped, or without the 'extern' keyword.  However, some
+       AIX system header files and several gnulib header files use precisely
+       this syntax with 'extern'.  */
 #  define _Noreturn [[noreturn]]
 # elif ((!defined __cplusplus || defined __clang__) \
         && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0)  \
-            || 4 < __GNUC__ + (7 <= __GNUC_MINOR__)))
+            || _GL_GNUC_PREREQ (4, 7) \
+            || (defined __apple_build_version__ \
+                ? 6000000 <= __apple_build_version__ \
+                : 3 < __clang_major__ + (5 <= __clang_minor__))))
    /* _Noreturn works as-is.  */
-# elif 2 < __GNUC__ + (8 <= __GNUC_MINOR__) || 0x5110 <= __SUNPRO_C
+# elif _GL_GNUC_PREREQ (2, 8) || defined __clang__ || 0x5110 <= __SUNPRO_C
 #  define _Noreturn __attribute__ ((__noreturn__))
 # elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0)
 #  define _Noreturn __declspec (noreturn)
 /* Define to 1 if you need to in order for 'stat' and other things to work. */
 #undef _POSIX_SOURCE
 
-/* For thread-safety on OSF/1, Solaris. */
-#undef _REENTRANT
-
 /* Define if you want <regex.h> to include <limits.h>, so that it consistently
    overrides <limits.h>'s RE_DUP_MAX. */
 #undef _REGEX_INCLUDE_LIMITS_H
 /* Define if you want regoff_t to be at least as wide POSIX requires. */
 #undef _REGEX_LARGE_OFFSETS
 
-/* For thread-safety on AIX, FreeBSD. */
-#undef _THREAD_SAFE
-
 /* For standard stat data types on VMS. */
 #undef _USE_STD_STAT
 
    invoked from such signal handlers.  Such functions have some restrictions:
      * All functions that it calls should be marked _GL_ASYNC_SAFE as well,
        or should be listed as async-signal-safe in POSIX
-       <http://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_04>
+       <https://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_04>
        section 2.4.3.  Note that malloc(), sprintf(), and fwrite(), in
        particular, are NOT async-signal-safe.
      * All memory locations (variables and struct fields) that these functions
 #define _GL_ASYNC_SAFE
 
 
+/* Attributes.  */
+#ifdef __has_attribute
+# define _GL_HAS_ATTRIBUTE(attr) __has_attribute (__##attr##__)
+#else
+# define _GL_HAS_ATTRIBUTE(attr) _GL_ATTR_##attr
+# define _GL_ATTR_alloc_size _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_always_inline _GL_GNUC_PREREQ (3, 2)
+# define _GL_ATTR_artificial _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_cold _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_const _GL_GNUC_PREREQ (2, 95)
+# define _GL_ATTR_deprecated _GL_GNUC_PREREQ (3, 1)
+# define _GL_ATTR_diagnose_if 0
+# define _GL_ATTR_error _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_externally_visible _GL_GNUC_PREREQ (4, 1)
+# define _GL_ATTR_fallthrough _GL_GNUC_PREREQ (7, 0)
+# define _GL_ATTR_format _GL_GNUC_PREREQ (2, 7)
+# define _GL_ATTR_leaf _GL_GNUC_PREREQ (4, 6)
+# ifdef _ICC
+#  define _GL_ATTR_may_alias 0
+# else
+#  define _GL_ATTR_may_alias _GL_GNUC_PREREQ (3, 3)
+# endif
+# define _GL_ATTR_malloc _GL_GNUC_PREREQ (3, 0)
+# define _GL_ATTR_noinline _GL_GNUC_PREREQ (3, 1)
+# define _GL_ATTR_nonnull _GL_GNUC_PREREQ (3, 3)
+# define _GL_ATTR_nonstring _GL_GNUC_PREREQ (8, 0)
+# define _GL_ATTR_nothrow _GL_GNUC_PREREQ (3, 3)
+# define _GL_ATTR_packed _GL_GNUC_PREREQ (2, 7)
+# define _GL_ATTR_pure _GL_GNUC_PREREQ (2, 96)
+# define _GL_ATTR_returns_nonnull _GL_GNUC_PREREQ (4, 9)
+# define _GL_ATTR_sentinel _GL_GNUC_PREREQ (4, 0)
+# define _GL_ATTR_unused _GL_GNUC_PREREQ (2, 7)
+# define _GL_ATTR_warn_unused_result _GL_GNUC_PREREQ (3, 4)
+#endif
+
+
+#if _GL_HAS_ATTRIBUTE (alloc_size)
+# define _GL_ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args))
+#else
+# define _GL_ATTRIBUTE_ALLOC_SIZE(args)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (always_inline)
+# define _GL_ATTRIBUTE_ALWAYS_INLINE __attribute__ ((__always_inline__))
+#else
+# define _GL_ATTRIBUTE_ALWAYS_INLINE
+#endif
+
+#if _GL_HAS_ATTRIBUTE (artificial)
+# define _GL_ATTRIBUTE_ARTIFICIAL __attribute__ ((__artificial__))
+#else
+# define _GL_ATTRIBUTE_ARTIFICIAL
+#endif
+
+/* Avoid __attribute__ ((cold)) on MinGW; see thread starting at
+   <https://lists.gnu.org/r/emacs-devel/2019-04/msg01152.html>.
+   Also, Oracle Studio 12.6 requires 'cold' not '__cold__'.  */
+#if _GL_HAS_ATTRIBUTE (cold) && !defined __MINGW32__
+# ifndef __SUNPRO_C
+#  define _GL_ATTRIBUTE_COLD __attribute__ ((__cold__))
+# else
+#  define _GL_ATTRIBUTE_COLD __attribute__ ((cold))
+# endif
+#else
+# define _GL_ATTRIBUTE_COLD
+#endif
+
+#if _GL_HAS_ATTRIBUTE (const)
+# define _GL_ATTRIBUTE_CONST __attribute__ ((__const__))
+#else
+# define _GL_ATTRIBUTE_CONST
+#endif
+
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_DEPRECATED [[__deprecated__]]
+#elif _GL_HAS_ATTRIBUTE (deprecated)
+# define _GL_ATTRIBUTE_DEPRECATED __attribute__ ((__deprecated__))
+#else
+# define _GL_ATTRIBUTE_DEPRECATED
+#endif
+
+#if _GL_HAS_ATTRIBUTE (error)
+# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__error__ (msg)))
+# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__warning__ (msg)))
+#elif _GL_HAS_ATTRIBUTE (diagnose_if)
+# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__diagnose_if__ (1, msg, "error")))
+# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__diagnose_if__ (1, msg, "warning")))
+#else
+# define _GL_ATTRIBUTE_ERROR(msg)
+# define _GL_ATTRIBUTE_WARNING(msg)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (externally_visible)
+# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE __attribute__ ((externally_visible))
+#else
+# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE
+#endif
+
+/* FALLTHROUGH is special, because it always expands to something.  */
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_FALLTHROUGH [[__fallthrough__]]
+#elif _GL_HAS_ATTRIBUTE (fallthrough)
+# define _GL_ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__))
+#else
+# define _GL_ATTRIBUTE_FALLTHROUGH ((void) 0)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (format)
+# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
+#else
+# define _GL_ATTRIBUTE_FORMAT(spec)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (leaf)
+# define _GL_ATTRIBUTE_LEAF __attribute__ ((__leaf__))
+#else
+# define _GL_ATTRIBUTE_LEAF
+#endif
+
+/* Oracle Studio 12.6 mishandles may_alias despite __has_attribute OK.  */
+#if _GL_HAS_ATTRIBUTE (may_alias) && !defined __SUNPRO_C
+# define _GL_ATTRIBUTE_MAY_ALIAS __attribute__ ((__may_alias__))
+#else
+# define _GL_ATTRIBUTE_MAY_ALIAS
+#endif
+
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]]
+#elif _GL_HAS_ATTRIBUTE (unused)
+# define _GL_ATTRIBUTE_MAYBE_UNUSED __attribute__ ((__unused__))
+#else
+# define _GL_ATTRIBUTE_MAYBE_UNUSED
+#endif
+/* Earlier spellings of this macro.  */
+#define _GL_UNUSED _GL_ATTRIBUTE_MAYBE_UNUSED
+#define _UNUSED_PARAMETER_ _GL_ATTRIBUTE_MAYBE_UNUSED
+
+#if _GL_HAS_ATTRIBUTE (malloc)
+# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__))
+#else
+# define _GL_ATTRIBUTE_MALLOC
+#endif
+
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]]
+#elif _GL_HAS_ATTRIBUTE (warn_unused_result)
+# define _GL_ATTRIBUTE_NODISCARD __attribute__ ((__warn_unused_result__))
+#else
+# define _GL_ATTRIBUTE_NODISCARD
+#endif
+
+#if _GL_HAS_ATTRIBUTE (noinline)
+# define _GL_ATTRIBUTE_NOINLINE __attribute__ ((__noinline__))
+#else
+# define _GL_ATTRIBUTE_NOINLINE
+#endif
+
+#if _GL_HAS_ATTRIBUTE (nonnull)
+# define _GL_ATTRIBUTE_NONNULL(args) __attribute__ ((__nonnull__ args))
+#else
+# define _GL_ATTRIBUTE_NONNULL(args)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (nonstring)
+# define _GL_ATTRIBUTE_NONSTRING __attribute__ ((__nonstring__))
+#else
+# define _GL_ATTRIBUTE_NONSTRING
+#endif
+
+/* There is no _GL_ATTRIBUTE_NORETURN; use _Noreturn instead.  */
+
+#if _GL_HAS_ATTRIBUTE (nothrow) && !defined __cplusplus
+# define _GL_ATTRIBUTE_NOTHROW __attribute__ ((__nothrow__))
+#else
+# define _GL_ATTRIBUTE_NOTHROW
+#endif
+
+#if _GL_HAS_ATTRIBUTE (packed)
+# define _GL_ATTRIBUTE_PACKED __attribute__ ((__packed__))
+#else
+# define _GL_ATTRIBUTE_PACKED
+#endif
+
+#if _GL_HAS_ATTRIBUTE (pure)
+# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
+#else
+# define _GL_ATTRIBUTE_PURE
+#endif
+
+#if _GL_HAS_ATTRIBUTE (returns_nonnull)
+# define _GL_ATTRIBUTE_RETURNS_NONNULL __attribute__ ((__returns_nonnull__))
+#else
+# define _GL_ATTRIBUTE_RETURNS_NONNULL
+#endif
+
+#if _GL_HAS_ATTRIBUTE (sentinel)
+# define _GL_ATTRIBUTE_SENTINEL(pos) __attribute__ ((__sentinel__ pos))
+#else
+# define _GL_ATTRIBUTE_SENTINEL(pos)
+#endif
+
+
+/* To support C++ as well as C, use _GL_UNUSED_LABEL with trailing ';'.  */
+#if !defined __cplusplus || _GL_GNUC_PREREQ (4, 5)
+# define _GL_UNUSED_LABEL _GL_ATTRIBUTE_MAYBE_UNUSED
+#else
+# define _GL_UNUSED_LABEL
+#endif
+
+
 /* Define to empty if `const' does not conform to ANSI C. */
 #undef const
 
      https://lists.gnu.org/r/bug-gnulib/2012-12/msg00023.html
 
      DragonFly; see
-     http://muscles.dragonflybsd.org/bulk/bleeding-edge-potential/latest-per-pkg/ah-tty-0.3.12.log
+     http://muscles.dragonflybsd.org/bulk/clang-master-potential/20141111_102002/logs/ah-tty-0.3.12.log
 
      FreeBSD; see:
      https://lists.gnu.org/r/bug-gnulib/2014-07/msg00104.html
 /* Define to a type if <wchar.h> does not define. */
 #undef mbstate_t
 
+/* _GL_CMP (n1, n2) performs a three-valued comparison on n1 vs. n2, where
+   n1 and n2 are expressions without side effects, that evaluate to real
+   numbers (excluding NaN).
+   It returns
+     1  if n1 > n2
+     0  if n1 == n2
+     -1 if n1 < n2
+   The naïve code   (n1 > n2 ? 1 : n1 < n2 ? -1 : 0)  produces a conditional
+   jump with nearly all GCC versions up to GCC 10.
+   This variant     (n1 < n2 ? -1 : n1 > n2)  produces a conditional with many
+   GCC versions up to GCC 9.
+   The better code  (n1 > n2) - (n1 < n2)  from Hacker's Delight § 2-9
+   avoids conditional jumps in all GCC versions >= 3.4.  */
+#define _GL_CMP(n1, n2) (((n1) > (n2)) - ((n1) < (n2)))
+
+
 /* Define to `int' if <sys/types.h> does not define. */
 #undef mode_t
 
 /* Define to the type of st_nlink in struct stat, or a supertype. */
 #undef nlink_t
 
-/* Define to `int' if <sys/types.h> does not define. */
+/* Define as a signed integer type capable of holding a process identifier. */
 #undef pid_t
 
 /* Define to rpl_re_comp if the replacement should be used. */
    nothing if this is not supported.  Do not define if restrict is
    supported directly.  */
 #undef restrict
-/* Work around a bug in Sun C++: it does not support _Restrict or
-   __restrict__, even though the corresponding Sun C compiler ends up with
-   "#define restrict _Restrict" or "#define restrict __restrict__" in the
-   previous line.  Perhaps some future version of Sun C++ will work with
-   restrict; if so, hopefully it defines __RESTRICT like Sun C does.  */
-#if defined __SUNPRO_CC && !defined __RESTRICT
+/* Work around a bug in older versions of Sun C++, which did not
+   #define __restrict__ or support _Restrict or __restrict__
+   even though the corresponding Sun C compiler ended up with
+   "#define restrict _Restrict" or "#define restrict __restrict__"
+   in the previous line.  This workaround can be removed once
+   we assume Oracle Developer Studio 12.5 (2016) or later.  */
+#if defined __SUNPRO_CC && !defined __RESTRICT && !defined __restrict__
 # define _Restrict
 # define __restrict__
 #endif
 /* Define to `int' if <sys/types.h> doesn't define. */
 #undef uid_t
 
-/* Define as a marker that can be attached to declarations that might not
-    be used.  This helps to reduce warnings, such as from
-    GCC -Wunused-parameter.  */
-#if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
-# define _GL_UNUSED __attribute__ ((__unused__))
-#else
-# define _GL_UNUSED
-#endif
-/* The name _UNUSED_PARAMETER_ is an earlier spelling, although the name
-   is a misnomer outside of parameter lists.  */
-#define _UNUSED_PARAMETER_ _GL_UNUSED
-
-/* gcc supports the "unused" attribute on possibly unused labels, and
-   g++ has since version 4.5.  Note to support C++ as well as C,
-   _GL_UNUSED_LABEL should be used with a trailing ;  */
-#if !defined __cplusplus || __GNUC__ > 4 \
-    || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5)
-# define _GL_UNUSED_LABEL _GL_UNUSED
-#else
-# define _GL_UNUSED_LABEL
-#endif
-
-/* The __pure__ attribute was added in gcc 2.96.  */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)
-# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
-#else
-# define _GL_ATTRIBUTE_PURE /* empty */
-#endif
-
-/* The __const__ attribute was added in gcc 2.95.  */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
-# define _GL_ATTRIBUTE_CONST __attribute__ ((__const__))
-#else
-# define _GL_ATTRIBUTE_CONST /* empty */
-#endif
-
-/* The __malloc__ attribute was added in gcc 3.  */
-#if 3 <= __GNUC__
-# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__))
-#else
-# define _GL_ATTRIBUTE_MALLOC /* empty */
-#endif
-
-
 /* Define to an unsigned 32-bit type if <sys/types.h> lacks this type. */
 #undef useconds_t
 
index 7cf89d8cf80e2d21c81c954a22e6de6cdf916b3d..27d4374c2e71712d64268273b1cdb5b84fe673c3 100644 (file)
@@ -1,6 +1,6 @@
 /* dirname.c -- return all but the last element in a file name
 
-   Copyright (C) 1990, 1998, 2000-2001, 2003-2006, 2009-2019 Free Software
+   Copyright (C) 1990, 1998, 2000-2001, 2003-2006, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
index 1e042a5cdc9643c7568219390b1b55f9ca4225e3..dc1997c810dd496fcd04d2d77ec713508863b436 100644 (file)
@@ -1,6 +1,6 @@
 /* dirname.c -- return all but the last element in a file name
 
-   Copyright (C) 1990, 1998, 2000-2001, 2003-2006, 2009-2019 Free Software
+   Copyright (C) 1990, 1998, 2000-2001, 2003-2006, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
index 579165947f742be281df8dba3bc658b585a9ab07..b2a91fd53544b998b50983120662b38fe74001ce 100644 (file)
@@ -1,6 +1,6 @@
 /*  Take file names apart into directory and base names.
 
-    Copyright (C) 1998, 2001, 2003-2006, 2009-2019 Free Software Foundation,
+    Copyright (C) 1998, 2001, 2003-2006, 2009-2020 Free Software Foundation,
     Inc.
 
     This program is free software: you can redistribute it and/or modify
 
 # include <stdbool.h>
 # include <stddef.h>
-# include "dosname.h"
+# include "filename.h"
+# include "basename-lgpl.h"
 
 # ifndef DIRECTORY_SEPARATOR
 #  define DIRECTORY_SEPARATOR '/'
 # endif
 
-# ifndef DOUBLE_SLASH_IS_DISTINCT_ROOT
-#  define DOUBLE_SLASH_IS_DISTINCT_ROOT 0
-# endif
-
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -41,9 +38,7 @@ char *dir_name (char const *file);
 # endif
 
 char *mdir_name (char const *file);
-size_t base_len (char const *file) _GL_ATTRIBUTE_PURE;
 size_t dir_len (char const *file) _GL_ATTRIBUTE_PURE;
-char *last_component (char const *file) _GL_ATTRIBUTE_PURE;
 
 bool strip_trailing_slashes (char *file);
 
diff --git a/lib/dosname.h b/lib/dosname.h
deleted file mode 100644 (file)
index c0ab684..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-/* File names on MS-DOS/Windows systems.
-
-   Copyright (C) 2000-2001, 2004-2006, 2009-2019 Free Software Foundation, Inc.
-
-   This program is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 3 of the License, or
-   (at your option) any later version.
-
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program.  If not, see <https://www.gnu.org/licenses/>.
-
-   From Paul Eggert and Jim Meyering.  */
-
-#ifndef _DOSNAME_H
-#define _DOSNAME_H
-
-#if (defined _WIN32 || defined __CYGWIN__ \
-     || defined __EMX__ || defined __MSDOS__ || defined __DJGPP__)
-   /* This internal macro assumes ASCII, but all hosts that support drive
-      letters use ASCII.  */
-# define _IS_DRIVE_LETTER(C) (((unsigned int) (C) | ('a' - 'A')) - 'a'  \
-                              <= 'z' - 'a')
-# define FILE_SYSTEM_PREFIX_LEN(Filename) \
-          (_IS_DRIVE_LETTER ((Filename)[0]) && (Filename)[1] == ':' ? 2 : 0)
-# ifndef __CYGWIN__
-#  define FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE 1
-# endif
-# define ISSLASH(C) ((C) == '/' || (C) == '\\')
-#else
-# define FILE_SYSTEM_PREFIX_LEN(Filename) 0
-# define ISSLASH(C) ((C) == '/')
-#endif
-
-#ifndef FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE
-# define FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE 0
-#endif
-
-#if FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE
-#  define IS_ABSOLUTE_FILE_NAME(F) ISSLASH ((F)[FILE_SYSTEM_PREFIX_LEN (F)])
-# else
-#  define IS_ABSOLUTE_FILE_NAME(F)                              \
-     (ISSLASH ((F)[0]) || FILE_SYSTEM_PREFIX_LEN (F) != 0)
-#endif
-#define IS_RELATIVE_FILE_NAME(F) (! IS_ABSOLUTE_FILE_NAME (F))
-
-#endif /* DOSNAME_H_ */
diff --git a/lib/dup2.c b/lib/dup2.c
new file mode 100644 (file)
index 0000000..323e19b
--- /dev/null
@@ -0,0 +1,189 @@
+/* Duplicate an open file descriptor to a specified file descriptor.
+
+   Copyright (C) 1999, 2004-2007, 2009-2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+/* written by Paul Eggert */
+
+#include <config.h>
+
+/* Specification.  */
+#include <unistd.h>
+
+#include <errno.h>
+#include <fcntl.h>
+
+#undef dup2
+
+#if defined _WIN32 && ! defined __CYGWIN__
+
+/* Get declarations of the native Windows API functions.  */
+# define WIN32_LEAN_AND_MEAN
+# include <windows.h>
+
+# if HAVE_MSVC_INVALID_PARAMETER_HANDLER
+#  include "msvc-inval.h"
+# endif
+
+/* Get _get_osfhandle.  */
+# if GNULIB_MSVC_NOTHROW
+#  include "msvc-nothrow.h"
+# else
+#  include <io.h>
+# endif
+
+# if HAVE_MSVC_INVALID_PARAMETER_HANDLER
+static int
+dup2_nothrow (int fd, int desired_fd)
+{
+  int result;
+
+  TRY_MSVC_INVAL
+    {
+      result = _dup2 (fd, desired_fd);
+    }
+  CATCH_MSVC_INVAL
+    {
+      errno = EBADF;
+      result = -1;
+    }
+  DONE_MSVC_INVAL;
+
+  return result;
+}
+# else
+#  define dup2_nothrow _dup2
+# endif
+
+static int
+ms_windows_dup2 (int fd, int desired_fd)
+{
+  int result;
+
+  /* If fd is closed, mingw hangs on dup2 (fd, fd).  If fd is open,
+     dup2 (fd, fd) returns 0, but all further attempts to use fd in
+     future dup2 calls will hang.  */
+  if (fd == desired_fd)
+    {
+      if ((HANDLE) _get_osfhandle (fd) == INVALID_HANDLE_VALUE)
+        {
+          errno = EBADF;
+          return -1;
+        }
+      return fd;
+    }
+
+  /* Wine 1.0.1 return 0 when desired_fd is negative but not -1:
+     https://bugs.winehq.org/show_bug.cgi?id=21289 */
+  if (desired_fd < 0)
+    {
+      errno = EBADF;
+      return -1;
+    }
+
+  result = dup2_nothrow (fd, desired_fd);
+
+  if (result == 0)
+    result = desired_fd;
+
+  return result;
+}
+
+# define dup2 ms_windows_dup2
+
+#elif defined __KLIBC__
+
+# include <InnoTekLIBC/backend.h>
+
+static int
+klibc_dup2dirfd (int fd, int desired_fd)
+{
+  int tempfd;
+  int dupfd;
+
+  tempfd = open ("NUL", O_RDONLY);
+  if (tempfd == -1)
+    return -1;
+
+  if (tempfd == desired_fd)
+    {
+      close (tempfd);
+
+      char path[_MAX_PATH];
+      if (__libc_Back_ioFHToPath (fd, path, sizeof (path)))
+        return -1;
+
+      return open(path, O_RDONLY);
+    }
+
+  dupfd = klibc_dup2dirfd (fd, desired_fd);
+
+  close (tempfd);
+
+  return dupfd;
+}
+
+static int
+klibc_dup2 (int fd, int desired_fd)
+{
+  int dupfd;
+  struct stat sbuf;
+
+  dupfd = dup2 (fd, desired_fd);
+  if (dupfd == -1 && errno == ENOTSUP \
+      && !fstat (fd, &sbuf) && S_ISDIR (sbuf.st_mode))
+    {
+      close (desired_fd);
+
+      return klibc_dup2dirfd (fd, desired_fd);
+    }
+
+  return dupfd;
+}
+
+# define dup2 klibc_dup2
+#endif
+
+int
+rpl_dup2 (int fd, int desired_fd)
+{
+  int result;
+
+#ifdef F_GETFL
+  /* On Linux kernels 2.6.26-2.6.29, dup2 (fd, fd) returns -EBADF.
+     On Cygwin 1.5.x, dup2 (1, 1) returns 0.
+     On Cygwin 1.7.17, dup2 (1, -1) dumps core.
+     On Cygwin 1.7.25, dup2 (1, 256) can dump core.
+     On Haiku, dup2 (fd, fd) mistakenly clears FD_CLOEXEC.  */
+# if HAVE_SETDTABLESIZE
+  setdtablesize (desired_fd + 1);
+# endif
+  if (desired_fd < 0)
+    fd = desired_fd;
+  if (fd == desired_fd)
+    return fcntl (fd, F_GETFL) == -1 ? -1 : fd;
+#endif
+
+  result = dup2 (fd, desired_fd);
+
+  /* Correct an errno value on FreeBSD 6.1 and Cygwin 1.5.x.  */
+  if (result == -1 && errno == EMFILE)
+    errno = EBADF;
+#if REPLACE_FCHDIR
+  if (fd != desired_fd && result != -1)
+    result = _gl_register_dup (fd, result);
+#endif
+  return result;
+}
index 3bd27f1cc9fb7e555aa3b048b0e3bc3aebd1bf40..c27e0c7ddee34c6c2ec8ac993e178cf85dfe06ee 100644 (file)
@@ -1,6 +1,6 @@
 /* A POSIX-like <errno.h>.
 
-   Copyright (C) 2008-2019 Free Software Foundation, Inc.
+   Copyright (C) 2008-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index f8ab668963386cee6902b1045a7a5cecffd82538..2fc7901b309714f0201dcb8a45eb5725f2309197 100644 (file)
@@ -1,5 +1,5 @@
 /* Error handler for noninteractive utilities
-   Copyright (C) 1990-1998, 2000-2007, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 1990-1998, 2000-2007, 2009-2020 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
@@ -40,7 +40,7 @@
 # include <wchar.h>
 # define mbsrtowcs __mbsrtowcs
 # define USE_UNLOCKED_IO 0
-# define _GL_ATTRIBUTE_FORMAT_PRINTF(a, b)
+# define _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD(a, b)
 # define _GL_ARG_NONNULL(a)
 #else
 # include "getprogname.h"
@@ -202,7 +202,7 @@ print_errno_message (int errnum)
 #endif
 }
 
-static void _GL_ATTRIBUTE_FORMAT_PRINTF (3, 0) _GL_ARG_NONNULL ((3))
+static void _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (3, 0) _GL_ARG_NONNULL ((3))
 error_tail (int status, int errnum, const char *message, va_list args)
 {
 #if _LIBC
index 3759f8ad44e9a01f467093ebb8b1990f4f7b3d18..6f6c90e4027a9f5cdaf014fa36aced3b09aff7c3 100644 (file)
@@ -1,5 +1,5 @@
 /* Declaration for error-reporting function
-   Copyright (C) 1995-1997, 2003, 2006, 2008-2019 Free Software Foundation,
+   Copyright (C) 1995-1997, 2003, 2006, 2008-2020 Free Software Foundation,
    Inc.
    This file is part of the GNU C Library.
 
 #ifndef _ERROR_H
 #define _ERROR_H 1
 
-/* The __attribute__ feature is available in gcc versions 2.5 and later.
-   The __-protected variants of the attributes 'format' and 'printf' are
-   accepted by gcc versions 2.6.4 (effectively 2.7) and later.
-   We enable _GL_ATTRIBUTE_FORMAT only if these are supported too, because
-   gnulib and libintl do '#define printf __printf__' when they override
-   the 'printf' function.  */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
-# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
-#else
-# define _GL_ATTRIBUTE_FORMAT(spec) /* empty */
-#endif
-
-/* On mingw, the flavor of printf depends on whether the extensions module
- * is in use; the check for <stdio.h> determines the witness macro.  */
-#ifndef _GL_ATTRIBUTE_SPEC_PRINTF
-# if GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU
-#  define _GL_ATTRIBUTE_SPEC_PRINTF __gnu_printf__
-# else
-#  define _GL_ATTRIBUTE_SPEC_PRINTF __printf__
-# endif
-#endif
+/* Get _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, _GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM.  */
+#include <stdio.h>
 
 #ifdef __cplusplus
 extern "C" {
@@ -50,11 +31,21 @@ extern "C" {
    If STATUS is nonzero, terminate the program with 'exit (STATUS)'.  */
 
 extern void error (int __status, int __errnum, const char *__format, ...)
-     _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF, 3, 4));
+#if GNULIB_VFPRINTF_POSIX
+     _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, 3, 4))
+#else
+     _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM, 3, 4))
+#endif
+     ;
 
 extern void error_at_line (int __status, int __errnum, const char *__fname,
                            unsigned int __lineno, const char *__format, ...)
-     _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF, 5, 6));
+#if GNULIB_VFPRINTF_POSIX
+     _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, 5, 6))
+#else
+     _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM, 5, 6))
+#endif
+     ;
 
 /* If NULL, error will flush stdout, then print on stderr the program
    name, a colon and a space.  Otherwise, error will call this
index 69b351372e5b4013d912694da24b62c8bc4c4b11..189fa16f46a83c3d8afd8c507deb1e0697c2ace2 100644 (file)
@@ -1,6 +1,6 @@
 /* Failure exit status
 
-   Copyright (C) 2002-2003, 2005-2007, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2002-2003, 2005-2007, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 480ad1a1663d303243be2483973d62d8c73bb034..a69a03bbd5b7a6507f115c3c05e5dd9d3148e080 100644 (file)
@@ -1,6 +1,6 @@
 /* Failure exit status
 
-   Copyright (C) 2002, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
diff --git a/lib/fcntl.c b/lib/fcntl.c
new file mode 100644 (file)
index 0000000..59bb3ca
--- /dev/null
@@ -0,0 +1,629 @@
+/* Provide file descriptor control.
+
+   Copyright (C) 2009-2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+/* Written by Eric Blake <ebb9@byu.net>.  */
+
+#include <config.h>
+
+/* Specification.  */
+#include <fcntl.h>
+
+#include <errno.h>
+#include <limits.h>
+#include <stdarg.h>
+#include <stdlib.h>
+#include <unistd.h>
+
+#ifdef __KLIBC__
+# define INCL_DOS
+# include <os2.h>
+#endif
+
+#if defined _WIN32 && ! defined __CYGWIN__
+/* Get declarations of the native Windows API functions.  */
+# define WIN32_LEAN_AND_MEAN
+# include <windows.h>
+
+/* Get _get_osfhandle.  */
+# if GNULIB_MSVC_NOTHROW
+#  include "msvc-nothrow.h"
+# else
+#  include <io.h>
+# endif
+
+/* Upper bound on getdtablesize().  See lib/getdtablesize.c.  */
+# define OPEN_MAX_MAX 0x10000
+
+/* Duplicate OLDFD into the first available slot of at least NEWFD,
+   which must be positive, with FLAGS determining whether the duplicate
+   will be inheritable.  */
+static int
+dupfd (int oldfd, int newfd, int flags)
+{
+  /* Mingw has no way to create an arbitrary fd.  Iterate until all
+     file descriptors less than newfd are filled up.  */
+  HANDLE curr_process = GetCurrentProcess ();
+  HANDLE old_handle = (HANDLE) _get_osfhandle (oldfd);
+  unsigned char fds_to_close[OPEN_MAX_MAX / CHAR_BIT];
+  unsigned int fds_to_close_bound = 0;
+  int result;
+  BOOL inherit = flags & O_CLOEXEC ? FALSE : TRUE;
+  int mode;
+
+  if (newfd < 0 || getdtablesize () <= newfd)
+    {
+      errno = EINVAL;
+      return -1;
+    }
+  if (old_handle == INVALID_HANDLE_VALUE
+      || (mode = _setmode (oldfd, O_BINARY)) == -1)
+    {
+      /* oldfd is not open, or is an unassigned standard file
+         descriptor.  */
+      errno = EBADF;
+      return -1;
+    }
+  _setmode (oldfd, mode);
+  flags |= mode;
+
+  for (;;)
+    {
+      HANDLE new_handle;
+      int duplicated_fd;
+      unsigned int index;
+
+      if (!DuplicateHandle (curr_process,           /* SourceProcessHandle */
+                            old_handle,             /* SourceHandle */
+                            curr_process,           /* TargetProcessHandle */
+                            (PHANDLE) &new_handle,  /* TargetHandle */
+                            (DWORD) 0,              /* DesiredAccess */
+                            inherit,                /* InheritHandle */
+                            DUPLICATE_SAME_ACCESS)) /* Options */
+        {
+          switch (GetLastError ())
+            {
+              case ERROR_TOO_MANY_OPEN_FILES:
+                errno = EMFILE;
+                break;
+              case ERROR_INVALID_HANDLE:
+              case ERROR_INVALID_TARGET_HANDLE:
+              case ERROR_DIRECT_ACCESS_HANDLE:
+                errno = EBADF;
+                break;
+              case ERROR_INVALID_PARAMETER:
+              case ERROR_INVALID_FUNCTION:
+              case ERROR_INVALID_ACCESS:
+                errno = EINVAL;
+                break;
+              default:
+                errno = EACCES;
+                break;
+            }
+          result = -1;
+          break;
+        }
+      duplicated_fd = _open_osfhandle ((intptr_t) new_handle, flags);
+      if (duplicated_fd < 0)
+        {
+          CloseHandle (new_handle);
+          result = -1;
+          break;
+        }
+      if (newfd <= duplicated_fd)
+        {
+          result = duplicated_fd;
+          break;
+        }
+
+      /* Set the bit duplicated_fd in fds_to_close[].  */
+      index = (unsigned int) duplicated_fd / CHAR_BIT;
+      if (fds_to_close_bound <= index)
+        {
+          if (sizeof fds_to_close <= index)
+            /* Need to increase OPEN_MAX_MAX.  */
+            abort ();
+          memset (fds_to_close + fds_to_close_bound, '\0',
+                  index + 1 - fds_to_close_bound);
+          fds_to_close_bound = index + 1;
+        }
+      fds_to_close[index] |= 1 << ((unsigned int) duplicated_fd % CHAR_BIT);
+    }
+
+  /* Close the previous fds that turned out to be too small.  */
+  {
+    int saved_errno = errno;
+    unsigned int duplicated_fd;
+
+    for (duplicated_fd = 0;
+         duplicated_fd < fds_to_close_bound * CHAR_BIT;
+         duplicated_fd++)
+      if ((fds_to_close[duplicated_fd / CHAR_BIT]
+           >> (duplicated_fd % CHAR_BIT))
+          & 1)
+        close (duplicated_fd);
+
+    errno = saved_errno;
+  }
+
+# if REPLACE_FCHDIR
+  if (0 <= result)
+    result = _gl_register_dup (oldfd, result);
+# endif
+  return result;
+}
+#endif /* W32 */
+
+/* Forward declarations, because we '#undef fcntl' in the middle of this
+   compilation unit.  */
+/* Our implementation of fcntl (fd, F_DUPFD, target).  */
+static int rpl_fcntl_DUPFD (int fd, int target);
+/* Our implementation of fcntl (fd, F_DUPFD_CLOEXEC, target).  */
+static int rpl_fcntl_DUPFD_CLOEXEC (int fd, int target);
+#ifdef __KLIBC__
+/* Adds support for fcntl on directories.  */
+static int klibc_fcntl (int fd, int action, /* arg */...);
+#endif
+
+
+/* Perform the specified ACTION on the file descriptor FD, possibly
+   using the argument ARG further described below.  This replacement
+   handles the following actions, and forwards all others on to the
+   native fcntl.  An unrecognized ACTION returns -1 with errno set to
+   EINVAL.
+
+   F_DUPFD - duplicate FD, with int ARG being the minimum target fd.
+   If successful, return the duplicate, which will be inheritable;
+   otherwise return -1 and set errno.
+
+   F_DUPFD_CLOEXEC - duplicate FD, with int ARG being the minimum
+   target fd.  If successful, return the duplicate, which will not be
+   inheritable; otherwise return -1 and set errno.
+
+   F_GETFD - ARG need not be present.  If successful, return a
+   non-negative value containing the descriptor flags of FD (only
+   FD_CLOEXEC is portable, but other flags may be present); otherwise
+   return -1 and set errno.  */
+
+int
+fcntl (int fd, int action, /* arg */...)
+#undef fcntl
+#ifdef __KLIBC__
+# define fcntl klibc_fcntl
+#endif
+{
+  va_list arg;
+  int result = -1;
+  va_start (arg, action);
+  switch (action)
+    {
+    case F_DUPFD:
+      {
+        int target = va_arg (arg, int);
+        result = rpl_fcntl_DUPFD (fd, target);
+        break;
+      }
+
+    case F_DUPFD_CLOEXEC:
+      {
+        int target = va_arg (arg, int);
+        result = rpl_fcntl_DUPFD_CLOEXEC (fd, target);
+        break;
+      }
+
+#if !HAVE_FCNTL
+    case F_GETFD:
+      {
+# if defined _WIN32 && ! defined __CYGWIN__
+        HANDLE handle = (HANDLE) _get_osfhandle (fd);
+        DWORD flags;
+        if (handle == INVALID_HANDLE_VALUE
+            || GetHandleInformation (handle, &flags) == 0)
+          errno = EBADF;
+        else
+          result = (flags & HANDLE_FLAG_INHERIT) ? 0 : FD_CLOEXEC;
+# else /* !W32 */
+        /* Use dup2 to reject invalid file descriptors.  No way to
+           access this information, so punt.  */
+        if (0 <= dup2 (fd, fd))
+          result = 0;
+# endif /* !W32 */
+        break;
+      } /* F_GETFD */
+#endif /* !HAVE_FCNTL */
+
+      /* Implementing F_SETFD on mingw is not trivial - there is no
+         API for changing the O_NOINHERIT bit on an fd, and merely
+         changing the HANDLE_FLAG_INHERIT bit on the underlying handle
+         can lead to odd state.  It may be possible by duplicating the
+         handle, using _open_osfhandle with the right flags, then
+         using dup2 to move the duplicate onto the original, but that
+         is not supported for now.  */
+
+    default:
+      {
+#if HAVE_FCNTL
+        switch (action)
+          {
+          #ifdef F_BARRIERFSYNC                  /* macOS */
+          case F_BARRIERFSYNC:
+          #endif
+          #ifdef F_CHKCLEAN                      /* macOS */
+          case F_CHKCLEAN:
+          #endif
+          #ifdef F_CLOSEM                        /* NetBSD, HP-UX */
+          case F_CLOSEM:
+          #endif
+          #ifdef F_FLUSH_DATA                    /* macOS */
+          case F_FLUSH_DATA:
+          #endif
+          #ifdef F_FREEZE_FS                     /* macOS */
+          case F_FREEZE_FS:
+          #endif
+          #ifdef F_FULLFSYNC                     /* macOS */
+          case F_FULLFSYNC:
+          #endif
+          #ifdef F_GETCONFINED                   /* macOS */
+          case F_GETCONFINED:
+          #endif
+          #ifdef F_GETDEFAULTPROTLEVEL           /* macOS */
+          case F_GETDEFAULTPROTLEVEL:
+          #endif
+          #ifdef F_GETFD                         /* POSIX */
+          case F_GETFD:
+          #endif
+          #ifdef F_GETFL                         /* POSIX */
+          case F_GETFL:
+          #endif
+          #ifdef F_GETLEASE                      /* Linux */
+          case F_GETLEASE:
+          #endif
+          #ifdef F_GETNOSIGPIPE                  /* macOS */
+          case F_GETNOSIGPIPE:
+          #endif
+          #ifdef F_GETOWN                        /* POSIX */
+          case F_GETOWN:
+          #endif
+          #ifdef F_GETPIPE_SZ                    /* Linux */
+          case F_GETPIPE_SZ:
+          #endif
+          #ifdef F_GETPROTECTIONCLASS            /* macOS */
+          case F_GETPROTECTIONCLASS:
+          #endif
+          #ifdef F_GETPROTECTIONLEVEL            /* macOS */
+          case F_GETPROTECTIONLEVEL:
+          #endif
+          #ifdef F_GET_SEALS                     /* Linux */
+          case F_GET_SEALS:
+          #endif
+          #ifdef F_GETSIG                        /* Linux */
+          case F_GETSIG:
+          #endif
+          #ifdef F_MAXFD                         /* NetBSD */
+          case F_MAXFD:
+          #endif
+          #ifdef F_RECYCLE                       /* macOS */
+          case F_RECYCLE:
+          #endif
+          #ifdef F_SETFIFOENH                    /* HP-UX */
+          case F_SETFIFOENH:
+          #endif
+          #ifdef F_THAW_FS                       /* macOS */
+          case F_THAW_FS:
+          #endif
+            /* These actions take no argument.  */
+            result = fcntl (fd, action);
+            break;
+
+          #ifdef F_ADD_SEALS                     /* Linux */
+          case F_ADD_SEALS:
+          #endif
+          #ifdef F_BADFD                         /* Solaris */
+          case F_BADFD:
+          #endif
+          #ifdef F_CHECK_OPENEVT                 /* macOS */
+          case F_CHECK_OPENEVT:
+          #endif
+          #ifdef F_DUP2FD                        /* FreeBSD, AIX, Solaris */
+          case F_DUP2FD:
+          #endif
+          #ifdef F_DUP2FD_CLOEXEC                /* FreeBSD, Solaris */
+          case F_DUP2FD_CLOEXEC:
+          #endif
+          #ifdef F_DUP2FD_CLOFORK                /* Solaris */
+          case F_DUP2FD_CLOFORK:
+          #endif
+          #ifdef F_DUPFD                         /* POSIX */
+          case F_DUPFD:
+          #endif
+          #ifdef F_DUPFD_CLOEXEC                 /* POSIX */
+          case F_DUPFD_CLOEXEC:
+          #endif
+          #ifdef F_DUPFD_CLOFORK                 /* Solaris */
+          case F_DUPFD_CLOFORK:
+          #endif
+          #ifdef F_GETXFL                        /* Solaris */
+          case F_GETXFL:
+          #endif
+          #ifdef F_GLOBAL_NOCACHE                /* macOS */
+          case F_GLOBAL_NOCACHE:
+          #endif
+          #ifdef F_MAKECOMPRESSED                /* macOS */
+          case F_MAKECOMPRESSED:
+          #endif
+          #ifdef F_MOVEDATAEXTENTS               /* macOS */
+          case F_MOVEDATAEXTENTS:
+          #endif
+          #ifdef F_NOCACHE                       /* macOS */
+          case F_NOCACHE:
+          #endif
+          #ifdef F_NODIRECT                      /* macOS */
+          case F_NODIRECT:
+          #endif
+          #ifdef F_NOTIFY                        /* Linux */
+          case F_NOTIFY:
+          #endif
+          #ifdef F_OPLKACK                       /* IRIX */
+          case F_OPLKACK:
+          #endif
+          #ifdef F_OPLKREG                       /* IRIX */
+          case F_OPLKREG:
+          #endif
+          #ifdef F_RDAHEAD                       /* macOS */
+          case F_RDAHEAD:
+          #endif
+          #ifdef F_SETBACKINGSTORE               /* macOS */
+          case F_SETBACKINGSTORE:
+          #endif
+          #ifdef F_SETCONFINED                   /* macOS */
+          case F_SETCONFINED:
+          #endif
+          #ifdef F_SETFD                         /* POSIX */
+          case F_SETFD:
+          #endif
+          #ifdef F_SETFL                         /* POSIX */
+          case F_SETFL:
+          #endif
+          #ifdef F_SETLEASE                      /* Linux */
+          case F_SETLEASE:
+          #endif
+          #ifdef F_SETNOSIGPIPE                  /* macOS */
+          case F_SETNOSIGPIPE:
+          #endif
+          #ifdef F_SETOWN                        /* POSIX */
+          case F_SETOWN:
+          #endif
+          #ifdef F_SETPIPE_SZ                    /* Linux */
+          case F_SETPIPE_SZ:
+          #endif
+          #ifdef F_SETPROTECTIONCLASS            /* macOS */
+          case F_SETPROTECTIONCLASS:
+          #endif
+          #ifdef F_SETSIG                        /* Linux */
+          case F_SETSIG:
+          #endif
+          #ifdef F_SINGLE_WRITER                 /* macOS */
+          case F_SINGLE_WRITER:
+          #endif
+            /* These actions take an 'int' argument.  */
+            {
+              int x = va_arg (arg, int);
+              result = fcntl (fd, action, x);
+            }
+            break;
+
+          default:
+            /* Other actions take a pointer argument.  */
+            {
+              void *p = va_arg (arg, void *);
+              result = fcntl (fd, action, p);
+            }
+            break;
+          }
+#else
+        errno = EINVAL;
+#endif
+        break;
+      }
+    }
+  va_end (arg);
+  return result;
+}
+
+static int
+rpl_fcntl_DUPFD (int fd, int target)
+{
+  int result;
+#if !HAVE_FCNTL
+  result = dupfd (fd, target, 0);
+#elif FCNTL_DUPFD_BUGGY || REPLACE_FCHDIR
+  /* Detect invalid target; needed for cygwin 1.5.x.  */
+  if (target < 0 || getdtablesize () <= target)
+    {
+      result = -1;
+      errno = EINVAL;
+    }
+  else
+    {
+      /* Haiku alpha 2 loses fd flags on original.  */
+      int flags = fcntl (fd, F_GETFD);
+      if (flags < 0)
+        result = -1;
+      else
+        {
+          result = fcntl (fd, F_DUPFD, target);
+          if (0 <= result && fcntl (fd, F_SETFD, flags) == -1)
+            {
+              int saved_errno = errno;
+              close (result);
+              result = -1;
+              errno = saved_errno;
+            }
+# if REPLACE_FCHDIR
+          if (0 <= result)
+            result = _gl_register_dup (fd, result);
+# endif
+        }
+    }
+#else
+  result = fcntl (fd, F_DUPFD, target);
+#endif
+  return result;
+}
+
+static int
+rpl_fcntl_DUPFD_CLOEXEC (int fd, int target)
+{
+  int result;
+#if !HAVE_FCNTL
+  result = dupfd (fd, target, O_CLOEXEC);
+#else /* HAVE_FCNTL */
+# if defined __NetBSD__ || defined __HAIKU__
+  /* On NetBSD 9.0, the system fcntl (fd, F_DUPFD_CLOEXEC, target)
+     has only the same effect as fcntl (fd, F_DUPFD, target).  */
+  /* On Haiku, the system fcntl (fd, F_DUPFD_CLOEXEC, target) sets
+     the FD_CLOEXEC flag on fd, not on target.  Therefore avoid the
+     system fcntl in this case.  */
+#  define have_dupfd_cloexec -1
+# else
+  /* Try the system call first, if the headers claim it exists
+     (that is, if GNULIB_defined_F_DUPFD_CLOEXEC is 0), since we
+     may be running with a glibc that has the macro but with an
+     older kernel that does not support it.  Cache the
+     information on whether the system call really works, but
+     avoid caching failure if the corresponding F_DUPFD fails
+     for any reason.  0 = unknown, 1 = yes, -1 = no.  */
+  static int have_dupfd_cloexec = GNULIB_defined_F_DUPFD_CLOEXEC ? -1 : 0;
+  if (0 <= have_dupfd_cloexec)
+    {
+      result = fcntl (fd, F_DUPFD_CLOEXEC, target);
+      if (0 <= result || errno != EINVAL)
+        {
+          have_dupfd_cloexec = 1;
+#  if REPLACE_FCHDIR
+          if (0 <= result)
+            result = _gl_register_dup (fd, result);
+#  endif
+        }
+      else
+        {
+          result = rpl_fcntl_DUPFD (fd, target);
+          if (result >= 0)
+            have_dupfd_cloexec = -1;
+        }
+    }
+  else
+# endif
+    result = rpl_fcntl_DUPFD (fd, target);
+  if (0 <= result && have_dupfd_cloexec == -1)
+    {
+      int flags = fcntl (result, F_GETFD);
+      if (flags < 0 || fcntl (result, F_SETFD, flags | FD_CLOEXEC) == -1)
+        {
+          int saved_errno = errno;
+          close (result);
+          errno = saved_errno;
+          result = -1;
+        }
+    }
+#endif /* HAVE_FCNTL */
+  return result;
+}
+
+#undef fcntl
+
+#ifdef __KLIBC__
+
+static int
+klibc_fcntl (int fd, int action, /* arg */...)
+{
+  va_list arg_ptr;
+  int arg;
+  struct stat sbuf;
+  int result;
+
+  va_start (arg_ptr, action);
+  arg = va_arg (arg_ptr, int);
+  result = fcntl (fd, action, arg);
+  /* EPERM for F_DUPFD, ENOTSUP for others */
+  if (result == -1 && (errno == EPERM || errno == ENOTSUP)
+      && !fstat (fd, &sbuf) && S_ISDIR (sbuf.st_mode))
+    {
+      ULONG ulMode;
+
+      switch (action)
+        {
+        case F_DUPFD:
+          /* Find available fd */
+          while (fcntl (arg, F_GETFL) != -1 || errno != EBADF)
+            arg++;
+
+          result = dup2 (fd, arg);
+          break;
+
+        /* Using underlying APIs is right ? */
+        case F_GETFD:
+          if (DosQueryFHState (fd, &ulMode))
+            break;
+
+          result = (ulMode & OPEN_FLAGS_NOINHERIT) ? FD_CLOEXEC : 0;
+          break;
+
+        case F_SETFD:
+          if (arg & ~FD_CLOEXEC)
+            break;
+
+          if (DosQueryFHState (fd, &ulMode))
+            break;
+
+          if (arg & FD_CLOEXEC)
+            ulMode |= OPEN_FLAGS_NOINHERIT;
+          else
+            ulMode &= ~OPEN_FLAGS_NOINHERIT;
+
+          /* Filter supported flags.  */
+          ulMode &= (OPEN_FLAGS_WRITE_THROUGH | OPEN_FLAGS_FAIL_ON_ERROR
+                     | OPEN_FLAGS_NO_CACHE | OPEN_FLAGS_NOINHERIT);
+
+          if (DosSetFHState (fd, ulMode))
+            break;
+
+          result = 0;
+          break;
+
+        case F_GETFL:
+          result = 0;
+          break;
+
+        case F_SETFL:
+          if (arg != 0)
+            break;
+
+          result = 0;
+          break;
+
+        default:
+          errno = EINVAL;
+          break;
+        }
+    }
+
+  va_end (arg_ptr);
+
+  return result;
+}
+
+#endif
index eb70dc61eca744ffe29614b969bf666850acd9ed..11c9aae9bcc4db4d10f1f0758aec73760a82bc0f 100644 (file)
@@ -1,6 +1,6 @@
 /* Like <fcntl.h>, but with non-working flags defined to 0.
 
-   Copyright (C) 2006-2019 Free Software Foundation, Inc.
+   Copyright (C) 2006-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 #endif
 #@INCLUDE_NEXT@ @NEXT_FCNTL_H@
 
+/* Native Windows platforms declare open(), creat() in <io.h>.  */
+#if (@GNULIB_CREAT@ || @GNULIB_OPEN@ || defined GNULIB_POSIXCHECK) \
+    && (defined _WIN32 && ! defined __CYGWIN__)
+# include <io.h>
+#endif
+
 #else
 /* Normal invocation convention.  */
 
 /* The include_next requires a split double-inclusion guard.  */
 #@INCLUDE_NEXT@ @NEXT_FCNTL_H@
 
+/* Native Windows platforms declare open(), creat() in <io.h>.  */
+#if (@GNULIB_CREAT@ || @GNULIB_OPEN@ || defined GNULIB_POSIXCHECK) \
+    && (defined _WIN32 && ! defined __CYGWIN__)
+# include <io.h>
+#endif
+
 #ifndef _@GUARD_PREFIX@_FCNTL_H
 #define _@GUARD_PREFIX@_FCNTL_H
 
 # include <unistd.h>
 #endif
 
-/* Native Windows platforms declare open(), creat() in <io.h>.  */
-#if (@GNULIB_OPEN@ || defined GNULIB_POSIXCHECK) \
-    && (defined _WIN32 && ! defined __CYGWIN__)
-# include <io.h>
-#endif
-
 
 /* The definitions of _GL_FUNCDECL_RPL etc. are copied here.  */
 
 
 /* Declare overridden functions.  */
 
+#if @GNULIB_CREAT@
+# if @REPLACE_CREAT@
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef creat
+#   define creat rpl_creat
+#  endif
+_GL_FUNCDECL_RPL (creat, int, (const char *filename, mode_t mode)
+                             _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (creat, int, (const char *filename, mode_t mode));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef creat
+#   define creat _creat
+#  endif
+_GL_CXXALIAS_MDA (creat, int, (const char *filename, mode_t mode));
+# else
+_GL_CXXALIAS_SYS (creat, int, (const char *filename, mode_t mode));
+# endif
+_GL_CXXALIASWARN (creat);
+#elif defined GNULIB_POSIXCHECK
+# undef creat
+/* Assume creat is always declared.  */
+_GL_WARN_ON_USE (creat, "creat is not always POSIX compliant - "
+                 "use gnulib module creat for portability");
+#else
+/* On native Windows, map 'creat' to '_creat', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::creat always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef creat
+#   define creat _creat
+#  endif
+/* Need to cast, because in mingw the last argument is 'int mode'.  */
+_GL_CXXALIAS_MDA_CAST (creat, int, (const char *filename, mode_t mode));
+# else
+_GL_CXXALIAS_SYS (creat, int, (const char *filename, mode_t mode));
+# endif
+_GL_CXXALIASWARN (creat);
+#endif
+
 #if @GNULIB_FCNTL@
 # if @REPLACE_FCNTL@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #  endif
 _GL_FUNCDECL_RPL (fcntl, int, (int fd, int action, ...));
 _GL_CXXALIAS_RPL (fcntl, int, (int fd, int action, ...));
+#  if !GNULIB_defined_rpl_fcntl
+#   define GNULIB_defined_rpl_fcntl 1
+#  endif
 # else
 #  if !@HAVE_FCNTL@
 _GL_FUNCDECL_SYS (fcntl, int, (int fd, int action, ...));
+#   if !GNULIB_defined_fcntl
+#    define GNULIB_defined_fcntl 1
+#   endif
 #  endif
 _GL_CXXALIAS_SYS (fcntl, int, (int fd, int action, ...));
 # endif
@@ -114,6 +167,12 @@ _GL_WARN_ON_USE (fcntl, "fcntl is not always POSIX compliant - "
 _GL_FUNCDECL_RPL (open, int, (const char *filename, int flags, ...)
                              _GL_ARG_NONNULL ((1)));
 _GL_CXXALIAS_RPL (open, int, (const char *filename, int flags, ...));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef open
+#   define open _open
+#  endif
+_GL_CXXALIAS_MDA (open, int, (const char *filename, int flags, ...));
 # else
 _GL_CXXALIAS_SYS (open, int, (const char *filename, int flags, ...));
 # endif
@@ -127,6 +186,22 @@ _GL_CXXALIASWARN (open);
 /* Assume open is always declared.  */
 _GL_WARN_ON_USE (open, "open is not always POSIX compliant - "
                  "use gnulib module open for portability");
+#else
+/* On native Windows, map 'open' to '_open', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::open always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef open
+#   define open _open
+#  endif
+_GL_CXXALIAS_MDA (open, int, (const char *filename, int flags, ...));
+# else
+_GL_CXXALIAS_SYS (open, int, (const char *filename, int flags, ...));
+# endif
+# if !defined __hpux
+_GL_CXXALIASWARN (open);
+# endif
 #endif
 
 #if @GNULIB_OPENAT@
index 78791198fa072b982db441acfcd516c4fa1fbe32..8840f634880a52db28e951d604a93723391147e1 100644 (file)
@@ -1,5 +1,5 @@
 /* Hook for making file descriptor functions close(), ioctl() extensible.
-   Copyright (C) 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2009-2020 Free Software Foundation, Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2009.
 
    This program is free software: you can redistribute it and/or modify it
index bf07f0068b7e55b4a5ef2457e11b2fb392fdd956..ed1a15a230c54490d3ec4f0859d0b3b947d0c4f4 100644 (file)
@@ -1,5 +1,5 @@
 /* Hook for making file descriptor functions close(), ioctl() extensible.
-   Copyright (C) 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published
index 3ba31059f696561ae389b4f3806d5aa07ca4cc90..4598fb1d6381a3c5a078800b7a598d429dbbef07 100644 (file)
@@ -1,5 +1,5 @@
 /* Basic filename support macros.
-   Copyright (C) 2001-2004, 2007-2019 Free Software Foundation, Inc.
+   Copyright (C) 2001-2004, 2007-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
 
+/* From Paul Eggert and Jim Meyering.  */
+
 #ifndef _FILENAME_H
 #define _FILENAME_H
 
+#include <string.h>
+
 #ifdef __cplusplus
 extern "C" {
 #endif
 
 
-/* Pathname support.
-   ISSLASH(C)           tests whether C is a directory separator character.
-   IS_ABSOLUTE_PATH(P)  tests whether P is an absolute path.  If it is not,
-                        it may be concatenated to a directory pathname.
-   IS_PATH_WITH_DIR(P)  tests whether P contains a directory specification.
+/* Filename support.
+   ISSLASH(C)                  tests whether C is a directory separator
+                               character.
+   HAS_DEVICE(Filename)        tests whether Filename contains a device
+                               specification.
+   FILE_SYSTEM_PREFIX_LEN(Filename)  length of the device specification
+                                     at the beginning of Filename,
+                                     index of the part consisting of
+                                     alternating components and slashes.
+   FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE
+                               1 when a non-empty device specification
+                               can be followed by an empty or relative
+                               part,
+                               0 when a non-empty device specification
+                               must be followed by a slash,
+                               0 when device specification don't exist.
+   IS_ABSOLUTE_FILE_NAME(Filename)
+                               tests whether Filename is independent of
+                               any notion of "current directory".
+   IS_RELATIVE_FILE_NAME(Filename)
+                               tests whether Filename may be concatenated
+                               to a directory filename.
+   Note: On native Windows, OS/2, DOS, "c:" is neither an absolute nor a
+   relative file name!
+   IS_FILE_NAME_WITH_DIR(Filename)  tests whether Filename contains a device
+                                    or directory specification.
  */
-#if defined _WIN32 || defined __CYGWIN__ || defined __EMX__ || defined __DJGPP__
+#if defined _WIN32 || defined __CYGWIN__ \
+    || defined __EMX__ || defined __MSDOS__ || defined __DJGPP__
   /* Native Windows, Cygwin, OS/2, DOS */
 # define ISSLASH(C) ((C) == '/' || (C) == '\\')
-# define HAS_DEVICE(P) \
-    ((((P)[0] >= 'A' && (P)[0] <= 'Z') || ((P)[0] >= 'a' && (P)[0] <= 'z')) \
-     && (P)[1] == ':')
-# define IS_ABSOLUTE_PATH(P) (ISSLASH ((P)[0]) || HAS_DEVICE (P))
-# define IS_PATH_WITH_DIR(P) \
-    (strchr (P, '/') != NULL || strchr (P, '\\') != NULL || HAS_DEVICE (P))
-# define FILE_SYSTEM_PREFIX_LEN(P) (HAS_DEVICE (P) ? 2 : 0)
+  /* Internal macro: Tests whether a character is a drive letter.  */
+# define _IS_DRIVE_LETTER(C) \
+    (((C) >= 'A' && (C) <= 'Z') || ((C) >= 'a' && (C) <= 'z'))
+  /* Help the compiler optimizing it.  This assumes ASCII.  */
+# undef _IS_DRIVE_LETTER
+# define _IS_DRIVE_LETTER(C) \
+    (((unsigned int) (C) | ('a' - 'A')) - 'a' <= 'z' - 'a')
+# define HAS_DEVICE(Filename) \
+    (_IS_DRIVE_LETTER ((Filename)[0]) && (Filename)[1] == ':')
+# define FILE_SYSTEM_PREFIX_LEN(Filename) (HAS_DEVICE (Filename) ? 2 : 0)
+# ifdef __CYGWIN__
+#  define FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE 0
+# else
+   /* On native Windows, OS/2, DOS, the system has the notion of a
+      "current directory" on each drive.  */
+#  define FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE 1
+# endif
+# if FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE
+#  define IS_ABSOLUTE_FILE_NAME(Filename) \
+     ISSLASH ((Filename)[FILE_SYSTEM_PREFIX_LEN (Filename)])
+# else
+#  define IS_ABSOLUTE_FILE_NAME(Filename) \
+     (ISSLASH ((Filename)[0]) || HAS_DEVICE (Filename))
+# endif
+# define IS_RELATIVE_FILE_NAME(Filename) \
+    (! (ISSLASH ((Filename)[0]) || HAS_DEVICE (Filename)))
+# define IS_FILE_NAME_WITH_DIR(Filename) \
+    (strchr ((Filename), '/') != NULL || strchr ((Filename), '\\') != NULL \
+     || HAS_DEVICE (Filename))
 #else
   /* Unix */
 # define ISSLASH(C) ((C) == '/')
-# define IS_ABSOLUTE_PATH(P) ISSLASH ((P)[0])
-# define IS_PATH_WITH_DIR(P) (strchr (P, '/') != NULL)
-# define FILE_SYSTEM_PREFIX_LEN(P) 0
+# define HAS_DEVICE(Filename) ((void) (Filename), 0)
+# define FILE_SYSTEM_PREFIX_LEN(Filename) ((void) (Filename), 0)
+# define FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE 0
+# define IS_ABSOLUTE_FILE_NAME(Filename) ISSLASH ((Filename)[0])
+# define IS_RELATIVE_FILE_NAME(Filename) (! ISSLASH ((Filename)[0]))
+# define IS_FILE_NAME_WITH_DIR(Filename) (strchr ((Filename), '/') != NULL)
 #endif
 
+/* Deprecated macros.  For backward compatibility with old users of the
+   'filename' module.  */
+#define IS_ABSOLUTE_PATH IS_ABSOLUTE_FILE_NAME
+#define IS_PATH_WITH_DIR IS_FILE_NAME_WITH_DIR
+
 
 #ifdef __cplusplus
 }
index 3c01285bb83751f2961f93c17a24abf690b9ce90..836a3a988bf4ae87a44089043ca2787c5f1117ae 100644 (file)
@@ -1,5 +1,5 @@
 /* fpending.c -- return the number of pending output bytes on a stream
-   Copyright (C) 2000, 2004, 2006-2007, 2009-2019 Free Software Foundation,
+   Copyright (C) 2000, 2004, 2006-2007, 2009-2020 Free Software Foundation,
    Inc.
 
    This program is free software: you can redistribute it and/or modify
@@ -25,7 +25,8 @@
 #include "stdio-impl.h"
 
 /* This file is not used on systems that already have the __fpending function,
-   namely glibc >= 2.2, Solaris >= 7, Android API >= 23.  */
+   namely glibc >= 2.2, Solaris >= 7, UnixWare >= 7.1.4.MP4, Cygwin >= 1.7.34,
+   Android API >= 23.  */
 
 /* Return the number of pending (aka buffered, unflushed)
    bytes on the stream, FP, that is open for writing.  */
@@ -39,13 +40,13 @@ __fpending (FILE *fp)
   /* GNU libc, BeOS, Haiku, Linux libc5 */
   return fp->_IO_write_ptr - fp->_IO_write_base;
 #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
-  /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
+  /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin < 1.7.34, Minix 3, Android */
   return fp->_p - fp->_bf._base;
 #elif defined __EMX__                /* emx+gcc */
   return fp->_ptr - fp->_buffer;
 #elif defined __minix                /* Minix */
   return fp_->_ptr - fp_->_buf;
-#elif defined _IOERR                 /* AIX, HP-UX, IRIX, OSF/1, Solaris, OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */
+#elif defined _IOERR                 /* AIX, HP-UX, IRIX, OSF/1, Solaris, OpenServer, UnixWare, mingw, MSVC, NonStop Kernel, OpenVMS */
   return (fp_->_ptr ? fp_->_ptr - fp_->_base : 0);
 #elif defined __UCLIBC__             /* uClibc */
   return (fp->__modeflags & __FLAG_WRITING ? fp->__bufpos - fp->__bufstart : 0);
index 097a3ef0717faf628922922a8b030906abae2326..a8b8859726d38bb167d175b96e133bae535e73a5 100644 (file)
@@ -1,6 +1,6 @@
 /* Declare __fpending.
 
-   Copyright (C) 2000, 2003, 2005-2006, 2009-2019 Free Software Foundation,
+   Copyright (C) 2000, 2003, 2005-2006, 2009-2020 Free Software Foundation,
    Inc.
 
    This program is free software: you can redistribute it and/or modify
index a892b8ff7fae49660df1c5f18516f3d64ad02ee3..235014a4c566006ea600579b33196fd7d3f30f46 100644 (file)
@@ -1,5 +1,5 @@
 /* fstat() replacement.
-   Copyright (C) 2011-2019 Free Software Foundation, Inc.
+   Copyright (C) 2011-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index bfb6d28a5cf487cb9aa687c3104dc935cb4897e4..2298aad3db3e8a66aef249c9af49c7a5ec1b07f1 100644 (file)
@@ -7,7 +7,7 @@
 
    Written by Richard W.M. Jones <rjones.at.redhat.com>
 
-   Copyright (C) 2008-2019 Free Software Foundation, Inc.
+   Copyright (C) 2008-2020 Free Software Foundation, Inc.
 
    This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU General Public
diff --git a/lib/getdtablesize.c b/lib/getdtablesize.c
new file mode 100644 (file)
index 0000000..0fe7092
--- /dev/null
@@ -0,0 +1,124 @@
+/* getdtablesize() function: Return maximum possible file descriptor value + 1.
+   Copyright (C) 2008-2020 Free Software Foundation, Inc.
+   Written by Bruno Haible <bruno@clisp.org>, 2008.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+#include <config.h>
+
+/* Specification.  */
+#include <unistd.h>
+
+#if defined _WIN32 && ! defined __CYGWIN__
+
+# include <stdio.h>
+
+# if HAVE_MSVC_INVALID_PARAMETER_HANDLER
+#  include "msvc-inval.h"
+# endif
+
+# if HAVE_MSVC_INVALID_PARAMETER_HANDLER
+static int
+_setmaxstdio_nothrow (int newmax)
+{
+  int result;
+
+  TRY_MSVC_INVAL
+    {
+      result = _setmaxstdio (newmax);
+    }
+  CATCH_MSVC_INVAL
+    {
+      result = -1;
+    }
+  DONE_MSVC_INVAL;
+
+  return result;
+}
+# else
+#  define _setmaxstdio_nothrow _setmaxstdio
+# endif
+
+/* Cache for the previous getdtablesize () result.  Safe to cache because
+   Windows also lacks setrlimit.  */
+static int dtablesize;
+
+int
+getdtablesize (void)
+{
+  if (dtablesize == 0)
+    {
+      /* We are looking for the number N such that the valid file descriptors
+         are 0..N-1.  It can be obtained through a loop as follows:
+           {
+             int fd;
+             for (fd = 3; fd < 65536; fd++)
+               if (dup2 (0, fd) == -1)
+                 break;
+             return fd;
+           }
+         On Windows XP, the result is 2048.
+         The drawback of this loop is that it allocates memory for a libc
+         internal array that is never freed.
+
+         The number N can also be obtained as the upper bound for
+         _getmaxstdio ().  _getmaxstdio () returns the maximum number of open
+         FILE objects.  The sanity check in _setmaxstdio reveals the maximum
+         number of file descriptors.  This too allocates memory, but it is
+         freed when we call _setmaxstdio with the original value.  */
+      int orig_max_stdio = _getmaxstdio ();
+      unsigned int bound;
+      for (bound = 0x10000; _setmaxstdio_nothrow (bound) < 0; bound = bound / 2)
+        ;
+      _setmaxstdio_nothrow (orig_max_stdio);
+      dtablesize = bound;
+    }
+  return dtablesize;
+}
+
+#else
+
+# include <limits.h>
+# include <sys/resource.h>
+
+# ifndef RLIM_SAVED_CUR
+#  define RLIM_SAVED_CUR RLIM_INFINITY
+# endif
+# ifndef RLIM_SAVED_MAX
+#  define RLIM_SAVED_MAX RLIM_INFINITY
+# endif
+
+# ifdef __CYGWIN__
+  /* Cygwin 1.7.25 auto-increases the RLIMIT_NOFILE soft limit until it
+     hits the compile-time constant hard limit of 3200.  We might as
+     well just report the hard limit.  */
+#  define rlim_cur rlim_max
+# endif
+
+int
+getdtablesize (void)
+{
+  struct rlimit lim;
+
+  if (getrlimit (RLIMIT_NOFILE, &lim) == 0
+      && 0 <= lim.rlim_cur && lim.rlim_cur <= INT_MAX
+      && lim.rlim_cur != RLIM_INFINITY
+      && lim.rlim_cur != RLIM_SAVED_CUR
+      && lim.rlim_cur != RLIM_SAVED_MAX)
+    return lim.rlim_cur;
+
+  return INT_MAX;
+}
+
+#endif
index 049145b38699d4a6a72371ad51141c7479ac6265..674838c666a90054a568158ce4d6f3b4e237ada8 100644 (file)
@@ -1,5 +1,5 @@
 /* getopt-on-non-glibc compatibility macros.
-   Copyright (C) 1989-2019 Free Software Foundation, Inc.
+   Copyright (C) 1989-2020 Free Software Foundation, Inc.
    This file is part of gnulib.
    Unlike most of the getopt implementation, it is NOT shared
    with the GNU C Library.
@@ -57,7 +57,7 @@
 #endif
 
 #ifndef __THROW
-# if defined __cplusplus && __GNUC_PREREQ (2,8)
+# if defined __cplusplus && (__GNUC_PREREQ (2,8) || __clang_major__ >= 4)
 #  define __THROW       throw ()
 # else
 #  define __THROW
index 6360ad6942e41b57b164c7eb5ecabfb0c7a1ad66..d4d942ef2217b00fed09513697b0a3d2f241f536 100644 (file)
@@ -1,5 +1,5 @@
 /* Declarations for getopt (basic, portable features only).
-   Copyright (C) 1989-2019 Free Software Foundation, Inc.
+   Copyright (C) 1989-2020 Free Software Foundation, Inc.
    This file is part of the GNU C Library and is also part of gnulib.
    Patches to this file should be submitted to both projects.
 
index 13cb0077beff344211a97e77ea9e6525406f4e3b..05f7083ac6a1275f9ea430ed9f7a687044196872 100644 (file)
@@ -1,5 +1,5 @@
 /* Declarations for getopt (GNU extensions).
-   Copyright (C) 1989-2019 Free Software Foundation, Inc.
+   Copyright (C) 1989-2020 Free Software Foundation, Inc.
    This file is part of the GNU C Library and is also part of gnulib.
    Patches to this file should be submitted to both projects.
 
index 8fac2691e8587bc017ba1ec5cd47b99f291874ca..ec545c1b51c8ea56a9e680d5ecfc4f9d1013d8e1 100644 (file)
@@ -1,5 +1,5 @@
 /* getopt (basic, portable features) gnulib wrapper header.
-   Copyright (C) 1989-2019 Free Software Foundation, Inc.
+   Copyright (C) 1989-2020 Free Software Foundation, Inc.
    This file is part of gnulib.
    Unlike most of the getopt implementation, it is NOT shared
    with the GNU C Library.
 # define optind __GETOPT_ID (optind)
 # define optopt __GETOPT_ID (optopt)
 
+/* Work around a a problem on macOS, which declares getopt with a
+   trailing __DARWIN_ALIAS(getopt) that would expand to something like
+   __asm("_" "rpl_getopt" "$UNIX2003") were it not for the following
+   hack to suppress the macOS declaration <https://bugs.gnu.org/40205>.  */
+# ifdef __APPLE__
+#  define _GETOPT
+# endif
+
 /* The system's getopt.h may have already included getopt-core.h to
    declare the unprefixed identifiers.  Undef _GETOPT_CORE_H so that
    getopt-core.h declares them with prefixes.  */
index 0e21aefb0b7c8096a86caeb913b3c458be98bd1a..647fae63522ba9fe798fb60d47ed1292317b10b7 100644 (file)
@@ -1,5 +1,5 @@
 /* getopt (GNU extensions) gnulib wrapper header.
-   Copyright (C) 1989-2019 Free Software Foundation, Inc.
+   Copyright (C) 1989-2020 Free Software Foundation, Inc.
    This file is part of gnulib.
    Unlike most of the getopt implementation, it is NOT shared
    with the GNU C Library.
index 8ee075a8091ca804571e6afe611f984cf7bb05a7..a6389d8ea9bbad15bacf7a9f20b58b6eeb10d30a 100644 (file)
@@ -1,5 +1,5 @@
 /* Getopt for GNU.
-   Copyright (C) 1987-2019 Free Software Foundation, Inc.
+   Copyright (C) 1987-2020 Free Software Foundation, Inc.
    This file is part of the GNU C Library and is also part of gnulib.
    Patches to this file should be submitted to both projects.
 
index c77f34ce587a24dc6c64662b2fe654e497939a1a..36e04bb088377ed734a9f5bc172cb0c13ae85685 100644 (file)
@@ -1,5 +1,5 @@
 /* Declarations for getopt.
-   Copyright (C) 1989-2019 Free Software Foundation, Inc.
+   Copyright (C) 1989-2020 Free Software Foundation, Inc.
    This file is part of gnulib.
    Unlike most of the getopt implementation, it is NOT shared
    with the GNU C Library, which supplies a different version of
index 883aa6bbc91694b789d9a46996a611c2123aa8c0..0902efe68e3807ddd206306619115748e50f2293 100644 (file)
@@ -1,5 +1,5 @@
 /* getopt_long and getopt_long_only entry points for GNU getopt.
-   Copyright (C) 1987-2019 Free Software Foundation, Inc.
+   Copyright (C) 1987-2020 Free Software Foundation, Inc.
    This file is part of the GNU C Library and is also part of gnulib.
    Patches to this file should be submitted to both projects.
 
index e63706f60ea3eaec4fcce644ebb2b005a6d75e97..afcd8a67fb2afbe4669430fde68b5ec0577f4c6d 100644 (file)
@@ -1,5 +1,5 @@
 /* Internal declarations for getopt.
-   Copyright (C) 1989-2019 Free Software Foundation, Inc.
+   Copyright (C) 1989-2020 Free Software Foundation, Inc.
    This file is part of the GNU C Library and is also part of gnulib.
    Patches to this file should be submitted to both projects.
 
index 22d71eb127e19934a32b7d62d4830bcd34947354..7199fbdeac397960e5fe4ebe34c86ae71cd31438 100644 (file)
@@ -1,5 +1,5 @@
 /* Program name management.
-   Copyright (C) 2016-2019 Free Software Foundation, Inc.
+   Copyright (C) 2016-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 # include <sys/procfs.h>
 #endif
 
-#include "dirname.h"
+#if defined __SCO_VERSION__ || defined __sysv5__
+# include <fcntl.h>
+# include <stdlib.h>
+# include <string.h>
+#endif
+
+#include "basename-lgpl.h"
 
 #ifndef HAVE_GETPROGNAME             /* not Mac OS X, FreeBSD, NetBSD, OpenBSD >= 5.4, Cygwin */
 char const *
@@ -223,7 +229,7 @@ getprogname (void)
   int fd;
 
   sprintf (filename, "/proc/pinfo/%d", (int) getpid ());
-  fd = open (filename, O_RDONLY);
+  fd = open (filename, O_RDONLY | O_CLOEXEC);
   if (0 <= fd)
     {
       prpsinfo_t buf;
@@ -233,17 +239,50 @@ getprogname (void)
         {
           char *name = buf.pr_fname;
           size_t namesize = sizeof buf.pr_fname;
+          /* It may not be NUL-terminated.  */
           char *namenul = memchr (name, '\0', namesize);
           size_t namelen = namenul ? namenul - name : namesize;
           char *namecopy = malloc (namelen + 1);
           if (namecopy)
             {
-              namecopy[namelen] = 0;
+              namecopy[namelen] = '\0';
               return memcpy (namecopy, name, namelen);
             }
         }
     }
   return NULL;
+# elif defined __SCO_VERSION__ || defined __sysv5__                /* SCO OpenServer6/UnixWare */
+  char buf[80];
+  int fd;
+  sprintf (buf, "/proc/%d/cmdline", getpid());
+  fd = open (buf, O_RDONLY);
+  if (0 <= fd)
+    {
+      size_t n = read (fd, buf, 79);
+      if (n > 0)
+        {
+          buf[n] = '\0'; /* Guarantee null-termination */
+          char *progname;
+          progname = strrchr (buf, '/');
+          if (progname)
+            {
+              progname = progname + 1; /* Skip the '/' */
+            }
+          else
+            {
+              progname = buf;
+            }
+          char *ret;
+          ret = malloc (strlen (progname) + 1);
+          if (ret)
+            {
+              strcpy (ret, progname);
+              return ret;
+            }
+        }
+      close (fd);
+    }
+  return "?";
 # else
 #  error "getprogname module not ported to this OS"
 # endif
index 1590b38d3f143bb69ef752defa4dea800db457d8..676912b4b84c77dc1d529e5dcc1be0069a20cfa6 100644 (file)
@@ -1,5 +1,5 @@
 /* Program name management.
-   Copyright (C) 2016-2019 Free Software Foundation, Inc.
+   Copyright (C) 2016-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
diff --git a/lib/getrandom.c b/lib/getrandom.c
new file mode 100644 (file)
index 0000000..f8695ab
--- /dev/null
@@ -0,0 +1,187 @@
+/* Obtain a series of random bytes.
+
+   Copyright 2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+/* Written by Paul Eggert.  */
+
+#include <config.h>
+
+#include <sys/random.h>
+
+#include <errno.h>
+#include <fcntl.h>
+#include <stdbool.h>
+#include <unistd.h>
+
+#if defined _WIN32 && ! defined __CYGWIN__
+# define WIN32_LEAN_AND_MEAN
+# include <windows.h>
+# if HAVE_BCRYPT_H
+#  include <bcrypt.h>
+# else
+#  define NTSTATUS LONG
+typedef void * BCRYPT_ALG_HANDLE;
+#  define BCRYPT_USE_SYSTEM_PREFERRED_RNG 0x00000002
+#  if HAVE_LIB_BCRYPT
+extern NTSTATUS WINAPI BCryptGenRandom (BCRYPT_ALG_HANDLE, UCHAR *, ULONG, ULONG);
+#  endif
+# endif
+# if !HAVE_LIB_BCRYPT
+#  include <wincrypt.h>
+#  ifndef CRYPT_VERIFY_CONTEXT
+#   define CRYPT_VERIFY_CONTEXT 0xF0000000
+#  endif
+# endif
+#endif
+
+#include "minmax.h"
+
+#if defined _WIN32 && ! defined __CYGWIN__
+
+/* Don't assume that UNICODE is not defined.  */
+# undef LoadLibrary
+# define LoadLibrary LoadLibraryA
+# undef CryptAcquireContext
+# define CryptAcquireContext CryptAcquireContextA
+
+# if !HAVE_LIB_BCRYPT
+
+/* Avoid warnings from gcc -Wcast-function-type.  */
+#  define GetProcAddress \
+    (void *) GetProcAddress
+
+/* BCryptGenRandom with the BCRYPT_USE_SYSTEM_PREFERRED_RNG flag works only
+   starting with Windows 7.  */
+typedef NTSTATUS (WINAPI * BCryptGenRandomFuncType) (BCRYPT_ALG_HANDLE, UCHAR *, ULONG, ULONG);
+static BCryptGenRandomFuncType BCryptGenRandomFunc = NULL;
+static BOOL initialized = FALSE;
+
+static void
+initialize (void)
+{
+  HMODULE bcrypt = LoadLibrary ("bcrypt.dll");
+  if (bcrypt != NULL)
+    {
+      BCryptGenRandomFunc =
+        (BCryptGenRandomFuncType) GetProcAddress (bcrypt, "BCryptGenRandom");
+    }
+  initialized = TRUE;
+}
+
+# else
+
+#  define BCryptGenRandomFunc BCryptGenRandom
+
+# endif
+
+#else
+/* These devices exist on all platforms except native Windows.  */
+
+/* Name of a device through which the kernel returns high quality random
+   numbers, from an entropy pool.  When the pool is empty, the call blocks
+   until entropy sources have added enough bits of entropy.  */
+# ifndef NAME_OF_RANDOM_DEVICE
+#  define NAME_OF_RANDOM_DEVICE "/dev/random"
+# endif
+
+/* Name of a device through which the kernel returns random or pseudo-random
+   numbers.  It uses an entropy pool, but, in order to avoid blocking, adds
+   bits generated by a pseudo-random number generator, as needed.  */
+# ifndef NAME_OF_NONCE_DEVICE
+#  define NAME_OF_NONCE_DEVICE "/dev/urandom"
+# endif
+
+#endif
+
+/* Set BUFFER (of size LENGTH) to random bytes under the control of FLAGS.
+   Return the number of bytes written (> 0).
+   Upon error, return -1 and set errno.  */
+ssize_t
+getrandom (void *buffer, size_t length, unsigned int flags)
+#undef getrandom
+{
+#if defined _WIN32 && ! defined __CYGWIN__
+  /* BCryptGenRandom, defined in <bcrypt.h>
+     <https://docs.microsoft.com/en-us/windows/win32/api/bcrypt/nf-bcrypt-bcryptgenrandom>
+     with the BCRYPT_USE_SYSTEM_PREFERRED_RNG flag
+     works in Windows 7 and newer.  */
+  static int bcrypt_not_working /* = 0 */;
+  if (!bcrypt_not_working)
+    {
+# if !HAVE_LIB_BCRYPT
+      if (!initialized)
+        initialize ();
+# endif
+      if (BCryptGenRandomFunc != NULL
+          && BCryptGenRandomFunc (NULL, buffer, length,
+                                  BCRYPT_USE_SYSTEM_PREFERRED_RNG)
+             == 0 /*STATUS_SUCCESS*/)
+        return length;
+      bcrypt_not_working = 1;
+    }
+# if !HAVE_LIB_BCRYPT
+  /* CryptGenRandom, defined in <wincrypt.h>
+     <https://docs.microsoft.com/en-us/windows/win32/api/wincrypt/nf-wincrypt-cryptgenrandom>
+     works in older releases as well, but is now deprecated.
+     CryptAcquireContext, defined in <wincrypt.h>
+     <https://docs.microsoft.com/en-us/windows/win32/api/wincrypt/nf-wincrypt-cryptacquirecontexta>  */
+  {
+    static int crypt_initialized /* = 0 */;
+    static HCRYPTPROV provider;
+    if (!crypt_initialized)
+      {
+        if (CryptAcquireContext (&provider, NULL, NULL, PROV_RSA_FULL,
+                                 CRYPT_VERIFY_CONTEXT))
+          crypt_initialized = 1;
+        else
+          crypt_initialized = -1;
+      }
+    if (crypt_initialized >= 0)
+      {
+        if (!CryptGenRandom (provider, length, buffer))
+          {
+            errno = EIO;
+            return -1;
+          }
+        return length;
+      }
+  }
+# endif
+  errno = ENOSYS;
+  return -1;
+#elif HAVE_GETRANDOM
+  return getrandom (buffer, length, flags);
+#else
+  static int randfd[2] = { -1, -1 };
+  bool devrandom = (flags & GRND_RANDOM) != 0;
+  int fd = randfd[devrandom];
+
+  if (fd < 0)
+    {
+      static char const randdevice[][MAX (sizeof NAME_OF_NONCE_DEVICE,
+                                          sizeof NAME_OF_RANDOM_DEVICE)]
+        = { NAME_OF_NONCE_DEVICE, NAME_OF_RANDOM_DEVICE };
+      int oflags = (O_RDONLY + O_CLOEXEC
+                    + (flags & GRND_NONBLOCK ? O_NONBLOCK : 0));
+      fd = open (randdevice[devrandom], oflags);
+      if (fd < 0)
+        return fd;
+      randfd[devrandom] = fd;
+    }
+
+  return read (fd, buffer, length);
+#endif
+}
index c7c0fdb531169e8ddc7d6ea3a3cfc4e3075cf8c5..0bd1e13348a794f68232af0fa69f0c6fc4096e80 100644 (file)
@@ -1,5 +1,5 @@
 /* Convenience header for conditional use of GNU <libintl.h>.
-   Copyright (C) 1995-1998, 2000-2002, 2004-2006, 2009-2019 Free Software
+   Copyright (C) 1995-1998, 2000-2002, 2004-2006, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
diff --git a/lib/gettimeofday.c b/lib/gettimeofday.c
deleted file mode 100644 (file)
index e728bf4..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-/* Provide gettimeofday for systems that don't have it or for which it's broken.
-
-   Copyright (C) 2001-2003, 2005-2007, 2009-2019 Free Software Foundation, Inc.
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 3, or (at your option)
-   any later version.
-
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
-
-/* written by Jim Meyering */
-
-#include <config.h>
-
-/* Specification.  */
-#include <sys/time.h>
-
-#include <time.h>
-
-#if defined _WIN32 && ! defined __CYGWIN__
-# define WINDOWS_NATIVE
-# include <windows.h>
-#endif
-
-#include "localtime-buffer.h"
-
-#ifdef WINDOWS_NATIVE
-
-/* Avoid warnings from gcc -Wcast-function-type.  */
-# define GetProcAddress \
-   (void *) GetProcAddress
-
-/* GetSystemTimePreciseAsFileTime was introduced only in Windows 8.  */
-typedef void (WINAPI * GetSystemTimePreciseAsFileTimeFuncType) (FILETIME *lpTime);
-static GetSystemTimePreciseAsFileTimeFuncType GetSystemTimePreciseAsFileTimeFunc = NULL;
-static BOOL initialized = FALSE;
-
-static void
-initialize (void)
-{
-  HMODULE kernel32 = LoadLibrary ("kernel32.dll");
-  if (kernel32 != NULL)
-    {
-      GetSystemTimePreciseAsFileTimeFunc =
-        (GetSystemTimePreciseAsFileTimeFuncType) GetProcAddress (kernel32, "GetSystemTimePreciseAsFileTime");
-    }
-  initialized = TRUE;
-}
-
-#endif
-
-/* This is a wrapper for gettimeofday.  It is used only on systems
-   that lack this function, or whose implementation of this function
-   causes problems.
-   Work around the bug in some systems whereby gettimeofday clobbers
-   the static buffer that localtime uses for its return value.  The
-   gettimeofday function from Mac OS X 10.0.4 (i.e., Darwin 1.3.7) has
-   this problem.  */
-
-int
-gettimeofday (struct timeval *restrict tv, void *restrict tz)
-{
-#undef gettimeofday
-#ifdef WINDOWS_NATIVE
-
-  /* On native Windows, there are two ways to get the current time:
-     GetSystemTimeAsFileTime
-     <https://docs.microsoft.com/en-us/windows/desktop/api/sysinfoapi/nf-sysinfoapi-getsystemtimeasfiletime>
-     or
-     GetSystemTimePreciseAsFileTime
-     <https://docs.microsoft.com/en-us/windows/desktop/api/sysinfoapi/nf-sysinfoapi-getsystemtimepreciseasfiletime>.
-     GetSystemTimeAsFileTime produces values that jump by increments of
-     15.627 milliseconds (!) on average.
-     Whereas GetSystemTimePreciseAsFileTime values usually jump by 1 or 2
-     microseconds.
-     More discussion on this topic:
-     <http://www.windowstimestamp.com/description>.  */
-  FILETIME current_time;
-
-  if (!initialized)
-    initialize ();
-  if (GetSystemTimePreciseAsFileTimeFunc != NULL)
-    GetSystemTimePreciseAsFileTimeFunc (&current_time);
-  else
-    GetSystemTimeAsFileTime (&current_time);
-
-  /* Convert from FILETIME to 'struct timeval'.  */
-  /* FILETIME: <https://docs.microsoft.com/en-us/windows/desktop/api/minwinbase/ns-minwinbase-filetime> */
-  ULONGLONG since_1601 =
-    ((ULONGLONG) current_time.dwHighDateTime << 32)
-    | (ULONGLONG) current_time.dwLowDateTime;
-  /* Between 1601-01-01 and 1970-01-01 there were 280 normal years and 89 leap
-     years, in total 134774 days.  */
-  ULONGLONG since_1970 =
-    since_1601 - (ULONGLONG) 134774 * (ULONGLONG) 86400 * (ULONGLONG) 10000000;
-  ULONGLONG microseconds_since_1970 = since_1970 / (ULONGLONG) 10;
-  tv->tv_sec = microseconds_since_1970 / (ULONGLONG) 1000000;
-  tv->tv_usec = microseconds_since_1970 % (ULONGLONG) 1000000;
-
-  return 0;
-
-#else
-
-# if HAVE_GETTIMEOFDAY
-#  if GETTIMEOFDAY_CLOBBERS_LOCALTIME
-  /* Save and restore the contents of the buffer used for localtime's
-     result around the call to gettimeofday.  */
-  struct tm save = *localtime_buffer_addr;
-#  endif
-
-#  if defined timeval /* 'struct timeval' overridden by gnulib?  */
-#   undef timeval
-  struct timeval otv;
-  int result = gettimeofday (&otv, (struct timezone *) tz);
-  if (result == 0)
-    {
-      tv->tv_sec = otv.tv_sec;
-      tv->tv_usec = otv.tv_usec;
-    }
-#  else
-  int result = gettimeofday (tv, (struct timezone *) tz);
-#  endif
-
-#  if GETTIMEOFDAY_CLOBBERS_LOCALTIME
-  *localtime_buffer_addr = save;
-#  endif
-
-  return result;
-
-# else
-
-#  if !defined OK_TO_USE_1S_CLOCK
-#   error "Only 1-second nominal clock resolution found.  Is that intended?" \
-          "If so, compile with the -DOK_TO_USE_1S_CLOCK option."
-#  endif
-  tv->tv_sec = time (NULL);
-  tv->tv_usec = 0;
-
-  return 0;
-
-# endif
-#endif
-}
index fefcd596f6d2dbf6389b0305376083ec236b2420..10af6f2e1f07d91fffdf0af0a306891a205b816f 100644 (file)
@@ -1,5 +1,5 @@
 /* Locking in multithreaded situations.
-   Copyright (C) 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
 /* ========================================================================= */
 
+#if USE_ISOC_THREADS || USE_ISOC_AND_POSIX_THREADS
+
+/* -------------------------- gl_lock_t datatype -------------------------- */
+
+int
+glthread_lock_init (gl_lock_t *lock)
+{
+  if (mtx_init (&lock->mutex, mtx_plain) != thrd_success)
+    return ENOMEM;
+  lock->init_needed = 0;
+  return 0;
+}
+
+int
+glthread_lock_lock (gl_lock_t *lock)
+{
+  if (lock->init_needed)
+    call_once (&lock->init_once, lock->init_func);
+  if (mtx_lock (&lock->mutex) != thrd_success)
+    return EAGAIN;
+  return 0;
+}
+
+int
+glthread_lock_unlock (gl_lock_t *lock)
+{
+  if (lock->init_needed)
+    call_once (&lock->init_once, lock->init_func);
+  if (mtx_unlock (&lock->mutex) != thrd_success)
+    return EINVAL;
+  return 0;
+}
+
+int
+glthread_lock_destroy (gl_lock_t *lock)
+{
+  if (lock->init_needed)
+    call_once (&lock->init_once, lock->init_func);
+  mtx_destroy (&lock->mutex);
+  return 0;
+}
+
+/* ------------------------- gl_rwlock_t datatype ------------------------- */
+
+int
+glthread_rwlock_init (gl_rwlock_t *lock)
+{
+  if (mtx_init (&lock->lock, mtx_plain) != thrd_success
+      || cnd_init (&lock->waiting_readers) != thrd_success
+      || cnd_init (&lock->waiting_writers) != thrd_success)
+    return ENOMEM;
+  lock->waiting_writers_count = 0;
+  lock->runcount = 0;
+  lock->init_needed = 0;
+  return 0;
+}
+
+int
+glthread_rwlock_rdlock (gl_rwlock_t *lock)
+{
+  if (lock->init_needed)
+    call_once (&lock->init_once, lock->init_func);
+  if (mtx_lock (&lock->lock) != thrd_success)
+    return EAGAIN;
+  /* Test whether only readers are currently running, and whether the runcount
+     field will not overflow, and whether no writer is waiting.  The latter
+     condition is because POSIX recommends that "write locks shall take
+     precedence over read locks", to avoid "writer starvation".  */
+  while (!(lock->runcount + 1 > 0 && lock->waiting_writers_count == 0))
+    {
+      /* This thread has to wait for a while.  Enqueue it among the
+         waiting_readers.  */
+      if (cnd_wait (&lock->waiting_readers, &lock->lock) != thrd_success)
+        {
+          mtx_unlock (&lock->lock);
+          return EINVAL;
+        }
+    }
+  lock->runcount++;
+  if (mtx_unlock (&lock->lock) != thrd_success)
+    return EINVAL;
+  return 0;
+}
+
+int
+glthread_rwlock_wrlock (gl_rwlock_t *lock)
+{
+  if (lock->init_needed)
+    call_once (&lock->init_once, lock->init_func);
+  if (mtx_lock (&lock->lock) != thrd_success)
+    return EAGAIN;
+  /* Test whether no readers or writers are currently running.  */
+  while (!(lock->runcount == 0))
+    {
+      /* This thread has to wait for a while.  Enqueue it among the
+         waiting_writers.  */
+      lock->waiting_writers_count++;
+      if (cnd_wait (&lock->waiting_writers, &lock->lock) != thrd_success)
+        {
+          lock->waiting_writers_count--;
+          mtx_unlock (&lock->lock);
+          return EINVAL;
+        }
+      lock->waiting_writers_count--;
+    }
+  lock->runcount--; /* runcount becomes -1 */
+  if (mtx_unlock (&lock->lock) != thrd_success)
+    return EINVAL;
+  return 0;
+}
+
+int
+glthread_rwlock_unlock (gl_rwlock_t *lock)
+{
+  if (lock->init_needed)
+    call_once (&lock->init_once, lock->init_func);
+  if (mtx_lock (&lock->lock) != thrd_success)
+    return EAGAIN;
+  if (lock->runcount < 0)
+    {
+      /* Drop a writer lock.  */
+      if (!(lock->runcount == -1))
+        {
+          mtx_unlock (&lock->lock);
+          return EINVAL;
+        }
+      lock->runcount = 0;
+    }
+  else
+    {
+      /* Drop a reader lock.  */
+      if (!(lock->runcount > 0))
+        {
+          mtx_unlock (&lock->lock);
+          return EINVAL;
+        }
+      lock->runcount--;
+    }
+  if (lock->runcount == 0)
+    {
+      /* POSIX recommends that "write locks shall take precedence over read
+         locks", to avoid "writer starvation".  */
+      if (lock->waiting_writers_count > 0)
+        {
+          /* Wake up one of the waiting writers.  */
+          if (cnd_signal (&lock->waiting_writers) != thrd_success)
+            {
+              mtx_unlock (&lock->lock);
+              return EINVAL;
+            }
+        }
+      else
+        {
+          /* Wake up all waiting readers.  */
+          if (cnd_broadcast (&lock->waiting_readers) != thrd_success)
+            {
+              mtx_unlock (&lock->lock);
+              return EINVAL;
+            }
+        }
+    }
+  if (mtx_unlock (&lock->lock) != thrd_success)
+    return EINVAL;
+  return 0;
+}
+
+int
+glthread_rwlock_destroy (gl_rwlock_t *lock)
+{
+  if (lock->init_needed)
+    call_once (&lock->init_once, lock->init_func);
+  mtx_destroy (&lock->lock);
+  cnd_destroy (&lock->waiting_readers);
+  cnd_destroy (&lock->waiting_writers);
+  return 0;
+}
+
+/* --------------------- gl_recursive_lock_t datatype --------------------- */
+
+int
+glthread_recursive_lock_init (gl_recursive_lock_t *lock)
+{
+  if (mtx_init (&lock->mutex, mtx_plain | mtx_recursive) != thrd_success)
+    return ENOMEM;
+  lock->init_needed = 0;
+  return 0;
+}
+
+int
+glthread_recursive_lock_lock (gl_recursive_lock_t *lock)
+{
+  if (lock->init_needed)
+    call_once (&lock->init_once, lock->init_func);
+  if (mtx_lock (&lock->mutex) != thrd_success)
+    return EAGAIN;
+  return 0;
+}
+
+int
+glthread_recursive_lock_unlock (gl_recursive_lock_t *lock)
+{
+  if (lock->init_needed)
+    call_once (&lock->init_once, lock->init_func);
+  if (mtx_unlock (&lock->mutex) != thrd_success)
+    return EINVAL;
+  return 0;
+}
+
+int
+glthread_recursive_lock_destroy (gl_recursive_lock_t *lock)
+{
+  if (lock->init_needed)
+    call_once (&lock->init_once, lock->init_func);
+  mtx_destroy (&lock->mutex);
+  return 0;
+}
+
+/* -------------------------- gl_once_t datatype -------------------------- */
+
+#endif
+
+/* ========================================================================= */
+
 #if USE_POSIX_THREADS
 
 /* -------------------------- gl_lock_t datatype -------------------------- */
 
 # if HAVE_PTHREAD_RWLOCK && (HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER || (defined PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP && (__GNU_LIBRARY__ > 1)))
 
-#  ifdef PTHREAD_RWLOCK_INITIALIZER
+#  if defined PTHREAD_RWLOCK_INITIALIZER || defined PTHREAD_RWLOCK_INITIALIZER_NP
 
 #   if !HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER
      /* glibc with bug https://sourceware.org/bugzilla/show_bug.cgi?id=13701 */
@@ -495,6 +718,26 @@ glthread_once_singlethreaded (pthread_once_t *once_control)
     return 0;
 }
 
+# if !(PTHREAD_IN_USE_DETECTION_HARD || USE_POSIX_THREADS_WEAK)
+
+int
+glthread_once_multithreaded (pthread_once_t *once_control,
+                             void (*init_function) (void))
+{
+  int err = pthread_once (once_control, init_function);
+  if (err == ENOSYS)
+    {
+      /* This happens on FreeBSD 11: The pthread_once function in libc returns
+         ENOSYS.  */
+      if (glthread_once_singlethreaded (once_control))
+        init_function ();
+      return 0;
+    }
+  return err;
+}
+
+# endif
+
 #endif
 
 /* ========================================================================= */
index a92c2a83455aad6c56be19fcad8d015e332b6d7a..59485f260140c790d8c83925cf92e62263ef6097 100644 (file)
@@ -1,5 +1,5 @@
 /* Locking in multithreaded situations.
-   Copyright (C) 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
 /* ========================================================================= */
 
+#if USE_ISOC_THREADS || USE_ISOC_AND_POSIX_THREADS
+
+/* Use the ISO C threads library.  */
+
+# include <threads.h>
+
+# ifdef __cplusplus
+extern "C" {
+# endif
+
+/* -------------------------- gl_lock_t datatype -------------------------- */
+
+typedef struct
+        {
+          int volatile init_needed;
+          once_flag init_once;
+          void (*init_func) (void);
+          mtx_t mutex;
+        }
+        gl_lock_t;
+# define gl_lock_define(STORAGECLASS, NAME) \
+    STORAGECLASS gl_lock_t NAME;
+# define gl_lock_define_initialized(STORAGECLASS, NAME) \
+    static void _atomic_init_##NAME (void);       \
+    STORAGECLASS gl_lock_t NAME =                 \
+      { 1, ONCE_FLAG_INIT, _atomic_init_##NAME }; \
+    static void _atomic_init_##NAME (void)        \
+    {                                             \
+      if (glthread_lock_init (&(NAME)))           \
+        abort ();                                 \
+    }
+extern int glthread_lock_init (gl_lock_t *lock);
+extern int glthread_lock_lock (gl_lock_t *lock);
+extern int glthread_lock_unlock (gl_lock_t *lock);
+extern int glthread_lock_destroy (gl_lock_t *lock);
+
+/* ------------------------- gl_rwlock_t datatype ------------------------- */
+
+typedef struct
+        {
+          int volatile init_needed;
+          once_flag init_once;
+          void (*init_func) (void);
+          mtx_t lock; /* protects the remaining fields */
+          cnd_t waiting_readers; /* waiting readers */
+          cnd_t waiting_writers; /* waiting writers */
+          unsigned int waiting_writers_count; /* number of waiting writers */
+          int runcount; /* number of readers running, or -1 when a writer runs */
+        }
+        gl_rwlock_t;
+# define gl_rwlock_define(STORAGECLASS, NAME) \
+    STORAGECLASS gl_rwlock_t NAME;
+# define gl_rwlock_define_initialized(STORAGECLASS, NAME) \
+    static void _atomic_init_##NAME (void);       \
+    STORAGECLASS gl_rwlock_t NAME =               \
+      { 1, ONCE_FLAG_INIT, _atomic_init_##NAME }; \
+    static void _atomic_init_##NAME (void)        \
+    {                                             \
+      if (glthread_rwlock_init (&(NAME)))         \
+        abort ();                                 \
+    }
+extern int glthread_rwlock_init (gl_rwlock_t *lock);
+extern int glthread_rwlock_rdlock (gl_rwlock_t *lock);
+extern int glthread_rwlock_wrlock (gl_rwlock_t *lock);
+extern int glthread_rwlock_unlock (gl_rwlock_t *lock);
+extern int glthread_rwlock_destroy (gl_rwlock_t *lock);
+
+/* --------------------- gl_recursive_lock_t datatype --------------------- */
+
+typedef struct
+        {
+          int volatile init_needed;
+          once_flag init_once;
+          void (*init_func) (void);
+          mtx_t mutex;
+        }
+        gl_recursive_lock_t;
+# define gl_recursive_lock_define(STORAGECLASS, NAME) \
+    STORAGECLASS gl_recursive_lock_t NAME;
+# define gl_recursive_lock_define_initialized(STORAGECLASS, NAME) \
+    static void _atomic_init_##NAME (void);       \
+    STORAGECLASS gl_recursive_lock_t NAME =       \
+      { 1, ONCE_FLAG_INIT, _atomic_init_##NAME }; \
+    static void _atomic_init_##NAME (void)        \
+    {                                             \
+      if (glthread_recursive_lock_init (&(NAME))) \
+        abort ();                                 \
+    }
+extern int glthread_recursive_lock_init (gl_recursive_lock_t *lock);
+extern int glthread_recursive_lock_lock (gl_recursive_lock_t *lock);
+extern int glthread_recursive_lock_unlock (gl_recursive_lock_t *lock);
+extern int glthread_recursive_lock_destroy (gl_recursive_lock_t *lock);
+
+/* -------------------------- gl_once_t datatype -------------------------- */
+
+typedef once_flag gl_once_t;
+# define gl_once_define(STORAGECLASS, NAME) \
+    STORAGECLASS once_flag NAME = ONCE_FLAG_INIT;
+# define glthread_once(ONCE_CONTROL, INITFUNCTION) \
+    (call_once (ONCE_CONTROL, INITFUNCTION), 0)
+
+# ifdef __cplusplus
+}
+# endif
+
+#endif
+
+/* ========================================================================= */
+
 #if USE_POSIX_THREADS
 
 /* Use the POSIX threads library.  */
@@ -199,7 +308,7 @@ typedef pthread_mutex_t gl_lock_t;
 
 # if HAVE_PTHREAD_RWLOCK && (HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER || (defined PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP && (__GNU_LIBRARY__ > 1)))
 
-#  ifdef PTHREAD_RWLOCK_INITIALIZER
+#  if defined PTHREAD_RWLOCK_INITIALIZER || defined PTHREAD_RWLOCK_INITIALIZER_NP
 
 typedef pthread_rwlock_t gl_rwlock_t;
 #   define gl_rwlock_define(STORAGECLASS, NAME) \
@@ -207,8 +316,13 @@ typedef pthread_rwlock_t gl_rwlock_t;
 #   define gl_rwlock_define_initialized(STORAGECLASS, NAME) \
       STORAGECLASS pthread_rwlock_t NAME = gl_rwlock_initializer;
 #   if HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER
-#    define gl_rwlock_initializer \
-       PTHREAD_RWLOCK_INITIALIZER
+#    if defined PTHREAD_RWLOCK_INITIALIZER
+#     define gl_rwlock_initializer \
+        PTHREAD_RWLOCK_INITIALIZER
+#    else
+#     define gl_rwlock_initializer \
+        PTHREAD_RWLOCK_INITIALIZER_NP
+#    endif
 #    define glthread_rwlock_init(LOCK) \
        (pthread_in_use () ? pthread_rwlock_init (LOCK, NULL) : 0)
 #   else /* glibc with bug https://sourceware.org/bugzilla/show_bug.cgi?id=13701 */
@@ -391,10 +505,19 @@ extern int glthread_recursive_lock_destroy_multithreaded (gl_recursive_lock_t *l
 typedef pthread_once_t gl_once_t;
 # define gl_once_define(STORAGECLASS, NAME) \
     STORAGECLASS pthread_once_t NAME = PTHREAD_ONCE_INIT;
-# define glthread_once(ONCE_CONTROL, INITFUNCTION) \
-    (pthread_in_use ()                                                         \
-     ? pthread_once (ONCE_CONTROL, INITFUNCTION)                               \
-     : (glthread_once_singlethreaded (ONCE_CONTROL) ? (INITFUNCTION (), 0) : 0))
+# if PTHREAD_IN_USE_DETECTION_HARD || USE_POSIX_THREADS_WEAK
+#  define glthread_once(ONCE_CONTROL, INITFUNCTION) \
+     (pthread_in_use ()                                                        \
+      ? pthread_once (ONCE_CONTROL, INITFUNCTION)                              \
+      : (glthread_once_singlethreaded (ONCE_CONTROL) ? (INITFUNCTION (), 0) : 0))
+# else
+#  define glthread_once(ONCE_CONTROL, INITFUNCTION) \
+     (pthread_in_use ()                                                        \
+      ? glthread_once_multithreaded (ONCE_CONTROL, INITFUNCTION)               \
+      : (glthread_once_singlethreaded (ONCE_CONTROL) ? (INITFUNCTION (), 0) : 0))
+extern int glthread_once_multithreaded (pthread_once_t *once_control,
+                                        void (*init_function) (void));
+# endif
 extern int glthread_once_singlethreaded (pthread_once_t *once_control);
 
 # ifdef __cplusplus
@@ -502,7 +625,7 @@ typedef glwthread_once_t gl_once_t;
 
 /* ========================================================================= */
 
-#if !(USE_POSIX_THREADS || USE_WINDOWS_THREADS)
+#if !(USE_ISOC_THREADS || USE_POSIX_THREADS || USE_ISOC_AND_POSIX_THREADS || USE_WINDOWS_THREADS)
 
 /* Provide dummy implementation if threads are not supported.  */
 
index a5ebd9bfe14aac0a8ecfec7b35387b4c714a76bf..501260a68d9abcbab6e2e339dc0e136a6ea3e049 100644 (file)
@@ -1,5 +1,5 @@
 /* Multithreading primitives.
-   Copyright (C) 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
 /* ========================================================================= */
 
-#if USE_POSIX_THREADS
+#if USE_POSIX_THREADS || USE_ISOC_AND_POSIX_THREADS
 
 /* Use the POSIX threads library.  */
 
+# include <errno.h>
 # include <pthread.h>
 # include <stdlib.h>
 
 # if PTHREAD_IN_USE_DETECTION_HARD
 
+#  if defined __FreeBSD__ || defined __DragonFly__                 /* FreeBSD */
+
+/* Test using pthread_key_create.  */
+
+int
+glthread_in_use (void)
+{
+  static int tested;
+  static int result; /* 1: linked with -lpthread, 0: only with libc */
+
+  if (!tested)
+    {
+      pthread_key_t key;
+      int err = pthread_key_create (&key, NULL);
+
+      if (err == ENOSYS)
+        result = 0;
+      else
+        {
+          result = 1;
+          if (err == 0)
+            pthread_key_delete (key);
+        }
+      tested = 1;
+    }
+  return result;
+}
+
+#  else                                                     /* Solaris, HP-UX */
+
+/* Test using pthread_create.  */
+
 /* The function to be executed by a dummy thread.  */
 static void *
 dummy_thread_func (void *arg)
@@ -62,6 +95,8 @@ glthread_in_use (void)
   return result;
 }
 
+#  endif
+
 # endif
 
 #endif
index 3fa83a78128466bbe3e2947c934fe828fc1821c8..ba2f476fe7132134092cabb34f9f24e64c70eec1 100644 (file)
@@ -1,6 +1,6 @@
 ## DO NOT EDIT! GENERATED AUTOMATICALLY!
 ## Process this file with automake to produce Makefile.in.
-# Copyright (C) 2002-2019 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This file is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -94,15 +94,20 @@ libgnulib_la_DEPENDENCIES = $(gl_LTLIBOBJS)
 EXTRA_libgnulib_la_SOURCES =
 libgnulib_la_LDFLAGS = $(AM_LDFLAGS)
 libgnulib_la_LDFLAGS += -no-undefined
+libgnulib_la_LDFLAGS += $(LIBTHREAD)
+libgnulib_la_LDFLAGS += $(LIB_CLOCK_GETTIME)
+libgnulib_la_LDFLAGS += $(LIB_GETRANDOM)
+libgnulib_la_LDFLAGS += $(LIB_HARD_LOCALE)
+libgnulib_la_LDFLAGS += $(LIB_MBRTOWC)
+libgnulib_la_LDFLAGS += $(LIB_SETLOCALE_NULL)
 libgnulib_la_LDFLAGS += $(LTLIBINTL)
-libgnulib_la_LDFLAGS += $(LTLIBTHREAD)
 
 ## begin gnulib module absolute-header
 
 # Use this preprocessor expression to decide whether #include_next works.
 # Do not rely on a 'configure'-time test for this, since the expression
 # might appear in an installed header, which is used by some other compiler.
-HAVE_INCLUDE_NEXT = (__GNUC__ || 60000000 <= __DECC_VER)
+HAVE_INCLUDE_NEXT = (__GNUC__ || __clang__ || 60000000 <= __DECC_VER)
 
 ## end   gnulib module absolute-header
 
@@ -162,6 +167,21 @@ EXTRA_DIST += assure.h
 
 ## end   gnulib module assure
 
+## begin gnulib module attribute
+
+
+EXTRA_DIST += attribute.h
+
+## end   gnulib module attribute
+
+## begin gnulib module basename-lgpl
+
+libgnulib_la_SOURCES += basename-lgpl.c
+
+EXTRA_DIST += basename-lgpl.h
+
+## end   gnulib module basename-lgpl
+
 ## begin gnulib module btowc
 
 
@@ -217,6 +237,14 @@ EXTRA_libgnulib_la_SOURCES += canonicalize-lgpl.c
 
 ## end   gnulib module canonicalize-lgpl
 
+## begin gnulib module cloexec
+
+libgnulib_la_SOURCES += cloexec.c
+
+EXTRA_DIST += cloexec.h
+
+## end   gnulib module cloexec
+
 ## begin gnulib module close
 
 
@@ -302,7 +330,7 @@ EXTRA_libgnulib_la_SOURCES += stripslash.c
 
 ## begin gnulib module dirname-lgpl
 
-libgnulib_la_SOURCES += dirname-lgpl.c basename-lgpl.c stripslash.c
+libgnulib_la_SOURCES += dirname-lgpl.c stripslash.c
 
 EXTRA_DIST += dirname.h
 
@@ -315,12 +343,14 @@ EXTRA_DIST += $(top_srcdir)/build-aux/do-release-commit-and-tag
 
 ## end   gnulib module do-release-commit-and-tag
 
-## begin gnulib module dosname
+## begin gnulib module dup2
+
 
+EXTRA_DIST += dup2.c
 
-EXTRA_DIST += dosname.h
+EXTRA_libgnulib_la_SOURCES += dup2.c
 
-## end   gnulib module dosname
+## end   gnulib module dup2
 
 ## begin gnulib module errno
 
@@ -373,6 +403,15 @@ EXTRA_DIST += exitfail.h
 
 ## end   gnulib module exitfail
 
+## begin gnulib module fcntl
+
+
+EXTRA_DIST += fcntl.c
+
+EXTRA_libgnulib_la_SOURCES += fcntl.c
+
+## end   gnulib module fcntl
+
 ## begin gnulib module fcntl-h
 
 BUILT_SOURCES += fcntl.h
@@ -387,12 +426,14 @@ fcntl.h: fcntl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
              -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
              -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
              -e 's|@''NEXT_FCNTL_H''@|$(NEXT_FCNTL_H)|g' \
+             -e 's/@''GNULIB_CREAT''@/$(GNULIB_CREAT)/g' \
              -e 's/@''GNULIB_FCNTL''@/$(GNULIB_FCNTL)/g' \
              -e 's/@''GNULIB_NONBLOCKING''@/$(GNULIB_NONBLOCKING)/g' \
              -e 's/@''GNULIB_OPEN''@/$(GNULIB_OPEN)/g' \
              -e 's/@''GNULIB_OPENAT''@/$(GNULIB_OPENAT)/g' \
              -e 's|@''HAVE_FCNTL''@|$(HAVE_FCNTL)|g' \
              -e 's|@''HAVE_OPENAT''@|$(HAVE_OPENAT)|g' \
+             -e 's|@''REPLACE_CREAT''@|$(REPLACE_CREAT)|g' \
              -e 's|@''REPLACE_FCNTL''@|$(REPLACE_FCNTL)|g' \
              -e 's|@''REPLACE_OPEN''@|$(REPLACE_OPEN)|g' \
              -e 's|@''REPLACE_OPENAT''@|$(REPLACE_OPENAT)|g' \
@@ -457,6 +498,15 @@ EXTRA_DIST += $(top_srcdir)/build-aux/gendocs.sh
 
 ## end   gnulib module gendocs
 
+## begin gnulib module getdtablesize
+
+
+EXTRA_DIST += getdtablesize.c
+
+EXTRA_libgnulib_la_SOURCES += getdtablesize.c
+
+## end   gnulib module getdtablesize
+
 ## begin gnulib module getopt-posix
 
 BUILT_SOURCES += $(GETOPT_H) $(GETOPT_CDEFS_H)
@@ -499,20 +549,20 @@ libgnulib_la_SOURCES += getprogname.h getprogname.c
 
 ## end   gnulib module getprogname
 
-## begin gnulib module gettext-h
+## begin gnulib module getrandom
 
-libgnulib_la_SOURCES += gettext.h
 
-## end   gnulib module gettext-h
+EXTRA_DIST += getrandom.c
 
-## begin gnulib module gettimeofday
+EXTRA_libgnulib_la_SOURCES += getrandom.c
 
+## end   gnulib module getrandom
 
-EXTRA_DIST += gettimeofday.c
+## begin gnulib module gettext-h
 
-EXTRA_libgnulib_la_SOURCES += gettimeofday.c
+libgnulib_la_SOURCES += gettext.h
 
-## end   gnulib module gettimeofday
+## end   gnulib module gettext-h
 
 ## begin gnulib module git-version-gen
 
@@ -559,12 +609,11 @@ EXTRA_DIST += hard-locale.h
 
 ## end   gnulib module hard-locale
 
-## begin gnulib module havelib
+## begin gnulib module idx
 
+libgnulib_la_SOURCES += idx.h
 
-EXTRA_DIST += $(top_srcdir)/build-aux/config.rpath
-
-## end   gnulib module havelib
+## end   gnulib module idx
 
 ## begin gnulib module intprops
 
@@ -587,10 +636,7 @@ inttypes.h: inttypes.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_U
              -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' \
-             -e 's/@''HAVE_LONG_LONG_INT''@/$(HAVE_LONG_LONG_INT)/g' \
-             -e 's/@''HAVE_UNSIGNED_LONG_LONG_INT''@/$(HAVE_UNSIGNED_LONG_LONG_INT)/g' \
              -e 's/@''PRIPTR_PREFIX''@/$(PRIPTR_PREFIX)/g' \
              -e 's/@''GNULIB_IMAXABS''@/$(GNULIB_IMAXABS)/g' \
              -e 's/@''GNULIB_IMAXDIV''@/$(GNULIB_IMAXDIV)/g' \
@@ -712,6 +758,7 @@ locale.h: locale.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''NEXT_LOCALE_H''@|$(NEXT_LOCALE_H)|g' \
              -e 's/@''GNULIB_LOCALECONV''@/$(GNULIB_LOCALECONV)/g' \
              -e 's/@''GNULIB_SETLOCALE''@/$(GNULIB_SETLOCALE)/g' \
+             -e 's/@''GNULIB_SETLOCALE_NULL''@/$(GNULIB_SETLOCALE_NULL)/g' \
              -e 's/@''GNULIB_DUPLOCALE''@/$(GNULIB_DUPLOCALE)/g' \
              -e 's/@''GNULIB_LOCALENAME''@/$(GNULIB_LOCALENAME)/g' \
              -e 's|@''HAVE_NEWLOCALE''@|$(HAVE_NEWLOCALE)|g' \
@@ -745,15 +792,6 @@ EXTRA_libgnulib_la_SOURCES += localeconv.c
 
 ## end   gnulib module localeconv
 
-## begin gnulib module localtime-buffer
-
-
-EXTRA_DIST += localtime-buffer.c localtime-buffer.h
-
-EXTRA_libgnulib_la_SOURCES += localtime-buffer.c
-
-## end   gnulib module localtime-buffer
-
 ## begin gnulib module lock
 
 libgnulib_la_SOURCES += glthread/lock.h glthread/lock.c
@@ -821,9 +859,9 @@ EXTRA_DIST += malloca.h
 ## begin gnulib module mbrtowc
 
 
-EXTRA_DIST += mbrtowc.c
+EXTRA_DIST += lc-charset-dispatch.c lc-charset-dispatch.h mbrtowc-impl-utf8.h mbrtowc-impl.h mbrtowc.c mbtowc-lock.c mbtowc-lock.h windows-initguard.h
 
-EXTRA_libgnulib_la_SOURCES += mbrtowc.c
+EXTRA_libgnulib_la_SOURCES += lc-charset-dispatch.c mbrtowc.c mbtowc-lock.c
 
 ## end   gnulib module mbrtowc
 
@@ -897,12 +935,21 @@ EXTRA_libgnulib_la_SOURCES += msvc-nothrow.c
 ## begin gnulib module nl_langinfo
 
 
-EXTRA_DIST += nl_langinfo.c
+EXTRA_DIST += nl_langinfo-lock.c nl_langinfo.c windows-initguard.h
 
-EXTRA_libgnulib_la_SOURCES += nl_langinfo.c
+EXTRA_libgnulib_la_SOURCES += nl_langinfo-lock.c nl_langinfo.c
 
 ## end   gnulib module nl_langinfo
 
+## begin gnulib module open
+
+
+EXTRA_DIST += open.c
+
+EXTRA_libgnulib_la_SOURCES += open.c
+
+## end   gnulib module open
+
 ## begin gnulib module pathmax
 
 
@@ -993,6 +1040,16 @@ EXTRA_DIST += safe-read.h sys-limits.h
 
 ## end   gnulib module safe-read
 
+## begin gnulib module setlocale-null
+
+libgnulib_la_SOURCES += setlocale_null.c
+
+EXTRA_DIST += setlocale-lock.c setlocale_null.h windows-initguard.h
+
+EXTRA_libgnulib_la_SOURCES += setlocale-lock.c
+
+## end   gnulib module setlocale-null
+
 ## begin gnulib module sleep
 
 
@@ -1067,6 +1124,29 @@ EXTRA_DIST += stat-time.h
 
 ## end   gnulib module stat-time
 
+## begin gnulib module stdalign
+
+BUILT_SOURCES += $(STDALIGN_H)
+
+# We need the following in order to create <stdalign.h> when the system
+# doesn't have one that works.
+if GL_GENERATE_STDALIGN_H
+stdalign.h: stdalign.in.h $(top_builddir)/config.status
+       $(AM_V_GEN)rm -f $@-t $@ && \
+       { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+         cat $(srcdir)/stdalign.in.h; \
+       } > $@-t && \
+       mv $@-t $@
+else
+stdalign.h: $(top_builddir)/config.status
+       rm -f $@
+endif
+MOSTLYCLEANFILES += stdalign.h stdalign.h-t
+
+EXTRA_DIST += stdalign.in.h
+
+## end   gnulib module stdalign
+
 ## begin gnulib module stdarg
 
 BUILT_SOURCES += $(STDARG_H)
@@ -1171,8 +1251,6 @@ stdint.h: stdint.in.h $(top_builddir)/config.status
              -e 's/@''HAVE_SYS_INTTYPES_H''@/$(HAVE_SYS_INTTYPES_H)/g' \
              -e 's/@''HAVE_SYS_BITYPES_H''@/$(HAVE_SYS_BITYPES_H)/g' \
              -e 's/@''HAVE_WCHAR_H''@/$(HAVE_WCHAR_H)/g' \
-             -e 's/@''HAVE_LONG_LONG_INT''@/$(HAVE_LONG_LONG_INT)/g' \
-             -e 's/@''HAVE_UNSIGNED_LONG_LONG_INT''@/$(HAVE_UNSIGNED_LONG_LONG_INT)/g' \
              -e 's/@''APPLE_UNIVERSAL_BUILD''@/$(APPLE_UNIVERSAL_BUILD)/g' \
              -e 's/@''BITSIZEOF_PTRDIFF_T''@/$(BITSIZEOF_PTRDIFF_T)/g' \
              -e 's/@''PTRDIFF_T_SUFFIX''@/$(PTRDIFF_T_SUFFIX)/g' \
@@ -1269,7 +1347,8 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
              -e 's/@''GNULIB_VSNPRINTF''@/$(GNULIB_VSNPRINTF)/g' \
              -e 's/@''GNULIB_VSPRINTF_POSIX''@/$(GNULIB_VSPRINTF_POSIX)/g' \
              < $(srcdir)/stdio.in.h | \
-         sed -e 's|@''HAVE_DECL_FPURGE''@|$(HAVE_DECL_FPURGE)|g' \
+         sed -e 's|@''HAVE_DECL_FCLOSEALL''@|$(HAVE_DECL_FCLOSEALL)|g' \
+             -e 's|@''HAVE_DECL_FPURGE''@|$(HAVE_DECL_FPURGE)|g' \
              -e 's|@''HAVE_DECL_FSEEKO''@|$(HAVE_DECL_FSEEKO)|g' \
              -e 's|@''HAVE_DECL_FTELLO''@|$(HAVE_DECL_FTELLO)|g' \
              -e 's|@''HAVE_DECL_GETDELIM''@|$(HAVE_DECL_GETDELIM)|g' \
@@ -1345,6 +1424,7 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
              -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_ALIGNED_ALLOC''@/$(GNULIB_ALIGNED_ALLOC)/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' \
@@ -1358,6 +1438,7 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
              -e 's/@''GNULIB_MKOSTEMPS''@/$(GNULIB_MKOSTEMPS)/g' \
              -e 's/@''GNULIB_MKSTEMP''@/$(GNULIB_MKSTEMP)/g' \
              -e 's/@''GNULIB_MKSTEMPS''@/$(GNULIB_MKSTEMPS)/g' \
+             -e 's/@''GNULIB_POSIX_MEMALIGN''@/$(GNULIB_POSIX_MEMALIGN)/g' \
              -e 's/@''GNULIB_POSIX_OPENPT''@/$(GNULIB_POSIX_OPENPT)/g' \
              -e 's/@''GNULIB_PTSNAME''@/$(GNULIB_PTSNAME)/g' \
              -e 's/@''GNULIB_PTSNAME_R''@/$(GNULIB_PTSNAME_R)/g' \
@@ -1381,8 +1462,12 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
              -e 's/@''GNULIB_WCTOMB''@/$(GNULIB_WCTOMB)/g' \
              < $(srcdir)/stdlib.in.h | \
          sed -e 's|@''HAVE__EXIT''@|$(HAVE__EXIT)|g' \
+             -e 's|@''HAVE_ALIGNED_ALLOC''@|$(HAVE_ALIGNED_ALLOC)|g' \
              -e 's|@''HAVE_ATOLL''@|$(HAVE_ATOLL)|g' \
              -e 's|@''HAVE_CANONICALIZE_FILE_NAME''@|$(HAVE_CANONICALIZE_FILE_NAME)|g' \
+             -e 's|@''HAVE_DECL_ECVT''@|$(HAVE_DECL_ECVT)|g' \
+             -e 's|@''HAVE_DECL_FCVT''@|$(HAVE_DECL_FCVT)|g' \
+             -e 's|@''HAVE_DECL_GCVT''@|$(HAVE_DECL_GCVT)|g' \
              -e 's|@''HAVE_DECL_GETLOADAVG''@|$(HAVE_DECL_GETLOADAVG)|g' \
              -e 's|@''HAVE_GETSUBOPT''@|$(HAVE_GETSUBOPT)|g' \
              -e 's|@''HAVE_GRANTPT''@|$(HAVE_GRANTPT)|g' \
@@ -1394,6 +1479,7 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
              -e 's|@''HAVE_MKOSTEMPS''@|$(HAVE_MKOSTEMPS)|g' \
              -e 's|@''HAVE_MKSTEMP''@|$(HAVE_MKSTEMP)|g' \
              -e 's|@''HAVE_MKSTEMPS''@|$(HAVE_MKSTEMPS)|g' \
+             -e 's|@''HAVE_POSIX_MEMALIGN''@|$(HAVE_POSIX_MEMALIGN)|g' \
              -e 's|@''HAVE_POSIX_OPENPT''@|$(HAVE_POSIX_OPENPT)|g' \
              -e 's|@''HAVE_PTSNAME''@|$(HAVE_PTSNAME)|g' \
              -e 's|@''HAVE_PTSNAME_R''@|$(HAVE_PTSNAME_R)|g' \
@@ -1416,12 +1502,14 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
              -e 's|@''HAVE_SYS_LOADAVG_H''@|$(HAVE_SYS_LOADAVG_H)|g' \
              -e 's|@''HAVE_UNLOCKPT''@|$(HAVE_UNLOCKPT)|g' \
              -e 's|@''HAVE_DECL_UNSETENV''@|$(HAVE_DECL_UNSETENV)|g' \
+             -e 's|@''REPLACE_ALIGNED_ALLOC''@|$(REPLACE_ALIGNED_ALLOC)|g' \
              -e 's|@''REPLACE_CALLOC''@|$(REPLACE_CALLOC)|g' \
              -e 's|@''REPLACE_CANONICALIZE_FILE_NAME''@|$(REPLACE_CANONICALIZE_FILE_NAME)|g' \
              -e 's|@''REPLACE_INITSTATE''@|$(REPLACE_INITSTATE)|g' \
              -e 's|@''REPLACE_MALLOC''@|$(REPLACE_MALLOC)|g' \
              -e 's|@''REPLACE_MBTOWC''@|$(REPLACE_MBTOWC)|g' \
              -e 's|@''REPLACE_MKSTEMP''@|$(REPLACE_MKSTEMP)|g' \
+             -e 's|@''REPLACE_POSIX_MEMALIGN''@|$(REPLACE_POSIX_MEMALIGN)|g' \
              -e 's|@''REPLACE_PTSNAME''@|$(REPLACE_PTSNAME)|g' \
              -e 's|@''REPLACE_PTSNAME_R''@|$(REPLACE_PTSNAME_R)|g' \
              -e 's|@''REPLACE_PUTENV''@|$(REPLACE_PUTENV)|g' \
@@ -1532,6 +1620,9 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's/@''GNULIB_STRTOK_R''@/$(GNULIB_STRTOK_R)/g' \
              -e 's/@''GNULIB_STRERROR''@/$(GNULIB_STRERROR)/g' \
              -e 's/@''GNULIB_STRERROR_R''@/$(GNULIB_STRERROR_R)/g' \
+             -e 's/@''GNULIB_STRERRORNAME_NP''@/$(GNULIB_STRERRORNAME_NP)/g' \
+             -e 's/@''GNULIB_SIGABBREV_NP''@/$(GNULIB_SIGABBREV_NP)/g' \
+             -e 's/@''GNULIB_SIGDESCR_NP''@/$(GNULIB_SIGDESCR_NP)/g' \
              -e 's/@''GNULIB_STRSIGNAL''@/$(GNULIB_STRSIGNAL)/g' \
              -e 's/@''GNULIB_STRVERSCMP''@/$(GNULIB_STRVERSCMP)/g' \
              < $(srcdir)/string.in.h | \
@@ -1539,7 +1630,6 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''HAVE_FFSL''@|$(HAVE_FFSL)|g' \
              -e 's|@''HAVE_FFSLL''@|$(HAVE_FFSLL)|g' \
              -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' \
@@ -1555,6 +1645,9 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''HAVE_STRCASESTR''@|$(HAVE_STRCASESTR)|g' \
              -e 's|@''HAVE_DECL_STRTOK_R''@|$(HAVE_DECL_STRTOK_R)|g' \
              -e 's|@''HAVE_DECL_STRERROR_R''@|$(HAVE_DECL_STRERROR_R)|g' \
+             -e 's|@''HAVE_STRERRORNAME_NP''@|$(HAVE_STRERRORNAME_NP)|g' \
+             -e 's|@''HAVE_SIGABBREV_NP''@|$(HAVE_SIGABBREV_NP)|g' \
+             -e 's|@''HAVE_SIGDESCR_NP''@|$(HAVE_SIGDESCR_NP)|g' \
              -e 's|@''HAVE_DECL_STRSIGNAL''@|$(HAVE_DECL_STRSIGNAL)|g' \
              -e 's|@''HAVE_STRVERSCMP''@|$(HAVE_STRVERSCMP)|g' \
              -e 's|@''REPLACE_MEMCHR''@|$(REPLACE_MEMCHR)|g' \
@@ -1570,6 +1663,7 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''REPLACE_STRTOK_R''@|$(REPLACE_STRTOK_R)|g' \
              -e 's|@''REPLACE_STRERROR''@|$(REPLACE_STRERROR)|g' \
              -e 's|@''REPLACE_STRERROR_R''@|$(REPLACE_STRERROR_R)|g' \
+             -e 's|@''REPLACE_STRERRORNAME_NP''@|$(REPLACE_STRERRORNAME_NP)|g' \
              -e 's|@''REPLACE_STRSIGNAL''@|$(REPLACE_STRSIGNAL)|g' \
              -e 's|@''UNDEFINE_STRTOK_R''@|$(UNDEFINE_STRTOK_R)|g' \
              -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
@@ -1620,6 +1714,38 @@ EXTRA_libgnulib_la_SOURCES += strtol.c strtoul.c strtoull.c
 
 ## end   gnulib module strtoull
 
+## begin gnulib module sys_random
+
+BUILT_SOURCES += sys/random.h
+
+# We need the following in order to create <sys/random.h> when the system
+# doesn't have one.
+sys/random.h: sys_random.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H)
+       $(AM_V_at)$(MKDIR_P) sys
+       $(AM_V_GEN)rm -f $@-t $@ && \
+       { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+         sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+             -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_RANDOM_H''@|$(NEXT_SYS_RANDOM_H)|g' \
+             -e 's|@''HAVE_SYS_RANDOM_H''@|$(HAVE_SYS_RANDOM_H)|g' \
+             -e 's/@''GNULIB_GETRANDOM''@/$(GNULIB_GETRANDOM)/g' \
+             -e 's/@''HAVE_GETRANDOM''@/$(HAVE_GETRANDOM)/g' \
+             -e 's/@''REPLACE_GETRANDOM''@/$(REPLACE_GETRANDOM)/g' \
+             -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
+             -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \
+             -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
+             < $(srcdir)/sys_random.in.h; \
+       } > $@-t && \
+       mv -f $@-t $@
+MOSTLYCLEANFILES += sys/random.h sys/random.h-t
+MOSTLYCLEANDIRS += sys
+
+EXTRA_DIST += sys_random.in.h
+
+## end   gnulib module sys_random
+
 ## begin gnulib module sys_stat
 
 BUILT_SOURCES += sys/stat.h
@@ -1641,6 +1767,7 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU
              -e 's/@''GNULIB_FSTAT''@/$(GNULIB_FSTAT)/g' \
              -e 's/@''GNULIB_FSTATAT''@/$(GNULIB_FSTATAT)/g' \
              -e 's/@''GNULIB_FUTIMENS''@/$(GNULIB_FUTIMENS)/g' \
+             -e 's/@''GNULIB_GETUMASK''@/$(GNULIB_GETUMASK)/g' \
              -e 's/@''GNULIB_LCHMOD''@/$(GNULIB_LCHMOD)/g' \
              -e 's/@''GNULIB_LSTAT''@/$(GNULIB_LSTAT)/g' \
              -e 's/@''GNULIB_MKDIRAT''@/$(GNULIB_MKDIRAT)/g' \
@@ -1654,6 +1781,7 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU
              -e 's|@''HAVE_FCHMODAT''@|$(HAVE_FCHMODAT)|g' \
              -e 's|@''HAVE_FSTATAT''@|$(HAVE_FSTATAT)|g' \
              -e 's|@''HAVE_FUTIMENS''@|$(HAVE_FUTIMENS)|g' \
+             -e 's|@''HAVE_GETUMASK''@|$(HAVE_GETUMASK)|g' \
              -e 's|@''HAVE_LCHMOD''@|$(HAVE_LCHMOD)|g' \
              -e 's|@''HAVE_LSTAT''@|$(HAVE_LSTAT)|g' \
              -e 's|@''HAVE_MKDIRAT''@|$(HAVE_MKDIRAT)|g' \
@@ -1662,6 +1790,7 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU
              -e 's|@''HAVE_MKNOD''@|$(HAVE_MKNOD)|g' \
              -e 's|@''HAVE_MKNODAT''@|$(HAVE_MKNODAT)|g' \
              -e 's|@''HAVE_UTIMENSAT''@|$(HAVE_UTIMENSAT)|g' \
+             -e 's|@''REPLACE_FCHMODAT''@|$(REPLACE_FCHMODAT)|g' \
              -e 's|@''REPLACE_FSTAT''@|$(REPLACE_FSTAT)|g' \
              -e 's|@''REPLACE_FSTATAT''@|$(REPLACE_FSTATAT)|g' \
              -e 's|@''REPLACE_FUTIMENS''@|$(REPLACE_FUTIMENS)|g' \
@@ -1684,40 +1813,6 @@ EXTRA_DIST += sys_stat.in.h
 
 ## end   gnulib module sys_stat
 
-## begin gnulib module sys_time
-
-BUILT_SOURCES += sys/time.h
-
-# We need the following in order to create <sys/time.h> when the system
-# doesn't have one that works with the given compiler.
-sys/time.h: sys_time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H)
-       $(AM_V_at)$(MKDIR_P) sys
-       $(AM_V_GEN)rm -f $@-t $@ && \
-       { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
-         sed -e 's|@''GUARD_PREFIX''@|GL|g' \
-             -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_WINSOCK2_H''@|$(HAVE_WINSOCK2_H)|g' \
-             -e 's/@''HAVE_GETTIMEOFDAY''@/$(HAVE_GETTIMEOFDAY)/g' \
-             -e 's/@''HAVE_STRUCT_TIMEVAL''@/$(HAVE_STRUCT_TIMEVAL)/g' \
-             -e 's/@''REPLACE_GETTIMEOFDAY''@/$(REPLACE_GETTIMEOFDAY)/g' \
-             -e 's/@''REPLACE_STRUCT_TIMEVAL''@/$(REPLACE_STRUCT_TIMEVAL)/g' \
-             -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
-             -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \
-             -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
-             < $(srcdir)/sys_time.in.h; \
-       } > $@-t && \
-       mv $@-t $@
-MOSTLYCLEANFILES += sys/time.h sys/time.h-t
-
-EXTRA_DIST += sys_time.in.h
-
-## end   gnulib module sys_time
-
 ## begin gnulib module sys_types
 
 BUILT_SOURCES += sys/types.h
@@ -1756,8 +1851,6 @@ EXTRA_DIST += tempname.h
 
 libgnulib_la_SOURCES += glthread/threadlib.c
 
-EXTRA_DIST += $(top_srcdir)/build-aux/config.rpath
-
 ## end   gnulib module threadlib
 
 ## begin gnulib module time
@@ -1789,7 +1882,6 @@ time.h: time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(
              -e 's|@''HAVE_STRPTIME''@|$(HAVE_STRPTIME)|g' \
              -e 's|@''HAVE_TIMEGM''@|$(HAVE_TIMEGM)|g' \
              -e 's|@''HAVE_TIMEZONE_T''@|$(HAVE_TIMEZONE_T)|g' \
-             -e 's|@''HAVE_TZSET''@|$(HAVE_TZSET)|g' \
              -e 's|@''REPLACE_CTIME''@|$(REPLACE_CTIME)|g' \
              -e 's|@''REPLACE_GMTIME''@|$(REPLACE_GMTIME)|g' \
              -e 's|@''REPLACE_LOCALTIME''@|$(REPLACE_LOCALTIME)|g' \
@@ -1832,6 +1924,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
              -e 's|@''NEXT_UNISTD_H''@|$(NEXT_UNISTD_H)|g' \
              -e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \
+             -e 's/@''GNULIB_ACCESS''@/$(GNULIB_ACCESS)/g' \
              -e 's/@''GNULIB_CHDIR''@/$(GNULIB_CHDIR)/g' \
              -e 's/@''GNULIB_CHOWN''@/$(GNULIB_CHOWN)/g' \
              -e 's/@''GNULIB_CLOSE''@/$(GNULIB_CLOSE)/g' \
@@ -1850,10 +1943,12 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's/@''GNULIB_GETCWD''@/$(GNULIB_GETCWD)/g' \
              -e 's/@''GNULIB_GETDOMAINNAME''@/$(GNULIB_GETDOMAINNAME)/g' \
              -e 's/@''GNULIB_GETDTABLESIZE''@/$(GNULIB_GETDTABLESIZE)/g' \
+             -e 's/@''GNULIB_GETENTROPY''@/$(GNULIB_GETENTROPY)/g' \
              -e 's/@''GNULIB_GETGROUPS''@/$(GNULIB_GETGROUPS)/g' \
              -e 's/@''GNULIB_GETHOSTNAME''@/$(GNULIB_GETHOSTNAME)/g' \
              -e 's/@''GNULIB_GETLOGIN''@/$(GNULIB_GETLOGIN)/g' \
              -e 's/@''GNULIB_GETLOGIN_R''@/$(GNULIB_GETLOGIN_R)/g' \
+             -e 's/@''GNULIB_GETOPT_POSIX''@/$(GNULIB_GETOPT_POSIX)/g' \
              -e 's/@''GNULIB_GETPAGESIZE''@/$(GNULIB_GETPAGESIZE)/g' \
              -e 's/@''GNULIB_GETPASS''@/$(GNULIB_GETPASS)/g' \
              -e 's/@''GNULIB_GETUSERSHELL''@/$(GNULIB_GETUSERSHELL)/g' \
@@ -1887,7 +1982,6 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              < $(srcdir)/unistd.in.h | \
          sed -e 's|@''HAVE_CHOWN''@|$(HAVE_CHOWN)|g' \
              -e 's|@''HAVE_COPY_FILE_RANGE''@|$(HAVE_COPY_FILE_RANGE)|g' \
-             -e 's|@''HAVE_DUP2''@|$(HAVE_DUP2)|g' \
              -e 's|@''HAVE_DUP3''@|$(HAVE_DUP3)|g' \
              -e 's|@''HAVE_EUIDACCESS''@|$(HAVE_EUIDACCESS)|g' \
              -e 's|@''HAVE_FACCESSAT''@|$(HAVE_FACCESSAT)|g' \
@@ -1897,6 +1991,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''HAVE_FSYNC''@|$(HAVE_FSYNC)|g' \
              -e 's|@''HAVE_FTRUNCATE''@|$(HAVE_FTRUNCATE)|g' \
              -e 's|@''HAVE_GETDTABLESIZE''@|$(HAVE_GETDTABLESIZE)|g' \
+             -e 's|@''HAVE_GETENTROPY''@|$(HAVE_GETENTROPY)|g' \
              -e 's|@''HAVE_GETGROUPS''@|$(HAVE_GETGROUPS)|g' \
              -e 's|@''HAVE_GETHOSTNAME''@|$(HAVE_GETHOSTNAME)|g' \
              -e 's|@''HAVE_GETPAGESIZE''@|$(HAVE_GETPAGESIZE)|g' \
@@ -1918,6 +2013,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -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_EXECVPE''@|$(HAVE_DECL_EXECVPE)|g' \
              -e 's|@''HAVE_DECL_FCHDIR''@|$(HAVE_DECL_FCHDIR)|g' \
              -e 's|@''HAVE_DECL_FDATASYNC''@|$(HAVE_DECL_FDATASYNC)|g' \
              -e 's|@''HAVE_DECL_GETDOMAINNAME''@|$(HAVE_DECL_GETDOMAINNAME)|g' \
@@ -1931,7 +2027,8 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''HAVE_OS_H''@|$(HAVE_OS_H)|g' \
              -e 's|@''HAVE_SYS_PARAM_H''@|$(HAVE_SYS_PARAM_H)|g' \
          | \
-         sed -e 's|@''REPLACE_CHOWN''@|$(REPLACE_CHOWN)|g' \
+         sed -e 's|@''REPLACE_ACCESS''@|$(REPLACE_ACCESS)|g' \
+             -e 's|@''REPLACE_CHOWN''@|$(REPLACE_CHOWN)|g' \
              -e 's|@''REPLACE_CLOSE''@|$(REPLACE_CLOSE)|g' \
              -e 's|@''REPLACE_DUP''@|$(REPLACE_DUP)|g' \
              -e 's|@''REPLACE_DUP2''@|$(REPLACE_DUP2)|g' \
@@ -1965,6 +2062,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''REPLACE_UNLINKAT''@|$(REPLACE_UNLINKAT)|g' \
              -e 's|@''REPLACE_USLEEP''@|$(REPLACE_USLEEP)|g' \
              -e 's|@''REPLACE_WRITE''@|$(REPLACE_WRITE)|g' \
+             -e 's|@''UNISTD_H_HAVE_SYS_RANDOM_H''@|$(UNISTD_H_HAVE_SYS_RANDOM_H)|g' \
              -e 's|@''UNISTD_H_HAVE_WINSOCK2_H''@|$(UNISTD_H_HAVE_WINSOCK2_H)|g' \
              -e 's|@''UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS''@|$(UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS)|g' \
              -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
@@ -2069,6 +2167,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
              -e 's/@''GNULIB_WMEMCMP''@/$(GNULIB_WMEMCMP)/g' \
              -e 's/@''GNULIB_WMEMCPY''@/$(GNULIB_WMEMCPY)/g' \
              -e 's/@''GNULIB_WMEMMOVE''@/$(GNULIB_WMEMMOVE)/g' \
+             -e 's/@''GNULIB_WMEMPCPY''@/$(GNULIB_WMEMPCPY)/g' \
              -e 's/@''GNULIB_WMEMSET''@/$(GNULIB_WMEMSET)/g' \
              -e 's/@''GNULIB_WCSLEN''@/$(GNULIB_WCSLEN)/g' \
              -e 's/@''GNULIB_WCSNLEN''@/$(GNULIB_WCSNLEN)/g' \
@@ -2109,6 +2208,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
              -e 's|@''HAVE_WMEMCMP''@|$(HAVE_WMEMCMP)|g' \
              -e 's|@''HAVE_WMEMCPY''@|$(HAVE_WMEMCPY)|g' \
              -e 's|@''HAVE_WMEMMOVE''@|$(HAVE_WMEMMOVE)|g' \
+             -e 's|@''HAVE_WMEMPCPY''@|$(HAVE_WMEMPCPY)|g' \
              -e 's|@''HAVE_WMEMSET''@|$(HAVE_WMEMSET)|g' \
              -e 's|@''HAVE_WCSLEN''@|$(HAVE_WCSLEN)|g' \
              -e 's|@''HAVE_WCSNLEN''@|$(HAVE_WCSNLEN)|g' \
@@ -2135,6 +2235,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
              -e 's|@''HAVE_WCSWIDTH''@|$(HAVE_WCSWIDTH)|g' \
              -e 's|@''HAVE_WCSFTIME''@|$(HAVE_WCSFTIME)|g' \
              -e 's|@''HAVE_DECL_WCTOB''@|$(HAVE_DECL_WCTOB)|g' \
+             -e 's|@''HAVE_DECL_WCSDUP''@|$(HAVE_DECL_WCSDUP)|g' \
              -e 's|@''HAVE_DECL_WCWIDTH''@|$(HAVE_DECL_WCWIDTH)|g' \
          | \
          sed -e 's|@''REPLACE_MBSTATE_T''@|$(REPLACE_MBSTATE_T)|g' \
@@ -2151,6 +2252,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
              -e 's|@''REPLACE_WCWIDTH''@|$(REPLACE_WCWIDTH)|g' \
              -e 's|@''REPLACE_WCSWIDTH''@|$(REPLACE_WCSWIDTH)|g' \
              -e 's|@''REPLACE_WCSFTIME''@|$(REPLACE_WCSFTIME)|g' \
+             -e 's|@''REPLACE_WCSTOK''@|$(REPLACE_WCSTOK)|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)'; \
@@ -2190,6 +2292,8 @@ wctype.h: wctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H
              -e 's/@''HAVE_CRTDEFS_H''@/$(HAVE_CRTDEFS_H)/g' \
              -e 's/@''GNULIB_OVERRIDES_WINT_T''@/$(GNULIB_OVERRIDES_WINT_T)/g' \
              -e 's/@''GNULIB_ISWBLANK''@/$(GNULIB_ISWBLANK)/g' \
+             -e 's/@''GNULIB_ISWDIGIT''@/$(GNULIB_ISWDIGIT)/g' \
+             -e 's/@''GNULIB_ISWXDIGIT''@/$(GNULIB_ISWXDIGIT)/g' \
              -e 's/@''GNULIB_WCTYPE''@/$(GNULIB_WCTYPE)/g' \
              -e 's/@''GNULIB_ISWCTYPE''@/$(GNULIB_ISWCTYPE)/g' \
              -e 's/@''GNULIB_WCTRANS''@/$(GNULIB_WCTRANS)/g' \
@@ -2200,6 +2304,8 @@ wctype.h: wctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H
              -e 's/@''HAVE_WCTRANS_T''@/$(HAVE_WCTRANS_T)/g' \
              -e 's/@''HAVE_WINT_T''@/$(HAVE_WINT_T)/g' \
              -e 's/@''REPLACE_ISWBLANK''@/$(REPLACE_ISWBLANK)/g' \
+             -e 's/@''REPLACE_ISWDIGIT''@/$(REPLACE_ISWDIGIT)/g' \
+             -e 's/@''REPLACE_ISWXDIGIT''@/$(REPLACE_ISWXDIGIT)/g' \
              -e 's/@''REPLACE_ISWCNTRL''@/$(REPLACE_ISWCNTRL)/g' \
              -e 's/@''REPLACE_TOWLOWER''@/$(REPLACE_TOWLOWER)/g' \
              -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
@@ -2261,6 +2367,8 @@ EXTRA_DIST += xalloc.h
 
 libgnulib_la_SOURCES += xalloc-die.c
 
+EXTRA_DIST += xalloc.h
+
 ## end   gnulib module xalloc-die
 
 ## begin gnulib module xalloc-oversized
@@ -2278,7 +2386,7 @@ libgnulib_la_SOURCES += xstrndup.h xstrndup.c
 
 ## begin gnulib module xstrtol
 
-libgnulib_la_SOURCES += xstrtol.c xstrtoul.c xstrtol-error.c
+libgnulib_la_SOURCES += xstrtol.c xstrtoul.c
 
 EXTRA_DIST += xstrtol.h
 
@@ -2286,10 +2394,7 @@ EXTRA_DIST += xstrtol.h
 
 ## begin gnulib module xstrtoll
 
-
-EXTRA_DIST += xstrtoll.c xstrtoull.c
-
-EXTRA_libgnulib_la_SOURCES += xstrtoll.c xstrtoull.c
+libgnulib_la_SOURCES += xstrtoll.c xstrtoull.c
 
 ## end   gnulib module xstrtoll
 
index dcfcad62ee7cf86204109b07a7c358e829e9ba94..730e9be6e7b0a24bff6516ec3e375edc26132818 100644 (file)
@@ -1,6 +1,6 @@
 /* hard-locale.c -- Determine whether a locale is hard.
 
-   Copyright (C) 1997-1999, 2002-2004, 2006-2007, 2009-2019 Free Software
+   Copyright (C) 1997-1999, 2002-2004, 2006-2007, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
 #include "hard-locale.h"
 
 #include <locale.h>
-#include <stdlib.h>
 #include <string.h>
 
-#ifdef __GLIBC__
-# define GLIBC_VERSION __GLIBC__
-#elif defined __UCLIBC__
-# define GLIBC_VERSION 2
-#else
-# define GLIBC_VERSION 0
-#endif
-
-/* Return true if the current CATEGORY locale is hard, i.e. if you
-   can't get away with assuming traditional C or POSIX behavior.  */
 bool
 hard_locale (int category)
 {
-  bool hard = true;
-  char const *p = setlocale (category, NULL);
-
-  if (p)
-    {
-      if (2 <= GLIBC_VERSION)
-        {
-          if (strcmp (p, "C") == 0 || strcmp (p, "POSIX") == 0)
-            hard = false;
-        }
-      else
-        {
-          char *locale = strdup (p);
-          if (locale)
-            {
-              /* Temporarily set the locale to the "C" and "POSIX" locales
-                 to find their names, so that we can determine whether one
-                 or the other is the caller's locale.  */
-              if (((p = setlocale (category, "C"))
-                   && strcmp (p, locale) == 0)
-                  || ((p = setlocale (category, "POSIX"))
-                      && strcmp (p, locale) == 0))
-                hard = false;
+  char locale[SETLOCALE_NULL_MAX];
 
-              /* Restore the caller's locale.  */
-              setlocale (category, locale);
-              free (locale);
-            }
-        }
-    }
+  if (setlocale_null_r (category, locale, sizeof (locale)))
+    return false;
 
-  return hard;
+  return !(strcmp (locale, "C") == 0 || strcmp (locale, "POSIX") == 0);
 }
index 8f1da96e2f252abf418f41c721b732724f1fcb23..1886eaae922697bf33d0051583a3afbc2b8ff6bd 100644 (file)
@@ -1,6 +1,6 @@
 /* Determine whether a locale is hard.
 
-   Copyright (C) 1999, 2003-2004, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 1999, 2003-2004, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -20,6 +20,9 @@
 
 # include <stdbool.h>
 
-bool hard_locale (int);
+/* Return true if the specified CATEGORY of the current locale is hard, i.e.
+   different from the C or POSIX locale that has a fixed behavior.
+   CATEGORY must be one of the LC_* values, but not LC_ALL.  */
+extern bool hard_locale (int category);
 
 #endif /* HARD_LOCALE_H_ */
diff --git a/lib/idx.h b/lib/idx.h
new file mode 100644 (file)
index 0000000..a2c1de9
--- /dev/null
+++ b/lib/idx.h
@@ -0,0 +1,118 @@
+/* A type for indices and sizes.
+
+   Copyright (C) 2020 Free Software Foundation, Inc.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3, or (at your option)
+   any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
+
+#ifndef _IDX_H
+#define _IDX_H
+
+/* Get ptrdiff_t.  */
+#include <stddef.h>
+
+/* Get PTRDIFF_WIDTH.  */
+#include <stdint.h>
+
+/* The type 'idx_t' holds an (array) index or an (object) size.
+   Its implementation is a signed integer type, capable of holding the values
+     0..2^63-1 (on 64-bit platforms) or
+     0..2^31-1 (on 32-bit platforms).
+
+   Why a signed integer type?
+
+     * Security: Signed types can be checked for overflow via
+       '-fsanitize=undefined', but unsigned types cannot.
+
+     * Comparisons without surprises: ISO C99 § 6.3.1.8 specifies a few
+       surprising results for comparisons, such as
+
+           (int) -3 < (unsigned long) 7  =>  false
+           (int) -3 < (unsigned int) 7   =>  false
+       and on 32-bit machines:
+           (long) -3 < (unsigned int) 7  =>  false
+
+       This is surprising because the natural comparison order is by
+       value in the realm of infinite-precision signed integers (ℤ).
+
+       The best way to get rid of such surprises is to use signed types
+       for numerical integer values, and use unsigned types only for
+       bit masks and enums.
+
+   Why not use 'size_t' directly?
+
+     * Because 'size_t' is an unsigned type, and a signed type is better.
+       See above.
+
+   Why not use 'ptrdiff_t' directly?
+
+     * Maintainability: When reading and modifying code, it helps to know that
+       a certain variable cannot have negative values.  For example, when you
+       have a loop
+
+         int n = ...;
+         for (int i = 0; i < n; i++) ...
+
+       or
+
+         ptrdiff_t n = ...;
+         for (ptrdiff_t i = 0; i < n; i++) ...
+
+       you have to ask yourself "what if n < 0?".  Whereas in
+
+         idx_t n = ...;
+         for (idx_t i = 0; i < n; i++) ...
+
+       you know that this case cannot happen.
+
+       Similarly, when a programmer writes
+
+         idx_t = ptr2 - ptr1;
+
+       there is an implied assertion that ptr1 and ptr2 point into the same
+       object and that ptr1 <= ptr2.
+
+     * Being future-proof: In the future, range types (integers which are
+       constrained to a certain range of values) may be added to C compilers
+       or to the C standard.  Several programming languages (Ada, Haskell,
+       Common Lisp, Pascal) already have range types.  Such range types may
+       help producing good code and good warnings.  The type 'idx_t' could
+       then be typedef'ed to a (signed!) range type.  */
+
+#if 0
+/* In the future, idx_t could be typedef'ed to a signed range type.  */
+/* Note: The clang "extended integer types", supported in Clang 11 or newer
+   <https://clang.llvm.org/docs/LanguageExtensions.html#extended-integer-types>,
+   are a special case of range types.  However, these types don't support binary
+   operators with plain integer types (e.g. expressions such as x > 1).
+   Therefore, they don't behave like signed types (and not like unsigned types
+   either).  So, we cannot use them here.  */
+typedef <some_range_type> idx_t;
+#else
+/* Use the signed type 'ptrdiff_t' by default.  */
+/* Note: ISO C does not mandate that 'size_t' and 'ptrdiff_t' have the same
+   size, but it is so an all platforms we have seen since 1990.  */
+typedef ptrdiff_t idx_t;
+#endif
+
+/* IDX_MAX is the maximum value of an idx_t.  */
+#if defined UNSIGNED_IDX_T
+# define IDX_MAX SIZE_MAX
+#else
+# define IDX_MAX PTRDIFF_MAX
+#endif
+
+/* IDX_WIDTH is the number of bits in an idx_t (31 or 63).  */
+#define IDX_WIDTH (PTRDIFF_WIDTH - 1)
+
+#endif /* _IDX_H */
index 1a44ae5565373cabbbd2fd032f4c0ccff4265e78..f29c421071751f63070ed8c46faaa1fc4f388be1 100644 (file)
@@ -1,6 +1,6 @@
 /* intprops.h -- properties of integer types
 
-   Copyright (C) 2001-2019 Free Software Foundation, Inc.
+   Copyright (C) 2001-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published
@@ -48,7 +48,7 @@
 /* Minimum and maximum values for integer types and expressions.  */
 
 /* The width in bits of the integer type or expression T.
-   Do not evaluate T.
+   Do not evaluate T.  T must not be a bit-field expression.
    Padding bits are not supported; this is checked at compile-time below.  */
 #define TYPE_WIDTH(t) (sizeof (t) * CHAR_BIT)
 
@@ -70,7 +70,7 @@
    ? _GL_SIGNED_INT_MAXIMUM (e)                                         \
    : _GL_INT_NEGATE_CONVERT (e, 1))
 #define _GL_SIGNED_INT_MAXIMUM(e)                                       \
-  (((_GL_INT_CONVERT (e, 1) << (TYPE_WIDTH ((e) + 0) - 2)) - 1) * 2 + 1)
+  (((_GL_INT_CONVERT (e, 1) << (TYPE_WIDTH (+ (e)) - 2)) - 1) * 2 + 1)
 
 /* Work around OpenVMS incompatibility with C99.  */
 #if !defined LLONG_MAX && defined __INT64_MAX
@@ -86,6 +86,7 @@
 /* Does the __typeof__ keyword work?  This could be done by
    'configure', but for now it's easier to do it by hand.  */
 #if (2 <= __GNUC__ \
+     || (4 <= __clang_major__) \
      || (1210 <= __IBMC__ && defined __IBM__TYPEOF__) \
      || (0x5110 <= __SUNPRO_C && !__STDC__))
 # define _GL_HAVE___TYPEOF__ 1
@@ -94,8 +95,9 @@
 #endif
 
 /* Return 1 if the integer type or expression T might be signed.  Return 0
-   if it is definitely unsigned.  This macro does not evaluate its argument,
-   and expands to an integer constant expression.  */
+   if it is definitely unsigned.  T must not be a bit-field expression.
+   This macro does not evaluate its argument, and expands to an
+   integer constant expression.  */
 #if _GL_HAVE___TYPEOF__
 # define _GL_SIGNED_TYPE_OR_EXPR(t) TYPE_SIGNED (__typeof__ (t))
 #else
 #define INT_BITS_STRLEN_BOUND(b) (((b) * 146 + 484) / 485)
 
 /* Bound on length of the string representing an integer type or expression T.
+   T must not be a bit-field expression.
+
    Subtract 1 for the sign bit if T is signed, and then add 1 more for
    a minus sign if needed.
 
-   Because _GL_SIGNED_TYPE_OR_EXPR sometimes returns 0 when its argument is
-   signed, this macro may overestimate the true bound by one byte when
+   Because _GL_SIGNED_TYPE_OR_EXPR sometimes returns 1 when its argument is
+   unsigned, this macro may overestimate the true bound by one byte when
    applied to unsigned types of size 2, 4, 16, ... bytes.  */
 #define INT_STRLEN_BOUND(t)                                     \
   (INT_BITS_STRLEN_BOUND (TYPE_WIDTH (t) - _GL_SIGNED_TYPE_OR_EXPR (t)) \
    + _GL_SIGNED_TYPE_OR_EXPR (t))
 
 /* Bound on buffer size needed to represent an integer type or expression T,
-   including the terminating null.  */
+   including the terminating null.  T must not be a bit-field expression.  */
 #define INT_BUFSIZE_BOUND(t) (INT_STRLEN_BOUND (t) + 1)
 
 
    ? (a) < (min) >> (b)                                 \
    : (max) >> (b) < (a))
 
-/* True if __builtin_add_overflow (A, B, P) works when P is non-null.  */
+/* True if __builtin_add_overflow (A, B, P) and __builtin_sub_overflow
+   (A, B, P) work when P is non-null.  */
 #if 5 <= __GNUC__ && !defined __ICC
-# define _GL_HAS_BUILTIN_OVERFLOW 1
+# define _GL_HAS_BUILTIN_ADD_OVERFLOW 1
+#elif defined __has_builtin
+# define _GL_HAS_BUILTIN_ADD_OVERFLOW __has_builtin (__builtin_add_overflow)
+#else
+# define _GL_HAS_BUILTIN_ADD_OVERFLOW 0
+#endif
+
+/* True if __builtin_mul_overflow (A, B, P) works when P is non-null.  */
+#ifdef __clang__
+/* Work around Clang bug <https://bugs.llvm.org/show_bug.cgi?id=16404>.  */
+# define _GL_HAS_BUILTIN_MUL_OVERFLOW 0
 #else
-# define _GL_HAS_BUILTIN_OVERFLOW 0
+# define _GL_HAS_BUILTIN_MUL_OVERFLOW _GL_HAS_BUILTIN_ADD_OVERFLOW
 #endif
 
-/* True if __builtin_add_overflow_p (A, B, C) works.  */
-#define _GL_HAS_BUILTIN_OVERFLOW_P (7 <= __GNUC__)
+/* True if __builtin_add_overflow_p (A, B, C) works, and similarly for
+   __builtin_sub_overflow_p and __builtin_mul_overflow_p.  */
+#ifdef __clang__
+/* Clang 9 lacks __builtin_mul_overflow_p, and even if it did it would
+   presumably run afoul of Clang bug 16404.  */
+# define _GL_HAS_BUILTIN_OVERFLOW_P 0
+#else
+# define _GL_HAS_BUILTIN_OVERFLOW_P (7 <= __GNUC__)
+#endif
 
 /* The _GL*_OVERFLOW macros have the same restrictions as the
    *_RANGE_OVERFLOW macros, except that they do not assume that operands
 
    The INT_<op>_OVERFLOW macros return 1 if the corresponding C operators
    might not yield numerically correct answers due to arithmetic overflow.
-   The INT_<op>_WRAPV macros also store the low-order bits of the answer.
+   The INT_<op>_WRAPV macros compute the low-order bits of the sum,
+   difference, and product of two C integers, and return 1 if these
+   low-order bits are not numerically correct.
    These macros work correctly on all known practical hosts, and do not rely
    on undefined behavior due to signed arithmetic overflow.
 
    arguments should not have side effects.
 
    The WRAPV macros are not constant expressions.  They support only
-   +, binary -, and *.  The result type must be signed.
+   +, binary -, and *.  Because the WRAPV macros convert the result,
+   they report overflow in different circumstances than the OVERFLOW
+   macros do.
 
-   These macros are tuned for their last argument being a constant.
+   These macros are tuned for their last input argument being a constant.
 
    Return 1 if the integer expressions A * B, A - B, -A, A * B, A / B,
    A % B, and A << B would overflow, respectively.  */
 
 /* Store the low-order bits of A + B, A - B, A * B, respectively, into *R.
    Return 1 if the result overflows.  See above for restrictions.  */
-#define INT_ADD_WRAPV(a, b, r) \
-  _GL_INT_OP_WRAPV (a, b, r, +, __builtin_add_overflow, INT_ADD_OVERFLOW)
-#define INT_SUBTRACT_WRAPV(a, b, r) \
-  _GL_INT_OP_WRAPV (a, b, r, -, __builtin_sub_overflow, INT_SUBTRACT_OVERFLOW)
-#define INT_MULTIPLY_WRAPV(a, b, r) \
-  _GL_INT_OP_WRAPV (a, b, r, *, __builtin_mul_overflow, INT_MULTIPLY_OVERFLOW)
+#if _GL_HAS_BUILTIN_ADD_OVERFLOW
+# define INT_ADD_WRAPV(a, b, r) __builtin_add_overflow (a, b, r)
+# define INT_SUBTRACT_WRAPV(a, b, r) __builtin_sub_overflow (a, b, r)
+#else
+# define INT_ADD_WRAPV(a, b, r) \
+   _GL_INT_OP_WRAPV (a, b, r, +, _GL_INT_ADD_RANGE_OVERFLOW)
+# define INT_SUBTRACT_WRAPV(a, b, r) \
+   _GL_INT_OP_WRAPV (a, b, r, -, _GL_INT_SUBTRACT_RANGE_OVERFLOW)
+#endif
+#if _GL_HAS_BUILTIN_MUL_OVERFLOW
+# if (9 < __GNUC__ + (3 <= __GNUC_MINOR__) \
+      || (__GNUC__ == 8 && 4 <= __GNUC_MINOR__))
+#  define INT_MULTIPLY_WRAPV(a, b, r) __builtin_mul_overflow (a, b, r)
+# else
+   /* Work around GCC bug 91450.  */
+#  define INT_MULTIPLY_WRAPV(a, b, r) \
+    ((!_GL_SIGNED_TYPE_OR_EXPR (*(r)) && EXPR_SIGNED (a) && EXPR_SIGNED (b) \
+      && _GL_INT_MULTIPLY_RANGE_OVERFLOW (a, b, 0, (__typeof__ (*(r))) -1)) \
+     ? ((void) __builtin_mul_overflow (a, b, r), 1) \
+     : __builtin_mul_overflow (a, b, r))
+# endif
+#else
+# define INT_MULTIPLY_WRAPV(a, b, r) \
+   _GL_INT_OP_WRAPV (a, b, r, *, _GL_INT_MULTIPLY_RANGE_OVERFLOW)
+#endif
 
 /* Nonzero if this compiler has GCC bug 68193 or Clang bug 25390.  See:
    https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68193
    https://llvm.org/bugs/show_bug.cgi?id=25390
    For now, assume all versions of GCC-like compilers generate bogus
-   warnings for _Generic.  This matters only for older compilers that
-   lack __builtin_add_overflow.  */
-#if __GNUC__
+   warnings for _Generic.  This matters only for compilers that
+   lack relevant builtins.  */
+#if __GNUC__ || defined __clang__
 # define _GL__GENERIC_BOGUS 1
 #else
 # define _GL__GENERIC_BOGUS 0
 #endif
 
 /* Store the low-order bits of A <op> B into *R, where OP specifies
-   the operation.  BUILTIN is the builtin operation, and OVERFLOW the
-   overflow predicate.  Return 1 if the result overflows.  See above
-   for restrictions.  */
-#if _GL_HAS_BUILTIN_OVERFLOW
-# define _GL_INT_OP_WRAPV(a, b, r, op, builtin, overflow) builtin (a, b, r)
-#elif 201112 <= __STDC_VERSION__ && !_GL__GENERIC_BOGUS
-# define _GL_INT_OP_WRAPV(a, b, r, op, builtin, overflow) \
+   the operation and OVERFLOW the overflow predicate.  Return 1 if the
+   result overflows.  See above for restrictions.  */
+#if 201112 <= __STDC_VERSION__ && !_GL__GENERIC_BOGUS
+# define _GL_INT_OP_WRAPV(a, b, r, op, overflow) \
    (_Generic \
     (*(r), \
      signed char: \
        _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
                         signed char, SCHAR_MIN, SCHAR_MAX), \
+     unsigned char: \
+       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
+                        unsigned char, 0, UCHAR_MAX), \
      short int: \
        _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
                         short int, SHRT_MIN, SHRT_MAX), \
+     unsigned short int: \
+       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
+                        unsigned short int, 0, USHRT_MAX), \
      int: \
        _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
                         int, INT_MIN, INT_MAX), \
+     unsigned int: \
+       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
+                        unsigned int, 0, UINT_MAX), \
      long int: \
        _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \
                         long int, LONG_MIN, LONG_MAX), \
+     unsigned long int: \
+       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \
+                        unsigned long int, 0, ULONG_MAX), \
      long long int: \
        _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \
-                        long long int, LLONG_MIN, LLONG_MAX)))
+                        long long int, LLONG_MIN, LLONG_MAX), \
+     unsigned long long int: \
+       _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \
+                        unsigned long long int, 0, ULLONG_MAX)))
 #else
-# define _GL_INT_OP_WRAPV(a, b, r, op, builtin, overflow) \
+/* Store the low-order bits of A <op> B into *R, where OP specifies
+   the operation and OVERFLOW the overflow predicate.  If *R is
+   signed, its type is ST with bounds SMIN..SMAX; otherwise its type
+   is UT with bounds U..UMAX.  ST and UT are narrower than int.
+   Return 1 if the result overflows.  See above for restrictions.  */
+# if _GL_HAVE___TYPEOF__
+#  define _GL_INT_OP_WRAPV_SMALLISH(a,b,r,op,overflow,st,smin,smax,ut,umax) \
+    (TYPE_SIGNED (__typeof__ (*(r))) \
+     ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, st, smin, smax) \
+     : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, ut, 0, umax))
+# else
+#  define _GL_INT_OP_WRAPV_SMALLISH(a,b,r,op,overflow,st,smin,smax,ut,umax) \
+    (overflow (a, b, smin, smax) \
+     ? (overflow (a, b, 0, umax) \
+        ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st), 1) \
+        : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st)) < 0) \
+     : (overflow (a, b, 0, umax) \
+        ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st)) >= 0 \
+        : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st), 0)))
+# endif
+
+# define _GL_INT_OP_WRAPV(a, b, r, op, overflow) \
    (sizeof *(r) == sizeof (signed char) \
-    ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
-                       signed char, SCHAR_MIN, SCHAR_MAX) \
+    ? _GL_INT_OP_WRAPV_SMALLISH (a, b, r, op, overflow, \
+                                 signed char, SCHAR_MIN, SCHAR_MAX, \
+                                 unsigned char, UCHAR_MAX) \
     : sizeof *(r) == sizeof (short int) \
-    ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
-                       short int, SHRT_MIN, SHRT_MAX) \
+    ? _GL_INT_OP_WRAPV_SMALLISH (a, b, r, op, overflow, \
+                                 short int, SHRT_MIN, SHRT_MAX, \
+                                 unsigned short int, USHRT_MAX) \
     : sizeof *(r) == sizeof (int) \
-    ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
-                       int, INT_MIN, INT_MAX) \
+    ? (EXPR_SIGNED (*(r)) \
+       ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
+                          int, INT_MIN, INT_MAX) \
+       : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
+                          unsigned int, 0, UINT_MAX)) \
     : _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow))
 # ifdef LLONG_MAX
 #  define _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow) \
     (sizeof *(r) == sizeof (long int) \
-     ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \
-                        long int, LONG_MIN, LONG_MAX) \
-     : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \
-                        long long int, LLONG_MIN, LLONG_MAX))
+     ? (EXPR_SIGNED (*(r)) \
+        ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \
+                           long int, LONG_MIN, LONG_MAX) \
+        : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \
+                           unsigned long int, 0, ULONG_MAX)) \
+     : (EXPR_SIGNED (*(r)) \
+        ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \
+                           long long int, LLONG_MIN, LLONG_MAX) \
+        : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \
+                           unsigned long long int, 0, ULLONG_MAX)))
 # else
 #  define _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow) \
-    _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \
-                     long int, LONG_MIN, LONG_MAX)
+    (EXPR_SIGNED (*(r)) \
+     ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \
+                        long int, LONG_MIN, LONG_MAX) \
+     : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \
+                        unsigned long int, 0, ULONG_MAX))
 # endif
 #endif
 
    overflow problems.  *R's type is T, with extrema TMIN and TMAX.
    T must be a signed integer type.  Return 1 if the result overflows.  */
 #define _GL_INT_OP_CALC(a, b, r, op, overflow, ut, t, tmin, tmax) \
-  (sizeof ((a) op (b)) < sizeof (t) \
-   ? _GL_INT_OP_CALC1 ((t) (a), (t) (b), r, op, overflow, ut, t, tmin, tmax) \
-   : _GL_INT_OP_CALC1 (a, b, r, op, overflow, ut, t, tmin, tmax))
-#define _GL_INT_OP_CALC1(a, b, r, op, overflow, ut, t, tmin, tmax) \
-  ((overflow (a, b) \
-    || (EXPR_SIGNED ((a) op (b)) && ((a) op (b)) < (tmin)) \
-    || (tmax) < ((a) op (b))) \
+  (overflow (a, b, tmin, tmax) \
    ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t), 1) \
    : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t), 0))
 
 #define _GL_INT_OP_WRAPV_VIA_UNSIGNED(a, b, op, ut, t) \
   ((t) ((ut) (a) op (ut) (b)))
 
+/* Return true if the numeric values A + B, A - B, A * B fall outside
+   the range TMIN..TMAX.  Arguments should be integer expressions
+   without side effects.  TMIN should be signed and nonpositive.
+   TMAX should be positive, and should be signed unless TMIN is zero.  */
+#define _GL_INT_ADD_RANGE_OVERFLOW(a, b, tmin, tmax) \
+  ((b) < 0 \
+   ? (((tmin) \
+       ? ((EXPR_SIGNED (_GL_INT_CONVERT (a, (tmin) - (b))) || (b) < (tmin)) \
+          && (a) < (tmin) - (b)) \
+       : (a) <= -1 - (b)) \
+      || ((EXPR_SIGNED (a) ? 0 <= (a) : (tmax) < (a)) && (tmax) < (a) + (b))) \
+   : (a) < 0 \
+   ? (((tmin) \
+       ? ((EXPR_SIGNED (_GL_INT_CONVERT (b, (tmin) - (a))) || (a) < (tmin)) \
+          && (b) < (tmin) - (a)) \
+       : (b) <= -1 - (a)) \
+      || ((EXPR_SIGNED (_GL_INT_CONVERT (a, b)) || (tmax) < (b)) \
+          && (tmax) < (a) + (b))) \
+   : (tmax) < (b) || (tmax) - (b) < (a))
+#define _GL_INT_SUBTRACT_RANGE_OVERFLOW(a, b, tmin, tmax) \
+  (((a) < 0) == ((b) < 0) \
+   ? ((a) < (b) \
+      ? !(tmin) || -1 - (tmin) < (b) - (a) - 1 \
+      : (tmax) < (a) - (b)) \
+   : (a) < 0 \
+   ? ((!EXPR_SIGNED (_GL_INT_CONVERT ((a) - (tmin), b)) && (a) - (tmin) < 0) \
+      || (a) - (tmin) < (b)) \
+   : ((! (EXPR_SIGNED (_GL_INT_CONVERT (tmax, b)) \
+          && EXPR_SIGNED (_GL_INT_CONVERT ((tmax) + (b), a))) \
+       && (tmax) <= -1 - (b)) \
+      || (tmax) + (b) < (a)))
+#define _GL_INT_MULTIPLY_RANGE_OVERFLOW(a, b, tmin, tmax) \
+  ((b) < 0 \
+   ? ((a) < 0 \
+      ? (EXPR_SIGNED (_GL_INT_CONVERT (tmax, b)) \
+         ? (a) < (tmax) / (b) \
+         : ((INT_NEGATE_OVERFLOW (b) \
+             ? _GL_INT_CONVERT (b, tmax) >> (TYPE_WIDTH (+ (b)) - 1) \
+             : (tmax) / -(b)) \
+            <= -1 - (a))) \
+      : INT_NEGATE_OVERFLOW (_GL_INT_CONVERT (b, tmin)) && (b) == -1 \
+      ? (EXPR_SIGNED (a) \
+         ? 0 < (a) + (tmin) \
+         : 0 < (a) && -1 - (tmin) < (a) - 1) \
+      : (tmin) / (b) < (a)) \
+   : (b) == 0 \
+   ? 0 \
+   : ((a) < 0 \
+      ? (INT_NEGATE_OVERFLOW (_GL_INT_CONVERT (a, tmin)) && (a) == -1 \
+         ? (EXPR_SIGNED (b) ? 0 < (b) + (tmin) : -1 - (tmin) < (b) - 1) \
+         : (tmin) / (a) < (b)) \
+      : (tmax) / (b) < (a)))
+
+/* The following macros compute A + B, A - B, and A * B, respectively.
+   If no overflow occurs, they set *R to the result and return 1;
+   otherwise, they return 0 and may modify *R.
+
+   Example usage:
+
+     long int result;
+     if (INT_ADD_OK (a, b, &result))
+       printf ("result is %ld\n", result);
+     else
+       printf ("overflow\n");
+
+   A, B, and *R should be integers; they need not be the same type,
+   and they need not be all signed or all unsigned.
+
+   These macros work correctly on all known practical hosts, and do not rely
+   on undefined behavior due to signed arithmetic overflow.
+
+   These macros are not constant expressions.
+
+   These macros may evaluate their arguments zero or multiple times, so the
+   arguments should not have side effects.
+
+   These macros are tuned for B being a constant.  */
+
+#define INT_ADD_OK(a, b, r) ! INT_ADD_WRAPV (a, b, r)
+#define INT_SUBTRACT_OK(a, b, r) ! INT_SUBTRACT_WRAPV (a, b, r)
+#define INT_MULTIPLY_OK(a, b, r) ! INT_MULTIPLY_WRAPV (a, b, r)
+
 #endif /* _GL_INTPROPS_H */
index d3c735c12ce2b1ec1afdb15d2a9dd6ce6d8f6d93..596a050458b00cc407fbb6fac414a143aecf5ca5 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2006-2019 Free Software Foundation, Inc.
+/* Copyright (C) 2006-2020 Free Software Foundation, Inc.
    Written by Paul Eggert, Bruno Haible, Derek Price.
    This file is part of gnulib.
 
@@ -17,7 +17,7 @@
 
 /*
  * ISO C 99 <inttypes.h> for platforms that lack it.
- * <http://www.opengroup.org/susv3xbd/inttypes.h.html>
+ * <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/inttypes.h.html>
  */
 
 #if __GNUC__ >= 3
@@ -38,6 +38,8 @@
 #  endif
 
 #  @INCLUDE_NEXT@ @NEXT_INTTYPES_H@
+
+#  define _GL_FINISHED_INCLUDING_SYSTEM_INTTYPES_H
 # endif
 #endif
 
 #ifndef __GLIBC__
 # include <stdint.h>
 #endif
-/* Get CHAR_BIT.  */
+/* Get CHAR_BIT, INT_MAX, LONG_MAX, etc.  */
 #include <limits.h>
 /* On mingw, __USE_MINGW_ANSI_STDIO only works if <stdio.h> is also included */
 #if defined _WIN32 && ! defined __CYGWIN__
 # include <stdio.h>
 #endif
 
-#if !(INT_MIN == INT32_MIN && INT_MAX == INT32_MAX)
-# error "This file assumes that 'int' has exactly 32 bits. Please report your platform and compiler to <bug-gnulib@gnu.org>."
+#if !(INT_MAX == 0x7fffffff && INT_MIN + INT_MAX == -1)
+# error "This file assumes that 'int' is 32-bit two's complement. Please report your platform and compiler to <bug-gnulib@gnu.org>."
 #endif
 
 /* The definitions of _GL_FUNCDECL_RPL etc. are copied here.  */
 # define _LONG_LONG_FORMAT_PREFIX "ll"
 #endif
 
-#if !defined PRId8 || @PRI_MACROS_BROKEN@
-# undef PRId8
+#if !defined PRId8
 # ifdef INT8_MAX
 #  define PRId8 "d"
 # endif
 #endif
-#if !defined PRIi8 || @PRI_MACROS_BROKEN@
-# undef PRIi8
+#if !defined PRIi8
 # ifdef INT8_MAX
 #  define PRIi8 "i"
 # endif
 #endif
-#if !defined PRIo8 || @PRI_MACROS_BROKEN@
-# undef PRIo8
+#if !defined PRIo8
 # ifdef UINT8_MAX
 #  define PRIo8 "o"
 # endif
 #endif
-#if !defined PRIu8 || @PRI_MACROS_BROKEN@
-# undef PRIu8
+#if !defined PRIu8
 # ifdef UINT8_MAX
 #  define PRIu8 "u"
 # endif
 #endif
-#if !defined PRIx8 || @PRI_MACROS_BROKEN@
-# undef PRIx8
+#if !defined PRIx8
 # ifdef UINT8_MAX
 #  define PRIx8 "x"
 # endif
 #endif
-#if !defined PRIX8 || @PRI_MACROS_BROKEN@
-# undef PRIX8
+#if !defined PRIX8
 # ifdef UINT8_MAX
 #  define PRIX8 "X"
 # endif
 #endif
-#if !defined PRId16 || @PRI_MACROS_BROKEN@
-# undef PRId16
+#if !defined PRId16
 # ifdef INT16_MAX
 #  define PRId16 "d"
 # endif
 #endif
-#if !defined PRIi16 || @PRI_MACROS_BROKEN@
-# undef PRIi16
+#if !defined PRIi16
 # ifdef INT16_MAX
 #  define PRIi16 "i"
 # endif
 #endif
-#if !defined PRIo16 || @PRI_MACROS_BROKEN@
-# undef PRIo16
+#if !defined PRIo16
 # ifdef UINT16_MAX
 #  define PRIo16 "o"
 # endif
 #endif
-#if !defined PRIu16 || @PRI_MACROS_BROKEN@
-# undef PRIu16
+#if !defined PRIu16
 # ifdef UINT16_MAX
 #  define PRIu16 "u"
 # endif
 #endif
-#if !defined PRIx16 || @PRI_MACROS_BROKEN@
-# undef PRIx16
+#if !defined PRIx16
 # ifdef UINT16_MAX
 #  define PRIx16 "x"
 # endif
 #endif
-#if !defined PRIX16 || @PRI_MACROS_BROKEN@
-# undef PRIX16
+#if !defined PRIX16
 # ifdef UINT16_MAX
 #  define PRIX16 "X"
 # endif
 #endif
-#if !defined PRId32 || @PRI_MACROS_BROKEN@
-# undef PRId32
+#if !defined PRId32
 # ifdef INT32_MAX
 #  define PRId32 "d"
 # endif
 #endif
-#if !defined PRIi32 || @PRI_MACROS_BROKEN@
-# undef PRIi32
+#if !defined PRIi32
 # ifdef INT32_MAX
 #  define PRIi32 "i"
 # endif
 #endif
-#if !defined PRIo32 || @PRI_MACROS_BROKEN@
-# undef PRIo32
+#if !defined PRIo32
 # ifdef UINT32_MAX
 #  define PRIo32 "o"
 # endif
 #endif
-#if !defined PRIu32 || @PRI_MACROS_BROKEN@
-# undef PRIu32
+#if !defined PRIu32
 # ifdef UINT32_MAX
 #  define PRIu32 "u"
 # endif
 #endif
-#if !defined PRIx32 || @PRI_MACROS_BROKEN@
-# undef PRIx32
+#if !defined PRIx32
 # ifdef UINT32_MAX
 #  define PRIx32 "x"
 # endif
 #endif
-#if !defined PRIX32 || @PRI_MACROS_BROKEN@
-# undef PRIX32
+#if !defined PRIX32
 # ifdef UINT32_MAX
 #  define PRIX32 "X"
 # endif
 #  define _PRI64_PREFIX "l"
 # elif defined _MSC_VER || defined __MINGW32__
 #  define _PRI64_PREFIX "I64"
-# elif @HAVE_LONG_LONG_INT@ && LONG_MAX >> 30 == 1
+# elif LONG_MAX >> 30 == 1
 #  define _PRI64_PREFIX _LONG_LONG_FORMAT_PREFIX
 # endif
-# if !defined PRId64 || @PRI_MACROS_BROKEN@
-#  undef PRId64
+# if !defined PRId64
 #  define PRId64 _PRI64_PREFIX "d"
 # endif
-# if !defined PRIi64 || @PRI_MACROS_BROKEN@
-#  undef PRIi64
+# if !defined PRIi64
 #  define PRIi64 _PRI64_PREFIX "i"
 # endif
 #endif
 #  define _PRIu64_PREFIX "l"
 # elif defined _MSC_VER || defined __MINGW32__
 #  define _PRIu64_PREFIX "I64"
-# elif @HAVE_UNSIGNED_LONG_LONG_INT@ && ULONG_MAX >> 31 == 1
+# elif ULONG_MAX >> 31 == 1
 #  define _PRIu64_PREFIX _LONG_LONG_FORMAT_PREFIX
 # endif
-# if !defined PRIo64 || @PRI_MACROS_BROKEN@
-#  undef PRIo64
+# if !defined PRIo64
 #  define PRIo64 _PRIu64_PREFIX "o"
 # endif
-# if !defined PRIu64 || @PRI_MACROS_BROKEN@
-#  undef PRIu64
+# if !defined PRIu64
 #  define PRIu64 _PRIu64_PREFIX "u"
 # endif
-# if !defined PRIx64 || @PRI_MACROS_BROKEN@
-#  undef PRIx64
+# if !defined PRIx64
 #  define PRIx64 _PRIu64_PREFIX "x"
 # endif
-# if !defined PRIX64 || @PRI_MACROS_BROKEN@
-#  undef PRIX64
+# if !defined PRIX64
 #  define PRIX64 _PRIu64_PREFIX "X"
 # endif
 #endif
 
-#if !defined PRIdLEAST8 || @PRI_MACROS_BROKEN@
-# undef PRIdLEAST8
+#if !defined PRIdLEAST8
 # define PRIdLEAST8 "d"
 #endif
-#if !defined PRIiLEAST8 || @PRI_MACROS_BROKEN@
-# undef PRIiLEAST8
+#if !defined PRIiLEAST8
 # define PRIiLEAST8 "i"
 #endif
-#if !defined PRIoLEAST8 || @PRI_MACROS_BROKEN@
-# undef PRIoLEAST8
+#if !defined PRIoLEAST8
 # define PRIoLEAST8 "o"
 #endif
-#if !defined PRIuLEAST8 || @PRI_MACROS_BROKEN@
-# undef PRIuLEAST8
+#if !defined PRIuLEAST8
 # define PRIuLEAST8 "u"
 #endif
-#if !defined PRIxLEAST8 || @PRI_MACROS_BROKEN@
-# undef PRIxLEAST8
+#if !defined PRIxLEAST8
 # define PRIxLEAST8 "x"
 #endif
-#if !defined PRIXLEAST8 || @PRI_MACROS_BROKEN@
-# undef PRIXLEAST8
+#if !defined PRIXLEAST8
 # define PRIXLEAST8 "X"
 #endif
-#if !defined PRIdLEAST16 || @PRI_MACROS_BROKEN@
-# undef PRIdLEAST16
+#if !defined PRIdLEAST16
 # define PRIdLEAST16 "d"
 #endif
-#if !defined PRIiLEAST16 || @PRI_MACROS_BROKEN@
-# undef PRIiLEAST16
+#if !defined PRIiLEAST16
 # define PRIiLEAST16 "i"
 #endif
-#if !defined PRIoLEAST16 || @PRI_MACROS_BROKEN@
-# undef PRIoLEAST16
+#if !defined PRIoLEAST16
 # define PRIoLEAST16 "o"
 #endif
-#if !defined PRIuLEAST16 || @PRI_MACROS_BROKEN@
-# undef PRIuLEAST16
+#if !defined PRIuLEAST16
 # define PRIuLEAST16 "u"
 #endif
-#if !defined PRIxLEAST16 || @PRI_MACROS_BROKEN@
-# undef PRIxLEAST16
+#if !defined PRIxLEAST16
 # define PRIxLEAST16 "x"
 #endif
-#if !defined PRIXLEAST16 || @PRI_MACROS_BROKEN@
-# undef PRIXLEAST16
+#if !defined PRIXLEAST16
 # define PRIXLEAST16 "X"
 #endif
-#if !defined PRIdLEAST32 || @PRI_MACROS_BROKEN@
-# undef PRIdLEAST32
+#if !defined PRIdLEAST32
 # define PRIdLEAST32 "d"
 #endif
-#if !defined PRIiLEAST32 || @PRI_MACROS_BROKEN@
-# undef PRIiLEAST32
+#if !defined PRIiLEAST32
 # define PRIiLEAST32 "i"
 #endif
-#if !defined PRIoLEAST32 || @PRI_MACROS_BROKEN@
-# undef PRIoLEAST32
+#if !defined PRIoLEAST32
 # define PRIoLEAST32 "o"
 #endif
-#if !defined PRIuLEAST32 || @PRI_MACROS_BROKEN@
-# undef PRIuLEAST32
+#if !defined PRIuLEAST32
 # define PRIuLEAST32 "u"
 #endif
-#if !defined PRIxLEAST32 || @PRI_MACROS_BROKEN@
-# undef PRIxLEAST32
+#if !defined PRIxLEAST32
 # define PRIxLEAST32 "x"
 #endif
-#if !defined PRIXLEAST32 || @PRI_MACROS_BROKEN@
-# undef PRIXLEAST32
+#if !defined PRIXLEAST32
 # define PRIXLEAST32 "X"
 #endif
 #ifdef INT64_MAX
-# if !defined PRIdLEAST64 || @PRI_MACROS_BROKEN@
-#  undef PRIdLEAST64
+# if !defined PRIdLEAST64
 #  define PRIdLEAST64 PRId64
 # endif
-# if !defined PRIiLEAST64 || @PRI_MACROS_BROKEN@
-#  undef PRIiLEAST64
+# if !defined PRIiLEAST64
 #  define PRIiLEAST64 PRIi64
 # endif
 #endif
 #ifdef UINT64_MAX
-# if !defined PRIoLEAST64 || @PRI_MACROS_BROKEN@
-#  undef PRIoLEAST64
+# if !defined PRIoLEAST64
 #  define PRIoLEAST64 PRIo64
 # endif
-# if !defined PRIuLEAST64 || @PRI_MACROS_BROKEN@
-#  undef PRIuLEAST64
+# if !defined PRIuLEAST64
 #  define PRIuLEAST64 PRIu64
 # endif
-# if !defined PRIxLEAST64 || @PRI_MACROS_BROKEN@
-#  undef PRIxLEAST64
+# if !defined PRIxLEAST64
 #  define PRIxLEAST64 PRIx64
 # endif
-# if !defined PRIXLEAST64 || @PRI_MACROS_BROKEN@
-#  undef PRIXLEAST64
+# if !defined PRIXLEAST64
 #  define PRIXLEAST64 PRIX64
 # endif
 #endif
 
-#if !defined PRIdFAST8 || @PRI_MACROS_BROKEN@
-# undef PRIdFAST8
+#if !defined PRIdFAST8
 # if INT_FAST8_MAX > INT32_MAX
 #  define PRIdFAST8 PRId64
 # else
 #  define PRIdFAST8 "d"
 # endif
 #endif
-#if !defined PRIiFAST8 || @PRI_MACROS_BROKEN@
-# undef PRIiFAST8
+#if !defined PRIiFAST8
 # if INT_FAST8_MAX > INT32_MAX
 #  define PRIiFAST8 PRIi64
 # else
 #  define PRIiFAST8 "i"
 # endif
 #endif
-#if !defined PRIoFAST8 || @PRI_MACROS_BROKEN@
-# undef PRIoFAST8
+#if !defined PRIoFAST8
 # if UINT_FAST8_MAX > UINT32_MAX
 #  define PRIoFAST8 PRIo64
 # else
 #  define PRIoFAST8 "o"
 # endif
 #endif
-#if !defined PRIuFAST8 || @PRI_MACROS_BROKEN@
-# undef PRIuFAST8
+#if !defined PRIuFAST8
 # if UINT_FAST8_MAX > UINT32_MAX
 #  define PRIuFAST8 PRIu64
 # else
 #  define PRIuFAST8 "u"
 # endif
 #endif
-#if !defined PRIxFAST8 || @PRI_MACROS_BROKEN@
-# undef PRIxFAST8
+#if !defined PRIxFAST8
 # if UINT_FAST8_MAX > UINT32_MAX
 #  define PRIxFAST8 PRIx64
 # else
 #  define PRIxFAST8 "x"
 # endif
 #endif
-#if !defined PRIXFAST8 || @PRI_MACROS_BROKEN@
-# undef PRIXFAST8
+#if !defined PRIXFAST8
 # if UINT_FAST8_MAX > UINT32_MAX
 #  define PRIXFAST8 PRIX64
 # else
 #  define PRIXFAST8 "X"
 # endif
 #endif
-#if !defined PRIdFAST16 || @PRI_MACROS_BROKEN@
-# undef PRIdFAST16
+#if !defined PRIdFAST16
 # if INT_FAST16_MAX > INT32_MAX
 #  define PRIdFAST16 PRId64
 # else
 #  define PRIdFAST16 "d"
 # endif
 #endif
-#if !defined PRIiFAST16 || @PRI_MACROS_BROKEN@
-# undef PRIiFAST16
+#if !defined PRIiFAST16
 # if INT_FAST16_MAX > INT32_MAX
 #  define PRIiFAST16 PRIi64
 # else
 #  define PRIiFAST16 "i"
 # endif
 #endif
-#if !defined PRIoFAST16 || @PRI_MACROS_BROKEN@
-# undef PRIoFAST16
+#if !defined PRIoFAST16
 # if UINT_FAST16_MAX > UINT32_MAX
 #  define PRIoFAST16 PRIo64
 # else
 #  define PRIoFAST16 "o"
 # endif
 #endif
-#if !defined PRIuFAST16 || @PRI_MACROS_BROKEN@
-# undef PRIuFAST16
+#if !defined PRIuFAST16
 # if UINT_FAST16_MAX > UINT32_MAX
 #  define PRIuFAST16 PRIu64
 # else
 #  define PRIuFAST16 "u"
 # endif
 #endif
-#if !defined PRIxFAST16 || @PRI_MACROS_BROKEN@
-# undef PRIxFAST16
+#if !defined PRIxFAST16
 # if UINT_FAST16_MAX > UINT32_MAX
 #  define PRIxFAST16 PRIx64
 # else
 #  define PRIxFAST16 "x"
 # endif
 #endif
-#if !defined PRIXFAST16 || @PRI_MACROS_BROKEN@
-# undef PRIXFAST16
+#if !defined PRIXFAST16
 # if UINT_FAST16_MAX > UINT32_MAX
 #  define PRIXFAST16 PRIX64
 # else
 #  define PRIXFAST16 "X"
 # endif
 #endif
-#if !defined PRIdFAST32 || @PRI_MACROS_BROKEN@
-# undef PRIdFAST32
+#if !defined PRIdFAST32
 # if INT_FAST32_MAX > INT32_MAX
 #  define PRIdFAST32 PRId64
 # else
 #  define PRIdFAST32 "d"
 # endif
 #endif
-#if !defined PRIiFAST32 || @PRI_MACROS_BROKEN@
-# undef PRIiFAST32
+#if !defined PRIiFAST32
 # if INT_FAST32_MAX > INT32_MAX
 #  define PRIiFAST32 PRIi64
 # else
 #  define PRIiFAST32 "i"
 # endif
 #endif
-#if !defined PRIoFAST32 || @PRI_MACROS_BROKEN@
-# undef PRIoFAST32
+#if !defined PRIoFAST32
 # if UINT_FAST32_MAX > UINT32_MAX
 #  define PRIoFAST32 PRIo64
 # else
 #  define PRIoFAST32 "o"
 # endif
 #endif
-#if !defined PRIuFAST32 || @PRI_MACROS_BROKEN@
-# undef PRIuFAST32
+#if !defined PRIuFAST32
 # if UINT_FAST32_MAX > UINT32_MAX
 #  define PRIuFAST32 PRIu64
 # else
 #  define PRIuFAST32 "u"
 # endif
 #endif
-#if !defined PRIxFAST32 || @PRI_MACROS_BROKEN@
-# undef PRIxFAST32
+#if !defined PRIxFAST32
 # if UINT_FAST32_MAX > UINT32_MAX
 #  define PRIxFAST32 PRIx64
 # else
 #  define PRIxFAST32 "x"
 # endif
 #endif
-#if !defined PRIXFAST32 || @PRI_MACROS_BROKEN@
-# undef PRIXFAST32
+#if !defined PRIXFAST32
 # if UINT_FAST32_MAX > UINT32_MAX
 #  define PRIXFAST32 PRIX64
 # else
 # endif
 #endif
 #ifdef INT64_MAX
-# if !defined PRIdFAST64 || @PRI_MACROS_BROKEN@
-#  undef PRIdFAST64
+# if !defined PRIdFAST64
 #  define PRIdFAST64 PRId64
 # endif
-# if !defined PRIiFAST64 || @PRI_MACROS_BROKEN@
-#  undef PRIiFAST64
+# if !defined PRIiFAST64
 #  define PRIiFAST64 PRIi64
 # endif
 #endif
 #ifdef UINT64_MAX
-# if !defined PRIoFAST64 || @PRI_MACROS_BROKEN@
-#  undef PRIoFAST64
+# if !defined PRIoFAST64
 #  define PRIoFAST64 PRIo64
 # endif
-# if !defined PRIuFAST64 || @PRI_MACROS_BROKEN@
-#  undef PRIuFAST64
+# if !defined PRIuFAST64
 #  define PRIuFAST64 PRIu64
 # endif
-# if !defined PRIxFAST64 || @PRI_MACROS_BROKEN@
-#  undef PRIxFAST64
+# if !defined PRIxFAST64
 #  define PRIxFAST64 PRIx64
 # endif
-# if !defined PRIXFAST64 || @PRI_MACROS_BROKEN@
-#  undef PRIXFAST64
+# if !defined PRIXFAST64
 #  define PRIXFAST64 PRIX64
 # endif
 #endif
 
-#if !defined PRIdMAX || @PRI_MACROS_BROKEN@
-# undef PRIdMAX
+#if !defined PRIdMAX
 # if @INT32_MAX_LT_INTMAX_MAX@
 #  define PRIdMAX PRId64
 # else
 #  define PRIdMAX "ld"
 # endif
 #endif
-#if !defined PRIiMAX || @PRI_MACROS_BROKEN@
-# undef PRIiMAX
+#if !defined PRIiMAX
 # if @INT32_MAX_LT_INTMAX_MAX@
 #  define PRIiMAX PRIi64
 # else
 #  define PRIiMAX "li"
 # endif
 #endif
-#if !defined PRIoMAX || @PRI_MACROS_BROKEN@
-# undef PRIoMAX
+#if !defined PRIoMAX
 # if @UINT32_MAX_LT_UINTMAX_MAX@
 #  define PRIoMAX PRIo64
 # else
 #  define PRIoMAX "lo"
 # endif
 #endif
-#if !defined PRIuMAX || @PRI_MACROS_BROKEN@
-# undef PRIuMAX
+#if !defined PRIuMAX
 # if @UINT32_MAX_LT_UINTMAX_MAX@
 #  define PRIuMAX PRIu64
 # else
 #  define PRIuMAX "lu"
 # endif
 #endif
-#if !defined PRIxMAX || @PRI_MACROS_BROKEN@
-# undef PRIxMAX
+#if !defined PRIxMAX
 # if @UINT32_MAX_LT_UINTMAX_MAX@
 #  define PRIxMAX PRIx64
 # else
 #  define PRIxMAX "lx"
 # endif
 #endif
-#if !defined PRIXMAX || @PRI_MACROS_BROKEN@
-# undef PRIXMAX
+#if !defined PRIXMAX
 # if @UINT32_MAX_LT_UINTMAX_MAX@
 #  define PRIXMAX PRIX64
 # else
 # endif
 #endif
 
-#if !defined PRIdPTR || @PRI_MACROS_BROKEN@
-# undef PRIdPTR
+#if !defined PRIdPTR
 # ifdef INTPTR_MAX
 #  define PRIdPTR @PRIPTR_PREFIX@ "d"
 # endif
 #endif
-#if !defined PRIiPTR || @PRI_MACROS_BROKEN@
-# undef PRIiPTR
+#if !defined PRIiPTR
 # ifdef INTPTR_MAX
 #  define PRIiPTR @PRIPTR_PREFIX@ "i"
 # endif
 #endif
-#if !defined PRIoPTR || @PRI_MACROS_BROKEN@
-# undef PRIoPTR
+#if !defined PRIoPTR
 # ifdef UINTPTR_MAX
 #  define PRIoPTR @PRIPTR_PREFIX@ "o"
 # endif
 #endif
-#if !defined PRIuPTR || @PRI_MACROS_BROKEN@
-# undef PRIuPTR
+#if !defined PRIuPTR
 # ifdef UINTPTR_MAX
 #  define PRIuPTR @PRIPTR_PREFIX@ "u"
 # endif
 #endif
-#if !defined PRIxPTR || @PRI_MACROS_BROKEN@
-# undef PRIxPTR
+#if !defined PRIxPTR
 # ifdef UINTPTR_MAX
 #  define PRIxPTR @PRIPTR_PREFIX@ "x"
 # endif
 #endif
-#if !defined PRIXPTR || @PRI_MACROS_BROKEN@
-# undef PRIXPTR
+#if !defined PRIXPTR
 # ifdef UINTPTR_MAX
 #  define PRIXPTR @PRIPTR_PREFIX@ "X"
 # endif
 #endif
 
-#if !defined SCNd8 || @PRI_MACROS_BROKEN@
-# undef SCNd8
+#if !defined SCNd8
 # ifdef INT8_MAX
 #  define SCNd8 "hhd"
 # endif
 #endif
-#if !defined SCNi8 || @PRI_MACROS_BROKEN@
-# undef SCNi8
+#if !defined SCNi8
 # ifdef INT8_MAX
 #  define SCNi8 "hhi"
 # endif
 #endif
-#if !defined SCNo8 || @PRI_MACROS_BROKEN@
-# undef SCNo8
+#if !defined SCNo8
 # ifdef UINT8_MAX
 #  define SCNo8 "hho"
 # endif
 #endif
-#if !defined SCNu8 || @PRI_MACROS_BROKEN@
-# undef SCNu8
+#if !defined SCNu8
 # ifdef UINT8_MAX
 #  define SCNu8 "hhu"
 # endif
 #endif
-#if !defined SCNx8 || @PRI_MACROS_BROKEN@
-# undef SCNx8
+#if !defined SCNx8
 # ifdef UINT8_MAX
 #  define SCNx8 "hhx"
 # endif
 #endif
-#if !defined SCNd16 || @PRI_MACROS_BROKEN@
-# undef SCNd16
+#if !defined SCNd16
 # ifdef INT16_MAX
 #  define SCNd16 "hd"
 # endif
 #endif
-#if !defined SCNi16 || @PRI_MACROS_BROKEN@
-# undef SCNi16
+#if !defined SCNi16
 # ifdef INT16_MAX
 #  define SCNi16 "hi"
 # endif
 #endif
-#if !defined SCNo16 || @PRI_MACROS_BROKEN@
-# undef SCNo16
+#if !defined SCNo16
 # ifdef UINT16_MAX
 #  define SCNo16 "ho"
 # endif
 #endif
-#if !defined SCNu16 || @PRI_MACROS_BROKEN@
-# undef SCNu16
+#if !defined SCNu16
 # ifdef UINT16_MAX
 #  define SCNu16 "hu"
 # endif
 #endif
-#if !defined SCNx16 || @PRI_MACROS_BROKEN@
-# undef SCNx16
+#if !defined SCNx16
 # ifdef UINT16_MAX
 #  define SCNx16 "hx"
 # endif
 #endif
-#if !defined SCNd32 || @PRI_MACROS_BROKEN@
-# undef SCNd32
+#if !defined SCNd32
 # ifdef INT32_MAX
 #  define SCNd32 "d"
 # endif
 #endif
-#if !defined SCNi32 || @PRI_MACROS_BROKEN@
-# undef SCNi32
+#if !defined SCNi32
 # ifdef INT32_MAX
 #  define SCNi32 "i"
 # endif
 #endif
-#if !defined SCNo32 || @PRI_MACROS_BROKEN@
-# undef SCNo32
+#if !defined SCNo32
 # ifdef UINT32_MAX
 #  define SCNo32 "o"
 # endif
 #endif
-#if !defined SCNu32 || @PRI_MACROS_BROKEN@
-# undef SCNu32
+#if !defined SCNu32
 # ifdef UINT32_MAX
 #  define SCNu32 "u"
 # endif
 #endif
-#if !defined SCNx32 || @PRI_MACROS_BROKEN@
-# undef SCNx32
+#if !defined SCNx32
 # ifdef UINT32_MAX
 #  define SCNx32 "x"
 # endif
 #  define _SCN64_PREFIX "l"
 # elif defined _MSC_VER || defined __MINGW32__
 #  define _SCN64_PREFIX "I64"
-# elif @HAVE_LONG_LONG_INT@ && LONG_MAX >> 30 == 1
+# elif LONG_MAX >> 30 == 1
 #  define _SCN64_PREFIX _LONG_LONG_FORMAT_PREFIX
 # endif
-# if !defined SCNd64 || @PRI_MACROS_BROKEN@
-#  undef SCNd64
+# if !defined SCNd64
 #  define SCNd64 _SCN64_PREFIX "d"
 # endif
-# if !defined SCNi64 || @PRI_MACROS_BROKEN@
-#  undef SCNi64
+# if !defined SCNi64
 #  define SCNi64 _SCN64_PREFIX "i"
 # endif
 #endif
 #  define _SCNu64_PREFIX "l"
 # elif defined _MSC_VER || defined __MINGW32__
 #  define _SCNu64_PREFIX "I64"
-# elif @HAVE_UNSIGNED_LONG_LONG_INT@ && ULONG_MAX >> 31 == 1
+# elif ULONG_MAX >> 31 == 1
 #  define _SCNu64_PREFIX _LONG_LONG_FORMAT_PREFIX
 # endif
-# if !defined SCNo64 || @PRI_MACROS_BROKEN@
-#  undef SCNo64
+# if !defined SCNo64
 #  define SCNo64 _SCNu64_PREFIX "o"
 # endif
-# if !defined SCNu64 || @PRI_MACROS_BROKEN@
-#  undef SCNu64
+# if !defined SCNu64
 #  define SCNu64 _SCNu64_PREFIX "u"
 # endif
-# if !defined SCNx64 || @PRI_MACROS_BROKEN@
-#  undef SCNx64
+# if !defined SCNx64
 #  define SCNx64 _SCNu64_PREFIX "x"
 # endif
 #endif
 
-#if !defined SCNdLEAST8 || @PRI_MACROS_BROKEN@
-# undef SCNdLEAST8
+#if !defined SCNdLEAST8
 # define SCNdLEAST8 "hhd"
 #endif
-#if !defined SCNiLEAST8 || @PRI_MACROS_BROKEN@
-# undef SCNiLEAST8
+#if !defined SCNiLEAST8
 # define SCNiLEAST8 "hhi"
 #endif
-#if !defined SCNoLEAST8 || @PRI_MACROS_BROKEN@
-# undef SCNoLEAST8
+#if !defined SCNoLEAST8
 # define SCNoLEAST8 "hho"
 #endif
-#if !defined SCNuLEAST8 || @PRI_MACROS_BROKEN@
-# undef SCNuLEAST8
+#if !defined SCNuLEAST8
 # define SCNuLEAST8 "hhu"
 #endif
-#if !defined SCNxLEAST8 || @PRI_MACROS_BROKEN@
-# undef SCNxLEAST8
+#if !defined SCNxLEAST8
 # define SCNxLEAST8 "hhx"
 #endif
-#if !defined SCNdLEAST16 || @PRI_MACROS_BROKEN@
-# undef SCNdLEAST16
+#if !defined SCNdLEAST16
 # define SCNdLEAST16 "hd"
 #endif
-#if !defined SCNiLEAST16 || @PRI_MACROS_BROKEN@
-# undef SCNiLEAST16
+#if !defined SCNiLEAST16
 # define SCNiLEAST16 "hi"
 #endif
-#if !defined SCNoLEAST16 || @PRI_MACROS_BROKEN@
-# undef SCNoLEAST16
+#if !defined SCNoLEAST16
 # define SCNoLEAST16 "ho"
 #endif
-#if !defined SCNuLEAST16 || @PRI_MACROS_BROKEN@
-# undef SCNuLEAST16
+#if !defined SCNuLEAST16
 # define SCNuLEAST16 "hu"
 #endif
-#if !defined SCNxLEAST16 || @PRI_MACROS_BROKEN@
-# undef SCNxLEAST16
+#if !defined SCNxLEAST16
 # define SCNxLEAST16 "hx"
 #endif
-#if !defined SCNdLEAST32 || @PRI_MACROS_BROKEN@
-# undef SCNdLEAST32
+#if !defined SCNdLEAST32
 # define SCNdLEAST32 "d"
 #endif
-#if !defined SCNiLEAST32 || @PRI_MACROS_BROKEN@
-# undef SCNiLEAST32
+#if !defined SCNiLEAST32
 # define SCNiLEAST32 "i"
 #endif
-#if !defined SCNoLEAST32 || @PRI_MACROS_BROKEN@
-# undef SCNoLEAST32
+#if !defined SCNoLEAST32
 # define SCNoLEAST32 "o"
 #endif
-#if !defined SCNuLEAST32 || @PRI_MACROS_BROKEN@
-# undef SCNuLEAST32
+#if !defined SCNuLEAST32
 # define SCNuLEAST32 "u"
 #endif
-#if !defined SCNxLEAST32 || @PRI_MACROS_BROKEN@
-# undef SCNxLEAST32
+#if !defined SCNxLEAST32
 # define SCNxLEAST32 "x"
 #endif
 #ifdef INT64_MAX
-# if !defined SCNdLEAST64 || @PRI_MACROS_BROKEN@
-#  undef SCNdLEAST64
+# if !defined SCNdLEAST64
 #  define SCNdLEAST64 SCNd64
 # endif
-# if !defined SCNiLEAST64 || @PRI_MACROS_BROKEN@
-#  undef SCNiLEAST64
+# if !defined SCNiLEAST64
 #  define SCNiLEAST64 SCNi64
 # endif
 #endif
 #ifdef UINT64_MAX
-# if !defined SCNoLEAST64 || @PRI_MACROS_BROKEN@
-#  undef SCNoLEAST64
+# if !defined SCNoLEAST64
 #  define SCNoLEAST64 SCNo64
 # endif
-# if !defined SCNuLEAST64 || @PRI_MACROS_BROKEN@
-#  undef SCNuLEAST64
+# if !defined SCNuLEAST64
 #  define SCNuLEAST64 SCNu64
 # endif
-# if !defined SCNxLEAST64 || @PRI_MACROS_BROKEN@
-#  undef SCNxLEAST64
+# if !defined SCNxLEAST64
 #  define SCNxLEAST64 SCNx64
 # endif
 #endif
 
-#if !defined SCNdFAST8 || @PRI_MACROS_BROKEN@
-# undef SCNdFAST8
+#if !defined SCNdFAST8
 # if INT_FAST8_MAX > INT32_MAX
 #  define SCNdFAST8 SCNd64
 # elif INT_FAST8_MAX == 0x7fff
 #  define SCNdFAST8 "d"
 # endif
 #endif
-#if !defined SCNiFAST8 || @PRI_MACROS_BROKEN@
-# undef SCNiFAST8
+#if !defined SCNiFAST8
 # if INT_FAST8_MAX > INT32_MAX
 #  define SCNiFAST8 SCNi64
 # elif INT_FAST8_MAX == 0x7fff
 #  define SCNiFAST8 "i"
 # endif
 #endif
-#if !defined SCNoFAST8 || @PRI_MACROS_BROKEN@
-# undef SCNoFAST8
+#if !defined SCNoFAST8
 # if UINT_FAST8_MAX > UINT32_MAX
 #  define SCNoFAST8 SCNo64
 # elif UINT_FAST8_MAX == 0xffff
 #  define SCNoFAST8 "o"
 # endif
 #endif
-#if !defined SCNuFAST8 || @PRI_MACROS_BROKEN@
-# undef SCNuFAST8
+#if !defined SCNuFAST8
 # if UINT_FAST8_MAX > UINT32_MAX
 #  define SCNuFAST8 SCNu64
 # elif UINT_FAST8_MAX == 0xffff
 #  define SCNuFAST8 "u"
 # endif
 #endif
-#if !defined SCNxFAST8 || @PRI_MACROS_BROKEN@
-# undef SCNxFAST8
+#if !defined SCNxFAST8
 # if UINT_FAST8_MAX > UINT32_MAX
 #  define SCNxFAST8 SCNx64
 # elif UINT_FAST8_MAX == 0xffff
 #  define SCNxFAST8 "x"
 # endif
 #endif
-#if !defined SCNdFAST16 || @PRI_MACROS_BROKEN@
-# undef SCNdFAST16
+#if !defined SCNdFAST16
 # if INT_FAST16_MAX > INT32_MAX
 #  define SCNdFAST16 SCNd64
 # elif INT_FAST16_MAX == 0x7fff
 #  define SCNdFAST16 "d"
 # endif
 #endif
-#if !defined SCNiFAST16 || @PRI_MACROS_BROKEN@
-# undef SCNiFAST16
+#if !defined SCNiFAST16
 # if INT_FAST16_MAX > INT32_MAX
 #  define SCNiFAST16 SCNi64
 # elif INT_FAST16_MAX == 0x7fff
 #  define SCNiFAST16 "i"
 # endif
 #endif
-#if !defined SCNoFAST16 || @PRI_MACROS_BROKEN@
-# undef SCNoFAST16
+#if !defined SCNoFAST16
 # if UINT_FAST16_MAX > UINT32_MAX
 #  define SCNoFAST16 SCNo64
 # elif UINT_FAST16_MAX == 0xffff
 #  define SCNoFAST16 "o"
 # endif
 #endif
-#if !defined SCNuFAST16 || @PRI_MACROS_BROKEN@
-# undef SCNuFAST16
+#if !defined SCNuFAST16
 # if UINT_FAST16_MAX > UINT32_MAX
 #  define SCNuFAST16 SCNu64
 # elif UINT_FAST16_MAX == 0xffff
 #  define SCNuFAST16 "u"
 # endif
 #endif
-#if !defined SCNxFAST16 || @PRI_MACROS_BROKEN@
-# undef SCNxFAST16
+#if !defined SCNxFAST16
 # if UINT_FAST16_MAX > UINT32_MAX
 #  define SCNxFAST16 SCNx64
 # elif UINT_FAST16_MAX == 0xffff
 #  define SCNxFAST16 "x"
 # endif
 #endif
-#if !defined SCNdFAST32 || @PRI_MACROS_BROKEN@
-# undef SCNdFAST32
+#if !defined SCNdFAST32
 # if INT_FAST32_MAX > INT32_MAX
 #  define SCNdFAST32 SCNd64
 # else
 #  define SCNdFAST32 "d"
 # endif
 #endif
-#if !defined SCNiFAST32 || @PRI_MACROS_BROKEN@
-# undef SCNiFAST32
+#if !defined SCNiFAST32
 # if INT_FAST32_MAX > INT32_MAX
 #  define SCNiFAST32 SCNi64
 # else
 #  define SCNiFAST32 "i"
 # endif
 #endif
-#if !defined SCNoFAST32 || @PRI_MACROS_BROKEN@
-# undef SCNoFAST32
+#if !defined SCNoFAST32
 # if UINT_FAST32_MAX > UINT32_MAX
 #  define SCNoFAST32 SCNo64
 # else
 #  define SCNoFAST32 "o"
 # endif
 #endif
-#if !defined SCNuFAST32 || @PRI_MACROS_BROKEN@
-# undef SCNuFAST32
+#if !defined SCNuFAST32
 # if UINT_FAST32_MAX > UINT32_MAX
 #  define SCNuFAST32 SCNu64
 # else
 #  define SCNuFAST32 "u"
 # endif
 #endif
-#if !defined SCNxFAST32 || @PRI_MACROS_BROKEN@
-# undef SCNxFAST32
+#if !defined SCNxFAST32
 # if UINT_FAST32_MAX > UINT32_MAX
 #  define SCNxFAST32 SCNx64
 # else
 # endif
 #endif
 #ifdef INT64_MAX
-# if !defined SCNdFAST64 || @PRI_MACROS_BROKEN@
-#  undef SCNdFAST64
+# if !defined SCNdFAST64
 #  define SCNdFAST64 SCNd64
 # endif
-# if !defined SCNiFAST64 || @PRI_MACROS_BROKEN@
-#  undef SCNiFAST64
+# if !defined SCNiFAST64
 #  define SCNiFAST64 SCNi64
 # endif
 #endif
 #ifdef UINT64_MAX
-# if !defined SCNoFAST64 || @PRI_MACROS_BROKEN@
-#  undef SCNoFAST64
+# if !defined SCNoFAST64
 #  define SCNoFAST64 SCNo64
 # endif
-# if !defined SCNuFAST64 || @PRI_MACROS_BROKEN@
-#  undef SCNuFAST64
+# if !defined SCNuFAST64
 #  define SCNuFAST64 SCNu64
 # endif
-# if !defined SCNxFAST64 || @PRI_MACROS_BROKEN@
-#  undef SCNxFAST64
+# if !defined SCNxFAST64
 #  define SCNxFAST64 SCNx64
 # endif
 #endif
 
-#if !defined SCNdMAX || @PRI_MACROS_BROKEN@
-# undef SCNdMAX
+#if !defined SCNdMAX
 # if @INT32_MAX_LT_INTMAX_MAX@
 #  define SCNdMAX SCNd64
 # else
 #  define SCNdMAX "ld"
 # endif
 #endif
-#if !defined SCNiMAX || @PRI_MACROS_BROKEN@
-# undef SCNiMAX
+#if !defined SCNiMAX
 # if @INT32_MAX_LT_INTMAX_MAX@
 #  define SCNiMAX SCNi64
 # else
 #  define SCNiMAX "li"
 # endif
 #endif
-#if !defined SCNoMAX || @PRI_MACROS_BROKEN@
-# undef SCNoMAX
+#if !defined SCNoMAX
 # if @UINT32_MAX_LT_UINTMAX_MAX@
 #  define SCNoMAX SCNo64
 # else
 #  define SCNoMAX "lo"
 # endif
 #endif
-#if !defined SCNuMAX || @PRI_MACROS_BROKEN@
-# undef SCNuMAX
+#if !defined SCNuMAX
 # if @UINT32_MAX_LT_UINTMAX_MAX@
 #  define SCNuMAX SCNu64
 # else
 #  define SCNuMAX "lu"
 # endif
 #endif
-#if !defined SCNxMAX || @PRI_MACROS_BROKEN@
-# undef SCNxMAX
+#if !defined SCNxMAX
 # if @UINT32_MAX_LT_UINTMAX_MAX@
 #  define SCNxMAX SCNx64
 # else
 # endif
 #endif
 
-#if !defined SCNdPTR || @PRI_MACROS_BROKEN@
-# undef SCNdPTR
+#if !defined SCNdPTR
 # ifdef INTPTR_MAX
 #  define SCNdPTR @PRIPTR_PREFIX@ "d"
 # endif
 #endif
-#if !defined SCNiPTR || @PRI_MACROS_BROKEN@
-# undef SCNiPTR
+#if !defined SCNiPTR
 # ifdef INTPTR_MAX
 #  define SCNiPTR @PRIPTR_PREFIX@ "i"
 # endif
 #endif
-#if !defined SCNoPTR || @PRI_MACROS_BROKEN@
-# undef SCNoPTR
+#if !defined SCNoPTR
 # ifdef UINTPTR_MAX
 #  define SCNoPTR @PRIPTR_PREFIX@ "o"
 # endif
 #endif
-#if !defined SCNuPTR || @PRI_MACROS_BROKEN@
-# undef SCNuPTR
+#if !defined SCNuPTR
 # ifdef UINTPTR_MAX
 #  define SCNuPTR @PRIPTR_PREFIX@ "u"
 # endif
 #endif
-#if !defined SCNxPTR || @PRI_MACROS_BROKEN@
-# undef SCNxPTR
+#if !defined SCNxPTR
 # ifdef UINTPTR_MAX
 #  define SCNxPTR @PRIPTR_PREFIX@ "x"
 # endif
@@ -1091,15 +939,19 @@ _GL_WARN_ON_USE (imaxdiv, "imaxdiv is unportable - "
 #   define strtoimax rpl_strtoimax
 #  endif
 _GL_FUNCDECL_RPL (strtoimax, intmax_t,
-                  (const char *, char **, int) _GL_ARG_NONNULL ((1)));
-_GL_CXXALIAS_RPL (strtoimax, intmax_t, (const char *, char **, int));
+                  (const char *restrict, char **restrict, int)
+                  _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (strtoimax, intmax_t,
+                  (const char *restrict, char **restrict, int));
 # else
 #  if !@HAVE_DECL_STRTOIMAX@
 #   undef strtoimax
 _GL_FUNCDECL_SYS (strtoimax, intmax_t,
-                  (const char *, char **, int) _GL_ARG_NONNULL ((1)));
+                  (const char *restrict, char **restrict, int)
+                  _GL_ARG_NONNULL ((1)));
 #  endif
-_GL_CXXALIAS_SYS (strtoimax, intmax_t, (const char *, char **, int));
+_GL_CXXALIAS_SYS (strtoimax, intmax_t,
+                  (const char *restrict, char **restrict, int));
 # endif
 _GL_CXXALIASWARN (strtoimax);
 #elif defined GNULIB_POSIXCHECK
@@ -1117,15 +969,19 @@ _GL_WARN_ON_USE (strtoimax, "strtoimax is unportable - "
 #   define strtoumax rpl_strtoumax
 #  endif
 _GL_FUNCDECL_RPL (strtoumax, uintmax_t,
-                  (const char *, char **, int) _GL_ARG_NONNULL ((1)));
-_GL_CXXALIAS_RPL (strtoumax, uintmax_t, (const char *, char **, int));
+                  (const char *restrict, char **restrict, int)
+                  _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (strtoumax, uintmax_t,
+                  (const char *restrict, char **restrict, int));
 # else
 #  if !@HAVE_DECL_STRTOUMAX@
 #   undef strtoumax
 _GL_FUNCDECL_SYS (strtoumax, uintmax_t,
-                  (const char *, char **, int) _GL_ARG_NONNULL ((1)));
+                  (const char *restrict, char **restrict, int)
+                  _GL_ARG_NONNULL ((1)));
 #  endif
-_GL_CXXALIAS_SYS (strtoumax, uintmax_t, (const char *, char **, int));
+_GL_CXXALIAS_SYS (strtoumax, uintmax_t,
+                  (const char *restrict, char **restrict, int));
 # endif
 _GL_CXXALIASWARN (strtoumax);
 #elif defined GNULIB_POSIXCHECK
index 6d4063506d7db210d2b92ca2d93c09a78b193a61..e912cd37cd68308fe29b61061288088db3d2d037 100644 (file)
@@ -1,5 +1,5 @@
 /* Substitute for and wrapper around <langinfo.h>.
-   Copyright (C) 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2009-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -16,7 +16,7 @@
 
 /*
  * POSIX <langinfo.h> for platforms that lack it or have an incomplete one.
- * <http://www.opengroup.org/onlinepubs/9699919799/basedefs/langinfo.h.html>
+ * <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/langinfo.h.html>
  */
 
 #ifndef _@GUARD_PREFIX@_LANGINFO_H
diff --git a/lib/lc-charset-dispatch.c b/lib/lc-charset-dispatch.c
new file mode 100644 (file)
index 0000000..79057d4
--- /dev/null
@@ -0,0 +1,82 @@
+/* Dispatching based on the current locale's character encoding.
+   Copyright (C) 2018-2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2018.  */
+
+#include <config.h>
+
+/* Specification.  */
+#include "lc-charset-dispatch.h"
+
+#if GNULIB_defined_mbstate_t
+
+# include "localcharset.h"
+# include "streq.h"
+
+# if GNULIB_WCHAR_SINGLE
+/* When we know that the locale does not change, provide a speedup by
+   caching the value of locale_encoding_classification.  */
+#  define locale_encoding_classification_cached locale_encoding_classification
+# else
+/* By default, don't make assumptions, hence no caching.  */
+#  define locale_encoding_classification_uncached locale_encoding_classification
+# endif
+
+# if GNULIB_WCHAR_SINGLE
+static inline
+# endif
+enc_t
+locale_encoding_classification_uncached (void)
+{
+  const char *encoding = locale_charset ();
+  if (STREQ_OPT (encoding, "UTF-8", 'U', 'T', 'F', '-', '8', 0, 0, 0, 0))
+    return enc_utf8;
+  if (STREQ_OPT (encoding, "EUC-JP", 'E', 'U', 'C', '-', 'J', 'P', 0, 0, 0))
+    return enc_eucjp;
+  if (STREQ_OPT (encoding, "EUC-KR", 'E', 'U', 'C', '-', 'K', 'R', 0, 0, 0)
+      || STREQ_OPT (encoding, "GB2312", 'G', 'B', '2', '3', '1', '2', 0, 0, 0)
+      || STREQ_OPT (encoding, "BIG5", 'B', 'I', 'G', '5', 0, 0, 0, 0, 0))
+    return enc_94;
+  if (STREQ_OPT (encoding, "EUC-TW", 'E', 'U', 'C', '-', 'T', 'W', 0, 0, 0))
+    return enc_euctw;
+  if (STREQ_OPT (encoding, "GB18030", 'G', 'B', '1', '8', '0', '3', '0', 0, 0))
+    return enc_gb18030;
+  if (STREQ_OPT (encoding, "SJIS", 'S', 'J', 'I', 'S', 0, 0, 0, 0, 0))
+    return enc_sjis;
+  return enc_other;
+}
+
+# if GNULIB_WCHAR_SINGLE
+
+static int cached_locale_enc = -1;
+
+enc_t
+locale_encoding_classification_cached (void)
+{
+  if (cached_locale_enc < 0)
+    cached_locale_enc = locale_encoding_classification_uncached ();
+  return cached_locale_enc;
+}
+
+# endif
+
+#else
+
+/* This declaration is solely to ensure that after preprocessing
+   this file is never empty.  */
+typedef int dummy;
+
+#endif
diff --git a/lib/lc-charset-dispatch.h b/lib/lc-charset-dispatch.h
new file mode 100644 (file)
index 0000000..95c2316
--- /dev/null
@@ -0,0 +1,40 @@
+/* Dispatching based on the current locale's character encoding.
+   Copyright (C) 2018-2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2018.  */
+
+#include <wchar.h>
+
+#if GNULIB_defined_mbstate_t
+
+/* A classification of special values of the encoding of the current locale.  */
+typedef enum
+  {
+    enc_other,      /* other */
+    enc_utf8,       /* UTF-8 */
+    enc_eucjp,      /* EUC-JP */
+    enc_94,         /* EUC-KR, GB2312, BIG5 */
+    enc_euctw,      /* EUC-TW */
+    enc_gb18030,    /* GB18030 */
+    enc_sjis        /* SJIS */
+  }
+  enc_t;
+
+/* Returns a classification of special values of the encoding of the current
+   locale.  */
+extern enc_t locale_encoding_classification (void);
+
+#endif
index 57c69661d2f2c07a274407b1c3983a11c2677132..1300c3a2ac8391c4669bf6b4203c91f210c2382c 100644 (file)
@@ -1,6 +1,6 @@
 /* System definitions for code taken from the GNU C Library
 
-   Copyright 2017-2019 Free Software Foundation, Inc.
+   Copyright 2017-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or
    modify it under the terms of the GNU General Public
 
 #ifndef __glibc_clang_prereq
 # if defined __clang_major__ && defined __clang_minor__
-#  define __glibc_clang_prereq(maj, min) \
-     ((maj) < __clang_major__ + ((min) <= __clang_minor__))
+#  ifdef __apple_build_version__
+/* Apple for some reason renumbers __clang_major__ and __clang_minor__.
+   Gnulib code uses only __glibc_clang_prereq (3, 5); map it to
+   6000000 <= __apple_build_version__.  Support for other calls to
+   __glibc_clang_prereq can be added here as needed.  */
+#   define __glibc_clang_prereq(maj, min) \
+      ((maj) == 3 && (min) == 5 ? 6000000 <= __apple_build_version__ : 0)
+#  else
+#   define __glibc_clang_prereq(maj, min) \
+      ((maj) < __clang_major__ + ((min) <= __clang_minor__))
+#  endif
 # else
 #  define __glibc_clang_prereq(maj, min) 0
 # endif
 
 /* A substitute for glibc <shlib-compat.h>, good enough for Gnulib.  */
 #define SHLIB_COMPAT(lib, introduced, obsoleted) 0
-#define versioned_symbol(lib, local, symbol, version)
+#define compat_symbol(lib, local, symbol, version) extern int dummy
+#define versioned_symbol(lib, local, symbol, version) extern int dummy
index 39750b38d1a593b2e1c894225f273f047b07eaf1..d25c523706093c28efcf9709ff4a89599aad1ba5 100644 (file)
@@ -1,6 +1,6 @@
 /* A GNU-like <limits.h>.
 
-   Copyright 2016-2019 Free Software Foundation, Inc.
+   Copyright 2016-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or
    modify it under the terms of the GNU General Public License
    You should have received a copy of the GNU General Public License
    along with this program; if not, see <https://www.gnu.org/licenses/>.  */
 
-#ifndef _@GUARD_PREFIX@_LIMITS_H
-
 #if __GNUC__ >= 3
 @PRAGMA_SYSTEM_HEADER@
 #endif
 @PRAGMA_COLUMNS@
 
-/* The include_next requires a split double-inclusion guard.  */
+#if defined _GL_ALREADY_INCLUDING_LIMITS_H
+/* Special invocation convention:
+   On Haiku/x86_64, we have a sequence of nested includes
+   <limits.h> -> <syslimits.h> -> <limits.h>.
+   In this situation, LONG_MAX and INT_MAX are not yet defined,
+   therefore we should not attempt to define LONG_BIT.  */
+
 #@INCLUDE_NEXT@ @NEXT_LIMITS_H@
 
+#else
+/* Normal invocation convention.  */
+
+#ifndef _@GUARD_PREFIX@_LIMITS_H
+
+# define _GL_ALREADY_INCLUDING_LIMITS_H
+
+/* The include_next requires a split double-inclusion guard.  */
+# @INCLUDE_NEXT@ @NEXT_LIMITS_H@
+
+# undef _GL_ALREADY_INCLUDING_LIMITS_H
+
 #ifndef _@GUARD_PREFIX@_LIMITS_H
 #define _@GUARD_PREFIX@_LIMITS_H
 
 
 #endif /* _@GUARD_PREFIX@_LIMITS_H */
 #endif /* _@GUARD_PREFIX@_LIMITS_H */
+#endif
index dabef94848da809fdcabe15ea709ef3de918fdd1..721c8a9d134f2bc1bc814dd03b7fce5ba7c65522 100644 (file)
@@ -1,6 +1,6 @@
 /* Determine a canonical name for the current locale's character encoding.
 
-   Copyright (C) 2000-2006, 2008-2019 Free Software Foundation, Inc.
+   Copyright (C) 2000-2006, 2008-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -58,6 +58,9 @@
 #elif defined WINDOWS_NATIVE
 # define WIN32_LEAN_AND_MEAN
 # include <windows.h>
+  /* For the use of setlocale() below, the Gnulib override in setlocale.c is
+     not needed; see the platform lists in setlocale_null.m4.  */
+# undef setlocale
 #endif
 #if defined OS2
 # define INCL_DOS
@@ -150,7 +153,8 @@ static const struct table_entry alias_table[] =
     { "ISO8859-2",  "ISO-8859-2" },
     { "ISO8859-4",  "ISO-8859-4" },
     { "ISO8859-5",  "ISO-8859-5" },
-    { "ISO8859-7",  "ISO-8859-7" }
+    { "ISO8859-7",  "ISO-8859-7" },
+    { "US-ASCII",   "ASCII" }
 #   define alias_table_defined
 #  endif
 #  if defined __APPLE__ && defined __MACH__                 /* Mac OS X */
@@ -378,8 +382,6 @@ static const struct table_entry alias_table[] =
        by Alex Taylor:
        <http://altsan.org/os2/toolkits/uls/index.html#codepages>.
        See also "__convcp() of kLIBC":
-       <http://trac.netlabs.org/libc/browser/branches/libc-0.6/src/emx/src/lib/locale/__convcp.c>,
-       or:
        <https://github.com/bitwiseworks/libc/blob/master/src/emx/src/lib/locale/__convcp.c>.  */
     { "CP1004",        "CP1252" },
   /*{ "CP1041",        "CP943" },*/
@@ -814,8 +816,11 @@ static const struct table_entry locale_table[] =
 
 
 /* Determine the current locale's character encoding, and canonicalize it
-   into one of the canonical names listed in localcharset.h.
-   The result must not be freed; it is statically allocated.
+   into one of the canonical names listed below.
+   The result must not be freed; it is statically allocated.  The result
+   becomes invalid when setlocale() is used to change the global locale, or
+   when the value of one of the environment variables LC_ALL, LC_CTYPE, LANG
+   is changed; threads in multithreaded programs should not do this.
    If the canonical name cannot be determined, the result is a non-canonical
    name.  */
 
@@ -827,6 +832,13 @@ locale_charset (void)
 {
   const char *codeset;
 
+  /* This function must be multithread-safe.  To achieve this without using
+     thread-local storage, we use a simple strcpy or memcpy to fill this static
+     buffer.  Filling it through, for example, strcpy + strcat would not be
+     guaranteed to leave the buffer's contents intact if another thread is
+     currently accessing it.  If necessary, the contents is first assembled in
+     a stack-allocated buffer.  */
+
 #if HAVE_LANGINFO_CODESET || defined WINDOWS_NATIVE || defined OS2
 
 # if HAVE_LANGINFO_CODESET
@@ -841,7 +853,7 @@ locale_charset (void)
   if (codeset != NULL && strcmp (codeset, "US-ASCII") == 0)
     {
       const char *locale;
-      static char buf[2 + 10 + 1];
+      static char resultbuf[2 + 10 + 1];
 
       locale = getenv ("LC_ALL");
       if (locale == NULL || locale[0] == '\0')
@@ -865,11 +877,12 @@ locale_charset (void)
               modifier = strchr (dot, '@');
               if (modifier == NULL)
                 return dot;
-              if (modifier - dot < sizeof (buf))
+              if (modifier - dot < sizeof (resultbuf))
                 {
-                  memcpy (buf, dot, modifier - dot);
-                  buf [modifier - dot] = '\0';
-                  return buf;
+                  /* This way of filling resultbuf is multithread-safe.  */
+                  memcpy (resultbuf, dot, modifier - dot);
+                  resultbuf [modifier - dot] = '\0';
+                  return resultbuf;
                 }
             }
         }
@@ -885,8 +898,13 @@ locale_charset (void)
          converting to GetConsoleOutputCP().  This leads to correct results,
          except when SetConsoleOutputCP has been called and a raster font is
          in use.  */
-      sprintf (buf, "CP%u", GetACP ());
-      codeset = buf;
+      {
+        char buf[2 + 10 + 1];
+
+        sprintf (buf, "CP%u", GetACP ());
+        strcpy (resultbuf, buf);
+        codeset = resultbuf;
+      }
     }
 #  endif
 
@@ -896,34 +914,28 @@ locale_charset (void)
 
 # elif defined WINDOWS_NATIVE
 
-  static char buf[2 + 10 + 1];
+  char buf[2 + 10 + 1];
+  static char resultbuf[2 + 10 + 1];
 
   /* The Windows API has a function returning the locale's codepage as
      a number, but the value doesn't change according to what the
      'setlocale' call specified.  So we use it as a last resort, in
      case the string returned by 'setlocale' doesn't specify the
      codepage.  */
-  char *current_locale = setlocale (LC_ALL, NULL);
-  char *pdot;
-
-  /* If they set different locales for different categories,
-     'setlocale' will return a semi-colon separated list of locale
-     values.  To make sure we use the correct one, we choose LC_CTYPE.  */
-  if (strchr (current_locale, ';'))
-    current_locale = setlocale (LC_CTYPE, NULL);
+  char *current_locale = setlocale (LC_CTYPE, NULL);
+  char *pdot = strrchr (current_locale, '.');
 
-  pdot = strrchr (current_locale, '.');
   if (pdot && 2 + strlen (pdot + 1) + 1 <= sizeof (buf))
     sprintf (buf, "CP%s", pdot + 1);
   else
     {
       /* The Windows API has a function returning the locale's codepage as a
-        number: GetACP().
-        When the output goes to a console window, it needs to be provided in
-        GetOEMCP() encoding if the console is using a raster font, or in
-        GetConsoleOutputCP() encoding if it is using a TrueType font.
-        But in GUI programs and for output sent to files and pipes, GetACP()
-        encoding is the best bet.  */
+         number: GetACP().
+         When the output goes to a console window, it needs to be provided in
+         GetOEMCP() encoding if the console is using a raster font, or in
+         GetConsoleOutputCP() encoding if it is using a TrueType font.
+         But in GUI programs and for output sent to files and pipes, GetACP()
+         encoding is the best bet.  */
       sprintf (buf, "CP%u", GetACP ());
     }
   /* For a locale name such as "French_France.65001", in Windows 10,
@@ -931,12 +943,15 @@ locale_charset (void)
   if (strcmp (buf + 2, "65001") == 0 || strcmp (buf + 2, "utf8") == 0)
     codeset = "UTF-8";
   else
-    codeset = buf;
+    {
+      strcpy (resultbuf, buf);
+      codeset = resultbuf;
+    }
 
 # elif defined OS2
 
   const char *locale;
-  static char buf[2 + 10 + 1];
+  static char resultbuf[2 + 10 + 1];
   ULONG cp[3];
   ULONG cplen;
 
@@ -965,11 +980,12 @@ locale_charset (void)
           modifier = strchr (dot, '@');
           if (modifier == NULL)
             return dot;
-          if (modifier - dot < sizeof (buf))
+          if (modifier - dot < sizeof (resultbuf))
             {
-              memcpy (buf, dot, modifier - dot);
-              buf [modifier - dot] = '\0';
-              return buf;
+              /* This way of filling resultbuf is multithread-safe.  */
+              memcpy (resultbuf, dot, modifier - dot);
+              resultbuf [modifier - dot] = '\0';
+              return resultbuf;
             }
         }
 
@@ -985,8 +1001,11 @@ locale_charset (void)
         codeset = "";
       else
         {
+          char buf[2 + 10 + 1];
+
           sprintf (buf, "CP%u", cp[0]);
-          codeset = buf;
+          strcpy (resultbuf, buf);
+          codeset = resultbuf;
         }
     }
 
index 7d0d7711dbe40776da92a9b6e501818116d5b38e..aa623be07a128be67d15386b12e8e0d315480f13 100644 (file)
@@ -1,5 +1,5 @@
 /* Determine a canonical name for the current locale's character encoding.
-   Copyright (C) 2000-2003, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2000-2003, 2009-2020 Free Software Foundation, Inc.
    This file is part of the GNU CHARSET Library.
 
    This program is free software; you can redistribute it and/or modify
@@ -26,7 +26,10 @@ extern "C" {
 
 /* Determine the current locale's character encoding, and canonicalize it
    into one of the canonical names listed below.
-   The result must not be freed; it is statically allocated.
+   The result must not be freed; it is statically allocated.  The result
+   becomes invalid when setlocale() is used to change the global locale, or
+   when the value of one of the environment variables LC_ALL, LC_CTYPE, LANG
+   is changed; threads in multithreaded programs should not do this.
    If the canonical name cannot be determined, the result is a non-canonical
    name.  */
 extern const char * locale_charset (void);
@@ -45,15 +48,15 @@ extern const char * locale_charset (void);
                                     (darwin = Mac OS X, windows = native Windows)
 
    ASCII, ANSI_X3.4-1968       glibc solaris freebsd netbsd darwin minix 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-1              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos
+   ISO-8859-2              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos
    ISO-8859-3              Y   glibc solaris cygwin
    ISO-8859-4              Y   hpux osf solaris freebsd netbsd openbsd darwin
-   ISO-8859-5              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin
+   ISO-8859-5              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos
    ISO-8859-6              Y   glibc aix hpux solaris cygwin
-   ISO-8859-7              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin
-   ISO-8859-8              Y   glibc aix hpux osf solaris cygwin
-   ISO-8859-9              Y   glibc aix hpux irix osf solaris freebsd darwin cygwin
+   ISO-8859-7              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos
+   ISO-8859-8              Y   glibc aix hpux osf solaris cygwin zos
+   ISO-8859-9              Y   glibc aix hpux irix osf solaris freebsd darwin cygwin zos
    ISO-8859-13                 glibc hpux solaris freebsd netbsd openbsd darwin cygwin
    ISO-8859-14                 glibc cygwin
    ISO-8859-15                 glibc aix irix osf solaris freebsd netbsd openbsd darwin cygwin
@@ -76,7 +79,7 @@ extern const char * locale_charset (void);
    CP874                       windows dos
    CP922                       aix
    CP932                       aix cygwin windows dos
-   CP943                       aix
+   CP943                       aix zos
    CP949                       osf darwin windows dos
    CP950                       windows dos
    CP1046                      aix
@@ -92,17 +95,17 @@ extern const char * locale_charset (void);
    CP1255                      glibc windows
    CP1256                      windows
    CP1257                      windows
-   GB2312                  Y   glibc aix hpux irix solaris freebsd netbsd darwin cygwin
+   GB2312                  Y   glibc aix hpux irix solaris freebsd netbsd darwin cygwin zos
    EUC-JP                  Y   glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin
-   EUC-KR                  Y   glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin
+   EUC-KR                  Y   glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin zos
    EUC-TW                      glibc aix hpux irix osf solaris netbsd
-   BIG5                    Y   glibc aix hpux osf solaris freebsd netbsd darwin cygwin
+   BIG5                    Y   glibc aix hpux osf solaris freebsd netbsd darwin cygwin zos
    BIG5-HKSCS                  glibc hpux solaris netbsd darwin
    GBK                         glibc aix osf solaris freebsd darwin cygwin windows dos
    GB18030                     glibc hpux solaris freebsd netbsd darwin
    SHIFT_JIS               Y   hpux osf solaris freebsd netbsd darwin
    JOHAB                       glibc solaris windows
-   TIS-620                     glibc aix hpux osf solaris cygwin
+   TIS-620                     glibc aix hpux osf solaris cygwin zos
    VISCII                  Y   glibc
    TCVN5712-1                  glibc
    ARMSCII-8                   glibc freebsd netbsd darwin
@@ -116,7 +119,7 @@ extern const char * locale_charset (void);
    HP-KANA8                    hpux
    DEC-KANJI                   osf
    DEC-HANYU                   osf
-   UTF-8                   Y   glibc aix hpux osf solaris netbsd darwin cygwin
+   UTF-8                   Y   glibc aix hpux osf solaris netbsd darwin cygwin zos
 
    Note: Names which are not marked as being a MIME name should not be used in
    Internet protocols for information interchange (mail, news, etc.).
index 5f33ed17cccb37174f393e351be1bcd3b0d99a54..4e9b3f38a9880ad016e7910427939b269ba347c4 100644 (file)
@@ -1,5 +1,5 @@
 /* A POSIX <locale.h>.
-   Copyright (C) 2007-2019 Free Software Foundation, Inc.
+   Copyright (C) 2007-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 # define LC_MESSAGES 1729
 #endif
 
+/* On native Windows with MSVC, 'struct lconv' lacks the members int_p_* and
+   int_n_*.  Instead of overriding 'struct lconv', merely define these member
+   names as macros.  This avoids trouble in C++ mode.  */
+#if defined _MSC_VER
+# define int_p_cs_precedes   p_cs_precedes
+# define int_p_sign_posn     p_sign_posn
+# define int_p_sep_by_space  p_sep_by_space
+# define int_n_cs_precedes   n_cs_precedes
+# define int_n_sign_posn     n_sign_posn
+# define int_n_sep_by_space  n_sep_by_space
+#endif
+
 /* Bionic libc's 'struct lconv' is just a dummy.  */
 #if @REPLACE_STRUCT_LCONV@
 # define lconv rpl_lconv
@@ -72,7 +84,7 @@ struct lconv
   /* All 'char *' are actually 'const char *'.  */
 
   /* Members that depend on the LC_NUMERIC category of the locale.  See
-     <http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap07.html#tag_07_03_04> */
+     <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap07.html#tag_07_03_04> */
 
   /* Symbol used as decimal point.  */
   char *decimal_point;
@@ -84,7 +96,7 @@ struct lconv
   char *grouping;
 
   /* Members that depend on the LC_MONETARY category of the locale.  See
-     <http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap07.html#tag_07_03_03> */
+     <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap07.html#tag_07_03_03> */
 
   /* Symbol used as decimal point.  */
   char *mon_decimal_point;
@@ -156,7 +168,9 @@ _GL_CXXALIAS_RPL (localeconv, struct lconv *, (void));
 # else
 _GL_CXXALIAS_SYS (localeconv, struct lconv *, (void));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (localeconv);
+# endif
 #elif @REPLACE_STRUCT_LCONV@
 # undef localeconv
 # define localeconv localeconv_used_without_requesting_gnulib_module_localeconv
@@ -181,7 +195,9 @@ _GL_CXXALIAS_RPL (setlocale, char *, (int category, const char *locale));
 # else
 _GL_CXXALIAS_SYS (setlocale, char *, (int category, const char *locale));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (setlocale);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef setlocale
 # if HAVE_RAW_DECL_SETLOCALE
@@ -190,6 +206,11 @@ _GL_WARN_ON_USE (setlocale, "setlocale works differently on native Windows - "
 # endif
 #endif
 
+#if @GNULIB_SETLOCALE_NULL@
+/* Included here for convenience.  */
+# include "setlocale_null.h"
+#endif
+
 #if /*@GNULIB_NEWLOCALE@ ||*/ (@GNULIB_LOCALENAME@ && @HAVE_NEWLOCALE@)
 # if @REPLACE_NEWLOCALE@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@@ -211,6 +232,11 @@ _GL_CXXALIAS_SYS (newlocale, locale_t,
 # if @HAVE_NEWLOCALE@
 _GL_CXXALIASWARN (newlocale);
 # endif
+# if @HAVE_NEWLOCALE@ || @REPLACE_NEWLOCALE@
+#  ifndef HAVE_WORKING_NEWLOCALE
+#   define HAVE_WORKING_NEWLOCALE 1
+#  endif
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef newlocale
 # if HAVE_RAW_DECL_NEWLOCALE
@@ -235,6 +261,11 @@ _GL_CXXALIAS_SYS (duplocale, locale_t, (locale_t locale));
 # if @HAVE_DUPLOCALE@
 _GL_CXXALIASWARN (duplocale);
 # endif
+# if @HAVE_DUPLOCALE@ || @REPLACE_DUPLOCALE@
+#  ifndef HAVE_WORKING_DUPLOCALE
+#   define HAVE_WORKING_DUPLOCALE 1
+#  endif
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef duplocale
 # if HAVE_RAW_DECL_DUPLOCALE
@@ -254,7 +285,9 @@ _GL_FUNCDECL_RPL (freelocale, void, (locale_t locale) _GL_ARG_NONNULL ((1)));
 _GL_CXXALIAS_RPL (freelocale, void, (locale_t locale));
 # else
 #  if @HAVE_FREELOCALE@
-_GL_CXXALIAS_SYS (freelocale, void, (locale_t locale));
+/* Need to cast, because on FreeBSD and Mac OS X 10.13, the return type is
+                                   int.  */
+_GL_CXXALIAS_SYS_CAST (freelocale, void, (locale_t locale));
 #  endif
 # endif
 # if @HAVE_FREELOCALE@
index b5a965f3e033e62d6ab11e129d1c62da1bdaedb7..8aa9bbe6cf61e1644836bf10b127692c45224f34 100644 (file)
@@ -1,5 +1,5 @@
 /* Query locale dependent information for formatting numbers.
-   Copyright (C) 2012-2019 Free Software Foundation, Inc.
+   Copyright (C) 2012-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
diff --git a/lib/localtime-buffer.c b/lib/localtime-buffer.c
deleted file mode 100644 (file)
index b65ea45..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Provide access to the last buffer returned by localtime() or gmtime().
-
-   Copyright (C) 2001-2003, 2005-2007, 2009-2019 Free Software Foundation, Inc.
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 3, or (at your option)
-   any later version.
-
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
-
-/* written by Jim Meyering */
-
-#include <config.h>
-
-/* Specification.  */
-#include "localtime-buffer.h"
-
-#if GETTIMEOFDAY_CLOBBERS_LOCALTIME || TZSET_CLOBBERS_LOCALTIME
-
-static struct tm tm_zero_buffer;
-struct tm *localtime_buffer_addr = &tm_zero_buffer;
-
-/* This is a wrapper for localtime.
-
-   On the first call, record the address of the static buffer that
-   localtime uses for its result.  */
-
-struct tm *
-rpl_localtime (time_t const *timep)
-#undef localtime
-{
-  struct tm *tm = localtime (timep);
-
-  if (localtime_buffer_addr == &tm_zero_buffer)
-    localtime_buffer_addr = tm;
-
-  return tm;
-}
-
-/* Same as above, since gmtime and localtime use the same buffer.  */
-struct tm *
-rpl_gmtime (time_t const *timep)
-#undef gmtime
-{
-  struct tm *tm = gmtime (timep);
-
-  if (localtime_buffer_addr == &tm_zero_buffer)
-    localtime_buffer_addr = tm;
-
-  return tm;
-}
-
-#endif
diff --git a/lib/localtime-buffer.h b/lib/localtime-buffer.h
deleted file mode 100644 (file)
index 031111a..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Provide access to the last buffer returned by localtime() or gmtime().
-
-   Copyright (C) 2001-2003, 2005-2007, 2009-2019 Free Software Foundation, Inc.
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 3, or (at your option)
-   any later version.
-
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
-
-/* written by Jim Meyering */
-
-#include <time.h>
-
-#if GETTIMEOFDAY_CLOBBERS_LOCALTIME || TZSET_CLOBBERS_LOCALTIME
-
-/* The address of the last buffer returned by localtime() or gmtime().  */
-extern struct tm *localtime_buffer_addr;
-
-#endif
index cbdc6a98bcc3af04b85a23cd3446e5f798238b30..e8f0799dedf1dae32360afa71e85be361746f8d0 100644 (file)
@@ -1,6 +1,6 @@
 /* Utility to accept --help and --version options as unobtrusively as possible.
 
-   Copyright (C) 1993-1994, 1998-2000, 2002-2006, 2009-2019 Free Software
+   Copyright (C) 1993-1994, 1998-2000, 2002-2006, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
index 13f17eccc28693a4fc68445e13f8e3c8a22bd548..c30c16f7eefac54833dd0c30d2726798be69b591 100644 (file)
@@ -1,5 +1,5 @@
 /* long-options.h -- declaration for --help- and --version-handling function.
-   Copyright (C) 1993-1994, 1998-1999, 2003, 2009-2019 Free Software
+   Copyright (C) 1993-1994, 1998-1999, 2003, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
index 46f7a3fa4e35bbbd44bed9b77da9d551a289acc0..aaf9f32c8e7488394f642916bb10456af2a29dc7 100644 (file)
@@ -1,5 +1,5 @@
 /* An lseek() function that detects pipes.
-   Copyright (C) 2007, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2007, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -63,7 +63,7 @@ rpl_lseek (int fd, off_t offset, int whence)
       return -1;
     }
 #endif
-#if _GL_WINDOWS_64_BIT_OFF_T
+#if _GL_WINDOWS_64_BIT_OFF_T || (defined __MINGW32__ && defined _FILE_OFFSET_BITS && (_FILE_OFFSET_BITS == 64))
   return _lseeki64 (fd, offset, whence);
 #else
   return lseek (fd, offset, whence);
index a3e40d826f08a8f1dc1e5b51153d0e62a7dc61ef..f74392b731902b330660b97b2ca29d5ec622bef4 100644 (file)
@@ -1,6 +1,6 @@
 /* Work around a bug of lstat on some systems
 
-   Copyright (C) 1997-2006, 2008-2019 Free Software Foundation, Inc.
+   Copyright (C) 1997-2006, 2008-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 76e6ff764b7bbaca05904cad345651f04cece40a..7232f1e38afb31f1c92f5b96c38c5e1c8bd1330f 100644 (file)
@@ -1,6 +1,6 @@
 /* malloc() function that is glibc compatible.
 
-   Copyright (C) 1997-1998, 2006-2007, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 1997-1998, 2006-2007, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index f60c5fb5d9353a3e10dafeee9ae8a3519e9f8d65..975b166daeda41cc5ceea3944a866fa26f5e8d6c 100644 (file)
@@ -1,5 +1,5 @@
 /* Safe automatic memory allocation.
-   Copyright (C) 2003, 2006-2007, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2003, 2006-2007, 2009-2020 Free Software Foundation, Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2003, 2018.
 
    This program is free software; you can redistribute it and/or modify
index d80c316caa9434238801b61f20d905cad3300fdb..ccc485a6a4d1a7ee553b1ff32c49707247c8a6f9 100644 (file)
@@ -1,5 +1,5 @@
 /* Safe automatic memory allocation.
-   Copyright (C) 2003-2007, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2003-2007, 2009-2020 Free Software Foundation, Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2003.
 
    This program is free software; you can redistribute it and/or modify
@@ -89,7 +89,7 @@ extern void freea (void *p);
 /* ------------------- Auxiliary, non-public definitions ------------------- */
 
 /* Determine the alignment of a type at compile time.  */
-#if defined __GNUC__ || defined __IBM__ALIGNOF__
+#if defined __GNUC__ || defined __clang__ || defined __IBM__ALIGNOF__
 # define sa_alignof __alignof__
 #elif defined __cplusplus
   template <class type> struct sa_alignof_helper { char __slot1; type __slot2; };
@@ -112,14 +112,10 @@ enum
    among all elementary types.  */
   sa_alignment_long = sa_alignof (long),
   sa_alignment_double = sa_alignof (double),
-#if HAVE_LONG_LONG_INT
   sa_alignment_longlong = sa_alignof (long long),
-#endif
   sa_alignment_longdouble = sa_alignof (long double),
   sa_alignment_max = ((sa_alignment_long - 1) | (sa_alignment_double - 1)
-#if HAVE_LONG_LONG_INT
                       | (sa_alignment_longlong - 1)
-#endif
                       | (sa_alignment_longdouble - 1)
                      ) + 1
 };
diff --git a/lib/mbrtowc-impl-utf8.h b/lib/mbrtowc-impl-utf8.h
new file mode 100644 (file)
index 0000000..a826b1b
--- /dev/null
@@ -0,0 +1,138 @@
+/* Convert multibyte character to wide character.
+   Copyright (C) 1999-2002, 2005-2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2008.  */
+
+/* This file contains the part of the body of the mbrtowc and mbrtoc32 functions
+   that handles the special case of the UTF-8 encoding.  */
+
+        /* Cf. unistr/u8-mbtouc.c.  */
+        unsigned char c = (unsigned char) p[0];
+
+        if (c < 0x80)
+          {
+            if (pwc != NULL)
+              *pwc = c;
+            res = (c == 0 ? 0 : 1);
+            goto success;
+          }
+        if (c >= 0xc2)
+          {
+            if (c < 0xe0)
+              {
+                if (m == 1)
+                  goto incomplete;
+                else /* m >= 2 */
+                  {
+                    unsigned char c2 = (unsigned char) p[1];
+
+                    if ((c2 ^ 0x80) < 0x40)
+                      {
+                        if (pwc != NULL)
+                          *pwc = ((unsigned int) (c & 0x1f) << 6)
+                                 | (unsigned int) (c2 ^ 0x80);
+                        res = 2;
+                        goto success;
+                      }
+                  }
+              }
+            else if (c < 0xf0)
+              {
+                if (m == 1)
+                  goto incomplete;
+                else
+                  {
+                    unsigned char c2 = (unsigned char) p[1];
+
+                    if ((c2 ^ 0x80) < 0x40
+                        && (c >= 0xe1 || c2 >= 0xa0)
+                        && (c != 0xed || c2 < 0xa0))
+                      {
+                        if (m == 2)
+                          goto incomplete;
+                        else /* m >= 3 */
+                          {
+                            unsigned char c3 = (unsigned char) p[2];
+
+                            if ((c3 ^ 0x80) < 0x40)
+                              {
+                                unsigned int wc =
+                                  (((unsigned int) (c & 0x0f) << 12)
+                                   | ((unsigned int) (c2 ^ 0x80) << 6)
+                                   | (unsigned int) (c3 ^ 0x80));
+
+                                if (FITS_IN_CHAR_TYPE (wc))
+                                  {
+                                    if (pwc != NULL)
+                                      *pwc = wc;
+                                    res = 3;
+                                    goto success;
+                                  }
+                              }
+                          }
+                      }
+                  }
+              }
+            else if (c <= 0xf4)
+              {
+                if (m == 1)
+                  goto incomplete;
+                else
+                  {
+                    unsigned char c2 = (unsigned char) p[1];
+
+                    if ((c2 ^ 0x80) < 0x40
+                        && (c >= 0xf1 || c2 >= 0x90)
+                        && (c < 0xf4 || (c == 0xf4 && c2 < 0x90)))
+                      {
+                        if (m == 2)
+                          goto incomplete;
+                        else
+                          {
+                            unsigned char c3 = (unsigned char) p[2];
+
+                            if ((c3 ^ 0x80) < 0x40)
+                              {
+                                if (m == 3)
+                                  goto incomplete;
+                                else /* m >= 4 */
+                                  {
+                                    unsigned char c4 = (unsigned char) p[3];
+
+                                    if ((c4 ^ 0x80) < 0x40)
+                                      {
+                                        unsigned int wc =
+                                          (((unsigned int) (c & 0x07) << 18)
+                                           | ((unsigned int) (c2 ^ 0x80) << 12)
+                                           | ((unsigned int) (c3 ^ 0x80) << 6)
+                                           | (unsigned int) (c4 ^ 0x80));
+
+                                        if (FITS_IN_CHAR_TYPE (wc))
+                                          {
+                                            if (pwc != NULL)
+                                              *pwc = wc;
+                                            res = 4;
+                                            goto success;
+                                          }
+                                      }
+                                  }
+                              }
+                          }
+                      }
+                  }
+              }
+          }
+        goto invalid;
diff --git a/lib/mbrtowc-impl.h b/lib/mbrtowc-impl.h
new file mode 100644 (file)
index 0000000..c970439
--- /dev/null
@@ -0,0 +1,262 @@
+/* Convert multibyte character to wide character.
+   Copyright (C) 1999-2002, 2005-2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2008.  */
+
+/* This file contains the body of the mbrtowc and mbrtoc32 functions,
+   when GNULIB_defined_mbstate_t is defined.  */
+
+  char *pstate = (char *)ps;
+
+  if (s == NULL)
+    {
+      pwc = NULL;
+      s = "";
+      n = 1;
+    }
+
+  if (n == 0)
+    return (size_t)(-2);
+
+  /* Here n > 0.  */
+
+  if (pstate == NULL)
+    pstate = internal_state;
+
+  {
+    size_t nstate = pstate[0];
+    char buf[4];
+    const char *p;
+    size_t m;
+    enc_t enc;
+    int res;
+
+    switch (nstate)
+      {
+      case 0:
+        p = s;
+        m = n;
+        break;
+      case 3:
+        buf[2] = pstate[3];
+        FALLTHROUGH;
+      case 2:
+        buf[1] = pstate[2];
+        FALLTHROUGH;
+      case 1:
+        buf[0] = pstate[1];
+        p = buf;
+        m = nstate;
+        buf[m++] = s[0];
+        if (n >= 2 && m < 4)
+          {
+            buf[m++] = s[1];
+            if (n >= 3 && m < 4)
+              buf[m++] = s[2];
+          }
+        break;
+      default:
+        errno = EINVAL;
+        return (size_t)(-1);
+      }
+
+    /* Here m > 0.  */
+
+    enc = locale_encoding_classification ();
+
+    if (enc == enc_utf8) /* UTF-8 */
+      {
+        /* Achieve
+             - multi-thread safety and
+             - the ability to produce wide character values > WCHAR_MAX
+           by not calling mbtowc() at all.  */
+#include "mbrtowc-impl-utf8.h"
+      }
+    else
+      {
+        /* The hidden internal state of mbtowc would make this function not
+           multi-thread safe.  Achieve multi-thread safety through a lock.  */
+        wchar_t wc;
+        res = mbtowc_with_lock (&wc, p, m);
+
+        if (res >= 0)
+          {
+            if ((wc == 0) != (res == 0))
+              abort ();
+            if (pwc != NULL)
+              *pwc = wc;
+            goto success;
+          }
+
+        /* mbtowc does not distinguish between invalid and incomplete multibyte
+           sequences.  But mbrtowc needs to make this distinction.
+           There are two possible approaches:
+             - Use iconv() and its return value.
+             - Use built-in knowledge about the possible encodings.
+           Given the low quality of implementation of iconv() on the systems
+           that lack mbrtowc(), we use the second approach.
+           The possible encodings are:
+             - 8-bit encodings,
+             - EUC-JP, EUC-KR, GB2312, EUC-TW, BIG5, GB18030, SJIS,
+             - UTF-8 (already handled above).
+           Use specialized code for each.  */
+        if (m >= 4 || m >= MB_CUR_MAX)
+          goto invalid;
+        /* Here MB_CUR_MAX > 1 and 0 < m < 4.  */
+        switch (enc)
+          {
+          /* As a reference for this code, you can use the GNU libiconv
+             implementation.  Look for uses of the RET_TOOFEW macro.  */
+
+          case enc_eucjp: /* EUC-JP */
+            {
+              if (m == 1)
+                {
+                  unsigned char c = (unsigned char) p[0];
+
+                  if ((c >= 0xa1 && c < 0xff) || c == 0x8e || c == 0x8f)
+                    goto incomplete;
+                }
+              if (m == 2)
+                {
+                  unsigned char c = (unsigned char) p[0];
+
+                  if (c == 0x8f)
+                    {
+                      unsigned char c2 = (unsigned char) p[1];
+
+                      if (c2 >= 0xa1 && c2 < 0xff)
+                        goto incomplete;
+                    }
+                }
+              goto invalid;
+            }
+
+          case enc_94: /* EUC-KR, GB2312, BIG5 */
+            {
+              if (m == 1)
+                {
+                  unsigned char c = (unsigned char) p[0];
+
+                  if (c >= 0xa1 && c < 0xff)
+                    goto incomplete;
+                }
+              goto invalid;
+            }
+
+          case enc_euctw: /* EUC-TW */
+            {
+              if (m == 1)
+                {
+                  unsigned char c = (unsigned char) p[0];
+
+                  if ((c >= 0xa1 && c < 0xff) || c == 0x8e)
+                    goto incomplete;
+                }
+              else /* m == 2 || m == 3 */
+                {
+                  unsigned char c = (unsigned char) p[0];
+
+                  if (c == 0x8e)
+                    goto incomplete;
+                }
+              goto invalid;
+            }
+
+          case enc_gb18030: /* GB18030 */
+            {
+              if (m == 1)
+                {
+                  unsigned char c = (unsigned char) p[0];
+
+                  if ((c >= 0x90 && c <= 0xe3) || (c >= 0xf8 && c <= 0xfe))
+                    goto incomplete;
+                }
+              else /* m == 2 || m == 3 */
+                {
+                  unsigned char c = (unsigned char) p[0];
+
+                  if (c >= 0x90 && c <= 0xe3)
+                    {
+                      unsigned char c2 = (unsigned char) p[1];
+
+                      if (c2 >= 0x30 && c2 <= 0x39)
+                        {
+                          if (m == 2)
+                            goto incomplete;
+                          else /* m == 3 */
+                            {
+                              unsigned char c3 = (unsigned char) p[2];
+
+                              if (c3 >= 0x81 && c3 <= 0xfe)
+                                goto incomplete;
+                            }
+                        }
+                    }
+                }
+              goto invalid;
+            }
+
+          case enc_sjis: /* SJIS */
+            {
+              if (m == 1)
+                {
+                  unsigned char c = (unsigned char) p[0];
+
+                  if ((c >= 0x81 && c <= 0x9f) || (c >= 0xe0 && c <= 0xea)
+                      || (c >= 0xf0 && c <= 0xf9))
+                    goto incomplete;
+                }
+              goto invalid;
+            }
+
+          default:
+            /* An unknown multibyte encoding.  */
+            goto incomplete;
+          }
+      }
+
+   success:
+    /* res >= 0 is the corrected return value of
+       mbtowc_with_lock (&wc, p, m).  */
+    if (nstate >= (res > 0 ? res : 1))
+      abort ();
+    res -= nstate;
+    pstate[0] = 0;
+    return res;
+
+   incomplete:
+    {
+      size_t k = nstate;
+      /* Here 0 <= k < m < 4.  */
+      pstate[++k] = s[0];
+      if (k < m)
+        {
+          pstate[++k] = s[1];
+          if (k < m)
+            pstate[++k] = s[2];
+        }
+      if (k != m)
+        abort ();
+    }
+    pstate[0] = m;
+    return (size_t)(-2);
+
+   invalid:
+    errno = EILSEQ;
+    /* The conversion state is undefined, says POSIX.  */
+    return (size_t)(-1);
+  }
index 1aad22cd5a5a9f9201dcf29ef75d8c4212f2eeff..a71d3943034aac56a45f8de5768b50d6ec50067a 100644 (file)
@@ -1,5 +1,5 @@
 /* Convert multibyte character to wide character.
-   Copyright (C) 1999-2002, 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 1999-2002, 2005-2020 Free Software Foundation, Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2008.
 
    This program is free software: you can redistribute it and/or modify
 /* Specification.  */
 #include <wchar.h>
 
-#if C_LOCALE_MAYBE_EILSEQ
-# include "hard-locale.h"
-# include <locale.h>
-#endif
-
 #if GNULIB_defined_mbstate_t
-/* Implement mbrtowc() on top of mbtowc().  */
+/* Implement mbrtowc() on top of mbtowc() for the non-UTF-8 locales
+   and directly for the UTF-8 locales.  */
 
 # include <errno.h>
+# include <stdint.h>
 # include <stdlib.h>
 
-# include "localcharset.h"
-# include "streq.h"
-# include "verify.h"
-# include "glthread/lock.h"
+# if defined _WIN32 && !defined __CYGWIN__
+
+#  define WIN32_LEAN_AND_MEAN  /* avoid including junk */
+#  include <windows.h>
+
+# elif HAVE_PTHREAD_API
 
-# ifndef FALLTHROUGH
-#  if __GNUC__ < 7
-#   define FALLTHROUGH ((void) 0)
+#  include <pthread.h>
+#  if HAVE_THREADS_H && HAVE_WEAK_SYMBOLS
+#   include <threads.h>
+#   pragma weak thrd_exit
+#   define c11_threads_in_use() (thrd_exit != NULL)
 #  else
-#   define FALLTHROUGH __attribute__ ((__fallthrough__))
+#   define c11_threads_in_use() 0
 #  endif
-# endif
 
-/* Returns a classification of special values of the encoding of the current
-   locale.  */
-typedef enum {
-  enc_other,      /* other */
-  enc_utf8,       /* UTF-8 */
-  enc_eucjp,      /* EUC-JP */
-  enc_94,         /* EUC-KR, GB2312, BIG5 */
-  enc_euctw,      /* EUC-TW */
-  enc_gb18030,    /* GB18030 */
-  enc_sjis        /* SJIS */
-} enc_t;
-static inline enc_t
-locale_enc (void)
-{
-  const char *encoding = locale_charset ();
-  if (STREQ_OPT (encoding, "UTF-8", 'U', 'T', 'F', '-', '8', 0, 0, 0, 0))
-    return enc_utf8;
-  if (STREQ_OPT (encoding, "EUC-JP", 'E', 'U', 'C', '-', 'J', 'P', 0, 0, 0))
-    return enc_eucjp;
-  if (STREQ_OPT (encoding, "EUC-KR", 'E', 'U', 'C', '-', 'K', 'R', 0, 0, 0)
-      || STREQ_OPT (encoding, "GB2312", 'G', 'B', '2', '3', '1', '2', 0, 0, 0)
-      || STREQ_OPT (encoding, "BIG5", 'B', 'I', 'G', '5', 0, 0, 0, 0, 0))
-    return enc_94;
-  if (STREQ_OPT (encoding, "EUC-TW", 'E', 'U', 'C', '-', 'T', 'W', 0, 0, 0))
-    return enc_euctw;
-  if (STREQ_OPT (encoding, "GB18030", 'G', 'B', '1', '8', '0', '3', '0', 0, 0))
-    return enc_gb18030;
-  if (STREQ_OPT (encoding, "SJIS", 'S', 'J', 'I', 'S', 0, 0, 0, 0, 0))
-    return enc_sjis;
-  return enc_other;
-}
+# elif HAVE_THREADS_H
+
+#  include <threads.h>
 
-# if GNULIB_WCHAR_SINGLE
-/* When we know that the locale does not change, provide a speedup by
-   caching the value of locale_enc.  */
-static int cached_locale_enc = -1;
-static inline enc_t
-locale_enc_cached (void)
-{
-  if (cached_locale_enc < 0)
-    cached_locale_enc = locale_enc ();
-  return cached_locale_enc;
-}
-# else
-/* By default, don't make assumptions, hence no caching.  */
-#  define locale_enc_cached locale_enc
 # endif
 
-/* This lock protects the internal state of mbtowc against multiple simultaneous
-   calls of mbrtowc.  */
-gl_lock_define_initialized(static, mbtowc_lock)
+# include "attribute.h"
+# include "verify.h"
+# include "lc-charset-dispatch.h"
+# include "mbtowc-lock.h"
 
 verify (sizeof (mbstate_t) >= 4);
-
 static char internal_state[4];
 
 size_t
 mbrtowc (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps)
 {
-  char *pstate = (char *)ps;
-
-  if (s == NULL)
-    {
-      pwc = NULL;
-      s = "";
-      n = 1;
-    }
-
-  if (n == 0)
-    return (size_t)(-2);
-
-  /* Here n > 0.  */
-
-  if (pstate == NULL)
-    pstate = internal_state;
-
-  {
-    size_t nstate = pstate[0];
-    char buf[4];
-    const char *p;
-    size_t m;
-    enc_t enc;
-    int res;
-
-    switch (nstate)
-      {
-      case 0:
-        p = s;
-        m = n;
-        break;
-      case 3:
-        buf[2] = pstate[3];
-        FALLTHROUGH;
-      case 2:
-        buf[1] = pstate[2];
-        FALLTHROUGH;
-      case 1:
-        buf[0] = pstate[1];
-        p = buf;
-        m = nstate;
-        buf[m++] = s[0];
-        if (n >= 2 && m < 4)
-          {
-            buf[m++] = s[1];
-            if (n >= 3 && m < 4)
-              buf[m++] = s[2];
-          }
-        break;
-      default:
-        errno = EINVAL;
-        return (size_t)(-1);
-      }
-
-    /* Here m > 0.  */
-
-    enc = locale_enc_cached ();
-
-    if (enc == enc_utf8) /* UTF-8 */
-      {
-        /* Achieve multi-thread safety by not calling mbtowc() at all.  */
-        /* Cf. unistr/u8-mbtouc.c.  */
-        unsigned char c = (unsigned char) p[0];
-
-        if (c < 0x80)
-          {
-            if (pwc != NULL)
-              *pwc = c;
-            res = (c == 0 ? 0 : 1);
-            goto success;
-          }
-        if (c >= 0xc2)
-          {
-            if (c < 0xe0)
-              {
-                if (m == 1)
-                  goto incomplete;
-                else /* m >= 2 */
-                  {
-                    unsigned char c2 = (unsigned char) p[1];
-
-                    if ((c2 ^ 0x80) < 0x40)
-                      {
-                        if (pwc != NULL)
-                          *pwc = ((unsigned int) (c & 0x1f) << 6)
-                                 | (unsigned int) (c2 ^ 0x80);
-                        res = 2;
-                        goto success;
-                      }
-                  }
-              }
-            else if (c < 0xf0)
-              {
-                if (m == 1)
-                  goto incomplete;
-                else
-                  {
-                    unsigned char c2 = (unsigned char) p[1];
-
-                    if ((c2 ^ 0x80) < 0x40
-                        && (c >= 0xe1 || c2 >= 0xa0)
-                        && (c != 0xed || c2 < 0xa0))
-                      {
-                        if (m == 2)
-                          goto incomplete;
-                        else /* m >= 3 */
-                          {
-                            unsigned char c3 = (unsigned char) p[2];
-
-                            if ((c3 ^ 0x80) < 0x40)
-                              {
-                                if (pwc != NULL)
-                                  *pwc = ((unsigned int) (c & 0x0f) << 12)
-                                         | ((unsigned int) (c2 ^ 0x80) << 6)
-                                         | (unsigned int) (c3 ^ 0x80);
-                                res = 3;
-                                goto success;
-                              }
-                          }
-                      }
-                  }
-              }
-            else if (c <= 0xf4)
-              {
-                if (m == 1)
-                  goto incomplete;
-                else
-                  {
-                    unsigned char c2 = (unsigned char) p[1];
-
-                    if ((c2 ^ 0x80) < 0x40
-                        && (c >= 0xf1 || c2 >= 0x90)
-                        && (c < 0xf4 || (c == 0xf4 && c2 < 0x90)))
-                      {
-                        if (m == 2)
-                          goto incomplete;
-                        else
-                          {
-                            unsigned char c3 = (unsigned char) p[2];
-
-                            if ((c3 ^ 0x80) < 0x40)
-                              {
-                                if (m == 3)
-                                  goto incomplete;
-                                else /* m >= 4 */
-                                  {
-                                    unsigned char c4 = (unsigned char) p[3];
-
-                                    if ((c4 ^ 0x80) < 0x40)
-                                      {
-                                        if (pwc != NULL)
-                                          *pwc = ((unsigned int) (c & 0x07) << 18)
-                                                 | ((unsigned int) (c2 ^ 0x80) << 12)
-                                                 | ((unsigned int) (c3 ^ 0x80) << 6)
-                                                 | (unsigned int) (c4 ^ 0x80);
-                                        res = 4;
-                                        goto success;
-                                      }
-                                  }
-                              }
-                          }
-                      }
-                  }
-              }
-          }
-        goto invalid;
-      }
-    else
-      {
-        /* The hidden internal state of mbtowc would make this function not
-           multi-thread safe.  Achieve multi-thread safety through a lock.  */
-        gl_lock_lock (mbtowc_lock);
-
-        /* Put the hidden internal state of mbtowc into its initial state.
-           This is needed at least with glibc, uClibc, and MSVC CRT.
-           See <https://sourceware.org/bugzilla/show_bug.cgi?id=9674>.  */
-        mbtowc (NULL, NULL, 0);
-
-        res = mbtowc (pwc, p, m);
-
-        gl_lock_unlock (mbtowc_lock);
-
-        if (res >= 0)
-          {
-            if (pwc != NULL && ((*pwc == 0) != (res == 0)))
-              abort ();
-            goto success;
-          }
-
-        /* mbtowc does not distinguish between invalid and incomplete multibyte
-           sequences.  But mbrtowc needs to make this distinction.
-           There are two possible approaches:
-             - Use iconv() and its return value.
-             - Use built-in knowledge about the possible encodings.
-           Given the low quality of implementation of iconv() on the systems
-           that lack mbrtowc(), we use the second approach.
-           The possible encodings are:
-             - 8-bit encodings,
-             - EUC-JP, EUC-KR, GB2312, EUC-TW, BIG5, GB18030, SJIS,
-             - UTF-8 (already handled above).
-           Use specialized code for each.  */
-        if (m >= 4 || m >= MB_CUR_MAX)
-          goto invalid;
-        /* Here MB_CUR_MAX > 1 and 0 < m < 4.  */
-        switch (enc)
-          {
-          /* As a reference for this code, you can use the GNU libiconv
-             implementation.  Look for uses of the RET_TOOFEW macro.  */
-
-          case enc_eucjp: /* EUC-JP */
-            {
-              if (m == 1)
-                {
-                  unsigned char c = (unsigned char) p[0];
-
-                  if ((c >= 0xa1 && c < 0xff) || c == 0x8e || c == 0x8f)
-                    goto incomplete;
-                }
-              if (m == 2)
-                {
-                  unsigned char c = (unsigned char) p[0];
-
-                  if (c == 0x8f)
-                    {
-                      unsigned char c2 = (unsigned char) p[1];
-
-                      if (c2 >= 0xa1 && c2 < 0xff)
-                        goto incomplete;
-                    }
-                }
-              goto invalid;
-            }
-
-          case enc_94: /* EUC-KR, GB2312, BIG5 */
-            {
-              if (m == 1)
-                {
-                  unsigned char c = (unsigned char) p[0];
-
-                  if (c >= 0xa1 && c < 0xff)
-                    goto incomplete;
-                }
-              goto invalid;
-            }
-
-          case enc_euctw: /* EUC-TW */
-            {
-              if (m == 1)
-                {
-                  unsigned char c = (unsigned char) p[0];
-
-                  if ((c >= 0xa1 && c < 0xff) || c == 0x8e)
-                    goto incomplete;
-                }
-              else /* m == 2 || m == 3 */
-                {
-                  unsigned char c = (unsigned char) p[0];
-
-                  if (c == 0x8e)
-                    goto incomplete;
-                }
-              goto invalid;
-            }
-
-          case enc_gb18030: /* GB18030 */
-            {
-              if (m == 1)
-                {
-                  unsigned char c = (unsigned char) p[0];
-
-                  if ((c >= 0x90 && c <= 0xe3) || (c >= 0xf8 && c <= 0xfe))
-                    goto incomplete;
-                }
-              else /* m == 2 || m == 3 */
-                {
-                  unsigned char c = (unsigned char) p[0];
-
-                  if (c >= 0x90 && c <= 0xe3)
-                    {
-                      unsigned char c2 = (unsigned char) p[1];
-
-                      if (c2 >= 0x30 && c2 <= 0x39)
-                        {
-                          if (m == 2)
-                            goto incomplete;
-                          else /* m == 3 */
-                            {
-                              unsigned char c3 = (unsigned char) p[2];
-
-                              if (c3 >= 0x81 && c3 <= 0xfe)
-                                goto incomplete;
-                            }
-                        }
-                    }
-                }
-              goto invalid;
-            }
-
-          case enc_sjis: /* SJIS */
-            {
-              if (m == 1)
-                {
-                  unsigned char c = (unsigned char) p[0];
-
-                  if ((c >= 0x81 && c <= 0x9f) || (c >= 0xe0 && c <= 0xea)
-                      || (c >= 0xf0 && c <= 0xf9))
-                    goto incomplete;
-                }
-              goto invalid;
-            }
-
-          default:
-            /* An unknown multibyte encoding.  */
-            goto incomplete;
-          }
-      }
-
-   success:
-    /* res >= 0 is the corrected return value of mbtowc (pwc, p, m).  */
-    if (nstate >= (res > 0 ? res : 1))
-      abort ();
-    res -= nstate;
-    pstate[0] = 0;
-    return res;
-
-   incomplete:
-    {
-      size_t k = nstate;
-      /* Here 0 <= k < m < 4.  */
-      pstate[++k] = s[0];
-      if (k < m)
-        {
-          pstate[++k] = s[1];
-          if (k < m)
-            pstate[++k] = s[2];
-        }
-      if (k != m)
-        abort ();
-    }
-    pstate[0] = m;
-    return (size_t)(-2);
-
-   invalid:
-    errno = EILSEQ;
-    /* The conversion state is undefined, says POSIX.  */
-    return (size_t)(-1);
-  }
+# define FITS_IN_CHAR_TYPE(wc)  ((wc) <= WCHAR_MAX)
+# include "mbrtowc-impl.h"
 }
 
 #else
 /* Override the system's mbrtowc() function.  */
 
+# if MBRTOWC_IN_C_LOCALE_MAYBE_EILSEQ
+#  include "hard-locale.h"
+#  include <locale.h>
+# endif
+
 # undef mbrtowc
 
 size_t
@@ -512,14 +130,20 @@ rpl_mbrtowc (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps)
   }
 # endif
 
+# if MBRTOWC_STORES_INCOMPLETE_BUG
+  ret = mbrtowc (&wc, s, n, ps);
+  if (ret < (size_t) -2 && pwc != NULL)
+    *pwc = wc;
+# else
   ret = mbrtowc (pwc, s, n, ps);
+# endif
 
 # if MBRTOWC_NUL_RETVAL_BUG
   if (ret < (size_t) -2 && !*pwc)
     return 0;
 # endif
 
-# if C_LOCALE_MAYBE_EILSEQ
+# if MBRTOWC_IN_C_LOCALE_MAYBE_EILSEQ
   if ((size_t) -2 <= ret && n != 0 && ! hard_locale (LC_CTYPE))
     {
       unsigned char uc = *s;
index 5ecaef77c72cbcb3b0cbc3774c96d3935d1bb370..981a894b001e748b109ddef608d0256c8f76982a 100644 (file)
@@ -1,5 +1,5 @@
 /* Test for initial conversion state.
-   Copyright (C) 2008-2019 Free Software Foundation, Inc.
+   Copyright (C) 2008-2020 Free Software Foundation, Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2008.
 
    This program is free software: you can redistribute it and/or modify
@@ -56,13 +56,10 @@ mbsinit (const mbstate_t *ps)
 {
 # if defined _WIN32 && !defined __CYGWIN__
   /* Native Windows.  */
-#  ifdef __MINGW32__
-  /* On mingw, 'mbstate_t' is defined as 'int'.  */
-  return ps == NULL || *ps == 0;
-#  else
-  /* MSVC defines 'mbstate_t' as an 8-byte struct; the first 4-bytes matter.  */
+  /* MSVC defines 'mbstate_t' as an 8-byte struct; the first 4 bytes matter.
+     On mingw, 'mbstate_t' is sometimes defined as 'int', sometimes defined as
+     an 8-byte struct, of which the first 4 bytes matter.  */
   return ps == NULL || *(const unsigned int *)ps == 0;
-#  endif
 # else
   /* Minix, HP-UX 11.00, Solaris 2.6, Interix, ...  */
   /* Maybe this definition works, maybe not...  */
index f4ab98181ff1b1bd8118ef9207eac1257165808d..22e414a1f775930257dce591ff68cea4cca406ac 100644 (file)
@@ -1,5 +1,5 @@
 /* Convert multibyte character to wide character.
-   Copyright (C) 2011-2019 Free Software Foundation, Inc.
+   Copyright (C) 2011-2020 Free Software Foundation, Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2011.
 
    This program is free software: you can redistribute it and/or modify
diff --git a/lib/mbtowc-lock.c b/lib/mbtowc-lock.c
new file mode 100644 (file)
index 0000000..85ad3c4
--- /dev/null
@@ -0,0 +1,150 @@
+/* Return the internal lock used by mbrtowc and mbrtoc32.
+   Copyright (C) 2019-2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2019-2020.  */
+
+#include <config.h>
+
+/* When it is known that the gl_get_mbtowc_lock function is defined
+   by a dependency library, it should not be defined here.  */
+#if OMIT_MBTOWC_LOCK
+
+/* This declaration is solely to ensure that after preprocessing
+   this file is never empty.  */
+typedef int dummy;
+
+#else
+
+/* This file defines the internal lock used by mbrtowc and mbrtoc32.
+   It is a separate compilation unit, so that only one copy of it is
+   present when linking statically.  */
+
+/* Prohibit renaming this symbol.  */
+# undef gl_get_mbtowc_lock
+
+/* Macro for exporting a symbol (function, not variable) defined in this file,
+   when compiled into a shared library.  */
+# ifndef DLL_EXPORTED
+#  if HAVE_VISIBILITY
+  /* Override the effect of the compiler option '-fvisibility=hidden'.  */
+#   define DLL_EXPORTED __attribute__((__visibility__("default")))
+#  elif defined _WIN32 || defined __CYGWIN__
+#   define DLL_EXPORTED __declspec(dllexport)
+#  else
+#   define DLL_EXPORTED
+#  endif
+# endif
+
+# if defined _WIN32 && !defined __CYGWIN__
+
+#  define WIN32_LEAN_AND_MEAN  /* avoid including junk */
+#  include <windows.h>
+
+#  include "windows-initguard.h"
+
+/* The return type is a 'CRITICAL_SECTION *', not a 'glwthread_mutex_t *',
+   because the latter is not guaranteed to be a stable ABI in the future.  */
+
+/* Make sure the function gets exported from DLLs.  */
+DLL_EXPORTED CRITICAL_SECTION *gl_get_mbtowc_lock (void);
+
+static glwthread_initguard_t guard = GLWTHREAD_INITGUARD_INIT;
+static CRITICAL_SECTION lock;
+
+/* Returns the internal lock used by mbrtowc and mbrtoc32.  */
+CRITICAL_SECTION *
+gl_get_mbtowc_lock (void)
+{
+  if (!guard.done)
+    {
+      if (InterlockedIncrement (&guard.started) == 0)
+        {
+          /* This thread is the first one to need the lock.  Initialize it.  */
+          InitializeCriticalSection (&lock);
+          guard.done = 1;
+        }
+      else
+        {
+          /* Don't let guard.started grow and wrap around.  */
+          InterlockedDecrement (&guard.started);
+          /* Yield the CPU while waiting for another thread to finish
+             initializing this mutex.  */
+          while (!guard.done)
+            Sleep (0);
+        }
+    }
+  return &lock;
+}
+
+# elif HAVE_PTHREAD_API
+
+#  include <pthread.h>
+
+static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
+
+/* Make sure the function gets exported from shared libraries.  */
+DLL_EXPORTED pthread_mutex_t *gl_get_mbtowc_lock (void);
+
+/* Returns the internal lock used by mbrtowc and mbrtoc32.  */
+pthread_mutex_t *
+gl_get_mbtowc_lock (void)
+{
+  return &mutex;
+}
+
+# elif HAVE_THREADS_H
+
+#  include <threads.h>
+#  include <stdlib.h>
+
+static int volatile init_needed = 1;
+static once_flag init_once = ONCE_FLAG_INIT;
+static mtx_t mutex;
+
+static void
+atomic_init (void)
+{
+  if (mtx_init (&mutex, mtx_plain) != thrd_success)
+    abort ();
+  init_needed = 0;
+}
+
+/* Make sure the function gets exported from shared libraries.  */
+DLL_EXPORTED mtx_t *gl_get_mbtowc_lock (void);
+
+/* Returns the internal lock used by mbrtowc and mbrtoc32.  */
+mtx_t *
+gl_get_mbtowc_lock (void)
+{
+  if (init_needed)
+    call_once (&init_once, atomic_init);
+  return &mutex;
+}
+
+# endif
+
+# if (defined _WIN32 || defined __CYGWIN__) && !defined _MSC_VER
+/* Make sure the '__declspec(dllimport)' in mbrtowc.c and mbrtoc32.c does not
+   cause a link failure when no DLLs are involved.  */
+#  if defined _WIN64 || defined _LP64
+#   define IMP(x) __imp_##x
+#  else
+#   define IMP(x) _imp__##x
+#  endif
+void * IMP(gl_get_mbtowc_lock) = &gl_get_mbtowc_lock;
+# endif
+
+#endif
diff --git a/lib/mbtowc-lock.h b/lib/mbtowc-lock.h
new file mode 100644 (file)
index 0000000..e101978
--- /dev/null
@@ -0,0 +1,115 @@
+/* Use the internal lock used by mbrtowc and mbrtoc32.
+   Copyright (C) 2019-2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2019-2020.  */
+
+/* Use a lock, so that no two threads can invoke mbtowc at the same time.  */
+
+static inline int
+mbtowc_unlocked (wchar_t *pwc, const char *p, size_t m)
+{
+  /* Put the hidden internal state of mbtowc into its initial state.
+     This is needed at least with glibc, uClibc, and MSVC CRT.
+     See <https://sourceware.org/bugzilla/show_bug.cgi?id=9674>.  */
+  mbtowc (NULL, NULL, 0);
+
+  return mbtowc (pwc, p, m);
+}
+
+/* Prohibit renaming this symbol.  */
+#undef gl_get_mbtowc_lock
+
+#if defined _WIN32 && !defined __CYGWIN__
+
+extern __declspec(dllimport) CRITICAL_SECTION *gl_get_mbtowc_lock (void);
+
+static int
+mbtowc_with_lock (wchar_t *pwc, const char *p, size_t m)
+{
+  CRITICAL_SECTION *lock = gl_get_mbtowc_lock ();
+  int ret;
+
+  EnterCriticalSection (lock);
+  ret = mbtowc_unlocked (pwc, p, m);
+  LeaveCriticalSection (lock);
+
+  return ret;
+}
+
+#elif HAVE_PTHREAD_API /* AIX, IRIX, Cygwin */
+
+extern
+# if defined _WIN32 || defined __CYGWIN__
+  __declspec(dllimport)
+# endif
+  pthread_mutex_t *gl_get_mbtowc_lock (void);
+
+# if HAVE_WEAK_SYMBOLS /* IRIX */
+
+   /* Avoid the need to link with '-lpthread'.  */
+#  pragma weak pthread_mutex_lock
+#  pragma weak pthread_mutex_unlock
+
+   /* Determine whether libpthread is in use.  */
+#  pragma weak pthread_mutexattr_gettype
+   /* See the comments in lock.h.  */
+#  define pthread_in_use() \
+     (pthread_mutexattr_gettype != NULL || c11_threads_in_use ())
+
+# else
+#  define pthread_in_use() 1
+# endif
+
+static int
+mbtowc_with_lock (wchar_t *pwc, const char *p, size_t m)
+{
+  if (pthread_in_use())
+    {
+      pthread_mutex_t *lock = gl_get_mbtowc_lock ();
+      int ret;
+
+      if (pthread_mutex_lock (lock))
+        abort ();
+      ret = mbtowc_unlocked (pwc, p, m);
+      if (pthread_mutex_unlock (lock))
+        abort ();
+
+      return ret;
+    }
+  else
+    return mbtowc_unlocked (pwc, p, m);
+}
+
+#elif HAVE_THREADS_H
+
+extern mtx_t *gl_get_mbtowc_lock (void);
+
+static int
+mbtowc_with_lock (wchar_t *pwc, const char *p, size_t m)
+{
+  mtx_t *lock = gl_get_mbtowc_lock ();
+  int ret;
+
+  if (mtx_lock (lock) != thrd_success)
+    abort ();
+  ret = mbtowc_unlocked (pwc, p, m);
+  if (mtx_unlock (lock) != thrd_success)
+    abort ();
+
+  return ret;
+}
+
+#endif
index 77a847241ea0553fccdbb5589ad1c9a7665eb703..5fc2d280b37737a7455f9e362a99bf3e46ce7fd4 100644 (file)
@@ -1,5 +1,5 @@
 /* Convert multibyte character to wide character.
-   Copyright (C) 2011-2019 Free Software Foundation, Inc.
+   Copyright (C) 2011-2020 Free Software Foundation, Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2011.
 
    This program is free software: you can redistribute it and/or modify
index d7f6bea0619c3ed8f78be287099045b9b0dfec8a..b9477767b0df4123e17ae727299a99c1e01df216 100644 (file)
@@ -1,5 +1,5 @@
 /* MIN, MAX macros.
-   Copyright (C) 1995, 1998, 2001, 2003, 2005, 2009-2019 Free Software
+   Copyright (C) 1995, 1998, 2001, 2003, 2005, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
index b8320d00fef92c3c4d2f90f39ca79143e53d8d52..c0d4b616513f217d61bea1363aeaf2fd1fca02c7 100644 (file)
@@ -1,7 +1,7 @@
 /* On some systems, mkdir ("foo/", 0700) fails because of the trailing
    slash.  On those systems, this wrapper removes the trailing slash.
 
-   Copyright (C) 2001, 2003, 2006, 2008-2019 Free Software Foundation, Inc.
+   Copyright (C) 2001, 2003, 2006, 2008-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 7ef0420cabc55680e86ae3474e5db37cbe73050c..c809de85228e1313d6b986b423d3b2fe4fccb784 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998-1999, 2001, 2005-2007, 2009-2019 Free Software
+/* Copyright (C) 1998-1999, 2001, 2005-2007, 2009-2020 Free Software
    Foundation, Inc.
    This file is derived from the one in the GNU C Library.
 
index 75b5a070ab5962b2c9e8749ca1f55dd22c8f0fa3..863668889c6afc2809facf76969d988d4c3ff426 100644 (file)
@@ -1,5 +1,5 @@
 /* Invalid parameter handler for MSVC runtime libraries.
-   Copyright (C) 2011-2019 Free Software Foundation, Inc.
+   Copyright (C) 2011-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 9d3aa1f7a15ab156ddf47b0817ac29eff45be33f..93ee7859ca9ecba65fb294034a6956141a0cb7a0 100644 (file)
@@ -1,5 +1,5 @@
 /* Invalid parameter handler for MSVC runtime libraries.
-   Copyright (C) 2011-2019 Free Software Foundation, Inc.
+   Copyright (C) 2011-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 49b709ca4aa03e6c53dd1f9db58b3afa5b1a9274..bf93b882412154c1d11890bc492fc8debc26e8ff 100644 (file)
@@ -1,6 +1,6 @@
 /* Wrappers that don't throw invalid parameter notifications
    with MSVC runtime libraries.
-   Copyright (C) 2011-2019 Free Software Foundation, Inc.
+   Copyright (C) 2011-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 8d3ca7892e89d24016636bf1c8ffdf8d8ae2349b..fca541573fc3dce66adf1218f748cd5a14ce286c 100644 (file)
@@ -1,6 +1,6 @@
 /* Wrappers that don't throw invalid parameter notifications
    with MSVC runtime libraries.
-   Copyright (C) 2011-2019 Free Software Foundation, Inc.
+   Copyright (C) 2011-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
diff --git a/lib/nl_langinfo-lock.c b/lib/nl_langinfo-lock.c
new file mode 100644 (file)
index 0000000..c2328ab
--- /dev/null
@@ -0,0 +1,150 @@
+/* Return the internal lock used by nl_langinfo.
+   Copyright (C) 2019-2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2019-2020.  */
+
+#include <config.h>
+
+/* When it is known that the gl_get_nl_langinfo_lock function is defined
+   by a dependency library, it should not be defined here.  */
+#if OMIT_NL_LANGINFO_LOCK
+
+/* This declaration is solely to ensure that after preprocessing
+   this file is never empty.  */
+typedef int dummy;
+
+#else
+
+/* This file defines the internal lock used by nl_langinfo.
+   It is a separate compilation unit, so that only one copy of it is
+   present when linking statically.  */
+
+/* Prohibit renaming this symbol.  */
+# undef gl_get_nl_langinfo_lock
+
+/* Macro for exporting a symbol (function, not variable) defined in this file,
+   when compiled into a shared library.  */
+# ifndef DLL_EXPORTED
+#  if HAVE_VISIBILITY
+  /* Override the effect of the compiler option '-fvisibility=hidden'.  */
+#   define DLL_EXPORTED __attribute__((__visibility__("default")))
+#  elif defined _WIN32 || defined __CYGWIN__
+#   define DLL_EXPORTED __declspec(dllexport)
+#  else
+#   define DLL_EXPORTED
+#  endif
+# endif
+
+# if defined _WIN32 && !defined __CYGWIN__
+
+#  define WIN32_LEAN_AND_MEAN  /* avoid including junk */
+#  include <windows.h>
+
+#  include "windows-initguard.h"
+
+/* The return type is a 'CRITICAL_SECTION *', not a 'glwthread_mutex_t *',
+   because the latter is not guaranteed to be a stable ABI in the future.  */
+
+/* Make sure the function gets exported from DLLs.  */
+DLL_EXPORTED CRITICAL_SECTION *gl_get_nl_langinfo_lock (void);
+
+static glwthread_initguard_t guard = GLWTHREAD_INITGUARD_INIT;
+static CRITICAL_SECTION lock;
+
+/* Returns the internal lock used by nl_langinfo.  */
+CRITICAL_SECTION *
+gl_get_nl_langinfo_lock (void)
+{
+  if (!guard.done)
+    {
+      if (InterlockedIncrement (&guard.started) == 0)
+        {
+          /* This thread is the first one to need the lock.  Initialize it.  */
+          InitializeCriticalSection (&lock);
+          guard.done = 1;
+        }
+      else
+        {
+          /* Don't let guard.started grow and wrap around.  */
+          InterlockedDecrement (&guard.started);
+          /* Yield the CPU while waiting for another thread to finish
+             initializing this mutex.  */
+          while (!guard.done)
+            Sleep (0);
+        }
+    }
+  return &lock;
+}
+
+# elif HAVE_PTHREAD_API
+
+#  include <pthread.h>
+
+static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
+
+/* Make sure the function gets exported from shared libraries.  */
+DLL_EXPORTED pthread_mutex_t *gl_get_nl_langinfo_lock (void);
+
+/* Returns the internal lock used by nl_langinfo.  */
+pthread_mutex_t *
+gl_get_nl_langinfo_lock (void)
+{
+  return &mutex;
+}
+
+# elif HAVE_THREADS_H
+
+#  include <threads.h>
+#  include <stdlib.h>
+
+static int volatile init_needed = 1;
+static once_flag init_once = ONCE_FLAG_INIT;
+static mtx_t mutex;
+
+static void
+atomic_init (void)
+{
+  if (mtx_init (&mutex, mtx_plain) != thrd_success)
+    abort ();
+  init_needed = 0;
+}
+
+/* Make sure the function gets exported from shared libraries.  */
+DLL_EXPORTED mtx_t *gl_get_nl_langinfo_lock (void);
+
+/* Returns the internal lock used by nl_langinfo.  */
+mtx_t *
+gl_get_nl_langinfo_lock (void)
+{
+  if (init_needed)
+    call_once (&init_once, atomic_init);
+  return &mutex;
+}
+
+# endif
+
+# if (defined _WIN32 || defined __CYGWIN__) && !defined _MSC_VER
+/* Make sure the '__declspec(dllimport)' in nl_langinfo.c does not cause
+   a link failure when no DLLs are involved.  */
+#  if defined _WIN64 || defined _LP64
+#   define IMP(x) __imp_##x
+#  else
+#   define IMP(x) _imp__##x
+#  endif
+void * IMP(gl_get_nl_langinfo_lock) = &gl_get_nl_langinfo_lock;
+# endif
+
+#endif
index 76579a8ad40016505798c54680d84ce420f1dfb0..2b4c0c518d5e44e1d649f3eec7cdfdddb7400cbd 100644 (file)
@@ -1,6 +1,6 @@
 /* nl_langinfo() replacement: query locale dependent information.
 
-   Copyright (C) 2007-2019 Free Software Foundation, Inc.
+   Copyright (C) 2007-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -21,6 +21,7 @@
 #include <langinfo.h>
 
 #include <locale.h>
+#include <stdlib.h>
 #include <string.h>
 #if defined _WIN32 && ! defined __CYGWIN__
 # define WIN32_LEAN_AND_MEAN  /* avoid including junk */
 # include <stdio.h>
 #endif
 
+#if REPLACE_NL_LANGINFO && !NL_LANGINFO_MTSAFE
+# if defined _WIN32 && !defined __CYGWIN__
+
+#  define WIN32_LEAN_AND_MEAN  /* avoid including junk */
+#  include <windows.h>
+
+# elif HAVE_PTHREAD_API
+
+#  include <pthread.h>
+#  if HAVE_THREADS_H && HAVE_WEAK_SYMBOLS
+#   include <threads.h>
+#   pragma weak thrd_exit
+#   define c11_threads_in_use() (thrd_exit != NULL)
+#  else
+#   define c11_threads_in_use() 0
+#  endif
+
+# elif HAVE_THREADS_H
+
+#  include <threads.h>
+
+# endif
+#endif
+
+/* nl_langinfo() must be multithread-safe.  To achieve this without using
+   thread-local storage:
+     1. We use a specific static buffer for each possible argument.
+        So that different threads can call nl_langinfo with different arguments,
+        without interfering.
+     2. We use a simple strcpy or memcpy to fill this static buffer.  Filling it
+        through, for example, strcpy + strcat would not be guaranteed to leave
+        the buffer's contents intact if another thread is currently accessing
+        it.  If necessary, the contents is first assembled in a stack-allocated
+        buffer.  */
+
 #if !REPLACE_NL_LANGINFO || GNULIB_defined_CODESET
 /* Return the codeset of the current locale, if this is easily deducible.
    Otherwise, return "".  */
 static char *
 ctype_codeset (void)
 {
-  static char buf[2 + 10 + 1];
-  char const *locale = setlocale (LC_CTYPE, NULL);
-  char *codeset = buf;
+  static char result[2 + 10 + 1];
+  char buf[2 + 10 + 1];
+  char locale[SETLOCALE_NULL_MAX];
+  char *codeset;
   size_t codesetlen;
+
+  if (setlocale_null_r (LC_CTYPE, locale, sizeof (locale)))
+    locale[0] = '\0';
+
+  codeset = buf;
   codeset[0] = '\0';
 
-  if (locale && locale[0])
+  if (locale[0])
     {
       /* If the locale name contains an encoding after the dot, return it.  */
       char *dot = strchr (locale, '.');
@@ -79,11 +121,16 @@ ctype_codeset (void)
   /* For a locale name such as "French_France.65001", in Windows 10,
      setlocale now returns "French_France.utf8" instead.  */
   if (strcmp (buf + 2, "65001") == 0 || strcmp (buf + 2, "utf8") == 0)
-    return "UTF-8";
+    return (char *) "UTF-8";
   else
-    return memcpy (buf, "CP", 2);
+    {
+      memcpy (buf, "CP", 2);
+      strcpy (result, buf);
+      return result;
+    }
 # else
-  return codeset;
+  strcpy (result, codeset);
+  return result;
 #endif
 }
 #endif
@@ -95,6 +142,137 @@ ctype_codeset (void)
 
 # undef nl_langinfo
 
+/* Without locking, on Solaris 11.3, test-nl_langinfo-mt fails, with message
+   "thread5 disturbed by threadN!", even when threadN invokes only
+      nl_langinfo (CODESET);
+      nl_langinfo (CRNCYSTR);
+   Similarly on Solaris 10.  */
+
+# if !NL_LANGINFO_MTSAFE /* Solaris */
+
+#  define ITEMS (MAXSTRMSG + 1)
+#  define MAX_RESULT_LEN 80
+
+static char *
+nl_langinfo_unlocked (nl_item item)
+{
+  static char result[ITEMS][MAX_RESULT_LEN];
+
+  /* The result of nl_langinfo is in storage that can be overwritten by
+     other calls to nl_langinfo.  */
+  char *tmp = nl_langinfo (item);
+  if (item >= 0 && item < ITEMS && tmp != NULL)
+    {
+      size_t tmp_len = strlen (tmp);
+      if (tmp_len < MAX_RESULT_LEN)
+        strcpy (result[item], tmp);
+      else
+        {
+          /* Produce a truncated result.  Oh well...  */
+          result[item][MAX_RESULT_LEN - 1] = '\0';
+          memcpy (result[item], tmp, MAX_RESULT_LEN - 1);
+        }
+      return result[item];
+    }
+  else
+    return tmp;
+}
+
+/* Use a lock, so that no two threads can invoke nl_langinfo_unlocked
+   at the same time.  */
+
+/* Prohibit renaming this symbol.  */
+#  undef gl_get_nl_langinfo_lock
+
+#  if defined _WIN32 && !defined __CYGWIN__
+
+extern __declspec(dllimport) CRITICAL_SECTION *gl_get_nl_langinfo_lock (void);
+
+static char *
+nl_langinfo_with_lock (nl_item item)
+{
+  CRITICAL_SECTION *lock = gl_get_nl_langinfo_lock ();
+  char *ret;
+
+  EnterCriticalSection (lock);
+  ret = nl_langinfo_unlocked (item);
+  LeaveCriticalSection (lock);
+
+  return ret;
+}
+
+#  elif HAVE_PTHREAD_API
+
+extern
+#   if defined _WIN32 || defined __CYGWIN__
+  __declspec(dllimport)
+#   endif
+  pthread_mutex_t *gl_get_nl_langinfo_lock (void);
+
+#   if HAVE_WEAK_SYMBOLS /* musl libc, FreeBSD, NetBSD, OpenBSD, Haiku */
+
+     /* Avoid the need to link with '-lpthread'.  */
+#    pragma weak pthread_mutex_lock
+#    pragma weak pthread_mutex_unlock
+
+     /* Determine whether libpthread is in use.  */
+#    pragma weak pthread_mutexattr_gettype
+     /* See the comments in lock.h.  */
+#    define pthread_in_use() \
+       (pthread_mutexattr_gettype != NULL || c11_threads_in_use ())
+
+#   else
+#    define pthread_in_use() 1
+#   endif
+
+static char *
+nl_langinfo_with_lock (nl_item item)
+{
+  if (pthread_in_use())
+    {
+      pthread_mutex_t *lock = gl_get_nl_langinfo_lock ();
+      char *ret;
+
+      if (pthread_mutex_lock (lock))
+        abort ();
+      ret = nl_langinfo_unlocked (item);
+      if (pthread_mutex_unlock (lock))
+        abort ();
+
+      return ret;
+    }
+  else
+    return nl_langinfo_unlocked (item);
+}
+
+#  elif HAVE_THREADS_H
+
+extern mtx_t *gl_get_nl_langinfo_lock (void);
+
+static char *
+nl_langinfo_with_lock (nl_item item)
+{
+  mtx_t *lock = gl_get_nl_langinfo_lock ();
+  char *ret;
+
+  if (mtx_lock (lock) != thrd_success)
+    abort ();
+  ret = nl_langinfo_unlocked (item);
+  if (mtx_unlock (lock) != thrd_success)
+    abort ();
+
+  return ret;
+}
+
+#  endif
+
+# else
+
+/* On other platforms, no lock is needed.  */
+#  define nl_langinfo_with_lock nl_langinfo
+
+# endif
+
 char *
 rpl_nl_langinfo (nl_item item)
 {
@@ -161,7 +339,7 @@ rpl_nl_langinfo (nl_item item)
     default:
       break;
     }
-  return nl_langinfo (item);
+  return nl_langinfo_with_lock (item);
 }
 
 #else
@@ -175,7 +353,7 @@ rpl_nl_langinfo (nl_item item)
 char *
 nl_langinfo (nl_item item)
 {
-  static char nlbuf[100];
+  char buf[100];
   struct tm tmm = { 0 };
 
   switch (item)
@@ -215,14 +393,22 @@ nl_langinfo (nl_item item)
     case T_FMT_AMPM:
       return (char *) "%I:%M:%S %p";
     case AM_STR:
-      if (!strftime (nlbuf, sizeof nlbuf, "%p", &tmm))
-        return (char *) "AM";
-      return nlbuf;
+      {
+        static char result[80];
+        if (!strftime (buf, sizeof result, "%p", &tmm))
+          return (char *) "AM";
+        strcpy (result, buf);
+        return result;
+      }
     case PM_STR:
-      tmm.tm_hour = 12;
-      if (!strftime (nlbuf, sizeof nlbuf, "%p", &tmm))
-        return (char *) "PM";
-      return nlbuf;
+      {
+        static char result[80];
+        tmm.tm_hour = 12;
+        if (!strftime (buf, sizeof result, "%p", &tmm))
+          return (char *) "PM";
+        strcpy (result, buf);
+        return result;
+      }
     case DAY_1:
     case DAY_2:
     case DAY_3:
@@ -231,14 +417,16 @@ nl_langinfo (nl_item item)
     case DAY_6:
     case DAY_7:
       {
+        static char result[7][50];
         static char const days[][sizeof "Wednesday"] = {
           "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday",
           "Friday", "Saturday"
         };
         tmm.tm_wday = item - DAY_1;
-        if (!strftime (nlbuf, sizeof nlbuf, "%A", &tmm))
+        if (!strftime (buf, sizeof result[0], "%A", &tmm))
           return (char *) days[item - DAY_1];
-        return nlbuf;
+        strcpy (result[item - DAY_1], buf);
+        return result[item - DAY_1];
       }
     case ABDAY_1:
     case ABDAY_2:
@@ -248,13 +436,15 @@ nl_langinfo (nl_item item)
     case ABDAY_6:
     case ABDAY_7:
       {
+        static char result[7][30];
         static char const abdays[][sizeof "Sun"] = {
           "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"
         };
         tmm.tm_wday = item - ABDAY_1;
-        if (!strftime (nlbuf, sizeof nlbuf, "%a", &tmm))
+        if (!strftime (buf, sizeof result[0], "%a", &tmm))
           return (char *) abdays[item - ABDAY_1];
-        return nlbuf;
+        strcpy (result[item - ABDAY_1], buf);
+        return result[item - ABDAY_1];
       }
     {
       static char const months[][sizeof "September"] = {
@@ -273,10 +463,14 @@ nl_langinfo (nl_item item)
       case MON_10:
       case MON_11:
       case MON_12:
-        tmm.tm_mon = item - MON_1;
-        if (!strftime (nlbuf, sizeof nlbuf, "%B", &tmm))
-          return (char *) months[item - MON_1];
-        return nlbuf;
+        {
+          static char result[12][50];
+          tmm.tm_mon = item - MON_1;
+          if (!strftime (buf, sizeof result[0], "%B", &tmm))
+            return (char *) months[item - MON_1];
+          strcpy (result[item - MON_1], buf);
+          return result[item - MON_1];
+        }
       case ALTMON_1:
       case ALTMON_2:
       case ALTMON_3:
@@ -289,15 +483,19 @@ nl_langinfo (nl_item item)
       case ALTMON_10:
       case ALTMON_11:
       case ALTMON_12:
-        tmm.tm_mon = item - ALTMON_1;
-        /* The platforms without nl_langinfo() don't support strftime with %OB.
-           We don't even need to try.  */
-        #if 0
-        if (!strftime (nlbuf, sizeof nlbuf, "%OB", &tmm))
-        #endif
-          if (!strftime (nlbuf, sizeof nlbuf, "%B", &tmm))
-            return (char *) months[item - ALTMON_1];
-        return nlbuf;
+        {
+          static char result[12][50];
+          tmm.tm_mon = item - ALTMON_1;
+          /* The platforms without nl_langinfo() don't support strftime with
+             %OB.  We don't even need to try.  */
+          #if 0
+          if (!strftime (buf, sizeof result[0], "%OB", &tmm))
+          #endif
+            if (!strftime (buf, sizeof result[0], "%B", &tmm))
+              return (char *) months[item - ALTMON_1];
+          strcpy (result[item - ALTMON_1], buf);
+          return result[item - ALTMON_1];
+        }
     }
     case ABMON_1:
     case ABMON_2:
@@ -312,14 +510,16 @@ nl_langinfo (nl_item item)
     case ABMON_11:
     case ABMON_12:
       {
+        static char result[12][30];
         static char const abmonths[][sizeof "Jan"] = {
           "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul",
           "Sep", "Oct", "Nov", "Dec"
         };
         tmm.tm_mon = item - ABMON_1;
-        if (!strftime (nlbuf, sizeof nlbuf, "%b", &tmm))
+        if (!strftime (buf, sizeof result[0], "%b", &tmm))
           return (char *) abmonths[item - ABMON_1];
-        return nlbuf;
+        strcpy (result[item - ABMON_1], buf);
+        return result[item - ABMON_1];
       }
     case ERA:
       return (char *) "";
diff --git a/lib/open.c b/lib/open.c
new file mode 100644 (file)
index 0000000..0f7c6e9
--- /dev/null
@@ -0,0 +1,209 @@
+/* Open a descriptor to a file.
+   Copyright (C) 2007-2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2007.  */
+
+/* If the user's config.h happens to include <fcntl.h>, let it include only
+   the system's <fcntl.h> here, so that orig_open doesn't recurse to
+   rpl_open.  */
+#define __need_system_fcntl_h
+#include <config.h>
+
+/* Get the original definition of open.  It might be defined as a macro.  */
+#include <fcntl.h>
+#include <sys/types.h>
+#undef __need_system_fcntl_h
+
+static int
+orig_open (const char *filename, int flags, mode_t mode)
+{
+#if defined _WIN32 && !defined __CYGWIN__
+  return _open (filename, flags, mode);
+#else
+  return open (filename, flags, mode);
+#endif
+}
+
+/* Specification.  */
+/* Write "fcntl.h" here, not <fcntl.h>, otherwise OSF/1 5.1 DTK cc eliminates
+   this include because of the preliminary #include <fcntl.h> above.  */
+#include "fcntl.h"
+
+#include "cloexec.h"
+
+#include <errno.h>
+#include <stdarg.h>
+#include <string.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
+
+#ifndef REPLACE_OPEN_DIRECTORY
+# define REPLACE_OPEN_DIRECTORY 0
+#endif
+
+int
+open (const char *filename, int flags, ...)
+{
+  /* 0 = unknown, 1 = yes, -1 = no.  */
+#if GNULIB_defined_O_CLOEXEC
+  int have_cloexec = -1;
+#else
+  static int have_cloexec;
+#endif
+
+  mode_t mode;
+  int fd;
+
+  mode = 0;
+  if (flags & O_CREAT)
+    {
+      va_list arg;
+      va_start (arg, flags);
+
+      /* We have to use PROMOTED_MODE_T instead of mode_t, otherwise GCC 4
+         creates crashing code when 'mode_t' is smaller than 'int'.  */
+      mode = va_arg (arg, PROMOTED_MODE_T);
+
+      va_end (arg);
+    }
+
+#if GNULIB_defined_O_NONBLOCK
+  /* The only known platform that lacks O_NONBLOCK is mingw, but it
+     also lacks named pipes and Unix sockets, which are the only two
+     file types that require non-blocking handling in open().
+     Therefore, it is safe to ignore O_NONBLOCK here.  It is handy
+     that mingw also lacks openat(), so that is also covered here.  */
+  flags &= ~O_NONBLOCK;
+#endif
+
+#if defined _WIN32 && ! defined __CYGWIN__
+  if (strcmp (filename, "/dev/null") == 0)
+    filename = "NUL";
+#endif
+
+#if OPEN_TRAILING_SLASH_BUG
+  /* Fail if one of O_CREAT, O_WRONLY, O_RDWR is specified and the filename
+     ends in a slash, as POSIX says such a filename must name a directory
+     <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap04.html#tag_04_13>:
+       "A pathname that contains at least one non-<slash> character and that
+        ends with one or more trailing <slash> characters shall not be resolved
+        successfully unless the last pathname component before the trailing
+        <slash> characters names an existing directory"
+     If the named file already exists as a directory, then
+       - if O_CREAT is specified, open() must fail because of the semantics
+         of O_CREAT,
+       - if O_WRONLY or O_RDWR is specified, open() must fail because POSIX
+         <https://pubs.opengroup.org/onlinepubs/9699919799/functions/open.html>
+         says that it fails with errno = EISDIR in this case.
+     If the named file does not exist or does not name a directory, then
+       - if O_CREAT is specified, open() must fail since open() cannot create
+         directories,
+       - if O_WRONLY or O_RDWR is specified, open() must fail because the
+         file does not contain a '.' directory.  */
+  if ((flags & O_CREAT)
+      || (flags & O_ACCMODE) == O_RDWR
+      || (flags & O_ACCMODE) == O_WRONLY)
+    {
+      size_t len = strlen (filename);
+      if (len > 0 && filename[len - 1] == '/')
+        {
+          errno = EISDIR;
+          return -1;
+        }
+    }
+#endif
+
+  fd = orig_open (filename,
+                  flags & ~(have_cloexec < 0 ? O_CLOEXEC : 0), mode);
+
+  if (flags & O_CLOEXEC)
+    {
+      if (! have_cloexec)
+        {
+          if (0 <= fd)
+            have_cloexec = 1;
+          else if (errno == EINVAL)
+            {
+              fd = orig_open (filename, flags & ~O_CLOEXEC, mode);
+              have_cloexec = -1;
+            }
+        }
+      if (have_cloexec < 0 && 0 <= fd)
+        set_cloexec_flag (fd, true);
+    }
+
+
+#if REPLACE_FCHDIR
+  /* Implementing fchdir and fdopendir requires the ability to open a
+     directory file descriptor.  If open doesn't support that (as on
+     mingw), we use a dummy file that behaves the same as directories
+     on Linux (ie. always reports EOF on attempts to read()), and
+     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
+          || (O_SEARCH != O_RDONLY && (flags & O_ACCMODE) == O_SEARCH)))
+    {
+      struct stat statbuf;
+      if (stat (filename, &statbuf) == 0 && S_ISDIR (statbuf.st_mode))
+        {
+          /* Maximum recursion depth of 1.  */
+          fd = open ("/dev/null", flags, mode);
+          if (0 <= fd)
+            fd = _gl_register_fd (fd, filename);
+        }
+      else
+        errno = EACCES;
+    }
+#endif
+
+#if OPEN_TRAILING_SLASH_BUG
+  /* If the filename ends in a slash and fd does not refer to a directory,
+     then fail.
+     Rationale: POSIX says such a filename must name a directory
+     <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap04.html#tag_04_13>:
+       "A pathname that contains at least one non-<slash> character and that
+        ends with one or more trailing <slash> characters shall not be resolved
+        successfully unless the last pathname component before the trailing
+        <slash> characters names an existing directory"
+     If the named file without the slash is not a directory, open() must fail
+     with ENOTDIR.  */
+  if (fd >= 0)
+    {
+      /* We know len is positive, since open did not fail with ENOENT.  */
+      size_t len = strlen (filename);
+      if (filename[len - 1] == '/')
+        {
+          struct stat statbuf;
+
+          if (fstat (fd, &statbuf) >= 0 && !S_ISDIR (statbuf.st_mode))
+            {
+              close (fd);
+              errno = ENOTDIR;
+              return -1;
+            }
+        }
+    }
+#endif
+
+#if REPLACE_FCHDIR
+  if (!REPLACE_OPEN_DIRECTORY && 0 <= fd)
+    fd = _gl_register_fd (fd, filename);
+#endif
+
+  return fd;
+}
index 9463a1fb2c6d6fe9fbc7a688f9c41f5565399bdb..15a236fae8c3ea321ed6ffcaab5b83228d813f05 100644 (file)
@@ -1,5 +1,5 @@
 /* Define PATH_MAX somehow.  Requires sys/types.h.
-   Copyright (C) 1992, 1999, 2001, 2003, 2005, 2009-2019 Free Software
+   Copyright (C) 1992, 1999, 2001, 2003, 2005, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
@@ -20,7 +20,7 @@
 
 /* POSIX:2008 defines PATH_MAX to be the maximum number of bytes in a filename,
    including the terminating NUL byte.
-   <http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/limits.h.html>
+   <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/limits.h.html>
    PATH_MAX is not defined on systems which have no limit on filename length,
    such as GNU/Hurd.
 
index a42b7fa2f7003c13ef1434c308d2492a6af874a6..d59d969ba659a12ff0da8472266a557eac0505c8 100644 (file)
@@ -1,5 +1,5 @@
 /* Program name management.
-   Copyright (C) 2001-2003, 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 2001-2003, 2005-2020 Free Software Foundation, Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2001.
 
    This program is free software: you can redistribute it and/or modify
index c726e97e905e54535d7c63ebd15d0026c44e8fa6..bc276cc8e78125d78cf7f98982ebde053adbec4b 100644 (file)
@@ -1,5 +1,5 @@
 /* Program name management.
-   Copyright (C) 2001-2004, 2006, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2001-2004, 2006, 2009-2020 Free Software Foundation, Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2001.
 
    This program is free software: you can redistribute it and/or modify
index 5cef8ff1e0937ed37a4d2f2956ec8f2667b38898..391ff1a3539089baebb6ec902239a70a171623f3 100644 (file)
@@ -1,6 +1,6 @@
 /* quote.h - prototypes for quote.c
 
-   Copyright (C) 1998-2001, 2003, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 1998-2001, 2003, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 773d53f11549b81a33d650085ed2642c0e200795..b13574d2fd5a770d2cd4fc1cf7be037ff8952755 100644 (file)
@@ -1,6 +1,6 @@
 /* quotearg.c - quote arguments for output
 
-   Copyright (C) 1998-2002, 2004-2019 Free Software Foundation, Inc.
+   Copyright (C) 1998-2002, 2004-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -29,6 +29,7 @@
 #include "quotearg.h"
 #include "quote.h"
 
+#include "attribute.h"
 #include "minmax.h"
 #include "xalloc.h"
 #include "c-strcaseeq.h"
 
 #define INT_BITS (sizeof (int) * CHAR_BIT)
 
-#ifndef FALLTHROUGH
-# if __GNUC__ < 7
-#  define FALLTHROUGH ((void) 0)
-# else
-#  define FALLTHROUGH __attribute__ ((__fallthrough__))
-# endif
-#endif
-
 struct quoting_options
 {
   /* Basic quoting style.  */
index 0f07e0211e29ba8d15a0623ca6844a21f3d060ca..3bf149b397579479464a316a32b69ede5621e428 100644 (file)
@@ -1,6 +1,6 @@
 /* quotearg.h - quote arguments for output
 
-   Copyright (C) 1998-2002, 2004, 2006, 2008-2019 Free Software Foundation,
+   Copyright (C) 1998-2002, 2004, 2006, 2008-2020 Free Software Foundation,
    Inc.
 
    This program is free software: you can redistribute it and/or modify
@@ -323,7 +323,7 @@ void set_custom_quoting (struct quoting_options *o,
    On output, BUFFER might contain embedded null bytes if ARGSIZE was
    not -1, the style of O does not use backslash escapes, and the
    flags of O do not request elision of null bytes.*/
-size_t quotearg_buffer (char *buffer, size_t buffersize,
+size_t quotearg_buffer (char *restrict buffer, size_t buffersize,
                         char const *arg, size_t argsize,
                         struct quoting_options const *o);
 
index 52df1b06eb05b2d9f9ae7c3beab870c43767de19..0fc60ea022b79199da2705721ae46a4ed0fca450 100644 (file)
@@ -1,5 +1,5 @@
 /* POSIX compatible read() function.
-   Copyright (C) 2008-2019 Free Software Foundation, Inc.
+   Copyright (C) 2008-2020 Free Software Foundation, Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2011.
 
    This program is free software: you can redistribute it and/or modify
 #  include <io.h>
 # endif
 
+/* Don't assume that UNICODE is not defined.  */
+# undef GetNamedPipeHandleState
+# define GetNamedPipeHandleState GetNamedPipeHandleStateA
+
 # undef read
 
 # if HAVE_MSVC_INVALID_PARAMETER_HANDLER
@@ -47,7 +51,7 @@ read_nothrow (int fd, void *buf, size_t count)
 
   TRY_MSVC_INVAL
     {
-      result = read (fd, buf, count);
+      result = _read (fd, buf, count);
     }
   CATCH_MSVC_INVAL
     {
@@ -59,7 +63,7 @@ read_nothrow (int fd, void *buf, size_t count)
   return result;
 }
 # else
-#  define read_nothrow read
+#  define read_nothrow _read
 # endif
 
 ssize_t
index bf71109350215c965fc039de94e8e63c301d0fe9..4d392ef69951cf48468160f2dbf2f7212bcb1814 100644 (file)
@@ -1,5 +1,5 @@
 /* Stub for readlink().
-   Copyright (C) 2003-2007, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2003-2007, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index a81ce3b55dcd54b8370fbf4aefd1ab22526e9f94..a24054de93d1fa09f0ed304fb7a0acd94969d5b3 100644 (file)
@@ -1,6 +1,6 @@
 /* realloc() function that is glibc compatible.
 
-   Copyright (C) 1997, 2003-2004, 2006-2007, 2009-2019 Free Software
+   Copyright (C) 1997, 2003-2004, 2006-2007, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
index 892139a02afb69037d3367fd2e2c473c20322764..a4b95b0b2ff4b6f51f43b80ceca1ee7b5b7c9ce3 100644 (file)
@@ -1,5 +1,5 @@
 /* Extended regular expression matching and search library.
-   Copyright (C) 2002-2019 Free Software Foundation, Inc.
+   Copyright (C) 2002-2020 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
 
@@ -558,7 +558,7 @@ weak_alias (__regerror, regerror)
 static const bitset_t utf8_sb_map =
 {
   /* Set the first 128 bits.  */
-# if defined __GNUC__ && !defined __STRICT_ANSI__
+# if (defined __GNUC__ || __clang_major__ >= 4) && !defined __STRICT_ANSI__
   [0 ... 0x80 / BITSET_WORD_BITS - 1] = BITSET_WORD_MAX
 # else
 #  if 4 * BITSET_WORD_BITS < ASCII_CHARS
@@ -1436,7 +1436,7 @@ link_nfa_nodes (void *extra, bin_tree_t *node)
       break;
 
     case END_OF_RE:
-      assert (node->next == NULL);
+      DEBUG_ASSERT (node->next == NULL);
       break;
 
     case OP_DUP_ASTERISK:
@@ -1452,8 +1452,8 @@ link_nfa_nodes (void *extra, bin_tree_t *node)
          right = node->right->first->node_idx;
        else
          right = node->next->node_idx;
-       assert (left > -1);
-       assert (right > -1);
+       DEBUG_ASSERT (left > -1);
+       DEBUG_ASSERT (right > -1);
        err = re_node_set_init_2 (dfa->edests + idx, left, right);
       }
       break;
@@ -1471,7 +1471,7 @@ link_nfa_nodes (void *extra, bin_tree_t *node)
       break;
 
     default:
-      assert (!IS_EPSILON_NODE (node->token.type));
+      DEBUG_ASSERT (!IS_EPSILON_NODE (node->token.type));
       dfa->nexts[idx] = node->next->node_idx;
       break;
     }
@@ -1653,9 +1653,7 @@ calc_eclosure (re_dfa_t *dfa)
 {
   Idx node_idx;
   bool incomplete;
-#ifdef DEBUG
-  assert (dfa->nodes_len > 0);
-#endif
+  DEBUG_ASSERT (dfa->nodes_len > 0);
   incomplete = false;
   /* For each nodes, calculate epsilon closure.  */
   for (node_idx = 0; ; ++node_idx)
@@ -1670,9 +1668,7 @@ calc_eclosure (re_dfa_t *dfa)
          node_idx = 0;
        }
 
-#ifdef DEBUG
-      assert (dfa->eclosures[node_idx].nelem != -1);
-#endif
+      DEBUG_ASSERT (dfa->eclosures[node_idx].nelem != -1);
 
       /* If we have already calculated, skip it.  */
       if (dfa->eclosures[node_idx].nelem != 0)
@@ -2442,9 +2438,7 @@ parse_expression (re_string_t *regexp, regex_t *preg, re_token_t *token,
 
     default:
       /* Must not happen?  */
-#ifdef DEBUG
-      assert (0);
-#endif
+      DEBUG_ASSERT (false);
       return NULL;
     }
   fetch_token (token, regexp, syntax);
@@ -3306,7 +3300,7 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token,
               goto parse_bracket_exp_free_return;
              break;
            default:
-             assert (0);
+             DEBUG_ASSERT (false);
              break;
            }
        }
@@ -3662,7 +3656,6 @@ build_charclass_op (re_dfa_t *dfa, RE_TRANSLATE_TYPE trans,
   Idx alloc = 0;
 #endif /* not RE_ENABLE_I18N */
   reg_errcode_t ret;
-  re_token_t br_token;
   bin_tree_t *tree;
 
   sbcset = (re_bitset_ptr_t) calloc (sizeof (bitset_t), 1);
@@ -3713,11 +3706,7 @@ build_charclass_op (re_dfa_t *dfa, RE_TRANSLATE_TYPE trans,
 #endif
 
   /* Build a tree for simple bracket.  */
-#if defined GCC_LINT || defined lint
-  memset (&br_token, 0, sizeof br_token);
-#endif
-  br_token.type = SIMPLE_BRACKET;
-  br_token.opr.sbcset = sbcset;
+  re_token_t br_token = { .type = SIMPLE_BRACKET, .opr.sbcset = sbcset };
   tree = create_token_tree (dfa, NULL, NULL, &br_token);
   if (__glibc_unlikely (tree == NULL))
     goto build_word_op_espace;
@@ -3808,11 +3797,7 @@ static bin_tree_t *
 create_tree (re_dfa_t *dfa, bin_tree_t *left, bin_tree_t *right,
             re_token_type_t type)
 {
-  re_token_t t;
-#if defined GCC_LINT || defined lint
-  memset (&t, 0, sizeof t);
-#endif
-  t.type = type;
+  re_token_t t = { .type = type };
   return create_token_tree (dfa, left, right, &t);
 }
 
index eab7a48b24008c72c6ef63697401b4916605e93e..88173bb1052eb12f6235212d642690077e74b9e8 100644 (file)
@@ -1,5 +1,5 @@
 /* Extended regular expression matching and search library.
-   Copyright (C) 2002-2019 Free Software Foundation, Inc.
+   Copyright (C) 2002-2020 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
 
@@ -17,6 +17,8 @@
    License along with the GNU C Library; if not, see
    <https://www.gnu.org/licenses/>.  */
 
+#define __STDC_WANT_IEC_60559_BFP_EXT__
+
 #ifndef _LIBC
 # include <libc-config.h>
 
index 77ac1a559c4d84d2915f91e4736839e97a409fbd..306521a3e8aa80307c5dfbb8456753e7335a6e24 100644 (file)
@@ -1,6 +1,6 @@
 /* Definitions for data structures and routines for the regular
    expression library.
-   Copyright (C) 1985, 1989-2019 Free Software Foundation, Inc.
+   Copyright (C) 1985, 1989-2020 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -600,11 +600,9 @@ extern void re_set_registers (struct re_pattern_buffer *__buffer,
 #endif /* Use GNU */
 
 #if defined _REGEX_RE_COMP || (defined _LIBC && defined __USE_MISC)
-# ifndef _CRAY
 /* 4.2 bsd compatibility.  */
 extern char *re_comp (const char *);
 extern int re_exec (const char *);
-# endif
 #endif
 
 /* For plain 'restrict', use glibc's __restrict if defined.
@@ -614,7 +612,9 @@ extern int re_exec (const char *);
    'configure' might #define 'restrict' to those words, so pick a
    different name.  */
 #ifndef _Restrict_
-# if defined __restrict || 2 < __GNUC__ + (95 <= __GNUC_MINOR__)
+# if defined __restrict \
+     || 2 < __GNUC__ + (95 <= __GNUC_MINOR__) \
+     || __clang_major__ >= 3
 #  define _Restrict_ __restrict
 # elif 199901L <= __STDC_VERSION__ || defined restrict
 #  define _Restrict_ restrict
@@ -622,13 +622,18 @@ extern int re_exec (const char *);
 #  define _Restrict_
 # endif
 #endif
-/* For [restrict], use glibc's __restrict_arr if available.
-   Otherwise, GCC 3.1 (not in C++ mode) and C99 support [restrict].  */
+/* For the ISO C99 syntax
+     array_name[restrict]
+   use glibc's __restrict_arr if available.
+   Otherwise, GCC 3.1 and clang support this syntax (but not in C++ mode).
+   Other ISO C99 compilers support it as well.  */
 #ifndef _Restrict_arr_
 # ifdef __restrict_arr
 #  define _Restrict_arr_ __restrict_arr
-# elif ((199901L <= __STDC_VERSION__ || 3 < __GNUC__ + (1 <= __GNUC_MINOR__)) \
-        && !defined __GNUG__)
+# elif ((199901L <= __STDC_VERSION__ \
+         || 3 < __GNUC__ + (1 <= __GNUC_MINOR__) \
+         || __clang_major__ >= 3) \
+        && !defined __cplusplus)
 #  define _Restrict_arr_ _Restrict_
 # else
 #  define _Restrict_arr_
index b592f06725c1e1177594029e3c549229716a98b6..bf9439e53fdf09cc3704e8c04a0a6619b6587b57 100644 (file)
@@ -1,5 +1,5 @@
 /* Extended regular expression matching and search library.
-   Copyright (C) 2002-2019 Free Software Foundation, Inc.
+   Copyright (C) 2002-2020 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
 
@@ -212,7 +212,7 @@ build_wcs_buffer (re_string_t *pstr)
 {
 #ifdef _LIBC
   unsigned char buf[MB_LEN_MAX];
-  assert (MB_LEN_MAX >= pstr->mb_cur_max);
+  DEBUG_ASSERT (MB_LEN_MAX >= pstr->mb_cur_max);
 #else
   unsigned char buf[64];
 #endif
@@ -285,7 +285,7 @@ build_wcs_upper_buffer (re_string_t *pstr)
   size_t mbclen;
 #ifdef _LIBC
   char buf[MB_LEN_MAX];
-  assert (MB_LEN_MAX >= pstr->mb_cur_max);
+  DEBUG_ASSERT (pstr->mb_cur_max <= MB_LEN_MAX);
 #else
   char buf[64];
 #endif
@@ -300,18 +300,20 @@ build_wcs_upper_buffer (re_string_t *pstr)
       while (byte_idx < end_idx)
        {
          wchar_t wc;
+         unsigned char ch = pstr->raw_mbs[pstr->raw_mbs_idx + byte_idx];
 
-         if (isascii (pstr->raw_mbs[pstr->raw_mbs_idx + byte_idx])
-             && mbsinit (&pstr->cur_state))
+         if (isascii (ch) && mbsinit (&pstr->cur_state))
            {
-             /* In case of a singlebyte character.  */
-             pstr->mbs[byte_idx]
-               = toupper (pstr->raw_mbs[pstr->raw_mbs_idx + byte_idx]);
              /* The next step uses the assumption that wchar_t is encoded
                 ASCII-safe: all ASCII values can be converted like this.  */
-             pstr->wcs[byte_idx] = (wchar_t) pstr->mbs[byte_idx];
-             ++byte_idx;
-             continue;
+             wchar_t wcu = __towupper (ch);
+             if (isascii (wcu))
+               {
+                 pstr->mbs[byte_idx] = wcu;
+                 pstr->wcs[byte_idx] = wcu;
+                 byte_idx++;
+                 continue;
+               }
            }
 
          remain_len = end_idx - byte_idx;
@@ -348,7 +350,6 @@ build_wcs_upper_buffer (re_string_t *pstr)
            {
              /* It is an invalid character, an incomplete character
                 at the end of the string, or '\0'.  Just use the byte.  */
-             int ch = pstr->raw_mbs[pstr->raw_mbs_idx + byte_idx];
              pstr->mbs[byte_idx] = ch;
              /* And also cast it to wide char.  */
              pstr->wcs[byte_idx++] = (wchar_t) ch;
@@ -685,9 +686,7 @@ re_string_reconstruct (re_string_t *pstr, Idx idx, int eflags)
                         pstr->valid_len - offset);
              pstr->valid_len -= offset;
              pstr->valid_raw_len -= offset;
-#if defined DEBUG && DEBUG
-             assert (pstr->valid_len > 0);
-#endif
+             DEBUG_ASSERT (pstr->valid_len > 0);
            }
        }
       else
@@ -941,10 +940,7 @@ re_string_context_at (const re_string_t *input, Idx idx, int eflags)
       Idx wc_idx = idx;
       while(input->wcs[wc_idx] == WEOF)
        {
-#if defined DEBUG && DEBUG
-         /* It must not happen.  */
-         assert (wc_idx >= 0);
-#endif
+         DEBUG_ASSERT (wc_idx >= 0);
          --wc_idx;
          if (wc_idx < 0)
            return input->tip_context;
@@ -1311,7 +1307,6 @@ re_node_set_insert (re_node_set *set, Idx elem)
      first element separately to skip a check in the inner loop.  */
   if (elem < set->elems[0])
     {
-      idx = 0;
       for (idx = set->nelem; idx > 0; idx--)
        set->elems[idx] = set->elems[idx - 1];
     }
@@ -1716,15 +1711,19 @@ create_cd_newstate (const re_dfa_t *dfa, const re_node_set *nodes,
        {
          if (newstate->entrance_nodes == &newstate->nodes)
            {
-             newstate->entrance_nodes = re_malloc (re_node_set, 1);
-             if (__glibc_unlikely (newstate->entrance_nodes == NULL))
+             re_node_set *entrance_nodes = re_malloc (re_node_set, 1);
+             if (__glibc_unlikely (entrance_nodes == NULL))
                {
                  free_state (newstate);
                  return NULL;
                }
+             newstate->entrance_nodes = entrance_nodes;
              if (re_node_set_init_copy (newstate->entrance_nodes, nodes)
                  != REG_NOERROR)
-               return NULL;
+               {
+                 free_state (newstate);
+                 return NULL;
+               }
              nctx_nodes = 0;
              newstate->has_constraint = 1;
            }
index a3aedda891518186f1f4e6b6453aa103c1055e4a..7b50b4781148a400e69249ac50663a4f1d3c65ba 100644 (file)
@@ -1,5 +1,5 @@
 /* Extended regular expression matching and search library.
-   Copyright (C) 2002-2019 Free Software Foundation, Inc.
+   Copyright (C) 2002-2020 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
 
@@ -20,7 +20,6 @@
 #ifndef _REGEX_INTERNAL_H
 #define _REGEX_INTERNAL_H 1
 
-#include <assert.h>
 #include <ctype.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <stdint.h>
 
 #include <intprops.h>
+#include <verify.h>
+
+#if defined DEBUG && DEBUG != 0
+# include <assert.h>
+# define DEBUG_ASSERT(x) assert (x)
+#else
+# define DEBUG_ASSERT(x) assume (x)
+#endif
 
 #ifdef _LIBC
 # include <libc-lock.h>
 # define lock_unlock(lock) __libc_lock_unlock (lock)
 #elif defined GNULIB_LOCK && !defined USE_UNLOCKED_IO
 # include "glthread/lock.h"
-  /* Use gl_lock_define if empty macro arguments are known to work.
-     Otherwise, fall back on less-portable substitutes.  */
-# if ((defined __GNUC__ && !defined __STRICT_ANSI__) \
-      || (defined __STDC_VERSION__ && 199901L <= __STDC_VERSION__))
-#  define lock_define(name) gl_lock_define (, name)
-# elif USE_POSIX_THREADS
-#  define lock_define(name) pthread_mutex_t name;
-# elif USE_PTH_THREADS
-#  define lock_define(name) pth_mutex_t name;
-# elif USE_SOLARIS_THREADS
-#  define lock_define(name) mutex_t name;
-# elif USE_WINDOWS_THREADS
-#  define lock_define(name) gl_lock_t name;
-# else
-#  define lock_define(name)
-# endif
+# define lock_define(name) gl_lock_define (, name)
 # define lock_init(lock) glthread_lock_init (&(lock))
 # define lock_fini(lock) glthread_lock_destroy (&(lock))
 # define lock_lock(lock) glthread_lock_lock (&(lock))
 # define isblank(ch) ((ch) == ' ' || (ch) == '\t')
 #endif
 
+/* regex code assumes isascii has its usual numeric meaning,
+   even if the portable character set uses EBCDIC encoding,
+   and even if wint_t is wider than int.  */
+#ifndef _LIBC
+# undef isascii
+# define isascii(c) (((c) & ~0x7f) == 0)
+#endif
+
 #ifdef _LIBC
 # ifndef _RE_DEFINE_LOCALE_FUNCTIONS
 #  define _RE_DEFINE_LOCALE_FUNCTIONS 1
 #ifndef SSIZE_MAX
 # define SSIZE_MAX ((ssize_t) (SIZE_MAX / 2))
 #endif
+#ifndef ULONG_WIDTH
+# define ULONG_WIDTH REGEX_UINTEGER_WIDTH (ULONG_MAX)
+/* The number of usable bits in an unsigned integer type with maximum
+   value MAX, as an int expression suitable in #if.  Cover all known
+   practical hosts.  This implementation exploits the fact that MAX is
+   1 less than a power of 2, and merely counts the number of 1 bits in
+   MAX; "COBn" means "count the number of 1 bits in the low-order n bits".  */
+# define REGEX_UINTEGER_WIDTH(max) REGEX_COB128 (max)
+# define REGEX_COB128(n) (REGEX_COB64 ((n) >> 31 >> 31 >> 2) + REGEX_COB64 (n))
+# define REGEX_COB64(n) (REGEX_COB32 ((n) >> 31 >> 1) + REGEX_COB32 (n))
+# define REGEX_COB32(n) (REGEX_COB16 ((n) >> 16) + REGEX_COB16 (n))
+# define REGEX_COB16(n) (REGEX_COB8 ((n) >> 8) + REGEX_COB8 (n))
+# define REGEX_COB8(n) (REGEX_COB4 ((n) >> 4) + REGEX_COB4 (n))
+# define REGEX_COB4(n) (!!((n) & 8) + !!((n) & 4) + !!((n) & 2) + ((n) & 1))
+# if ULONG_MAX / 2 + 1 != 1ul << (ULONG_WIDTH - 1)
+#  error "ULONG_MAX out of range"
+# endif
+#endif
 
 /* The type of indexes into strings.  This is signed, not size_t,
    since the API requires indexes to fit in regoff_t anyway, and using
@@ -172,36 +190,8 @@ typedef __re_size_t re_hashval_t;
 typedef unsigned long int bitset_word_t;
 /* All bits set in a bitset_word_t.  */
 #define BITSET_WORD_MAX ULONG_MAX
-
-/* Number of bits in a bitset_word_t.  For portability to hosts with
-   padding bits, do not use '(sizeof (bitset_word_t) * CHAR_BIT)';
-   instead, deduce it directly from BITSET_WORD_MAX.  Avoid
-   greater-than-32-bit integers and unconditional shifts by more than
-   31 bits, as they're not portable.  */
-#if BITSET_WORD_MAX == 0xffffffffUL
-# define BITSET_WORD_BITS 32
-#elif BITSET_WORD_MAX >> 31 >> 4 == 1
-# define BITSET_WORD_BITS 36
-#elif BITSET_WORD_MAX >> 31 >> 16 == 1
-# define BITSET_WORD_BITS 48
-#elif BITSET_WORD_MAX >> 31 >> 28 == 1
-# define BITSET_WORD_BITS 60
-#elif BITSET_WORD_MAX >> 31 >> 31 >> 1 == 1
-# define BITSET_WORD_BITS 64
-#elif BITSET_WORD_MAX >> 31 >> 31 >> 9 == 1
-# define BITSET_WORD_BITS 72
-#elif BITSET_WORD_MAX >> 31 >> 31 >> 31 >> 31 >> 3 == 1
-# define BITSET_WORD_BITS 128
-#elif BITSET_WORD_MAX >> 31 >> 31 >> 31 >> 31 >> 31 >> 31 >> 31 >> 31 >> 7 == 1
-# define BITSET_WORD_BITS 256
-#elif BITSET_WORD_MAX >> 31 >> 31 >> 31 >> 31 >> 31 >> 31 >> 31 >> 31 >> 7 > 1
-# define BITSET_WORD_BITS 257 /* any value > SBC_MAX will do here */
-# if BITSET_WORD_BITS <= SBC_MAX
-#  error "Invalid SBC_MAX"
-# endif
-#else
-# error "Add case for new bitset_word_t size"
-#endif
+/* Number of bits in a bitset_word_t.  */
+#define BITSET_WORD_BITS ULONG_WIDTH
 
 /* Number of bitset_word_t values in a bitset_t.  */
 #define BITSET_WORDS ((SBC_MAX + BITSET_WORD_BITS - 1) / BITSET_WORD_BITS)
@@ -353,7 +343,7 @@ typedef struct
     Idx idx;                   /* for BACK_REF */
     re_context_type ctx_type;  /* for ANCHOR */
   } opr;
-#if __GNUC__ >= 2 && !defined __STRICT_ANSI__
+#if (__GNUC__ >= 2 || defined __clang__) && !defined __STRICT_ANSI__
   re_token_type_t type : 8;
 #else
   re_token_type_t type;
@@ -609,20 +599,15 @@ struct re_backref_cache_entry
   Idx str_idx;
   Idx subexp_from;
   Idx subexp_to;
+  bitset_word_t eps_reachable_subexps_map;
   char more;
-  char unused;
-  unsigned short int eps_reachable_subexps_map;
 };
 
 typedef struct
 {
   /* The string object corresponding to the input string.  */
   re_string_t input;
-#if defined _LIBC || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L)
   const re_dfa_t *const dfa;
-#else
-  const re_dfa_t *dfa;
-#endif
   /* EFLAGS of the argument of regexec.  */
   int eflags;
   /* Where the matching ends.  */
@@ -864,10 +849,10 @@ re_string_elem_size_at (const re_string_t *pstr, Idx idx)
 #endif /* RE_ENABLE_I18N */
 
 #ifndef FALLTHROUGH
-# if __GNUC__ < 7
-#  define FALLTHROUGH ((void) 0)
-# else
+# if (__GNUC__ >= 7) || (__clang_major__ >= 10)
 #  define FALLTHROUGH __attribute__ ((__fallthrough__))
+# else
+#  define FALLTHROUGH ((void) 0)
 # endif
 #endif
 
index f464869fb03b0e9a89a5786124ed3b8e530e68d1..395e37db5914e881eada8b9b2af43e39be8778d3 100644 (file)
@@ -1,5 +1,5 @@
 /* Extended regular expression matching and search library.
-   Copyright (C) 2002-2019 Free Software Foundation, Inc.
+   Copyright (C) 2002-2020 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
 
@@ -443,7 +443,7 @@ re_search_stub (struct re_pattern_buffer *bufp, const char *string, Idx length,
     {
       if (ret_len)
        {
-         assert (pmatch[0].rm_so == start);
+         DEBUG_ASSERT (pmatch[0].rm_so == start);
          rval = pmatch[0].rm_eo - start;
        }
       else
@@ -502,9 +502,9 @@ re_copy_regs (struct re_registers *regs, regmatch_t *pmatch, Idx nregs,
     }
   else
     {
-      assert (regs_allocated == REGS_FIXED);
+      DEBUG_ASSERT (regs_allocated == REGS_FIXED);
       /* This function may not be called with REGS_FIXED and nregs too big.  */
-      assert (regs->num_regs >= nregs);
+      DEBUG_ASSERT (nregs <= regs->num_regs);
       rval = REGS_FIXED;
     }
 
@@ -597,21 +597,12 @@ re_search_internal (const regex_t *preg, const char *string, Idx length,
   Idx extra_nmatch;
   bool sb;
   int ch;
-#if defined _LIBC || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L)
   re_match_context_t mctx = { .dfa = dfa };
-#else
-  re_match_context_t mctx;
-#endif
   char *fastmap = ((preg->fastmap != NULL && preg->fastmap_accurate
                    && start != last_start && !preg->can_be_null)
                   ? preg->fastmap : NULL);
   RE_TRANSLATE_TYPE t = preg->translate;
 
-#if !(defined _LIBC || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L))
-  memset (&mctx, '\0', sizeof (re_match_context_t));
-  mctx.dfa = dfa;
-#endif
-
   extra_nmatch = (nmatch > preg->re_nsub) ? nmatch - (preg->re_nsub + 1) : 0;
   nmatch -= extra_nmatch;
 
@@ -622,10 +613,8 @@ re_search_internal (const regex_t *preg, const char *string, Idx length,
                        || dfa->init_state_begbuf == NULL))
     return REG_NOMATCH;
 
-#ifdef DEBUG
   /* We assume front-end functions already check them.  */
-  assert (0 <= last_start && last_start <= length);
-#endif
+  DEBUG_ASSERT (0 <= last_start && last_start <= length);
 
   /* If initial states with non-begbuf contexts have no elements,
      the regex must be anchored.  If preg->newline_anchor is set,
@@ -677,8 +666,6 @@ re_search_internal (const regex_t *preg, const char *string, Idx length,
          goto free_return;
        }
     }
-  else
-    mctx.state_log = NULL;
 
   match_first = start;
   mctx.input.tip_context = (eflags & REG_NOTBOL) ? CONTEXT_BEGBUF
@@ -838,10 +825,8 @@ re_search_internal (const regex_t *preg, const char *string, Idx length,
       match_ctx_clean (&mctx);
     }
 
-#ifdef DEBUG
-  assert (match_last != -1);
-  assert (err == REG_NOERROR);
-#endif
+  DEBUG_ASSERT (match_last != -1);
+  DEBUG_ASSERT (err == REG_NOERROR);
 
   /* Set pmatch[] if we need.  */
   if (nmatch > 0)
@@ -886,7 +871,7 @@ re_search_internal (const regex_t *preg, const char *string, Idx length,
                   : mctx.input.offsets[pmatch[reg_idx].rm_eo]);
              }
 #else
-           assert (mctx.input.offsets_needed == 0);
+           DEBUG_ASSERT (mctx.input.offsets_needed == 0);
 #endif
            pmatch[reg_idx].rm_so += match_first;
            pmatch[reg_idx].rm_eo += match_first;
@@ -926,9 +911,7 @@ prune_impossible_nodes (re_match_context_t *mctx)
   re_dfastate_t **sifted_states;
   re_dfastate_t **lim_states = NULL;
   re_sift_context_t sctx;
-#ifdef DEBUG
-  assert (mctx->state_log != NULL);
-#endif
+  DEBUG_ASSERT (mctx->state_log != NULL);
   match_last = mctx->match_last;
   halt_node = mctx->last_node;
 
@@ -1074,7 +1057,7 @@ check_matching (re_match_context_t *mctx, bool fl_longest_match,
   /* An initial state must not be NULL (invalid).  */
   if (__glibc_unlikely (cur_state == NULL))
     {
-      assert (err == REG_ESPACE);
+      DEBUG_ASSERT (err == REG_ESPACE);
       return -2;
     }
 
@@ -1129,7 +1112,7 @@ check_matching (re_match_context_t *mctx, bool fl_longest_match,
          err = extend_buffers (mctx, next_char_idx + 1);
          if (__glibc_unlikely (err != REG_NOERROR))
            {
-             assert (err == REG_ESPACE);
+             DEBUG_ASSERT (err == REG_ESPACE);
              return -2;
            }
        }
@@ -1212,9 +1195,7 @@ check_halt_state_context (const re_match_context_t *mctx,
 {
   Idx i;
   unsigned int context;
-#ifdef DEBUG
-  assert (state->halt);
-#endif
+  DEBUG_ASSERT (state->halt);
   context = re_string_context_at (&mctx->input, idx, mctx->eflags);
   for (i = 0; i < state->nodes.nelem; ++i)
     if (check_halt_node_context (mctx->dfa, state->nodes.elems[i], context))
@@ -1285,10 +1266,13 @@ proceed_next_node (const re_match_context_t *mctx, Idx nregs, regmatch_t *regs,
       if (type == OP_BACK_REF)
        {
          Idx subexp_idx = dfa->nodes[node].opr.idx + 1;
-         naccepted = regs[subexp_idx].rm_eo - regs[subexp_idx].rm_so;
+         if (subexp_idx < nregs)
+           naccepted = regs[subexp_idx].rm_eo - regs[subexp_idx].rm_so;
          if (fs != NULL)
            {
-             if (regs[subexp_idx].rm_so == -1 || regs[subexp_idx].rm_eo == -1)
+             if (subexp_idx >= nregs
+                 || regs[subexp_idx].rm_so == -1
+                 || regs[subexp_idx].rm_eo == -1)
                return -1;
              else if (naccepted)
                {
@@ -1362,7 +1346,7 @@ pop_fail_stack (struct re_fail_stack_t *fs, Idx *pidx, Idx nregs,
                regmatch_t *regs, re_node_set *eps_via_nodes)
 {
   Idx num = --fs->num;
-  assert (num >= 0);
+  DEBUG_ASSERT (num >= 0);
   *pidx = fs->stack[num].idx;
   memcpy (regs, fs->stack[num].regs, sizeof (regmatch_t) * nregs);
   re_node_set_free (eps_via_nodes);
@@ -1389,10 +1373,8 @@ set_regs (const regex_t *preg, const re_match_context_t *mctx, size_t nmatch,
   regmatch_t *prev_idx_match;
   bool prev_idx_match_malloced = false;
 
-#ifdef DEBUG
-  assert (nmatch > 1);
-  assert (mctx->state_log != NULL);
-#endif
+  DEBUG_ASSERT (nmatch > 1);
+  DEBUG_ASSERT (mctx->state_log != NULL);
   if (fl_backtrack)
     {
       fs = &fs_body;
@@ -1578,9 +1560,7 @@ sift_states_backward (const re_match_context_t *mctx, re_sift_context_t *sctx)
   Idx str_idx = sctx->last_str_idx;
   re_node_set cur_dest;
 
-#ifdef DEBUG
-  assert (mctx->state_log != NULL && mctx->state_log[str_idx] != NULL);
-#endif
+  DEBUG_ASSERT (mctx->state_log != NULL && mctx->state_log[str_idx] != NULL);
 
   /* Build sifted state_log[str_idx].  It has the nodes which can epsilon
      transit to the last_node and the last_node itself.  */
@@ -1648,11 +1628,8 @@ build_sifted_states (const re_match_context_t *mctx, re_sift_context_t *sctx,
       Idx prev_node = cur_src->elems[i];
       int naccepted = 0;
       bool ok;
+      DEBUG_ASSERT (!IS_EPSILON_NODE (dfa->nodes[prev_node].type));
 
-#ifdef DEBUG
-      re_token_type_t type = dfa->nodes[prev_node].type;
-      assert (!IS_EPSILON_NODE (type));
-#endif
 #ifdef RE_ENABLE_I18N
       /* If the node may accept "multi byte".  */
       if (dfa->nodes[prev_node].accept_mb)
@@ -2505,9 +2482,7 @@ transit_state_mb (re_match_context_t *mctx, re_dfastate_t *pstate)
       err = clean_state_log_if_needed (mctx, dest_idx);
       if (__glibc_unlikely (err != REG_NOERROR))
        return err;
-#ifdef DEBUG
-      assert (dfa->nexts[cur_node_idx] != -1);
-#endif
+      DEBUG_ASSERT (dfa->nexts[cur_node_idx] != -1);
       new_nodes = dfa->eclosures + dfa->nexts[cur_node_idx];
 
       dest_state = mctx->state_log[dest_idx];
@@ -2571,9 +2546,7 @@ transit_state_bkref (re_match_context_t *mctx, const re_node_set *nodes)
 
       /* And add the epsilon closures (which is 'new_dest_nodes') of
         the backreference to appropriate state_log.  */
-#ifdef DEBUG
-      assert (dfa->nexts[node_idx] != -1);
-#endif
+      DEBUG_ASSERT (dfa->nexts[node_idx] != -1);
       for (; bkc_idx < mctx->nbkref_ents; ++bkc_idx)
        {
          Idx subexp_len;
@@ -3032,10 +3005,8 @@ check_arrival_add_next_nodes (re_match_context_t *mctx, Idx str_idx,
     {
       int naccepted = 0;
       Idx cur_node = cur_nodes->elems[cur_idx];
-#ifdef DEBUG
-      re_token_type_t type = dfa->nodes[cur_node].type;
-      assert (!IS_EPSILON_NODE (type));
-#endif
+      DEBUG_ASSERT (!IS_EPSILON_NODE (dfa->nodes[cur_node].type));
+
 #ifdef RE_ENABLE_I18N
       /* If the node may accept "multi byte".  */
       if (dfa->nodes[cur_node].accept_mb)
@@ -3103,9 +3074,7 @@ check_arrival_expand_ecl (const re_dfa_t *dfa, re_node_set *cur_nodes,
   reg_errcode_t err;
   Idx idx, outside_node;
   re_node_set new_nodes;
-#ifdef DEBUG
-  assert (cur_nodes->nelem);
-#endif
+  DEBUG_ASSERT (cur_nodes->nelem);
   err = re_node_set_alloc (&new_nodes, cur_nodes->nelem);
   if (__glibc_unlikely (err != REG_NOERROR))
     return err;
@@ -3695,6 +3664,7 @@ group_nodes_into_DFAstates (const re_dfa_t *dfa, const re_dfastate_t *state,
          bitset_empty (accepts);
        }
     }
+  assume (ndests <= SBC_MAX);
   return ndests;
  error_return:
   for (j = 0; j < ndests; ++j)
@@ -4272,10 +4242,8 @@ static reg_errcode_t
 __attribute_warn_unused_result__
 match_ctx_add_subtop (re_match_context_t *mctx, Idx node, Idx str_idx)
 {
-#ifdef DEBUG
-  assert (mctx->sub_tops != NULL);
-  assert (mctx->asub_tops > 0);
-#endif
+  DEBUG_ASSERT (mctx->sub_tops != NULL);
+  DEBUG_ASSERT (mctx->asub_tops > 0);
   if (__glibc_unlikely (mctx->nsub_tops == mctx->asub_tops))
     {
       Idx new_asub_tops = mctx->asub_tops * 2;
index 4c80973df849b8612576224ae1816b577f96252d..c9615d506a075e7ca1f1bd721fab3a634fe4c015 100644 (file)
@@ -1,7 +1,7 @@
 /* Determine whether string value is affirmation or negative response
    according to current locale's data.
 
-   Copyright (C) 1996, 1998, 2000, 2002-2003, 2006-2019 Free Software
+   Copyright (C) 1996, 1998, 2000, 2002-2003, 2006-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
index e6c54b75a6b75e941e3052cdea066b4b56fc87d1..613e056d71920a9d37f919e7676e50ccaeb7a4e9 100644 (file)
@@ -1,6 +1,6 @@
 /* An interface to read and write that retries after interrupts.
 
-   Copyright (C) 1993-1994, 1998, 2002-2006, 2009-2019 Free Software
+   Copyright (C) 1993-1994, 1998, 2002-2006, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
index 3f421f6bab87695975fb5c3a6029e74ba893207f..ea18423a801bc60f5f41647ec879b5d838345a5c 100644 (file)
@@ -1,5 +1,5 @@
 /* An interface to read() that retries after interrupts.
-   Copyright (C) 2002, 2006, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2006, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
diff --git a/lib/setlocale-lock.c b/lib/setlocale-lock.c
new file mode 100644 (file)
index 0000000..7dde32d
--- /dev/null
@@ -0,0 +1,150 @@
+/* Return the internal lock used by setlocale_null_r.
+   Copyright (C) 2019-2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2019.  */
+
+#include <config.h>
+
+/* When it is known that the gl_get_setlocale_null_lock function is defined
+   by a dependency library, it should not be defined here.  */
+#if OMIT_SETLOCALE_LOCK
+
+/* This declaration is solely to ensure that after preprocessing
+   this file is never empty.  */
+typedef int dummy;
+
+#else
+
+/* This file defines the internal lock used by setlocale_null_r.
+   It is a separate compilation unit, so that only one copy of it is
+   present when linking statically.  */
+
+/* Prohibit renaming this symbol.  */
+# undef gl_get_setlocale_null_lock
+
+/* Macro for exporting a symbol (function, not variable) defined in this file,
+   when compiled into a shared library.  */
+# ifndef DLL_EXPORTED
+#  if HAVE_VISIBILITY
+  /* Override the effect of the compiler option '-fvisibility=hidden'.  */
+#   define DLL_EXPORTED __attribute__((__visibility__("default")))
+#  elif defined _WIN32 || defined __CYGWIN__
+#   define DLL_EXPORTED __declspec(dllexport)
+#  else
+#   define DLL_EXPORTED
+#  endif
+# endif
+
+# if defined _WIN32 && !defined __CYGWIN__
+
+#  define WIN32_LEAN_AND_MEAN  /* avoid including junk */
+#  include <windows.h>
+
+#  include "windows-initguard.h"
+
+/* The return type is a 'CRITICAL_SECTION *', not a 'glwthread_mutex_t *',
+   because the latter is not guaranteed to be a stable ABI in the future.  */
+
+/* Make sure the function gets exported from DLLs.  */
+DLL_EXPORTED CRITICAL_SECTION *gl_get_setlocale_null_lock (void);
+
+static glwthread_initguard_t guard = GLWTHREAD_INITGUARD_INIT;
+static CRITICAL_SECTION lock;
+
+/* Returns the internal lock used by setlocale_null_r.  */
+CRITICAL_SECTION *
+gl_get_setlocale_null_lock (void)
+{
+  if (!guard.done)
+    {
+      if (InterlockedIncrement (&guard.started) == 0)
+        {
+          /* This thread is the first one to need the lock.  Initialize it.  */
+          InitializeCriticalSection (&lock);
+          guard.done = 1;
+        }
+      else
+        {
+          /* Don't let guard.started grow and wrap around.  */
+          InterlockedDecrement (&guard.started);
+          /* Yield the CPU while waiting for another thread to finish
+             initializing this mutex.  */
+          while (!guard.done)
+            Sleep (0);
+        }
+    }
+  return &lock;
+}
+
+# elif HAVE_PTHREAD_API
+
+#  include <pthread.h>
+
+static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
+
+/* Make sure the function gets exported from shared libraries.  */
+DLL_EXPORTED pthread_mutex_t *gl_get_setlocale_null_lock (void);
+
+/* Returns the internal lock used by setlocale_null_r.  */
+pthread_mutex_t *
+gl_get_setlocale_null_lock (void)
+{
+  return &mutex;
+}
+
+# elif HAVE_THREADS_H
+
+#  include <threads.h>
+#  include <stdlib.h>
+
+static int volatile init_needed = 1;
+static once_flag init_once = ONCE_FLAG_INIT;
+static mtx_t mutex;
+
+static void
+atomic_init (void)
+{
+  if (mtx_init (&mutex, mtx_plain) != thrd_success)
+    abort ();
+  init_needed = 0;
+}
+
+/* Make sure the function gets exported from shared libraries.  */
+DLL_EXPORTED mtx_t *gl_get_setlocale_null_lock (void);
+
+/* Returns the internal lock used by setlocale_null_r.  */
+mtx_t *
+gl_get_setlocale_null_lock (void)
+{
+  if (init_needed)
+    call_once (&init_once, atomic_init);
+  return &mutex;
+}
+
+# endif
+
+# if (defined _WIN32 || defined __CYGWIN__) && !defined _MSC_VER
+/* Make sure the '__declspec(dllimport)' in setlocale_null.c does not cause
+   a link failure when no DLLs are involved.  */
+#  if defined _WIN64 || defined _LP64
+#   define IMP(x) __imp_##x
+#  else
+#   define IMP(x) _imp__##x
+#  endif
+void * IMP(gl_get_setlocale_null_lock) = &gl_get_setlocale_null_lock;
+# endif
+
+#endif
diff --git a/lib/setlocale_null.c b/lib/setlocale_null.c
new file mode 100644 (file)
index 0000000..abe55b5
--- /dev/null
@@ -0,0 +1,411 @@
+/* Query the name of the current global locale.
+   Copyright (C) 2019-2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2019.  */
+
+#include <config.h>
+
+/* Specification.  */
+#include "setlocale_null.h"
+
+#include <errno.h>
+#include <locale.h>
+#include <stdlib.h>
+#include <string.h>
+#if defined _WIN32 && !defined __CYGWIN__
+# include <wchar.h>
+#endif
+
+#if !(SETLOCALE_NULL_ALL_MTSAFE && SETLOCALE_NULL_ONE_MTSAFE)
+# if defined _WIN32 && !defined __CYGWIN__
+
+#  define WIN32_LEAN_AND_MEAN  /* avoid including junk */
+#  include <windows.h>
+
+# elif HAVE_PTHREAD_API
+
+#  include <pthread.h>
+#  if HAVE_THREADS_H && HAVE_WEAK_SYMBOLS
+#   include <threads.h>
+#   pragma weak thrd_exit
+#   define c11_threads_in_use() (thrd_exit != NULL)
+#  else
+#   define c11_threads_in_use() 0
+#  endif
+
+# elif HAVE_THREADS_H
+
+#  include <threads.h>
+
+# endif
+#endif
+
+/* Use the system's setlocale() function, not the gnulib override, here.  */
+#undef setlocale
+
+static const char *
+setlocale_null_androidfix (int category)
+{
+  const char *result = setlocale (category, NULL);
+
+#ifdef __ANDROID__
+  if (result == NULL)
+    switch (category)
+      {
+      case LC_CTYPE:
+      case LC_NUMERIC:
+      case LC_TIME:
+      case LC_COLLATE:
+      case LC_MONETARY:
+      case LC_MESSAGES:
+      case LC_ALL:
+      case LC_PAPER:
+      case LC_NAME:
+      case LC_ADDRESS:
+      case LC_TELEPHONE:
+      case LC_MEASUREMENT:
+        result = "C";
+        break;
+      default:
+        break;
+      }
+#endif
+
+  return result;
+}
+
+static int
+setlocale_null_unlocked (int category, char *buf, size_t bufsize)
+{
+#if defined _WIN32 && !defined __CYGWIN__ && defined _MSC_VER
+  /* On native Windows, nowadays, the setlocale() implementation is based
+     on _wsetlocale() and uses malloc() for the result.  We are better off
+     using _wsetlocale() directly.  */
+  const wchar_t *result = _wsetlocale (category, NULL);
+
+  if (result == NULL)
+    {
+      /* CATEGORY is invalid.  */
+      if (bufsize > 0)
+        /* Return an empty string in BUF.
+           This is a convenience for callers that don't want to write explicit
+           code for handling EINVAL.  */
+        buf[0] = '\0';
+      return EINVAL;
+    }
+  else
+    {
+      size_t length = wcslen (result);
+      if (length < bufsize)
+        {
+          size_t i;
+
+          /* Convert wchar_t[] -> char[], assuming plain ASCII.  */
+          for (i = 0; i <= length; i++)
+            buf[i] = result[i];
+
+          return 0;
+        }
+      else
+        {
+          if (bufsize > 0)
+            {
+              /* Return a truncated result in BUF.
+                 This is a convenience for callers that don't want to write
+                 explicit code for handling ERANGE.  */
+              size_t i;
+
+              /* Convert wchar_t[] -> char[], assuming plain ASCII.  */
+              for (i = 0; i < bufsize; i++)
+                buf[i] = result[i];
+              buf[bufsize - 1] = '\0';
+            }
+          return ERANGE;
+        }
+    }
+#else
+  const char *result = setlocale_null_androidfix (category);
+
+  if (result == NULL)
+    {
+      /* CATEGORY is invalid.  */
+      if (bufsize > 0)
+        /* Return an empty string in BUF.
+           This is a convenience for callers that don't want to write explicit
+           code for handling EINVAL.  */
+        buf[0] = '\0';
+      return EINVAL;
+    }
+  else
+    {
+      size_t length = strlen (result);
+      if (length < bufsize)
+        {
+          memcpy (buf, result, length + 1);
+          return 0;
+        }
+      else
+        {
+          if (bufsize > 0)
+            {
+              /* Return a truncated result in BUF.
+                 This is a convenience for callers that don't want to write
+                 explicit code for handling ERANGE.  */
+              memcpy (buf, result, bufsize - 1);
+              buf[bufsize - 1] = '\0';
+            }
+          return ERANGE;
+        }
+    }
+#endif
+}
+
+#if !(SETLOCALE_NULL_ALL_MTSAFE && SETLOCALE_NULL_ONE_MTSAFE) /* musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku, Cygwin */
+
+/* Use a lock, so that no two threads can invoke setlocale_null_unlocked
+   at the same time.  */
+
+/* Prohibit renaming this symbol.  */
+# undef gl_get_setlocale_null_lock
+
+# if defined _WIN32 && !defined __CYGWIN__
+
+extern __declspec(dllimport) CRITICAL_SECTION *gl_get_setlocale_null_lock (void);
+
+static int
+setlocale_null_with_lock (int category, char *buf, size_t bufsize)
+{
+  CRITICAL_SECTION *lock = gl_get_setlocale_null_lock ();
+  int ret;
+
+  EnterCriticalSection (lock);
+  ret = setlocale_null_unlocked (category, buf, bufsize);
+  LeaveCriticalSection (lock);
+
+  return ret;
+}
+
+# elif HAVE_PTHREAD_API /* musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku, Cygwin */
+
+extern
+#  if defined _WIN32 || defined __CYGWIN__
+  __declspec(dllimport)
+#  endif
+  pthread_mutex_t *gl_get_setlocale_null_lock (void);
+
+#  if HAVE_WEAK_SYMBOLS /* musl libc, FreeBSD, NetBSD, OpenBSD, Haiku */
+
+    /* Avoid the need to link with '-lpthread'.  */
+#   pragma weak pthread_mutex_lock
+#   pragma weak pthread_mutex_unlock
+
+    /* Determine whether libpthread is in use.  */
+#   pragma weak pthread_mutexattr_gettype
+    /* See the comments in lock.h.  */
+#   define pthread_in_use() \
+      (pthread_mutexattr_gettype != NULL || c11_threads_in_use ())
+
+#  else
+#   define pthread_in_use() 1
+#  endif
+
+static int
+setlocale_null_with_lock (int category, char *buf, size_t bufsize)
+{
+  if (pthread_in_use())
+    {
+      pthread_mutex_t *lock = gl_get_setlocale_null_lock ();
+      int ret;
+
+      if (pthread_mutex_lock (lock))
+        abort ();
+      ret = setlocale_null_unlocked (category, buf, bufsize);
+      if (pthread_mutex_unlock (lock))
+        abort ();
+
+      return ret;
+    }
+  else
+    return setlocale_null_unlocked (category, buf, bufsize);
+}
+
+# elif HAVE_THREADS_H
+
+extern mtx_t *gl_get_setlocale_null_lock (void);
+
+static int
+setlocale_null_with_lock (int category, char *buf, size_t bufsize)
+{
+  mtx_t *lock = gl_get_setlocale_null_lock ();
+  int ret;
+
+  if (mtx_lock (lock) != thrd_success)
+    abort ();
+  ret = setlocale_null_unlocked (category, buf, bufsize);
+  if (mtx_unlock (lock) != thrd_success)
+    abort ();
+
+  return ret;
+}
+
+# endif
+
+#endif
+
+int
+setlocale_null_r (int category, char *buf, size_t bufsize)
+{
+#if SETLOCALE_NULL_ALL_MTSAFE
+# if SETLOCALE_NULL_ONE_MTSAFE
+
+  return setlocale_null_unlocked (category, buf, bufsize);
+
+# else
+
+  if (category == LC_ALL)
+    return setlocale_null_unlocked (category, buf, bufsize);
+  else
+    return setlocale_null_with_lock (category, buf, bufsize);
+
+# endif
+#else
+# if SETLOCALE_NULL_ONE_MTSAFE
+
+  if (category == LC_ALL)
+    return setlocale_null_with_lock (category, buf, bufsize);
+  else
+    return setlocale_null_unlocked (category, buf, bufsize);
+
+# else
+
+  return setlocale_null_with_lock (category, buf, bufsize);
+
+# endif
+#endif
+}
+
+const char *
+setlocale_null (int category)
+{
+#if SETLOCALE_NULL_ALL_MTSAFE && SETLOCALE_NULL_ONE_MTSAFE
+  return setlocale_null_androidfix (category);
+#else
+
+  /* This call must be multithread-safe.  To achieve this without using
+     thread-local storage:
+       1. We use a specific static buffer for each possible CATEGORY
+          argument.  So that different threads can call setlocale_mtsafe
+          with different CATEGORY arguments, without interfering.
+       2. We use a simple strcpy or memcpy to fill this static buffer.
+          Filling it through, for example, strcpy + strcat would not be
+          guaranteed to leave the buffer's contents intact if another thread
+          is currently accessing it.  If necessary, the contents is first
+          assembled in a stack-allocated buffer.  */
+  if (category == LC_ALL)
+    {
+# if SETLOCALE_NULL_ALL_MTSAFE
+      return setlocale_null_androidfix (LC_ALL);
+# else
+      char buf[SETLOCALE_NULL_ALL_MAX];
+      static char resultbuf[SETLOCALE_NULL_ALL_MAX];
+
+      if (setlocale_null_r (LC_ALL, buf, sizeof (buf)))
+        return "C";
+      strcpy (resultbuf, buf);
+      return resultbuf;
+# endif
+    }
+  else
+    {
+# if SETLOCALE_NULL_ONE_MTSAFE
+      return setlocale_null_androidfix (category);
+# else
+      enum
+        {
+          LC_CTYPE_INDEX,
+          LC_NUMERIC_INDEX,
+          LC_TIME_INDEX,
+          LC_COLLATE_INDEX,
+          LC_MONETARY_INDEX,
+          LC_MESSAGES_INDEX,
+#  ifdef LC_PAPER
+          LC_PAPER_INDEX,
+#  endif
+#  ifdef LC_NAME
+          LC_NAME_INDEX,
+#  endif
+#  ifdef LC_ADDRESS
+          LC_ADDRESS_INDEX,
+#  endif
+#  ifdef LC_TELEPHONE
+          LC_TELEPHONE_INDEX,
+#  endif
+#  ifdef LC_MEASUREMENT
+          LC_MEASUREMENT_INDEX,
+#  endif
+#  ifdef LC_IDENTIFICATION
+          LC_IDENTIFICATION_INDEX,
+#  endif
+          LC_INDICES_COUNT
+        }
+        i;
+      char buf[SETLOCALE_NULL_MAX];
+      static char resultbuf[LC_INDICES_COUNT][SETLOCALE_NULL_MAX];
+      int err;
+
+      err = setlocale_null_r (category, buf, sizeof (buf));
+      if (err == EINVAL)
+        return NULL;
+      if (err)
+        return "C";
+
+      switch (category)
+        {
+        case LC_CTYPE:          i = LC_CTYPE_INDEX;          break;
+        case LC_NUMERIC:        i = LC_NUMERIC_INDEX;        break;
+        case LC_TIME:           i = LC_TIME_INDEX;           break;
+        case LC_COLLATE:        i = LC_COLLATE_INDEX;        break;
+        case LC_MONETARY:       i = LC_MONETARY_INDEX;       break;
+        case LC_MESSAGES:       i = LC_MESSAGES_INDEX;       break;
+#  ifdef LC_PAPER
+        case LC_PAPER:          i = LC_PAPER_INDEX;          break;
+#  endif
+#  ifdef LC_NAME
+        case LC_NAME:           i = LC_NAME_INDEX;           break;
+#  endif
+#  ifdef LC_ADDRESS
+        case LC_ADDRESS:        i = LC_ADDRESS_INDEX;        break;
+#  endif
+#  ifdef LC_TELEPHONE
+        case LC_TELEPHONE:      i = LC_TELEPHONE_INDEX;      break;
+#  endif
+#  ifdef LC_MEASUREMENT
+        case LC_MEASUREMENT:    i = LC_MEASUREMENT_INDEX;    break;
+#  endif
+#  ifdef LC_IDENTIFICATION
+        case LC_IDENTIFICATION: i = LC_IDENTIFICATION_INDEX; break;
+#  endif
+        default:
+          /* If you get here, a #ifdef LC_xxx is missing.  */
+          abort ();
+        }
+
+      strcpy (resultbuf[i], buf);
+      return resultbuf[i];
+# endif
+    }
+#endif
+}
diff --git a/lib/setlocale_null.h b/lib/setlocale_null.h
new file mode 100644 (file)
index 0000000..6844be5
--- /dev/null
@@ -0,0 +1,82 @@
+/* Query the name of the current global locale.
+   Copyright (C) 2019-2020 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2019.  */
+
+#ifndef _SETLOCALE_NULL_H
+#define _SETLOCALE_NULL_H
+
+#include <stddef.h>
+
+#include "arg-nonnull.h"
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+/* Recommended size of a buffer for a locale name for a single category.
+   On glibc systems, you can have locale names that are relative file names;
+   assume a maximum length 256.
+   In native Windows, in 2018 the longest locale name was of length 58
+   ("FYRO Macedonian_Former Yugoslav Republic of Macedonia.1251").  */
+#define SETLOCALE_NULL_MAX (256+1)
+
+/* Recommended size of a buffer for a locale name with all categories.
+   On glibc systems, you can have locale names that are relative file names;
+   assume maximum length 256 for each.  There are 12 categories; so, the
+   maximum total length is 148+12*256.
+   In native Windows, there are 5 categories, and the maximum total length is
+   55+5*58.  */
+#define SETLOCALE_NULL_ALL_MAX (148+12*256+1)
+
+/* setlocale_null_r (CATEGORY, BUF, BUFSIZE) is like setlocale (CATEGORY, NULL),
+   except that
+     - it is guaranteed to be multithread-safe,
+     - it returns the resulting locale category name or locale name in the
+       user-supplied buffer BUF, which must be BUFSIZE bytes long.
+   The recommended minimum buffer size is
+     - SETLOCALE_NULL_MAX for CATEGORY != LC_ALL, and
+     - SETLOCALE_NULL_ALL_MAX for CATEGORY == LC_ALL.
+   The return value is an error code: 0 if the call is successful, EINVAL if
+   CATEGORY is invalid, or ERANGE if BUFSIZE is smaller than the length needed
+   size (including the trailing NUL byte).  In the latter case, a truncated
+   result is returned in BUF, but still NUL-terminated if BUFSIZE > 0.
+   For this call to be multithread-safe, *all* calls to
+   setlocale (CATEGORY, NULL) in all other threads must have been converted
+   to use setlocale_null_r or setlocale_null as well, and the other threads
+   must not make other setlocale invocations (since changing the global locale
+   has side effects on all threads).  */
+extern int setlocale_null_r (int category, char *buf, size_t bufsize)
+  _GL_ARG_NONNULL ((2));
+
+/* setlocale_null (CATEGORY) is like setlocale (CATEGORY, NULL), except that
+   it is guaranteed to be multithread-safe.
+   The return value is NULL if CATEGORY is invalid.
+   For this call to be multithread-safe, *all* calls to
+   setlocale (CATEGORY, NULL) in all other threads must have been converted
+   to use setlocale_null_r or setlocale_null as well, and the other threads
+   must not make other setlocale invocations (since changing the global locale
+   has side effects on all threads).  */
+extern const char *setlocale_null (int category);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _SETLOCALE_NULL_H */
index c5218e5fda6c8decfe4dc09aa3f6b708d9423ec8..8aca60550c95c4e3115c2c1b2cb0c41662eadd92 100644 (file)
@@ -1,5 +1,5 @@
 /* Pausing execution of the current thread.
-   Copyright (C) 2007, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2007, 2009-2020 Free Software Foundation, Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2007.
 
    This program is free software: you can redistribute it and/or modify
index 38a1f55a6cf62ca1682ffbd31b6d5d2c1f05513e..884ffd829a24a9d1f6fed79a23adc08dd9af1977 100644 (file)
@@ -1,6 +1,6 @@
 /* stat-related time functions.
 
-   Copyright (C) 2005, 2007, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005, 2007, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 60fe5f6e87eae5dbffab335725ba5f1e3f6d3144..108ce199cc810696f1f66e8d9805fbf145423ba5 100644 (file)
@@ -1,5 +1,5 @@
 /* Core of implementation of fstat and stat for native Windows.
-   Copyright (C) 2017-2019 Free Software Foundation, Inc.
+   Copyright (C) 2017-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
 #if defined _WIN32 && ! defined __CYGWIN__
 
-/* Ensure that <windows.h> defines FILE_ID_INFO.  */
-#undef _WIN32_WINNT
-#define _WIN32_WINNT _WIN32_WINNT_WIN8
+/* Attempt to make <windows.h> define FILE_ID_INFO.
+   But ensure that the redefinition of _WIN32_WINNT does not make us assume
+   Windows Vista or newer when building for an older version of Windows.  */
+#if HAVE_SDKDDKVER_H
+# include <sdkddkver.h>
+# if _WIN32_WINNT >= _WIN32_WINNT_VISTA
+#  define WIN32_ASSUME_VISTA 1
+# else
+#  define WIN32_ASSUME_VISTA 0
+# endif
+# if !defined _WIN32_WINNT || (_WIN32_WINNT < _WIN32_WINNT_WIN8)
+#  undef _WIN32_WINNT
+#  define _WIN32_WINNT _WIN32_WINNT_WIN8
+# endif
+#else
+# define WIN32_ASSUME_VISTA (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
+#endif
 
 #include <sys/types.h>
 #include <sys/stat.h>
 #include "pathmax.h"
 #include "verify.h"
 
+/* Don't assume that UNICODE is not defined.  */
+#undef LoadLibrary
+#define LoadLibrary LoadLibraryA
+#undef GetFinalPathNameByHandle
+#define GetFinalPathNameByHandle GetFinalPathNameByHandleA
+
+/* Older mingw headers do not define VOLUME_NAME_NONE.  */
+#ifndef VOLUME_NAME_NONE
+# define VOLUME_NAME_NONE 4
+#endif
+
+#if !WIN32_ASSUME_VISTA
+
 /* Avoid warnings from gcc -Wcast-function-type.  */
-#define GetProcAddress \
-  (void *) GetProcAddress
+# define GetProcAddress \
+   (void *) GetProcAddress
 
-#if _GL_WINDOWS_STAT_INODES == 2
+# if _GL_WINDOWS_STAT_INODES == 2
 /* GetFileInformationByHandleEx was introduced only in Windows Vista.  */
 typedef DWORD (WINAPI * GetFileInformationByHandleExFuncType) (HANDLE hFile,
                                                                FILE_INFO_BY_HANDLE_CLASS fiClass,
                                                                LPVOID lpBuffer,
                                                                DWORD dwBufferSize);
 static GetFileInformationByHandleExFuncType GetFileInformationByHandleExFunc = NULL;
-#endif
+# endif
 /* GetFinalPathNameByHandle was introduced only in Windows Vista.  */
 typedef DWORD (WINAPI * GetFinalPathNameByHandleFuncType) (HANDLE hFile,
-                                                           LPTSTR lpFilePath,
+                                                           LPSTR lpFilePath,
                                                            DWORD lenFilePath,
                                                            DWORD dwFlags);
 static GetFinalPathNameByHandleFuncType GetFinalPathNameByHandleFunc = NULL;
@@ -64,16 +91,23 @@ initialize (void)
   HMODULE kernel32 = LoadLibrary ("kernel32.dll");
   if (kernel32 != NULL)
     {
-#if _GL_WINDOWS_STAT_INODES == 2
+# if _GL_WINDOWS_STAT_INODES == 2
       GetFileInformationByHandleExFunc =
         (GetFileInformationByHandleExFuncType) GetProcAddress (kernel32, "GetFileInformationByHandleEx");
-#endif
+# endif
       GetFinalPathNameByHandleFunc =
         (GetFinalPathNameByHandleFuncType) GetProcAddress (kernel32, "GetFinalPathNameByHandleA");
     }
   initialized = TRUE;
 }
 
+#else
+
+# define GetFileInformationByHandleExFunc GetFileInformationByHandleEx
+# define GetFinalPathNameByHandleFunc GetFinalPathNameByHandle
+
+#endif
+
 /* Converts a FILETIME to GMT time since 1970-01-01 00:00:00.  */
 #if _GL_WINDOWS_STAT_TIMESPEC
 struct timespec
@@ -132,8 +166,10 @@ _gl_fstat_by_handle (HANDLE h, const char *path, struct stat *buf)
   DWORD type = GetFileType (h);
   if (type == FILE_TYPE_DISK)
     {
+#if !WIN32_ASSUME_VISTA
       if (!initialized)
         initialize ();
+#endif
 
       /* st_mode can be determined through
          GetFileAttributesEx
index 6b961d7ff58fda52f20458bd6b210e8094d8492e..491a754baa124243e3c9708ae6039a2e04a94a01 100644 (file)
@@ -1,5 +1,5 @@
 /* Core of implementation of fstat and stat for native Windows.
-   Copyright (C) 2017-2019 Free Software Foundation, Inc.
+   Copyright (C) 2017-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 1c28aa4529a54c02fa622cf57817031472199b49..9d3965d3ce5aebca61a5777cc1625c04a1aa52c0 100644 (file)
@@ -1,5 +1,5 @@
 /* Work around platform bugs in stat.
-   Copyright (C) 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -65,6 +65,13 @@ orig_stat (const char *filename, struct stat *buf)
 # define WIN32_LEAN_AND_MEAN
 # include <windows.h>
 # include "stat-w32.h"
+/* Don't assume that UNICODE is not defined.  */
+# undef WIN32_FIND_DATA
+# define WIN32_FIND_DATA WIN32_FIND_DATAA
+# undef CreateFile
+# define CreateFile CreateFileA
+# undef FindFirstFile
+# define FindFirstFile FindFirstFileA
 #endif
 
 #ifdef WINDOWS_NATIVE
@@ -113,7 +120,7 @@ rpl_stat (char const *name, struct stat *buf)
      around length limitations
      <https://docs.microsoft.com/en-us/windows/desktop/FileIO/naming-a-file> ?  */
 
-  /* POSIX <http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap04.html#tag_04_13>
+  /* POSIX <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap04.html#tag_04_13>
      specifies: "More than two leading <slash> characters shall be treated as
      a single <slash> character."  */
   if (ISSLASH (name[0]) && ISSLASH (name[1]) && ISSLASH (name[2]))
@@ -375,7 +382,7 @@ rpl_stat (char const *name, struct stat *buf)
 
       case ERROR_ACCESS_DENIED:  /* rname is such as 'C:\System Volume Information\foo'.  */
       case ERROR_SHARING_VIOLATION: /* rname is such as 'C:\pagefile.sys' (second approach only).  */
-                                    /* XXX map to EACCESS or EPERM? */
+                                    /* XXX map to EACCES or EPERM? */
         errno = EACCES;
         break;
 
@@ -398,7 +405,7 @@ rpl_stat (char const *name, struct stat *buf)
         errno = ENAMETOOLONG;
         break;
 
-      case ERROR_DELETE_PENDING: /* XXX map to EACCESS or EPERM? */
+      case ERROR_DELETE_PENDING: /* XXX map to EACCES or EPERM? */
         errno = EPERM;
         break;
 
diff --git a/lib/stdalign.in.h b/lib/stdalign.in.h
new file mode 100644 (file)
index 0000000..b5b63e5
--- /dev/null
@@ -0,0 +1,126 @@
+/* A substitute for ISO C11 <stdalign.h>.
+
+   Copyright 2011-2020 Free Software Foundation, Inc.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3, or (at your option)
+   any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
+
+/* Written by Paul Eggert and Bruno Haible.  */
+
+#ifndef _GL_STDALIGN_H
+#define _GL_STDALIGN_H
+
+/* ISO C11 <stdalign.h> for platforms that lack it.
+
+   References:
+   ISO C11 (latest free draft
+   <http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf>)
+   sections 6.5.3.4, 6.7.5, 7.15.
+   C++11 (latest free draft
+   <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3242.pdf>)
+   section 18.10. */
+
+/* alignof (TYPE), also known as _Alignof (TYPE), yields the alignment
+   requirement of a structure member (i.e., slot or field) that is of
+   type TYPE, as an integer constant expression.
+
+   This differs from GCC's and clang's __alignof__ operator, which can
+   yield a better-performing alignment for an object of that type.  For
+   example, on x86 with GCC and on Linux/x86 with clang,
+   __alignof__ (double) and __alignof__ (long long) are 8, whereas
+   alignof (double) and alignof (long long) are 4 unless the option
+   '-malign-double' is used.
+
+   The result cannot be used as a value for an 'enum' constant, if you
+   want to be portable to HP-UX 10.20 cc and AIX 3.2.5 xlc.
+
+   Include <stddef.h> for offsetof.  */
+#include <stddef.h>
+
+/* FreeBSD 9.1 <sys/cdefs.h>, included by <stddef.h> and lots of other
+   standard headers, defines conflicting implementations of _Alignas
+   and _Alignof that are no better than ours; override them.  */
+#undef _Alignas
+#undef _Alignof
+
+/* GCC releases before GCC 4.9 had a bug in _Alignof.  See GCC bug 52023
+   <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52023>.
+   clang versions < 8.0.0 have the same bug.  */
+#if (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 \
+     || (defined __GNUC__ && __GNUC__ < 4 + (__GNUC_MINOR__ < 9) \
+         && !defined __clang__) \
+     || (defined __clang__ && __clang_major__ < 8))
+# ifdef __cplusplus
+#  if 201103 <= __cplusplus
+#   define _Alignof(type) alignof (type)
+#  else
+   template <class __t> struct __alignof_helper { char __a; __t __b; };
+#   define _Alignof(type) offsetof (__alignof_helper<type>, __b)
+#  endif
+# else
+#  define _Alignof(type) offsetof (struct { char __a; type __b; }, __b)
+# endif
+#endif
+#if ! (defined __cplusplus && 201103 <= __cplusplus)
+# define alignof _Alignof
+#endif
+#define __alignof_is_defined 1
+
+/* alignas (A), also known as _Alignas (A), aligns a variable or type
+   to the alignment A, where A is an integer constant expression.  For
+   example:
+
+      int alignas (8) foo;
+      struct s { int a; int alignas (8) bar; };
+
+   aligns the address of FOO and the offset of BAR to be multiples of 8.
+
+   A should be a power of two that is at least the type's alignment
+   and at most the implementation's alignment limit.  This limit is
+   2**28 on typical GNUish hosts, and 2**13 on MSVC.  To be portable
+   to MSVC through at least version 10.0, A should be an integer
+   constant, as MSVC does not support expressions such as 1 << 3.
+   To be portable to Sun C 5.11, do not align auto variables to
+   anything stricter than their default alignment.
+
+   The following C11 requirements are not supported here:
+
+     - If A is zero, alignas has no effect.
+     - alignas can be used multiple times; the strictest one wins.
+     - alignas (TYPE) is equivalent to alignas (alignof (TYPE)).
+
+   */
+
+#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112
+# if defined __cplusplus && 201103 <= __cplusplus
+#  define _Alignas(a) alignas (a)
+# elif ((defined __APPLE__ && defined __MACH__                  \
+         ? 4 < __GNUC__ + (1 <= __GNUC_MINOR__)                 \
+         : __GNUC__ && !defined __ibmxl__)                      \
+        || (4 <= __clang_major__)                               \
+        || (__ia64 && (61200 <= __HP_cc || 61200 <= __HP_aCC))  \
+        || __ICC || 0x590 <= __SUNPRO_C || 0x0600 <= __xlC__)
+#  define _Alignas(a) __attribute__ ((__aligned__ (a)))
+# elif 1300 <= _MSC_VER
+#  define _Alignas(a) __declspec (align (a))
+# endif
+#endif
+#if ((defined _Alignas && ! (defined __cplusplus && 201103 <= __cplusplus)) \
+     || (defined __STDC_VERSION__ && 201112 <= __STDC_VERSION__))
+# define alignas _Alignas
+#endif
+#if defined alignas || (defined __cplusplus && 201103 <= __cplusplus)
+# define __alignas_is_defined 1
+#endif
+
+#endif /* _GL_STDALIGN_H */
index 5eec8ba40c4f9cdfd8751d9217c298c082b5cd56..8cdc685f916bf1023489b5469d10437e031b37ba 100644 (file)
@@ -1,5 +1,5 @@
 /* Substitute for and wrapper around <stdarg.h>.
-   Copyright (C) 2008-2019 Free Software Foundation, Inc.
+   Copyright (C) 2008-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 8158b009f57244d7574a0998bdc7f45cdb6a01de..baacf98a38b81a2b2e88d40baa37c28088bb8101 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2003, 2006-2019 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2003, 2006-2020 Free Software Foundation, Inc.
    Written by Bruno Haible <haible@clisp.cons.org>, 2001.
 
    This program is free software; you can redistribute it and/or modify
index 5aad1210df0e96187c7ff4a0bbd4a2ac0f292094..87b46d53204a2777d56e4058072da7b629549dc8 100644 (file)
@@ -1,6 +1,6 @@
 /* A substitute for POSIX 2008 <stddef.h>, for platforms that have issues.
 
-   Copyright (C) 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2009-2020 Free Software Foundation, Inc.
 
    This 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,7 +19,7 @@
 
 /*
  * POSIX 2008 <stddef.h> for platforms that have issues.
- * <http://www.opengroup.org/susv3xbd/stddef.h.html>
+ * <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/stddef.h.html>
  */
 
 #if __GNUC__ >= 3
 
 /* Some platforms lack max_align_t.  The check for _GCC_MAX_ALIGN_T is
    a hack in case the configure-time test was done with g++ even though
-   we are currently compiling with gcc.  */
-#if ! (@HAVE_MAX_ALIGN_T@ || defined _GCC_MAX_ALIGN_T)
-# if !GNULIB_defined_max_align_t
+   we are currently compiling with gcc.
+   On MSVC, max_align_t is defined only in C++ mode, after <cstddef> was
+   included.  Its definition is good since it has an alignment of 8 (on x86
+   and x86_64).  */
+#if defined _MSC_VER && defined __cplusplus
+# include <cstddef>
+#else
+# if ! (@HAVE_MAX_ALIGN_T@ || defined _GCC_MAX_ALIGN_T)
+#  if !GNULIB_defined_max_align_t
 /* On the x86, the maximum storage alignment of double, long, etc. is 4,
    but GCC's C11 ABI for x86 says that max_align_t has an alignment of 8,
    and the C11 standard allows this.  Work around this problem by
    using __alignof__ (which returns 8 for double) rather than _Alignof
    (which returns 4), and align each union member accordingly.  */
-#  ifdef __GNUC__
-#   define _GL_STDDEF_ALIGNAS(type) \
-      __attribute__ ((__aligned__ (__alignof__ (type))))
-#  else
-#   define _GL_STDDEF_ALIGNAS(type) /* */
-#  endif
+#   if defined __GNUC__ || (__clang_major__ >= 4)
+#    define _GL_STDDEF_ALIGNAS(type) \
+       __attribute__ ((__aligned__ (__alignof__ (type))))
+#   else
+#    define _GL_STDDEF_ALIGNAS(type) /* */
+#   endif
 typedef union
 {
   char *__p _GL_STDDEF_ALIGNAS (char *);
@@ -104,8 +110,9 @@ typedef union
   long double __ld _GL_STDDEF_ALIGNAS (long double);
   long int __i _GL_STDDEF_ALIGNAS (long int);
 } rpl_max_align_t;
-#  define max_align_t rpl_max_align_t
-#  define GNULIB_defined_max_align_t 1
+#   define max_align_t rpl_max_align_t
+#   define GNULIB_defined_max_align_t 1
+#  endif
 # endif
 #endif
 
index 21dd8d23e3c84e2aecb294c448ee33ab1a34a63c..63fa1aa628f2801cd427771bec1396d27ccac1d7 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2002, 2004-2019 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2002, 2004-2020 Free Software Foundation, Inc.
    Written by Paul Eggert, Bruno Haible, Sam Steingold, Peter Burwood.
    This file is part of gnulib.
 
@@ -17,7 +17,7 @@
 
 /*
  * ISO C 99 <stdint.h> for platforms that lack it.
- * <http://www.opengroup.org/susv3xbd/stdint.h.html>
+ * <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/stdint.h.html>
  */
 
 #ifndef _@GUARD_PREFIX@_STDINT_H
@@ -188,7 +188,7 @@ typedef long int gl_int64_t;
 typedef __int64 gl_int64_t;
 #   define int64_t gl_int64_t
 #   define GL_INT64_T
-#  elif @HAVE_LONG_LONG_INT@
+#  else
 #   undef int64_t
 typedef long long int gl_int64_t;
 #   define int64_t gl_int64_t
@@ -209,7 +209,7 @@ typedef unsigned long int gl_uint64_t;
 typedef unsigned __int64 gl_uint64_t;
 #   define uint64_t gl_uint64_t
 #   define GL_UINT64_T
-#  elif @HAVE_UNSIGNED_LONG_LONG_INT@
+#  else
 #   undef uint64_t
 typedef unsigned long long int gl_uint64_t;
 #   define uint64_t gl_uint64_t
@@ -299,16 +299,25 @@ typedef gl_uint_fast32_t gl_uint_fast16_t;
 
 /* 7.18.1.4. Integer types capable of holding object pointers */
 
-/* kLIBC's stdint.h defines _INTPTR_T_DECLARED and needs its own
+/* kLIBC's <stdint.h> defines _INTPTR_T_DECLARED and needs its own
    definitions of intptr_t and uintptr_t (which use int and unsigned)
-   to avoid clashes with declarations of system functions like sbrk.  */
-# ifndef _INTPTR_T_DECLARED
-# undef intptr_t
-# undef uintptr_t
+   to avoid clashes with declarations of system functions like sbrk.
+   Similarly, MinGW WSL-5.4.1 <stdint.h> needs its own intptr_t and
+   uintptr_t to avoid conflicting declarations of system functions like
+   _findclose in <io.h>.  */
+# if !((defined __KLIBC__ && defined _INTPTR_T_DECLARED) \
+       || defined __MINGW32__)
+#  undef intptr_t
+#  undef uintptr_t
+#  ifdef _WIN64
+typedef long long int gl_intptr_t;
+typedef unsigned long long int gl_uintptr_t;
+#  else
 typedef long int gl_intptr_t;
 typedef unsigned long int gl_uintptr_t;
-# define intptr_t gl_intptr_t
-# define uintptr_t gl_uintptr_t
+#  endif
+#  define intptr_t gl_intptr_t
+#  define uintptr_t gl_uintptr_t
 # endif
 
 /* 7.18.1.5. Greatest-width integer types */
@@ -323,7 +332,7 @@ typedef unsigned long int gl_uintptr_t;
 # ifndef INTMAX_MAX
 #  undef INTMAX_C
 #  undef intmax_t
-#  if @HAVE_LONG_LONG_INT@ && LONG_MAX >> 30 == 1
+#  if LONG_MAX >> 30 == 1
 typedef long long int gl_intmax_t;
 #   define intmax_t gl_intmax_t
 #  elif defined GL_INT64_T
@@ -337,7 +346,7 @@ typedef long int gl_intmax_t;
 # ifndef UINTMAX_MAX
 #  undef UINTMAX_C
 #  undef uintmax_t
-#  if @HAVE_UNSIGNED_LONG_LONG_INT@ && ULONG_MAX >> 31 == 1
+#  if ULONG_MAX >> 31 == 1
 typedef unsigned long long int gl_uintmax_t;
 #   define uintmax_t gl_uintmax_t
 #  elif defined GL_UINT64_T
@@ -485,9 +494,15 @@ typedef int _verify_intmax_size[sizeof (intmax_t) == sizeof (uintmax_t)
 # undef INTPTR_MIN
 # undef INTPTR_MAX
 # undef UINTPTR_MAX
-# define INTPTR_MIN  LONG_MIN
-# define INTPTR_MAX  LONG_MAX
-# define UINTPTR_MAX  ULONG_MAX
+# ifdef _WIN64
+#  define INTPTR_MIN  LLONG_MIN
+#  define INTPTR_MAX  LLONG_MAX
+#  define UINTPTR_MAX  ULLONG_MAX
+# else
+#  define INTPTR_MIN  LONG_MIN
+#  define INTPTR_MAX  LONG_MAX
+#  define UINTPTR_MAX  ULONG_MAX
+# endif
 
 /* 7.18.2.5. Limits of greatest-width integer types */
 
@@ -586,17 +601,21 @@ typedef int _verify_intmax_size[sizeof (intmax_t) == sizeof (uintmax_t)
    _STDINT_MAX (@HAVE_SIGNED_WCHAR_T@, @BITSIZEOF_WCHAR_T@, 0@WCHAR_T_SUFFIX@)
 
 /* wint_t limits */
-# undef WINT_MIN
-# undef WINT_MAX
-# if @HAVE_SIGNED_WINT_T@
-#  define WINT_MIN  \
-    _STDINT_SIGNED_MIN (@BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@)
-# else
-#  define WINT_MIN  \
-    _STDINT_UNSIGNED_MIN (@BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@)
+/* If gnulib's <wchar.h> or <wctype.h> overrides wint_t, @WINT_T_SUFFIX@ is not
+   accurate, therefore use the definitions from above.  */
+# if !@GNULIB_OVERRIDES_WINT_T@
+#  undef WINT_MIN
+#  undef WINT_MAX
+#  if @HAVE_SIGNED_WINT_T@
+#   define WINT_MIN  \
+     _STDINT_SIGNED_MIN (@BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@)
+#  else
+#   define WINT_MIN  \
+     _STDINT_UNSIGNED_MIN (@BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@)
+#  endif
+#  define WINT_MAX  \
+    _STDINT_MAX (@HAVE_SIGNED_WINT_T@, @BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@)
 # endif
-# define WINT_MAX  \
-   _STDINT_MAX (@HAVE_SIGNED_WINT_T@, @BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@)
 
 /* 7.18.4. Macros for integer constants */
 
@@ -627,21 +646,21 @@ typedef int _verify_intmax_size[sizeof (intmax_t) == sizeof (uintmax_t)
 #  define INT64_C(x) x##L
 # elif defined _MSC_VER
 #  define INT64_C(x) x##i64
-# elif @HAVE_LONG_LONG_INT@
+# else
 #  define INT64_C(x) x##LL
 # endif
 # if ULONG_MAX >> 31 >> 31 >> 1 == 1
 #  define UINT64_C(x) x##UL
 # elif defined _MSC_VER
 #  define UINT64_C(x) x##ui64
-# elif @HAVE_UNSIGNED_LONG_LONG_INT@
+# else
 #  define UINT64_C(x) x##ULL
 # endif
 
 /* 7.18.4.2. Macros for greatest-width integer constants */
 
 # ifndef INTMAX_C
-#  if @HAVE_LONG_LONG_INT@ && LONG_MAX >> 30 == 1
+#  if LONG_MAX >> 30 == 1
 #   define INTMAX_C(x)   x##LL
 #  elif defined GL_INT64_T
 #   define INTMAX_C(x)   INT64_C(x)
@@ -651,7 +670,7 @@ typedef int _verify_intmax_size[sizeof (intmax_t) == sizeof (uintmax_t)
 # endif
 
 # ifndef UINTMAX_C
-#  if @HAVE_UNSIGNED_LONG_LONG_INT@ && ULONG_MAX >> 31 == 1
+#  if ULONG_MAX >> 31 == 1
 #   define UINTMAX_C(x)  x##ULL
 #  elif defined GL_UINT64_T
 #   define UINTMAX_C(x)  UINT64_C(x)
index 4260468b612e80bb0452efc3c337f8a7edd81a5b..15066aa59f8ea1ae42fb28fd409aa599a8c60f49 100644 (file)
@@ -1,5 +1,5 @@
 /* Implementation details of FILE streams.
-   Copyright (C) 2007-2008, 2010-2019 Free Software Foundation, Inc.
+   Copyright (C) 2007-2008, 2010-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the same implementation of stdio extension API, except that some fields
    have different naming conventions, or their access requires some casts.  */
 
-/* Glibc 2.28 made _IO_IN_BACKUP private.  For now, work around this
-   problem by defining it ourselves.  FIXME: Do not rely on glibc
+/* Glibc 2.28 made _IO_UNBUFFERED and _IO_IN_BACKUP private.  For now, work
+   around this problem by defining them ourselves.  FIXME: Do not rely on glibc
    internals.  */
-#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN
-# define _IO_IN_BACKUP 0x100
+#if defined _IO_EOF_SEEN
+# if !defined _IO_UNBUFFERED
+#  define _IO_UNBUFFERED 0x2
+# endif
+# if !defined _IO_IN_BACKUP
+#  define _IO_IN_BACKUP 0x100
+# endif
 #endif
 
 /* BSD stdio derived implementations.  */
 #  define fp_ fp
 # endif
 
-# if defined _SCO_DS                /* OpenServer */
+# if defined _SCO_DS || (defined __SCO_VERSION__ || defined __sysv5__)  /* OpenServer 5, OpenServer 6, UnixWare 7 */
 #  define _cnt __cnt
 #  define _ptr __ptr
 #  define _base __base
index 4a8aa55528b1416625ea3ac008ee968dc6999adc..458036b3441c2dfd35d48029f999012bf79f882a 100644 (file)
@@ -1,6 +1,6 @@
 /* A GNU-like <stdio.h>.
 
-   Copyright (C) 2004, 2007-2019 Free Software Foundation, Inc.
+   Copyright (C) 2004, 2007-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    We enable _GL_ATTRIBUTE_FORMAT only if these are supported too, because
    gnulib and libintl do '#define printf __printf__' when they override
    the 'printf' function.  */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
-# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
+#ifndef _GL_ATTRIBUTE_FORMAT
+# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) || defined __clang__
+#  define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
+# else
+#  define _GL_ATTRIBUTE_FORMAT(spec) /* empty */
+# endif
+#endif
+
+/* An __attribute__ __format__ specifier for a function that takes a format
+   string and arguments, where the format string directives are the ones
+   standardized by ISO C99 and POSIX.
+   _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD  */
+/* __gnu_printf__ is supported in GCC >= 4.4.  */
+#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)
+# define _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD __gnu_printf__
+#else
+# define _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD __printf__
+#endif
+
+/* An __attribute__ __format__ specifier for a function that takes a format
+   string and arguments, where the format string directives are the ones of the
+   system printf(), rather than the ones standardized by ISO C99 and POSIX.
+   _GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM  */
+/* On mingw, Gnulib sets __USE_MINGW_ANSI_STDIO in order to get closer to
+   the standards.  The macro GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU indicates
+   whether this change is effective.  On older mingw, it is not.  */
+#if GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU
+# define _GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD
 #else
-# define _GL_ATTRIBUTE_FORMAT(spec) /* empty */
+# define _GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM __printf__
 #endif
 
-/* _GL_ATTRIBUTE_FORMAT_PRINTF
+/* _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD
    indicates to GCC that the function takes a format string and arguments,
    where the format string directives are the ones standardized by ISO C99
    and POSIX.  */
-#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)
-# define _GL_ATTRIBUTE_FORMAT_PRINTF(formatstring_parameter, first_argument) \
-   _GL_ATTRIBUTE_FORMAT ((__gnu_printf__, formatstring_parameter, first_argument))
-#else
-# define _GL_ATTRIBUTE_FORMAT_PRINTF(formatstring_parameter, first_argument) \
-   _GL_ATTRIBUTE_FORMAT ((__printf__, formatstring_parameter, first_argument))
-#endif
+#define _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD(formatstring_parameter, first_argument) \
+  _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, formatstring_parameter, first_argument))
 
-/* _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM is like _GL_ATTRIBUTE_FORMAT_PRINTF,
+/* _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM is like _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD,
    except that it indicates to GCC that the supported format string directives
    are the ones of the system printf(), rather than the ones standardized by
    ISO C99 and POSIX.  */
-#if GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU
-# define _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM(formatstring_parameter, first_argument) \
-  _GL_ATTRIBUTE_FORMAT_PRINTF (formatstring_parameter, first_argument)
-#else
-# define _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM(formatstring_parameter, first_argument) \
-  _GL_ATTRIBUTE_FORMAT ((__printf__, formatstring_parameter, first_argument))
-#endif
+#define _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM(formatstring_parameter, first_argument) \
+  _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM, formatstring_parameter, first_argument))
 
 /* _GL_ATTRIBUTE_FORMAT_SCANF
    indicates to GCC that the function takes a format string and arguments,
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   define dprintf rpl_dprintf
 #  endif
-_GL_FUNCDECL_RPL (dprintf, int, (int fd, const char *format, ...)
-                                _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
+_GL_FUNCDECL_RPL (dprintf, int, (int fd, const char *restrict format, ...)
+                                _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
                                 _GL_ARG_NONNULL ((2)));
-_GL_CXXALIAS_RPL (dprintf, int, (int fd, const char *format, ...));
+_GL_CXXALIAS_RPL (dprintf, int, (int fd, const char *restrict format, ...));
 # else
 #  if !@HAVE_DPRINTF@
-_GL_FUNCDECL_SYS (dprintf, int, (int fd, const char *format, ...)
-                                _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
+_GL_FUNCDECL_SYS (dprintf, int, (int fd, const char *restrict format, ...)
+                                _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
                                 _GL_ARG_NONNULL ((2)));
 #  endif
-_GL_CXXALIAS_SYS (dprintf, int, (int fd, const char *format, ...));
+_GL_CXXALIAS_SYS (dprintf, int, (int fd, const char *restrict format, ...));
 # endif
 _GL_CXXALIASWARN (dprintf);
 #elif defined GNULIB_POSIXCHECK
@@ -203,7 +219,9 @@ _GL_CXXALIAS_RPL (fclose, int, (FILE *stream));
 # else
 _GL_CXXALIAS_SYS (fclose, int, (FILE *stream));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (fclose);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef fclose
 /* Assume fclose is always declared.  */
@@ -211,6 +229,29 @@ _GL_WARN_ON_USE (fclose, "fclose is not always POSIX compliant - "
                  "use gnulib module fclose for portable POSIX compliance");
 #endif
 
+/* On native Windows, map 'fcloseall' to '_fcloseall', so that -loldnames is
+   not required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::fcloseall on all platforms that have
+   it.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef fcloseall
+#  define fcloseall _fcloseall
+# endif
+_GL_CXXALIAS_MDA (fcloseall, int, (void));
+#else
+# if @HAVE_DECL_FCLOSEALL@
+#  if defined __FreeBSD__
+_GL_CXXALIAS_SYS (fcloseall, void, (void));
+#  else
+_GL_CXXALIAS_SYS (fcloseall, int, (void));
+#  endif
+# endif
+#endif
+#if (defined _WIN32 && !defined __CYGWIN__) || @HAVE_DECL_FCLOSEALL@
+_GL_CXXALIASWARN (fcloseall);
+#endif
+
 #if @GNULIB_FDOPEN@
 # if @REPLACE_FDOPEN@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@@ -220,6 +261,12 @@ _GL_WARN_ON_USE (fclose, "fclose is not always POSIX compliant - "
 _GL_FUNCDECL_RPL (fdopen, FILE *, (int fd, const char *mode)
                                   _GL_ARG_NONNULL ((2)));
 _GL_CXXALIAS_RPL (fdopen, FILE *, (int fd, const char *mode));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef fdopen
+#   define fdopen _fdopen
+#  endif
+_GL_CXXALIAS_MDA (fdopen, FILE *, (int fd, const char *mode));
 # else
 _GL_CXXALIAS_SYS (fdopen, FILE *, (int fd, const char *mode));
 # endif
@@ -229,6 +276,20 @@ _GL_CXXALIASWARN (fdopen);
 /* Assume fdopen is always declared.  */
 _GL_WARN_ON_USE (fdopen, "fdopen on native Windows platforms is not POSIX compliant - "
                  "use gnulib module fdopen for portability");
+#else
+/* On native Windows, map 'fdopen' to '_fdopen', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::fdopen always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef fdopen
+#   define fdopen _fdopen
+#  endif
+_GL_CXXALIAS_MDA (fdopen, FILE *, (int fd, const char *mode));
+# else
+_GL_CXXALIAS_SYS (fdopen, FILE *, (int fd, const char *mode));
+# endif
+_GL_CXXALIASWARN (fdopen);
 #endif
 
 #if @GNULIB_FFLUSH@
@@ -247,7 +308,9 @@ _GL_CXXALIAS_RPL (fflush, int, (FILE *gl_stream));
 # else
 _GL_CXXALIAS_SYS (fflush, int, (FILE *gl_stream));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (fflush);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef fflush
 /* Assume fflush is always declared.  */
@@ -266,7 +329,9 @@ _GL_CXXALIAS_RPL (fgetc, int, (FILE *stream));
 # else
 _GL_CXXALIAS_SYS (fgetc, int, (FILE *stream));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (fgetc);
+# endif
 #endif
 
 #if @GNULIB_FGETS@
@@ -275,14 +340,33 @@ _GL_CXXALIASWARN (fgetc);
 #   undef fgets
 #   define fgets rpl_fgets
 #  endif
-_GL_FUNCDECL_RPL (fgets, char *, (char *s, int n, FILE *stream)
-                                 _GL_ARG_NONNULL ((1, 3)));
-_GL_CXXALIAS_RPL (fgets, char *, (char *s, int n, FILE *stream));
+_GL_FUNCDECL_RPL (fgets, char *,
+                  (char *restrict s, int n, FILE *restrict stream)
+                  _GL_ARG_NONNULL ((1, 3)));
+_GL_CXXALIAS_RPL (fgets, char *,
+                  (char *restrict s, int n, FILE *restrict stream));
 # else
-_GL_CXXALIAS_SYS (fgets, char *, (char *s, int n, FILE *stream));
+_GL_CXXALIAS_SYS (fgets, char *,
+                  (char *restrict s, int n, FILE *restrict stream));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (fgets);
+# endif
+#endif
+
+/* On native Windows, map 'fileno' to '_fileno', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::fileno always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef fileno
+#  define fileno _fileno
+# endif
+_GL_CXXALIAS_MDA (fileno, int, (FILE *restrict stream));
+#else
+_GL_CXXALIAS_SYS (fileno, int, (FILE *restrict stream));
 #endif
+_GL_CXXALIASWARN (fileno);
 
 #if @GNULIB_FOPEN@
 # if @REPLACE_FOPEN@
@@ -290,13 +374,18 @@ _GL_CXXALIASWARN (fgets);
 #   undef fopen
 #   define fopen rpl_fopen
 #  endif
-_GL_FUNCDECL_RPL (fopen, FILE *, (const char *filename, const char *mode)
-                                 _GL_ARG_NONNULL ((1, 2)));
-_GL_CXXALIAS_RPL (fopen, FILE *, (const char *filename, const char *mode));
+_GL_FUNCDECL_RPL (fopen, FILE *,
+                  (const char *restrict filename, const char *restrict mode)
+                  _GL_ARG_NONNULL ((1, 2)));
+_GL_CXXALIAS_RPL (fopen, FILE *,
+                  (const char *restrict filename, const char *restrict mode));
 # else
-_GL_CXXALIAS_SYS (fopen, FILE *, (const char *filename, const char *mode));
+_GL_CXXALIAS_SYS (fopen, FILE *,
+                  (const char *restrict filename, const char *restrict mode));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (fopen);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef fopen
 /* Assume fopen is always declared.  */
@@ -312,19 +401,25 @@ _GL_WARN_ON_USE (fopen, "fopen on native Windows platforms is not POSIX complian
 #  endif
 #  define GNULIB_overrides_fprintf 1
 #  if @GNULIB_FPRINTF_POSIX@ || @GNULIB_VFPRINTF_POSIX@
-_GL_FUNCDECL_RPL (fprintf, int, (FILE *fp, const char *format, ...)
-                                _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
-                                _GL_ARG_NONNULL ((1, 2)));
+_GL_FUNCDECL_RPL (fprintf, int,
+                  (FILE *restrict fp, const char *restrict format, ...)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
+                  _GL_ARG_NONNULL ((1, 2)));
 #  else
-_GL_FUNCDECL_RPL (fprintf, int, (FILE *fp, const char *format, ...)
-                                _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (2, 3)
-                                _GL_ARG_NONNULL ((1, 2)));
+_GL_FUNCDECL_RPL (fprintf, int,
+                  (FILE *restrict fp, const char *restrict format, ...)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (2, 3)
+                  _GL_ARG_NONNULL ((1, 2)));
 #  endif
-_GL_CXXALIAS_RPL (fprintf, int, (FILE *fp, const char *format, ...));
+_GL_CXXALIAS_RPL (fprintf, int,
+                  (FILE *restrict fp, const char *restrict format, ...));
 # else
-_GL_CXXALIAS_SYS (fprintf, int, (FILE *fp, const char *format, ...));
+_GL_CXXALIAS_SYS (fprintf, int,
+                  (FILE *restrict fp, const char *restrict format, ...));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (fprintf);
+# endif
 #endif
 #if !@GNULIB_FPRINTF_POSIX@ && defined GNULIB_POSIXCHECK
 # if !GNULIB_overrides_fprintf
@@ -375,7 +470,9 @@ _GL_CXXALIAS_RPL (fputc, int, (int c, FILE *stream));
 # else
 _GL_CXXALIAS_SYS (fputc, int, (int c, FILE *stream));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (fputc);
+# endif
 #endif
 
 #if @GNULIB_FPUTS@
@@ -384,13 +481,18 @@ _GL_CXXALIASWARN (fputc);
 #   undef fputs
 #   define fputs rpl_fputs
 #  endif
-_GL_FUNCDECL_RPL (fputs, int, (const char *string, FILE *stream)
-                              _GL_ARG_NONNULL ((1, 2)));
-_GL_CXXALIAS_RPL (fputs, int, (const char *string, FILE *stream));
+_GL_FUNCDECL_RPL (fputs, int,
+                  (const char *restrict string, FILE *restrict stream)
+                  _GL_ARG_NONNULL ((1, 2)));
+_GL_CXXALIAS_RPL (fputs, int,
+                  (const char *restrict string, FILE *restrict stream));
 # else
-_GL_CXXALIAS_SYS (fputs, int, (const char *string, FILE *stream));
+_GL_CXXALIAS_SYS (fputs, int,
+                  (const char *restrict string, FILE *restrict stream));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (fputs);
+# endif
 #endif
 
 #if @GNULIB_FREAD@
@@ -399,13 +501,21 @@ _GL_CXXALIASWARN (fputs);
 #   undef fread
 #   define fread rpl_fread
 #  endif
-_GL_FUNCDECL_RPL (fread, size_t, (void *ptr, size_t s, size_t n, FILE *stream)
-                                 _GL_ARG_NONNULL ((4)));
-_GL_CXXALIAS_RPL (fread, size_t, (void *ptr, size_t s, size_t n, FILE *stream));
+_GL_FUNCDECL_RPL (fread, size_t,
+                  (void *restrict ptr, size_t s, size_t n,
+                   FILE *restrict stream)
+                  _GL_ARG_NONNULL ((4)));
+_GL_CXXALIAS_RPL (fread, size_t,
+                  (void *restrict ptr, size_t s, size_t n,
+                   FILE *restrict stream));
 # else
-_GL_CXXALIAS_SYS (fread, size_t, (void *ptr, size_t s, size_t n, FILE *stream));
+_GL_CXXALIAS_SYS (fread, size_t,
+                  (void *restrict ptr, size_t s, size_t n,
+                   FILE *restrict stream));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (fread);
+# endif
 #endif
 
 #if @GNULIB_FREOPEN@
@@ -415,15 +525,20 @@ _GL_CXXALIASWARN (fread);
 #   define freopen rpl_freopen
 #  endif
 _GL_FUNCDECL_RPL (freopen, FILE *,
-                  (const char *filename, const char *mode, FILE *stream)
+                  (const char *restrict filename, const char *restrict mode,
+                   FILE *restrict stream)
                   _GL_ARG_NONNULL ((2, 3)));
 _GL_CXXALIAS_RPL (freopen, FILE *,
-                  (const char *filename, const char *mode, FILE *stream));
+                  (const char *restrict filename, const char *restrict mode,
+                   FILE *restrict stream));
 # else
 _GL_CXXALIAS_SYS (freopen, FILE *,
-                  (const char *filename, const char *mode, FILE *stream));
+                  (const char *restrict filename, const char *restrict mode,
+                   FILE *restrict stream));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (freopen);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef freopen
 /* Assume freopen is always declared.  */
@@ -438,14 +553,19 @@ _GL_WARN_ON_USE (freopen,
 #   undef fscanf
 #   define fscanf rpl_fscanf
 #  endif
-_GL_FUNCDECL_RPL (fscanf, int, (FILE *stream, const char *format, ...)
-                               _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (2, 3)
-                               _GL_ARG_NONNULL ((1, 2)));
-_GL_CXXALIAS_RPL (fscanf, int, (FILE *stream, const char *format, ...));
+_GL_FUNCDECL_RPL (fscanf, int,
+                  (FILE *restrict stream, const char *restrict format, ...)
+                  _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (2, 3)
+                  _GL_ARG_NONNULL ((1, 2)));
+_GL_CXXALIAS_RPL (fscanf, int,
+                  (FILE *restrict stream, const char *restrict format, ...));
 # else
-_GL_CXXALIAS_SYS (fscanf, int, (FILE *stream, const char *format, ...));
+_GL_CXXALIAS_SYS (fscanf, int,
+                  (FILE *restrict stream, const char *restrict format, ...));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (fscanf);
+# endif
 #endif
 
 
@@ -496,7 +616,9 @@ _GL_CXXALIAS_RPL (fseek, int, (FILE *fp, long offset, int whence));
 # else
 _GL_CXXALIAS_SYS (fseek, int, (FILE *fp, long offset, int whence));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (fseek);
+# endif
 #endif
 
 #if @GNULIB_FSEEKO@
@@ -559,7 +681,9 @@ _GL_CXXALIAS_RPL (ftell, long, (FILE *fp));
 # else
 _GL_CXXALIAS_SYS (ftell, long, (FILE *fp));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (ftell);
+# endif
 #endif
 
 #if @GNULIB_FTELLO@
@@ -608,13 +732,16 @@ _GL_WARN_ON_USE (ftell, "ftell cannot handle files larger than 4 GB "
 #   define fwrite rpl_fwrite
 #  endif
 _GL_FUNCDECL_RPL (fwrite, size_t,
-                  (const void *ptr, size_t s, size_t n, FILE *stream)
+                  (const void *restrict ptr, size_t s, size_t n,
+                   FILE *restrict stream)
                   _GL_ARG_NONNULL ((1, 4)));
 _GL_CXXALIAS_RPL (fwrite, size_t,
-                  (const void *ptr, size_t s, size_t n, FILE *stream));
+                  (const void *restrict ptr, size_t s, size_t n,
+                   FILE *restrict stream));
 # else
 _GL_CXXALIAS_SYS (fwrite, size_t,
-                  (const void *ptr, size_t s, size_t n, FILE *stream));
+                  (const void *restrict ptr, size_t s, size_t n,
+                   FILE *restrict stream));
 
 /* Work around bug 11959 when fortifying glibc 2.4 through 2.15
    <https://sourceware.org/bugzilla/show_bug.cgi?id=11959>,
@@ -639,7 +766,9 @@ extern size_t __REDIRECT (rpl_fwrite_unlocked,
 #   define fwrite_unlocked rpl_fwrite_unlocked
 #  endif
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (fwrite);
+# endif
 #endif
 
 #if @GNULIB_GETC@
@@ -653,7 +782,9 @@ _GL_CXXALIAS_RPL_1 (getc, rpl_fgetc, int, (FILE *stream));
 # else
 _GL_CXXALIAS_SYS (getc, int, (FILE *stream));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (getc);
+# endif
 #endif
 
 #if @GNULIB_GETCHAR@
@@ -667,7 +798,9 @@ _GL_CXXALIAS_RPL (getchar, int, (void));
 # else
 _GL_CXXALIAS_SYS (getchar, int, (void));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (getchar);
+# endif
 #endif
 
 #if @GNULIB_GETDELIM@
@@ -683,22 +816,26 @@ _GL_CXXALIASWARN (getchar);
 #   define getdelim rpl_getdelim
 #  endif
 _GL_FUNCDECL_RPL (getdelim, ssize_t,
-                  (char **lineptr, size_t *linesize, int delimiter,
-                   FILE *stream)
+                  (char **restrict lineptr, size_t *restrict linesize,
+                   int delimiter,
+                   FILE *restrict stream)
                   _GL_ARG_NONNULL ((1, 2, 4)));
 _GL_CXXALIAS_RPL (getdelim, ssize_t,
-                  (char **lineptr, size_t *linesize, int delimiter,
-                   FILE *stream));
+                  (char **restrict lineptr, size_t *restrict linesize,
+                   int delimiter,
+                   FILE *restrict stream));
 # else
 #  if !@HAVE_DECL_GETDELIM@
 _GL_FUNCDECL_SYS (getdelim, ssize_t,
-                  (char **lineptr, size_t *linesize, int delimiter,
-                   FILE *stream)
+                  (char **restrict lineptr, size_t *restrict linesize,
+                   int delimiter,
+                   FILE *restrict stream)
                   _GL_ARG_NONNULL ((1, 2, 4)));
 #  endif
 _GL_CXXALIAS_SYS (getdelim, ssize_t,
-                  (char **lineptr, size_t *linesize, int delimiter,
-                   FILE *stream));
+                  (char **restrict lineptr, size_t *restrict linesize,
+                   int delimiter,
+                   FILE *restrict stream));
 # endif
 _GL_CXXALIASWARN (getdelim);
 #elif defined GNULIB_POSIXCHECK
@@ -722,18 +859,22 @@ _GL_WARN_ON_USE (getdelim, "getdelim is unportable - "
 #   define getline rpl_getline
 #  endif
 _GL_FUNCDECL_RPL (getline, ssize_t,
-                  (char **lineptr, size_t *linesize, FILE *stream)
+                  (char **restrict lineptr, size_t *restrict linesize,
+                   FILE *restrict stream)
                   _GL_ARG_NONNULL ((1, 2, 3)));
 _GL_CXXALIAS_RPL (getline, ssize_t,
-                  (char **lineptr, size_t *linesize, FILE *stream));
+                  (char **restrict lineptr, size_t *restrict linesize,
+                   FILE *restrict stream));
 # else
 #  if !@HAVE_DECL_GETLINE@
 _GL_FUNCDECL_SYS (getline, ssize_t,
-                  (char **lineptr, size_t *linesize, FILE *stream)
+                  (char **restrict lineptr, size_t *restrict linesize,
+                   FILE *restrict stream)
                   _GL_ARG_NONNULL ((1, 2, 3)));
 #  endif
 _GL_CXXALIAS_SYS (getline, ssize_t,
-                  (char **lineptr, size_t *linesize, FILE *stream));
+                  (char **restrict lineptr, size_t *restrict linesize,
+                   FILE *restrict stream));
 # endif
 # if @HAVE_DECL_GETLINE@
 _GL_CXXALIASWARN (getline);
@@ -754,6 +895,20 @@ _GL_WARN_ON_USE (getline, "getline is unportable - "
 _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
 #endif
 
+/* On native Windows, map 'getw' to '_getw', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::getw always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef getw
+#  define getw _getw
+# endif
+_GL_CXXALIAS_MDA (getw, int, (FILE *restrict stream));
+#else
+_GL_CXXALIAS_SYS (getw, int, (FILE *restrict stream));
+#endif
+_GL_CXXALIASWARN (getw);
+
 #if @GNULIB_OBSTACK_PRINTF@ || @GNULIB_OBSTACK_PRINTF_POSIX@
 struct obstack;
 /* Grow an obstack with formatted output.  Return the number of
@@ -767,7 +922,7 @@ struct obstack;
 #  endif
 _GL_FUNCDECL_RPL (obstack_printf, int,
                   (struct obstack *obs, const char *format, ...)
-                  _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
                   _GL_ARG_NONNULL ((1, 2)));
 _GL_CXXALIAS_RPL (obstack_printf, int,
                   (struct obstack *obs, const char *format, ...));
@@ -775,7 +930,7 @@ _GL_CXXALIAS_RPL (obstack_printf, int,
 #  if !@HAVE_DECL_OBSTACK_PRINTF@
 _GL_FUNCDECL_SYS (obstack_printf, int,
                   (struct obstack *obs, const char *format, ...)
-                  _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
                   _GL_ARG_NONNULL ((1, 2)));
 #  endif
 _GL_CXXALIAS_SYS (obstack_printf, int,
@@ -788,7 +943,7 @@ _GL_CXXALIASWARN (obstack_printf);
 #  endif
 _GL_FUNCDECL_RPL (obstack_vprintf, int,
                   (struct obstack *obs, const char *format, va_list args)
-                  _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
                   _GL_ARG_NONNULL ((1, 2)));
 _GL_CXXALIAS_RPL (obstack_vprintf, int,
                   (struct obstack *obs, const char *format, va_list args));
@@ -796,7 +951,7 @@ _GL_CXXALIAS_RPL (obstack_vprintf, int,
 #  if !@HAVE_DECL_OBSTACK_PRINTF@
 _GL_FUNCDECL_SYS (obstack_vprintf, int,
                   (struct obstack *obs, const char *format, va_list args)
-                  _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
                   _GL_ARG_NONNULL ((1, 2)));
 #  endif
 _GL_CXXALIAS_SYS (obstack_vprintf, int,
@@ -832,7 +987,9 @@ _GL_CXXALIAS_RPL (perror, void, (const char *string));
 # else
 _GL_CXXALIAS_SYS (perror, void, (const char *string));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (perror);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef perror
 /* Assume perror is always declared.  */
@@ -868,21 +1025,21 @@ _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_NONBLOCKING@ || @GNULIB_STDIO_H_SIGPIPE@))
-#  if defined __GNUC__
+#  if defined __GNUC__ || defined __clang__
 #   if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 /* Don't break __attribute__((format(printf,M,N))).  */
 #    define printf __printf__
 #   endif
 #   if @GNULIB_PRINTF_POSIX@ || @GNULIB_VFPRINTF_POSIX@
 _GL_FUNCDECL_RPL_1 (__printf__, int,
-                    (const char *format, ...)
+                    (const char *restrict format, ...)
                     __asm__ (@ASM_SYMBOL_PREFIX@
                              _GL_STDIO_MACROEXPAND_AND_STRINGIZE(rpl_printf))
-                    _GL_ATTRIBUTE_FORMAT_PRINTF (1, 2)
+                    _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (1, 2)
                     _GL_ARG_NONNULL ((1)));
 #   else
 _GL_FUNCDECL_RPL_1 (__printf__, int,
-                    (const char *format, ...)
+                    (const char *restrict format, ...)
                     __asm__ (@ASM_SYMBOL_PREFIX@
                              _GL_STDIO_MACROEXPAND_AND_STRINGIZE(rpl_printf))
                     _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (1, 2)
@@ -894,16 +1051,18 @@ _GL_CXXALIAS_RPL_1 (printf, __printf__, int, (const char *format, ...));
 #    define printf rpl_printf
 #   endif
 _GL_FUNCDECL_RPL (printf, int,
-                  (const char *format, ...)
-                  _GL_ATTRIBUTE_FORMAT_PRINTF (1, 2)
+                  (const char *restrict format, ...)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (1, 2)
                   _GL_ARG_NONNULL ((1)));
-_GL_CXXALIAS_RPL (printf, int, (const char *format, ...));
+_GL_CXXALIAS_RPL (printf, int, (const char *restrict format, ...));
 #  endif
 #  define GNULIB_overrides_printf 1
 # else
-_GL_CXXALIAS_SYS (printf, int, (const char *format, ...));
+_GL_CXXALIAS_SYS (printf, int, (const char *restrict format, ...));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (printf);
+# endif
 #endif
 #if !@GNULIB_PRINTF_POSIX@ && defined GNULIB_POSIXCHECK
 # if !GNULIB_overrides_printf
@@ -926,7 +1085,9 @@ _GL_CXXALIAS_RPL_1 (putc, rpl_fputc, int, (int c, FILE *stream));
 # else
 _GL_CXXALIAS_SYS (putc, int, (int c, FILE *stream));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (putc);
+# endif
 #endif
 
 #if @GNULIB_PUTCHAR@
@@ -940,7 +1101,9 @@ _GL_CXXALIAS_RPL (putchar, int, (int c));
 # else
 _GL_CXXALIAS_SYS (putchar, int, (int c));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (putchar);
+# endif
 #endif
 
 #if @GNULIB_PUTS@
@@ -954,9 +1117,25 @@ _GL_CXXALIAS_RPL (puts, int, (const char *string));
 # else
 _GL_CXXALIAS_SYS (puts, int, (const char *string));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (puts);
+# endif
 #endif
 
+/* On native Windows, map 'putw' to '_putw', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::putw always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef putw
+#  define putw _putw
+# endif
+_GL_CXXALIAS_MDA (putw, int, (int w, FILE *restrict stream));
+#else
+_GL_CXXALIAS_SYS (putw, int, (int w, FILE *restrict stream));
+#endif
+_GL_CXXALIASWARN (putw);
+
 #if @GNULIB_REMOVE@
 # if @REPLACE_REMOVE@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@@ -968,7 +1147,9 @@ _GL_CXXALIAS_RPL (remove, int, (const char *name));
 # else
 _GL_CXXALIAS_SYS (remove, int, (const char *name));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (remove);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef remove
 /* Assume remove is always declared.  */
@@ -991,7 +1172,9 @@ _GL_CXXALIAS_RPL (rename, int,
 _GL_CXXALIAS_SYS (rename, int,
                   (const char *old_filename, const char *new_filename));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (rename);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef rename
 /* Assume rename is always declared.  */
@@ -1030,33 +1213,35 @@ _GL_WARN_ON_USE (renameat, "renameat is not portable - "
 
 #if @GNULIB_SCANF@
 # if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@
-#  if defined __GNUC__
+#  if defined __GNUC__ || defined __clang__
 #   if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #    undef scanf
 /* Don't break __attribute__((format(scanf,M,N))).  */
 #    define scanf __scanf__
 #   endif
 _GL_FUNCDECL_RPL_1 (__scanf__, int,
-                    (const char *format, ...)
+                    (const char *restrict format, ...)
                     __asm__ (@ASM_SYMBOL_PREFIX@
                              _GL_STDIO_MACROEXPAND_AND_STRINGIZE(rpl_scanf))
                     _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (1, 2)
                     _GL_ARG_NONNULL ((1)));
-_GL_CXXALIAS_RPL_1 (scanf, __scanf__, int, (const char *format, ...));
+_GL_CXXALIAS_RPL_1 (scanf, __scanf__, int, (const char *restrict format, ...));
 #  else
 #   if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #    undef scanf
 #    define scanf rpl_scanf
 #   endif
-_GL_FUNCDECL_RPL (scanf, int, (const char *format, ...)
+_GL_FUNCDECL_RPL (scanf, int, (const char *restrict format, ...)
                               _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (1, 2)
                               _GL_ARG_NONNULL ((1)));
-_GL_CXXALIAS_RPL (scanf, int, (const char *format, ...));
+_GL_CXXALIAS_RPL (scanf, int, (const char *restrict format, ...));
 #  endif
 # else
-_GL_CXXALIAS_SYS (scanf, int, (const char *format, ...));
+_GL_CXXALIAS_SYS (scanf, int, (const char *restrict format, ...));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (scanf);
+# endif
 #endif
 
 #if @GNULIB_SNPRINTF@
@@ -1065,22 +1250,28 @@ _GL_CXXALIASWARN (scanf);
 #   define snprintf rpl_snprintf
 #  endif
 _GL_FUNCDECL_RPL (snprintf, int,
-                  (char *str, size_t size, const char *format, ...)
-                  _GL_ATTRIBUTE_FORMAT_PRINTF (3, 4)
+                  (char *restrict str, size_t size,
+                   const char *restrict format, ...)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (3, 4)
                   _GL_ARG_NONNULL ((3)));
 _GL_CXXALIAS_RPL (snprintf, int,
-                  (char *str, size_t size, const char *format, ...));
+                  (char *restrict str, size_t size,
+                   const char *restrict format, ...));
 # else
 #  if !@HAVE_DECL_SNPRINTF@
 _GL_FUNCDECL_SYS (snprintf, int,
-                  (char *str, size_t size, const char *format, ...)
-                  _GL_ATTRIBUTE_FORMAT_PRINTF (3, 4)
+                  (char *restrict str, size_t size,
+                   const char *restrict format, ...)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (3, 4)
                   _GL_ARG_NONNULL ((3)));
 #  endif
 _GL_CXXALIAS_SYS (snprintf, int,
-                  (char *str, size_t size, const char *format, ...));
+                  (char *restrict str, size_t size,
+                   const char *restrict format, ...));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (snprintf);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef snprintf
 # if HAVE_RAW_DECL_SNPRINTF
@@ -1103,14 +1294,19 @@ _GL_WARN_ON_USE (snprintf, "snprintf is unportable - "
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   define sprintf rpl_sprintf
 #  endif
-_GL_FUNCDECL_RPL (sprintf, int, (char *str, const char *format, ...)
-                                _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
-                                _GL_ARG_NONNULL ((1, 2)));
-_GL_CXXALIAS_RPL (sprintf, int, (char *str, const char *format, ...));
+_GL_FUNCDECL_RPL (sprintf, int,
+                  (char *restrict str, const char *restrict format, ...)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
+                  _GL_ARG_NONNULL ((1, 2)));
+_GL_CXXALIAS_RPL (sprintf, int,
+                  (char *restrict str, const char *restrict format, ...));
 # else
-_GL_CXXALIAS_SYS (sprintf, int, (char *str, const char *format, ...));
+_GL_CXXALIAS_SYS (sprintf, int,
+                  (char *restrict str, const char *restrict format, ...));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (sprintf);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef sprintf
 /* Assume sprintf is always declared.  */
@@ -1119,6 +1315,20 @@ _GL_WARN_ON_USE (sprintf, "sprintf is not always POSIX compliant - "
                  "POSIX compliance");
 #endif
 
+/* On native Windows, map 'tempnam' to '_tempnam', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::tempnam always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef tempnam
+#  define tempnam _tempnam
+# endif
+_GL_CXXALIAS_MDA (tempnam, char *, (const char *dir, const char *prefix));
+#else
+_GL_CXXALIAS_SYS (tempnam, char *, (const char *dir, const char *prefix));
+#endif
+_GL_CXXALIASWARN (tempnam);
+
 #if @GNULIB_TMPFILE@
 # if @REPLACE_TMPFILE@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@@ -1129,7 +1339,9 @@ _GL_CXXALIAS_RPL (tmpfile, FILE *, (void));
 # else
 _GL_CXXALIAS_SYS (tmpfile, FILE *, (void));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (tmpfile);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef tmpfile
 # if HAVE_RAW_DECL_TMPFILE
@@ -1149,7 +1361,7 @@ _GL_WARN_ON_USE (tmpfile, "tmpfile is not usable on mingw - "
 #  endif
 _GL_FUNCDECL_RPL (asprintf, int,
                   (char **result, const char *format, ...)
-                  _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
                   _GL_ARG_NONNULL ((1, 2)));
 _GL_CXXALIAS_RPL (asprintf, int,
                   (char **result, const char *format, ...));
@@ -1157,7 +1369,7 @@ _GL_CXXALIAS_RPL (asprintf, int,
 #  if !@HAVE_VASPRINTF@
 _GL_FUNCDECL_SYS (asprintf, int,
                   (char **result, const char *format, ...)
-                  _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
                   _GL_ARG_NONNULL ((1, 2)));
 #  endif
 _GL_CXXALIAS_SYS (asprintf, int,
@@ -1170,7 +1382,7 @@ _GL_CXXALIASWARN (asprintf);
 #  endif
 _GL_FUNCDECL_RPL (vasprintf, int,
                   (char **result, const char *format, va_list args)
-                  _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
                   _GL_ARG_NONNULL ((1, 2)));
 _GL_CXXALIAS_RPL (vasprintf, int,
                   (char **result, const char *format, va_list args));
@@ -1178,7 +1390,7 @@ _GL_CXXALIAS_RPL (vasprintf, int,
 #  if !@HAVE_VASPRINTF@
 _GL_FUNCDECL_SYS (vasprintf, int,
                   (char **result, const char *format, va_list args)
-                  _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
                   _GL_ARG_NONNULL ((1, 2)));
 #  endif
 _GL_CXXALIAS_SYS (vasprintf, int,
@@ -1192,22 +1404,27 @@ _GL_CXXALIASWARN (vasprintf);
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   define vdprintf rpl_vdprintf
 #  endif
-_GL_FUNCDECL_RPL (vdprintf, int, (int fd, const char *format, va_list args)
-                                 _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
-                                 _GL_ARG_NONNULL ((2)));
-_GL_CXXALIAS_RPL (vdprintf, int, (int fd, const char *format, va_list args));
+_GL_FUNCDECL_RPL (vdprintf, int,
+                  (int fd, const char *restrict format, va_list args)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
+                  _GL_ARG_NONNULL ((2)));
+_GL_CXXALIAS_RPL (vdprintf, int,
+                  (int fd, const char *restrict format, va_list args));
 # else
 #  if !@HAVE_VDPRINTF@
-_GL_FUNCDECL_SYS (vdprintf, int, (int fd, const char *format, va_list args)
-                                 _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
-                                 _GL_ARG_NONNULL ((2)));
+_GL_FUNCDECL_SYS (vdprintf, int,
+                  (int fd, const char *restrict format, va_list args)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
+                  _GL_ARG_NONNULL ((2)));
 #  endif
 /* 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));
+                       (int fd, const char *restrict format, va_list args));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (vdprintf);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef vdprintf
 # if HAVE_RAW_DECL_VDPRINTF
@@ -1224,23 +1441,32 @@ _GL_WARN_ON_USE (vdprintf, "vdprintf is unportable - "
 #  endif
 #  define GNULIB_overrides_vfprintf 1
 #  if @GNULIB_VFPRINTF_POSIX@
-_GL_FUNCDECL_RPL (vfprintf, int, (FILE *fp, const char *format, va_list args)
-                                 _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
-                                 _GL_ARG_NONNULL ((1, 2)));
+_GL_FUNCDECL_RPL (vfprintf, int,
+                  (FILE *restrict fp,
+                   const char *restrict format, va_list args)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
+                  _GL_ARG_NONNULL ((1, 2)));
 #  else
-_GL_FUNCDECL_RPL (vfprintf, int, (FILE *fp, const char *format, va_list args)
-                                 _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (2, 0)
-                                 _GL_ARG_NONNULL ((1, 2)));
+_GL_FUNCDECL_RPL (vfprintf, int,
+                  (FILE *restrict fp,
+                   const char *restrict format, va_list args)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (2, 0)
+                  _GL_ARG_NONNULL ((1, 2)));
 #  endif
-_GL_CXXALIAS_RPL (vfprintf, int, (FILE *fp, const char *format, va_list args));
+_GL_CXXALIAS_RPL (vfprintf, int,
+                  (FILE *restrict fp,
+                   const char *restrict format, va_list args));
 # else
 /* 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));
+                       (FILE *restrict fp,
+                        const char *restrict format, va_list args));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (vfprintf);
+# endif
 #endif
 #if !@GNULIB_VFPRINTF_POSIX@ && defined GNULIB_POSIXCHECK
 # if !GNULIB_overrides_vfprintf
@@ -1259,16 +1485,21 @@ _GL_WARN_ON_USE (vfprintf, "vfprintf is not always POSIX compliant - "
 #   define vfscanf rpl_vfscanf
 #  endif
 _GL_FUNCDECL_RPL (vfscanf, int,
-                  (FILE *stream, const char *format, va_list args)
+                  (FILE *restrict stream,
+                   const char *restrict format, va_list args)
                   _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (2, 0)
                   _GL_ARG_NONNULL ((1, 2)));
 _GL_CXXALIAS_RPL (vfscanf, int,
-                  (FILE *stream, const char *format, va_list args));
+                  (FILE *restrict stream,
+                   const char *restrict format, va_list args));
 # else
 _GL_CXXALIAS_SYS (vfscanf, int,
-                  (FILE *stream, const char *format, va_list args));
+                  (FILE *restrict stream,
+                   const char *restrict format, va_list args));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (vfscanf);
+# endif
 #endif
 
 #if @GNULIB_VPRINTF_POSIX@ || @GNULIB_VPRINTF@
@@ -1279,22 +1510,25 @@ _GL_CXXALIASWARN (vfscanf);
 #  endif
 #  define GNULIB_overrides_vprintf 1
 #  if @GNULIB_VPRINTF_POSIX@ || @GNULIB_VFPRINTF_POSIX@
-_GL_FUNCDECL_RPL (vprintf, int, (const char *format, va_list args)
-                                _GL_ATTRIBUTE_FORMAT_PRINTF (1, 0)
+_GL_FUNCDECL_RPL (vprintf, int, (const char *restrict format, va_list args)
+                                _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (1, 0)
                                 _GL_ARG_NONNULL ((1)));
 #  else
-_GL_FUNCDECL_RPL (vprintf, int, (const char *format, va_list args)
+_GL_FUNCDECL_RPL (vprintf, int, (const char *restrict format, va_list args)
                                 _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (1, 0)
                                 _GL_ARG_NONNULL ((1)));
 #  endif
-_GL_CXXALIAS_RPL (vprintf, int, (const char *format, va_list args));
+_GL_CXXALIAS_RPL (vprintf, int, (const char *restrict format, va_list args));
 # else
 /* 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));
+_GL_CXXALIAS_SYS_CAST (vprintf, int,
+                       (const char *restrict format, va_list args));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (vprintf);
+# endif
 #endif
 #if !@GNULIB_VPRINTF_POSIX@ && defined GNULIB_POSIXCHECK
 # if !GNULIB_overrides_vprintf
@@ -1312,14 +1546,16 @@ _GL_WARN_ON_USE (vprintf, "vprintf is not always POSIX compliant - "
 #   undef vscanf
 #   define vscanf rpl_vscanf
 #  endif
-_GL_FUNCDECL_RPL (vscanf, int, (const char *format, va_list args)
+_GL_FUNCDECL_RPL (vscanf, int, (const char *restrict format, va_list args)
                                _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (1, 0)
                                _GL_ARG_NONNULL ((1)));
-_GL_CXXALIAS_RPL (vscanf, int, (const char *format, va_list args));
+_GL_CXXALIAS_RPL (vscanf, int, (const char *restrict format, va_list args));
 # else
-_GL_CXXALIAS_SYS (vscanf, int, (const char *format, va_list args));
+_GL_CXXALIAS_SYS (vscanf, int, (const char *restrict format, va_list args));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (vscanf);
+# endif
 #endif
 
 #if @GNULIB_VSNPRINTF@
@@ -1328,22 +1564,28 @@ _GL_CXXALIASWARN (vscanf);
 #   define vsnprintf rpl_vsnprintf
 #  endif
 _GL_FUNCDECL_RPL (vsnprintf, int,
-                  (char *str, size_t size, const char *format, va_list args)
-                  _GL_ATTRIBUTE_FORMAT_PRINTF (3, 0)
+                  (char *restrict str, size_t size,
+                   const char *restrict format, va_list args)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (3, 0)
                   _GL_ARG_NONNULL ((3)));
 _GL_CXXALIAS_RPL (vsnprintf, int,
-                  (char *str, size_t size, const char *format, va_list args));
+                  (char *restrict str, size_t size,
+                   const char *restrict format, va_list args));
 # else
 #  if !@HAVE_DECL_VSNPRINTF@
 _GL_FUNCDECL_SYS (vsnprintf, int,
-                  (char *str, size_t size, const char *format, va_list args)
-                  _GL_ATTRIBUTE_FORMAT_PRINTF (3, 0)
+                  (char *restrict str, size_t size,
+                   const char *restrict format, va_list args)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (3, 0)
                   _GL_ARG_NONNULL ((3)));
 #  endif
 _GL_CXXALIAS_SYS (vsnprintf, int,
-                  (char *str, size_t size, const char *format, va_list args));
+                  (char *restrict str, size_t size,
+                   const char *restrict format, va_list args));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (vsnprintf);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef vsnprintf
 # if HAVE_RAW_DECL_VSNPRINTF
@@ -1358,19 +1600,24 @@ _GL_WARN_ON_USE (vsnprintf, "vsnprintf is unportable - "
 #   define vsprintf rpl_vsprintf
 #  endif
 _GL_FUNCDECL_RPL (vsprintf, int,
-                  (char *str, const char *format, va_list args)
-                  _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
+                  (char *restrict str,
+                   const char *restrict format, va_list args)
+                  _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
                   _GL_ARG_NONNULL ((1, 2)));
 _GL_CXXALIAS_RPL (vsprintf, int,
-                  (char *str, const char *format, va_list args));
+                  (char *restrict str,
+                   const char *restrict format, va_list args));
 # else
 /* 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));
+                       (char *restrict str,
+                        const char *restrict format, va_list args));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (vsprintf);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef vsprintf
 /* Assume vsprintf is always declared.  */
index f829525c104f9cc19f9a9c403e84152f709704a1..a76fbdc3d43998ef2aed1564806bd18f888f9816 100644 (file)
@@ -1,6 +1,6 @@
 /* A GNU-like <stdlib.h>.
 
-   Copyright (C) 1995, 2001-2004, 2006-2019 Free Software Foundation, Inc.
+   Copyright (C) 1995, 2001-2004, 2006-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -53,8 +53,8 @@
 # include <sys/loadavg.h>
 #endif
 
-/* Native Windows platforms declare mktemp() in <io.h>.  */
-#if 0 && (defined _WIN32 && ! defined __CYGWIN__)
+/* Native Windows platforms declare _mktemp() in <io.h>.  */
+#if defined _WIN32 && !defined __CYGWIN__
 # include <io.h>
 #endif
 
@@ -101,10 +101,12 @@ struct random_data
 
 /* The __attribute__ feature is available in gcc versions 2.5 and later.
    The attribute __pure__ was added in gcc 2.96.  */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)
-# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
-#else
-# define _GL_ATTRIBUTE_PURE /* empty */
+#ifndef _GL_ATTRIBUTE_PURE
+# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) || defined __clang__
+#  define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
+# else
+#  define _GL_ATTRIBUTE_PURE /* empty */
+# endif
 #endif
 
 /* The definition of _Noreturn is copied here.  */
@@ -147,6 +149,31 @@ _GL_WARN_ON_USE (_Exit, "_Exit is unportable - "
 #endif
 
 
+/* Allocate memory with indefinite extent and specified alignment.  */
+#if @GNULIB_ALIGNED_ALLOC@
+# if @REPLACE_ALIGNED_ALLOC@
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef aligned_alloc
+#   define aligned_alloc rpl_aligned_alloc
+#  endif
+_GL_FUNCDECL_RPL (aligned_alloc, void *, (size_t alignment, size_t size));
+_GL_CXXALIAS_RPL (aligned_alloc, void *, (size_t alignment, size_t size));
+# else
+#  if @HAVE_ALIGNED_ALLOC@
+_GL_CXXALIAS_SYS (aligned_alloc, void *, (size_t alignment, size_t size));
+#  endif
+# endif
+# if @HAVE_ALIGNED_ALLOC@
+_GL_CXXALIASWARN (aligned_alloc);
+# endif
+#elif defined GNULIB_POSIXCHECK
+# undef aligned_alloc
+# if HAVE_RAW_DECL_ALIGNED_ALLOC
+_GL_WARN_ON_USE (aligned_alloc, "aligned_alloc is not portable - "
+                 "use gnulib module aligned_alloc for portability");
+# endif
+#endif
+
 #if @GNULIB_ATOLL@
 /* Parse a signed decimal integer.
    Returns the value of the integer.  Errors are not detected.  */
@@ -176,7 +203,9 @@ _GL_CXXALIAS_RPL (calloc, void *, (size_t nmemb, size_t size));
 # else
 _GL_CXXALIAS_SYS (calloc, void *, (size_t nmemb, size_t size));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (calloc);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef calloc
 /* Assume calloc is always declared.  */
@@ -199,6 +228,10 @@ _GL_FUNCDECL_SYS (canonicalize_file_name, char *, (const char *name)
 #  endif
 _GL_CXXALIAS_SYS (canonicalize_file_name, char *, (const char *name));
 # endif
+# ifndef GNULIB_defined_canonicalize_file_name
+#  define GNULIB_defined_canonicalize_file_name \
+     (!@HAVE_CANONICALIZE_FILE_NAME@ || @REPLACE_CANONICALIZE_FILE_NAME@)
+# endif
 _GL_CXXALIASWARN (canonicalize_file_name);
 #elif defined GNULIB_POSIXCHECK
 # undef canonicalize_file_name
@@ -209,6 +242,67 @@ _GL_WARN_ON_USE (canonicalize_file_name,
 # endif
 #endif
 
+/* On native Windows, map 'ecvt' to '_ecvt', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::ecvt on all platforms that have
+   it.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef ecvt
+#  define ecvt _ecvt
+# endif
+_GL_CXXALIAS_MDA (ecvt, char *,
+                  (double number, int ndigits, int *decptp, int *signp));
+#else
+# if @HAVE_DECL_ECVT@
+_GL_CXXALIAS_SYS (ecvt, char *,
+                  (double number, int ndigits, int *decptp, int *signp));
+# endif
+#endif
+#if (defined _WIN32 && !defined __CYGWIN__) || @HAVE_DECL_ECVT@
+_GL_CXXALIASWARN (ecvt);
+#endif
+
+/* On native Windows, map 'fcvt' to '_fcvt', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::fcvt on all platforms that have
+   it.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef fcvt
+#  define fcvt _fcvt
+# endif
+_GL_CXXALIAS_MDA (fcvt, char *,
+                  (double number, int ndigits, int *decptp, int *signp));
+#else
+# if @HAVE_DECL_FCVT@
+_GL_CXXALIAS_SYS (fcvt, char *,
+                  (double number, int ndigits, int *decptp, int *signp));
+# endif
+#endif
+#if (defined _WIN32 && !defined __CYGWIN__) || @HAVE_DECL_FCVT@
+_GL_CXXALIASWARN (fcvt);
+#endif
+
+/* On native Windows, map 'gcvt' to '_gcvt', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::gcvt on all platforms that have
+   it.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef gcvt
+#  define gcvt _gcvt
+# endif
+_GL_CXXALIAS_MDA (gcvt, char *, (double number, int ndigits, char *buf));
+#else
+# if @HAVE_DECL_GCVT@
+_GL_CXXALIAS_SYS (gcvt, char *, (double number, int ndigits, char *buf));
+# endif
+#endif
+#if (defined _WIN32 && !defined __CYGWIN__) || @HAVE_DECL_GCVT@
+_GL_CXXALIASWARN (gcvt);
+#endif
+
 #if @GNULIB_GETLOADAVG@
 /* Store max(NELEM,3) load average numbers in LOADAVG[].
    The three numbers are the load average of the last 1 minute, the last 5
@@ -238,8 +332,8 @@ _GL_WARN_ON_USE (getloadavg, "getloadavg is not portable - "
        element (or NULL if it doesn't contain an "=" sign),
      - It returns the index of the "token" in the given array of tokens.
    Otherwise it returns -1, and *OPTIONP and *VALUEP are undefined.
-   For more details see the POSIX:2001 specification.
-   http://www.opengroup.org/susv3xsh/getsubopt.html */
+   For more details see the POSIX specification.
+   https://pubs.opengroup.org/onlinepubs/9699919799/functions/getsubopt.html */
 # if !@HAVE_GETSUBOPT@
 _GL_FUNCDECL_SYS (getsubopt, int,
                   (char **optionp, char *const *tokens, char **valuep)
@@ -288,7 +382,9 @@ _GL_CXXALIAS_RPL (malloc, void *, (size_t size));
 # else
 _GL_CXXALIAS_SYS (malloc, void *, (size_t size));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (malloc);
+# endif
 #elif defined GNULIB_POSIXCHECK && !_GL_USE_STDLIB_ALLOC
 # undef malloc
 /* Assume malloc is always declared.  */
@@ -303,15 +399,21 @@ _GL_WARN_ON_USE (malloc, "malloc is not POSIX compliant everywhere - "
 #   undef mbtowc
 #   define mbtowc rpl_mbtowc
 #  endif
-_GL_FUNCDECL_RPL (mbtowc, int, (wchar_t *pwc, const char *s, size_t n));
-_GL_CXXALIAS_RPL (mbtowc, int, (wchar_t *pwc, const char *s, size_t n));
+_GL_FUNCDECL_RPL (mbtowc, int,
+                  (wchar_t *restrict pwc, const char *restrict s, size_t n));
+_GL_CXXALIAS_RPL (mbtowc, int,
+                  (wchar_t *restrict pwc, const char *restrict s, size_t n));
 # else
 #  if !@HAVE_MBTOWC@
-_GL_FUNCDECL_SYS (mbtowc, int, (wchar_t *pwc, const char *s, size_t n));
+_GL_FUNCDECL_SYS (mbtowc, int,
+                  (wchar_t *restrict pwc, const char *restrict s, size_t n));
 #  endif
-_GL_CXXALIAS_SYS (mbtowc, int, (wchar_t *pwc, const char *s, size_t n));
+_GL_CXXALIAS_SYS (mbtowc, int,
+                  (wchar_t *restrict pwc, const char *restrict s, size_t n));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (mbtowc);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef mbtowc
 # if HAVE_RAW_DECL_MBTOWC
@@ -452,6 +554,49 @@ _GL_WARN_ON_USE (mkstemps, "mkstemps is unportable - "
 # endif
 #endif
 
+/* On native Windows, map 'mktemp' to '_mktemp', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::mktemp always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef mktemp
+#  define mktemp _mktemp
+# endif
+_GL_CXXALIAS_MDA (mktemp, char *, (char * /*template*/));
+#else
+_GL_CXXALIAS_SYS (mktemp, char *, (char * /*template*/));
+#endif
+_GL_CXXALIASWARN (mktemp);
+
+/* Allocate memory with indefinite extent and specified alignment.  */
+#if @GNULIB_POSIX_MEMALIGN@
+# if @REPLACE_POSIX_MEMALIGN@
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef posix_memalign
+#   define posix_memalign rpl_posix_memalign
+#  endif
+_GL_FUNCDECL_RPL (posix_memalign, int,
+                  (void **memptr, size_t alignment, size_t size)
+                  _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (posix_memalign, int,
+                  (void **memptr, size_t alignment, size_t size));
+# else
+#  if @HAVE_POSIX_MEMALIGN@
+_GL_CXXALIAS_SYS (posix_memalign, int,
+                  (void **memptr, size_t alignment, size_t size));
+#  endif
+# endif
+# if @HAVE_POSIX_MEMALIGN@
+_GL_CXXALIASWARN (posix_memalign);
+# endif
+#elif defined GNULIB_POSIXCHECK
+# undef posix_memalign
+# if HAVE_RAW_DECL_POSIX_MEMALIGN
+_GL_WARN_ON_USE (posix_memalign, "posix_memalign is not portable - "
+                 "use gnulib module posix_memalign for portability");
+# endif
+#endif
+
 #if @GNULIB_POSIX_OPENPT@
 /* Return an FD open to the master side of a pseudo-terminal.  Flags should
    include O_RDWR, and may also include O_NOCTTY.  */
@@ -510,6 +655,9 @@ _GL_FUNCDECL_SYS (ptsname_r, int, (int fd, char *buf, size_t len));
 #  endif
 _GL_CXXALIAS_SYS (ptsname_r, int, (int fd, char *buf, size_t len));
 # endif
+# ifndef GNULIB_defined_ptsname_r
+#  define GNULIB_defined_ptsname_r (!@HAVE_PTSNAME_R@ || @REPLACE_PTSNAME_R@)
+# endif
 _GL_CXXALIASWARN (ptsname_r);
 #elif defined GNULIB_POSIXCHECK
 # undef ptsname_r
@@ -527,6 +675,28 @@ _GL_WARN_ON_USE (ptsname_r, "ptsname_r is not portable - "
 #  endif
 _GL_FUNCDECL_RPL (putenv, int, (char *string) _GL_ARG_NONNULL ((1)));
 _GL_CXXALIAS_RPL (putenv, int, (char *string));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef putenv
+#   define putenv _putenv
+#  endif
+_GL_CXXALIAS_MDA (putenv, int, (char *string));
+# else
+_GL_CXXALIAS_SYS (putenv, int, (char *string));
+# endif
+_GL_CXXALIASWARN (putenv);
+#else
+/* On native Windows, map 'putenv' to '_putenv', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::putenv always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef putenv
+#   define putenv _putenv
+#  endif
+/* Need to cast, because on mingw, the parameter is either
+   'const char *string' or 'char *string'.  */
+_GL_CXXALIAS_MDA_CAST (putenv, int, (char *string));
 # else
 _GL_CXXALIAS_SYS (putenv, int, (char *string));
 # endif
@@ -593,7 +763,9 @@ _GL_CXXALIAS_RPL (random, long, (void));
 #  if !@HAVE_RANDOM@
 _GL_FUNCDECL_SYS (random, long, (void));
 #  endif
-_GL_CXXALIAS_SYS (random, long, (void));
+/* Need to cast, because on Haiku, the return type is
+                               int.  */
+_GL_CXXALIAS_SYS_CAST (random, long, (void));
 # endif
 _GL_CXXALIASWARN (random);
 #elif defined GNULIB_POSIXCHECK
@@ -616,7 +788,9 @@ _GL_CXXALIAS_RPL (srandom, void, (unsigned int seed));
 #  if !@HAVE_RANDOM@
 _GL_FUNCDECL_SYS (srandom, void, (unsigned int seed));
 #  endif
-_GL_CXXALIAS_SYS (srandom, void, (unsigned int seed));
+/* Need to cast, because on FreeBSD, the first parameter is
+                                       unsigned long seed.  */
+_GL_CXXALIAS_SYS_CAST (srandom, void, (unsigned int seed));
 # endif
 _GL_CXXALIASWARN (srandom);
 #elif defined GNULIB_POSIXCHECK
@@ -644,8 +818,10 @@ _GL_FUNCDECL_SYS (initstate, char *,
                   (unsigned int seed, char *buf, size_t buf_size)
                   _GL_ARG_NONNULL ((2)));
 #  endif
-_GL_CXXALIAS_SYS (initstate, char *,
-                  (unsigned int seed, char *buf, size_t buf_size));
+/* Need to cast, because on FreeBSD, the first parameter is
+                        unsigned long seed.  */
+_GL_CXXALIAS_SYS_CAST (initstate, char *,
+                       (unsigned int seed, char *buf, size_t buf_size));
 # endif
 _GL_CXXALIASWARN (initstate);
 #elif defined GNULIB_POSIXCHECK
@@ -668,7 +844,9 @@ _GL_CXXALIAS_RPL (setstate, char *, (char *arg_state));
 #  if !@HAVE_SETSTATE@ || !@HAVE_DECL_SETSTATE@
 _GL_FUNCDECL_SYS (setstate, char *, (char *arg_state) _GL_ARG_NONNULL ((1)));
 #  endif
-_GL_CXXALIAS_SYS (setstate, char *, (char *arg_state));
+/* Need to cast, because on Mac OS X 10.13, HP-UX, Solaris the first parameter
+   is                                     const char *arg_state.  */
+_GL_CXXALIAS_SYS_CAST (setstate, char *, (char *arg_state));
 # endif
 _GL_CXXALIASWARN (setstate);
 #elif defined GNULIB_POSIXCHECK
@@ -754,9 +932,11 @@ _GL_FUNCDECL_SYS (initstate_r, int,
                    struct random_data *rand_state)
                   _GL_ARG_NONNULL ((2, 4)));
 #  endif
-_GL_CXXALIAS_SYS (initstate_r, int,
-                  (unsigned int seed, char *buf, size_t buf_size,
-                   struct random_data *rand_state));
+/* Need to cast, because on Haiku, the third parameter is
+                                                     unsigned long buf_size.  */
+_GL_CXXALIAS_SYS_CAST (initstate_r, int,
+                       (unsigned int seed, char *buf, size_t buf_size,
+                        struct random_data *rand_state));
 # endif
 _GL_CXXALIASWARN (initstate_r);
 #elif defined GNULIB_POSIXCHECK
@@ -784,8 +964,10 @@ _GL_FUNCDECL_SYS (setstate_r, int,
                   (char *arg_state, struct random_data *rand_state)
                   _GL_ARG_NONNULL ((1, 2)));
 #  endif
-_GL_CXXALIAS_SYS (setstate_r, int,
-                  (char *arg_state, struct random_data *rand_state));
+/* Need to cast, because on Haiku, the first parameter is
+                        void *arg_state.  */
+_GL_CXXALIAS_SYS_CAST (setstate_r, int,
+                       (char *arg_state, struct random_data *rand_state));
 # endif
 _GL_CXXALIASWARN (setstate_r);
 #elif defined GNULIB_POSIXCHECK
@@ -809,7 +991,9 @@ _GL_CXXALIAS_RPL (realloc, void *, (void *ptr, size_t size));
 # else
 _GL_CXXALIAS_SYS (realloc, void *, (void *ptr, size_t size));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (realloc);
+# endif
 #elif defined GNULIB_POSIXCHECK && !_GL_USE_STDLIB_ALLOC
 # undef realloc
 /* Assume realloc is always declared.  */
@@ -839,15 +1023,19 @@ _GL_WARN_ON_USE (reallocarray, "reallocarray is not portable - "
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   define realpath rpl_realpath
 #  endif
-_GL_FUNCDECL_RPL (realpath, char *, (const char *name, char *resolved)
-                                    _GL_ARG_NONNULL ((1)));
-_GL_CXXALIAS_RPL (realpath, char *, (const char *name, char *resolved));
+_GL_FUNCDECL_RPL (realpath, char *,
+                  (const char *restrict name, char *restrict resolved)
+                  _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (realpath, char *,
+                  (const char *restrict name, char *restrict resolved));
 # else
 #  if !@HAVE_REALPATH@
-_GL_FUNCDECL_SYS (realpath, char *, (const char *name, char *resolved)
-                                    _GL_ARG_NONNULL ((1)));
+_GL_FUNCDECL_SYS (realpath, char *,
+                  (const char *restrict name, char *restrict resolved)
+                  _GL_ARG_NONNULL ((1)));
 #  endif
-_GL_CXXALIAS_SYS (realpath, char *, (const char *name, char *resolved));
+_GL_CXXALIAS_SYS (realpath, char *,
+                  (const char *restrict name, char *restrict resolved));
 # endif
 _GL_CXXALIASWARN (realpath);
 #elif defined GNULIB_POSIXCHECK
@@ -930,17 +1118,23 @@ _GL_WARN_ON_USE (setenv, "setenv is unportable - "
 #   define strtod rpl_strtod
 #  endif
 #  define GNULIB_defined_strtod_function 1
-_GL_FUNCDECL_RPL (strtod, double, (const char *str, char **endp)
-                                  _GL_ARG_NONNULL ((1)));
-_GL_CXXALIAS_RPL (strtod, double, (const char *str, char **endp));
+_GL_FUNCDECL_RPL (strtod, double,
+                  (const char *restrict str, char **restrict endp)
+                  _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (strtod, double,
+                  (const char *restrict str, char **restrict endp));
 # else
 #  if !@HAVE_STRTOD@
-_GL_FUNCDECL_SYS (strtod, double, (const char *str, char **endp)
-                                  _GL_ARG_NONNULL ((1)));
+_GL_FUNCDECL_SYS (strtod, double,
+                  (const char *restrict str, char **restrict endp)
+                  _GL_ARG_NONNULL ((1)));
 #  endif
-_GL_CXXALIAS_SYS (strtod, double, (const char *str, char **endp));
+_GL_CXXALIAS_SYS (strtod, double,
+                  (const char *restrict str, char **restrict endp));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (strtod);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef strtod
 # if HAVE_RAW_DECL_STRTOD
@@ -956,15 +1150,19 @@ _GL_WARN_ON_USE (strtod, "strtod is unportable - "
 #   define strtold rpl_strtold
 #  endif
 #  define GNULIB_defined_strtold_function 1
-_GL_FUNCDECL_RPL (strtold, long double, (const char *str, char **endp)
-                                        _GL_ARG_NONNULL ((1)));
-_GL_CXXALIAS_RPL (strtold, long double, (const char *str, char **endp));
+_GL_FUNCDECL_RPL (strtold, long double,
+                  (const char *restrict str, char **restrict endp)
+                  _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (strtold, long double,
+                  (const char *restrict str, char **restrict endp));
 # else
 #  if !@HAVE_STRTOLD@
-_GL_FUNCDECL_SYS (strtold, long double, (const char *str, char **endp)
-                                        _GL_ARG_NONNULL ((1)));
+_GL_FUNCDECL_SYS (strtold, long double,
+                  (const char *restrict str, char **restrict endp)
+                  _GL_ARG_NONNULL ((1)));
 #  endif
-_GL_CXXALIAS_SYS (strtold, long double, (const char *str, char **endp));
+_GL_CXXALIAS_SYS (strtold, long double,
+                  (const char *restrict str, char **restrict endp));
 # endif
 _GL_CXXALIASWARN (strtold);
 #elif defined GNULIB_POSIXCHECK
@@ -986,11 +1184,13 @@ _GL_WARN_ON_USE (strtold, "strtold is unportable - "
    to ERANGE.  */
 # if !@HAVE_STRTOLL@
 _GL_FUNCDECL_SYS (strtoll, long long,
-                  (const char *string, char **endptr, int base)
+                  (const char *restrict string, char **restrict endptr,
+                   int base)
                   _GL_ARG_NONNULL ((1)));
 # endif
 _GL_CXXALIAS_SYS (strtoll, long long,
-                  (const char *string, char **endptr, int base));
+                  (const char *restrict string, char **restrict endptr,
+                   int base));
 _GL_CXXALIASWARN (strtoll);
 #elif defined GNULIB_POSIXCHECK
 # undef strtoll
@@ -1011,11 +1211,13 @@ _GL_WARN_ON_USE (strtoll, "strtoll is unportable - "
    ERANGE.  */
 # if !@HAVE_STRTOULL@
 _GL_FUNCDECL_SYS (strtoull, unsigned long long,
-                  (const char *string, char **endptr, int base)
+                  (const char *restrict string, char **restrict endptr,
+                   int base)
                   _GL_ARG_NONNULL ((1)));
 # endif
 _GL_CXXALIAS_SYS (strtoull, unsigned long long,
-                  (const char *string, char **endptr, int base));
+                  (const char *restrict string, char **restrict endptr,
+                   int base));
 _GL_CXXALIASWARN (strtoull);
 #elif defined GNULIB_POSIXCHECK
 # undef strtoull
@@ -1079,7 +1281,9 @@ _GL_CXXALIAS_RPL (wctomb, int, (char *s, wchar_t wc));
 # else
 _GL_CXXALIAS_SYS (wctomb, int, (char *s, wchar_t wc));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wctomb);
+# endif
 #endif
 
 
index 717cf65ba94aa5bfd40e6c9670ac5a858043171e..4da6007ac121acc3a7b7a712dfef99de84ed4baf 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1996-1998, 2002-2004, 2006-2007, 2009-2019 Free Software
+/* Copyright (C) 1991, 1996-1998, 2002-2004, 2006-2007, 2009-2020 Free Software
    Foundation, Inc.
 
    This file is part of the GNU C Library.
index 326537b6d020a4511a10ded659049c3cec1a6487..586f051262fb615055c241163db993273b319ee2 100644 (file)
@@ -1,5 +1,5 @@
 /* Optimized string comparison.
-   Copyright (C) 2001-2002, 2007, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2001-2002, 2007, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published
@@ -29,7 +29,7 @@
 
 /* Help GCC to generate good code for string comparisons with
    immediate strings. */
-#if defined (__GNUC__) && defined (__OPTIMIZE__)
+#if (defined __GNUC__ || defined __clang__) && defined __OPTIMIZE__
 
 static inline int
 streq9 (const char *s1, const char *s2)
index 558a010a916921a86adc491ccd06c236c662b900..61b7689fd8139b06a6a59cca38f1a972634bc695 100644 (file)
@@ -1,6 +1,6 @@
 /* strerror-override.c --- POSIX compatible system error routine
 
-   Copyright (C) 2010-2019 Free Software Foundation, Inc.
+   Copyright (C) 2010-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 255febcaf210c966cef7f65c24d12f0e4730b82b..062f51cf6ba594c8e7801f48d1d4902799f7bd0c 100644 (file)
@@ -1,6 +1,6 @@
 /* strerror-override.h --- POSIX compatible system error routine
 
-   Copyright (C) 2010-2019 Free Software Foundation, Inc.
+   Copyright (C) 2010-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index f5900fd14412cb2c0df5dbdaea29e319939350d5..1a53a8b92776bdfcb1215594e389bf57fe457dd1 100644 (file)
@@ -1,6 +1,6 @@
 /* strerror.c --- POSIX compatible system error routine
 
-   Copyright (C) 2007-2019 Free Software Foundation, Inc.
+   Copyright (C) 2007-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 4a9292f74ade0fccd80a51e5520d6f9f0bc5cec0..e93bb2b2d4dbc3a45cefd718df2e2891231b89d0 100644 (file)
@@ -1,6 +1,6 @@
 /* A GNU-like <string.h>.
 
-   Copyright (C) 1995-1996, 2001-2019 Free Software Foundation, Inc.
+   Copyright (C) 1995-1996, 2001-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
 /* The __attribute__ feature is available in gcc versions 2.5 and later.
    The attribute __pure__ was added in gcc 2.96.  */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)
-# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
-#else
-# define _GL_ATTRIBUTE_PURE /* empty */
+#ifndef _GL_ATTRIBUTE_PURE
+# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) || defined __clang__
+#  define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
+# else
+#  define _GL_ATTRIBUTE_PURE /* empty */
+# endif
 #endif
 
 /* NetBSD 5.0 declares strsignal in <unistd.h>, not in <string.h>.  */
@@ -121,6 +123,23 @@ _GL_WARN_ON_USE (ffsll, "ffsll is not portable - use the ffsll module");
 #endif
 
 
+/* On native Windows, map 'memccpy' to '_memccpy', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::memccpy always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef memccpy
+#  define memccpy _memccpy
+# endif
+_GL_CXXALIAS_MDA (memccpy, void *,
+                  (void *dest, const void *src, int c, size_t n));
+#else
+_GL_CXXALIAS_SYS (memccpy, void *,
+                  (void *dest, const void *src, int c, size_t n));
+#endif
+_GL_CXXALIASWARN (memccpy);
+
+
 /* Return the first instance of C within N bytes of S, or NULL.  */
 #if @GNULIB_MEMCHR@
 # if @REPLACE_MEMCHR@
@@ -132,11 +151,6 @@ _GL_FUNCDECL_RPL (memchr, void *, (void const *__s, int __c, size_t __n)
                                   _GL_ARG_NONNULL ((1)));
 _GL_CXXALIAS_RPL (memchr, void *, (void const *__s, int __c, size_t __n));
 # else
-#  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++" { void * std::memchr (void *, int, size_t); }  */
@@ -149,7 +163,7 @@ _GL_CXXALIAS_SYS_CAST2 (memchr,
 _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
+# elif __GLIBC__ >= 2
 _GL_CXXALIASWARN (memchr);
 # endif
 #elif defined GNULIB_POSIXCHECK
@@ -332,9 +346,11 @@ _GL_WARN_ON_USE (stpncpy, "stpncpy is unportable - "
    GB18030 and the character to be searched is a digit.  */
 # undef strchr
 /* Assume strchr is always declared.  */
-_GL_WARN_ON_USE (strchr, "strchr cannot work correctly on character strings "
-                 "in some multibyte locales - "
-                 "use mbschr if you care about internationalization");
+_GL_WARN_ON_USE_CXX (strchr,
+                     const char *, char *, (const char *, int),
+                     "strchr cannot work correctly on character strings "
+                     "in some multibyte locales - "
+                     "use mbschr if you care about internationalization");
 #endif
 
 /* Find the first occurrence of C in S or the final NUL byte.  */
@@ -385,6 +401,12 @@ _GL_WARN_ON_USE (strchrnul, "strchrnul is unportable - "
 #  endif
 _GL_FUNCDECL_RPL (strdup, char *, (char const *__s) _GL_ARG_NONNULL ((1)));
 _GL_CXXALIAS_RPL (strdup, char *, (char const *__s));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef strdup
+#   define strdup _strdup
+#  endif
+_GL_CXXALIAS_MDA (strdup, char *, (char const *__s));
 # else
 #  if defined __cplusplus && defined GNULIB_NAMESPACE && defined strdup
     /* strdup exists as a function and as a macro.  Get rid of the macro.  */
@@ -402,6 +424,23 @@ _GL_CXXALIASWARN (strdup);
 _GL_WARN_ON_USE (strdup, "strdup is unportable - "
                  "use gnulib module strdup for portability");
 # endif
+#else
+/* On native Windows, map 'creat' to '_creat', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::creat always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef strdup
+#   define strdup _strdup
+#  endif
+_GL_CXXALIAS_MDA (strdup, char *, (char const *__s));
+# else
+#  if defined __cplusplus && defined GNULIB_NAMESPACE && defined strdup
+#   undef strdup
+#  endif
+_GL_CXXALIAS_SYS (strdup, char *, (char const *__s));
+# endif
+_GL_CXXALIASWARN (strdup);
 #endif
 
 /* Append no more than N characters from SRC onto DEST.  */
@@ -411,13 +450,18 @@ _GL_WARN_ON_USE (strdup, "strdup is unportable - "
 #   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));
+_GL_FUNCDECL_RPL (strncat, char *,
+                  (char *restrict dest, const char *restrict src, size_t n)
+                  _GL_ARG_NONNULL ((1, 2)));
+_GL_CXXALIAS_RPL (strncat, char *,
+                  (char *restrict dest, const char *restrict src, size_t n));
 # else
-_GL_CXXALIAS_SYS (strncat, char *, (char *dest, const char *src, size_t n));
+_GL_CXXALIAS_SYS (strncat, char *,
+                  (char *restrict dest, const char *restrict src, size_t n));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (strncat);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef strncat
 # if HAVE_RAW_DECL_STRNCAT
@@ -512,7 +556,7 @@ _GL_CXXALIAS_SYS_CAST2 (strpbrk,
 _GL_CXXALIASWARN1 (strpbrk, char *, (char *__s, char const *__accept));
 _GL_CXXALIASWARN1 (strpbrk, char const *,
                    (char const *__s, char const *__accept));
-# else
+# elif __GLIBC__ >= 2
 _GL_CXXALIASWARN (strpbrk);
 # endif
 # if defined GNULIB_POSIXCHECK
@@ -521,15 +565,19 @@ _GL_CXXALIASWARN (strpbrk);
    locale encoding is GB18030 and one of the characters to be searched is a
    digit.  */
 #  undef strpbrk
-_GL_WARN_ON_USE (strpbrk, "strpbrk cannot work correctly on character strings "
-                 "in multibyte locales - "
-                 "use mbspbrk if you care about internationalization");
+_GL_WARN_ON_USE_CXX (strpbrk,
+                     const char *, char *, (const char *, const char *),
+                     "strpbrk cannot work correctly on character strings "
+                     "in multibyte locales - "
+                     "use mbspbrk if you care about internationalization");
 # endif
 #elif defined GNULIB_POSIXCHECK
 # undef strpbrk
 # if HAVE_RAW_DECL_STRPBRK
-_GL_WARN_ON_USE (strpbrk, "strpbrk is unportable - "
-                 "use gnulib module strpbrk for portability");
+_GL_WARN_ON_USE_CXX (strpbrk,
+                     const char *, char *, (const char *, const char *),
+                     "strpbrk is unportable - "
+                     "use gnulib module strpbrk for portability");
 # endif
 #endif
 
@@ -548,9 +596,11 @@ _GL_WARN_ON_USE (strspn, "strspn cannot work correctly on character strings "
    GB18030 and the character to be searched is a digit.  */
 # undef strrchr
 /* Assume strrchr is always declared.  */
-_GL_WARN_ON_USE (strrchr, "strrchr cannot work correctly on character strings "
-                 "in some multibyte locales - "
-                 "use mbsrchr if you care about internationalization");
+_GL_WARN_ON_USE_CXX (strrchr,
+                     const char *, char *, (const char *, int),
+                     "strrchr cannot work correctly on character strings "
+                     "in some multibyte locales - "
+                     "use mbsrchr if you care about internationalization");
 #endif
 
 /* Search the next delimiter (char listed in DELIM) starting at *STRINGP.
@@ -614,7 +664,7 @@ _GL_CXXALIAS_SYS_CAST2 (strstr,
 _GL_CXXALIASWARN1 (strstr, char *, (char *haystack, const char *needle));
 _GL_CXXALIASWARN1 (strstr, const char *,
                    (const char *haystack, const char *needle));
-# else
+# elif __GLIBC__ >= 2
 _GL_CXXALIASWARN (strstr);
 # endif
 #elif defined GNULIB_POSIXCHECK
@@ -693,7 +743,7 @@ _GL_WARN_ON_USE (strcasestr, "strcasestr does work correctly on character "
    This is a variant of strtok() that is multithread-safe.
 
    For the POSIX documentation for this function, see:
-   http://www.opengroup.org/susv3xsh/strtok.html
+   https://pubs.opengroup.org/onlinepubs/9699919799/functions/strtok.html
 
    Caveat: It modifies the original string.
    Caveat: These functions cannot be used on constant strings.
@@ -964,7 +1014,8 @@ _GL_EXTERN_C char * mbssep (char **stringp, const char *delim)
    Caveat: The identity of the delimiting character is lost.
 
    See also mbssep().  */
-_GL_EXTERN_C char * mbstok_r (char *string, const char *delim, char **save_ptr)
+_GL_EXTERN_C char * mbstok_r (char *restrict string, const char *delim,
+                              char **save_ptr)
      _GL_ARG_NONNULL ((2, 3));
 #endif
 
@@ -980,7 +1031,9 @@ _GL_CXXALIAS_RPL (strerror, char *, (int));
 # else
 _GL_CXXALIAS_SYS (strerror, char *, (int));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (strerror);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef strerror
 /* Assume strerror is always declared.  */
@@ -1017,6 +1070,60 @@ _GL_WARN_ON_USE (strerror_r, "strerror_r is unportable - "
 # endif
 #endif
 
+/* Return the name of the system error code ERRNUM.  */
+#if @GNULIB_STRERRORNAME_NP@
+# if @REPLACE_STRERRORNAME_NP@
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef strerrorname_np
+#   define strerrorname_np rpl_strerrorname_np
+#  endif
+_GL_FUNCDECL_RPL (strerrorname_np, const char *, (int errnum));
+_GL_CXXALIAS_RPL (strerrorname_np, const char *, (int errnum));
+# else
+#  if !@HAVE_STRERRORNAME_NP@
+_GL_FUNCDECL_SYS (strerrorname_np, const char *, (int errnum));
+#  endif
+_GL_CXXALIAS_SYS (strerrorname_np, const char *, (int errnum));
+# endif
+_GL_CXXALIASWARN (strerrorname_np);
+#elif defined GNULIB_POSIXCHECK
+# undef strerrorname_np
+# if HAVE_RAW_DECL_STRERRORNAME_NP
+_GL_WARN_ON_USE (strerrorname_np, "strerrorname_np is unportable - "
+                 "use gnulib module strerrorname_np for portability");
+# endif
+#endif
+
+/* Return an abbreviation string for the signal number SIG.  */
+#if @GNULIB_SIGABBREV_NP@
+# if ! @HAVE_SIGABBREV_NP@
+_GL_FUNCDECL_SYS (sigabbrev_np, const char *, (int sig));
+# endif
+_GL_CXXALIAS_SYS (sigabbrev_np, const char *, (int sig));
+_GL_CXXALIASWARN (sigabbrev_np);
+#elif defined GNULIB_POSIXCHECK
+# undef sigabbrev_np
+# if HAVE_RAW_DECL_SIGABBREV_NP
+_GL_WARN_ON_USE (sigabbrev_np, "sigabbrev_np is unportable - "
+                 "use gnulib module sigabbrev_np for portability");
+# endif
+#endif
+
+/* Return an English description string for the signal number SIG.  */
+#if @GNULIB_SIGDESCR_NP@
+# if ! @HAVE_SIGDESCR_NP@
+_GL_FUNCDECL_SYS (sigdescr_np, const char *, (int sig));
+# endif
+_GL_CXXALIAS_SYS (sigdescr_np, const char *, (int sig));
+_GL_CXXALIASWARN (sigdescr_np);
+#elif defined GNULIB_POSIXCHECK
+# undef sigdescr_np
+# if HAVE_RAW_DECL_SIGDESCR_NP
+_GL_WARN_ON_USE (sigdescr_np, "sigdescr_np is unportable - "
+                 "use gnulib module sigdescr_np for portability");
+# endif
+#endif
+
 #if @GNULIB_STRSIGNAL@
 # if @REPLACE_STRSIGNAL@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
index dfc15b43cc97267cde0d16764ea6e5fab6ee8913..6818b30614166bcdf63cb41e56a16dfd87f5429d 100644 (file)
@@ -1,6 +1,6 @@
 /* stripslash.c -- remove redundant trailing slashes from a file name
 
-   Copyright (C) 1990, 2001, 2003-2006, 2009-2019 Free Software Foundation,
+   Copyright (C) 1990, 2001, 2003-2006, 2009-2020 Free Software Foundation,
    Inc.
 
    This program is free software: you can redistribute it and/or modify
index 5b74828469a865e819c4cd499face547ab385169..d5294b88525bbc27c2cdcc0b35ee39be39b35256 100644 (file)
@@ -1,6 +1,6 @@
 /* A replacement function, for systems that lack strndup.
 
-   Copyright (C) 1996-1998, 2001-2003, 2005-2007, 2009-2019 Free Software
+   Copyright (C) 1996-1998, 2001-2003, 2005-2007, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify it
index 9fb663509a036ad8b7d0ba7b9135a01562a6a995..dcecf0820dfb352615d25de5099029bdb48639ad 100644 (file)
@@ -1,5 +1,5 @@
 /* Find the length of STRING, but scan at most MAXLEN characters.
-   Copyright (C) 2005-2007, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2007, 2009-2020 Free Software Foundation, Inc.
    Written by Simon Josefsson.
 
    This program is free software; you can redistribute it and/or modify
index 1d920aff5441d44344a5c5e735b1e973993227cb..02aafca44eae5f5a8431833977cfcf07b389881e 100644 (file)
@@ -1,6 +1,6 @@
 /* Convert string representation of a number into an integer value.
 
-   Copyright (C) 1991-1992, 1994-1999, 2003, 2005-2007, 2009-2019 Free Software
+   Copyright (C) 1991-1992, 1994-1999, 2003, 2005-2007, 2009-2020 Free Software
    Foundation, Inc.
 
    NOTE: The canonical source of this file is maintained with the GNU C
index 038362a308b3916972c4f1976331413cdf5d71e5..3c7e8c002f0a70a860f217f66a5e0e61af076145 100644 (file)
@@ -1,5 +1,5 @@
 /* Function to parse a 'long long int' from text.
-   Copyright (C) 1995-1997, 1999, 2001, 2009-2019 Free Software Foundation,
+   Copyright (C) 1995-1997, 1999, 2001, 2009-2020 Free Software Foundation,
    Inc.
    This file is part of the GNU C Library.
 
index e098701fd1b7ebe725c71391866aaa051cc22a52..01977bb63e7f473ba8749b251c2aecf3e5cfe545 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1997, 2009-2019 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1997, 2009-2020 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
index 8ba92bf3c02684f790d49850a6293724a1f967bc..7cd4bf5fd75ab0406683cb33b2fc7847245a03a8 100644 (file)
@@ -1,5 +1,5 @@
 /* Function to parse an 'unsigned long long int' from text.
-   Copyright (C) 1995-1997, 1999, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 1995-1997, 1999, 2009-2020 Free Software Foundation, Inc.
    NOTE: The canonical source of this file is maintained with the GNU C
    Library.  Bugs can be reported to bug-glibc@gnu.org.
 
index f407eff761ed1cfe436a87f6545f6d5663cd3016..9b6b4903b7812ac7a9d9d7c9a915195d0671fe23 100644 (file)
@@ -1,6 +1,6 @@
 /* System call limits
 
-   Copyright 2018-2019 Free Software Foundation, Inc.
+   Copyright 2018-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
diff --git a/lib/sys_random.in.h b/lib/sys_random.in.h
new file mode 100644 (file)
index 0000000..a82d716
--- /dev/null
@@ -0,0 +1,96 @@
+/* Substitute for <sys/random.h>.
+   Copyright (C) 2020 Free Software Foundation, Inc.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3, or (at your option)
+   any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
+
+# if __GNUC__ >= 3
+@PRAGMA_SYSTEM_HEADER@
+# endif
+@PRAGMA_COLUMNS@
+
+#ifndef _@GUARD_PREFIX@_SYS_RANDOM_H
+
+#if @HAVE_SYS_RANDOM_H@
+
+/* On uClibc, <sys/random.h> assumes prior inclusion of <stddef.h>.  */
+# if defined __UCLIBC__
+#  include <stddef.h>
+# endif
+/* On Mac OS X 10.5, <sys/random.h> assumes prior inclusion of <sys/types.h>.
+   On Max OS X 10.13, <sys/random.h> assumes prior inclusion of a file that
+   includes <Availability.h>, such as <stdlib.h> or <unistd.h>.  */
+# if defined __APPLE__ && defined __MACH__                  /* Mac OS X */
+#  include <sys/types.h>
+#  include <stdlib.h>
+# endif
+
+/* The include_next requires a split double-inclusion guard.  */
+# @INCLUDE_NEXT@ @NEXT_SYS_RANDOM_H@
+
+#endif
+
+#ifndef _@GUARD_PREFIX@_SYS_RANDOM_H
+#define _@GUARD_PREFIX@_SYS_RANDOM_H
+
+#include <sys/types.h>
+
+/* Define the GRND_* constants.  */
+#ifndef GRND_NONBLOCK
+# define GRND_NONBLOCK 1
+# define GRND_RANDOM 2
+#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.  */
+
+
+/* Declare overridden functions.  */
+
+
+#if @GNULIB_GETRANDOM@
+/* Fill a buffer with random bytes.  */
+# if @REPLACE_GETRANDOM@
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef getrandom
+#   define getrandom rpl_getrandom
+#  endif
+_GL_FUNCDECL_RPL (getrandom, ssize_t,
+                  (void *buffer, size_t length, unsigned int flags)
+                  _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (getrandom, ssize_t,
+                  (void *buffer, size_t length, unsigned int flags));
+# else
+#  if !@HAVE_GETRANDOM@
+_GL_FUNCDECL_SYS (getrandom, ssize_t,
+                  (void *buffer, size_t length, unsigned int flags)
+                  _GL_ARG_NONNULL ((1)));
+#  endif
+_GL_CXXALIAS_SYS (getrandom, ssize_t,
+                  (void *buffer, size_t length, unsigned int flags));
+# endif
+_GL_CXXALIASWARN (getrandom);
+#elif defined GNULIB_POSIXCHECK
+# undef getrandom
+# if HAVE_RAW_DECL_GETRANDOM
+_GL_WARN_ON_USE (getrandom, "getrandom is unportable - "
+                 "use gnulib module getrandom for portability");
+# endif
+#endif
+
+
+#endif /* _@GUARD_PREFIX@_SYS_RANDOM_H */
+#endif /* _@GUARD_PREFIX@_SYS_RANDOM_H */
index 9ddd1a8d0049b5a6867633446d889b49e6b45dba..3ce2a0dcf158521038f23cef913958f770dcd320 100644 (file)
@@ -1,5 +1,5 @@
 /* Provide a more complete sys/stat.h header file.
-   Copyright (C) 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -375,11 +375,11 @@ struct stat
 # define S_IRWXO (S_IROTH | S_IWOTH | S_IXOTH)
 #endif
 
-/* S_IXUGO is a common extension to POSIX.  */
+/* Although S_IXUGO and S_IRWXUGO are not specified by POSIX and are
+   not implemented in GNU/Linux, some Gnulib-using apps use the macros.  */
 #if !S_IXUGO
 # define S_IXUGO (S_IXUSR | S_IXGRP | S_IXOTH)
 #endif
-
 #ifndef S_IRWXUGO
 # define S_IRWXUGO (S_IRWXU | S_IRWXG | S_IRWXO)
 #endif
@@ -391,14 +391,42 @@ struct stat
 #endif
 
 
+/* On native Windows, map 'chmod' to '_chmod', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::chmod always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef chmod
+#  define chmod _chmod
+# endif
+/* Need to cast, because in mingw the last argument is 'int mode'.  */
+_GL_CXXALIAS_MDA_CAST (chmod, int, (const char *filename, mode_t mode));
+#else
+_GL_CXXALIAS_SYS (chmod, int, (const char *filename, mode_t mode));
+#endif
+_GL_CXXALIASWARN (chmod);
+
+
 #if @GNULIB_FCHMODAT@
-# if !@HAVE_FCHMODAT@
+# if @REPLACE_FCHMODAT@
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef fchmodat
+#   define fchmodat rpl_fchmodat
+#  endif
+_GL_FUNCDECL_RPL (fchmodat, int,
+                  (int fd, char const *file, mode_t mode, int flag)
+                  _GL_ARG_NONNULL ((2)));
+_GL_CXXALIAS_RPL (fchmodat, int,
+                  (int fd, char const *file, mode_t mode, int flag));
+# else
+#  if !@HAVE_FCHMODAT@
 _GL_FUNCDECL_SYS (fchmodat, int,
                   (int fd, char const *file, mode_t mode, int flag)
                   _GL_ARG_NONNULL ((2)));
-# endif
+#  endif
 _GL_CXXALIAS_SYS (fchmodat, int,
                   (int fd, char const *file, mode_t mode, int flag));
+# endif
 _GL_CXXALIASWARN (fchmodat);
 #elif defined GNULIB_POSIXCHECK
 # undef fchmodat
@@ -420,7 +448,9 @@ _GL_CXXALIAS_RPL (fstat, int, (int fd, struct stat *buf));
 # else
 _GL_CXXALIAS_SYS (fstat, int, (int fd, struct stat *buf));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (fstat);
+# endif
 #elif @GNULIB_OVERRIDES_STRUCT_STAT@
 # undef fstat
 # define fstat fstat_used_without_requesting_gnulib_module_fstat
@@ -443,18 +473,22 @@ _GL_WARN_ON_USE (fstat, "fstat has portability problems - "
 #   define fstatat rpl_fstatat
 #  endif
 _GL_FUNCDECL_RPL (fstatat, int,
-                  (int fd, char const *name, struct stat *st, int flags)
+                  (int fd, char const *restrict name, struct stat *restrict st,
+                   int flags)
                   _GL_ARG_NONNULL ((2, 3)));
 _GL_CXXALIAS_RPL (fstatat, int,
-                  (int fd, char const *name, struct stat *st, int flags));
+                  (int fd, char const *restrict name, struct stat *restrict st,
+                   int flags));
 # else
 #  if !@HAVE_FSTATAT@
 _GL_FUNCDECL_SYS (fstatat, int,
-                  (int fd, char const *name, struct stat *st, int flags)
+                  (int fd, char const *restrict name, struct stat *restrict st,
+                   int flags)
                   _GL_ARG_NONNULL ((2, 3)));
 #  endif
 _GL_CXXALIAS_SYS (fstatat, int,
-                  (int fd, char const *name, struct stat *st, int flags));
+                  (int fd, char const *restrict name, struct stat *restrict st,
+                   int flags));
 # endif
 _GL_CXXALIASWARN (fstatat);
 #elif @GNULIB_OVERRIDES_STRUCT_STAT@
@@ -499,34 +533,32 @@ _GL_WARN_ON_USE (futimens, "futimens is not portable - "
 #endif
 
 
+#if @GNULIB_GETUMASK@
+# if !@HAVE_GETUMASK@
+_GL_FUNCDECL_SYS (getumask, mode_t, (void));
+# endif
+_GL_CXXALIAS_SYS (getumask, mode_t, (void));
+# if @HAVE_GETUMASK@
+_GL_CXXALIASWARN (getumask);
+# endif
+#elif defined GNULIB_POSIXCHECK
+# undef getumask
+# if HAVE_RAW_DECL_GETUMASK
+_GL_WARN_ON_USE (getumask, "getumask is not portable - "
+                 "use gnulib module getumask for portability");
+# endif
+#endif
+
+
 #if @GNULIB_LCHMOD@
 /* Change the mode of FILENAME to MODE, without dereferencing it if FILENAME
    denotes a symbolic link.  */
-# if !@HAVE_LCHMOD@
-/* The lchmod replacement follows symbolic links.  Callers should take
-   this into account; lchmod should be applied only to arguments that
-   are known to not be symbolic links.  On hosts that lack lchmod,
-   this can lead to race conditions between the check and the
-   invocation of lchmod, but we know of no workarounds that are
-   reliable in general.  You might try requesting support for lchmod
-   from your operating system supplier.  */
-#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
-#   define lchmod chmod
-#  endif
-/* 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 */
+# if !@HAVE_LCHMOD@ || defined __hpux
 _GL_FUNCDECL_SYS (lchmod, int, (const char *filename, mode_t mode)
                                _GL_ARG_NONNULL ((1)));
-#  endif
-_GL_CXXALIAS_SYS (lchmod, int, (const char *filename, mode_t mode));
 # endif
-# if @HAVE_LCHMOD@
+_GL_CXXALIAS_SYS (lchmod, int, (const char *filename, mode_t mode));
 _GL_CXXALIASWARN (lchmod);
-# endif
 #elif defined GNULIB_POSIXCHECK
 # undef lchmod
 # if HAVE_RAW_DECL_LCHMOD
@@ -543,17 +575,21 @@ _GL_WARN_ON_USE (lchmod, "lchmod is unportable - "
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   define lstat stat
 #  endif
-_GL_CXXALIAS_RPL_1 (lstat, stat, int, (const char *name, struct stat *buf));
+_GL_CXXALIAS_RPL_1 (lstat, stat, int,
+                    (const char *restrict name, struct stat *restrict buf));
 # elif @REPLACE_LSTAT@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   undef lstat
 #   define lstat rpl_lstat
 #  endif
-_GL_FUNCDECL_RPL (lstat, int, (const char *name, struct stat *buf)
-                              _GL_ARG_NONNULL ((1, 2)));
-_GL_CXXALIAS_RPL (lstat, int, (const char *name, struct stat *buf));
+_GL_FUNCDECL_RPL (lstat, int,
+                  (const char *restrict name, struct stat *restrict buf)
+                  _GL_ARG_NONNULL ((1, 2)));
+_GL_CXXALIAS_RPL (lstat, int,
+                  (const char *restrict name, struct stat *restrict buf));
 # else
-_GL_CXXALIAS_SYS (lstat, int, (const char *name, struct stat *buf));
+_GL_CXXALIAS_SYS (lstat, int,
+                  (const char *restrict name, struct stat *restrict buf));
 # endif
 # if @HAVE_LSTAT@
 _GL_CXXALIASWARN (lstat);
@@ -766,7 +802,7 @@ _GL_WARN_ON_USE (mknodat, "mknodat is not portable - "
 #    define stat(name, st) rpl_stat (name, st)
 #   endif /* !_LARGE_FILES */
 #  endif /* !@GNULIB_OVERRIDES_STRUCT_STAT@ */
-_GL_EXTERN_C int stat (const char *name, struct stat *buf)
+_GL_EXTERN_C int stat (const char *restrict name, struct stat *restrict buf)
                       _GL_ARG_NONNULL ((1, 2));
 # endif
 #elif @GNULIB_OVERRIDES_STRUCT_STAT@
@@ -782,6 +818,22 @@ _GL_WARN_ON_USE (stat, "stat is unportable - "
 #endif
 
 
+/* On native Windows, map 'umask' to '_umask', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::umask always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef umask
+#  define umask _umask
+# endif
+/* Need to cast, because in mingw the last argument is 'int mode'.  */
+_GL_CXXALIAS_MDA_CAST (umask, mode_t, (mode_t mask));
+#else
+_GL_CXXALIAS_SYS (umask, mode_t, (mode_t mask));
+#endif
+_GL_CXXALIASWARN (umask);
+
+
 #if @GNULIB_UTIMENSAT@
 /* Use the rpl_ prefix also on Solaris <= 9, because on Solaris 9 our utimensat
    implementation relies on futimesat, which on Solaris 10 makes an invocation
diff --git a/lib/sys_time.in.h b/lib/sys_time.in.h
deleted file mode 100644 (file)
index 5397688..0000000
+++ /dev/null
@@ -1,220 +0,0 @@
-/* Provide a more complete sys/time.h.
-
-   Copyright (C) 2007-2019 Free Software Foundation, Inc.
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 3, or (at your option)
-   any later version.
-
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
-
-/* Written by Paul Eggert.  */
-
-#ifndef _@GUARD_PREFIX@_SYS_TIME_H
-
-#if __GNUC__ >= 3
-@PRAGMA_SYSTEM_HEADER@
-#endif
-@PRAGMA_COLUMNS@
-
-/* On Cygwin and on many BSDish systems, <sys/time.h> includes itself
-   recursively via <sys/select.h>.
-   Simply delegate to the system's header in this case; it is a no-op.
-   Without this extra ifdef, the C++ gettimeofday declaration below
-   would be a forward declaration in gnulib's nested <sys/time.h>.  */
-#if defined _CYGWIN_SYS_TIME_H || defined _SYS_TIME_H || defined _SYS_TIME_H_
-# @INCLUDE_NEXT@ @NEXT_SYS_TIME_H@
-#else
-
-/* The include_next requires a split double-inclusion guard.  */
-#if @HAVE_SYS_TIME_H@
-# @INCLUDE_NEXT@ @NEXT_SYS_TIME_H@
-#endif
-
-#ifndef _@GUARD_PREFIX@_SYS_TIME_H
-#define _@GUARD_PREFIX@_SYS_TIME_H
-
-#if ! @HAVE_SYS_TIME_H@
-# include <time.h>
-#endif
-
-/* On native Windows with MSVC, get the 'struct timeval' type.
-   Also, on native Windows with a 64-bit time_t, where we are overriding the
-   'struct timeval' type, get all declarations of system functions whose
-   signature contains 'struct timeval'.  */
-#if (defined _MSC_VER || @REPLACE_STRUCT_TIMEVAL@) && @HAVE_WINSOCK2_H@ && !defined _GL_INCLUDING_WINSOCK2_H
-# define _GL_INCLUDING_WINSOCK2_H
-# include <winsock2.h>
-# undef _GL_INCLUDING_WINSOCK2_H
-#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.  */
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#if !@HAVE_STRUCT_TIMEVAL@ || @REPLACE_STRUCT_TIMEVAL@
-
-# if @REPLACE_STRUCT_TIMEVAL@
-#  define timeval rpl_timeval
-# endif
-
-# if !GNULIB_defined_struct_timeval
-struct timeval
-{
-  time_t tv_sec;
-  long int tv_usec;
-};
-#  define GNULIB_defined_struct_timeval 1
-# endif
-
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-
-#if @GNULIB_GETTIMEOFDAY@
-# if @REPLACE_GETTIMEOFDAY@
-#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
-#   undef gettimeofday
-#   define gettimeofday rpl_gettimeofday
-#  endif
-_GL_FUNCDECL_RPL (gettimeofday, int,
-                  (struct timeval *restrict, void *restrict)
-                  _GL_ARG_NONNULL ((1)));
-_GL_CXXALIAS_RPL (gettimeofday, int,
-                  (struct timeval *restrict, void *restrict));
-# else
-#  if !@HAVE_GETTIMEOFDAY@
-_GL_FUNCDECL_SYS (gettimeofday, int,
-                  (struct timeval *restrict, void *restrict)
-                  _GL_ARG_NONNULL ((1)));
-#  endif
-/* Need to cast, because on glibc systems, by default, the second argument is
-                                                  struct timezone *.  */
-_GL_CXXALIAS_SYS_CAST (gettimeofday, int,
-                       (struct timeval *restrict, void *restrict));
-# endif
-_GL_CXXALIASWARN (gettimeofday);
-# if defined __cplusplus && defined GNULIB_NAMESPACE
-namespace GNULIB_NAMESPACE {
-  typedef ::timeval
-#undef timeval
-    timeval;
-}
-# endif
-#elif defined GNULIB_POSIXCHECK
-# undef gettimeofday
-# if HAVE_RAW_DECL_GETTIMEOFDAY
-_GL_WARN_ON_USE (gettimeofday, "gettimeofday is unportable - "
-                 "use gnulib module gettimeofday for portability");
-# endif
-#endif
-
-/* Hide some function declarations from <winsock2.h>.  */
-
-#if defined _MSC_VER && @HAVE_WINSOCK2_H@
-# if !defined _@GUARD_PREFIX@_UNISTD_H
-#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
-#   undef close
-#   define close close_used_without_including_unistd_h
-#  else
-     _GL_WARN_ON_USE (close,
-                      "close() used without including <unistd.h>");
-#  endif
-#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
-#   undef gethostname
-#   define gethostname gethostname_used_without_including_unistd_h
-#  else
-     _GL_WARN_ON_USE (gethostname,
-                      "gethostname() used without including <unistd.h>");
-#  endif
-# endif
-# if !defined _@GUARD_PREFIX@_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 <sys/socket.h>");
-     _GL_WARN_ON_USE (connect,
-                      "connect() used without including <sys/socket.h>");
-     _GL_WARN_ON_USE (accept,
-                      "accept() used without including <sys/socket.h>");
-     _GL_WARN_ON_USE (bind,
-                      "bind() used without including <sys/socket.h>");
-     _GL_WARN_ON_USE (getpeername,
-                      "getpeername() used without including <sys/socket.h>");
-     _GL_WARN_ON_USE (getsockname,
-                      "getsockname() used without including <sys/socket.h>");
-     _GL_WARN_ON_USE (getsockopt,
-                      "getsockopt() used without including <sys/socket.h>");
-     _GL_WARN_ON_USE (listen,
-                      "listen() used without including <sys/socket.h>");
-     _GL_WARN_ON_USE (recv,
-                      "recv() used without including <sys/socket.h>");
-     _GL_WARN_ON_USE (send,
-                      "send() used without including <sys/socket.h>");
-     _GL_WARN_ON_USE (recvfrom,
-                      "recvfrom() used without including <sys/socket.h>");
-     _GL_WARN_ON_USE (sendto,
-                      "sendto() used without including <sys/socket.h>");
-     _GL_WARN_ON_USE (setsockopt,
-                      "setsockopt() used without including <sys/socket.h>");
-     _GL_WARN_ON_USE (shutdown,
-                      "shutdown() used without including <sys/socket.h>");
-#  endif
-# endif
-# if !defined _@GUARD_PREFIX@_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 <sys/select.h>");
-#  endif
-# endif
-#endif
-
-#endif /* _@GUARD_PREFIX@_SYS_TIME_H */
-#endif /* _CYGWIN_SYS_TIME_H */
-#endif /* _@GUARD_PREFIX@_SYS_TIME_H */
index 237e2068cf894df546ec3dac92c0b447e25063a9..e7e1a22ee5e2a7eb6586692aec3d716ad7c2d30f 100644 (file)
@@ -1,6 +1,6 @@
 /* Provide a more complete sys/types.h.
 
-   Copyright (C) 2011-2019 Free Software Foundation, Inc.
+   Copyright (C) 2011-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index be62ed9513c58a171ef1481e5fd9773db726aaa2..b9f7cc8703d59ab4aad8b5235c94ef4313154553 100644 (file)
@@ -1,24 +1,22 @@
-/* tempname.c - generate the name of a temporary file.
+/* Copyright (C) 1991-2020 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
 
-   Copyright (C) 1991-2003, 2005-2007, 2009-2019 Free Software Foundation, Inc.
+   The GNU C Library is free software; you can redistribute it and/or
+   modify 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 free software: you can redistribute it and/or modify
-   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,
+   The GNU C Library is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   General Public License for more details.
 
-/* Extracted from glibc sysdeps/posix/tempname.c.  See also tmpdir.c.  */
+   You should have received a copy of the GNU General Public
+   License along with the GNU C Library; if not, see
+   <https://www.gnu.org/licenses/>.  */
 
 #if !_LIBC
-# include <config.h>
+# include <libc-config.h>
 # include "tempname.h"
 #endif
 
@@ -26,9 +24,6 @@
 #include <assert.h>
 
 #include <errno.h>
-#ifndef __set_errno
-# define __set_errno(Val) errno = (Val)
-#endif
 
 #include <stdio.h>
 #ifndef P_tmpdir
 #include <string.h>
 
 #include <fcntl.h>
-#include <sys/time.h>
+#include <stdalign.h>
 #include <stdint.h>
-#include <unistd.h>
-
+#include <sys/random.h>
 #include <sys/stat.h>
+#include <time.h>
 
 #if _LIBC
 # define struct_stat64 struct stat64
+# define __secure_getenv __libc_secure_getenv
 #else
 # define struct_stat64 struct stat
-# define __try_tempname try_tempname
 # define __gen_tempname gen_tempname
-# define __getpid getpid
-# define __gettimeofday gettimeofday
 # define __mkdir mkdir
 # define __open open
 # define __lxstat64(version, file, buf) lstat (file, buf)
+# define __getrandom getrandom
+# define __clock_gettime64 clock_gettime
+# define __timespec64 timespec
 #endif
 
-#ifdef _LIBC
-# include <hp-timing.h>
-# if HP_TIMING_AVAIL
-#  define RANDOM_BITS(Var) \
-  if (__builtin_expect (value == UINT64_C (0), 0))                            \
-    {                                                                         \
-      /* If this is the first time this function is used initialize           \
-         the variable we accumulate the value in to some somewhat             \
-         random value.  If we'd not do this programs at startup time          \
-         might have a reduced set of possible names, at least on slow         \
-         machines.  */                                                        \
-      struct timeval tv;                                                      \
-      __gettimeofday (&tv, NULL);                                             \
-      value = ((uint64_t) tv.tv_usec << 16) ^ tv.tv_sec;                      \
-    }                                                                         \
-  HP_TIMING_NOW (Var)
-# endif
-#endif
+/* Use getrandom if it works, falling back on a 64-bit linear
+   congruential generator that starts with Var's value
+   mixed in with a clock's low-order bits if available.  */
+typedef uint_fast64_t random_value;
+#define RANDOM_VALUE_MAX UINT_FAST64_MAX
+#define BASE_62_DIGITS 10 /* 62**10 < UINT_FAST64_MAX */
+#define BASE_62_POWER (62LL * 62 * 62 * 62 * 62 * 62 * 62 * 62 * 62 * 62)
 
-/* Use the widest available unsigned type if uint64_t is not
-   available.  The algorithm below extracts a number less than 62**6
-   (approximately 2**35.725) from uint64_t, so ancient hosts where
-   uintmax_t is only 32 bits lose about 3.725 bits of randomness,
-   which is better than not having mkstemp at all.  */
-#if !defined UINT64_MAX && !defined uint64_t
-# define uint64_t uintmax_t
+static random_value
+random_bits (random_value var)
+{
+  random_value r;
+  if (__getrandom (&r, sizeof r, 0) == sizeof r)
+    return r;
+#if _LIBC || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
+  /* Add entropy if getrandom is not supported.  */
+  struct __timespec64 tv;
+  __clock_gettime64 (CLOCK_MONOTONIC, &tv);
+  var ^= tv.tv_nsec;
 #endif
+  return 2862933555777941757 * var + 3037000493;
+}
 
 #if _LIBC
 /* Return nonzero if DIR is an existent directory.  */
@@ -172,18 +163,80 @@ __path_search (char *tmpl, size_t tmpl_len, const char *dir, const char *pfx,
 }
 #endif /* _LIBC */
 
+#if _LIBC
+static int try_tempname_len (char *, int, void *, int (*) (char *, void *),
+                             size_t);
+#endif
+
+static int
+try_file (char *tmpl, void *flags)
+{
+  int *openflags = flags;
+  return __open (tmpl,
+                 (*openflags & ~O_ACCMODE)
+                 | O_RDWR | O_CREAT | O_EXCL, S_IRUSR | S_IWUSR);
+}
+
+static int
+try_dir (char *tmpl, void *flags _GL_UNUSED)
+{
+  return __mkdir (tmpl, S_IRUSR | S_IWUSR | S_IXUSR);
+}
+
+static int
+try_nocreate (char *tmpl, void *flags _GL_UNUSED)
+{
+  struct_stat64 st;
+
+  if (__lxstat64 (_STAT_VER, tmpl, &st) == 0 || errno == EOVERFLOW)
+    __set_errno (EEXIST);
+  return errno == ENOENT ? 0 : -1;
+}
+
 /* These are the characters used in temporary file names.  */
 static const char letters[] =
 "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
 
+/* Generate a temporary file name based on TMPL.  TMPL must match the
+   rules for mk[s]temp (i.e., end in at least X_SUFFIX_LEN "X"s,
+   possibly with a suffix).
+   The name constructed does not exist at the time of the call to
+   this function.  TMPL is overwritten with the result.
+
+   KIND may be one of:
+   __GT_NOCREATE:       simply verify that the name does not exist
+                        at the time of the call.
+   __GT_FILE:           create the file using open(O_CREAT|O_EXCL)
+                        and return a read-write fd.  The file is mode 0600.
+   __GT_DIR:            create a directory, which will be mode 0700.
+
+   We use a clever algorithm to get hard-to-predict names. */
+#ifdef _LIBC
+static
+#endif
+int
+gen_tempname_len (char *tmpl, int suffixlen, int flags, int kind,
+                  size_t x_suffix_len)
+{
+  static int (*const tryfunc[]) (char *, void *) =
+    {
+      [__GT_FILE] = try_file,
+      [__GT_DIR] = try_dir,
+      [__GT_NOCREATE] = try_nocreate
+    };
+  return try_tempname_len (tmpl, suffixlen, &flags, tryfunc[kind],
+                           x_suffix_len);
+}
+
+#ifdef _LIBC
+static
+#endif
 int
-__try_tempname (char *tmpl, int suffixlen, void *args,
-                int (*tryfunc) (char *, void *))
+try_tempname_len (char *tmpl, int suffixlen, void *args,
+                  int (*tryfunc) (char *, void *), size_t x_suffix_len)
 {
-  int len;
+  size_t len;
   char *XXXXXX;
-  static uint64_t value;
-  uint64_t random_time_bits;
   unsigned int count;
   int fd = -1;
   int save_errno = errno;
@@ -193,7 +246,8 @@ __try_tempname (char *tmpl, int suffixlen, void *args,
      can exist for a given template is 62**6.  It should never be
      necessary to try all of these combinations.  Instead if a reasonable
      number of names is tried (we define reasonable as 62**3) fail to
-     give the system administrator the chance to remove the problems.  */
+     give the system administrator the chance to remove the problems.
+     This value requires that X_SUFFIX_LEN be at least 3.  */
 #define ATTEMPTS_MIN (62 * 62 * 62)
 
   /* The number of times to attempt to generate a temporary file.  To
@@ -204,44 +258,48 @@ __try_tempname (char *tmpl, int suffixlen, void *args,
   unsigned int attempts = ATTEMPTS_MIN;
 #endif
 
+  /* A random variable.  The initial value is used only the for fallback path
+     on 'random_bits' on 'getrandom' failure.  Its initial value tries to use
+     some entropy from the ASLR and ignore possible bits from the stack
+     alignment.  */
+  random_value v = ((uintptr_t) &v) / alignof (max_align_t);
+
+  /* How many random base-62 digits can currently be extracted from V.  */
+  int vdigits = 0;
+
+  /* Least unfair value for V.  If V is less than this, V can generate
+     BASE_62_DIGITS digits fairly.  Otherwise it might be biased.  */
+  random_value const unfair_min
+    = RANDOM_VALUE_MAX - RANDOM_VALUE_MAX % BASE_62_POWER;
+
   len = strlen (tmpl);
-  if (len < 6 + suffixlen || memcmp (&tmpl[len - 6 - suffixlen], "XXXXXX", 6))
+  if (len < x_suffix_len + suffixlen
+      || strspn (&tmpl[len - x_suffix_len - suffixlen], "X") < x_suffix_len)
     {
       __set_errno (EINVAL);
       return -1;
     }
 
   /* This is where the Xs start.  */
-  XXXXXX = &tmpl[len - 6 - suffixlen];
-
-  /* Get some more or less random data.  */
-#ifdef RANDOM_BITS
-  RANDOM_BITS (random_time_bits);
-#else
-  {
-    struct timeval tv;
-    __gettimeofday (&tv, NULL);
-    random_time_bits = ((uint64_t) tv.tv_usec << 16) ^ tv.tv_sec;
-  }
-#endif
-  value += random_time_bits ^ __getpid ();
+  XXXXXX = &tmpl[len - x_suffix_len - suffixlen];
 
-  for (count = 0; count < attempts; value += 7777, ++count)
+  for (count = 0; count < attempts; ++count)
     {
-      uint64_t v = value;
-
-      /* Fill in the random bits.  */
-      XXXXXX[0] = letters[v % 62];
-      v /= 62;
-      XXXXXX[1] = letters[v % 62];
-      v /= 62;
-      XXXXXX[2] = letters[v % 62];
-      v /= 62;
-      XXXXXX[3] = letters[v % 62];
-      v /= 62;
-      XXXXXX[4] = letters[v % 62];
-      v /= 62;
-      XXXXXX[5] = letters[v % 62];
+      for (size_t i = 0; i < x_suffix_len; i++)
+        {
+          if (vdigits == 0)
+            {
+              do
+                v = random_bits (v);
+              while (unfair_min <= v);
+
+              vdigits = BASE_62_DIGITS;
+            }
+
+          XXXXXX[i] = letters[v % 62];
+          v /= 62;
+          vdigits--;
+        }
 
       fd = tryfunc (tmpl, args);
       if (fd >= 0)
@@ -258,66 +316,17 @@ __try_tempname (char *tmpl, int suffixlen, void *args,
   return -1;
 }
 
-static int
-try_file (char *tmpl, void *flags)
-{
-  int *openflags = flags;
-  return __open (tmpl,
-                 (*openflags & ~O_ACCMODE)
-                 | O_RDWR | O_CREAT | O_EXCL, S_IRUSR | S_IWUSR);
-}
-
-static int
-try_dir (char *tmpl, void *flags _GL_UNUSED)
-{
-  return __mkdir (tmpl, S_IRUSR | S_IWUSR | S_IXUSR);
-}
-
-static int
-try_nocreate (char *tmpl, void *flags _GL_UNUSED)
+int
+__gen_tempname (char *tmpl, int suffixlen, int flags, int kind)
 {
-  struct_stat64 st;
-
-  if (__lxstat64 (_STAT_VER, tmpl, &st) == 0 || errno == EOVERFLOW)
-    __set_errno (EEXIST);
-  return errno == ENOENT ? 0 : -1;
+  return gen_tempname_len (tmpl, suffixlen, flags, kind, 6);
 }
 
-/* Generate a temporary file name based on TMPL.  TMPL must match the
-   rules for mk[s]temp (i.e. end in "XXXXXX", possibly with a suffix).
-   The name constructed does not exist at the time of the call to
-   __gen_tempname.  TMPL is overwritten with the result.
-
-   KIND may be one of:
-   __GT_NOCREATE:       simply verify that the name does not exist
-                        at the time of the call.
-   __GT_FILE:           create the file using open(O_CREAT|O_EXCL)
-                        and return a read-write fd.  The file is mode 0600.
-   __GT_DIR:            create a directory, which will be mode 0700.
-
-   We use a clever algorithm to get hard-to-predict names. */
+#if !_LIBC
 int
-__gen_tempname (char *tmpl, int suffixlen, int flags, int kind)
+try_tempname (char *tmpl, int suffixlen, void *args,
+              int (*tryfunc) (char *, void *))
 {
-  int (*tryfunc) (char *, void *);
-
-  switch (kind)
-    {
-    case __GT_FILE:
-      tryfunc = try_file;
-      break;
-
-    case __GT_DIR:
-      tryfunc = try_dir;
-      break;
-
-    case __GT_NOCREATE:
-      tryfunc = try_nocreate;
-      break;
-
-    default:
-      assert (! "invalid KIND in __gen_tempname");
-      abort ();
-    }
-  return __try_tempname (tmpl, suffixlen, &flags, tryfunc);
+  return try_tempname_len (tmpl, suffixlen, args, tryfunc, 6);
 }
+#endif
index fb203d3a10f1f00db78cda425f9ad8b2687e835a..00dcbe4c93bd824af77466a016716dd58699ce12 100644 (file)
@@ -1,6 +1,6 @@
 /* Create a temporary file or directory.
 
-   Copyright (C) 2006, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2006, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -50,6 +50,9 @@ extern "C" {
 
    We use a clever algorithm to get hard-to-predict names. */
 extern int gen_tempname (char *tmpl, int suffixlen, int flags, int kind);
+/* Similar, except X_SUFFIX_LEN gives the number of Xs.  */
+extern int gen_tempname_len (char *tmpl, int suffixlen, int flags, int kind,
+                             size_t x_suffix_len);
 
 /* Similar to gen_tempname, but TRYFUNC is called for each temporary
    name to try.  If TRYFUNC returns a non-negative number, TRY_GEN_TEMPNAME
@@ -57,6 +60,10 @@ extern int gen_tempname (char *tmpl, int suffixlen, int flags, int kind);
    name is tried, or else TRY_GEN_TEMPNAME returns -1. */
 extern int try_tempname (char *tmpl, int suffixlen, void *args,
                          int (*tryfunc) (char *, void *));
+/* Similar, except X_SUFFIX_LEN gives the number of Xs.  */
+extern int try_tempname_len (char *tmpl, int suffixlen, void *args,
+                             int (*tryfunc) (char *, void *),
+                             size_t x_suffix_len);
 
 #ifdef __cplusplus
 }
index dd3b21273c9c00f04d263d103fe75cadf78c79b3..1b17c156eba35c0fa9845c3b6435201163ff6106 100644 (file)
@@ -1,6 +1,6 @@
 /* A more-standard <time.h>.
 
-   Copyright (C) 2007-2019 Free Software Foundation, Inc.
+   Copyright (C) 2007-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
 # define _@GUARD_PREFIX@_TIME_H
 
+/* mingw's <time.h> provides the functions asctime_r, ctime_r, gmtime_r,
+   localtime_r only if <unistd.h> or <pthread.h> has been included before.  */
+# if defined __MINGW32__
+#  include <unistd.h>
+# endif
+
 # @INCLUDE_NEXT@ @NEXT_TIME_H@
 
 /* NetBSD 5.0 mis-defines NULL.  */
@@ -84,8 +90,8 @@ struct timespec
 # endif
 
 # if !GNULIB_defined_struct_time_t_must_be_integral
-/* Per http://austingroupbugs.net/view.php?id=327, POSIX requires
-   time_t to be an integer type, even though C99 permits floating
+/* https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_types.h.html
+   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.  */
@@ -97,7 +103,7 @@ struct __time_t_must_be_integral {
 
 /* Sleep for at least RQTP seconds unless interrupted,  If interrupted,
    return -1 and store the remaining time into RMTP.  See
-   <http://www.opengroup.org/susv3xsh/nanosleep.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/nanosleep.html>.  */
 # if @GNULIB_NANOSLEEP@
 #  if @REPLACE_NANOSLEEP@
 #   if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@@ -129,10 +135,27 @@ _GL_CXXALIASWARN (nanosleep);
 #   endif
 _GL_FUNCDECL_RPL (tzset, void, (void));
 _GL_CXXALIAS_RPL (tzset, void, (void));
+#  elif defined _WIN32 && !defined __CYGWIN__
+#   if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#    undef tzset
+#    define tzset _tzset
+#   endif
+_GL_CXXALIAS_MDA (tzset, void, (void));
 #  else
-#   if ! @HAVE_TZSET@
-_GL_FUNCDECL_SYS (tzset, void, (void));
+_GL_CXXALIAS_SYS (tzset, void, (void));
+#  endif
+_GL_CXXALIASWARN (tzset);
+# else
+/* On native Windows, map 'tzset' to '_tzset', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::tzset always.  */
+#  if defined _WIN32 && !defined __CYGWIN__
+#   if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#    undef tzset
+#    define tzset _tzset
 #   endif
+_GL_CXXALIAS_MDA (tzset, void, (void));
+#  else
 _GL_CXXALIAS_SYS (tzset, void, (void));
 #  endif
 _GL_CXXALIASWARN (tzset);
@@ -149,12 +172,14 @@ _GL_CXXALIAS_RPL (mktime, time_t, (struct tm *__tp));
 #  else
 _GL_CXXALIAS_SYS (mktime, time_t, (struct tm *__tp));
 #  endif
+#  if __GLIBC__ >= 2
 _GL_CXXALIASWARN (mktime);
+#  endif
 # endif
 
 /* Convert TIMER to RESULT, assuming local time and UTC respectively.  See
-   <http://www.opengroup.org/susv3xsh/localtime_r.html> and
-   <http://www.opengroup.org/susv3xsh/gmtime_r.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/localtime_r.html> and
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/gmtime_r.html>.  */
 # if @GNULIB_TIME_R@
 #  if @REPLACE_LOCALTIME_R@
 #   if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@@ -203,8 +228,8 @@ _GL_CXXALIASWARN (gmtime_r);
 # endif
 
 /* Convert TIMER to RESULT, assuming local time and UTC respectively.  See
-   <http://www.opengroup.org/susv3xsh/localtime.html> and
-   <http://www.opengroup.org/susv3xsh/gmtime.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/localtime.html> and
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/gmtime.html>.  */
 # if @GNULIB_LOCALTIME@ || @REPLACE_LOCALTIME@
 #  if @REPLACE_LOCALTIME@
 #   if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@@ -217,7 +242,9 @@ _GL_CXXALIAS_RPL (localtime, struct tm *, (time_t const *__timer));
 #  else
 _GL_CXXALIAS_SYS (localtime, struct tm *, (time_t const *__timer));
 #  endif
+#  if __GLIBC__ >= 2
 _GL_CXXALIASWARN (localtime);
+#  endif
 # endif
 
 # if 0 || @REPLACE_GMTIME@
@@ -237,7 +264,7 @@ _GL_CXXALIASWARN (gmtime);
 
 /* Parse BUF as a timestamp, assuming FORMAT specifies its layout, and store
    the resulting broken-down time into TM.  See
-   <http://www.opengroup.org/susv3xsh/strptime.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/strptime.html>.  */
 # if @GNULIB_STRPTIME@
 #  if ! @HAVE_STRPTIME@
 _GL_FUNCDECL_SYS (strptime, char *, (char const *restrict __buf,
@@ -252,7 +279,7 @@ _GL_CXXALIASWARN (strptime);
 # endif
 
 /* Convert *TP to a date and time string.  See
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/ctime.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/ctime.html>.  */
 # if @GNULIB_CTIME@
 #  if @REPLACE_CTIME@
 #   if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@@ -264,26 +291,33 @@ _GL_CXXALIAS_RPL (ctime, char *, (time_t const *__tp));
 #  else
 _GL_CXXALIAS_SYS (ctime, char *, (time_t const *__tp));
 #  endif
+#  if __GLIBC__ >= 2
 _GL_CXXALIASWARN (ctime);
+#  endif
 # endif
 
 /* Convert *TP to a date and time string.  See
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/strftime.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/strftime.html>.  */
 # if @GNULIB_STRFTIME@
 #  if @REPLACE_STRFTIME@
 #   if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #    define strftime rpl_strftime
 #   endif
-_GL_FUNCDECL_RPL (strftime, size_t, (char *__buf, size_t __bufsize,
-                                     const char *__fmt, const struct tm *__tp)
-                                    _GL_ARG_NONNULL ((1, 3, 4)));
-_GL_CXXALIAS_RPL (strftime, size_t, (char *__buf, size_t __bufsize,
-                                     const char *__fmt, const struct tm *__tp));
+_GL_FUNCDECL_RPL (strftime, size_t,
+                  (char *restrict __buf, size_t __bufsize,
+                   const char *restrict __fmt, const struct tm *restrict __tp)
+                  _GL_ARG_NONNULL ((1, 3, 4)));
+_GL_CXXALIAS_RPL (strftime, size_t,
+                  (char *restrict __buf, size_t __bufsize,
+                   const char *restrict __fmt, const struct tm *restrict __tp));
 #  else
-_GL_CXXALIAS_SYS (strftime, size_t, (char *__buf, size_t __bufsize,
-                                     const char *__fmt, const struct tm *__tp));
+_GL_CXXALIAS_SYS (strftime, size_t,
+                  (char *restrict __buf, size_t __bufsize,
+                   const char *restrict __fmt, const struct tm *restrict __tp));
 #  endif
+#  if __GLIBC__ >= 2
 _GL_CXXALIASWARN (strftime);
+#  endif
 # endif
 
 # if defined _GNU_SOURCE && @GNULIB_TIME_RZ@ && ! @HAVE_TIMEZONE_T@
@@ -333,17 +367,17 @@ _GL_WARN_ON_USE (asctime, "asctime can overrun buffers in some cases - "
 # endif
 # if defined GNULIB_POSIXCHECK
 #  undef asctime_r
-_GL_WARN_ON_USE (asctime, "asctime_r can overrun buffers in some cases - "
+_GL_WARN_ON_USE (asctime_r, "asctime_r can overrun buffers in some cases - "
                  "better use strftime (or even sprintf) instead");
 # endif
 # if defined GNULIB_POSIXCHECK
 #  undef ctime
-_GL_WARN_ON_USE (asctime, "ctime can overrun buffers in some cases - "
+_GL_WARN_ON_USE (ctime, "ctime can overrun buffers in some cases - "
                  "better use strftime (or even sprintf) instead");
 # endif
 # if defined GNULIB_POSIXCHECK
 #  undef ctime_r
-_GL_WARN_ON_USE (asctime, "ctime_r can overrun buffers in some cases - "
+_GL_WARN_ON_USE (ctime_r, "ctime_r can overrun buffers in some cases - "
                  "better use strftime (or even sprintf) instead");
 # endif
 
index 59ee39ecea5925a4ff56c7224bcad23c94b45ed0..4033ffeef7224067cfbe411d47350c63380eaf24 100644 (file)
@@ -1,5 +1,5 @@
 /* Substitute for and wrapper around <unistd.h>.
-   Copyright (C) 2003-2019 Free Software Foundation, Inc.
+   Copyright (C) 2003-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 #endif
 @PRAGMA_COLUMNS@
 
-#ifdef _GL_INCLUDING_UNISTD_H
+#if @HAVE_UNISTD_H@ && defined _GL_INCLUDING_UNISTD_H
 /* Special invocation convention:
    - On Mac OS X 10.3.9 we have a sequence of nested includes
      <unistd.h> -> <signal.h> -> <pthread.h> -> <unistd.h>
 # undef __need_system_stdlib_h
 #endif
 
-/* Native Windows platforms declare chdir, getcwd, rmdir in
+/* Native Windows platforms declare _chdir, _getcwd, _rmdir in
    <io.h> and/or <direct.h>, not in <unistd.h>.
-   They also declare access(), chmod(), close(), dup(), dup2(), isatty(),
-   lseek(), read(), unlink(), write() in <io.h>.  */
-#if ((@GNULIB_CHDIR@ || @GNULIB_GETCWD@ || @GNULIB_RMDIR@ \
-      || defined GNULIB_POSIXCHECK) \
-     && (defined _WIN32 && ! defined __CYGWIN__))
-# include <io.h>     /* mingw32, mingw64 */
-# include <direct.h> /* mingw64, MSVC 9 */
-#elif (@GNULIB_CLOSE@ || @GNULIB_DUP@ || @GNULIB_DUP2@ || @GNULIB_ISATTY@ \
-       || @GNULIB_LSEEK@ || @GNULIB_READ@ || @GNULIB_UNLINK@ || @GNULIB_WRITE@ \
-       || defined GNULIB_POSIXCHECK) \
-      && (defined _WIN32 && ! defined __CYGWIN__)
+   They also declare _access(), _chmod(), _close(), _dup(), _dup2(), _isatty(),
+   _lseek(), _read(), _unlink(), _write() in <io.h>.  */
+#if defined _WIN32 && !defined __CYGWIN__
 # include <io.h>
+# include <direct.h>
+#endif
+
+/* Native Windows platforms declare _execl*, _execv* in <process.h>.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# include <process.h>
 #endif
 
 /* AIX and OSF/1 5.1 declare getdomainname in <netdb.h>, not in <unistd.h>.
 # include <netdb.h>
 #endif
 
+/* Mac OS X 10.13, Solaris 11.4, and Android 9.0 declare getentropy in
+   <sys/random.h>, not in <unistd.h>.  */
+/* But avoid namespace pollution on glibc systems.  */
+#if (@GNULIB_GETENTROPY@ || defined GNULIB_POSIXCHECK) \
+    && ((defined __APPLE__ && defined __MACH__) || defined __sun \
+        || defined __ANDROID__) \
+    && @UNISTD_H_HAVE_SYS_RANDOM_H@ \
+    && !defined __GLIBC__
+# include <sys/random.h>
+#endif
+
 /* Android 4.3 declares fchownat in <sys/stat.h>, not in <unistd.h>.  */
 /* But avoid namespace pollution on glibc systems.  */
 #if (@GNULIB_FCHOWNAT@ || defined GNULIB_POSIXCHECK) && defined __ANDROID__ \
 
 /* MSVC defines off_t in <sys/types.h>.
    May also define off_t to a 64-bit type on native Windows.  */
-/* But avoid namespace pollution on glibc systems.  */
-#ifndef __GLIBC__
-/* Get off_t, ssize_t.  */
-# include <sys/types.h>
-#endif
+/* Get off_t, ssize_t, mode_t.  */
+#include <sys/types.h>
 
 /* The definitions of _GL_FUNCDECL_RPL etc. are copied here.  */
 
 
 
 /* Get getopt(), optarg, optind, opterr, optopt.  */
-#if @GNULIB_UNISTD_H_GETOPT@ && !defined _GL_SYSTEM_GETOPT
+#if @GNULIB_GETOPT_POSIX@ && @GNULIB_UNISTD_H_GETOPT@ && !defined _GL_SYSTEM_GETOPT
 # include <getopt-cdefs.h>
 # include <getopt-pfx-core.h>
 #endif
@@ -253,15 +259,61 @@ _GL_INLINE_HEADER_BEGIN
 /* Declare overridden functions.  */
 
 
-#if defined GNULIB_POSIXCHECK
+#if @GNULIB_ACCESS@
+# if @REPLACE_ACCESS@
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef access
+#   define access rpl_access
+#  endif
+_GL_FUNCDECL_RPL (access, int, (const char *file, int mode)
+                               _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (access, int, (const char *file, int mode));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef access
+#   define access _access
+#  endif
+_GL_CXXALIAS_MDA (access, int, (const char *file, int mode));
+# else
+_GL_CXXALIAS_SYS (access, int, (const char *file, int mode));
+# endif
+_GL_CXXALIASWARN (access);
+#elif defined GNULIB_POSIXCHECK
+# undef access
+# if HAVE_RAW_DECL_ACCESS
 /* The access() function is a security risk.  */
-_GL_WARN_ON_USE (access, "the access function is a security risk - "
+_GL_WARN_ON_USE (access, "access does not always support X_OK - "
+                 "use gnulib module access for portability; "
+                 "also, this function is a security risk - "
                  "use the gnulib module faccessat instead");
+# endif
+#else
+/* On native Windows, map 'access' to '_access', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::access always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef access
+#   define access _access
+#  endif
+_GL_CXXALIAS_MDA (access, int, (const char *file, int mode));
+# else
+_GL_CXXALIAS_SYS (access, int, (const char *file, int mode));
+# endif
+_GL_CXXALIASWARN (access);
 #endif
 
 
 #if @GNULIB_CHDIR@
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef chdir
+#   define chdir _chdir
+#  endif
+_GL_CXXALIAS_MDA (chdir, int, (const char *file));
+# else
 _GL_CXXALIAS_SYS (chdir, int, (const char *file) _GL_ARG_NONNULL ((1)));
+# endif
 _GL_CXXALIASWARN (chdir);
 #elif defined GNULIB_POSIXCHECK
 # undef chdir
@@ -269,6 +321,20 @@ _GL_CXXALIASWARN (chdir);
 _GL_WARN_ON_USE (chown, "chdir is not always in <unistd.h> - "
                  "use gnulib module chdir for portability");
 # endif
+#else
+/* On native Windows, map 'chdir' to '_chdir', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::chdir always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef chdir
+#   define chdir _chdir
+#  endif
+_GL_CXXALIAS_MDA (chdir, int, (const char *file));
+# else
+_GL_CXXALIAS_SYS (chdir, int, (const char *file) _GL_ARG_NONNULL ((1)));
+# endif
+_GL_CXXALIASWARN (chdir);
 #endif
 
 
@@ -277,7 +343,7 @@ _GL_WARN_ON_USE (chown, "chdir is not always in <unistd.h> - "
    to GID (if GID is not -1).  Follow symbolic links.
    Return 0 if successful, otherwise -1 and errno set.
    See the POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/chown.html.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/chown.html.  */
 # if @REPLACE_CHOWN@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   undef chown
@@ -313,6 +379,12 @@ _GL_WARN_ON_USE (chown, "chown fails to follow symlinks on some systems and "
 #  endif
 _GL_FUNCDECL_RPL (close, int, (int fd));
 _GL_CXXALIAS_RPL (close, int, (int fd));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef close
+#   define close _close
+#  endif
+_GL_CXXALIAS_MDA (close, int, (int fd));
 # else
 _GL_CXXALIAS_SYS (close, int, (int fd));
 # endif
@@ -325,6 +397,20 @@ _GL_CXXALIASWARN (close);
 /* Assume close is always declared.  */
 _GL_WARN_ON_USE (close, "close does not portably work on sockets - "
                  "use gnulib module close for portability");
+#else
+/* On native Windows, map 'close' to '_close', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::close always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef close
+#   define close _close
+#  endif
+_GL_CXXALIAS_MDA (close, int, (int fd));
+# else
+_GL_CXXALIAS_SYS (close, int, (int fd));
+# endif
+_GL_CXXALIASWARN (close);
 #endif
 
 
@@ -339,10 +425,11 @@ _GL_CXXALIAS_SYS (copy_file_range, ssize_t, (int ifd, off_t *ipos,
 # endif
 _GL_CXXALIASWARN (copy_file_range);
 #elif defined GNULIB_POSIXCHECK
-/* Assume copy_file_range is always declared.  */
+# if HAVE_RAW_DECL_COPY_FILE_RANGE
 _GL_WARN_ON_USE (copy_file_range,
                  "copy_file_range is unportable - "
                  "use gnulib module copy_file_range for portability");
+# endif
 #endif
 
 
@@ -353,6 +440,12 @@ _GL_WARN_ON_USE (copy_file_range,
 #  endif
 _GL_FUNCDECL_RPL (dup, int, (int oldfd));
 _GL_CXXALIAS_RPL (dup, int, (int oldfd));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef dup
+#   define dup _dup
+#  endif
+_GL_CXXALIAS_MDA (dup, int, (int oldfd));
 # else
 _GL_CXXALIAS_SYS (dup, int, (int oldfd));
 # endif
@@ -363,6 +456,20 @@ _GL_CXXALIASWARN (dup);
 _GL_WARN_ON_USE (dup, "dup is unportable - "
                  "use gnulib module dup for portability");
 # endif
+#else
+/* On native Windows, map 'dup' to '_dup', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::dup always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef dup
+#   define dup _dup
+#  endif
+_GL_CXXALIAS_MDA (dup, int, (int oldfd));
+# else
+_GL_CXXALIAS_SYS (dup, int, (int oldfd));
+# endif
+_GL_CXXALIASWARN (dup);
 #endif
 
 
@@ -371,17 +478,20 @@ _GL_WARN_ON_USE (dup, "dup is unportable - "
    NEWFD = OLDFD, otherwise close NEWFD first if it is open.
    Return newfd if successful, otherwise -1 and errno set.
    See the POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/dup2.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/dup2.html>.  */
 # if @REPLACE_DUP2@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   define dup2 rpl_dup2
 #  endif
 _GL_FUNCDECL_RPL (dup2, int, (int oldfd, int newfd));
 _GL_CXXALIAS_RPL (dup2, int, (int oldfd, int newfd));
-# else
-#  if !@HAVE_DUP2@
-_GL_FUNCDECL_SYS (dup2, int, (int oldfd, int newfd));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef dup2
+#   define dup2 _dup2
 #  endif
+_GL_CXXALIAS_MDA (dup2, int, (int oldfd, int newfd));
+# else
 _GL_CXXALIAS_SYS (dup2, int, (int oldfd, int newfd));
 # endif
 _GL_CXXALIASWARN (dup2);
@@ -391,6 +501,20 @@ _GL_CXXALIASWARN (dup2);
 _GL_WARN_ON_USE (dup2, "dup2 is unportable - "
                  "use gnulib module dup2 for portability");
 # endif
+#else
+/* On native Windows, map 'dup2' to '_dup2', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::dup2 always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef dup2
+#   define dup2 _dup2
+#  endif
+_GL_CXXALIAS_MDA (dup2, int, (int oldfd, int newfd));
+# else
+_GL_CXXALIAS_SYS (dup2, int, (int oldfd, int newfd));
+# endif
+_GL_CXXALIASWARN (dup2);
 #endif
 
 
@@ -491,6 +615,119 @@ _GL_WARN_ON_USE (euidaccess, "euidaccess is unportable - "
 #endif
 
 
+/* On native Windows, map 'execl' to '_execl', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::execl always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef execl
+#  define execl _execl
+# endif
+_GL_CXXALIAS_MDA (execl, intptr_t, (const char *program, const char *arg, ...));
+#else
+_GL_CXXALIAS_SYS (execl, int, (const char *program, const char *arg, ...));
+#endif
+_GL_CXXALIASWARN (execl);
+
+/* On native Windows, map 'execle' to '_execle', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::execle always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef execle
+#  define execle _execle
+# endif
+_GL_CXXALIAS_MDA (execle, intptr_t, (const char *program, const char *arg, ...));
+#else
+_GL_CXXALIAS_SYS (execle, int, (const char *program, const char *arg, ...));
+#endif
+_GL_CXXALIASWARN (execle);
+
+/* On native Windows, map 'execlp' to '_execlp', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::execlp always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef execlp
+#  define execlp _execlp
+# endif
+_GL_CXXALIAS_MDA (execlp, intptr_t, (const char *program, const char *arg, ...));
+#else
+_GL_CXXALIAS_SYS (execlp, int, (const char *program, const char *arg, ...));
+#endif
+_GL_CXXALIASWARN (execlp);
+
+
+/* On native Windows, map 'execv' to '_execv', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::execv always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef execv
+#  define execv _execv
+# endif
+_GL_CXXALIAS_MDA (execv, intptr_t,
+                  (const char *program, const char * const *argv));
+#else
+_GL_CXXALIAS_SYS (execv, int, (const char *program, char * const *argv));
+#endif
+_GL_CXXALIASWARN (execv);
+
+/* On native Windows, map 'execve' to '_execve', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::execve always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef execve
+#  define execve _execve
+# endif
+_GL_CXXALIAS_MDA (execve, intptr_t,
+                  (const char *program, const char * const *argv,
+                   const char * const *env));
+#else
+_GL_CXXALIAS_SYS (execve, int,
+                  (const char *program, char * const *argv, char * const *env));
+#endif
+_GL_CXXALIASWARN (execve);
+
+/* On native Windows, map 'execvp' to '_execvp', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::execvp always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef execvp
+#  define execvp _execvp
+# endif
+_GL_CXXALIAS_MDA (execvp, intptr_t,
+                  (const char *program, const char * const *argv));
+#else
+_GL_CXXALIAS_SYS (execvp, int, (const char *program, char * const *argv));
+#endif
+_GL_CXXALIASWARN (execvp);
+
+/* On native Windows, map 'execvpe' to '_execvpe', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::execvpe on all platforms that have
+   it.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef execvpe
+#  define execvpe _execvpe
+# endif
+_GL_CXXALIAS_MDA (execvpe, intptr_t,
+                  (const char *program, const char * const *argv,
+                   const char * const *env));
+#else
+# if @HAVE_DECL_EXECVPE@
+_GL_CXXALIAS_SYS (execvpe, int,
+                  (const char *program, char * const *argv, char * const *env));
+# endif
+#endif
+#if (defined _WIN32 && !defined __CYGWIN__) || @HAVE_DECL_EXECVPE@
+_GL_CXXALIASWARN (execvpe);
+#endif
+
+
 #if @GNULIB_FACCESSAT@
 # if @REPLACE_FACCESSAT@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@@ -526,7 +763,7 @@ _GL_WARN_ON_USE (faccessat, "faccessat is not portable - "
    the given file descriptor is open.
    Return 0 if successful, otherwise -1 and errno set.
    See the POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/fchdir.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/fchdir.html>.  */
 # if ! @HAVE_FCHDIR@
 _GL_FUNCDECL_SYS (fchdir, int, (int /*fd*/));
 
@@ -587,7 +824,7 @@ _GL_WARN_ON_USE (fchownat, "fchownat is not portable - "
 /* Synchronize changes to a file.
    Return 0 if successful, otherwise -1 and errno set.
    See POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/fdatasync.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/fdatasync.html>.  */
 # if !@HAVE_FDATASYNC@ || !@HAVE_DECL_FDATASYNC@
 _GL_FUNCDECL_SYS (fdatasync, int, (int fd));
 # endif
@@ -606,7 +843,7 @@ _GL_WARN_ON_USE (fdatasync, "fdatasync is unportable - "
 /* Synchronize changes, including metadata, to a file.
    Return 0 if successful, otherwise -1 and errno set.
    See POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/fsync.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/fsync.html>.  */
 # if !@HAVE_FSYNC@
 _GL_FUNCDECL_SYS (fsync, int, (int fd));
 # endif
@@ -625,7 +862,7 @@ _GL_WARN_ON_USE (fsync, "fsync is unportable - "
 /* Change the size of the file to which FD is opened to become equal to LENGTH.
    Return 0 if successful, otherwise -1 and errno set.
    See the POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/ftruncate.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/ftruncate.html>.  */
 # if @REPLACE_FTRUNCATE@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   undef ftruncate
@@ -655,7 +892,7 @@ _GL_WARN_ON_USE (ftruncate, "ftruncate is unportable - "
    Return BUF if successful, or NULL if the directory couldn't be determined
    or SIZE was too small.
    See the POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/getcwd.html>.
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/getcwd.html>.
    Additionally, the gnulib module 'getcwd' guarantees the following GNU
    extension: If BUF is NULL, an array is allocated with 'malloc'; the array
    is SIZE bytes long, unless SIZE == 0, in which case it is as big as
@@ -666,6 +903,12 @@ _GL_WARN_ON_USE (ftruncate, "ftruncate is unportable - "
 #  endif
 _GL_FUNCDECL_RPL (getcwd, char *, (char *buf, size_t size));
 _GL_CXXALIAS_RPL (getcwd, char *, (char *buf, size_t size));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef getcwd
+#   define getcwd _getcwd
+#  endif
+_GL_CXXALIAS_MDA (getcwd, char *, (char *buf, size_t size));
 # else
 /* Need to cast, because on mingw, the second parameter is
                                                    int size.  */
@@ -678,6 +921,22 @@ _GL_CXXALIASWARN (getcwd);
 _GL_WARN_ON_USE (getcwd, "getcwd is unportable - "
                  "use gnulib module getcwd for portability");
 # endif
+#else
+/* On native Windows, map 'getcwd' to '_getcwd', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::getcwd always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef getcwd
+#   define getcwd _getcwd
+#  endif
+/* Need to cast, because on mingw, the second parameter is either
+   'int size' or 'size_t size'.  */
+_GL_CXXALIAS_MDA_CAST (getcwd, char *, (char *buf, size_t size));
+# else
+_GL_CXXALIAS_SYS_CAST (getcwd, char *, (char *buf, size_t size));
+# endif
+_GL_CXXALIASWARN (getcwd);
 #endif
 
 
@@ -731,7 +990,9 @@ _GL_CXXALIAS_RPL (getdtablesize, int, (void));
 #  if !@HAVE_GETDTABLESIZE@
 _GL_FUNCDECL_SYS (getdtablesize, int, (void));
 #  endif
-_GL_CXXALIAS_SYS (getdtablesize, int, (void));
+/* Need to cast, because on AIX, the parameter list is
+                                           (...).  */
+_GL_CXXALIAS_SYS_CAST (getdtablesize, int, (void));
 # endif
 _GL_CXXALIASWARN (getdtablesize);
 #elif defined GNULIB_POSIXCHECK
@@ -743,6 +1004,22 @@ _GL_WARN_ON_USE (getdtablesize, "getdtablesize is unportable - "
 #endif
 
 
+#if @GNULIB_GETENTROPY@
+/* Fill a buffer with random bytes.  */
+# if !@HAVE_GETENTROPY@
+_GL_FUNCDECL_SYS (getentropy, int, (void *buffer, size_t length));
+# endif
+_GL_CXXALIAS_SYS (getentropy, int, (void *buffer, size_t length));
+_GL_CXXALIASWARN (getentropy);
+#elif defined GNULIB_POSIXCHECK
+# undef getentropy
+# if HAVE_RAW_DECL_GETENTROPY
+_GL_WARN_ON_USE (getentropy, "getentropy is unportable - "
+                 "use gnulib module getentropy for portability");
+# endif
+#endif
+
+
 #if @GNULIB_GETGROUPS@
 /* Return the supplemental groups that the current process belongs to.
    It is unspecified whether the effective group id is in the list.
@@ -815,7 +1092,7 @@ _GL_WARN_ON_USE (gethostname, "gethostname is unportable - "
 /* Returns the user's login name, or NULL if it cannot be found.  Upon error,
    returns NULL with errno set.
 
-   See <http://www.opengroup.org/susv3xsh/getlogin.html>.
+   See <https://pubs.opengroup.org/onlinepubs/9699919799/functions/getlogin.html>.
 
    Most programs don't need to use this function, because the information is
    available through environment variables:
@@ -844,7 +1121,7 @@ _GL_WARN_ON_USE (getlogin, "getlogin is unportable - "
    the case that the login name cannot be found but no specific error is
    provided (this case is hopefully rare but is left open by the POSIX spec).
 
-   See <http://www.opengroup.org/susv3xsh/getlogin.html>.
+   See <https://pubs.opengroup.org/onlinepubs/9699919799/functions/getlogin.html>.
 
    Most programs don't need to use this function, because the information is
    available through environment variables:
@@ -885,6 +1162,11 @@ _GL_WARN_ON_USE (getlogin_r, "getlogin_r is unportable - "
 _GL_FUNCDECL_RPL (getpagesize, int, (void));
 _GL_CXXALIAS_RPL (getpagesize, int, (void));
 # else
+/* On HP-UX, getpagesize exists, but it is not declared in <unistd.h> even if
+   the compiler options -D_HPUX_SOURCE -D_XOPEN_SOURCE=600 are used.  */
+#  if defined __hpux
+_GL_FUNCDECL_SYS (getpagesize, int, (void));
+#  endif
 #  if !@HAVE_GETPAGESIZE@
 #   if !defined getpagesize
 /* This is for POSIX systems.  */
@@ -989,6 +1271,21 @@ _GL_WARN_ON_USE (getpass, "getpass is unportable - "
 #endif
 
 
+/* On native Windows, map 'getpid' to '_getpid', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::getpid always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef getpid
+#  define getpid _getpid
+# endif
+_GL_CXXALIAS_MDA (getpid, int, (void));
+#else
+_GL_CXXALIAS_SYS (getpid, pid_t, (void));
+#endif
+_GL_CXXALIASWARN (getpid);
+
+
 #if @GNULIB_GETUSERSHELL@
 /* Return the next valid login shell on the system, or NULL when the end of
    the list has been reached.  */
@@ -1061,6 +1358,12 @@ _GL_WARN_ON_USE (group_member, "group_member is unportable - "
 #  endif
 _GL_FUNCDECL_RPL (isatty, int, (int fd));
 _GL_CXXALIAS_RPL (isatty, int, (int fd));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef isatty
+#   define isatty _isatty
+#  endif
+_GL_CXXALIAS_MDA (isatty, int, (int fd));
 # else
 _GL_CXXALIAS_SYS (isatty, int, (int fd));
 # endif
@@ -1071,6 +1374,20 @@ _GL_CXXALIASWARN (isatty);
 _GL_WARN_ON_USE (isatty, "isatty has portability problems on native Windows - "
                  "use gnulib module isatty for portability");
 # endif
+#else
+/* On native Windows, map 'isatty' to '_isatty', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::isatty always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef isatty
+#   define isatty _isatty
+#  endif
+_GL_CXXALIAS_MDA (isatty, int, (int fd));
+# else
+_GL_CXXALIAS_SYS (isatty, int, (int fd));
+# endif
+_GL_CXXALIASWARN (isatty);
 #endif
 
 
@@ -1079,7 +1396,7 @@ _GL_WARN_ON_USE (isatty, "isatty has portability problems on native Windows - "
    to GID (if GID is not -1).  Do not follow symbolic links.
    Return 0 if successful, otherwise -1 and errno set.
    See the POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/lchown.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/lchown.html>.  */
 # if @REPLACE_LCHOWN@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   undef lchown
@@ -1109,7 +1426,7 @@ _GL_WARN_ON_USE (lchown, "lchown is unportable to pre-POSIX.1-2001 systems - "
 /* Create a new hard link for an existing file.
    Return 0 if successful, otherwise -1 and errno set.
    See POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/link.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/link.html>.  */
 # if @REPLACE_LINK@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   define link rpl_link
@@ -1175,13 +1492,19 @@ _GL_WARN_ON_USE (linkat, "linkat is unportable - "
 /* Set the offset of FD relative to SEEK_SET, SEEK_CUR, or SEEK_END.
    Return the new offset if successful, otherwise -1 and errno set.
    See the POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/lseek.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/lseek.html>.  */
 # if @REPLACE_LSEEK@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   define lseek rpl_lseek
 #  endif
 _GL_FUNCDECL_RPL (lseek, off_t, (int fd, off_t offset, int whence));
 _GL_CXXALIAS_RPL (lseek, off_t, (int fd, off_t offset, int whence));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef lseek
+#   define lseek _lseek
+#  endif
+_GL_CXXALIAS_MDA (lseek, off_t, (int fd, off_t offset, int whence));
 # else
 _GL_CXXALIAS_SYS (lseek, off_t, (int fd, off_t offset, int whence));
 # endif
@@ -1192,6 +1515,20 @@ _GL_CXXALIASWARN (lseek);
 _GL_WARN_ON_USE (lseek, "lseek does not fail with ESPIPE on pipes on some "
                  "systems - use gnulib module lseek for portability");
 # endif
+#else
+/* On native Windows, map 'lseek' to '_lseek', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::lseek always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef lseek
+#   define lseek _lseek
+#  endif
+_GL_CXXALIAS_MDA (lseek, long, (int fd, long offset, int whence));
+# else
+_GL_CXXALIAS_SYS (lseek, off_t, (int fd, off_t offset, int whence));
+# endif
+_GL_CXXALIASWARN (lseek);
 #endif
 
 
@@ -1247,7 +1584,7 @@ _GL_WARN_ON_USE (pipe2, "pipe2 is unportable - "
    Return the number of bytes placed into BUF if successful, otherwise
    set errno and return -1.  0 indicates EOF.
    See the POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/pread.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/pread.html>.  */
 # if @REPLACE_PREAD@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   undef pread
@@ -1282,7 +1619,7 @@ _GL_WARN_ON_USE (pread, "pread is unportable - "
    Return the number of bytes written if successful, otherwise
    set errno and return -1.  0 indicates nothing written.  See the
    POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/pwrite.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/pwrite.html>.  */
 # if @REPLACE_PWRITE@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   undef pwrite
@@ -1315,7 +1652,7 @@ _GL_WARN_ON_USE (pwrite, "pwrite is unportable - "
 #if @GNULIB_READ@
 /* Read up to COUNT bytes from file descriptor FD into the buffer starting
    at BUF.  See the POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/read.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/read.html>.  */
 # if @REPLACE_READ@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   undef read
@@ -1324,11 +1661,32 @@ _GL_WARN_ON_USE (pwrite, "pwrite is unportable - "
 _GL_FUNCDECL_RPL (read, ssize_t, (int fd, void *buf, size_t count)
                                  _GL_ARG_NONNULL ((2)));
 _GL_CXXALIAS_RPL (read, ssize_t, (int fd, void *buf, size_t count));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef read
+#   define read _read
+#  endif
+_GL_CXXALIAS_MDA (read, ssize_t, (int fd, void *buf, size_t count));
 # else
-/* Need to cast, because on mingw, the third parameter is
-                                                          unsigned int count
-   and the return type is 'int'.  */
-_GL_CXXALIAS_SYS_CAST (read, ssize_t, (int fd, void *buf, size_t count));
+_GL_CXXALIAS_SYS (read, ssize_t, (int fd, void *buf, size_t count));
+# endif
+_GL_CXXALIASWARN (read);
+#else
+/* On native Windows, map 'read' to '_read', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::read always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef read
+#   define read _read
+#  endif
+#  ifdef __MINGW32__
+_GL_CXXALIAS_MDA (read, int, (int fd, void *buf, unsigned int count));
+#  else
+_GL_CXXALIAS_MDA (read, ssize_t, (int fd, void *buf, unsigned int count));
+#  endif
+# else
+_GL_CXXALIAS_SYS (read, ssize_t, (int fd, void *buf, size_t count));
 # endif
 _GL_CXXALIASWARN (read);
 #endif
@@ -1339,24 +1697,28 @@ _GL_CXXALIASWARN (read);
    bytes of it into BUF.  Return the number of bytes placed into BUF if
    successful, otherwise -1 and errno set.
    See the POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/readlink.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/readlink.html>.  */
 # if @REPLACE_READLINK@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   define readlink rpl_readlink
 #  endif
 _GL_FUNCDECL_RPL (readlink, ssize_t,
-                  (const char *file, char *buf, size_t bufsize)
+                  (const char *restrict file,
+                   char *restrict buf, size_t bufsize)
                   _GL_ARG_NONNULL ((1, 2)));
 _GL_CXXALIAS_RPL (readlink, ssize_t,
-                  (const char *file, char *buf, size_t bufsize));
+                  (const char *restrict file,
+                   char *restrict buf, size_t bufsize));
 # else
 #  if !@HAVE_READLINK@
 _GL_FUNCDECL_SYS (readlink, ssize_t,
-                  (const char *file, char *buf, size_t bufsize)
+                  (const char *restrict file,
+                   char *restrict buf, size_t bufsize)
                   _GL_ARG_NONNULL ((1, 2)));
 #  endif
 _GL_CXXALIAS_SYS (readlink, ssize_t,
-                  (const char *file, char *buf, size_t bufsize));
+                  (const char *restrict file,
+                   char *restrict buf, size_t bufsize));
 # endif
 _GL_CXXALIASWARN (readlink);
 #elif defined GNULIB_POSIXCHECK
@@ -1374,18 +1736,22 @@ _GL_WARN_ON_USE (readlink, "readlink is unportable - "
 #   define readlinkat rpl_readlinkat
 #  endif
 _GL_FUNCDECL_RPL (readlinkat, ssize_t,
-                  (int fd, char const *file, char *buf, size_t len)
+                  (int fd, char const *restrict file,
+                   char *restrict buf, size_t len)
                   _GL_ARG_NONNULL ((2, 3)));
 _GL_CXXALIAS_RPL (readlinkat, ssize_t,
-                  (int fd, char const *file, char *buf, size_t len));
+                  (int fd, char const *restrict file,
+                   char *restrict buf, size_t len));
 # else
 #  if !@HAVE_READLINKAT@
 _GL_FUNCDECL_SYS (readlinkat, ssize_t,
-                  (int fd, char const *file, char *buf, size_t len)
+                  (int fd, char const *restrict file,
+                   char *restrict buf, size_t len)
                   _GL_ARG_NONNULL ((2, 3)));
 #  endif
 _GL_CXXALIAS_SYS (readlinkat, ssize_t,
-                  (int fd, char const *file, char *buf, size_t len));
+                  (int fd, char const *restrict file,
+                   char *restrict buf, size_t len));
 # endif
 _GL_CXXALIASWARN (readlinkat);
 #elif defined GNULIB_POSIXCHECK
@@ -1405,6 +1771,12 @@ _GL_WARN_ON_USE (readlinkat, "readlinkat is not portable - "
 #  endif
 _GL_FUNCDECL_RPL (rmdir, int, (char const *name) _GL_ARG_NONNULL ((1)));
 _GL_CXXALIAS_RPL (rmdir, int, (char const *name));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef rmdir
+#   define rmdir _rmdir
+#  endif
+_GL_CXXALIAS_MDA (rmdir, int, (char const *name));
 # else
 _GL_CXXALIAS_SYS (rmdir, int, (char const *name));
 # endif
@@ -1415,6 +1787,20 @@ _GL_CXXALIASWARN (rmdir);
 _GL_WARN_ON_USE (rmdir, "rmdir is unportable - "
                  "use gnulib module rmdir for portability");
 # endif
+#else
+/* On native Windows, map 'rmdir' to '_rmdir', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::rmdir always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef rmdir
+#   define rmdir _rmdir
+#  endif
+_GL_CXXALIAS_MDA (rmdir, int, (char const *name));
+# else
+_GL_CXXALIAS_SYS (rmdir, int, (char const *name));
+# endif
+_GL_CXXALIASWARN (rmdir);
 #endif
 
 
@@ -1449,7 +1835,7 @@ _GL_WARN_ON_USE (sethostname, "sethostname is unportable - "
 /* Pause the execution of the current thread for N seconds.
    Returns the number of seconds left to sleep.
    See the POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/sleep.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/sleep.html>.  */
 # if @REPLACE_SLEEP@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   undef sleep
@@ -1473,6 +1859,21 @@ _GL_WARN_ON_USE (sleep, "sleep is unportable - "
 #endif
 
 
+/* On native Windows, map 'swab' to '_swab', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::creat always.  */
+#if defined _WIN32 && !defined __CYGWIN__
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#  undef swab
+#  define swab _swab
+# endif
+_GL_CXXALIAS_MDA (swab, void, (char *from, char *to, int n));
+#else
+_GL_CXXALIAS_SYS (swab, void, (const void *from, void *to, ssize_t n));
+#endif
+_GL_CXXALIASWARN (swab);
+
+
 #if @GNULIB_SYMLINK@
 # if @REPLACE_SYMLINK@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
@@ -1533,7 +1934,7 @@ _GL_WARN_ON_USE (symlinkat, "symlinkat is not portable - "
 /* Change the size of the file designated by FILENAME to become equal to LENGTH.
    Return 0 if successful, otherwise -1 and errno set.
    See the POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/truncate.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/truncate.html>.  */
 # if @REPLACE_TRUNCATE@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   undef truncate
@@ -1597,6 +1998,12 @@ _GL_WARN_ON_USE (ttyname_r, "ttyname_r is not portable - "
 #  endif
 _GL_FUNCDECL_RPL (unlink, int, (char const *file) _GL_ARG_NONNULL ((1)));
 _GL_CXXALIAS_RPL (unlink, int, (char const *file));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef unlink
+#   define unlink _unlink
+#  endif
+_GL_CXXALIAS_MDA (unlink, int, (char const *file));
 # else
 _GL_CXXALIAS_SYS (unlink, int, (char const *file));
 # endif
@@ -1607,6 +2014,20 @@ _GL_CXXALIASWARN (unlink);
 _GL_WARN_ON_USE (unlink, "unlink is not portable - "
                  "use gnulib module unlink for portability");
 # endif
+#else
+/* On native Windows, map 'unlink' to '_unlink', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::unlink always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef unlink
+#   define unlink _unlink
+#  endif
+_GL_CXXALIAS_MDA (unlink, int, (char const *file));
+# else
+_GL_CXXALIAS_SYS (unlink, int, (char const *file));
+# endif
+_GL_CXXALIASWARN (unlink);
 #endif
 
 
@@ -1640,7 +2061,7 @@ _GL_WARN_ON_USE (unlinkat, "unlinkat is not portable - "
 /* Pause the execution of the current thread for N microseconds.
    Returns 0 on completion, or -1 on range error.
    See the POSIX:2001 specification
-   <http://www.opengroup.org/susv3xsh/usleep.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/009695399/functions/usleep.html>.  */
 # if @REPLACE_USLEEP@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   undef usleep
@@ -1652,7 +2073,9 @@ _GL_CXXALIAS_RPL (usleep, int, (useconds_t n));
 #  if !@HAVE_USLEEP@
 _GL_FUNCDECL_SYS (usleep, int, (useconds_t n));
 #  endif
-_GL_CXXALIAS_SYS (usleep, int, (useconds_t n));
+/* Need to cast, because on Haiku, the first parameter is
+                                     unsigned int n.  */
+_GL_CXXALIAS_SYS_CAST (usleep, int, (useconds_t n));
 # endif
 _GL_CXXALIASWARN (usleep);
 #elif defined GNULIB_POSIXCHECK
@@ -1667,7 +2090,7 @@ _GL_WARN_ON_USE (usleep, "usleep is unportable - "
 #if @GNULIB_WRITE@
 /* Write up to COUNT bytes starting at BUF to file descriptor FD.
    See the POSIX:2008 specification
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/write.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/write.html>.  */
 # if @REPLACE_WRITE@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   undef write
@@ -1676,11 +2099,32 @@ _GL_WARN_ON_USE (usleep, "usleep is unportable - "
 _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));
+# elif defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef write
+#   define write _write
+#  endif
+_GL_CXXALIAS_MDA (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));
+# endif
+_GL_CXXALIASWARN (write);
+#else
+/* On native Windows, map 'write' to '_write', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::write always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef write
+#   define write _write
+#  endif
+#  ifdef __MINGW32__
+_GL_CXXALIAS_MDA (write, int, (int fd, const void *buf, unsigned int count));
+#  else
+_GL_CXXALIAS_MDA (write, ssize_t, (int fd, const void *buf, unsigned int count));
+#  endif
 # else
-/* 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));
+_GL_CXXALIAS_SYS (write, ssize_t, (int fd, const void *buf, size_t count));
 # endif
 _GL_CXXALIASWARN (write);
 #endif
index 90dc9d309a52c3b136dd4577a3c7810b08a1f654..ba5f6269c3ac0269ec68ae353aecead5b2f0b538 100644 (file)
@@ -1,6 +1,6 @@
 /* Work around unlink bugs.
 
-   Copyright (C) 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 #include <string.h>
 #include <sys/stat.h>
 
-#include "dosname.h"
+#include "filename.h"
 
 #undef unlink
+#if defined _WIN32 && !defined __CYGWIN__
+# define unlink _unlink
+#endif
 
 /* Remove file NAME.
    Return 0 if successful, -1 if not.  */
@@ -65,10 +68,7 @@ rpl_unlink (char const *name)
           /* Trailing NUL will overwrite the trailing slash.  */
           char *short_name = malloc (len);
           if (!short_name)
-            {
-              errno = EPERM;
-              return -1;
-            }
+            return -1;
           memcpy (short_name, name, len);
           while (len && ISSLASH (short_name[len - 1]))
             short_name[--len] = '\0';
index 480605fa95569306b3963d092d0caded96d65dba..f735302c030c92c2112ae7ce1ed9f1cf95fe5754 100644 (file)
@@ -1,5 +1,5 @@
 /* Pausing execution of the current thread.
-   Copyright (C) 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2009-2020 Free Software Foundation, Inc.
    Written by Eric Blake <ebb9@byu.net>, 2009.
 
    This program is free software: you can redistribute it and/or modify
index 9b8e1ed20fa10276f15234a17f6e70fe896730cc..fa1ed717d0eb9494649d67098a761f50e6237e33 100644 (file)
@@ -1,6 +1,6 @@
 /* Compile-time assert-like macros.
 
-   Copyright (C) 2005-2006, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2006, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
 /* Define _GL_HAVE__STATIC_ASSERT to 1 if _Static_assert (R, DIAGNOSTIC)
    works as per C11.  This is supported by GCC 4.6.0 and later, in C
-   mode.
+   mode, and by clang (also in C++ mode).
 
    Define _GL_HAVE__STATIC_ASSERT1 to 1 if _Static_assert (R) works as
-   per C2X, and define _GL_HAVE_STATIC_ASSERT1 if static_assert (R)
-   works as per C++17.  This is supported by GCC 9.1 and later.
+   per C2X.  This is supported by GCC 9.1 and later, and by clang in
+   C++1z mode.
+
+   Define _GL_HAVE_STATIC_ASSERT1 if static_assert (R) works as per
+   C++17.  This is supported by GCC 9.1 and later, and by clang in
+   C++1z mode.
 
    Support compilers claiming conformance to the relevant standard,
    and also support GCC when not pedantic.  If we were willing to slow
@@ -35,7 +39,8 @@
    since this affects only the quality of diagnostics, why bother?  */
 #ifndef __cplusplus
 # if (201112L <= __STDC_VERSION__ \
-      || (!defined __STRICT_ANSI__ && 4 < __GNUC__ + (6 <= __GNUC_MINOR__)))
+      || (!defined __STRICT_ANSI__ \
+          && (4 < __GNUC__ + (6 <= __GNUC_MINOR__) || 4 <= __clang_major__)))
 #  define _GL_HAVE__STATIC_ASSERT 1
 # endif
 # if (202000L <= __STDC_VERSION__ \
 #  define _GL_HAVE__STATIC_ASSERT1 1
 # endif
 #else
-# if 201703L <= __cplusplus || 9 <= __GNUC__
+# if 4 <= __clang_major__
+#  define _GL_HAVE__STATIC_ASSERT 1
+# endif
+# if 4 <= __clang_major__ && 201411 <= __cpp_static_assert
+#  define _GL_HAVE__STATIC_ASSERT1 1
+# endif
+# if 201703L <= __cplusplus \
+     || 9 <= __GNUC__ \
+     || (4 <= __clang_major__ && 201411 <= __cpp_static_assert)
 #  define _GL_HAVE_STATIC_ASSERT1 1
 # endif
 #endif
 #define _GL_GENSYM(prefix) _GL_CONCAT (prefix, _GL_COUNTER)
 
 /* Verify requirement R at compile-time, as an integer constant expression
-   that returns 1.  If R is false, fail at compile-time.  */
+   that returns 1.  If R is false, fail at compile-time, preferably
+   with a diagnostic that includes the string-literal DIAGNOSTIC.  */
 
-#define _GL_VERIFY_TRUE(R) (!!sizeof (_GL_VERIFY_TYPE (R)))
+#define _GL_VERIFY_TRUE(R, DIAGNOSTIC) \
+   (!!sizeof (_GL_VERIFY_TYPE (R, DIAGNOSTIC)))
 
 #ifdef __cplusplus
 # if !GNULIB_defined_struct__gl_verify_type
@@ -187,15 +202,16 @@ template <int w>
   };
 #  define GNULIB_defined_struct__gl_verify_type 1
 # endif
-# define _GL_VERIFY_TYPE(R) _gl_verify_type<(R) ? 1 : -1>
-#elif defined _GL_HAVE__STATIC_ASSERT1
-# define _GL_VERIFY_TYPE(R) \
+# define _GL_VERIFY_TYPE(R, DIAGNOSTIC) \
+    _gl_verify_type<(R) ? 1 : -1>
+#elif defined _GL_HAVE__STATIC_ASSERT
+# define _GL_VERIFY_TYPE(R, DIAGNOSTIC) \
     struct {                                   \
-      _Static_assert (R); \
+      _Static_assert (R, DIAGNOSTIC);          \
       int _gl_dummy;                          \
     }
 #else
-# define _GL_VERIFY_TYPE(R)                                             \
+# define _GL_VERIFY_TYPE(R, DIAGNOSTIC) \
     struct { unsigned int _gl_verify_error_if_negative: (R) ? 1 : -1; }
 #endif
 
@@ -214,7 +230,7 @@ template <int w>
 #else
 # define _GL_VERIFY(R, DIAGNOSTIC, ...)                                \
     extern int (*_GL_GENSYM (_gl_verify_function) (void))             \
-      [_GL_VERIFY_TRUE (R)]
+      [_GL_VERIFY_TRUE (R, DIAGNOSTIC)]
 #endif
 
 /* _GL_STATIC_ASSERT_H is defined if this code is copied into assert.h.  */
@@ -230,6 +246,22 @@ template <int w>
 
 /* @assert.h omit start@  */
 
+#if 3 < __GNUC__ + (3 < __GNUC_MINOR__ + (4 <= __GNUC_PATCHLEVEL__))
+# define _GL_HAS_BUILTIN_TRAP 1
+#elif defined __has_builtin
+# define _GL_HAS_BUILTIN_TRAP __has_builtin (__builtin_trap)
+#else
+# define _GL_HAS_BUILTIN_TRAP 0
+#endif
+
+#if 4 < __GNUC__ + (5 <= __GNUC_MINOR__)
+# define _GL_HAS_BUILTIN_UNREACHABLE 1
+#elif defined __has_builtin
+# define _GL_HAS_BUILTIN_UNREACHABLE __has_builtin (__builtin_unreachable)
+#else
+# define _GL_HAS_BUILTIN_UNREACHABLE 0
+#endif
+
 /* Each of these macros verifies that its argument R is nonzero.  To
    be portable, R should be an integer constant expression.  Unlike
    assert (R), there is no run-time overhead.
@@ -242,37 +274,49 @@ template <int w>
 /* Verify requirement R at compile-time.  Return the value of the
    expression E.  */
 
-#define verify_expr(R, E) (_GL_VERIFY_TRUE (R) ? (E) : (E))
+#define verify_expr(R, E) \
+   (_GL_VERIFY_TRUE (R, "verify_expr (" #R ", " #E ")") ? (E) : (E))
 
 /* Verify requirement R at compile-time, as a declaration without a
    trailing ';'.  verify (R) acts like static_assert (R) except that
-   it is portable to C11/C++14 and earlier, and its name is shorter
-   and may be more convenient.  */
+   it is portable to C11/C++14 and earlier, it can issue better
+   diagnostics, and its name is shorter and may be more convenient.  */
 
-#ifdef _GL_HAVE__STATIC_ASSERT1
-# define verify(R) _Static_assert (R)
-#else
+#ifdef __PGI
+/* PGI barfs if R is long.  */
 # define verify(R) _GL_VERIFY (R, "verify (...)", -)
-#endif
-
-#ifndef __has_builtin
-# define __has_builtin(x) 0
+#else
+# define verify(R) _GL_VERIFY (R, "verify (" #R ")", -)
 #endif
 
 /* Assume that R always holds.  Behavior is undefined if R is false,
-   fails to evaluate, or has side effects.  Although assuming R can
-   help a compiler generate better code or diagnostics, performance
-   can suffer if R uses hard-to-optimize features such as function
-   calls not inlined by the compiler.  */
+   fails to evaluate, or has side effects.
+
+   'assume (R)' is a directive from the programmer telling the
+   compiler that R is true so the compiler needn't generate code to
+   test R.  This is why 'assume' is in verify.h: it's related to
+   static checking (in this case, static checking done by the
+   programmer), not dynamic checking.
+
+   'assume (R)' can affect compilation of all the code, not just code
+   that happens to be executed after the assume (R) is "executed".
+   For example, if the code mistakenly does 'assert (R); assume (R);'
+   the compiler is entitled to optimize away the 'assert (R)'.
+
+   Although assuming R can help a compiler generate better code or
+   diagnostics, performance can suffer if R uses hard-to-optimize
+   features such as function calls not inlined by the compiler.
+
+   Avoid Clang's __builtin_assume, as it breaks GNU Emacs master
+   as of 2020-08-23T21:09:49Z!eggert@cs.ucla.edu; see
+   <https://bugs.gnu.org/43152#71>.  It's not known whether this breakage
+   is a Clang bug or an Emacs bug; play it safe for now.  */
 
-#if (__has_builtin (__builtin_unreachable) \
-     || 4 < __GNUC__ + (5 <= __GNUC_MINOR__))
+#if _GL_HAS_BUILTIN_UNREACHABLE
 # define assume(R) ((R) ? (void) 0 : __builtin_unreachable ())
 #elif 1200 <= _MSC_VER
 # define assume(R) __assume (R)
-#elif ((defined GCC_LINT || defined lint) \
-       && (__has_builtin (__builtin_trap) \
-           || 3 < __GNUC__ + (3 < __GNUC_MINOR__ + (4 <= __GNUC_PATCHLEVEL__))))
+#elif (defined GCC_LINT || defined lint) && _GL_HAS_BUILTIN_TRAP
   /* Doing it this way helps various packages when configured with
      --enable-gcc-warnings, which compiles with -Dlint.  It's nicer
      when 'assume' silences warnings even with older GCCs.  */
index b00819d103c985e6c3fd4f3fd62c4913ce9f48b3..20fa0d0aff02b506973b30b0e13f25fbec0d8fa9 100644 (file)
@@ -1,5 +1,5 @@
 /* Variable with FSF copyright information, for version-etc.
-   Copyright (C) 1999-2006, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 1999-2006, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index f6b26ef5068edb0410e5983c986d54690e758e74..525691d9916aeee663598be069cc0df415178a69 100644 (file)
@@ -1,5 +1,5 @@
 /* Print --version and bug-reporting information in a consistent format.
-   Copyright (C) 1999-2019 Free Software Foundation, Inc.
+   Copyright (C) 1999-2021 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -37,7 +37,7 @@
 # define PACKAGE PACKAGE_TARNAME
 #endif
 
-enum { COPYRIGHT_YEAR = 2019 };
+enum { COPYRIGHT_YEAR = 2021 };
 
 /* The three functions below display the --version information the
    standard way.
index 225cfcdd61cabfe38f12063c683314ecdbb218d9..dd1edafd878cbeb43c5471a2ce42d5e10212c419 100644 (file)
@@ -1,5 +1,5 @@
 /* Print --version and bug-reporting information in a consistent format.
-   Copyright (C) 1999, 2003, 2005, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 1999, 2003, 2005, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 # include <stdarg.h>
 # include <stdio.h>
 
-/* The 'sentinel' attribute was added in gcc 4.0.  */
-#ifndef _GL_ATTRIBUTE_SENTINEL
-# if 4 <= __GNUC__
-#  define _GL_ATTRIBUTE_SENTINEL __attribute__ ((__sentinel__))
-# else
-#  define _GL_ATTRIBUTE_SENTINEL /* empty */
-# endif
-#endif
-
 extern const char version_etc_copyright[];
 
 /* The three functions below display the --version information in the
@@ -70,7 +61,7 @@ extern void version_etc (FILE *stream,
                          const char *command_name, const char *package,
                          const char *version,
                          /* const char *author1, ..., NULL */ ...)
-  _GL_ATTRIBUTE_SENTINEL;
+  _GL_ATTRIBUTE_SENTINEL ((0));
 
 /* Display the usual "Report bugs to" stanza.  */
 extern void emit_bug_reporting_address (void);
index 7d11a1569113549cf778164a5e7aea3c3e1e5fdd..3f728d1a9dc6b82499a5d9446577c38b73d5af07 100644 (file)
@@ -1,5 +1,5 @@
 /* A C macro for emitting warnings if a function is used.
-   Copyright (C) 2010-2019 Free Software Foundation, Inc.
+   Copyright (C) 2010-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published
 extern __typeof__ (function) function __attribute__ ((__warning__ (message)))
 #  define _GL_WARN_ON_USE_ATTRIBUTE(message) \
   __attribute__ ((__warning__ (message)))
+# elif __clang_major__ >= 4
+/* Another compiler attribute is available in clang.  */
+#  define _GL_WARN_ON_USE(function, message) \
+extern __typeof__ (function) function \
+  __attribute__ ((__diagnose_if__ (1, message, "warning")))
+#  define _GL_WARN_ON_USE_ATTRIBUTE(message) \
+  __attribute__ ((__diagnose_if__ (1, message, "warning")))
 # elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING
 /* Verify the existence of the function.  */
 #  define _GL_WARN_ON_USE(function, message) \
@@ -99,24 +106,35 @@ _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.
+/* _GL_WARN_ON_USE_CXX (function, rettype_gcc, rettype_clang, parameters_and_attributes, "message")
+   is like _GL_WARN_ON_USE (function, "message"), except that in C++ mode 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
+# if !defined __cplusplus
+#  define _GL_WARN_ON_USE_CXX(function,rettype_gcc,rettype_clang,parameters_and_attributes,msg) \
+     _GL_WARN_ON_USE (function, msg)
+# else
+#  if 4 < __GNUC__ || (__GNUC__ == 4 && 3 <= __GNUC_MINOR__)
+/* A compiler attribute is available in gcc versions 4.3.0 and later.  */
+#   define _GL_WARN_ON_USE_CXX(function,rettype_gcc,rettype_clang,parameters_and_attributes,msg) \
+extern rettype_gcc function parameters_and_attributes \
+  __attribute__ ((__warning__ (msg)))
+#  elif __clang_major__ >= 4
+/* Another compiler attribute is available in clang.  */
+#   define _GL_WARN_ON_USE_CXX(function,rettype_gcc,rettype_clang,parameters_and_attributes,msg) \
+extern rettype_clang function parameters_and_attributes \
+  __attribute__ ((__diagnose_if__ (1, msg, "warning")))
+#  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) \
+#   define _GL_WARN_ON_USE_CXX(function,rettype_gcc,rettype_clang,parameters_and_attributes,msg) \
+extern rettype_gcc function parameters_and_attributes
+#  else /* Unsupported.  */
+#   define _GL_WARN_ON_USE_CXX(function,rettype_gcc,rettype_clang,parameters_and_attributes,msg) \
 _GL_WARN_EXTERN_C int _gl_warn_on_use
+#  endif
 # endif
 #endif
 
index 17d569129ce3d7d40e88660eb5a1e8463e222514..ab92dcd4d46c6bb6402b1b7d2453e63bad7df57a 100644 (file)
@@ -1,6 +1,6 @@
 /* A substitute for ISO C99 <wchar.h>, for platforms that have issues.
 
-   Copyright (C) 2007-2019 Free Software Foundation, Inc.
+   Copyright (C) 2007-2020 Free Software Foundation, Inc.
 
    This 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,7 +19,7 @@
 
 /*
  * ISO C 99 <wchar.h> for platforms that have issues.
- * <http://www.opengroup.org/susv3xbd/wchar.h.html>
+ * <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/wchar.h.html>
  *
  * For now, this just ensures proper prerequisite inclusion order and
  * the declaration of wcwidth().
@@ -33,7 +33,8 @@
 #if (((defined __need_mbstate_t || defined __need_wint_t)               \
       && !defined __MINGW32__)                                          \
      || (defined __hpux                                                 \
-         && ((defined _INTTYPES_INCLUDED && !defined strtoimax)         \
+         && ((defined _INTTYPES_INCLUDED                                \
+              && !defined _GL_FINISHED_INCLUDING_SYSTEM_INTTYPES_H)     \
              || defined _GL_JUST_INCLUDE_SYSTEM_WCHAR_H))               \
      || (defined __MINGW32__ && defined __STRING_H_SOURCED__)           \
      || defined _GL_ALREADY_INCLUDING_WCHAR_H)
 
 /* The __attribute__ feature is available in gcc versions 2.5 and later.
    The attribute __pure__ was added in gcc 2.96.  */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)
-# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
-#else
-# define _GL_ATTRIBUTE_PURE /* empty */
+#ifndef _GL_ATTRIBUTE_PURE
+# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) || defined __clang__
+#  define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
+# else
+#  define _GL_ATTRIBUTE_PURE /* empty */
+# endif
 #endif
 
 /* The definitions of _GL_FUNCDECL_RPL etc. are copied here.  */
@@ -137,12 +140,16 @@ typedef unsigned int rpl_wint_t;
 
 /* Override mbstate_t if it is too small.
    On IRIX 6.5, sizeof (mbstate_t) == 1, which is not sufficient for
-   implementing mbrtowc for encodings like UTF-8.  */
-#if !(@HAVE_MBSINIT@ && @HAVE_MBRTOWC@) || @REPLACE_MBSTATE_T@
+   implementing mbrtowc for encodings like UTF-8.
+   On AIX and MSVC, mbrtowc needs to be overridden, but mbstate_t exists and is
+   large enough and overriding it would cause problems in C++ mode.  */
+#if !(((defined _WIN32 && !defined __CYGWIN__) || @HAVE_MBSINIT@) && @HAVE_MBRTOWC@) || @REPLACE_MBSTATE_T@
 # if !GNULIB_defined_mbstate_t
+#  if !(defined _AIX || defined _MSC_VER)
 typedef int rpl_mbstate_t;
-#  undef mbstate_t
-#  define mbstate_t rpl_mbstate_t
+#   undef mbstate_t
+#   define mbstate_t rpl_mbstate_t
+#  endif
 #  define GNULIB_defined_mbstate_t 1
 # endif
 #endif
@@ -161,9 +168,12 @@ _GL_CXXALIAS_RPL (btowc, wint_t, (int c));
 #  if !@HAVE_BTOWC@
 _GL_FUNCDECL_SYS (btowc, wint_t, (int c) _GL_ATTRIBUTE_PURE);
 #  endif
-_GL_CXXALIAS_SYS (btowc, wint_t, (int c));
+/* Need to cast, because on mingw, the return type is 'unsigned short'.  */
+_GL_CXXALIAS_SYS_CAST (btowc, wint_t, (int c));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (btowc);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef btowc
 # if HAVE_RAW_DECL_BTOWC
@@ -189,7 +199,9 @@ _GL_FUNCDECL_SYS (wctob, int, (wint_t wc) _GL_ATTRIBUTE_PURE);
 #  endif
 _GL_CXXALIAS_SYS (wctob, int, (wint_t wc));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wctob);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wctob
 # if HAVE_RAW_DECL_WCTOB
@@ -214,7 +226,9 @@ _GL_FUNCDECL_SYS (mbsinit, int, (const mbstate_t *ps));
 #  endif
 _GL_CXXALIAS_SYS (mbsinit, int, (const mbstate_t *ps));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (mbsinit);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef mbsinit
 # if HAVE_RAW_DECL_MBSINIT
@@ -232,18 +246,24 @@ _GL_WARN_ON_USE (mbsinit, "mbsinit is unportable - "
 #   define mbrtowc rpl_mbrtowc
 #  endif
 _GL_FUNCDECL_RPL (mbrtowc, size_t,
-                  (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps));
+                  (wchar_t *restrict pwc, const char *restrict s, size_t n,
+                   mbstate_t *restrict ps));
 _GL_CXXALIAS_RPL (mbrtowc, size_t,
-                  (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps));
+                  (wchar_t *restrict pwc, const char *restrict s, size_t n,
+                   mbstate_t *restrict ps));
 # else
 #  if !@HAVE_MBRTOWC@
 _GL_FUNCDECL_SYS (mbrtowc, size_t,
-                  (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps));
+                  (wchar_t *restrict pwc, const char *restrict s, size_t n,
+                   mbstate_t *restrict ps));
 #  endif
 _GL_CXXALIAS_SYS (mbrtowc, size_t,
-                  (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps));
+                  (wchar_t *restrict pwc, const char *restrict s, size_t n,
+                   mbstate_t *restrict ps));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (mbrtowc);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef mbrtowc
 # if HAVE_RAW_DECL_MBRTOWC
@@ -260,15 +280,21 @@ _GL_WARN_ON_USE (mbrtowc, "mbrtowc is unportable - "
 #   undef mbrlen
 #   define mbrlen rpl_mbrlen
 #  endif
-_GL_FUNCDECL_RPL (mbrlen, size_t, (const char *s, size_t n, mbstate_t *ps));
-_GL_CXXALIAS_RPL (mbrlen, size_t, (const char *s, size_t n, mbstate_t *ps));
+_GL_FUNCDECL_RPL (mbrlen, size_t,
+                  (const char *restrict s, size_t n, mbstate_t *restrict ps));
+_GL_CXXALIAS_RPL (mbrlen, size_t,
+                  (const char *restrict s, size_t n, mbstate_t *restrict ps));
 # else
 #  if !@HAVE_MBRLEN@
-_GL_FUNCDECL_SYS (mbrlen, size_t, (const char *s, size_t n, mbstate_t *ps));
+_GL_FUNCDECL_SYS (mbrlen, size_t,
+                  (const char *restrict s, size_t n, mbstate_t *restrict ps));
 #  endif
-_GL_CXXALIAS_SYS (mbrlen, size_t, (const char *s, size_t n, mbstate_t *ps));
+_GL_CXXALIAS_SYS (mbrlen, size_t,
+                  (const char *restrict s, size_t n, mbstate_t *restrict ps));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (mbrlen);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef mbrlen
 # if HAVE_RAW_DECL_MBRLEN
@@ -286,22 +312,30 @@ _GL_WARN_ON_USE (mbrlen, "mbrlen is unportable - "
 #   define mbsrtowcs rpl_mbsrtowcs
 #  endif
 _GL_FUNCDECL_RPL (mbsrtowcs, size_t,
-                  (wchar_t *dest, const char **srcp, size_t len, mbstate_t *ps)
+                  (wchar_t *restrict dest,
+                   const char **restrict srcp, size_t len,
+                   mbstate_t *restrict ps)
                   _GL_ARG_NONNULL ((2)));
 _GL_CXXALIAS_RPL (mbsrtowcs, size_t,
-                  (wchar_t *dest, const char **srcp, size_t len,
-                   mbstate_t *ps));
+                  (wchar_t *restrict dest,
+                   const char **restrict srcp, size_t len,
+                   mbstate_t *restrict ps));
 # else
 #  if !@HAVE_MBSRTOWCS@
 _GL_FUNCDECL_SYS (mbsrtowcs, size_t,
-                  (wchar_t *dest, const char **srcp, size_t len, mbstate_t *ps)
+                  (wchar_t *restrict dest,
+                   const char **restrict srcp, size_t len,
+                   mbstate_t *restrict ps)
                   _GL_ARG_NONNULL ((2)));
 #  endif
 _GL_CXXALIAS_SYS (mbsrtowcs, size_t,
-                  (wchar_t *dest, const char **srcp, size_t len,
-                   mbstate_t *ps));
+                  (wchar_t *restrict dest,
+                   const char **restrict srcp, size_t len,
+                   mbstate_t *restrict ps));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (mbsrtowcs);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef mbsrtowcs
 # if HAVE_RAW_DECL_MBSRTOWCS
@@ -319,22 +353,26 @@ _GL_WARN_ON_USE (mbsrtowcs, "mbsrtowcs is unportable - "
 #   define mbsnrtowcs rpl_mbsnrtowcs
 #  endif
 _GL_FUNCDECL_RPL (mbsnrtowcs, size_t,
-                  (wchar_t *dest, const char **srcp, size_t srclen, size_t len,
-                   mbstate_t *ps)
+                  (wchar_t *restrict dest,
+                   const char **restrict srcp, size_t srclen, size_t len,
+                   mbstate_t *restrict ps)
                   _GL_ARG_NONNULL ((2)));
 _GL_CXXALIAS_RPL (mbsnrtowcs, size_t,
-                  (wchar_t *dest, const char **srcp, size_t srclen, size_t len,
-                   mbstate_t *ps));
+                  (wchar_t *restrict dest,
+                   const char **restrict srcp, size_t srclen, size_t len,
+                   mbstate_t *restrict ps));
 # else
 #  if !@HAVE_MBSNRTOWCS@
 _GL_FUNCDECL_SYS (mbsnrtowcs, size_t,
-                  (wchar_t *dest, const char **srcp, size_t srclen, size_t len,
-                   mbstate_t *ps)
+                  (wchar_t *restrict dest,
+                   const char **restrict srcp, size_t srclen, size_t len,
+                   mbstate_t *restrict ps)
                   _GL_ARG_NONNULL ((2)));
 #  endif
 _GL_CXXALIAS_SYS (mbsnrtowcs, size_t,
-                  (wchar_t *dest, const char **srcp, size_t srclen, size_t len,
-                   mbstate_t *ps));
+                  (wchar_t *restrict dest,
+                   const char **restrict srcp, size_t srclen, size_t len,
+                   mbstate_t *restrict ps));
 # endif
 _GL_CXXALIASWARN (mbsnrtowcs);
 #elif defined GNULIB_POSIXCHECK
@@ -353,15 +391,21 @@ _GL_WARN_ON_USE (mbsnrtowcs, "mbsnrtowcs is unportable - "
 #   undef wcrtomb
 #   define wcrtomb rpl_wcrtomb
 #  endif
-_GL_FUNCDECL_RPL (wcrtomb, size_t, (char *s, wchar_t wc, mbstate_t *ps));
-_GL_CXXALIAS_RPL (wcrtomb, size_t, (char *s, wchar_t wc, mbstate_t *ps));
+_GL_FUNCDECL_RPL (wcrtomb, size_t,
+                  (char *restrict s, wchar_t wc, mbstate_t *restrict ps));
+_GL_CXXALIAS_RPL (wcrtomb, size_t,
+                  (char *restrict s, wchar_t wc, mbstate_t *restrict ps));
 # else
 #  if !@HAVE_WCRTOMB@
-_GL_FUNCDECL_SYS (wcrtomb, size_t, (char *s, wchar_t wc, mbstate_t *ps));
+_GL_FUNCDECL_SYS (wcrtomb, size_t,
+                  (char *restrict s, wchar_t wc, mbstate_t *restrict ps));
 #  endif
-_GL_CXXALIAS_SYS (wcrtomb, size_t, (char *s, wchar_t wc, mbstate_t *ps));
+_GL_CXXALIAS_SYS (wcrtomb, size_t,
+                  (char *restrict s, wchar_t wc, mbstate_t *restrict ps));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcrtomb);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcrtomb
 # if HAVE_RAW_DECL_WCRTOMB
@@ -379,22 +423,30 @@ _GL_WARN_ON_USE (wcrtomb, "wcrtomb is unportable - "
 #   define wcsrtombs rpl_wcsrtombs
 #  endif
 _GL_FUNCDECL_RPL (wcsrtombs, size_t,
-                  (char *dest, const wchar_t **srcp, size_t len, mbstate_t *ps)
+                  (char *restrict dest, const wchar_t **restrict srcp,
+                   size_t len,
+                   mbstate_t *restrict ps)
                   _GL_ARG_NONNULL ((2)));
 _GL_CXXALIAS_RPL (wcsrtombs, size_t,
-                  (char *dest, const wchar_t **srcp, size_t len,
-                   mbstate_t *ps));
+                  (char *restrict dest, const wchar_t **restrict srcp,
+                   size_t len,
+                   mbstate_t *restrict ps));
 # else
 #  if !@HAVE_WCSRTOMBS@
 _GL_FUNCDECL_SYS (wcsrtombs, size_t,
-                  (char *dest, const wchar_t **srcp, size_t len, mbstate_t *ps)
+                  (char *restrict dest, const wchar_t **restrict srcp,
+                   size_t len,
+                   mbstate_t *restrict ps)
                   _GL_ARG_NONNULL ((2)));
 #  endif
 _GL_CXXALIAS_SYS (wcsrtombs, size_t,
-                  (char *dest, const wchar_t **srcp, size_t len,
-                   mbstate_t *ps));
+                  (char *restrict dest, const wchar_t **restrict srcp,
+                   size_t len,
+                   mbstate_t *restrict ps));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcsrtombs);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcsrtombs
 # if HAVE_RAW_DECL_WCSRTOMBS
@@ -412,24 +464,34 @@ _GL_WARN_ON_USE (wcsrtombs, "wcsrtombs is unportable - "
 #   define wcsnrtombs rpl_wcsnrtombs
 #  endif
 _GL_FUNCDECL_RPL (wcsnrtombs, size_t,
-                  (char *dest, const wchar_t **srcp, size_t srclen, size_t len,
-                   mbstate_t *ps)
+                  (char *restrict dest,
+                   const wchar_t **restrict srcp, size_t srclen,
+                   size_t len,
+                   mbstate_t *restrict ps)
                   _GL_ARG_NONNULL ((2)));
 _GL_CXXALIAS_RPL (wcsnrtombs, size_t,
-                  (char *dest, const wchar_t **srcp, size_t srclen, size_t len,
-                   mbstate_t *ps));
+                  (char *restrict dest,
+                   const wchar_t **restrict srcp, size_t srclen,
+                   size_t len,
+                   mbstate_t *restrict ps));
 # else
-#  if !@HAVE_WCSNRTOMBS@
+#  if !@HAVE_WCSNRTOMBS@ || (defined __cplusplus && defined __sun)
 _GL_FUNCDECL_SYS (wcsnrtombs, size_t,
-                  (char *dest, const wchar_t **srcp, size_t srclen, size_t len,
-                   mbstate_t *ps)
+                  (char *restrict dest,
+                   const wchar_t **restrict srcp, size_t srclen,
+                   size_t len,
+                   mbstate_t *restrict ps)
                   _GL_ARG_NONNULL ((2)));
 #  endif
 _GL_CXXALIAS_SYS (wcsnrtombs, size_t,
-                  (char *dest, const wchar_t **srcp, size_t srclen, size_t len,
-                   mbstate_t *ps));
+                  (char *restrict dest,
+                   const wchar_t **restrict srcp, size_t srclen,
+                   size_t len,
+                   mbstate_t *restrict ps));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcsnrtombs);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcsnrtombs
 # if HAVE_RAW_DECL_WCSNRTOMBS
@@ -455,7 +517,9 @@ _GL_FUNCDECL_SYS (wcwidth, int, (wchar_t) _GL_ATTRIBUTE_PURE);
 #  endif
 _GL_CXXALIAS_SYS (wcwidth, int, (wchar_t));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcwidth);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcwidth
 # if HAVE_RAW_DECL_WCWIDTH
@@ -484,7 +548,7 @@ _GL_CXXALIAS_SYS_CAST2 (wmemchr,
 _GL_CXXALIASWARN1 (wmemchr, wchar_t *, (wchar_t *s, wchar_t c, size_t n));
 _GL_CXXALIASWARN1 (wmemchr, const wchar_t *,
                    (const wchar_t *s, wchar_t c, size_t n));
-# else
+# elif __GLIBC__ >= 2
 _GL_CXXALIASWARN (wmemchr);
 # endif
 #elif defined GNULIB_POSIXCHECK
@@ -505,7 +569,9 @@ _GL_FUNCDECL_SYS (wmemcmp, int,
 # endif
 _GL_CXXALIAS_SYS (wmemcmp, int,
                   (const wchar_t *s1, const wchar_t *s2, size_t n));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wmemcmp);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wmemcmp
 # if HAVE_RAW_DECL_WMEMCMP
@@ -519,11 +585,15 @@ _GL_WARN_ON_USE (wmemcmp, "wmemcmp is unportable - "
 #if @GNULIB_WMEMCPY@
 # if !@HAVE_WMEMCPY@
 _GL_FUNCDECL_SYS (wmemcpy, wchar_t *,
-                  (wchar_t *dest, const wchar_t *src, size_t n));
+                  (wchar_t *restrict dest,
+                   const wchar_t *restrict src, size_t n));
 # endif
 _GL_CXXALIAS_SYS (wmemcpy, wchar_t *,
-                  (wchar_t *dest, const wchar_t *src, size_t n));
+                  (wchar_t *restrict dest,
+                   const wchar_t *restrict src, size_t n));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wmemcpy);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wmemcpy
 # if HAVE_RAW_DECL_WMEMCPY
@@ -542,7 +612,9 @@ _GL_FUNCDECL_SYS (wmemmove, wchar_t *,
 # endif
 _GL_CXXALIAS_SYS (wmemmove, wchar_t *,
                   (wchar_t *dest, const wchar_t *src, size_t n));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wmemmove);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wmemmove
 # if HAVE_RAW_DECL_WMEMMOVE
@@ -552,13 +624,38 @@ _GL_WARN_ON_USE (wmemmove, "wmemmove is unportable - "
 #endif
 
 
+/* Copy N wide characters of SRC to DEST.
+   Return pointer to wide characters after the last written wide character.  */
+#if @GNULIB_WMEMPCPY@
+# if !@HAVE_WMEMPCPY@
+_GL_FUNCDECL_SYS (wmempcpy, wchar_t *,
+                  (wchar_t *restrict dest,
+                   const wchar_t *restrict src, size_t n));
+# endif
+_GL_CXXALIAS_SYS (wmempcpy, wchar_t *,
+                  (wchar_t *restrict dest,
+                   const wchar_t *restrict src, size_t n));
+# if __GLIBC__ >= 2
+_GL_CXXALIASWARN (wmempcpy);
+# endif
+#elif defined GNULIB_POSIXCHECK
+# undef wmempcpy
+# if HAVE_RAW_DECL_WMEMPCPY
+_GL_WARN_ON_USE (wmempcpy, "wmempcpy is unportable - "
+                 "use gnulib module wmempcpy for portability");
+# endif
+#endif
+
+
 /* Set N wide characters of S to C.  */
 #if @GNULIB_WMEMSET@
 # if !@HAVE_WMEMSET@
 _GL_FUNCDECL_SYS (wmemset, wchar_t *, (wchar_t *s, wchar_t c, size_t n));
 # endif
 _GL_CXXALIAS_SYS (wmemset, wchar_t *, (wchar_t *s, wchar_t c, size_t n));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wmemset);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wmemset
 # if HAVE_RAW_DECL_WMEMSET
@@ -574,7 +671,9 @@ _GL_WARN_ON_USE (wmemset, "wmemset is unportable - "
 _GL_FUNCDECL_SYS (wcslen, size_t, (const wchar_t *s) _GL_ATTRIBUTE_PURE);
 # endif
 _GL_CXXALIAS_SYS (wcslen, size_t, (const wchar_t *s));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcslen);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcslen
 # if HAVE_RAW_DECL_WCSLEN
@@ -604,10 +703,14 @@ _GL_WARN_ON_USE (wcsnlen, "wcsnlen is unportable - "
 /* Copy SRC to DEST.  */
 #if @GNULIB_WCSCPY@
 # if !@HAVE_WCSCPY@
-_GL_FUNCDECL_SYS (wcscpy, wchar_t *, (wchar_t *dest, const wchar_t *src));
+_GL_FUNCDECL_SYS (wcscpy, wchar_t *,
+                  (wchar_t *restrict dest, const wchar_t *restrict src));
 # endif
-_GL_CXXALIAS_SYS (wcscpy, wchar_t *, (wchar_t *dest, const wchar_t *src));
+_GL_CXXALIAS_SYS (wcscpy, wchar_t *,
+                  (wchar_t *restrict dest, const wchar_t *restrict src));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcscpy);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcscpy
 # if HAVE_RAW_DECL_WCSCPY
@@ -620,9 +723,11 @@ _GL_WARN_ON_USE (wcscpy, "wcscpy is unportable - "
 /* Copy SRC to DEST, returning the address of the terminating L'\0' in DEST.  */
 #if @GNULIB_WCPCPY@
 # if !@HAVE_WCPCPY@
-_GL_FUNCDECL_SYS (wcpcpy, wchar_t *, (wchar_t *dest, const wchar_t *src));
+_GL_FUNCDECL_SYS (wcpcpy, wchar_t *,
+                  (wchar_t *restrict dest, const wchar_t *restrict src));
 # endif
-_GL_CXXALIAS_SYS (wcpcpy, wchar_t *, (wchar_t *dest, const wchar_t *src));
+_GL_CXXALIAS_SYS (wcpcpy, wchar_t *,
+                  (wchar_t *restrict dest, const wchar_t *restrict src));
 _GL_CXXALIASWARN (wcpcpy);
 #elif defined GNULIB_POSIXCHECK
 # undef wcpcpy
@@ -637,11 +742,15 @@ _GL_WARN_ON_USE (wcpcpy, "wcpcpy is unportable - "
 #if @GNULIB_WCSNCPY@
 # if !@HAVE_WCSNCPY@
 _GL_FUNCDECL_SYS (wcsncpy, wchar_t *,
-                  (wchar_t *dest, const wchar_t *src, size_t n));
+                  (wchar_t *restrict dest,
+                   const wchar_t *restrict src, size_t n));
 # endif
 _GL_CXXALIAS_SYS (wcsncpy, wchar_t *,
-                  (wchar_t *dest, const wchar_t *src, size_t n));
+                  (wchar_t *restrict dest,
+                   const wchar_t *restrict src, size_t n));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcsncpy);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcsncpy
 # if HAVE_RAW_DECL_WCSNCPY
@@ -656,10 +765,12 @@ _GL_WARN_ON_USE (wcsncpy, "wcsncpy is unportable - "
 #if @GNULIB_WCPNCPY@
 # if !@HAVE_WCPNCPY@
 _GL_FUNCDECL_SYS (wcpncpy, wchar_t *,
-                  (wchar_t *dest, const wchar_t *src, size_t n));
+                  (wchar_t *restrict dest,
+                   const wchar_t *restrict src, size_t n));
 # endif
 _GL_CXXALIAS_SYS (wcpncpy, wchar_t *,
-                  (wchar_t *dest, const wchar_t *src, size_t n));
+                  (wchar_t *restrict dest,
+                   const wchar_t *restrict src, size_t n));
 _GL_CXXALIASWARN (wcpncpy);
 #elif defined GNULIB_POSIXCHECK
 # undef wcpncpy
@@ -673,10 +784,14 @@ _GL_WARN_ON_USE (wcpncpy, "wcpncpy is unportable - "
 /* Append SRC onto DEST.  */
 #if @GNULIB_WCSCAT@
 # if !@HAVE_WCSCAT@
-_GL_FUNCDECL_SYS (wcscat, wchar_t *, (wchar_t *dest, const wchar_t *src));
+_GL_FUNCDECL_SYS (wcscat, wchar_t *,
+                  (wchar_t *restrict dest, const wchar_t *restrict src));
 # endif
-_GL_CXXALIAS_SYS (wcscat, wchar_t *, (wchar_t *dest, const wchar_t *src));
+_GL_CXXALIAS_SYS (wcscat, wchar_t *,
+                  (wchar_t *restrict dest, const wchar_t *restrict src));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcscat);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcscat
 # if HAVE_RAW_DECL_WCSCAT
@@ -690,11 +805,15 @@ _GL_WARN_ON_USE (wcscat, "wcscat is unportable - "
 #if @GNULIB_WCSNCAT@
 # if !@HAVE_WCSNCAT@
 _GL_FUNCDECL_SYS (wcsncat, wchar_t *,
-                  (wchar_t *dest, const wchar_t *src, size_t n));
+                  (wchar_t *restrict dest, const wchar_t *restrict src,
+                   size_t n));
 # endif
 _GL_CXXALIAS_SYS (wcsncat, wchar_t *,
-                  (wchar_t *dest, const wchar_t *src, size_t n));
+                  (wchar_t *restrict dest, const wchar_t *restrict src,
+                   size_t n));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcsncat);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcsncat
 # if HAVE_RAW_DECL_WCSNCAT
@@ -711,7 +830,9 @@ _GL_FUNCDECL_SYS (wcscmp, int, (const wchar_t *s1, const wchar_t *s2)
                                _GL_ATTRIBUTE_PURE);
 # endif
 _GL_CXXALIAS_SYS (wcscmp, int, (const wchar_t *s1, const wchar_t *s2));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcscmp);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcscmp
 # if HAVE_RAW_DECL_WCSCMP
@@ -730,7 +851,9 @@ _GL_FUNCDECL_SYS (wcsncmp, int,
 # endif
 _GL_CXXALIAS_SYS (wcsncmp, int,
                   (const wchar_t *s1, const wchar_t *s2, size_t n));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcsncmp);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcsncmp
 # if HAVE_RAW_DECL_WCSNCMP
@@ -783,7 +906,9 @@ _GL_WARN_ON_USE (wcsncasecmp, "wcsncasecmp is unportable - "
 _GL_FUNCDECL_SYS (wcscoll, int, (const wchar_t *s1, const wchar_t *s2));
 # endif
 _GL_CXXALIAS_SYS (wcscoll, int, (const wchar_t *s1, const wchar_t *s2));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcscoll);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcscoll
 # if HAVE_RAW_DECL_WCSCOLL
@@ -798,10 +923,14 @@ _GL_WARN_ON_USE (wcscoll, "wcscoll is unportable - "
    original strings.  */
 #if @GNULIB_WCSXFRM@
 # if !@HAVE_WCSXFRM@
-_GL_FUNCDECL_SYS (wcsxfrm, size_t, (wchar_t *s1, const wchar_t *s2, size_t n));
+_GL_FUNCDECL_SYS (wcsxfrm, size_t,
+                  (wchar_t *restrict s1, const wchar_t *restrict s2, size_t n));
 # endif
-_GL_CXXALIAS_SYS (wcsxfrm, size_t, (wchar_t *s1, const wchar_t *s2, size_t n));
+_GL_CXXALIAS_SYS (wcsxfrm, size_t,
+                  (wchar_t *restrict s1, const wchar_t *restrict s2, size_t n));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcsxfrm);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcsxfrm
 # if HAVE_RAW_DECL_WCSXFRM
@@ -813,10 +942,18 @@ _GL_WARN_ON_USE (wcsxfrm, "wcsxfrm is unportable - "
 
 /* Duplicate S, returning an identical malloc'd string.  */
 #if @GNULIB_WCSDUP@
-# if !@HAVE_WCSDUP@
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef wcsdup
+#   define wcsdup _wcsdup
+#  endif
+_GL_CXXALIAS_MDA (wcsdup, wchar_t *, (const wchar_t *s));
+# else
+#  if !@HAVE_WCSDUP@
 _GL_FUNCDECL_SYS (wcsdup, wchar_t *, (const wchar_t *s));
-# endif
+#  endif
 _GL_CXXALIAS_SYS (wcsdup, wchar_t *, (const wchar_t *s));
+# endif
 _GL_CXXALIASWARN (wcsdup);
 #elif defined GNULIB_POSIXCHECK
 # undef wcsdup
@@ -824,6 +961,25 @@ _GL_CXXALIASWARN (wcsdup);
 _GL_WARN_ON_USE (wcsdup, "wcsdup is unportable - "
                  "use gnulib module wcsdup for portability");
 # endif
+#else
+/* On native Windows, map 'wcsdup' to '_wcsdup', so that -loldnames is not
+   required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+   platforms by defining GNULIB_NAMESPACE::wcsdup always.  */
+# if defined _WIN32 && !defined __CYGWIN__
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef wcsdup
+#   define wcsdup _wcsdup
+#  endif
+_GL_CXXALIAS_MDA (wcsdup, wchar_t *, (const wchar_t *s));
+# else
+_GL_FUNCDECL_SYS (wcsdup, wchar_t *, (const wchar_t *s));
+#  if @HAVE_DECL_WCSDUP@
+_GL_CXXALIAS_SYS (wcsdup, wchar_t *, (const wchar_t *s));
+#  endif
+# endif
+# if (defined _WIN32 && !defined __CYGWIN__) || @HAVE_DECL_WCSDUP@
+_GL_CXXALIASWARN (wcsdup);
+# endif
 #endif
 
 
@@ -845,7 +1001,7 @@ _GL_CXXALIAS_SYS_CAST2 (wcschr,
      && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4))
 _GL_CXXALIASWARN1 (wcschr, wchar_t *, (wchar_t *wcs, wchar_t wc));
 _GL_CXXALIASWARN1 (wcschr, const wchar_t *, (const wchar_t *wcs, wchar_t wc));
-# else
+# elif __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcschr);
 # endif
 #elif defined GNULIB_POSIXCHECK
@@ -875,7 +1031,7 @@ _GL_CXXALIAS_SYS_CAST2 (wcsrchr,
      && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4))
 _GL_CXXALIASWARN1 (wcsrchr, wchar_t *, (wchar_t *wcs, wchar_t wc));
 _GL_CXXALIASWARN1 (wcsrchr, const wchar_t *, (const wchar_t *wcs, wchar_t wc));
-# else
+# elif __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcsrchr);
 # endif
 #elif defined GNULIB_POSIXCHECK
@@ -895,7 +1051,9 @@ _GL_FUNCDECL_SYS (wcscspn, size_t, (const wchar_t *wcs, const wchar_t *reject)
                                    _GL_ATTRIBUTE_PURE);
 # endif
 _GL_CXXALIAS_SYS (wcscspn, size_t, (const wchar_t *wcs, const wchar_t *reject));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcscspn);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcscspn
 # if HAVE_RAW_DECL_WCSCSPN
@@ -913,7 +1071,9 @@ _GL_FUNCDECL_SYS (wcsspn, size_t, (const wchar_t *wcs, const wchar_t *accept)
                                   _GL_ATTRIBUTE_PURE);
 # endif
 _GL_CXXALIAS_SYS (wcsspn, size_t, (const wchar_t *wcs, const wchar_t *accept));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcsspn);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcsspn
 # if HAVE_RAW_DECL_WCSSPN
@@ -944,7 +1104,7 @@ _GL_CXXALIASWARN1 (wcspbrk, wchar_t *,
                    (wchar_t *wcs, const wchar_t *accept));
 _GL_CXXALIASWARN1 (wcspbrk, const wchar_t *,
                    (const wchar_t *wcs, const wchar_t *accept));
-# else
+# elif __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcspbrk);
 # endif
 #elif defined GNULIB_POSIXCHECK
@@ -960,7 +1120,8 @@ _GL_WARN_ON_USE (wcspbrk, "wcspbrk is unportable - "
 #if @GNULIB_WCSSTR@
 # if !@HAVE_WCSSTR@
 _GL_FUNCDECL_SYS (wcsstr, wchar_t *,
-                  (const wchar_t *haystack, const wchar_t *needle)
+                  (const wchar_t *restrict haystack,
+                   const wchar_t *restrict needle)
                   _GL_ATTRIBUTE_PURE);
 # endif
   /* On some systems, this function is defined as an overloaded function:
@@ -969,15 +1130,19 @@ _GL_FUNCDECL_SYS (wcsstr, wchar_t *,
          wchar_t * std::wcsstr (wchar_t *, const wchar_t *);
        }  */
 _GL_CXXALIAS_SYS_CAST2 (wcsstr,
-                        wchar_t *, (const wchar_t *, const wchar_t *),
-                        const wchar_t *, (const wchar_t *, const wchar_t *));
+                        wchar_t *,
+                        (const wchar_t *restrict, const wchar_t *restrict),
+                        const wchar_t *,
+                        (const wchar_t *restrict, const wchar_t *restrict));
 # if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \
      && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4))
 _GL_CXXALIASWARN1 (wcsstr, wchar_t *,
-                   (wchar_t *haystack, const wchar_t *needle));
+                   (wchar_t *restrict haystack,
+                    const wchar_t *restrict needle));
 _GL_CXXALIASWARN1 (wcsstr, const wchar_t *,
-                   (const wchar_t *haystack, const wchar_t *needle));
-# else
+                   (const wchar_t *restrict haystack,
+                    const wchar_t *restrict needle));
+# elif __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcsstr);
 # endif
 #elif defined GNULIB_POSIXCHECK
@@ -991,13 +1156,30 @@ _GL_WARN_ON_USE (wcsstr, "wcsstr is unportable - "
 
 /* Divide WCS into tokens separated by characters in DELIM.  */
 #if @GNULIB_WCSTOK@
-# if !@HAVE_WCSTOK@
+# if @REPLACE_WCSTOK@
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef wcstok
+#   define wcstok rpl_wcstok
+#  endif
+_GL_FUNCDECL_RPL (wcstok, wchar_t *,
+                  (wchar_t *restrict wcs, const wchar_t *restrict delim,
+                   wchar_t **restrict ptr));
+_GL_CXXALIAS_RPL (wcstok, wchar_t *,
+                  (wchar_t *restrict wcs, const wchar_t *restrict delim,
+                   wchar_t **restrict ptr));
+# else
+#  if !@HAVE_WCSTOK@
 _GL_FUNCDECL_SYS (wcstok, wchar_t *,
-                  (wchar_t *wcs, const wchar_t *delim, wchar_t **ptr));
-# endif
+                  (wchar_t *restrict wcs, const wchar_t *restrict delim,
+                   wchar_t **restrict ptr));
+#  endif
 _GL_CXXALIAS_SYS (wcstok, wchar_t *,
-                  (wchar_t *wcs, const wchar_t *delim, wchar_t **ptr));
+                  (wchar_t *restrict wcs, const wchar_t *restrict delim,
+                   wchar_t **restrict ptr));
+# endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcstok);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcstok
 # if HAVE_RAW_DECL_WCSTOK
@@ -1025,7 +1207,9 @@ _GL_FUNCDECL_SYS (wcswidth, int, (const wchar_t *s, size_t n)
 #  endif
 _GL_CXXALIAS_SYS (wcswidth, int, (const wchar_t *s, size_t n));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcswidth);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcswidth
 # if HAVE_RAW_DECL_WCSWIDTH
@@ -1036,28 +1220,38 @@ _GL_WARN_ON_USE (wcswidth, "wcswidth is unportable - "
 
 
 /* Convert *TP to a date and time wide string.  See
-   <http://pubs.opengroup.org/onlinepubs/9699919799/functions/wcsftime.html>.  */
+   <https://pubs.opengroup.org/onlinepubs/9699919799/functions/wcsftime.html>.  */
 #if @GNULIB_WCSFTIME@
 # if @REPLACE_WCSFTIME@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   undef wcsftime
 #   define wcsftime rpl_wcsftime
 #  endif
-_GL_FUNCDECL_RPL (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize,
-                                     const wchar_t *__fmt, const struct tm *__tp)
-                                    _GL_ARG_NONNULL ((1, 3, 4)));
-_GL_CXXALIAS_RPL (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize,
-                                     const wchar_t *__fmt, const struct tm *__tp));
+_GL_FUNCDECL_RPL (wcsftime, size_t,
+                  (wchar_t *restrict __buf, size_t __bufsize,
+                   const wchar_t *restrict __fmt,
+                   const struct tm *restrict __tp)
+                  _GL_ARG_NONNULL ((1, 3, 4)));
+_GL_CXXALIAS_RPL (wcsftime, size_t,
+                  (wchar_t *restrict __buf, size_t __bufsize,
+                   const wchar_t *restrict __fmt,
+                   const struct tm *restrict __tp));
 # else
 #  if !@HAVE_WCSFTIME@
-_GL_FUNCDECL_SYS (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize,
-                                     const wchar_t *__fmt, const struct tm *__tp)
-                                    _GL_ARG_NONNULL ((1, 3, 4)));
+_GL_FUNCDECL_SYS (wcsftime, size_t,
+                  (wchar_t *restrict __buf, size_t __bufsize,
+                   const wchar_t *restrict __fmt,
+                   const struct tm *restrict __tp)
+                  _GL_ARG_NONNULL ((1, 3, 4)));
 #  endif
-_GL_CXXALIAS_SYS (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize,
-                                     const wchar_t *__fmt, const struct tm *__tp));
+_GL_CXXALIAS_SYS (wcsftime, size_t,
+                  (wchar_t *restrict __buf, size_t __bufsize,
+                   const wchar_t *restrict __fmt,
+                   const struct tm *restrict __tp));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wcsftime);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wcsftime
 # if HAVE_RAW_DECL_WCSFTIME
index 8e56732bd4eb1d90f4a63c2fdb0faa3bc6d5bc9f..06105f16556c1fc1f324a0dc551dbf4f8d06a71e 100644 (file)
@@ -1,5 +1,5 @@
 /* Convert wide character to multibyte character.
-   Copyright (C) 2008-2019 Free Software Foundation, Inc.
+   Copyright (C) 2008-2020 Free Software Foundation, Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2008.
 
    This program is free software: you can redistribute it and/or modify
@@ -26,6 +26,7 @@
 
 size_t
 wcrtomb (char *s, wchar_t wc, mbstate_t *ps)
+#undef wcrtomb
 {
   /* This implementation of wcrtomb supports only stateless encodings.
      ps must be in the initial state.  */
@@ -35,12 +36,17 @@ wcrtomb (char *s, wchar_t wc, mbstate_t *ps)
       return (size_t)(-1);
     }
 
+#if !HAVE_WCRTOMB                       /* IRIX 6.5 */ \
+    || WCRTOMB_RETVAL_BUG               /* Solaris 11.3, MSVC */ \
+    || WCRTOMB_C_LOCALE_BUG             /* Android */
   if (s == NULL)
     /* We know the NUL wide character corresponds to the NUL character.  */
     return 1;
   else
+#endif
     {
-#if defined __ANDROID__
+#if HAVE_WCRTOMB
+# if WCRTOMB_C_LOCALE_BUG               /* Android */
       /* Implement consistently with mbrtowc(): through a 1:1 correspondence,
          as in ISO-8859-1.  */
       if (wc >= 0 && wc <= 0xff)
@@ -48,17 +54,27 @@ wcrtomb (char *s, wchar_t wc, mbstate_t *ps)
           *s = (unsigned char) wc;
           return 1;
         }
-#else
-      /* Implement on top of wctomb().  */
+      else
+        {
+          errno = EILSEQ;
+          return (size_t)(-1);
+        }
+# else
+      return wcrtomb (s, wc, ps);
+# endif
+#else                                   /* IRIX 6.5 */
+      /* Fallback for platforms that don't have wcrtomb().
+         Implement on top of wctomb().
+         This code is not multithread-safe.  */
       int ret = wctomb (s, wc);
 
       if (ret >= 0)
         return ret;
-#endif
       else
         {
           errno = EILSEQ;
           return (size_t)(-1);
         }
+#endif
     }
 }
index 0a7471fd4991930f24f97e6d25e2146cf3599c36..57b86928ff8e1fb44cbf3e3984a869c67a85063d 100644 (file)
@@ -1,6 +1,6 @@
 /* A substitute for ISO C99 <wctype.h>, for platforms that lack it.
 
-   Copyright (C) 2006-2019 Free Software Foundation, Inc.
+   Copyright (C) 2006-2020 Free Software Foundation, Inc.
 
    This 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,7 +19,7 @@
 
 /*
  * ISO C 99 <wctype.h> for platforms that lack it.
- * <http://www.opengroup.org/susv3xbd/wctype.h.html>
+ * <https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/wctype.h.html>
  *
  * iswctype, towctrans, towlower, towupper, wctrans, wctype,
  * wctrans_t, and wctype_t are not yet implemented.
@@ -133,33 +133,116 @@ typedef unsigned int rpl_wint_t;
 
 /* FreeBSD 4.4 to 4.11 has <wctype.h> but lacks the functions.
    Linux libc5 has <wctype.h> and the functions but they are broken.
+   mingw and MSVC have <wctype.h> and the functions but they take a wchar_t
+   as argument, not an rpl_wint_t.
    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
-   undefined variable _ctmp_ and to <ctype.h> macros like _P, and they
-   refer to system functions like _iswctype that are not in the
-   standard C library.  Rather than try to get ancient buggy
-   implementations like this to work, just disable them.  */
-#  undef iswalnum
-#  undef iswalpha
-#  undef iswblank
-#  undef iswcntrl
-#  undef iswdigit
-#  undef iswgraph
-#  undef iswlower
-#  undef iswprint
-#  undef iswpunct
-#  undef iswspace
-#  undef iswupper
-#  undef iswxdigit
-#  undef towlower
-#  undef towupper
+#  if @GNULIB_OVERRIDES_WINT_T@ /* implies @REPLACE_ISWCNTRL@ */
+
+_GL_WCTYPE_INLINE int
+rpl_iswalnum (wint_t wc)
+{
+  return ((wchar_t) wc == wc ? iswalnum ((wchar_t) wc) : 0);
+}
+
+_GL_WCTYPE_INLINE int
+rpl_iswalpha (wint_t wc)
+{
+  return ((wchar_t) wc == wc ? iswalpha ((wchar_t) wc) : 0);
+}
+
+_GL_WCTYPE_INLINE int
+rpl_iswblank (wint_t wc)
+{
+  return ((wchar_t) wc == wc ? iswblank ((wchar_t) wc) : 0);
+}
+
+_GL_WCTYPE_INLINE int
+rpl_iswcntrl (wint_t wc)
+{
+  return ((wchar_t) wc == wc ? iswcntrl ((wchar_t) wc) : 0);
+}
+
+_GL_WCTYPE_INLINE int
+rpl_iswdigit (wint_t wc)
+{
+  return ((wchar_t) wc == wc ? wc >= '0' && wc <= '9' : 0);
+}
+
+_GL_WCTYPE_INLINE int
+rpl_iswgraph (wint_t wc)
+{
+  return ((wchar_t) wc == wc ? iswgraph ((wchar_t) wc) : 0);
+}
+
+_GL_WCTYPE_INLINE int
+rpl_iswlower (wint_t wc)
+{
+  return ((wchar_t) wc == wc ? iswlower ((wchar_t) wc) : 0);
+}
+
+_GL_WCTYPE_INLINE int
+rpl_iswprint (wint_t wc)
+{
+  return ((wchar_t) wc == wc ? iswprint ((wchar_t) wc) : 0);
+}
+
+_GL_WCTYPE_INLINE int
+rpl_iswpunct (wint_t wc)
+{
+  return ((wchar_t) wc == wc ? iswpunct ((wchar_t) wc) : 0);
+}
+
+_GL_WCTYPE_INLINE int
+rpl_iswspace (wint_t wc)
+{
+  return ((wchar_t) wc == wc ? iswspace ((wchar_t) wc) : 0);
+}
+
+_GL_WCTYPE_INLINE int
+rpl_iswupper (wint_t wc)
+{
+  return ((wchar_t) wc == wc ? iswupper ((wchar_t) wc) : 0);
+}
+
+_GL_WCTYPE_INLINE int
+rpl_iswxdigit (wint_t wc)
+{
+  return ((wchar_t) wc == wc
+          ? (wc >= '0' && wc <= '9')
+            || ((wc & ~0x20) >= 'A' && (wc & ~0x20) <= 'F')
+          : 0);
+}
+
+_GL_WCTYPE_INLINE wint_t
+rpl_towlower (wint_t wc)
+{
+  return ((wchar_t) wc == wc ? (wchar_t) towlower ((wchar_t) wc) : wc);
+}
+
+_GL_WCTYPE_INLINE wint_t
+rpl_towupper (wint_t wc)
+{
+  return ((wchar_t) wc == wc ? (wchar_t) towupper ((wchar_t) wc) : wc);
+}
 
-/* Linux libc5 has <wctype.h> and the functions but they are broken.  */
-#  if @REPLACE_ISWCNTRL@
 #   if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#    undef iswalnum
+#    undef iswalpha
+#    undef iswblank
+#    undef iswcntrl
+#    undef iswdigit
+#    undef iswgraph
+#    undef iswlower
+#    undef iswprint
+#    undef iswpunct
+#    undef iswspace
+#    undef iswupper
+#    undef iswxdigit
+#    undef towlower
+#    undef towupper
 #    define iswalnum rpl_iswalnum
 #    define iswalpha rpl_iswalpha
 #    define iswblank rpl_iswblank
@@ -172,21 +255,62 @@ typedef unsigned int rpl_wint_t;
 #    define iswspace rpl_iswspace
 #    define iswupper rpl_iswupper
 #    define iswxdigit rpl_iswxdigit
-#   endif
-#  endif
-#  if @REPLACE_TOWLOWER@
-#   if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #    define towlower rpl_towlower
 #    define towupper rpl_towupper
 #   endif
-#  endif
+
+#  else
+
+/* IRIX 5.3 has macros but no functions, its isw* macros refer to an
+   undefined variable _ctmp_ and to <ctype.h> macros like _P, and they
+   refer to system functions like _iswctype that are not in the
+   standard C library.  Rather than try to get ancient buggy
+   implementations like this to work, just disable them.  */
+#   undef iswalnum
+#   undef iswalpha
+#   undef iswblank
+#   undef iswcntrl
+#   undef iswdigit
+#   undef iswgraph
+#   undef iswlower
+#   undef iswprint
+#   undef iswpunct
+#   undef iswspace
+#   undef iswupper
+#   undef iswxdigit
+#   undef towlower
+#   undef towupper
+
+/* Linux libc5 has <wctype.h> and the functions but they are broken.  */
+#   if @REPLACE_ISWCNTRL@
+#    if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#     define iswalnum rpl_iswalnum
+#     define iswalpha rpl_iswalpha
+#     define iswblank rpl_iswblank
+#     define iswcntrl rpl_iswcntrl
+#     define iswdigit rpl_iswdigit
+#     define iswgraph rpl_iswgraph
+#     define iswlower rpl_iswlower
+#     define iswprint rpl_iswprint
+#     define iswpunct rpl_iswpunct
+#     define iswspace rpl_iswspace
+#     define iswupper rpl_iswupper
+#     define iswxdigit rpl_iswxdigit
+#    endif
+#   endif
+#   if @REPLACE_TOWLOWER@
+#    if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#     define towlower rpl_towlower
+#     define towupper rpl_towupper
+#    endif
+#   endif
 
 _GL_WCTYPE_INLINE int
-#  if @REPLACE_ISWCNTRL@
+#   if @REPLACE_ISWCNTRL@
 rpl_iswalnum
-#  else
+#   else
 iswalnum
-#  endif
+#   endif
          (wint_t wc)
 {
   return ((wc >= '0' && wc <= '9')
@@ -194,88 +318,88 @@ iswalnum
 }
 
 _GL_WCTYPE_INLINE int
-#  if @REPLACE_ISWCNTRL@
+#   if @REPLACE_ISWCNTRL@
 rpl_iswalpha
-#  else
+#   else
 iswalpha
-#  endif
+#   endif
          (wint_t wc)
 {
   return (wc & ~0x20) >= 'A' && (wc & ~0x20) <= 'Z';
 }
 
 _GL_WCTYPE_INLINE int
-#  if @REPLACE_ISWCNTRL@
+#   if @REPLACE_ISWCNTRL@
 rpl_iswblank
-#  else
+#   else
 iswblank
-#  endif
+#   endif
          (wint_t wc)
 {
   return wc == ' ' || wc == '\t';
 }
 
 _GL_WCTYPE_INLINE int
-#  if @REPLACE_ISWCNTRL@
+#   if @REPLACE_ISWCNTRL@
 rpl_iswcntrl
-#  else
+#   else
 iswcntrl
-#  endif
+#   endif
         (wint_t wc)
 {
   return (wc & ~0x1f) == 0 || wc == 0x7f;
 }
 
 _GL_WCTYPE_INLINE int
-#  if @REPLACE_ISWCNTRL@
+#   if @REPLACE_ISWDIGIT@
 rpl_iswdigit
-#  else
+#   else
 iswdigit
-#  endif
+#   endif
          (wint_t wc)
 {
   return wc >= '0' && wc <= '9';
 }
 
 _GL_WCTYPE_INLINE int
-#  if @REPLACE_ISWCNTRL@
+#   if @REPLACE_ISWCNTRL@
 rpl_iswgraph
-#  else
+#   else
 iswgraph
-#  endif
+#   endif
          (wint_t wc)
 {
   return wc >= '!' && wc <= '~';
 }
 
 _GL_WCTYPE_INLINE int
-#  if @REPLACE_ISWCNTRL@
+#   if @REPLACE_ISWCNTRL@
 rpl_iswlower
-#  else
+#   else
 iswlower
-#  endif
+#   endif
          (wint_t wc)
 {
   return wc >= 'a' && wc <= 'z';
 }
 
 _GL_WCTYPE_INLINE int
-#  if @REPLACE_ISWCNTRL@
+#   if @REPLACE_ISWCNTRL@
 rpl_iswprint
-#  else
+#   else
 iswprint
-#  endif
+#   endif
          (wint_t wc)
 {
   return wc >= ' ' && wc <= '~';
 }
 
 _GL_WCTYPE_INLINE int
-#  if @REPLACE_ISWCNTRL@
+#   if @REPLACE_ISWCNTRL@
 rpl_iswpunct
-#  else
+#   else
 iswpunct
-#  endif
+#   endif
          (wint_t wc)
 {
   return (wc >= '!' && wc <= '~'
@@ -284,11 +408,11 @@ iswpunct
 }
 
 _GL_WCTYPE_INLINE int
-#  if @REPLACE_ISWCNTRL@
+#   if @REPLACE_ISWCNTRL@
 rpl_iswspace
-#  else
+#   else
 iswspace
-#  endif
+#   endif
          (wint_t wc)
 {
   return (wc == ' ' || wc == '\t'
@@ -296,22 +420,22 @@ iswspace
 }
 
 _GL_WCTYPE_INLINE int
-#  if @REPLACE_ISWCNTRL@
+#   if @REPLACE_ISWCNTRL@
 rpl_iswupper
-#  else
+#   else
 iswupper
-#  endif
+#   endif
          (wint_t wc)
 {
   return wc >= 'A' && wc <= 'Z';
 }
 
 _GL_WCTYPE_INLINE int
-#  if @REPLACE_ISWCNTRL@
+#   if @REPLACE_ISWXDIGIT@
 rpl_iswxdigit
-#  else
+#   else
 iswxdigit
-#  endif
+#   endif
           (wint_t wc)
 {
   return ((wc >= '0' && wc <= '9')
@@ -319,42 +443,67 @@ iswxdigit
 }
 
 _GL_WCTYPE_INLINE wint_t
-#  if @REPLACE_TOWLOWER@
+#   if @REPLACE_TOWLOWER@
 rpl_towlower
-#  else
+#   else
 towlower
-#  endif
+#   endif
          (wint_t wc)
 {
   return (wc >= 'A' && wc <= 'Z' ? wc - 'A' + 'a' : wc);
 }
 
 _GL_WCTYPE_INLINE wint_t
-#  if @REPLACE_TOWLOWER@
+#   if @REPLACE_TOWLOWER@
 rpl_towupper
-#  else
+#   else
 towupper
-#  endif
+#   endif
          (wint_t wc)
 {
   return (wc >= 'a' && wc <= 'z' ? wc - 'a' + 'A' : wc);
 }
 
-# elif @GNULIB_ISWBLANK@ && (! @HAVE_ISWBLANK@ || @REPLACE_ISWBLANK@)
-/* Only the iswblank function is missing.  */
+#  endif
 
-#  if @REPLACE_ISWBLANK@
-#   if !(defined __cplusplus && defined GNULIB_NAMESPACE)
-#    define iswblank rpl_iswblank
-#   endif
+# else
+/* Only some of the functions are missing or broken.  */
+
+#  if @GNULIB_ISWBLANK@ && (! @HAVE_ISWBLANK@ || @REPLACE_ISWBLANK@)
+/* Only the iswblank function is missing.  */
+#   if @REPLACE_ISWBLANK@
+#    if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#     define iswblank rpl_iswblank
+#    endif
 _GL_FUNCDECL_RPL (iswblank, int, (wint_t wc));
-#  else
+#   else
 _GL_FUNCDECL_SYS (iswblank, int, (wint_t wc));
+#   endif
+#  endif
+
+#  if @GNULIB_ISWDIGIT@
+#   if @REPLACE_ISWDIGIT@
+#    if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#     undef iswdigit
+#     define iswdigit rpl_iswdigit
+#    endif
+_GL_FUNCDECL_RPL (iswdigit, int, (wint_t wc));
+#   endif
+#  endif
+
+#  if @GNULIB_ISWXDIGIT@
+#   if @REPLACE_ISWXDIGIT@
+#    if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#     undef iswxdigit
+#     define iswxdigit rpl_iswxdigit
+#    endif
+_GL_FUNCDECL_RPL (iswxdigit, int, (wint_t wc));
+#   endif
 #  endif
 
 # endif
 
-# if defined __MINGW32__
+# if defined __MINGW32__ && !@GNULIB_OVERRIDES_WINT_T@
 
 /* On native Windows, wchar_t is uint16_t, and wint_t is uint32_t.
    The functions towlower and towupper are implemented in the MSVCRT library
@@ -387,36 +536,71 @@ rpl_towupper (wint_t wc)
 #   define towupper rpl_towupper
 #  endif
 
-# endif /* __MINGW32__ */
+# endif /* __MINGW32__ && !@GNULIB_OVERRIDES_WINT_T@ */
 
 # define GNULIB_defined_wctype_functions 1
 #endif
 
 #if @REPLACE_ISWCNTRL@
 _GL_CXXALIAS_RPL (iswalnum, int, (wint_t wc));
-_GL_CXXALIAS_RPL (iswalpha, int, (wint_t wc));
-_GL_CXXALIAS_RPL (iswcntrl, int, (wint_t wc));
-_GL_CXXALIAS_RPL (iswdigit, int, (wint_t wc));
-_GL_CXXALIAS_RPL (iswgraph, int, (wint_t wc));
-_GL_CXXALIAS_RPL (iswlower, int, (wint_t wc));
-_GL_CXXALIAS_RPL (iswprint, int, (wint_t wc));
-_GL_CXXALIAS_RPL (iswpunct, int, (wint_t wc));
-_GL_CXXALIAS_RPL (iswspace, int, (wint_t wc));
-_GL_CXXALIAS_RPL (iswupper, int, (wint_t wc));
-_GL_CXXALIAS_RPL (iswxdigit, int, (wint_t wc));
 #else
 _GL_CXXALIAS_SYS (iswalnum, int, (wint_t wc));
+#endif
+#if @REPLACE_ISWCNTRL@
+_GL_CXXALIAS_RPL (iswalpha, int, (wint_t wc));
+#else
 _GL_CXXALIAS_SYS (iswalpha, int, (wint_t wc));
+#endif
+#if @REPLACE_ISWCNTRL@
+_GL_CXXALIAS_RPL (iswcntrl, int, (wint_t wc));
+#else
 _GL_CXXALIAS_SYS (iswcntrl, int, (wint_t wc));
+#endif
+#if @GNULIB_ISWDIGIT@
+# if @REPLACE_ISWDIGIT@
+_GL_CXXALIAS_RPL (iswdigit, int, (wint_t wc));
+# else
 _GL_CXXALIAS_SYS (iswdigit, int, (wint_t wc));
+# endif
+#endif
+#if @REPLACE_ISWCNTRL@
+_GL_CXXALIAS_RPL (iswgraph, int, (wint_t wc));
+#else
 _GL_CXXALIAS_SYS (iswgraph, int, (wint_t wc));
+#endif
+#if @REPLACE_ISWCNTRL@
+_GL_CXXALIAS_RPL (iswlower, int, (wint_t wc));
+#else
 _GL_CXXALIAS_SYS (iswlower, int, (wint_t wc));
+#endif
+#if @REPLACE_ISWCNTRL@
+_GL_CXXALIAS_RPL (iswprint, int, (wint_t wc));
+#else
 _GL_CXXALIAS_SYS (iswprint, int, (wint_t wc));
+#endif
+#if @REPLACE_ISWCNTRL@
+_GL_CXXALIAS_RPL (iswpunct, int, (wint_t wc));
+#else
 _GL_CXXALIAS_SYS (iswpunct, int, (wint_t wc));
+#endif
+#if @REPLACE_ISWCNTRL@
+_GL_CXXALIAS_RPL (iswspace, int, (wint_t wc));
+#else
 _GL_CXXALIAS_SYS (iswspace, int, (wint_t wc));
+#endif
+#if @REPLACE_ISWCNTRL@
+_GL_CXXALIAS_RPL (iswupper, int, (wint_t wc));
+#else
 _GL_CXXALIAS_SYS (iswupper, int, (wint_t wc));
+#endif
+#if @GNULIB_ISWXDIGIT@
+# if @REPLACE_ISWXDIGIT@
+_GL_CXXALIAS_RPL (iswxdigit, int, (wint_t wc));
+# else
 _GL_CXXALIAS_SYS (iswxdigit, int, (wint_t wc));
+# endif
 #endif
+#if __GLIBC__ >= 2
 _GL_CXXALIASWARN (iswalnum);
 _GL_CXXALIASWARN (iswalpha);
 _GL_CXXALIASWARN (iswcntrl);
@@ -428,6 +612,7 @@ _GL_CXXALIASWARN (iswpunct);
 _GL_CXXALIASWARN (iswspace);
 _GL_CXXALIASWARN (iswupper);
 _GL_CXXALIASWARN (iswxdigit);
+#endif
 
 #if @GNULIB_ISWBLANK@
 # if @REPLACE_ISWCNTRL@ || @REPLACE_ISWBLANK@
@@ -435,7 +620,9 @@ _GL_CXXALIAS_RPL (iswblank, int, (wint_t wc));
 # else
 _GL_CXXALIAS_SYS (iswblank, int, (wint_t wc));
 # endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (iswblank);
+# endif
 #endif
 
 #if !@HAVE_WCTYPE_T@
@@ -451,7 +638,9 @@ typedef void * wctype_t;
 _GL_FUNCDECL_SYS (wctype, wctype_t, (const char *name));
 # endif
 _GL_CXXALIAS_SYS (wctype, wctype_t, (const char *name));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wctype);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wctype
 # if HAVE_RAW_DECL_WCTYPE
@@ -464,11 +653,22 @@ _GL_WARN_ON_USE (wctype, "wctype is unportable - "
    The argument WC must be either a wchar_t value or WEOF.
    The argument DESC must have been returned by the wctype() function.  */
 #if @GNULIB_ISWCTYPE@
-# if !@HAVE_WCTYPE_T@
+# if @GNULIB_OVERRIDES_WINT_T@
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef iswctype
+#   define iswctype rpl_iswctype
+#  endif
+_GL_FUNCDECL_RPL (iswctype, int, (wint_t wc, wctype_t desc));
+_GL_CXXALIAS_RPL (iswctype, int, (wint_t wc, wctype_t desc));
+# else
+#  if !@HAVE_WCTYPE_T@
 _GL_FUNCDECL_SYS (iswctype, int, (wint_t wc, wctype_t desc));
-# endif
+#  endif
 _GL_CXXALIAS_SYS (iswctype, int, (wint_t wc, wctype_t desc));
+# endif
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (iswctype);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef iswctype
 # if HAVE_RAW_DECL_ISWCTYPE
@@ -484,8 +684,10 @@ _GL_CXXALIAS_RPL (towupper, wint_t, (wint_t wc));
 _GL_CXXALIAS_SYS (towlower, wint_t, (wint_t wc));
 _GL_CXXALIAS_SYS (towupper, wint_t, (wint_t wc));
 #endif
+#if __GLIBC__ >= 2
 _GL_CXXALIASWARN (towlower);
 _GL_CXXALIASWARN (towupper);
+#endif
 
 #if !@HAVE_WCTRANS_T@
 # if !GNULIB_defined_wctrans_t
@@ -500,7 +702,9 @@ typedef void * wctrans_t;
 _GL_FUNCDECL_SYS (wctrans, wctrans_t, (const char *name));
 # endif
 _GL_CXXALIAS_SYS (wctrans, wctrans_t, (const char *name));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (wctrans);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef wctrans
 # if HAVE_RAW_DECL_WCTRANS
@@ -517,7 +721,9 @@ _GL_WARN_ON_USE (wctrans, "wctrans is unportable - "
 _GL_FUNCDECL_SYS (towctrans, wint_t, (wint_t wc, wctrans_t desc));
 # endif
 _GL_CXXALIAS_SYS (towctrans, wint_t, (wint_t wc, wctrans_t desc));
+# if __GLIBC__ >= 2
 _GL_CXXALIASWARN (towctrans);
+# endif
 #elif defined GNULIB_POSIXCHECK
 # undef towctrans
 # if HAVE_RAW_DECL_TOWCTRANS
index 8aefd0b0ff8dfc97b570b77adce565f49313b401..c4be45a5f8bbc164fdbba325673496bbaa45af22 100644 (file)
@@ -1,5 +1,5 @@
 /* Init guards, somewhat like spinlocks (native Windows implementation).
-   Copyright (C) 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 94338816efac8c7db30a08d8fca3a73165a25a80..7eb38a2b1e92d62a3e70ecd6c7a36db7463f299a 100644 (file)
@@ -1,5 +1,5 @@
 /* Plain mutexes (native Windows implementation).
-   Copyright (C) 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 5364f92d07656160d39d254cc84d2cff4f78397a..748b9883db6092542c76718545d6308de57d4269 100644 (file)
@@ -1,5 +1,5 @@
 /* Plain mutexes (native Windows implementation).
-   Copyright (C) 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 455c50ef81b36bb16842124c8f90664f31b0977e..c431bd67073bfe3a3a372e1aa1bfdaa45f274997 100644 (file)
@@ -1,5 +1,5 @@
 /* Once-only control (native Windows implementation).
-   Copyright (C) 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 15999839b8fc2d8815460a2ef76e5fdb81241f8f..d31717e861ee1abb06b3e67fffa839c1dd02ca85 100644 (file)
@@ -1,5 +1,5 @@
 /* Once-only control (native Windows implementation).
-   Copyright (C) 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 7e6e44650c5913e725364ec07b35a7c16accec65..db3c40c442fd893a52032d3a097fbdd023b6cf58 100644 (file)
@@ -1,5 +1,5 @@
 /* Plain recursive mutexes (native Windows implementation).
-   Copyright (C) 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index d1431086f9f3c995622189b38f8c7c17f163719e..3b315e5ce9f298b3b7a7b90c5c3599a5b296844a 100644 (file)
@@ -1,5 +1,5 @@
 /* Plain recursive mutexes (native Windows implementation).
-   Copyright (C) 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 9207d1b9973b5828677703c664fbb067d9341687..64e761cd4fa2889eed857e88a069b868156bd40f 100644 (file)
@@ -1,5 +1,5 @@
 /* Read-write locks (native Windows implementation).
-   Copyright (C) 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 #include <errno.h>
 #include <stdlib.h>
 
+/* Don't assume that UNICODE is not defined.  */
+#undef CreateEvent
+#define CreateEvent CreateEventA
+
 /* In this file, the waitqueues are implemented as circular arrays.  */
 #define glwthread_waitqueue_t glwthread_carray_waitqueue_t
 
index 90020406af09347e47bf1ad3659bf7b9e65bdcaa..ae5b82f527550b8b7609bfb4e7309057d4b6dc05 100644 (file)
@@ -1,5 +1,5 @@
 /* Read-write locks (native Windows implementation).
-   Copyright (C) 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2020 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 295f8d8e758dd674b722e8062f224caf8d9436a0..68559deebb31db615b222af900be67a134ae3930 100644 (file)
@@ -1,6 +1,6 @@
 /* Report a memory allocation failure and exit.
 
-   Copyright (C) 1997-2000, 2002-2004, 2006, 2009-2019 Free Software
+   Copyright (C) 1997-2000, 2002-2004, 2006, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
index e3068c83c48fdb50f0aa2cbaf739878b0667fac7..7cd4a74f04d2f1f550a6d6d60b1d0c245374b4d4 100644 (file)
@@ -1,6 +1,6 @@
 /* xalloc-oversized.h -- memory allocation size checking
 
-   Copyright (C) 1990-2000, 2003-2004, 2006-2019 Free Software Foundation, Inc.
+   Copyright (C) 1990-2000, 2003-2004, 2006-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -41,7 +41,7 @@ typedef size_t __xalloc_count_type;
    positive and N must be nonnegative.  This is a macro, not a
    function, so that it works correctly even when SIZE_MAX < N.  */
 
-#if 7 <= __GNUC__
+#if 7 <= __GNUC__ && !defined __clang__
 # define xalloc_oversized(n, s) \
    __builtin_mul_overflow_p (n, s, (__xalloc_count_type) 1)
 #elif 5 <= __GNUC__ && !defined __ICC && !__STRICT_ANSI__
index fc7e86bd89b398a2fa0a7077047f9790d693adcb..d4f96bfe0f5bd1b118356fb047bcc17546851141 100644 (file)
@@ -1,6 +1,6 @@
 /* xalloc.h -- malloc with out-of-memory checking
 
-   Copyright (C) 1990-2000, 2003-2004, 2006-2019 Free Software Foundation, Inc.
+   Copyright (C) 1990-2000, 2003-2004, 2006-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -31,24 +31,24 @@ _GL_INLINE_HEADER_BEGIN
 # define XALLOC_INLINE _GL_INLINE
 #endif
 
+
 #ifdef __cplusplus
 extern "C" {
 #endif
 
 
-#if ! defined __clang__ && \
-    (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3))
-# define _GL_ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args))
-#else
-# define _GL_ATTRIBUTE_ALLOC_SIZE(args)
-#endif
+#if GNULIB_XALLOC_DIE
 
 /* 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
    function to call when one wants the program to die because of a
    memory allocation failure.  */
-extern _Noreturn void xalloc_die (void);
+/*extern*/ _Noreturn void xalloc_die (void);
+
+#endif /* GNULIB_XALLOC_DIE */
+
+#if GNULIB_XALLOC
 
 void *xmalloc (size_t s)
       _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_ALLOC_SIZE ((1));
@@ -71,23 +71,23 @@ char *xstrdup (char const *str)
 
 /* Allocate an object of type T dynamically, with error checking.  */
 /* extern t *XMALLOC (typename t); */
-#define XMALLOC(t) ((t *) xmalloc (sizeof (t)))
+# define XMALLOC(t) ((t *) xmalloc (sizeof (t)))
 
 /* Allocate memory for N elements of type T, with error checking.  */
 /* extern t *XNMALLOC (size_t n, typename t); */
-#define XNMALLOC(n, t) \
-   ((t *) (sizeof (t) == 1 ? xmalloc (n) : xnmalloc (n, sizeof (t))))
+# define XNMALLOC(n, t) \
+    ((t *) (sizeof (t) == 1 ? xmalloc (n) : xnmalloc (n, sizeof (t))))
 
 /* Allocate an object of type T dynamically, with error checking,
    and zero it.  */
 /* extern t *XZALLOC (typename t); */
-#define XZALLOC(t) ((t *) xzalloc (sizeof (t)))
+# define XZALLOC(t) ((t *) xzalloc (sizeof (t)))
 
 /* Allocate memory for N elements of type T, with error checking,
    and zero it.  */
 /* extern t *XCALLOC (size_t n, typename t); */
-#define XCALLOC(n, t) \
-   ((t *) (sizeof (t) == 1 ? xzalloc (n) : xcalloc (n, sizeof (t))))
+# define XCALLOC(n, t) \
+    ((t *) (sizeof (t) == 1 ? xzalloc (n) : xcalloc (n, sizeof (t))))
 
 
 /* Allocate an array of N objects, each with S bytes of memory,
@@ -218,8 +218,15 @@ xcharalloc (size_t n)
   return XNMALLOC (n, char);
 }
 
+#endif /* GNULIB_XALLOC */
+
+
 #ifdef __cplusplus
 }
+#endif
+
+
+#if GNULIB_XALLOC && defined __cplusplus
 
 /* C++ does not allow conversions from void * to other pointer types
    without a cast.  Use templates to work around the problem when
@@ -255,7 +262,8 @@ xmemdup (T const *p, size_t s)
   return (T *) xmemdup ((void const *) p, s);
 }
 
-#endif
+#endif /* GNULIB_XALLOC && C++ */
+
 
 _GL_INLINE_HEADER_END
 
index cbe9a4f5671e33d96b9cba0e611eec0a06e4c0c2..69c4e7dfae9e41f15b4b0bc7221ec02eb5d18ede 100644 (file)
@@ -1,6 +1,6 @@
 /* xmalloc.c -- malloc with out of memory checking
 
-   Copyright (C) 1990-2000, 2002-2006, 2008-2019 Free Software Foundation, Inc.
+   Copyright (C) 1990-2000, 2002-2006, 2008-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 #include <stdlib.h>
 #include <string.h>
 
-/* 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_GNU and supports the GNU API even on non-GNU platforms.  */
+/* 1 if calloc, malloc and realloc are known to be compatible with GNU.
+   This matters if we are not also using the calloc-gnu, malloc-gnu
+   and realloc-gnu modules, which define HAVE_CALLOC_GNU,
+   HAVE_MALLOC_GNU and HAVE_REALLOC_GNU and support the GNU API even
+   on non-GNU platforms.  */
 #if defined HAVE_CALLOC_GNU || (defined __GLIBC__ && !defined __UCLIBC__)
 enum { HAVE_GNU_CALLOC = 1 };
 #else
 enum { HAVE_GNU_CALLOC = 0 };
 #endif
+#if defined HAVE_MALLOC_GNU || (defined __GLIBC__ && !defined __UCLIBC__)
+enum { HAVE_GNU_MALLOC = 1 };
+#else
+enum { HAVE_GNU_MALLOC = 0 };
+#endif
+#if defined HAVE_REALLOC_GNU || (defined __GLIBC__ && !defined __UCLIBC__)
+enum { HAVE_GNU_REALLOC = 1 };
+#else
+enum { HAVE_GNU_REALLOC = 0 };
+#endif
 
 /* Allocate N bytes of memory dynamically, with error checking.  */
 
@@ -39,7 +51,7 @@ void *
 xmalloc (size_t n)
 {
   void *p = malloc (n);
-  if (!p && n != 0)
+  if (!p && (HAVE_GNU_MALLOC || n))
     xalloc_die ();
   return p;
 }
@@ -50,18 +62,17 @@ xmalloc (size_t n)
 void *
 xrealloc (void *p, size_t n)
 {
-  if (!n && p)
+  if (!HAVE_GNU_REALLOC && !n && p)
     {
-      /* The GNU and C99 realloc behaviors disagree here.  Act like
-         GNU, even if the underlying realloc is C99.  */
+      /* The GNU and C99 realloc behaviors disagree here.  Act like GNU.  */
       free (p);
       return NULL;
     }
 
-  p = realloc (p, n);
-  if (!p && n)
+  void *r = realloc (p, n);
+  if (!r && (n || (HAVE_GNU_REALLOC && !p)))
     xalloc_die ();
-  return p;
+  return r;
 }
 
 /* If P is null, allocate a block of at least *PN bytes; otherwise,
@@ -76,14 +87,14 @@ x2realloc (void *p, size_t *pn)
   return x2nrealloc (p, pn, 1);
 }
 
-/* Allocate S bytes of zeroed memory dynamically, with error checking.
+/* Allocate N bytes of zeroed memory dynamically, with error checking.
    There's no need for xnzalloc (N, S), since it would be equivalent
    to xcalloc (N, S).  */
 
 void *
-xzalloc (size_t s)
+xzalloc (size_t n)
 {
-  return memset (xmalloc (s), 0, s);
+  return xcalloc (n, 1);
 }
 
 /* Allocate zeroed memory for N elements of S bytes, with error
index a9738291130d2769bdfa07f04ee74e87fc54a8ac..93dcfe50fdd7c5830dfc8a0294cd0f875ab0d2f6 100644 (file)
@@ -1,6 +1,6 @@
 /* Duplicate a bounded initial segment of a string, with out-of-memory
    checking.
-   Copyright (C) 2003, 2006-2007, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2003, 2006-2007, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 360ccfdbb1f233e3d54be15d080b308f88e3d7e3..4f1da97c3ffc24dfb6e01bbc90595082bca5d7fb 100644 (file)
@@ -1,6 +1,6 @@
 /* Duplicate a bounded initial segment of a string, with out-of-memory
    checking.
-   Copyright (C) 2003, 2009-2019 Free Software Foundation, Inc.
+   Copyright (C) 2003, 2009-2020 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
diff --git a/lib/xstrtol-error.c b/lib/xstrtol-error.c
deleted file mode 100644 (file)
index a0d10c2..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-/* A more useful interface to strtol.
-
-   Copyright (C) 1995-1996, 1998-1999, 2001-2004, 2006-2019 Free Software
-   Foundation, Inc.
-
-   This program is free software: you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 3 of the License, or
-   (at your option) any later version.
-
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
-
-#include <config.h>
-#include "xstrtol.h"
-
-#include <stdlib.h>
-
-#include "error.h"
-#include "exitfail.h"
-#include "gettext.h"
-
-#define N_(msgid) msgid
-
-/* Report an error for an invalid integer in an option argument.
-
-   ERR is the error code returned by one of the xstrto* functions.
-
-   Use OPT_IDX to decide whether to print the short option string "C"
-   or "-C" or a long option string derived from LONG_OPTION.  OPT_IDX
-   is -2 if the short option "C" was used, without any leading "-"; it
-   is -1 if the short option "-C" was used; otherwise it is an index
-   into LONG_OPTIONS, which should have a name preceded by two '-'
-   characters.
-
-   ARG is the option-argument containing the integer.
-
-   After reporting an error, exit with status EXIT_STATUS if it is
-   nonzero.  */
-
-static void
-xstrtol_error (enum strtol_error err,
-               int opt_idx, char c, struct option const *long_options,
-               char const *arg,
-               int exit_status)
-{
-  char const *hyphens = "--";
-  char const *msgid;
-  char const *option;
-  char option_buffer[2];
-
-  switch (err)
-    {
-    default:
-      abort ();
-
-    case LONGINT_INVALID:
-      msgid = N_("invalid %s%s argument '%s'");
-      break;
-
-    case LONGINT_INVALID_SUFFIX_CHAR:
-    case LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW:
-      msgid = N_("invalid suffix in %s%s argument '%s'");
-      break;
-
-    case LONGINT_OVERFLOW:
-      msgid = N_("%s%s argument '%s' too large");
-      break;
-    }
-
-  if (opt_idx < 0)
-    {
-      hyphens -= opt_idx;
-      option_buffer[0] = c;
-      option_buffer[1] = '\0';
-      option = option_buffer;
-    }
-  else
-    option = long_options[opt_idx].name;
-
-  error (exit_status, 0, gettext (msgid), hyphens, option, arg);
-}
-
-/* Like xstrtol_error, except exit with a failure status.  */
-
-void
-xstrtol_fatal (enum strtol_error err,
-               int opt_idx, char c, struct option const *long_options,
-               char const *arg)
-{
-  xstrtol_error (err, opt_idx, c, long_options, arg, exit_failure);
-  abort ();
-}
index ab73d0403f134633b3bbfcb8627566f3b47a8b0c..b567fffc6aa2b4a698d3bb574047afab4940a1e6 100644 (file)
@@ -1,6 +1,6 @@
 /* A more useful interface to strtol.
 
-   Copyright (C) 1995-1996, 1998-2001, 2003-2007, 2009-2019 Free Software
+   Copyright (C) 1995-1996, 1998-2001, 2003-2007, 2009-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
index fff320d504120a10b5c3c975463e046915e73d90..15d9bb73cfff2412479f8897f83da8dfb2af4227 100644 (file)
@@ -1,6 +1,6 @@
 /* A more useful interface to strtol.
 
-   Copyright (C) 1995-1996, 1998-1999, 2001-2004, 2006-2019 Free Software
+   Copyright (C) 1995-1996, 1998-1999, 2001-2004, 2006-2020 Free Software
    Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
@@ -19,7 +19,6 @@
 #ifndef XSTRTOL_H_
 # define XSTRTOL_H_ 1
 
-# include <getopt.h>
 # include <inttypes.h>
 
 # ifndef _STRTOL_ERROR
@@ -43,31 +42,9 @@ typedef enum strtol_error strtol_error;
   strtol_error name (const char *, char **, int, type *, const char *);
 _DECLARE_XSTRTOL (xstrtol, long int)
 _DECLARE_XSTRTOL (xstrtoul, unsigned long int)
-_DECLARE_XSTRTOL (xstrtoimax, intmax_t)
-_DECLARE_XSTRTOL (xstrtoumax, uintmax_t)
-
-#if HAVE_LONG_LONG_INT
 _DECLARE_XSTRTOL (xstrtoll, long long int)
 _DECLARE_XSTRTOL (xstrtoull, unsigned long long int)
-#endif
-
-/* Report an error for an invalid integer in an option argument.
-
-   ERR is the error code returned by one of the xstrto* functions.
-
-   Use OPT_IDX to decide whether to print the short option string "C"
-   or "-C" or a long option string derived from LONG_OPTION.  OPT_IDX
-   is -2 if the short option "C" was used, without any leading "-"; it
-   is -1 if the short option "-C" was used; otherwise it is an index
-   into LONG_OPTIONS, which should have a name preceded by two '-'
-   characters.
-
-   ARG is the option-argument containing the integer.
-
-   After reporting an error, exit with a failure status.  */
-
-_Noreturn void xstrtol_fatal (enum strtol_error,
-                              int, char, struct option const *,
-                              char const *);
+_DECLARE_XSTRTOL (xstrtoimax, intmax_t)
+_DECLARE_XSTRTOL (xstrtoumax, uintmax_t)
 
 #endif /* not XSTRTOL_H_ */
index bcdde774b22c078e8f5b015e49e302288756df84..dc624cf190186fd98bd575e3cc5f605f5284f7b2 100644 (file)
@@ -1,5 +1,6 @@
 # This file is part of GNU Parted
-# Copyright (C) 1999-2001, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 1999-2001, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+# Inc.
 #
 # This file may be modified and/or distributed without restriction.
 
@@ -23,7 +24,7 @@ lib_LTLIBRARIES       = libparted.la
 # For details, see the "Updating library version information" section of
 # "info libtool".
 CURRENT = 2
-REVISION = 2
+REVISION = 3
 AGE = 0
 
 libparted_la_LDFLAGS  = -version-info $(CURRENT):$(REVISION):$(AGE)
@@ -55,7 +56,6 @@ libparted_la_LIBADD = \
   $(top_builddir)/lib/libgnulib.la \
   $(OS_LIBS)           \
   $(DM_LIBS)           \
-  $(SELINUX_LIBS)      \
   $(LIB_BLKID)         \
   $(UUID_LIBS)         \
   $(INTLLIBS)
index b38695293af98c9f3710df30fdfff2e2879fa66b..29b51fc9f8f481fe991cb224dc8183791a1ee24a 100644 (file)
@@ -15,7 +15,8 @@
 @SET_MAKE@
 
 # This file is part of GNU Parted
-# Copyright (C) 1999-2001, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 1999-2001, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+# Inc.
 #
 # This file may be modified and/or distributed without restriction.
 
@@ -101,9 +102,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -115,15 +116,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -133,25 +132,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -163,9 +163,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -180,6 +181,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -188,14 +190,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -236,8 +239,7 @@ am__DEPENDENCIES_1 =
 libparted_la_DEPENDENCIES = fs/libfs.la labels/liblabels.la \
        $(top_builddir)/lib/libgnulib.la $(am__DEPENDENCIES_1) \
        $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
-       $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
-       $(am__DEPENDENCIES_1)
+       $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 am__dirstamp = $(am__leading_dot)dirstamp
 am__objects_1 = arch/$(OS).lo
 am_libparted_la_OBJECTS = debug.lo architecture.lo device.lo \
@@ -387,6 +389,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -421,6 +424,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -431,6 +436,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -478,19 +484,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -504,6 +514,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -564,6 +576,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -612,9 +625,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -630,6 +646,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -713,11 +730,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -727,12 +746,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -766,10 +790,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -791,14 +815,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -817,7 +844,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -827,7 +853,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -850,6 +875,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -935,7 +961,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -948,6 +976,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -970,6 +999,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -978,15 +1008,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -1025,6 +1054,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -1050,16 +1080,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -1108,6 +1150,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -1137,6 +1180,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1173,21 +1217,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1215,6 +1262,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1224,6 +1272,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1256,6 +1306,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1344,6 +1395,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1381,13 +1433,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1406,6 +1458,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
@@ -1495,7 +1548,7 @@ lib_LTLIBRARIES = libparted.la
 # For details, see the "Updating library version information" section of
 # "info libtool".
 CURRENT = 2
-REVISION = 2
+REVISION = 3
 AGE = 0
 libparted_la_LDFLAGS = -version-info $(CURRENT):$(REVISION):$(AGE)
 libparted_la_SOURCES = debug.c                 \
@@ -1524,7 +1577,6 @@ libparted_la_LIBADD = \
   $(top_builddir)/lib/libgnulib.la \
   $(OS_LIBS)           \
   $(DM_LIBS)           \
-  $(SELINUX_LIBS)      \
   $(LIB_BLKID)         \
   $(UUID_LIBS)         \
   $(INTLLIBS)
index 91664adf099a175944f8de4294608d018db35ecd..d308bd93f948ec960e87e192e9267a3f38c172e4 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2006-2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2006-2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 321b70a20968f367b05c4d75450569b7aef02361..d7204cc1d268d87bdffcb14e8bf73022389de09c 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2001, 2005, 2007, 2009-2014, 2019 Free Software
+    Copyright (C) 1999-2001, 2005, 2007, 2009-2014, 2019-2021 Free Software
     Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
@@ -359,46 +359,6 @@ gnu_close (PedDevice* dev)
                        dev->dirty = 0;
        }
 
-#if 0
-       if (dev->dirty && dev->boot_dirty && dev->type != PED_DEVICE_FILE) {
-               /* ouch! */
-               ped_exception_throw (
-                       PED_EXCEPTION_WARNING,
-                       PED_EXCEPTION_OK,
-                       _("The partition table cannot be re-read.  This means "
-                         "you need to reboot before mounting any "
-                         "modified partitions.  You also need to reinstall "
-                         "your boot loader before you reboot (which may "
-                         "require mounting modified partitions).  It is "
-                         "impossible do both things!  So you'll need to "
-                         "boot off a rescue disk, and reinstall your boot "
-                         "loader from the rescue disk.  Read section 4 of "
-                         "the Parted User documentation for more "
-                         "information."));
-               return 1;
-       }
-
-       if (dev->dirty && dev->type != PED_DEVICE_FILE) {
-               ped_exception_throw (
-                       PED_EXCEPTION_WARNING,
-                       PED_EXCEPTION_IGNORE,
-                       _("The partition table on %s cannot be re-read "
-                         "(%s).  This means the Hurd knows nothing about any "
-                         "modifications you made.  You should reboot your "
-                         "computer before doing anything with %s."),
-                       dev->path, strerror (errno), dev->path);
-       }
-
-       if (dev->boot_dirty && dev->type != PED_DEVICE_FILE) {
-               ped_exception_throw (
-                       PED_EXCEPTION_WARNING,
-                       PED_EXCEPTION_OK,
-                       _("You should reinstall your boot loader before "
-                         "rebooting.  Read section 4 of the Parted User "
-                         "documentation for more information."));
-       }
-#endif
-
        return 1;
 }
 
index 09ec781df3d14b1c1b2bd96f3ee144043b0c2c30..94ea176aa7286460f0f252c417b9321e65923d1a 100644 (file)
@@ -1,5 +1,5 @@
 /* libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1999-2014, 2019-2021 Free Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -720,9 +720,9 @@ _get_linux_version ()
         static int kver = -1;
 
         struct utsname uts;
-        int major = 0;
-        int minor = 0;
-        int teeny = 0;
+        unsigned int major = 0;
+        unsigned int minor = 0;
+        unsigned int teeny = 0;
 
         if (kver != -1)
                 return kver;
@@ -2884,7 +2884,7 @@ _dm_get_partition_start_and_length(PedPartition const *part,
         char *params;
         char *target_type;
         dm_get_next_target(task, NULL, (uint64_t *)start, (uint64_t *)length, &target_type, &params);
-        if (sscanf (params, "%d:%d %Ld", &major, &minor, start) != 3)
+        if (sscanf (params, "%d:%d %Lu", &major, &minor, start) != 3)
                 goto err;
         rc = 1;
 
index b61cd759565fa7c9206b9b97519d2274101bd105..e246561ab2cc6996ac5faedab28f9dd60d1f7273 100644 (file)
@@ -1,5 +1,5 @@
 /* libparted - a library for manipulating disk partitions
-    Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index f43d1fca8bb5a250edc9b64e00d4c6c6a5191d05..88075fbb69e2ced859c7a204ca5b60e7830c93d0 100644 (file)
@@ -1,6 +1,6 @@
  /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2007, 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 56f551517f05a55368eb07034cc0ee6105db755f..111b9cb365e63153337e75037e30ca5826dfefe6 100644 (file)
@@ -1,6 +1,6 @@
  /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2007, 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index ed24eaa71a061106a441475bb221e7847bf310b0..ab502d8a3f63b25157d9d4ed5bdbab7ec7d86abb 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2000-2001, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2000-2001, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 1b562c877f956fcb53fb95d39714889b958f4cc5..7eccdabb0303310f854e2ae890af7ea36fb9474b 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2000, 2005, 2007-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1999-2000, 2005, 2007-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index c8cdcabf6788c482ddd65fd83fc5befd1661bc64..f53cbda44b544f597103d97baba49be09ebcb76d 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2000, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2000, 2007-2014, 2019-2021 Free Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index c4932ca660f771302708dcc7ed7bf959d8d72efb..65d0bc6a8d0782cded0dc3254037678e5c8dc801 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2000, 2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2000, 2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -106,7 +106,7 @@ void ped_assert (const char* cond_text,
         /* Throw the exception */
         ped_exception_throw (
                 PED_EXCEPTION_BUG,
-                PED_EXCEPTION_FATAL,
+                PED_EXCEPTION_CANCEL,
                 _("Assertion (%s) at %s:%d in function %s() failed."),
                 cond_text, file, line, function);
         abort ();
index 5aaac5a45e2651c2027814350a52e9a503d414d2..345b9e73abb75453c98506510ca54db71a2c6c80 100644 (file)
@@ -1,7 +1,7 @@
  /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2003, 2005, 2007-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1999-2003, 2005, 2007-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -2407,6 +2407,10 @@ ped_partition_flag_get_name (PedPartitionFlag flag)
                 return N_("irst");
         case PED_PARTITION_ESP:
                 return N_("esp");
+        case PED_PARTITION_CHROMEOS_KERNEL:
+                return N_("chromeos_kernel");
+       case PED_PARTITION_BLS_BOOT:
+               return N_("bls_boot");
 
        default:
                ped_exception_throw (
@@ -2446,8 +2450,8 @@ ped_partition_flag_get_by_name (const char* name)
        for (flag = ped_partition_flag_next (0); flag;
                        flag = ped_partition_flag_next (flag)) {
                flag_name = ped_partition_flag_get_name (flag);
-               if (strcasecmp (name, flag_name) == 0
-                   || strcasecmp (name, _(flag_name)) == 0)
+               if (flag_name && (strcasecmp (name, flag_name) == 0
+                   || strcasecmp (name, _(flag_name)) == 0))
                        return flag;
        }
 
index 8fbb437e1d2e5771cf7d82b0bee9468df09e7874..b9c571c14c8526a26fa8929ca6f50d1bbcdb52bf 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2000, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1999-2000, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 69c95b6aa0f0d6018aa0a0f83c84c615f7c3a080..ba2594cef4c3b1ba203d6aba29c399650cfc57a2 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2001, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1999-2001, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 74f275a3fedb3366d888d9488c3c1c5568baf030..a2fbb5afd24fe65a0279071eac0d30ee6310b1f5 100644 (file)
@@ -1,9 +1,10 @@
 # This file is part of GNU Parted
-# Copyright (C) 1999-2001, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 1999-2001, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+# Inc.
 #
 # This file may be modified and/or distributed without restriction.
 
-partedincludedir = -I$(top_builddir)/include -I$(top_srcdir)/include
+partedincludedir = -I$(top_builddir)/include -I$(top_srcdir)/include -I$(top_srcdir)/lib
 
 AM_CFLAGS = $(WARN_CFLAGS)
 
@@ -32,6 +33,8 @@ libfs_la_SOURCES =            \
   fat/count.h                  \
   fat/fat.c                    \
   fat/fat.h                    \
+  f2fs/f2fs.c                  \
+  f2fs/f2fs.h                  \
   hfs/hfs.c                    \
   hfs/hfs.h                    \
   hfs/probe.c                  \
@@ -62,7 +65,7 @@ EXTRA_DIST =                  \
 # For details, see the "Updating library version information" section of
 # "info libtool".
 CURRENT = 0
-REVISION = 2
+REVISION = 3
 AGE = 0
 
 sym_file = $(srcdir)/fsresize.sym
index 48c126689e015465dd684b01064fe25bcbcc1be7..fb74e9d81e5a1ceb7418ced0128d6c341c83c045 100644 (file)
@@ -15,7 +15,8 @@
 @SET_MAKE@
 
 # This file is part of GNU Parted
-# Copyright (C) 1999-2001, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 1999-2001, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+# Inc.
 #
 # This file may be modified and/or distributed without restriction.
 
@@ -100,9 +101,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -114,15 +115,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -132,25 +131,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -162,9 +162,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -179,6 +180,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -187,14 +189,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -237,8 +240,8 @@ libfs_la_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
 am__dirstamp = $(am__leading_dot)dirstamp
 am_libfs_la_OBJECTS = amiga/affs.lo amiga/amiga.lo amiga/apfs.lo \
        amiga/asfs.lo amiga/a-interface.lo btrfs/btrfs.lo \
-       ext2/interface.lo fat/bootsector.lo fat/fat.lo hfs/hfs.lo \
-       hfs/probe.lo jfs/jfs.lo linux_swap/linux_swap.lo \
+       ext2/interface.lo fat/bootsector.lo fat/fat.lo f2fs/f2fs.lo \
+       hfs/hfs.lo hfs/probe.lo jfs/jfs.lo linux_swap/linux_swap.lo \
        nilfs2/nilfs2.lo ntfs/ntfs.lo reiserfs/reiserfs.lo udf/udf.lo \
        ufs/ufs.lo xfs/xfs.lo
 libfs_la_OBJECTS = $(am_libfs_la_OBJECTS)
@@ -278,9 +281,10 @@ am__depfiles_remade = amiga/$(DEPDIR)/a-interface.Plo \
        amiga/$(DEPDIR)/affs.Plo amiga/$(DEPDIR)/amiga.Plo \
        amiga/$(DEPDIR)/apfs.Plo amiga/$(DEPDIR)/asfs.Plo \
        btrfs/$(DEPDIR)/btrfs.Plo ext2/$(DEPDIR)/interface.Plo \
-       fat/$(DEPDIR)/bootsector.Plo fat/$(DEPDIR)/fat.Plo \
-       hfs/$(DEPDIR)/hfs.Plo hfs/$(DEPDIR)/probe.Plo \
-       jfs/$(DEPDIR)/jfs.Plo linux_swap/$(DEPDIR)/linux_swap.Plo \
+       f2fs/$(DEPDIR)/f2fs.Plo fat/$(DEPDIR)/bootsector.Plo \
+       fat/$(DEPDIR)/fat.Plo hfs/$(DEPDIR)/hfs.Plo \
+       hfs/$(DEPDIR)/probe.Plo jfs/$(DEPDIR)/jfs.Plo \
+       linux_swap/$(DEPDIR)/linux_swap.Plo \
        nilfs2/$(DEPDIR)/nilfs2.Plo ntfs/$(DEPDIR)/ntfs.Plo \
        r/$(DEPDIR)/filesys.Plo r/fat/$(DEPDIR)/bootsector.Plo \
        r/fat/$(DEPDIR)/calc.Plo r/fat/$(DEPDIR)/clstdup.Plo \
@@ -365,6 +369,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -399,6 +404,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -409,6 +416,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -456,19 +464,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -482,6 +494,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -542,6 +556,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -590,9 +605,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -608,6 +626,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -691,11 +710,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -705,12 +726,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -744,10 +770,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -769,14 +795,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -795,7 +824,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -805,7 +833,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -828,6 +855,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -913,7 +941,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -926,6 +956,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -948,6 +979,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -956,15 +988,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -1003,6 +1034,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -1028,16 +1060,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -1086,6 +1130,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -1115,6 +1160,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1151,21 +1197,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1193,6 +1242,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1202,6 +1252,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1234,6 +1286,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1322,6 +1375,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1359,13 +1413,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1384,6 +1438,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
@@ -1460,7 +1515,7 @@ target_alias = @target_alias@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-partedincludedir = -I$(top_builddir)/include -I$(top_srcdir)/include
+partedincludedir = -I$(top_builddir)/include -I$(top_srcdir)/include -I$(top_srcdir)/lib
 AM_CFLAGS = $(WARN_CFLAGS)
 noinst_LTLIBRARIES = libfs.la
 libfs_la_LIBADD = $(UUID_LIBS)         \
@@ -1486,6 +1541,8 @@ libfs_la_SOURCES = \
   fat/count.h                  \
   fat/fat.c                    \
   fat/fat.h                    \
+  f2fs/f2fs.c                  \
+  f2fs/f2fs.h                  \
   hfs/hfs.c                    \
   hfs/hfs.h                    \
   hfs/probe.c                  \
@@ -1512,7 +1569,7 @@ EXTRA_DIST = hfs/DOC hfs/HISTORY hfs/TODO fsresize.sym
 # For details, see the "Updating library version information" section of
 # "info libtool".
 CURRENT = 0
-REVISION = 2
+REVISION = 3
 AGE = 0
 sym_file = $(srcdir)/fsresize.sym
 libparted_fs_resize_la_LDFLAGS = \
@@ -1680,6 +1737,13 @@ fat/$(DEPDIR)/$(am__dirstamp):
        @: > fat/$(DEPDIR)/$(am__dirstamp)
 fat/bootsector.lo: fat/$(am__dirstamp) fat/$(DEPDIR)/$(am__dirstamp)
 fat/fat.lo: fat/$(am__dirstamp) fat/$(DEPDIR)/$(am__dirstamp)
+f2fs/$(am__dirstamp):
+       @$(MKDIR_P) f2fs
+       @: > f2fs/$(am__dirstamp)
+f2fs/$(DEPDIR)/$(am__dirstamp):
+       @$(MKDIR_P) f2fs/$(DEPDIR)
+       @: > f2fs/$(DEPDIR)/$(am__dirstamp)
+f2fs/f2fs.lo: f2fs/$(am__dirstamp) f2fs/$(DEPDIR)/$(am__dirstamp)
 hfs/$(am__dirstamp):
        @$(MKDIR_P) hfs
        @: > hfs/$(am__dirstamp)
@@ -1809,6 +1873,8 @@ mostlyclean-compile:
        -rm -f btrfs/*.lo
        -rm -f ext2/*.$(OBJEXT)
        -rm -f ext2/*.lo
+       -rm -f f2fs/*.$(OBJEXT)
+       -rm -f f2fs/*.lo
        -rm -f fat/*.$(OBJEXT)
        -rm -f fat/*.lo
        -rm -f hfs/*.$(OBJEXT)
@@ -1846,6 +1912,7 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@amiga/$(DEPDIR)/asfs.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@btrfs/$(DEPDIR)/btrfs.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@ext2/$(DEPDIR)/interface.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@f2fs/$(DEPDIR)/f2fs.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@fat/$(DEPDIR)/bootsector.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@fat/$(DEPDIR)/fat.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@hfs/$(DEPDIR)/hfs.Plo@am__quote@ # am--include-marker
@@ -1918,6 +1985,7 @@ clean-libtool:
        -rm -rf amiga/.libs amiga/_libs
        -rm -rf btrfs/.libs btrfs/_libs
        -rm -rf ext2/.libs ext2/_libs
+       -rm -rf f2fs/.libs f2fs/_libs
        -rm -rf fat/.libs fat/_libs
        -rm -rf hfs/.libs hfs/_libs
        -rm -rf jfs/.libs jfs/_libs
@@ -2056,6 +2124,8 @@ distclean-generic:
        -rm -f btrfs/$(am__dirstamp)
        -rm -f ext2/$(DEPDIR)/$(am__dirstamp)
        -rm -f ext2/$(am__dirstamp)
+       -rm -f f2fs/$(DEPDIR)/$(am__dirstamp)
+       -rm -f f2fs/$(am__dirstamp)
        -rm -f fat/$(DEPDIR)/$(am__dirstamp)
        -rm -f fat/$(am__dirstamp)
        -rm -f hfs/$(DEPDIR)/$(am__dirstamp)
@@ -2099,6 +2169,7 @@ distclean: distclean-am
        -rm -f amiga/$(DEPDIR)/asfs.Plo
        -rm -f btrfs/$(DEPDIR)/btrfs.Plo
        -rm -f ext2/$(DEPDIR)/interface.Plo
+       -rm -f f2fs/$(DEPDIR)/f2fs.Plo
        -rm -f fat/$(DEPDIR)/bootsector.Plo
        -rm -f fat/$(DEPDIR)/fat.Plo
        -rm -f hfs/$(DEPDIR)/hfs.Plo
@@ -2184,6 +2255,7 @@ maintainer-clean: maintainer-clean-am
        -rm -f amiga/$(DEPDIR)/asfs.Plo
        -rm -f btrfs/$(DEPDIR)/btrfs.Plo
        -rm -f ext2/$(DEPDIR)/interface.Plo
+       -rm -f f2fs/$(DEPDIR)/f2fs.Plo
        -rm -f fat/$(DEPDIR)/bootsector.Plo
        -rm -f fat/$(DEPDIR)/fat.Plo
        -rm -f hfs/$(DEPDIR)/hfs.Plo
index a6b92f9d8d2202b33c1a1bf0300a72c901cf6298..8d6696d9d97a0e2c1a991046b85fea7b61b3a4d5 100644 (file)
@@ -1,7 +1,7 @@
 /*
     interface.c -- parted support amiga file systems
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 1fde17c1c2f0e814e91b4c6e957b15f2dc705065..3dbc435684a844073b46ea2fe1c456dca54fe751 100644 (file)
@@ -1,7 +1,7 @@
 /*
     affs.c -- parted support for affs file systems
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -52,20 +52,19 @@ _generic_affs_probe (PedGeometry* geom, uint32_t kind)
        uint32_t *block;
        PedSector root, len, pos;
        struct PartitionBlock * part;
-       int blocksize = 1, reserved = 2, prealloc = 0;
+       int blocksize = 1, reserved = 2;
 
        PED_ASSERT (geom != NULL);
        PED_ASSERT (geom->dev != NULL);
        if (geom->dev->sector_size != 512)
                return NULL;
-       /* Finds the blocksize, prealloc and reserved values of the partition block */
+       /* Finds the blocksize and reserved values of the partition block */
        if (!(part = ped_malloc (PED_SECTOR_SIZE_DEFAULT*blocksize))) {
                ped_exception_throw(PED_EXCEPTION_ERROR, PED_EXCEPTION_CANCEL,
                        _("%s : Failed to allocate partition block\n"), __func__);
                goto error_part;
        }
        if (amiga_find_part(geom, part) != NULL) {
-               prealloc = PED_BE32_TO_CPU (part->de_PreAlloc);
                reserved = PED_BE32_TO_CPU (part->de_Reserved);
                reserved = reserved == 0 ? 1 : reserved;
                blocksize = PED_BE32_TO_CPU (part->de_SizeBlock)
index 9e9505c8bfb23ee7391901aea2b66d241aeeb9f5..7af695054a15dc487c3ed79b9b33dd872fca8fce 100644 (file)
@@ -1,8 +1,8 @@
 
 /*
     affs.h -- parted suppoer for affs filesystems header files
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index be10dae7a25f42b799a2ce35d2e1d78bf8476f85..80538bad1b56f1277e0e1c22b1b10d423bcb78af 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted/fs_amiga - amiga file system support.
-    Copyright (C) 2000-2001, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2000-2001, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -217,6 +217,7 @@ _amiga_read_block (PedDevice *dev, struct AmigaBlock *blk, PedSector block, stru
                                                        return NULL;
                                        }
                                }
+                               /* FALLTHROUGH */
                        case PED_EXCEPTION_IGNORE :
                        case PED_EXCEPTION_UNHANDLED :
                        default :
index eb520ab9f9ab7878edfb0167b0f6844645806822..45d0034e4f40a85fd4bce15952f663ed61c97087 100644 (file)
@@ -1,7 +1,7 @@
 /*
     util.h -- amiga partition table headers.
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 775e77ea87a954a751ff8c3145a291466e1b4f2e..6249f6d031308db94be06cc5c47b03cdadad43d2 100644 (file)
@@ -1,7 +1,7 @@
 /*
     apfs.c -- parted support for apfs file systems
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 103bfbec17bcc859f72f3c01682f571ca1a8548e..b54a04de693e5680c6b750be28bc4093c9b8d132 100644 (file)
@@ -1,7 +1,7 @@
 /*
     apfs.h -- parted support for apfs file systems header files
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 118d204bac01270f69d3d162806be43d0ac2bb65..2ecd68ef3659d39e512581f829c3d1517895cea1 100644 (file)
@@ -1,7 +1,7 @@
 /*
     asfs.c -- parted asfs filesystem support
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 2ac8c2a621290e72a09f6cc18070a621c044ae8b..24c5d22241aad01208c040f7b697900045a9d1e9 100644 (file)
@@ -1,7 +1,7 @@
 /*
     asfs.h -- parted asfs filesystem support header files
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 881550849e19637bec5d1e6cac67907fdbe9b1e0..0c462dd28fa68e898604d05928e9e398d05e418a 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2013-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2013-2014, 2019-2021 Free Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index a44fd4eda223ca92eeb7d77bb250e61b6607ce3c..6e1545b74a67cd01eb27a1b2662d0abbd8b61566 100644 (file)
@@ -1,7 +1,7 @@
 /*
     ext2.h -- ext2 header
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index ac1b6a02a8e817307f94c3d00b25e73ac86a6802..fe2a6f79706f95e6e3a4f7e81ac62430548ca6aa 100644 (file)
@@ -15,7 +15,7 @@
 
 /*
  * EXT2_*_*() convienience macros added by Andrew Clausen <clausen@gnu.org>
- * Copyright (C) 2000, 2009-2014, 2019 Free Software Foundation, Inc.
+ * Copyright (C) 2000, 2009-2014, 2019-2021 Free Software Foundation, Inc.
  */
 
 #ifndef _EXT2_FS_H
@@ -173,7 +173,7 @@ struct ext2_inode
 
 #define i_size_high    i_dir_acl
 
-struct ext2_super_block
+struct __attribute__ ((packed)) ext2_super_block
 {
        uint32_t        s_inodes_count;         /* Inodes count */
        uint32_t        s_blocks_count;         /* Blocks count */
index a49568bd14fdc828521755c5e3f0fd201861eeee..1da9d33dce1652b8a4276ed336ce84ea0c306bbb 100644 (file)
@@ -1,6 +1,7 @@
 /*
     interface.c -- parted binding glue to libext2resize
-    Copyright (C) 1998-2000, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1998-2000, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -33,12 +34,13 @@ struct ext2_dev_handle* ext2_make_dev_handle_from_parted_geometry(PedGeometry* g
 static PedGeometry*
 _ext2_generic_probe (PedGeometry* geom, int expect_ext_ver)
 {
+       struct ext2_super_block *sb;
        const int sectors = (4096 + geom->dev->sector_size - 1) /
                             geom->dev->sector_size;
-       char *sb_v = alloca (sectors * geom->dev->sector_size);
-       if (!ped_geometry_read(geom, sb_v, 0, sectors))
+       uint8_t *buf = alloca (sectors * geom->dev->sector_size);
+       if (!ped_geometry_read(geom, buf, 0, sectors))
                return NULL;
-       struct ext2_super_block *sb = (struct ext2_super_block *)(sb_v + 1024);
+       sb = (struct ext2_super_block *)(buf+1024);
 
        if (EXT2_SUPER_MAGIC(*sb) == EXT2_SUPER_MAGIC_CONST) {
                PedSector block_size = (EXT2_MIN_BLOCK_SIZE << (EXT2_SUPER_LOG_BLOCK_SIZE(*sb))) / geom->dev->sector_size;
diff --git a/libparted/fs/f2fs/f2fs.c b/libparted/fs/f2fs/f2fs.c
new file mode 100644 (file)
index 0000000..e9254c3
--- /dev/null
@@ -0,0 +1,60 @@
+/*
+    libparted/fs/f2fs - Flash-Friendly File System
+    Copyright (C) 2020-2021 Free Software Foundation, Inc.
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#include <config.h>
+
+#include <parted/parted.h>
+#include <parted/endian.h>
+
+#include "f2fs.h"
+
+static PedGeometry*
+f2fs_probe (PedGeometry* geom)
+{
+        struct f2fs_super_block *sb = alloca(geom->dev->sector_size);
+
+        if (!ped_geometry_read (geom, sb, F2FS_SB_OFFSET, 1))
+                return NULL;
+
+        if (PED_LE32_TO_CPU(sb->magic) == F2FS_MAGIC)
+                return ped_geometry_new (geom->dev, geom->start, geom->length);
+
+        return NULL;
+}
+
+static PedFileSystemOps f2fs_ops = {
+        probe:          f2fs_probe,
+};
+
+static PedFileSystemType f2fs_type = {
+        next:   NULL,
+        ops:    &f2fs_ops,
+        name:   "f2fs",
+};
+
+void
+ped_file_system_f2fs_init ()
+{
+        ped_file_system_type_register (&f2fs_type);
+}
+
+void
+ped_file_system_f2fs_done ()
+{
+        ped_file_system_type_unregister (&f2fs_type);
+}
diff --git a/libparted/fs/f2fs/f2fs.h b/libparted/fs/f2fs/f2fs.h
new file mode 100644 (file)
index 0000000..1c7b963
--- /dev/null
@@ -0,0 +1,57 @@
+/*
+    libparted/fs/f2fs - Flash-Friendly File System
+    Copyright (C) 2020-2021 Free Software Foundation, Inc.
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+*/
+#ifndef _F2FS_H
+#define _F2FS_H
+
+#define F2FS_MAGIC             0xF2F52010
+#define F2FS_MAX_VOLUME_NAME   512
+#define F2FS_SB_OFFSET         0x02
+
+struct f2fs_super_block {
+    uint32_t magic;                    /* Magic Number */
+    uint16_t major_ver;                        /* Major Version */
+    uint16_t minor_ver;                        /* Minor Version */
+    uint32_t log_sectorsize;           /* log2 sector size in bytes */
+    uint32_t log_sectors_per_block;    /* log2 # of sectors per block */
+    uint32_t log_blocksize;            /* log2 block size in bytes */
+    uint32_t log_blocks_per_seg;       /* log2 # of blocks per segment */
+    uint32_t segs_per_sec;             /* # of segments per section */
+    uint32_t secs_per_zone;            /* # of sections per zone */
+    uint32_t checksum_offset;          /* checksum offset inside super block */
+    uint64_t block_count;              /* total # of user blocks */
+    uint32_t section_count;            /* total # of sections */
+    uint32_t segment_count;            /* total # of segments */
+    uint32_t segment_count_ckpt;       /* # of segments for checkpoint */
+    uint32_t segment_count_sit;                /* # of segments for SIT */
+    uint32_t segment_count_nat;                /* # of segments for NAT */
+    uint32_t segment_count_ssa;                /* # of segments for SSA */
+    uint32_t segment_count_main;       /* # of segments for main area */
+    uint32_t segment0_blkaddr;         /* start block address of segment 0 */
+    uint32_t cp_blkaddr;               /* start block address of checkpoint */
+    uint32_t sit_blkaddr;              /* start block address of SIT */
+    uint32_t nat_blkaddr;              /* start block address of NAT */
+    uint32_t ssa_blkaddr;              /* start block address of SSA */
+    uint32_t main_blkaddr;             /* start block address of main area */
+    uint32_t root_ino;                 /* root inode number */
+    uint32_t node_ino;                 /* node inode number */
+    uint32_t meta_ino;                 /* meta inode number */
+    uint8_t uuid[16];                  /* 128-bit uuid for volume */
+    uint16_t volume_name[F2FS_MAX_VOLUME_NAME];        /* volume name */
+} __attribute__((packed));
+
+#endif
index 0c3ae77d391140934efe20903e5f5a4369a17c16..808710668536e5d3b3fa45f7923f4dd065837608 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2000, 2002, 2004, 2007, 2009-2014, 2019 Free Software
-    Foundation, Inc.
+    Copyright (C) 1998-2000, 2002, 2004, 2007, 2009-2014, 2019-2021 Free
+    Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -86,7 +86,7 @@ fat_boot_sector_read (FatBootSector** bsp, const PedGeometry *geom)
 /*
     Don't trust the FAT12, FAT16 or FAT32 label string.
  */
-FatType
+FatType _GL_ATTRIBUTE_PURE
 fat_boot_sector_probe_type (const FatBootSector* bs, const PedGeometry* geom)
 {
        PedSector       logical_sector_size;
index 191c11d3f13ef19e0d424f4de4a4a0b8d6999696..fc4d695b3a30b365463c4295536bd144f3698f71 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index aa07bac515f62e98cae2cabaa2223ea84bfd0f23..dfa89144c7a8b86069a248a6d2f1133f73d7fb89 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted
-    Copyright (C) 1999-2000, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1999-2000, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 7ef7f31027c0cc3bfe42d09763eb399be5efe9de..52681e0523ca6883725fb37e7f50ce2ff74e1739 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2001, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1998-2001, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index bfb55886ec5e74b388bb681aa22335ea645b55f6..0a81ef05a159f133b98bb042d1826b07c507e27b 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2001, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2001, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 84d738d772e77722b0ed8a044d9d97693ea902e1..a6af540a66533ac51a2803b57caaf815ab5429d1 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2000, 2003-2005, 2007, 2009-2014, 2019 Free Software
+    Copyright (C) 2000, 2003-2005, 2007, 2009-2014, 2019-2021 Free Software
     Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
index 4fa2e95aad1085a3422f4aaf2f5669491abdb6ea..3d488206c29e1cf159004854f750d6312b29e88b 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2003-2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2003-2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -529,7 +529,7 @@ struct __attribute__ ((packed)) _HfsJBlockListHeader {
         uint32_t        bytes_used;
         uint32_t        checksum;
         uint32_t        pad;
-        HfsJBlockInfo   binfo[1];
+        HfsJBlockInfo   binfo[];
 };
 typedef struct _HfsJBlockListHeader HfsJBlockListHeader;
 
index 3b798863556015cd25dc96be45ab267c1b663ce1..fc00cef1456b1cd5ec4b111e4686678248fa7fed 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004-2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2004-2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 61c2f9f5858d75c3992b07b67132f0100ec109b6..a79ae737c79d5a103b835c6e32a7be4e4e84d110 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004-2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2004-2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index b15a963fc10e235b7f63fd08f3d3209a05eaa84f..e760aaf5dc1c5ff7d5bf1c52b1cc61996dfc9384 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2001, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2001, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index a4895637ed17c52f080d4e564c148a5ff28bc64e..e545830b4de7e1066a6b43ef1806aa78158d2cc3 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2000, 2002, 2007-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1999-2000, 2002, 2007-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 3ca48087a3d2f59b2b6f5b4ef57ded4df73339f6..7596a375d2fb0448dd0fa8c0883aad473057a8db 100644 (file)
@@ -3,7 +3,7 @@
  *
  *  Written by  Jiro SEKIBA <jir@unicus.jp>
  *
- *  Copyright (C) 2011-2014, 2019 Free Software Foundation, Inc.
+ *  Copyright (C) 2011-2014, 2019-2021 Free Software Foundation, Inc.
  *
  *  This program is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License as published by
@@ -34,8 +34,7 @@
 /* secondary superblock offset in 512byte blocks. */
 #define NILFS_SB2_OFFSET(devsize)      ((((devsize)>>3) - 1) << 3)
 
-struct nilfs2_super_block
-{
+struct __attribute__ ((packed)) nilfs2_super_block {
        uint32_t        s_rev_level;
        uint16_t        s_minor_rev_level;
        uint16_t        s_magic;
@@ -112,18 +111,18 @@ nilfs2_probe (PedGeometry* geom)
                return NULL;
        const int sectors = (4096 + geom->dev->sector_size - 1) /
                             geom->dev->sector_size;
-       char *buf = alloca (sectors * geom->dev->sector_size);
+       uint8_t *buf = alloca (sectors * geom->dev->sector_size);
        const int sectors2 = (1024 + geom->dev->sector_size -1 ) /
                              geom->dev->sector_size;
        void *buff2 = alloca (sectors2 * geom->dev->sector_size);
 
        if (ped_geometry_read(geom, buf, 0, sectors))
-               sb = (struct nilfs2_super_block *)(buf+1024);
+               sb = (struct nilfs2_super_block*)(buf + 1024);
        if (ped_geometry_read(geom, buff2, sb2off, sectors2))
-               sb2 = buff2;
+               sb2 = (struct nilfs2_super_block*)buff2;
 
        if ((!sb || !is_valid_nilfs_sb(sb)) &&
-           (!sb2 || !is_valid_nilfs_sb(sb2)) )
+           (!sb2 || !is_valid_nilfs_sb(sb2)))
                return NULL;
 
        /* reserve 4k bytes for secondary superblock */
index 3bfb28e4a98372f3643250905125ae6964c1c9af..3455bd79a0cfc6417346ab314898b0cdaa658244 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2000, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2000, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
 PedGeometry*
 ntfs_probe (PedGeometry* geom)
 {
-       char    *buf = alloca (geom->dev->sector_size);
+       uint8_t *buf = alloca(geom->dev->sector_size);
        PedGeometry *newg = NULL;
 
        if (!ped_geometry_read(geom, buf, 0, 1))
                return 0;
 
-       if (strncmp (NTFS_SIGNATURE, buf + 3, strlen (NTFS_SIGNATURE)) == 0)
-               newg = ped_geometry_new (geom->dev, geom->start,
-                                        PED_LE64_TO_CPU (*(uint64_t*)
-                                                         (buf + 0x28)));
+       if (strncmp (NTFS_SIGNATURE, ((char *)buf + 3), strlen (NTFS_SIGNATURE)) == 0) {
+               uint64_t length;
+               memcpy(&length, buf + 0x28, sizeof(uint64_t));
+               newg = ped_geometry_new (geom->dev, geom->start, length);
+       }
        return newg;
 }
 
index 46d5926496d1cc6da9f0a1b5f08d957e29543079..0df98800f4e021203952b3cfefdafabe75b5d91a 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2000, 2002, 2004, 2007, 2009-2014, 2019 Free Software
-    Foundation, Inc.
+    Copyright (C) 1998-2000, 2002, 2004, 2007, 2009-2014, 2019-2021 Free
+    Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -85,7 +85,7 @@ fat_boot_sector_read (FatBootSector** bsp, const PedGeometry *geom)
 /*
     Don't trust the FAT12, FAT16 or FAT32 label string.
  */
-FatType
+FatType _GL_ATTRIBUTE_PURE
 fat_boot_sector_probe_type (const FatBootSector* bs, const PedGeometry* geom)
 {
        PedSector       logical_sector_size;
@@ -271,8 +271,6 @@ fat_boot_sector_analyse (FatBootSector* bs, PedFileSystem* fs)
 int
 fat_boot_sector_set_boot_code (FatBootSector** bsp, const PedFileSystem* fs)
 {
-       FatSpecific*    fs_info = FAT_SPECIFIC (fs);
-
        PED_ASSERT (bsp != NULL);
        *bsp = ped_malloc (fs->geom->dev->sector_size);
        FatBootSector *bs = *bsp;
@@ -280,7 +278,8 @@ fat_boot_sector_set_boot_code (FatBootSector** bsp, const PedFileSystem* fs)
 
        memset (bs, 0, 512);
        memcpy (bs->boot_jump, FAT_BOOT_JUMP, 3);
-       memcpy (bs->u.fat32.boot_code, FAT_BOOT_CODE, FAT_BOOT_CODE_LENGTH);
+       PED_ASSERT (sizeof(FAT_BOOT_CODE) < sizeof(bs->u.fat32.boot_code));
+       strcpy (bs->u.fat32.boot_code, FAT_BOOT_CODE);
        return 1;
 }
 
index 6b0363f2ef479dc348abff8262d0278096a35278..e7e425789d40e9d31a69ca3f3733f76644696e29 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -57,8 +57,6 @@ typedef struct _FatInfoSector FatInfoSector;
                                        /* message: */                  \
                        FAT_BOOT_MESSAGE
 
-#define FAT_BOOT_CODE_LENGTH 128
-
 struct __attribute__ ((packed)) _FatBootSector {
         uint8_t                boot_jump[3];   /* 00: Boot strap short or near jump */
         uint8_t                system_id[8];   /* 03: system name */
index e5240071620d1c1a32a5491ab8f003bf21bda656..ed6adc342cb97d7db764330b1c80de9f8a457b6a 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted
-    Copyright (C) 1998-2000, 2002, 2007, 2009-2014, 2019 Free Software
+    Copyright (C) 1998-2000, 2002, 2007, 2009-2014, 2019-2021 Free Software
     Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
@@ -23,7 +23,7 @@
 #ifndef DISCOVER_ONLY
 
 /* returns the minimum size of clusters for a given file system type */
-PedSector
+PedSector _GL_ATTRIBUTE_CONST
 fat_min_cluster_size (FatType fat_type) {
        switch (fat_type) {
                case FAT_TYPE_FAT12: return 1;
@@ -33,7 +33,7 @@ fat_min_cluster_size (FatType fat_type) {
        return 0;
 }
 
-static PedSector
+static PedSector _GL_ATTRIBUTE_CONST
 _smallest_power2_over (PedSector ceiling)
 {
        PedSector       result = 1;
@@ -45,7 +45,7 @@ _smallest_power2_over (PedSector ceiling)
 }
 
 /* returns the minimum size of clusters for a given file system type */
-PedSector
+PedSector _GL_ATTRIBUTE_CONST
 fat_recommend_min_cluster_size (FatType fat_type, PedSector size) {
        switch (fat_type) {
                case FAT_TYPE_FAT12: return 1;
@@ -59,7 +59,7 @@ fat_recommend_min_cluster_size (FatType fat_type, PedSector size) {
 }
 
 /* returns the maxmimum size of clusters for a given file system type */
-PedSector
+PedSector _GL_ATTRIBUTE_CONST
 fat_max_cluster_size (FatType fat_type) {
        switch (fat_type) {
                case FAT_TYPE_FAT12: return 1;  /* dunno... who cares? */
@@ -70,7 +70,7 @@ fat_max_cluster_size (FatType fat_type) {
 }
 
 /* returns the minimum number of clusters for a given file system type */
-FatCluster
+FatCluster _GL_ATTRIBUTE_CONST
 fat_min_cluster_count (FatType fat_type) {
        switch (fat_type) {
                case FAT_TYPE_FAT12:
@@ -83,7 +83,7 @@ fat_min_cluster_count (FatType fat_type) {
 }
 
 /* returns the maximum number of clusters for a given file system type */
-FatCluster
+FatCluster _GL_ATTRIBUTE_CONST
 fat_max_cluster_count (FatType fat_type) {
        switch (fat_type) {
                case FAT_TYPE_FAT12: return 0xff0;
@@ -94,7 +94,7 @@ fat_max_cluster_count (FatType fat_type) {
 }
 
 /* what is this supposed to be?  What drugs are M$ on?  (Can I have some? :-) */
-PedSector
+PedSector _GL_ATTRIBUTE_CONST
 fat_min_reserved_sector_count (FatType fat_type)
 {
        return (fat_type == FAT_TYPE_FAT32) ? 32 : 1;
@@ -314,7 +314,7 @@ fat_calc_resize_sizes (
     friends, to allow room for this space.  If too much of this space is left
     over, everyone will complain, so we have to be greedy, and use it all up...
  */
-PedSector
+PedSector _GL_ATTRIBUTE_PURE
 fat_calc_align_sectors (const PedFileSystem* new_fs,
                        const PedFileSystem* old_fs)
 {
@@ -359,7 +359,7 @@ fat_calc_align_sectors (const PedFileSystem* new_fs,
        return align;
 }
 
-int
+int _GL_ATTRIBUTE_PURE
 fat_is_sector_in_clusters (const PedFileSystem* fs, PedSector sector)
 {
        FatSpecific*    fs_info = FAT_SPECIFIC (fs);
@@ -369,7 +369,7 @@ fat_is_sector_in_clusters (const PedFileSystem* fs, PedSector sector)
                           + fs_info->cluster_sectors * fs_info->cluster_count;
 }
 
-FatFragment
+FatFragment _GL_ATTRIBUTE_PURE
 fat_cluster_to_frag (const PedFileSystem* fs, FatCluster cluster)
 {
        FatSpecific*    fs_info = FAT_SPECIFIC (fs);
@@ -379,7 +379,7 @@ fat_cluster_to_frag (const PedFileSystem* fs, FatCluster cluster)
        return (cluster - 2) * fs_info->cluster_frags;
 }
 
-FatCluster
+FatCluster _GL_ATTRIBUTE_PURE
 fat_frag_to_cluster (const PedFileSystem* fs, FatFragment frag)
 {
        FatSpecific*    fs_info = FAT_SPECIFIC (fs);
@@ -389,7 +389,7 @@ fat_frag_to_cluster (const PedFileSystem* fs, FatFragment frag)
        return frag / fs_info->cluster_frags + 2;
 }
 
-PedSector
+PedSector _GL_ATTRIBUTE_PURE
 fat_frag_to_sector (const PedFileSystem* fs, FatFragment frag)
 {
        FatSpecific*    fs_info = FAT_SPECIFIC (fs);
@@ -399,7 +399,7 @@ fat_frag_to_sector (const PedFileSystem* fs, FatFragment frag)
        return frag * fs_info->frag_sectors + fs_info->cluster_offset;
 }
 
-FatFragment
+FatFragment _GL_ATTRIBUTE_PURE
 fat_sector_to_frag (const PedFileSystem* fs, PedSector sector)
 {
        FatSpecific*    fs_info = FAT_SPECIFIC (fs);
@@ -409,7 +409,7 @@ fat_sector_to_frag (const PedFileSystem* fs, PedSector sector)
        return (sector - fs_info->cluster_offset) / fs_info->frag_sectors;
 }
 
-PedSector
+PedSector _GL_ATTRIBUTE_PURE
 fat_cluster_to_sector (const PedFileSystem* fs, FatCluster cluster)
 {
        FatSpecific*    fs_info = FAT_SPECIFIC (fs);
@@ -420,7 +420,7 @@ fat_cluster_to_sector (const PedFileSystem* fs, FatCluster cluster)
                + fs_info->cluster_offset;
 }
 
-FatCluster
+FatCluster _GL_ATTRIBUTE_PURE
 fat_sector_to_cluster (const PedFileSystem* fs, PedSector sector)
 {
        FatSpecific*    fs_info = FAT_SPECIFIC (fs);
index 4c53193d93551f38eaac849a85e95ba158285650..2c0394f39f5608a67a5e6e4ac5aaa3eaef8c8280 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 7456f6080e46a8cf7488974ef9a62eeb54eaa92e..c22de4d5c351633ece6ec82a9367db49719a9ca6 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2001, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2001, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -126,7 +126,7 @@ fetch_fragments (FatOpContext* ctx)
 
 /* finds the first fragment that is not going to get overwritten (that needs to
    get read in) */
-static FatFragment
+static FatFragment _GL_ATTRIBUTE_PURE
 get_first_underlay (const FatOpContext* ctx, int first, int last)
 {
        int             old;
@@ -147,7 +147,7 @@ get_first_underlay (const FatOpContext* ctx, int first, int last)
 
 /* finds the last fragment that is not going to get overwritten (that needs to
    get read in) */
-static FatFragment
+static FatFragment _GL_ATTRIBUTE_PURE
 get_last_underlay (const FatOpContext* ctx, int first, int last)
 {
        int             old;
index 5b5f63c0e6e90bb83cecef2fd047810f48c619a3..add842079003d1a790bc880b1552cc878b10eb03 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted
-    Copyright (C) 1999, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1999, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 5c27d09585e6ae658e0c75a4e6c5e3a2ab46fe2c..5ca154c825437a64035ff0e28cf86d5ca2a718b4 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -124,7 +124,7 @@ fat_op_context_destroy (FatOpContext* ctx)
        free (ctx);
 }
 
-FatFragment
+FatFragment _GL_ATTRIBUTE_PURE
 fat_op_context_map_static_fragment (const FatOpContext* ctx, FatFragment frag)
 {
        FatSpecific*    new_fs_info = FAT_SPECIFIC (ctx->new_fs);
@@ -160,7 +160,7 @@ fat_op_context_map_static_cluster (const FatOpContext* ctx, FatCluster clst)
                return 0;
 }
 
-FatFragment
+FatFragment _GL_ATTRIBUTE_PURE
 fat_op_context_map_fragment (const FatOpContext* ctx, FatFragment frag)
 {
        return ctx->remap [frag];
index 8d0f6a5b3800f55b140557cf17525641836e15d2..ea6e62df17b113a3a0308933ac11c386f86e2961 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted
-    Copyright (C) 1999-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1999-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 250e80d7bcee8ab6e127d2d4189dd54b63ed9952..cdb3028c527d292378a716c53687b6af442b6fd2 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
 
 #ifndef DISCOVER_ONLY
 
-#if 0
-/* extremely ugly hack: stick everything that obviously isn't an unmovable file
- * in here.  Note: DAT is a bit dubious.  Unfortunately, it's used by the
- * registry, so it'll be all over the place :-(
- */
-static char*   movable_extensions[] = {
-       "",
-       "1ST",
-       "AVI",
-       "BAK", "BAT", "BMP",
-       "CFG", "COM", "CSS",
-       "DAT", "DLL", "DOC", "DRV",
-       "EXE",
-       "FAQ", "FLT", "FON",
-       "GID", "GIF",
-       "HLP", "HTT", "HTM",
-       "ICO", "INI",
-       "JPG",
-       "LNK", "LOG",
-       "KBD",
-       "ME", "MID", "MSG",
-       "OCX", "OLD",
-       "PIF", "PNG", "PRV",
-       "RTF",
-       "SCR", "SYS",
-       "TMP", "TTF", "TXT",
-       "URL",
-       "WAV",
-       "VBX", "VOC", "VXD",
-       NULL
-};
-
-static char*
-get_extension (char* file_name)
-{
-       char*           ext;
-
-       ext = strrchr (file_name, '.');
-       if (!ext)
-               return "";
-       if (strchr (ext, '\\'))
-               return "";
-       return ext + 1;
-}
-
-static int
-is_movable_system_file (char* file_name)
-{
-       char*           ext = get_extension (file_name);
-       int             i;
-
-       for (i = 0; movable_extensions [i]; i++) {
-               if (strcasecmp (ext, movable_extensions [i]) == 0)
-                       return 1;
-       }
-
-       return 0;
-}
-#endif /* 0 */
-
 /*
     prints out the sequence of clusters for a given file chain, beginning
     at start_cluster.
@@ -248,29 +188,6 @@ flag_traverse_dir (FatTraverseInfo* trav_info) {
                print_chain (fs, first_cluster);
 #endif
 
-#if 0
-               if (fat_dir_entry_is_system_file (this_entry)
-                   && !is_movable_system_file (file_name)) {
-                        PedExceptionOption ex_status;
-                       ex_status = ped_exception_throw (
-                               PED_EXCEPTION_WARNING,
-                               PED_EXCEPTION_IGNORE_CANCEL,
-                               _("The file %s is marked as a system file.  "
-                               "This means moving it could cause some "
-                               "programs to stop working."),
-                               file_name);
-
-                       switch (ex_status) {
-                               case PED_EXCEPTION_CANCEL:
-                                       return 0;
-
-                               case PED_EXCEPTION_UNHANDLED:
-                                       ped_exception_catch ();
-                               case PED_EXCEPTION_IGNORE:
-                       }
-               }
-#endif /* 0 */
-
                if (fat_dir_entry_is_directory (this_entry)) {
                        if (!flag_traverse_fat (fs, file_name, first_cluster,
                                                FAT_FLAG_DIRECTORY, size))
@@ -338,7 +255,7 @@ fat_collect_cluster_info (PedFileSystem* fs) {
        return 1;
 }
 
-FatClusterFlag
+FatClusterFlag _GL_ATTRIBUTE_PURE
 fat_get_cluster_flag (PedFileSystem* fs, FatCluster cluster)
 {
        FatSpecific*            fs_info = FAT_SPECIFIC (fs);
@@ -346,7 +263,7 @@ fat_get_cluster_flag (PedFileSystem* fs, FatCluster cluster)
        return fs_info->cluster_info [cluster].flag;
 }
 
-PedSector
+PedSector _GL_ATTRIBUTE_PURE
 fat_get_cluster_usage (PedFileSystem* fs, FatCluster cluster)
 {
        FatSpecific*            fs_info = FAT_SPECIFIC (fs);
index aa07bac515f62e98cae2cabaa2223ea84bfd0f23..dfa89144c7a8b86069a248a6d2f1133f73d7fb89 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted
-    Copyright (C) 1999-2000, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1999-2000, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index ad57d36a24a3a85d55b8f6bb15ca19d438cd4419..396494aca5c3fc2117552c41316f31eddf9c9e68 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2001, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1998-2001, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -613,68 +614,6 @@ fat_get_resize_constraint (const PedFileSystem* fs)
        return fat_get_copy_constraint (fs, fs->geom->dev);
 }
 
-/* FIXME: fat_calc_sizes() needs to say "too big" or "too small", or
- * something.  This is a really difficult (maths) problem to do
- * nicely...
- *     So, this algorithm works if dev->length / 2 is a valid fat_type
- * size.  (Which is how I got the magic numbers below)
- */
-#if 0
-/* returns: -1 too small, 0 ok, 1 too big */
-static int
-_test_create_size (PedSector length, FatType fat_type,
-                  PedSector cluster_sectors, PedSector cluster_count)
-{
-       PedSector       rootdir_sectors;
-       PedSector       _cluster_sectors;
-       FatCluster      _cluster_count;
-       PedSector       _fat_size;
-
-       rootdir_sectors = (fat_type == FAT_TYPE_FAT16) ? 16 : 0;
-
-       if (!fat_calc_sizes (length, 0, fat_type, rootdir_sectors,
-                            &_cluster_sectors, &_cluster_count, &_fat_size))
-               return -1; // XXX: doesn't work... can't see a better way!
-
-       if (_cluster_sectors < cluster_sectors)
-               return -1;
-       if (_cluster_sectors > cluster_sectors)
-               return 1;
-
-       if (_cluster_count < cluster_count)
-               return -1;
-       if (_cluster_count > cluster_count)
-               return 1;
-
-       return 0;
-}
-
-static PedSector
-_get_create_size (PedSector upper_bound, FatType fat_type,
-                 PedSector cluster_sectors, FatCluster cluster_count)
-{
-       PedSector       min_length = 0;
-       PedSector       max_length = upper_bound;
-       PedSector       length;
-
-       while (1) {
-               length = (min_length + max_length) / 2;
-               switch (_test_create_size (length, fat_type, cluster_sectors,
-                                          cluster_count)) {
-                       case -1: min_length = length; break;
-                       case 0: return length;
-                       case 1: max_length = length; break;
-               }
-               /* hack... won't always be able to get max cluster count
-                * with max cluster size, etc. */
-               if (max_length - min_length == 1)
-                       return min_length;
-       }
-
-       return 0;       /* shut gcc up */
-}
-#endif
-
 PedConstraint*
 fat_get_create_constraint_fat16 (const PedDevice* dev)
 {
@@ -685,19 +624,8 @@ fat_get_create_constraint_fat16 (const PedDevice* dev)
        if (!ped_geometry_init (&full_dev, dev, 0, dev->length - 1))
                return NULL;
 
-#if 0
-       min_size = _get_create_size (dev->length, FAT_TYPE_FAT16,
-                                    fat_min_cluster_size (FAT_TYPE_FAT16),
-                                    fat_min_cluster_count (FAT_TYPE_FAT16));
-       max_size = _get_create_size (dev->length, FAT_TYPE_FAT16,
-                                    fat_max_cluster_size (FAT_TYPE_FAT16),
-                                    fat_max_cluster_count (FAT_TYPE_FAT16));
-       if (!min_size)
-               return NULL;
-#else
        min_size = 65794;
        max_size = 2097153;
-#endif
 
        return ped_constraint_new (
                        ped_alignment_any, ped_alignment_any,
@@ -714,15 +642,7 @@ fat_get_create_constraint_fat32 (const PedDevice* dev)
        if (!ped_geometry_init (&full_dev, dev, 0, dev->length - 1))
                return NULL;
 
-#if 0
-       min_size = _get_create_size (dev->length, FAT_TYPE_FAT32,
-                                    fat_min_cluster_size (FAT_TYPE_FAT32),
-                                    fat_min_cluster_count (FAT_TYPE_FAT32));
-       if (!min_size)
-               return NULL;
-#else
        min_size = 525224;
-#endif
 
        return ped_constraint_new (
                        ped_alignment_any, ped_alignment_any,
@@ -730,97 +650,3 @@ fat_get_create_constraint_fat32 (const PedDevice* dev)
                        min_size, dev->length);
 }
 #endif /* !DISCOVER_ONLY */
-
-#if 0
-
-static PedFileSystemOps fat16_ops = {
-       probe:          fat_probe_fat16,
-#ifndef DISCOVER_ONLY
-       clobber:        fat_clobber,
-       open:           fat_open,
-       create:         fat_create_fat16,
-       close:          fat_close,
-       check:          fat_check,
-       resize:         fat_resize,
-       copy:           fat_copy,
-       get_create_constraint:  fat_get_create_constraint_fat16,
-       get_resize_constraint:  fat_get_resize_constraint,
-       get_copy_constraint:    fat_get_copy_constraint,
-#else /* !DISCOVER_ONLY */
-       clobber:        NULL,
-       open:           NULL,
-       create:         NULL,
-       close:          NULL,
-       check:          NULL,
-       resize:         NULL,
-       copy:           NULL,
-       get_create_constraint:  NULL,
-       get_resize_constraint:  NULL,
-       get_copy_constraint:    NULL,
-#endif /* !DISCOVER_ONLY */
-};
-
-static PedFileSystemOps fat32_ops = {
-       probe:          fat_probe_fat32,
-#ifndef DISCOVER_ONLY
-       clobber:        fat_clobber,
-       open:           fat_open,
-       create:         fat_create_fat32,
-       close:          fat_close,
-       check:          fat_check,
-       resize:         fat_resize,
-       copy:           fat_copy,
-       get_create_constraint:  fat_get_create_constraint_fat32,
-       get_resize_constraint:  fat_get_resize_constraint,
-       get_copy_constraint:    fat_get_copy_constraint,
-#else /* !DISCOVER_ONLY */
-       clobber:        NULL,
-       open:           NULL,
-       create:         NULL,
-       close:          NULL,
-       check:          NULL,
-       resize:         NULL,
-       copy:           NULL,
-       get_create_constraint:  NULL,
-       get_resize_constraint:  NULL,
-       get_copy_constraint:    NULL,
-#endif /* !DISCOVER_ONLY */
-};
-
-#define FAT_BLOCK_SIZES ((int[2]){512, 0})
-
-PedFileSystemType fat16_type = {
-       next:           NULL,
-       ops:            &fat16_ops,
-       name:           "fat16",
-        block_sizes:    FAT_BLOCK_SIZES
-};
-
-PedFileSystemType fat32_type = {
-       next:           NULL,
-       ops:            &fat32_ops,
-       name:           "fat32",
-        block_sizes:    FAT_BLOCK_SIZES
-};
-
-void
-ped_file_system_fat_init ()
-{
-       if (sizeof (FatBootSector) != 512) {
-               ped_exception_throw (PED_EXCEPTION_BUG, PED_EXCEPTION_CANCEL,
-                       _("GNU Parted was miscompiled: the FAT boot sector "
-                       "should be 512 bytes.  FAT support will be disabled."));
-       } else {
-               ped_file_system_type_register (&fat16_type);
-               ped_file_system_type_register (&fat32_type);
-       }
-}
-
-void
-ped_file_system_fat_done ()
-{
-       ped_file_system_type_unregister (&fat16_type);
-       ped_file_system_type_unregister (&fat32_type);
-}
-
-#endif
index efa16520e5eaa01aa8eb125d60f66e7dc59f44b3..0e36ae471b1250e0ebd75b52cdbe3bef0a6c428c 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2001, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2001, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 54d150e75901b63a5933d3df497ca6e3f5d7835d..af8dddfbb17d1871a2b142bc9163dc210469cb32 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 1302ce3f8c875b6ed5a38031f9aaa9cafb16bc8d..5b1f3b1c09e92863c58c78929991556217a074cb 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 71113d4133e36dceae6dffb46225b94caf8d065d..00f5c8ce2a7503531ed8412279330f0407ba0b6c 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2000, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1998-2000, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -446,23 +447,6 @@ fat_construct_new_fat (FatOpContext* ctx)
                fat_table_set (new_fs_info->fat, new_cluster, new_next_cluster);
        }
 
-#if 0
-#ifdef PED_VERBOSE
-       for (old_cluster=2; old_cluster < old_fs_info->cluster_count+2;
-            old_cluster++) {
-               if (fat_table_is_available (old_fs_info->fat, old_cluster))
-                       continue;
-
-               printf ("%d->%d\t(next: %d->%d)\n",
-                       old_cluster,
-                       ctx->remap [old_cluster],
-                       fat_table_get (old_fs_info->fat, old_cluster),
-                       fat_table_get (new_fs_info->fat,
-                                      ctx->remap [old_cluster]));
-       }
-#endif /* PED_VERBOSE */
-#endif
-
        if (old_fs_info->fat_type == FAT_TYPE_FAT32
            && new_fs_info->fat_type == FAT_TYPE_FAT32) {
                new_fs_info->root_cluster
index fe8e040312a08b276baead7d08632592d953bd25..e18a9a283bedda2e43b42119954d7f1b046651ad 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2000, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1998-2000, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -371,7 +372,7 @@ fat_table_is_bad (const FatTable* ft, FatCluster cluster)
 /*
     returns true if <cluster> represents an EOF marker
 */
-int
+int _GL_ATTRIBUTE_PURE
 fat_table_is_eof (const FatTable* ft, FatCluster cluster)
 {
        return _test_code_eof (ft, cluster);
@@ -462,7 +463,7 @@ fat_table_set_avail (FatTable* ft, FatCluster cluster)
 
 #endif /* !DISCOVER_ONLY */
 
-int
+int _GL_ATTRIBUTE_CONST
 fat_table_entry_size (FatType fat_type)
 {
        switch (fat_type) {
index 2527d9a8663ec08d1c11f5b599f1047ea1483083..6e9bc84428a5071e3e2dc57411560c63d953fbd8 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index fc8a795bd2f1d79204765553414fbe102068e9b3..bd4d45b718c2e886d9a74bdb11de9fa2a8c5028a 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2000, 2005, 2007-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1998-2000, 2005, 2007-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -31,7 +31,7 @@
 
 static char tmp_buffer [4096];
 
-int
+int _GL_ATTRIBUTE_PURE
 fat_traverse_entries_per_buffer (FatTraverseInfo* trav_info)
 {
        return trav_info->buffer_size / sizeof (FatDirEntry);
@@ -226,7 +226,7 @@ fat_traverse_next_dir_entry (FatTraverseInfo *trav_info)
        return trav_info->dir_entries + trav_info->current_entry;
 }
 
-FatCluster
+FatCluster _GL_ATTRIBUTE_PURE
 fat_dir_entry_get_first_cluster (FatDirEntry* dir_entry, PedFileSystem *fs)
 {
        FatSpecific*            fs_info = FAT_SPECIFIC (fs);
@@ -269,7 +269,7 @@ fat_dir_entry_set_first_cluster (FatDirEntry* dir_entry, PedFileSystem* fs,
        }
 }
 
-uint32_t
+uint32_t _GL_ATTRIBUTE_PURE
 fat_dir_entry_get_length (FatDirEntry* dir_entry)
 {
        return PED_LE32_TO_CPU (dir_entry->length);
@@ -284,7 +284,7 @@ fat_dir_entry_is_null_term (const FatDirEntry* dir_entry)
        return memcmp (&null_entry, dir_entry, sizeof (null_entry)) == 0;
 }
 
-int
+int _GL_ATTRIBUTE_PURE
 fat_dir_entry_is_active (FatDirEntry* dir_entry)
 {
        if ((unsigned char) dir_entry->name[0] == DELETED_FLAG) return 0;
@@ -293,7 +293,7 @@ fat_dir_entry_is_active (FatDirEntry* dir_entry)
        return 1;
 }
 
-int
+int _GL_ATTRIBUTE_PURE
 fat_dir_entry_is_file (FatDirEntry* dir_entry) {
        if (dir_entry->attributes == VFAT_ATTR) return 0;
        if (dir_entry->attributes & VOLUME_LABEL_ATTR) return 0;
@@ -302,7 +302,7 @@ fat_dir_entry_is_file (FatDirEntry* dir_entry) {
        return 1;
 }
 
-int
+int _GL_ATTRIBUTE_PURE
 fat_dir_entry_is_system_file (FatDirEntry* dir_entry)
 {
        if (!fat_dir_entry_is_file (dir_entry)) return 0;
@@ -310,7 +310,7 @@ fat_dir_entry_is_system_file (FatDirEntry* dir_entry)
                || (dir_entry->attributes & HIDDEN_ATTR);
 }
 
-int
+int _GL_ATTRIBUTE_PURE
 fat_dir_entry_is_directory (FatDirEntry* dir_entry)
 {
        if (dir_entry->attributes == VFAT_ATTR) return 0;
index f2fc2d8cc475e747b95252616d409754e85195a0..ef811d76af21b1df5b4febec2587d9ff996cdcc3 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted
-    Copyright (C) 1998-2000, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1998-2000, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index d57447c87220285a2a61a8f40c5cc958958e51d4..9b643935dde9f3bdba33e9d6087a5c5ab7053af6 100644 (file)
@@ -1,5 +1,6 @@
 /* libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2001, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1999-2001, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -213,8 +214,6 @@ error_close_dev:
  * file system occupies a given region described by \p geom.
  * After this operation ped_file_system_probe() won't detect any file system.
  *
- * \note ped_file_system_create() calls this before creating a new file system.
- *
  * \return \c 1 on success, \c 0 on failure
  */
 static int
index d0afa30ef69d421d5e22a9b1b9ff14ba04e669f1..51f3093744b891ec964888fbe8abf381e1568a34 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004-2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2004-2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -87,12 +87,14 @@ hfs_btree_search (HfsPrivateFile* b_tree_file, HfsPrivateGenericKey* key,
        HfsPrivateGenericKey*   record_key = NULL;
        unsigned int            node_number, record_number;
        int                     i;
+       uint16_t                record_pos;
 
        /* Read the header node */
        if (!hfs_file_read_sector(b_tree_file, node, 0))
                return 0;
-       header = ((HfsHeaderRecord*) (node + PED_BE16_TO_CPU(*((uint16_t *)
-                                               (node+(PED_SECTOR_SIZE_DEFAULT-2))))));
+       uint16_t offset;
+       memcpy(&offset, node+(PED_SECTOR_SIZE_DEFAULT-2), sizeof(uint16_t));
+       header = (HfsHeaderRecord*) (node + PED_BE16_TO_CPU(offset));
 
        /* Get the node number of the root */
        node_number = PED_BE32_TO_CPU(header->root_node);
@@ -107,13 +109,13 @@ hfs_btree_search (HfsPrivateFile* b_tree_file, HfsPrivateGenericKey* key,
        while (1) {
                record_number = PED_BE16_TO_CPU (desc->rec_nb);
                for (i = record_number; i; i--) {
-                       record_key = (HfsPrivateGenericKey*)
-                               (node + PED_BE16_TO_CPU(*((uint16_t *)
-                                           (node+(PED_SECTOR_SIZE_DEFAULT - 2*i)))));
+                       uint16_t value;
+                       memcpy(&value, node+(PED_SECTOR_SIZE_DEFAULT - (2*i)), sizeof(uint16_t));
+                       record_pos = PED_BE16_TO_CPU(value);
+                       record_key = (HfsPrivateGenericKey*) (node + record_pos);
                        /* check for obvious error in FS */
-                       if (((uint8_t*)record_key - node < HFS_FIRST_REC)
-                           || ((uint8_t*)record_key - node
-                               >= PED_SECTOR_SIZE_DEFAULT
+                       if ((record_pos< HFS_FIRST_REC)
+                           || (record_pos>= PED_SECTOR_SIZE_DEFAULT
                                   - 2 * (signed)(record_number+1))) {
                                ped_exception_throw (
                                        PED_EXCEPTION_ERROR,
@@ -129,8 +131,9 @@ hfs_btree_search (HfsPrivateFile* b_tree_file, HfsPrivateGenericKey* key,
                        unsigned int    skip;
 
                        skip = (1 + record_key->key_length + 1) & ~1;
-                       node_number = PED_BE32_TO_CPU (*((uint32_t *)
-                                       (((uint8_t *) record_key) + skip)));
+                       uint32_t value;
+                       memcpy(&value, node+record_pos+skip, sizeof(uint32_t));
+                       node_number = PED_BE32_TO_CPU(value);
                        if (!hfs_file_read_sector(b_tree_file, node,
                                                  node_number))
                                return 0;
@@ -146,7 +149,7 @@ hfs_btree_search (HfsPrivateFile* b_tree_file, HfsPrivateGenericKey* key,
        if (record_ref) {
                record_ref->node_size = 1;      /* in sectors */
                record_ref->node_number = node_number;
-               record_ref->record_pos = (uint8_t*)record_key - node;
+               record_ref->record_pos = record_pos;
                record_ref->record_number = i;
        }
 
@@ -239,7 +242,7 @@ errbb:      hfs_free_bad_blocks_list(priv_data->bad_blocks_xtent_list);
 }
 
 /* This function check if fblock is a bad block */
-int
+int _GL_ATTRIBUTE_PURE
 hfs_is_bad_block (const PedFileSystem *fs, unsigned int fblock)
 {
        HfsPrivateFSData*       priv_data = (HfsPrivateFSData*)
@@ -304,7 +307,7 @@ hfs_get_empty_end (const PedFileSystem *fs)
 
 /* return the block which should be used to pack data to have at
    least free fblock blocks at the end of the volume */
-unsigned int
+unsigned int _GL_ATTRIBUTE_PURE
 hfs_find_start_pack (const PedFileSystem *fs, unsigned int fblock)
 {
        HfsPrivateFSData*       priv_data = (HfsPrivateFSData*)
index b7ec4bcc5dd69e5693f14b80c404dff9c00df73c..b0cc3c20429544f2afed0fef1264d160119350b2 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2004, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 5453c25f087f348ebd3c132f5d4d70e364990c7a..55e88cdd2da8147772a10eae1ad7fc19ec0bea48 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004-2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2004-2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -80,6 +80,7 @@ hfsplus_btree_search (HfsPPrivateFile* b_tree_file, HfsPPrivateGenericKey* key,
        HfsPPrivateGenericKey*  record_key = NULL;
        unsigned int            node_number, record_number, size, bsize;
        int                     i;
+       uint16_t                record_pos;
 
        /* Read the header node */
        if (!hfsplus_file_read_sector(b_tree_file, node_1, 0))
@@ -93,7 +94,7 @@ hfsplus_btree_search (HfsPPrivateFile* b_tree_file, HfsPPrivateGenericKey* key,
 
        /* Get the size of a node in sectors and allocate buffer */
        size = (bsize = PED_BE16_TO_CPU (header->node_size)) / PED_SECTOR_SIZE_DEFAULT;
-       node = (uint8_t*) ped_malloc (bsize);
+       node = ped_malloc (bsize);
        if (!node)
                return 0;
        HfsPNodeDescriptor *desc = (HfsPNodeDescriptor*) node;
@@ -107,13 +108,13 @@ hfsplus_btree_search (HfsPPrivateFile* b_tree_file, HfsPPrivateGenericKey* key,
        while (1) {
                record_number = PED_BE16_TO_CPU (desc->rec_nb);
                for (i = record_number; i; i--) {
-                       record_key = (HfsPPrivateGenericKey*)
-                           (node + PED_BE16_TO_CPU(*((uint16_t *)
-                                       (node+(bsize - 2*i)))));
+                       uint16_t value;
+                       memcpy(&value, node+(bsize - (2*i)), sizeof(uint16_t));
+                       record_pos = PED_BE16_TO_CPU(value);
+                       record_key = (HfsPPrivateGenericKey*) (node + record_pos);
                        /* check for obvious error in FS */
-                       if (((uint8_t*)record_key - node < HFS_FIRST_REC)
-                           || ((uint8_t*)record_key - node
-                               >= (signed)bsize
+                       if ((record_pos < HFS_FIRST_REC)
+                           || (record_pos >= (signed)bsize
                                   - 2 * (signed)(record_number+1))) {
                                ped_exception_throw (
                                        PED_EXCEPTION_ERROR,
@@ -131,8 +132,9 @@ hfsplus_btree_search (HfsPPrivateFile* b_tree_file, HfsPPrivateGenericKey* key,
 
                        skip = ( 2 + PED_BE16_TO_CPU (record_key->key_length)
                                 + 1 ) & ~1;
-                       node_number = PED_BE32_TO_CPU (*((uint32_t *)
-                                       (((uint8_t *) record_key) + skip)));
+                       uint32_t value;
+                       memcpy(&value, node+record_pos+skip, sizeof(uint32_t));
+                       node_number = PED_BE32_TO_CPU(value);
                        if (!hfsplus_file_read(b_tree_file, node,
                                               (PedSector) node_number * size,
                                               size)) {
@@ -151,7 +153,7 @@ hfsplus_btree_search (HfsPPrivateFile* b_tree_file, HfsPPrivateGenericKey* key,
        if (record_ref) {
                record_ref->node_size = size;   /* in sectors */
                record_ref->node_number = node_number;
-               record_ref->record_pos = (uint8_t*)record_key - node;
+               record_ref->record_pos = record_pos;
                record_ref->record_number = i;
        }
 
@@ -247,7 +249,7 @@ errbbp: hfsplus_free_bad_blocks_list(priv_data->bad_blocks_xtent_list);
 }
 
 /* This function check if fblock is a bad block */
-int
+int _GL_ATTRIBUTE_PURE
 hfsplus_is_bad_block (const PedFileSystem *fs, unsigned int fblock)
 {
        HfsPPrivateFSData*      priv_data = (HfsPPrivateFSData*)
@@ -358,7 +360,7 @@ hfsplus_get_min_size (const PedFileSystem *fs)
 
 /* return the block which should be used to pack data to have
    at least free fblock blocks at the end of the volume */
-unsigned int
+unsigned int _GL_ATTRIBUTE_PURE
 hfsplus_find_start_pack (const PedFileSystem *fs, unsigned int fblock)
 {
        HfsPPrivateFSData*      priv_data = (HfsPPrivateFSData*)
index ae5982d1150dc50bddf51603afe7ec99d5aa736b..9e4e796ed94c8347cf8606b639f3880c0a06212b 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2004, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 5e5b071aa04dfe2f6b61f041357d6d322a0aa825..b2ba812dcf7944708fa75901c6c660e4e1188a8b 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004-2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2004-2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -173,7 +173,7 @@ hfsc_cache_add_extent(HfsCPrivateCache* cache, uint32_t start, uint32_t length,
        return ext;
 }
 
-HfsCPrivateExtent*
+HfsCPrivateExtent* _GL_ATTRIBUTE_PURE
 hfsc_cache_search_extent(HfsCPrivateCache* cache, uint32_t start)
 {
        HfsCPrivateExtent*      ret;
index 98f615583f4031dffe08884fe7a6c524233be305..141d096788eac43f5272642a2c3d29b8ee8e781e 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004-2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2004-2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index fa8f0ff32c1811b6497545a0b160795480a8920b..d6cdb89bad6f7c0230f5409a3424482d25fe4423 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004-2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2004-2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 12e1c6b0d1472b276da40d32f6aafbd420f7749c..a58377f62e9fb7af780dd3d28f28caab1eb46d3c 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2004, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 95c5643ba870d121b88537fa7bac46d7df35720d..e2426b3624e4159e96509182978af17213261e81 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004-2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2004-2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 685920d2332c949af611732383b6e74dad7874aa..5e5aa412aab1b91b93c4868cfb2ed8de6983a8e1 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2004, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 6be03903d61dc4e8ad320e10964856813d567f78..278710e5a96b0627cf4aeb37874953f25213072c 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2000, 2003-2005, 2007, 2009-2014, 2019 Free Software
+    Copyright (C) 2000, 2003-2005, 2007, 2009-2014, 2019-2021 Free Software
     Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
@@ -59,26 +59,6 @@ static PedFileSystemType hfsplus_type;
 
 /* ----- HFS ----- */
 
-/* This is a very unundoable operation */
-/* Maybe I shouldn't touch the alternate MDB ? */
-/* Anyway clobber is call before other fs creation */
-/* So this is a non-issue */
-static int
-hfs_clobber (PedGeometry* geom)
-{
-       uint8_t buf[PED_SECTOR_SIZE_DEFAULT];
-
-       memset (buf, 0, PED_SECTOR_SIZE_DEFAULT);
-
-       /* destroy boot blocks, mdb, alternate mdb ... */
-       return  (!!ped_geometry_write (geom, buf, 0, 1)) &
-               (!!ped_geometry_write (geom, buf, 1, 1)) &
-               (!!ped_geometry_write (geom, buf, 2, 1)) &
-               (!!ped_geometry_write (geom, buf, geom->length - 2, 1)) &
-               (!!ped_geometry_write (geom, buf, geom->length - 1, 1)) &
-               (!!ped_geometry_sync  (geom));
-}
-
 PedFileSystem *
 hfs_open (PedGeometry* geom)
 {
@@ -339,42 +319,6 @@ hfs_resize (PedFileSystem* fs, PedGeometry* geom, PedTimer* timer)
 #include "reloc_plus.h"
 #include "journal.h"
 
-static int
-hfsplus_clobber (PedGeometry* geom)
-{
-       unsigned int i = 1;
-       uint8_t                         buf[PED_SECTOR_SIZE_DEFAULT];
-       HfsMasterDirectoryBlock         *mdb;
-
-       mdb = (HfsMasterDirectoryBlock *) buf;
-
-       if (!ped_geometry_read (geom, buf, 2, 1))
-               return 0;
-
-       if (PED_BE16_TO_CPU (mdb->signature) == HFS_SIGNATURE) {
-               /* embedded hfs+ */
-               PedGeometry     *embedded;
-
-               i = PED_BE32_TO_CPU(mdb->block_size) / PED_SECTOR_SIZE_DEFAULT;
-               embedded = ped_geometry_new (
-                   geom->dev,
-                   (PedSector) geom->start
-                    + PED_BE16_TO_CPU (mdb->start_block)
-                    + (PedSector) PED_BE16_TO_CPU (
-                       mdb->old_new.embedded.location.start_block ) * i,
-                   (PedSector) PED_BE16_TO_CPU (
-                       mdb->old_new.embedded.location.block_count ) * i );
-               if (!embedded) i = 0;
-               else {
-                       i = hfs_clobber (embedded);
-                       ped_geometry_destroy (embedded);
-               }
-       }
-
-       /* non-embedded or envelop destroy as hfs */
-       return ( hfs_clobber (geom) && i );
-}
-
 int
 hfsplus_close (PedFileSystem *fs)
 {
@@ -887,12 +831,11 @@ hfsplus_wrapper_update (PedFileSystem* fs)
                        ref.record_number = 1;
                }
 
-               ref.record_pos =
-                       PED_BE16_TO_CPU (*((uint16_t *)
-                               (node + (PED_SECTOR_SIZE_DEFAULT
-                                        - 2*ref.record_number))));
+               uint16_t value;
+               memcpy(&value, node+PED_SECTOR_SIZE_DEFAULT - (2*ref.record_number), sizeof(uint16_t));
+               ref.record_pos = PED_BE16_TO_CPU(value);
                ret_key = (HfsExtentKey*) (node + ref.record_pos);
-               ret_data = (HfsExtDescriptor*) ( node + ref.record_pos
+               ret_data = (HfsExtDescriptor*) (node + ref.record_pos
                                                 + sizeof (HfsExtentKey) );
        }
 
@@ -1221,137 +1164,3 @@ hfsplus_extract (PedFileSystem* fs, PedTimer* timer)
 #endif /* HFS_EXTRACT_FS */
 
 #endif /* !DISCOVER_ONLY */
-
-#if 0
-static PedFileSystemOps hfs_ops = {
-       probe:          hfs_probe,
-#ifndef DISCOVER_ONLY
-       clobber:        hfs_clobber,
-       open:           hfs_open,
-       create:         NULL,
-       close:          hfs_close,
-#ifndef HFS_EXTRACT_FS
-       check:          NULL,
-#else
-       check:          hfs_extract,
-#endif
-       copy:           NULL,
-       resize:         hfs_resize,
-       get_create_constraint:  NULL,
-       get_resize_constraint:  hfs_get_resize_constraint,
-       get_copy_constraint:    NULL,
-#else /* DISCOVER_ONLY */
-       clobber:        NULL,
-       open:           NULL,
-       create:         NULL,
-       close:          NULL,
-       check:          NULL,
-       copy:           NULL,
-       resize:         NULL,
-       get_create_constraint:  NULL,
-       get_resize_constraint:  NULL,
-       get_copy_constraint:    NULL,
-#endif /* DISCOVER_ONLY */
-};
-
-static PedFileSystemOps hfsplus_ops = {
-       probe:          hfsplus_probe,
-#ifndef DISCOVER_ONLY
-       clobber:        hfsplus_clobber,
-       open:           hfsplus_open,
-       create:         NULL,
-       close:          hfsplus_close,
-#ifndef HFS_EXTRACT_FS
-       check:          NULL,
-#else
-       check:          hfsplus_extract,
-#endif
-       copy:           NULL,
-       resize:         hfsplus_resize,
-       get_create_constraint:  NULL,
-       get_resize_constraint:  hfsplus_get_resize_constraint,
-       get_copy_constraint:    NULL,
-#else /* DISCOVER_ONLY */
-       clobber:        NULL,
-       open:           NULL,
-       create:         NULL,
-       close:          NULL,
-       check:          NULL,
-       copy:           NULL,
-       resize:         NULL,
-       get_create_constraint:  NULL,
-       get_resize_constraint:  NULL,
-       get_copy_constraint:    NULL,
-#endif /* DISCOVER_ONLY */
-};
-
-static PedFileSystemOps hfsx_ops = {
-       probe:          hfsx_probe,
-#ifndef DISCOVER_ONLY
-       clobber:        hfs_clobber, /* NOT hfsplus_clobber !
-                                       HFSX can't be embedded */
-       open:           hfsplus_open,
-       create:         NULL,
-       close:          hfsplus_close,
-#ifndef HFS_EXTRACT_FS
-       check:          NULL,
-#else
-       check:          hfsplus_extract,
-#endif
-       copy:           NULL,
-       resize:         hfsplus_resize,
-       get_create_constraint:  NULL,
-       get_resize_constraint:  hfsplus_get_resize_constraint,
-       get_copy_constraint:    NULL,
-#else /* DISCOVER_ONLY */
-       clobber:        NULL,
-       open:           NULL,
-       create:         NULL,
-       close:          NULL,
-       check:          NULL,
-       copy:           NULL,
-       resize:         NULL,
-       get_create_constraint:  NULL,
-       get_resize_constraint:  NULL,
-       get_copy_constraint:    NULL,
-#endif /* DISCOVER_ONLY */
-};
-
-
-static PedFileSystemType hfs_type = {
-       next:   NULL,
-       ops:    &hfs_ops,
-       name:   "hfs",
-       block_sizes: HFS_BLOCK_SIZES
-};
-
-static PedFileSystemType hfsplus_type = {
-       next:   NULL,
-       ops:    &hfsplus_ops,
-       name:   "hfs+",
-       block_sizes: HFSP_BLOCK_SIZES
-};
-
-static PedFileSystemType hfsx_type = {
-       next:   NULL,
-       ops:    &hfsx_ops,
-       name:   "hfsx",
-       block_sizes: HFSX_BLOCK_SIZES
-};
-
-void
-ped_file_system_hfs_init ()
-{
-       ped_file_system_type_register (&hfs_type);
-       ped_file_system_type_register (&hfsplus_type);
-       ped_file_system_type_register (&hfsx_type);
-}
-
-void
-ped_file_system_hfs_done ()
-{
-       ped_file_system_type_unregister (&hfs_type);
-       ped_file_system_type_unregister (&hfsplus_type);
-       ped_file_system_type_unregister (&hfsx_type);
-}
-#endif
index 4fa2e95aad1085a3422f4aaf2f5669491abdb6ea..3d488206c29e1cf159004854f750d6312b29e88b 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2003-2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2003-2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -529,7 +529,7 @@ struct __attribute__ ((packed)) _HfsJBlockListHeader {
         uint32_t        bytes_used;
         uint32_t        checksum;
         uint32_t        pad;
-        HfsJBlockInfo   binfo[1];
+        HfsJBlockInfo   binfo[];
 };
 typedef struct _HfsJBlockListHeader HfsJBlockListHeader;
 
index 157e6d55ff2d97b7882db0c269992795592b57fd..862d3d3cf6f9d4b94b38990019ce8f317ac7c58a 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004-2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2004-2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 2dffa3ab12fee158d8b2a9b2774b15a3a957b5ee..ea33d795a46decbeab059e82e442f03e18b52c63 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2004, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index c9546fa2f11861f784a74edabef4131b84262deb..b7488ed20fcf3ca434be8bbea4415ba43bd87867 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004-2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2004-2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index ef223720c0ab76326200d3aff948b02334c49156..8753e64f43847f714f640f35b0d430186e560e29 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004-2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2004-2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 0b8ddc144289aea1e8e945d5fea95ae64b894eae..96cf6e4086a8ae989e547e5858cd1d54deb746ab 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004-2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2004-2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -224,6 +224,7 @@ hfs_do_move (PedFileSystem* fs, unsigned int *ptr_src,
                                priv_data->catalog_file
                                ->cache[ref->ref_index].start_block =
                                PED_CPU_TO_BE16(new_start);
+                       /* FALLTHROUGH */
                    case CR_BTREE_EXT_0 :
                        file = priv_data->extent_file;
                        goto CR_BTREE;
@@ -372,6 +373,7 @@ hfs_cache_from_catalog(HfsCPrivateCache* cache, PedFileSystem* fs,
        HfsExtDescriptor*       extent;
        unsigned int            leaf_node, record_number;
        unsigned int            i, j;
+       uint16_t                catalog_pos;
 
        if (!priv_data->catalog_file->sect_nb) {
                ped_exception_throw (
@@ -384,8 +386,9 @@ hfs_cache_from_catalog(HfsCPrivateCache* cache, PedFileSystem* fs,
 
        if (!hfs_file_read_sector (priv_data->catalog_file, node, 0))
                return 0;
-       header = (HfsHeaderRecord*)(node +  PED_BE16_TO_CPU(*((uint16_t*)
-                                               (node+(PED_SECTOR_SIZE_DEFAULT-2)))));
+       uint16_t offset;
+       memcpy(&offset, node+(PED_SECTOR_SIZE_DEFAULT-2), sizeof(uint16_t));
+       header = (HfsHeaderRecord*) (node + PED_BE16_TO_CPU(offset));
 
        for (leaf_node = PED_BE32_TO_CPU (header->first_leaf_node);
             leaf_node;
@@ -396,14 +399,15 @@ hfs_cache_from_catalog(HfsCPrivateCache* cache, PedFileSystem* fs,
                record_number = PED_BE16_TO_CPU (desc->rec_nb);
                for (i = 1; i <= record_number; ++i) {
                       /* undocumented alignement */
+                       uint16_t value;
+                       memcpy(&value, node+(PED_SECTOR_SIZE_DEFAULT - (2*i)), sizeof(uint16_t));
+                       catalog_pos = PED_BE16_TO_CPU(value);
+                       catalog_key = (HfsCatalogKey*) (node + catalog_pos);
                        unsigned int skip;
-                       catalog_key = (HfsCatalogKey*) (node + PED_BE16_TO_CPU(
-                               *((uint16_t*)(node+(PED_SECTOR_SIZE_DEFAULT - 2*i)))));
                        skip = (1 + catalog_key->key_length + 1) & ~1;
-                       catalog_data = (HfsCatalog*)( ((uint8_t*)catalog_key)
-                                                       + skip );
+                       catalog_data = (HfsCatalog*)(node+catalog_pos+skip);
                        /* check for obvious error in FS */
-                       if (((uint8_t*)catalog_key - node < HFS_FIRST_REC)
+                       if ((catalog_pos < HFS_FIRST_REC)
                            || ((uint8_t*)catalog_data - node
                                >= PED_SECTOR_SIZE_DEFAULT
                                   - 2 * (signed)(record_number+1))) {
@@ -466,6 +470,7 @@ hfs_cache_from_extent(HfsCPrivateCache* cache, PedFileSystem* fs,
        HfsExtDescriptor*       extent;
        unsigned int            leaf_node, record_number;
        unsigned int            i, j;
+       uint16_t                extent_pos;
 
        if (!priv_data->extent_file->sect_nb) {
                ped_exception_throw (
@@ -478,8 +483,9 @@ hfs_cache_from_extent(HfsCPrivateCache* cache, PedFileSystem* fs,
 
        if (!hfs_file_read_sector (priv_data->extent_file, node, 0))
                return 0;
-       header = ((HfsHeaderRecord*) (node + PED_BE16_TO_CPU(*((uint16_t *)
-                                               (node+(PED_SECTOR_SIZE_DEFAULT-2))))));
+       uint16_t offset;
+       memcpy(&offset, node+(PED_SECTOR_SIZE_DEFAULT-2), sizeof(uint16_t));
+       header = (HfsHeaderRecord*) (node + PED_BE16_TO_CPU(offset));
 
        for (leaf_node = PED_BE32_TO_CPU (header->first_leaf_node);
             leaf_node;
@@ -490,14 +496,14 @@ hfs_cache_from_extent(HfsCPrivateCache* cache, PedFileSystem* fs,
                record_number = PED_BE16_TO_CPU (desc->rec_nb);
                for (i = 1; i <= record_number; i++) {
                        uint8_t where;
-                       extent_key = (HfsExtentKey*)
-                                       (node + PED_BE16_TO_CPU(*((uint16_t *)
-                                             (node+(PED_SECTOR_SIZE_DEFAULT - 2*i)))));
+                       uint16_t value;
+                       memcpy(&value, node+(PED_SECTOR_SIZE_DEFAULT - (2*i)), sizeof(uint16_t));
+                       extent_pos = PED_BE16_TO_CPU(value);
+                       extent_key = (HfsExtentKey*)(node + extent_pos);
                        /* size is cst */
-                       extent = (HfsExtDescriptor*)(((uint8_t*)extent_key)
-                                                      + sizeof (HfsExtentKey));
+                       extent = (HfsExtDescriptor*)(node+extent_pos+sizeof(HfsExtentKey));
                        /* check for obvious error in FS */
-                       if (((uint8_t*)extent_key - node < HFS_FIRST_REC)
+                       if ((extent_pos < HFS_FIRST_REC)
                            || ((uint8_t*)extent - node
                                >= PED_SECTOR_SIZE_DEFAULT
                                   - 2 * (signed)(record_number+1))) {
index fc14b28a47052f732ac47175ae1e9345ff50bad3..0c9f8bfb05694d199e558e44ec7ea153af13dd81 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2004, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index cebadbed614cf0d8c281c257e15c7e061ca8df7c..f0654068dfe4947a9e27107e1e42e095e03d498a 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004-2005, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2004-2005, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -486,6 +486,7 @@ hfsplus_cache_from_catalog(HfsCPrivateCache* cache, PedFileSystem* fs,
        unsigned int            i, j, size, bsize;
        uint32_t                jib = priv_data->jib_start_block,
                                jl  = priv_data->jl_start_block;
+       uint16_t                catalog_pos;
 
        if (!priv_data->catalog_file->sect_nb) {
                ped_exception_throw (
@@ -520,15 +521,16 @@ hfsplus_cache_from_catalog(HfsCPrivateCache* cache, PedFileSystem* fs,
                        unsigned int    skip;
                        uint8_t         where;
 
-                       catalog_key = (HfsPCatalogKey*)
-                           ( node + PED_BE16_TO_CPU (*((uint16_t *)
-                                       (node+(bsize - 2*i)))) );
+                       uint16_t value;
+                       memcpy(&value, node+(bsize - (2*i)), sizeof(uint16_t));
+                       catalog_pos = PED_BE16_TO_CPU(value);
+                       catalog_key = (HfsPCatalogKey*)(node + catalog_pos);
                        skip = ( 2 + PED_BE16_TO_CPU (catalog_key->key_length)
                                 + 1) & ~1;
                        catalog_data = (HfsPCatalog*)
                                            (((uint8_t*)catalog_key) + skip);
                        /* check for obvious error in FS */
-                       if (((uint8_t*)catalog_key - node < HFS_FIRST_REC)
+                       if ((catalog_pos < HFS_FIRST_REC)
                            || ((uint8_t*)catalog_data - node
                                >= (signed) bsize
                                   - 2 * (signed)(record_number+1))) {
@@ -609,6 +611,7 @@ hfsplus_cache_from_extent(HfsCPrivateCache* cache, PedFileSystem* fs,
        HfsPExtDescriptor*      extent;
        unsigned int            leaf_node, record_number;
        unsigned int            i, j, size, bsize;
+       uint16_t                extent_pos;
 
        if (!priv_data->extents_file->sect_nb) {
                ped_exception_throw (
@@ -640,13 +643,14 @@ hfsplus_cache_from_extent(HfsCPrivateCache* cache, PedFileSystem* fs,
                record_number = PED_BE16_TO_CPU (desc->rec_nb);
                for (i = 1; i <= record_number; i++) {
                        uint8_t where;
-                       extent_key = (HfsPExtentKey*)
-                           (node + PED_BE16_TO_CPU(*((uint16_t *)
-                                           (node+(bsize - 2*i)))));
+                       uint16_t value;
+                       memcpy(&value, node+(bsize - (2*i)), sizeof(uint16_t));
+                       extent_pos = PED_BE16_TO_CPU(value);
+                       extent_key = (HfsPExtentKey*)(node + extent_pos);
                        extent = (HfsPExtDescriptor*)
                            (((uint8_t*)extent_key) + sizeof (HfsPExtentKey));
                        /* check for obvious error in FS */
-                       if (((uint8_t*)extent_key - node < HFS_FIRST_REC)
+                       if ((extent_pos < HFS_FIRST_REC)
                            || ((uint8_t*)extent - node
                                >= (signed)bsize
                                   - 2 * (signed)(record_number+1))) {
@@ -724,6 +728,7 @@ hfsplus_cache_from_attributes(HfsCPrivateCache* cache, PedFileSystem* fs,
        HfsPExtDescriptor*      extent;
        unsigned int            leaf_node, record_number;
        unsigned int            i, j, size, bsize;
+       uint16_t                generic_pos;
 
        /* attributes file is facultative */
        if (!priv_data->attributes_file->sect_nb)
@@ -751,15 +756,15 @@ hfsplus_cache_from_attributes(HfsCPrivateCache* cache, PedFileSystem* fs,
                record_number = PED_BE16_TO_CPU (desc->rec_nb);
                for (i = 1; i <= record_number; i++) {
                        unsigned int    skip;
-                       generic_key = (HfsPPrivateGenericKey*)
-                               (node + PED_BE16_TO_CPU(*((uint16_t *)
-                                           (node+(bsize - 2*i)))));
+                       uint16_t value;
+                       memcpy(&value, node+(bsize - (2*i)), sizeof(uint16_t));
+                       generic_pos = PED_BE16_TO_CPU(value);
+                       generic_key = (HfsPPrivateGenericKey*)(node + generic_pos);
                        skip = ( 2 + PED_BE16_TO_CPU (generic_key->key_length)
                                 + 1 ) & ~1;
-                       fork_ext_data = (HfsPForkDataAttr*)
-                                           (((uint8_t*)generic_key) + skip);
+                       fork_ext_data = (HfsPForkDataAttr*)(node+generic_pos+skip);
                        /* check for obvious error in FS */
-                       if (((uint8_t*)generic_key - node < HFS_FIRST_REC)
+                       if ((generic_pos < HFS_FIRST_REC)
                            || ((uint8_t*)fork_ext_data - node
                                >= (signed) bsize
                                   - 2 * (signed)(record_number+1))) {
index ff40f8abfb31a000f14d3c34f19708563beed47e..9e6a23bc0444222ecb3c195c0a55513117beeae3 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2004, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2004, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 878f30fafa707e519dcae398ebdf00160d522133..c2527d77b9f2ad38965f577fcbb2a3e587040178 100644 (file)
@@ -1,7 +1,7 @@
 /*
     reiserfs.c -- ReiserFS detection
-    Copyright (C) 2001-2002, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2001-2002, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 0ace6332d9c4260cd23766aed578f59a0744f8ae..a1970663a6b9fc2d14cd4ad47e5d49891a960130 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2000, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2000, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index fd0d21ae1d43eec9ccf65046d48985b84bba414b..cb25abcfd8da2aa3726281c0386708497222ba68 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2018-2019 Free Software Foundation, Inc.
+    Copyright (C) 2018-2021 Free Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 27cb036b6c606d79caff6debe3ccd8bf2e6248b1..d4ba5f0cce274886d7cd34bc9e6839549a6f2d53 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2001, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2001, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
 #define UFS_MAGIC_FEA  0x00195612
 #define UFS_MAGIC_4GB  0x05231994
 
-struct ufs_csum {
+struct __attribute__ ((packed)) ufs_csum {
        uint32_t        cs_ndir;        /* number of directories */
        uint32_t        cs_nbfree;      /* number of free blocks */
        uint32_t        cs_nifree;      /* number of free inodes */
        uint32_t        cs_nffree;      /* number of free frags */
 };
 
-struct ufs_super_block {
+struct __attribute__ ((packed)) ufs_super_block {
        uint32_t        fs_link;        /* UNUSED */
        uint32_t        fs_rlink;       /* UNUSED */
        uint32_t        fs_sblkno;      /* addr of super-block in filesys */
@@ -176,7 +177,7 @@ ufs_probe_sun (PedGeometry* geom)
 {
        const int       sectors = ((3 * 512) + geom->dev->sector_size - 1) /
                                   geom->dev->sector_size;
-       char *          buf = alloca (sectors * geom->dev->sector_size);
+       uint8_t*        buf = alloca (sectors * geom->dev->sector_size);
        struct ufs_super_block *sb;
 
        if (geom->length < 5)
@@ -212,7 +213,7 @@ ufs_probe_hp (PedGeometry* geom)
                return 0;
        const int       sectors = ((3 * 512) + geom->dev->sector_size - 1) /
                                   geom->dev->sector_size;
-       char *          buf = alloca (sectors * geom->dev->sector_size);
+       uint8_t*        buf = alloca (sectors * geom->dev->sector_size);
 
        if (!ped_geometry_read (geom, buf, 16 * 512 / geom->dev->sector_size, sectors))
                return 0;
index 79cef402df610712830eae72046cdd2eea294534..aa2936c38b7eb3d47f941eb453f2faf3780e96df 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2001, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2001, 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index a6bb9e3911215c5760c7a94990b7bd6a1ac556b9..c2d880b0e4a0603bd4c756998ab7309e513a2847 100644 (file)
@@ -1,5 +1,5 @@
 # This file is part of GNU Parted
-# Copyright (C) 1999-2001, 2007-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 1999-2001, 2007-2014, 2019-2021 Free Software Foundation, Inc.
 #
 # This file may be modified and/or distributed without restriction.
 
index 73af106f48b0ef2675d10f7c95645e8bd428b136..36d9d00a2cd3430f58c72c398bb0104b76ca6c13 100644 (file)
@@ -15,7 +15,7 @@
 @SET_MAKE@
 
 # This file is part of GNU Parted
-# Copyright (C) 1999-2001, 2007-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 1999-2001, 2007-2014, 2019-2021 Free Software Foundation, Inc.
 #
 # This file may be modified and/or distributed without restriction.
 
@@ -100,9 +100,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -114,15 +114,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -132,25 +130,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -162,9 +161,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -179,6 +179,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -187,14 +188,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -310,6 +312,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -344,6 +347,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -354,6 +359,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -401,19 +407,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -427,6 +437,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -487,6 +499,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -535,9 +548,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -553,6 +569,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -636,11 +653,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -650,12 +669,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -689,10 +713,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -714,14 +738,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -740,7 +767,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -750,7 +776,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -773,6 +798,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -858,7 +884,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -871,6 +899,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -893,6 +922,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -901,15 +931,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -948,6 +977,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -973,16 +1003,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -1031,6 +1073,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -1060,6 +1103,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1096,21 +1140,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1138,6 +1185,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1147,6 +1195,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1179,6 +1229,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1267,6 +1318,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1304,13 +1356,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1329,6 +1381,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
index d6f79ecbebcc2add842d5726e3c54dafa7a8c853..76c99908de26cc2d1221870c5b358866b91b1a07 100644 (file)
@@ -1,7 +1,8 @@
 /* -*- Mode: c; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
 
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2000-2001, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2000-2001, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index c9846851fce5c3d94bb3ec3eca45b275cdf6b8b3..7923487b2753fa5c1f336b2eca3996c9235a4f56 100644 (file)
@@ -2,8 +2,8 @@
 
     libparted - a library for manipulating disk partitions
     atari.c - libparted module to manipulate Atari partition tables.
-    Copyright (C) 2000-2001, 2004, 2007-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2000-2001, 2004, 2007-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 6946563ad6c4d38985a4041fd3849dfc4b9ad967..238b8afd23c30e4d7246f3c917562e00d735d09b 100644 (file)
@@ -1,7 +1,8 @@
 /* -*- Mode: c; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
 
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2000-2001, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2000-2001, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -164,8 +165,6 @@ bsd_probe (const PedDevice *dev)
 
        label = &((BSDDiskData*) s0)->label;
 
-       alpha_bootblock_checksum(label);
-
        /* check magic */
         bool found = PED_LE32_TO_CPU (label->d_magic) == BSD_DISKMAGIC;
        free (s0);
@@ -307,19 +306,16 @@ error:
 static void
 _probe_and_add_boot_code (const PedDisk* disk)
 {
-       char *old_boot_code;
-       BSDRawLabel *old_label;
+       BSDDiskData *old_data;
 
        void *s0;
        if (!ptt_read_sector (disk->dev, 0, &s0))
                return;
-       old_boot_code = ((BSDDiskData*) s0)->boot_code;
-       old_label = &((BSDDiskData*) s0)->label;
-
-       if (old_boot_code [0]
-           && old_label->d_magic == PED_CPU_TO_LE32 (BSD_DISKMAGIC)) {
+       old_data = (BSDDiskData*) s0;
+       if (old_data->boot_code [0]
+           && old_data->label.d_magic == PED_CPU_TO_LE32 (BSD_DISKMAGIC)) {
                BSDDiskData *bsd_specific = (BSDDiskData*) disk->disk_specific;
-               memcpy (bsd_specific, old_boot_code, sizeof (BSDDiskData));
+               memcpy (bsd_specific, old_data, sizeof (BSDDiskData));
         }
        free (s0);
 }
index dd08f33c25560dfb49bf00fe00f06869f2db3e16..6b0b10ddfa9675d37c54832d56eec297ab13f7a4 100644 (file)
@@ -1,7 +1,8 @@
 /* -*- Mode: c; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
 
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2000-2001, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2000-2001, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index ed1341eaad761cd1b9239b1085f362f12b1ec327..e2aa5e0229d570c02b700249f5062ef406fc7fae 100644 (file)
@@ -1,6 +1,6 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2001, 2004-2005, 2007-2014, 2019 Free Software
+    Copyright (C) 1999-2001, 2004-2005, 2007-2014, 2019-2021 Free Software
     Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
@@ -92,6 +92,7 @@ static const char MBR_BOOT_CODE[] = {
 #define PARTITION_HFS          0xaf
 #define PARTITION_SUN_UFS      0xbf
 #define PARTITION_DELL_DIAG    0xde
+#define PARTITION_BLS_BOOT     0xea
 #define PARTITION_GPT          0xee
 #define PARTITION_ESP          0xef
 #define PARTITION_PALO         0xf0
@@ -165,6 +166,7 @@ typedef struct {
        int             diag;
        int             irst;
        int             esp;
+       int             bls_boot;
        OrigState*      orig;                   /* used for CHS stuff */
 } DosPartitionData;
 
@@ -961,6 +963,7 @@ raw_part_parse (const PedDisk* disk, const DosRawPartition* raw_part,
        dos_data->prep = raw_part->type == PARTITION_PREP;
        dos_data->irst = raw_part->type == PARTITION_IRST;
        dos_data->esp = raw_part->type == PARTITION_ESP;
+       dos_data->bls_boot = raw_part->type == PARTITION_BLS_BOOT;
        dos_data->orig = ped_malloc (sizeof (OrigState));
        if (!dos_data->orig) {
                ped_partition_destroy (part);
@@ -1288,7 +1291,7 @@ msdos_write (const PedDisk* disk)
        DosRawTable *table = (DosRawTable *) s0;
 
        if (!table->boot_code[0]) {
-               memset (table->boot_code, 0, 512);
+               memset (table, 0, 512);
                memcpy (table->boot_code, MBR_BOOT_CODE, sizeof (MBR_BOOT_CODE));
        }
 
@@ -1340,22 +1343,10 @@ msdos_partition_new (const PedDisk* disk, PedPartitionType part_type,
 
        if (ped_partition_is_active (part)) {
                part->disk_specific
-                       = dos_data = ped_malloc (sizeof (DosPartitionData));
+                       = dos_data = ped_calloc (sizeof (DosPartitionData));
                if (!dos_data)
                        goto error_free_part;
-               dos_data->orig = NULL;
                dos_data->system = PARTITION_LINUX;
-               dos_data->hidden = 0;
-               dos_data->msftres = 0;
-               dos_data->boot = 0;
-               dos_data->diag = 0;
-               dos_data->raid = 0;
-               dos_data->lvm = 0;
-               dos_data->lba = 0;
-               dos_data->palo = 0;
-               dos_data->prep = 0;
-               dos_data->irst = 0;
-               dos_data->esp = 0;
        } else {
                part->disk_specific = NULL;
        }
@@ -1394,6 +1385,7 @@ msdos_partition_duplicate (const PedPartition* part)
        new_dos_data->prep = old_dos_data->prep;
        new_dos_data->irst = old_dos_data->irst;
        new_dos_data->esp = old_dos_data->esp;
+       new_dos_data->bls_boot = old_dos_data->bls_boot;
 
        if (old_dos_data->orig) {
                new_dos_data->orig = ped_malloc (sizeof (OrigState));
@@ -1492,6 +1484,10 @@ msdos_partition_set_system (PedPartition* part,
                dos_data->system = PARTITION_ESP;
                return 1;
        }
+       if (dos_data->bls_boot) {
+               dos_data->system = PARTITION_BLS_BOOT;
+               return 1;
+       }
 
        if (!fs_type)
                dos_data->system = PARTITION_LINUX;
@@ -1534,6 +1530,7 @@ clear_flags (DosPartitionData *dos_data)
   dos_data->irst = 0;
   dos_data->esp = 0;
   dos_data->raid = 0;
+  dos_data->bls_boot = 0;
 }
 
 static int
@@ -1635,6 +1632,12 @@ msdos_partition_set_flag (PedPartition* part,
                dos_data->esp = state;
                return ped_partition_set_system (part, part->fs_type);
 
+       case PED_PARTITION_BLS_BOOT:
+               if (state)
+                       clear_flags (dos_data);
+               dos_data->bls_boot = state;
+               return ped_partition_set_system (part, part->fs_type);
+
        default:
                return 0;
        }
@@ -1689,6 +1692,9 @@ msdos_partition_get_flag (const PedPartition* part, PedPartitionFlag flag)
        case PED_PARTITION_ESP:
                return dos_data->esp;
 
+       case PED_PARTITION_BLS_BOOT:
+               return dos_data->bls_boot;
+
        default:
                return 0;
        }
@@ -1719,6 +1725,7 @@ msdos_partition_is_flag_available (const PedPartition* part,
        case PED_PARTITION_PREP:
        case PED_PARTITION_IRST:
        case PED_PARTITION_ESP:
+       case PED_PARTITION_BLS_BOOT:
        case PED_PARTITION_DIAG:
                return 1;
 
index 72cabcc7b74ad06e17be400c4763568387af933d..53f96d08561ed147aed5815dc44a72d96266e8fb 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2001-2002, 2005, 2007-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2001-2002, 2005, 2007-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 8e9500bd715a8a4210036041ec65530fc311454a..93f7add2a2411f035f6c4991506871c3e1e25663 100644 (file)
@@ -156,6 +156,14 @@ typedef struct
     ((efi_guid_t) { PED_CPU_TO_LE32 (0xD3BFE2DE), PED_CPU_TO_LE16 (0x3DAF), \
                     PED_CPU_TO_LE16 (0x11DF), 0xba, 0x40, \
                     { 0xE3, 0xA5, 0x56, 0xD8, 0x95, 0x93 }})
+#define PARTITION_CHROMEOS_KERNEL_GUID \
+    ((efi_guid_t) { PED_CPU_TO_LE32 (0xfe3a2a5d), PED_CPU_TO_LE16 (0x4f32), \
+                    PED_CPU_TO_LE16 (0x41a7), 0xb7, 0x25, \
+                    { 0xac, 0xcc, 0x32, 0x85, 0xa3, 0x09 }})
+#define PARTITION_BLS_BOOT_GUID \
+    ((efi_guid_t) { PED_CPU_TO_LE32 (0xbc13c2ff), PED_CPU_TO_LE16 (0x59e6), \
+                    PED_CPU_TO_LE16 (0x4262), 0xa3, 0x52, \
+                    { 0xb2, 0x75, 0xfd, 0x6f, 0x71, 0x72 }})
 
 struct __attribute__ ((packed)) _GuidPartitionTableHeader_t
 {
@@ -303,6 +311,8 @@ typedef struct _GPTPartitionData
   int legacy_boot;
   int prep;
   int irst;
+  int chromeos_kernel;
+  int bls_boot;
 } GPTPartitionData;
 
 static PedDiskType gpt_disk_type;
@@ -826,6 +836,8 @@ _parse_part_entry (PedDisk *disk, GuidPartitionEntry_t *pte)
     = gpt_part_data->legacy_boot
     = gpt_part_data->prep
     = gpt_part_data->irst
+    = gpt_part_data->chromeos_kernel
+    = gpt_part_data->bls_boot
     = gpt_part_data->bios_grub = gpt_part_data->atvrecv = 0;
 
   if (pte->Attributes.RequiredToFunction & 0x1)
@@ -857,6 +869,10 @@ _parse_part_entry (PedDisk *disk, GuidPartitionEntry_t *pte)
     gpt_part_data->prep = 1;
   else if (!guid_cmp (gpt_part_data->type, PARTITION_IRST_GUID))
     gpt_part_data->irst = 1;
+  else if (!guid_cmp (gpt_part_data->type, PARTITION_CHROMEOS_KERNEL_GUID))
+    gpt_part_data->chromeos_kernel = 1;
+  else if (!guid_cmp (gpt_part_data->type, PARTITION_BLS_BOOT_GUID))
+    gpt_part_data->bls_boot = 1;
 
   return part;
 }
@@ -1377,6 +1393,8 @@ gpt_partition_new (const PedDisk *disk,
   gpt_part_data->prep = 0;
   gpt_part_data->translated_name = 0;
   gpt_part_data->irst = 0;
+  gpt_part_data->chromeos_kernel = 0;
+  gpt_part_data->bls_boot = 0;
   uuid_generate ((unsigned char *) &gpt_part_data->uuid);
   swap_uuid_and_efi_guid (&gpt_part_data->uuid);
   memset (gpt_part_data->name, 0, sizeof gpt_part_data->name);
@@ -1507,6 +1525,16 @@ gpt_partition_set_system (PedPartition *part,
       gpt_part_data->type = PARTITION_IRST_GUID;
       return 1;
     }
+  if (gpt_part_data->chromeos_kernel)
+    {
+      gpt_part_data->type = PARTITION_CHROMEOS_KERNEL_GUID;
+      return 1;
+    }
+  if (gpt_part_data->bls_boot)
+    {
+      gpt_part_data->type = PARTITION_BLS_BOOT_GUID;
+      return 1;
+    }
 
   if (fs_type)
     {
@@ -1653,6 +1681,8 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
           = gpt_part_data->msftrecv
           = gpt_part_data->prep
           = gpt_part_data->irst
+          = gpt_part_data->chromeos_kernel
+          = gpt_part_data->bls_boot
           = gpt_part_data->atvrecv = 0;
       return gpt_partition_set_system (part, part->fs_type);
     case PED_PARTITION_BIOS_GRUB:
@@ -1668,6 +1698,8 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
           = gpt_part_data->msftrecv
           = gpt_part_data->prep
           = gpt_part_data->irst
+          = gpt_part_data->chromeos_kernel
+          = gpt_part_data->bls_boot
           = gpt_part_data->atvrecv = 0;
       return gpt_partition_set_system (part, part->fs_type);
     case PED_PARTITION_RAID:
@@ -1683,6 +1715,8 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
           = gpt_part_data->msftrecv
           = gpt_part_data->prep
           = gpt_part_data->irst
+          = gpt_part_data->chromeos_kernel
+          = gpt_part_data->bls_boot
           = gpt_part_data->atvrecv = 0;
       return gpt_partition_set_system (part, part->fs_type);
     case PED_PARTITION_LVM:
@@ -1698,6 +1732,8 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
           = gpt_part_data->msftrecv
           = gpt_part_data->prep
           = gpt_part_data->irst
+          = gpt_part_data->chromeos_kernel
+          = gpt_part_data->bls_boot
           = gpt_part_data->atvrecv = 0;
       return gpt_partition_set_system (part, part->fs_type);
     case PED_PARTITION_SWAP:
@@ -1713,6 +1749,8 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
           = gpt_part_data->msftrecv
           = gpt_part_data->prep
           = gpt_part_data->irst
+          = gpt_part_data->chromeos_kernel
+          = gpt_part_data->bls_boot
           = gpt_part_data->atvrecv = 0;
       return gpt_partition_set_system (part, part->fs_type);
     case PED_PARTITION_HPSERVICE:
@@ -1728,6 +1766,8 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
           = gpt_part_data->msftrecv
           = gpt_part_data->prep
           = gpt_part_data->irst
+          = gpt_part_data->chromeos_kernel
+          = gpt_part_data->bls_boot
           = gpt_part_data->atvrecv = 0;
       return gpt_partition_set_system (part, part->fs_type);
     case PED_PARTITION_MSFT_RESERVED:
@@ -1743,6 +1783,8 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
           = gpt_part_data->msftrecv
           = gpt_part_data->prep
           = gpt_part_data->irst
+          = gpt_part_data->chromeos_kernel
+          = gpt_part_data->bls_boot
           = gpt_part_data->atvrecv = 0;
       return gpt_partition_set_system (part, part->fs_type);
     case PED_PARTITION_MSFT_DATA:
@@ -1758,6 +1800,8 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
           = gpt_part_data->msftrecv
           = gpt_part_data->prep
           = gpt_part_data->irst
+          = gpt_part_data->chromeos_kernel
+          = gpt_part_data->bls_boot
           = gpt_part_data->atvrecv = 0;
         gpt_part_data->msftdata = 1;
       } else {
@@ -1777,6 +1821,7 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
           = gpt_part_data->msftres
           = gpt_part_data->prep
           = gpt_part_data->irst
+          = gpt_part_data->chromeos_kernel
           = gpt_part_data->atvrecv = 0;
       return gpt_partition_set_system (part, part->fs_type);
     case PED_PARTITION_APPLE_TV_RECOVERY:
@@ -1791,6 +1836,7 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
           = gpt_part_data->msftres
           = gpt_part_data->msftdata
           = gpt_part_data->prep
+          = gpt_part_data->chromeos_kernel
           = gpt_part_data->msftrecv = 0;
       return gpt_partition_set_system (part, part->fs_type);
     case PED_PARTITION_PREP:
@@ -1805,6 +1851,8 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
           = gpt_part_data->msftres
           = gpt_part_data->irst
           = gpt_part_data->atvrecv
+          = gpt_part_data->chromeos_kernel
+          = gpt_part_data->bls_boot
           = gpt_part_data->msftrecv = 0;
       return gpt_partition_set_system (part, part->fs_type);
     case PED_PARTITION_IRST:
@@ -1820,6 +1868,42 @@ gpt_partition_set_flag (PedPartition *part, PedPartitionFlag flag, int state)
           = gpt_part_data->msftdata
           = gpt_part_data->msftrecv
           = gpt_part_data->prep
+          = gpt_part_data->chromeos_kernel
+          = gpt_part_data->bls_boot
+          = gpt_part_data->atvrecv = 0;
+      return gpt_partition_set_system (part, part->fs_type);
+    case PED_PARTITION_CHROMEOS_KERNEL:
+      gpt_part_data->chromeos_kernel = state;
+      if (state)
+        gpt_part_data->boot
+          = gpt_part_data->bios_grub
+          = gpt_part_data->raid
+          = gpt_part_data->lvm
+          = gpt_part_data->swap
+          = gpt_part_data->hp_service
+          = gpt_part_data->msftres
+          = gpt_part_data->msftdata
+          = gpt_part_data->msftrecv
+          = gpt_part_data->atvrecv
+          = gpt_part_data->prep
+          = gpt_part_data->irst
+          = gpt_part_data->bls_boot = 0;
+      return gpt_partition_set_system (part, part->fs_type);
+    case PED_PARTITION_BLS_BOOT:
+      gpt_part_data->bls_boot = state;
+      if (state)
+        gpt_part_data->boot
+          = gpt_part_data->raid
+          = gpt_part_data->lvm
+          = gpt_part_data->swap
+          = gpt_part_data->bios_grub
+          = gpt_part_data->hp_service
+          = gpt_part_data->msftres
+          = gpt_part_data->msftdata
+          = gpt_part_data->msftrecv
+          = gpt_part_data->prep
+          = gpt_part_data->irst
+          = gpt_part_data->chromeos_kernel
           = gpt_part_data->atvrecv = 0;
       return gpt_partition_set_system (part, part->fs_type);
     case PED_PARTITION_HIDDEN:
@@ -1872,8 +1956,12 @@ gpt_partition_get_flag (const PedPartition *part, PedPartitionFlag flag)
       return gpt_part_data->prep;
     case PED_PARTITION_IRST:
       return gpt_part_data->irst;
+    case PED_PARTITION_BLS_BOOT:
+      return gpt_part_data->bls_boot;
     case PED_PARTITION_SWAP:
        return gpt_part_data->swap;
+    case PED_PARTITION_CHROMEOS_KERNEL:
+      return gpt_part_data->chromeos_kernel;
     case PED_PARTITION_LBA:
     case PED_PARTITION_ROOT:
     default:
@@ -1903,6 +1991,8 @@ gpt_partition_is_flag_available (const PedPartition *part,
     case PED_PARTITION_PREP:
     case PED_PARTITION_IRST:
     case PED_PARTITION_ESP:
+    case PED_PARTITION_CHROMEOS_KERNEL:
+    case PED_PARTITION_BLS_BOOT:
       return 1;
     case PED_PARTITION_ROOT:
     case PED_PARTITION_LBA:
index 88e47f943a074a813f51fb94c4b4eeb0214e287b..20aba5e886d5aabf54b96da576bea68db209395c 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2000, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1999-2000, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 8980885736dfe0b9b56fc52e030981313f14c303..75b59accccfcf7c4f6c5023a78085642dd5763d1 100644 (file)
@@ -1,7 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2000, 2002, 2004, 2007-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2000, 2002, 2004, 2007-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -560,20 +560,6 @@ _rawpart_analyse (MacRawPartition* raw_part, PedDisk* disk, int num)
        mac_part_data->data_region_length
                = PED_BE32_TO_CPU (raw_part->data_count);
 
-       /* boot region - we have no idea what this is for, but Mac OSX
-        * seems to put garbage here, and doesn't pay any attention to
-        * it afterwards.  [clausen, dan burcaw]
-        */
-#if 0
-       if (raw_part->boot_start) {
-               ped_exception_throw (
-                       PED_EXCEPTION_ERROR,
-                       PED_EXCEPTION_CANCEL,
-                       _("The boot region doesn't start at the start "
-                         "of the partition."));
-               goto error_destroy_part;
-       }
-#endif
        mac_part_data->boot_region_length
                = PED_BE32_TO_CPU (raw_part->boot_count);
 
index c1b5e3c9a23b8fe7418542e7df683dbab469e85b..cfd1d711fd003fcdd689599cbda926f521365a15 100644 (file)
@@ -1,7 +1,7 @@
 /* -*- Mode: c; indent-tabs-mode: nil -*-
 
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2007, 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 328cd8dcef1899dc1e3cf8967656efb27db3cbde..015800e2fee0dc246d43d9d62f8470ebec40c38d 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2000-2001, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2000-2001, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -418,13 +419,8 @@ fill_raw_part (PC98RawPartition* raw_part, const PedPartition* part)
                return 0;
        }
        raw_part->end_cyl    = PED_CPU_TO_LE16(c);
-#if 0
-       raw_part->end_head   = h;
-       raw_part->end_sector = s;
-#else
        raw_part->end_head   = 0;
        raw_part->end_sector = 0;
-#endif
 
        return 1;
 }
index ff30df2275786fdd3bcbe714854e1b4dbbf56f03..bfca0a854c26404d07bf70f50dbf516aad090dd7 100644 (file)
@@ -1,5 +1,5 @@
 /* partition table tools
-   Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+   Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index be1daf1c034333918ebb98d56103fc54c4ea38ba..88e533475e28340844f745996ed778037fc6e5a1 100644 (file)
@@ -1,5 +1,5 @@
 /* libparted - a library for manipulating disk partitions
-   Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+   Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
index 63c90bff53eec9ebd190ddc8d54a065732eacaf4..cbbf29a4e4bc41bf5dba589cb13d8be6b67fd469 100644 (file)
@@ -2,8 +2,8 @@
 
     libparted - a library for manipulating disk partitions
     disk_amiga.c - libparted module to manipulate amiga RDB partition tables.
-    Copyright (C) 2000-2001, 2004, 2007-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2000-2001, 2004, 2007-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 9b9c2c052695257716146e8c5c1ded4701b82544..27183830456cbd93d63e9c52dbb7c0c2e20e9581 100644 (file)
@@ -1,8 +1,8 @@
 /* -*- Mode: c; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
 
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2000-2001, 2005, 2007-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 2000-2001, 2005, 2007-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 00f5ff8f524dc83a01a5403c53a79a48a96df724..d46897f4e7695029308378d0c4da7958e00a4d57 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 1999-2001, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1999-2001, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -109,6 +110,7 @@ extern void ped_file_system_linux_swap_init (void);
 extern void ped_file_system_jfs_init (void);
 extern void ped_file_system_hfs_init (void);
 extern void ped_file_system_fat_init (void);
+extern void ped_file_system_f2fs_init (void);
 extern void ped_file_system_ext2_init (void);
 extern void ped_file_system_nilfs2_init (void);
 extern void ped_file_system_btrfs_init (void);
@@ -126,6 +128,7 @@ init_file_system_types ()
        ped_file_system_jfs_init ();
        ped_file_system_hfs_init ();
        ped_file_system_fat_init ();
+       ped_file_system_f2fs_init ();
        ped_file_system_ext2_init ();
        ped_file_system_nilfs2_init ();
        ped_file_system_btrfs_init ();
@@ -186,6 +189,7 @@ _init()
 extern void ped_file_system_nilfs2_done (void);
 extern void ped_file_system_ext2_done (void);
 extern void ped_file_system_fat_done (void);
+extern void ped_file_system_f2fs_done (void);
 extern void ped_file_system_hfs_done (void);
 extern void ped_file_system_jfs_done (void);
 extern void ped_file_system_linux_swap_done (void);
@@ -202,6 +206,7 @@ done_file_system_types ()
 {
        ped_file_system_nilfs2_done ();
        ped_file_system_ext2_done ();
+       ped_file_system_f2fs_done ();
        ped_file_system_fat_done ();
        ped_file_system_hfs_done ();
        ped_file_system_jfs_done ();
index b80c3302c244f3a9a7d7f9ffb8eb6e3c3428af57..b94ae4f5e7a48397d7bb7449058359304a2fd61f 100644 (file)
@@ -1,6 +1,6 @@
 ;   libparted - a library for manipulating disk partitions
-;   Copyright (C) 1999-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-;   Inc.
+;   Copyright (C) 1999-2000, 2007, 2009-2014, 2019-2021 Free Software
+;   Foundation, Inc.
 ;
 ;   This program is free software; you can redistribute it and/or modify
 ;   it under the terms of the GNU General Public License as published by
index 58ac920ba99a652306d1b7b544278f5c14eeffa5..c92a3a33d799f43cbd33701684a1747e30bb515d 100644 (file)
@@ -1,5 +1,5 @@
 # This file is part of GNU Parted
-# Copyright (C) 1999-2001, 2007-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 1999-2001, 2007-2014, 2019-2021 Free Software Foundation, Inc.
 #
 # This file may be modified and/or distributed without restriction.
 
index c2bbd08fbcd0cb3d2d6253913481aedf45eab9a0..f8c1d76a53ebfb1fa6f3bb9f9df3c3b9288d6e76 100644 (file)
@@ -15,7 +15,7 @@
 @SET_MAKE@
 
 # This file is part of GNU Parted
-# Copyright (C) 1999-2001, 2007-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 1999-2001, 2007-2014, 2019-2021 Free Software Foundation, Inc.
 #
 # This file may be modified and/or distributed without restriction.
 VPATH = @srcdir@
@@ -101,9 +101,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -115,15 +115,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -133,25 +131,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -163,9 +162,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -180,6 +180,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -188,14 +189,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -528,6 +530,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -562,6 +565,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -572,6 +577,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -619,19 +625,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -645,6 +655,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -705,6 +717,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -753,9 +766,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -771,6 +787,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -854,11 +871,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -868,12 +887,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -907,10 +931,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -932,14 +956,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -958,7 +985,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -968,7 +994,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -991,6 +1016,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -1076,7 +1102,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -1089,6 +1117,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -1111,6 +1140,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -1119,15 +1149,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -1166,6 +1195,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -1191,16 +1221,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -1249,6 +1291,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -1278,6 +1321,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1314,21 +1358,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1356,6 +1403,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1365,6 +1413,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1397,6 +1447,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1485,6 +1536,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1522,13 +1574,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1547,6 +1599,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
index c508c694ee340bb98925cd14beb25e174a3e5207..b3b5a42c888b02fb162ccce5020ad3f24e13ffb6 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # run the label unit tests in a directory supporting O_DIRECT
 
-# Copyright (C) 2007-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2007-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 050178fffb7d5cc854881484ec3ab3b2277f7b0a..4d21529917f32a7841b29929cfbf3e068f57901c 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # run the disk unit tests in a directory supporting O_DIRECT
 
-# Copyright (C) 2007-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2007-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 924d4a22f3bf8883ebb680667011b71a242efe76..5e1bc7afdbc141efbf4a5d8170d9c0c142591c67 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # run the zerolen unit tests in a directory supporting O_DIRECT
 
-# Copyright (C) 2007-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2007-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 56615f5ecf08c9dd17a87befc47a47b7dbd7205a..da8750c04dc3eb67811abe913fe5f84bb40cd14e 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # run the /dev/mapper symlink test
 
-# Copyright (C) 2007-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2007-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 94a9287b87ed9ec88e0e5dedcc76905cb695399e..efef4bdbf6cd0bc8a4f7f98b0a08976d33b76914 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2001, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2001, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 7cc98fcbc92f07c617781c67393925f5c045a110..b53f1bb61d80d6c579591ebf74f87cc2f26184f5 100644 (file)
@@ -1,6 +1,7 @@
 /*
     libparted - a library for manipulating disk partitions
-    Copyright (C) 2005, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2005, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index e3e0fb6daa21ed823fbfdf509a2a712918855ec6..14628c363b7a740d0b990925387712e3ac5bea2c 100644 (file)
@@ -1,43 +1,82 @@
-# 00gnulib.m4 serial 3
-dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# 00gnulib.m4 serial 8
+dnl Copyright (C) 2009-2020 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 This file must be named something that sorts before all other
-dnl gnulib-provided .m4 files.  It is needed until such time as we can
-dnl assume Autoconf 2.64, with its improved AC_DEFUN_ONCE and
-dnl m4_divert semantics.
+dnl gnulib-provided .m4 files.  It is needed until the clang fix has
+dnl been included in Autoconf.
 
-# Until autoconf 2.63, handling of the diversion stack required m4_init
-# to be called first; but this does not happen with aclocal.  Wrapping
-# the entire execution in another layer of the diversion stack fixes this.
-# Worse, prior to autoconf 2.62, m4_wrap depended on the underlying m4
-# for whether it was FIFO or LIFO; in order to properly balance with
-# m4_init, we need to undo our push just before anything wrapped within
-# the m4_init body.  The way to ensure this is to wrap both sides of
-# m4_init with a one-shot macro that does the pop at the right time.
-m4_ifndef([_m4_divert_diversion],
-[m4_divert_push([KILL])
-m4_define([gl_divert_fixup], [m4_divert_pop()m4_define([$0])])
-m4_define([m4_init],
-  [gl_divert_fixup()]m4_defn([m4_init])[gl_divert_fixup()])])
-
-
-# AC_DEFUN_ONCE([NAME], VALUE)
-# ----------------------------
-# Define NAME to expand to VALUE on the first use (whether by direct
-# expansion, or by AC_REQUIRE), and to nothing on all subsequent uses.
-# Avoid bugs in AC_REQUIRE in Autoconf 2.63 and earlier.  This
-# definition is slower than the version in Autoconf 2.64, because it
-# can only use interfaces that existed since 2.59; but it achieves the
-# same effect.  Quoting is necessary to avoid confusing Automake.
-m4_version_prereq([2.63.263], [],
-[m4_define([AC][_DEFUN_ONCE],
-  [AC][_DEFUN([$1],
-    [AC_REQUIRE([_gl_DEFUN_ONCE([$1])],
-      [m4_indir([_gl_DEFUN_ONCE([$1])])])])]dnl
-[AC][_DEFUN([_gl_DEFUN_ONCE([$1])], [$2])])])
+# The following definitions arrange to use a compiler option
+# -Werror=implicit-function-declaration in AC_CHECK_DECL, when the
+# compiler is clang.  Without it, clang implicitly declares "known"
+# library functions in C mode, but not in C++ mode, which would cause
+# Gnulib to omit a declaration and thus later produce an error in C++
+# mode.  As of clang 9.0, these "known" functions are identified through
+# LIBBUILTIN invocations in the LLVM source file
+# llvm/tools/clang/include/clang/Basic/Builtins.def.
+# It's not possible to AC_REQUIRE the extra tests from AC_CHECK_DECL,
+# because AC_CHECK_DECL, like other Autoconf built-ins, is not supposed
+# to AC_REQUIRE anything: some configure.ac files have their first
+# AC_CHECK_DECL executed conditionally.  Therefore append the extra tests
+# to AC_PROG_CC.
+AC_DEFUN([gl_COMPILER_CLANG],
+[
+dnl AC_REQUIRE([AC_PROG_CC])
+  AC_CACHE_CHECK([whether the compiler is clang],
+    [gl_cv_compiler_clang],
+    [dnl Use _AC_COMPILE_IFELSE instead of AC_EGREP_CPP, to avoid error
+     dnl "circular dependency of AC_LANG_COMPILER(C)" if AC_PROG_CC has
+     dnl not yet been invoked.
+     _AC_COMPILE_IFELSE(
+        [AC_LANG_PROGRAM([[
+           #ifdef __clang__
+           barfbarf
+           #endif
+           ]],[[]])
+        ],
+        [gl_cv_compiler_clang=no],
+        [gl_cv_compiler_clang=yes])
+    ])
+])
+AC_DEFUN([gl_COMPILER_PREPARE_CHECK_DECL],
+[
+dnl AC_REQUIRE([AC_PROG_CC])
+dnl AC_REQUIRE([gl_COMPILER_CLANG])
+  AC_CACHE_CHECK([for compiler option needed when checking for declarations],
+    [gl_cv_compiler_check_decl_option],
+    [if test $gl_cv_compiler_clang = yes; then
+       dnl Test whether the compiler supports the option
+       dnl '-Werror=implicit-function-declaration'.
+       save_ac_compile="$ac_compile"
+       ac_compile="$ac_compile -Werror=implicit-function-declaration"
+       dnl Use _AC_COMPILE_IFELSE instead of AC_COMPILE_IFELSE, to avoid a
+       dnl warning "AC_COMPILE_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS".
+       _AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]],[[]])],
+         [gl_cv_compiler_check_decl_option='-Werror=implicit-function-declaration'],
+         [gl_cv_compiler_check_decl_option=none])
+       ac_compile="$save_ac_compile"
+     else
+       gl_cv_compiler_check_decl_option=none
+     fi
+    ])
+  if test "x$gl_cv_compiler_check_decl_option" != xnone; then
+    ac_compile_for_check_decl="$ac_compile $gl_cv_compiler_check_decl_option"
+  else
+    ac_compile_for_check_decl="$ac_compile"
+  fi
+])
+dnl Redefine _AC_CHECK_DECL_BODY so that it references ac_compile_for_check_decl
+dnl instead of ac_compile.  If, for whatever reason, the override of AC_PROG_CC
+dnl in zzgnulib.m4 is inactive, use the original ac_compile.
+m4_define([_AC_CHECK_DECL_BODY],
+[  ac_save_ac_compile="$ac_compile"
+  if test -n "$ac_compile_for_check_decl"; then
+    ac_compile="$ac_compile_for_check_decl"
+  fi]
+m4_defn([_AC_CHECK_DECL_BODY])[  ac_compile="$ac_save_ac_compile"
+])
 
 # gl_00GNULIB
 # -----------
index e1aa310c95738e2fffd6932648864810eae8960a..520c8c4b208ca3b8b1f159e50fa5adfac0090b2d 100644 (file)
@@ -1,5 +1,5 @@
 # Test for __inline keyword
-dnl Copyright 2017-2019 Free Software Foundation, Inc.
+dnl Copyright 2017-2020 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.
index a8f2cba173f39d504b2899f2c7a749579af1bc17..c043233de36f9e8bb7eb19298b0a9ddd812c2808 100644 (file)
@@ -1,5 +1,5 @@
-# absolute-header.m4 serial 16
-dnl Copyright (C) 2006-2019 Free Software Foundation, Inc.
+# absolute-header.m4 serial 17
+dnl Copyright (C) 2006-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -22,23 +22,21 @@ dnl From Derek Price.
 AC_DEFUN([gl_ABSOLUTE_HEADER],
 [AC_REQUIRE([AC_CANONICAL_HOST])
 AC_LANG_PREPROC_REQUIRE()dnl
-dnl FIXME: gl_absolute_header and ac_header_exists must be used unquoted
-dnl until we can assume autoconf 2.64 or newer.
 m4_foreach_w([gl_HEADER_NAME], [$1],
   [AS_VAR_PUSHDEF([gl_absolute_header],
                   [gl_cv_absolute_]m4_defn([gl_HEADER_NAME]))dnl
   AC_CACHE_CHECK([absolute name of <]m4_defn([gl_HEADER_NAME])[>],
-    m4_defn([gl_absolute_header]),
+    [gl_absolute_header],
     [AS_VAR_PUSHDEF([ac_header_exists],
                     [ac_cv_header_]m4_defn([gl_HEADER_NAME]))dnl
     AC_CHECK_HEADERS_ONCE(m4_defn([gl_HEADER_NAME]))dnl
-    if test AS_VAR_GET(ac_header_exists) = yes; then
+    if test AS_VAR_GET([ac_header_exists]) = yes; then
       gl_ABSOLUTE_HEADER_ONE(m4_defn([gl_HEADER_NAME]))
     fi
     AS_VAR_POPDEF([ac_header_exists])dnl
     ])dnl
   AC_DEFINE_UNQUOTED(AS_TR_CPP([ABSOLUTE_]m4_defn([gl_HEADER_NAME])),
-                     ["AS_VAR_GET(gl_absolute_header)"],
+                     ["AS_VAR_GET([gl_absolute_header])"],
                      [Define this to an absolute name of <]m4_defn([gl_HEADER_NAME])[>.])
   AS_VAR_POPDEF([gl_absolute_header])dnl
 ])dnl
index 29bd289b02af1143455f6c129d79accf3c4f288a..619959b4de18247969ad2522d7958a36506c2a1b 100644 (file)
@@ -1,5 +1,5 @@
-# alloca.m4 serial 15
-dnl Copyright (C) 2002-2004, 2006-2007, 2009-2019 Free Software Foundation,
+# alloca.m4 serial 19
+dnl Copyright (C) 2002-2004, 2006-2007, 2009-2020 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,
@@ -50,13 +50,13 @@ AC_DEFUN([gl_FUNC_ALLOCA],
 # STACK_DIRECTION is already handled by AC_FUNC_ALLOCA.
 AC_DEFUN([gl_PREREQ_ALLOCA], [:])
 
-# This works around a bug in autoconf <= 2.68.
-# See <https://lists.gnu.org/r/bug-gnulib/2011-06/msg00277.html>.
+m4_version_prereq([2.69c], [], [
 
-m4_version_prereq([2.69], [] ,[
-
-# This is taken from the following Autoconf patch:
-# https://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commitdiff;h=6cd9f12520b0d6f76d3230d7565feba1ecf29497
+# This works around a bug in autoconf <= 2.68 and has simplifications
+# from 2.69c.  See:
+# https://lists.gnu.org/r/bug-gnulib/2011-06/msg00277.html
+# https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=6cd9f12520b0d6f76d3230d7565feba1ecf29497
+# https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=15edf7fd8094fd14a89d9891dd72a9624762597a
 
 # _AC_LIBOBJ_ALLOCA
 # -----------------
@@ -72,26 +72,6 @@ AC_LIBSOURCES(alloca.c)
 AC_SUBST([ALLOCA], [\${LIBOBJDIR}alloca.$ac_objext])dnl
 AC_DEFINE(C_ALLOCA, 1, [Define to 1 if using 'alloca.c'.])
 
-AC_CACHE_CHECK(whether 'alloca.c' needs Cray hooks, ac_cv_os_cray,
-[AC_EGREP_CPP(webecray,
-[#if defined CRAY && ! defined CRAY2
-webecray
-#else
-wenotbecray
-#endif
-], ac_cv_os_cray=yes, ac_cv_os_cray=no)])
-if test $ac_cv_os_cray = yes; then
-  for ac_func in _getb67 GETB67 getb67; do
-    AC_CHECK_FUNC($ac_func,
-                  [AC_DEFINE_UNQUOTED(CRAY_STACKSEG_END, $ac_func,
-                                      [Define to one of '_getb67', 'GETB67',
-                                       'getb67' for Cray-2 and Cray-YMP
-                                       systems. This function is required for
-                                       'alloca.c' support on those systems.])
-    break])
-  done
-fi
-
 AC_CACHE_CHECK([stack direction for C alloca],
                [ac_cv_c_stack_direction],
 [AC_RUN_IFELSE([AC_LANG_SOURCE(
@@ -122,7 +102,7 @@ AH_VERBATIM([STACK_DIRECTION],
         STACK_DIRECTION > 0 => grows toward higher addresses
         STACK_DIRECTION < 0 => grows toward lower addresses
         STACK_DIRECTION = 0 => direction of growth unknown */
-@%:@undef STACK_DIRECTION])dnl
+#undef STACK_DIRECTION])dnl
 AC_DEFINE_UNQUOTED(STACK_DIRECTION, $ac_cv_c_stack_direction)
-])# _AC_LIBOBJ_ALLOCA
+])
 ])
index 645011d6670c1c214d2787b8f722c45ab428308b..b39449494ae871b5dc8eae96f1bba12a7a18cc1e 100644 (file)
@@ -1,5 +1,5 @@
 # arpa_inet_h.m4 serial 14
-dnl Copyright (C) 2006, 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2006, 2008-2020 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.
index 15048a73af13aed88182e4ccaf11223493d42f54..d823b9f0f1c7aecee10f9760efe70fa736d6a129 100644 (file)
@@ -1,6 +1,6 @@
 #serial 7
 
-# Copyright (C) 1998-1999, 2001, 2004, 2008-2019 Free Software Foundation, Inc.
+# Copyright (C) 1998-1999, 2001, 2004, 2008-2020 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.
index 85c2cbf6dcabb263e0600391ff9f3c7e70169558..c28ccb241644e55cd341a9fe0fe9a7e22e482a21 100644 (file)
@@ -1,5 +1,5 @@
 # btowc.m4 serial 11
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2020 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.
index b65fbf87a62f1ca86a017944729d98e6c66d4e6f..a6e889503dc00d51988bc1e799f3762e5a2e2512 100644 (file)
@@ -1,6 +1,6 @@
 dnl Check for __builtin_expect.
 
-dnl Copyright 2016-2019 Free Software Foundation, Inc.
+dnl Copyright 2016-2020 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.
index d76535d8044bc0a00dc8a67c3d9876a4765ae400..f179a8a11264f42122bf4dd891793315fefcb8a0 100644 (file)
@@ -1,6 +1,6 @@
-# calloc.m4 serial 19
+# calloc.m4 serial 23
 
-# Copyright (C) 2004-2019 Free Software Foundation, Inc.
+# Copyright (C) 2004-2020 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.
@@ -21,33 +21,59 @@ AC_DEFUN([_AC_FUNC_CALLOC_IF],
   AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
   AC_CACHE_CHECK([for GNU libc compatible calloc],
     [ac_cv_func_calloc_0_nonnull],
-    [AC_RUN_IFELSE(
-       [AC_LANG_PROGRAM(
-          [AC_INCLUDES_DEFAULT],
-          [[int result = 0;
-            char *p = calloc (0, 0);
-            if (!p)
-              result |= 1;
-            free (p);
-            p = calloc ((size_t) -1 / 8 + 1, 8);
-            if (p)
-              result |= 2;
-            free (p);
-            return result;
-          ]])],
-       [ac_cv_func_calloc_0_nonnull=yes],
-       [ac_cv_func_calloc_0_nonnull=no],
-       [case "$host_os" in
-                         # Guess yes on glibc systems.
-          *-gnu* | gnu*) ac_cv_func_calloc_0_nonnull="guessing yes" ;;
-                         # Guess yes on musl systems.
-          *-musl*)       ac_cv_func_calloc_0_nonnull="guessing yes" ;;
-                         # Guess yes on native Windows.
-          mingw*)        ac_cv_func_calloc_0_nonnull="guessing yes" ;;
-                         # If we don't know, assume the worst.
-          *)             ac_cv_func_calloc_0_nonnull="guessing no" ;;
-        esac
-       ])])
+    [if test $cross_compiling != yes; then
+       ac_cv_func_calloc_0_nonnull=yes
+       AC_RUN_IFELSE(
+         [AC_LANG_PROGRAM(
+            [AC_INCLUDES_DEFAULT],
+            [[int result = 0;
+              char * volatile p = calloc (0, 0);
+              if (!p)
+                result |= 1;
+              free (p);
+              return result;
+            ]])],
+         [],
+         [ac_cv_func_calloc_0_nonnull=no])
+       AC_RUN_IFELSE(
+         [AC_LANG_PROGRAM(
+            [AC_INCLUDES_DEFAULT],
+            [[int result;
+              typedef struct { char c[8]; } S8;
+              size_t n = (size_t) -1 / sizeof (S8) + 2;
+              S8 * volatile s = calloc (n, sizeof (S8));
+              if (s)
+                {
+                  s[0].c[0] = 1;
+                  if (s[n - 1].c[0])
+                    result = 0;
+                  else
+                    result = 2;
+                }
+              else
+                result = 3;
+              free (s);
+              return result;
+            ]])],
+         dnl The exit code of this program is 0 if calloc() succeeded with a
+         dnl wrap-around bug (which it shouldn't), 2 if calloc() succeeded in
+         dnl a non-flat address space, 3 if calloc() failed, or 1 if some leak
+         dnl sanitizer terminated the program as a result of the calloc() call.
+         [ac_cv_func_calloc_0_nonnull=no],
+         [])
+     else
+       case "$host_os" in
+                        # Guess yes on glibc systems.
+         *-gnu* | gnu*) ac_cv_func_calloc_0_nonnull="guessing yes" ;;
+                        # Guess yes on musl systems.
+         *-musl*)       ac_cv_func_calloc_0_nonnull="guessing yes" ;;
+                        # Guess yes on native Windows.
+         mingw*)        ac_cv_func_calloc_0_nonnull="guessing yes" ;;
+                        # If we don't know, obey --enable-cross-guesses.
+         *)             ac_cv_func_calloc_0_nonnull="$gl_cross_guess_normal" ;;
+       esac
+     fi
+    ])
   case "$ac_cv_func_calloc_0_nonnull" in
     *yes)
       $1
index b61747bd1a5282eead62fb94f2ec66a7acc17087..14ea3e12fa0d6f99e2f9227152e74476b50f1ee6 100644 (file)
@@ -1,6 +1,6 @@
-# canonicalize.m4 serial 30
+# canonicalize.m4 serial 33
 
-dnl Copyright (C) 2003-2007, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2003-2007, 2009-2020 Free Software Foundation, Inc.
 
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -56,7 +56,16 @@ AC_DEFUN([gl_CANONICALIZE_LGPL],
 AC_DEFUN([gl_CANONICALIZE_LGPL_SEPARATE],
 [
   AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
-  AC_CHECK_FUNCS_ONCE([canonicalize_file_name getcwd readlink])
+  AC_CHECK_FUNCS_ONCE([canonicalize_file_name readlink])
+
+  dnl On native Windows, we use _getcwd(), regardless whether getcwd() is
+  dnl available through the linker option '-loldnames'.
+  AC_REQUIRE([AC_CANONICAL_HOST])
+  case "$host_os" in
+    mingw*) ;;
+    *)      AC_CHECK_FUNCS([getcwd]) ;;
+  esac
+
   AC_REQUIRE([gl_DOUBLE_SLASH_ROOT])
   AC_REQUIRE([gl_FUNC_REALPATH_WORKS])
   AC_CHECK_HEADERS_ONCE([sys/param.h])
@@ -70,6 +79,7 @@ AC_DEFUN([gl_FUNC_REALPATH_WORKS],
   AC_CHECK_FUNCS_ONCE([realpath])
   AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
   AC_CACHE_CHECK([whether realpath works], [gl_cv_func_realpath_works], [
+    rm -rf conftest.a conftest.d
     touch conftest.a
     mkdir conftest.d
     AC_RUN_IFELSE([
@@ -117,8 +127,8 @@ AC_DEFUN([gl_FUNC_REALPATH_WORKS],
         *-musl*)       gl_cv_func_realpath_works="guessing yes" ;;
                        # Guess no on native Windows.
         mingw*)        gl_cv_func_realpath_works="guessing no" ;;
-                       # If we don't know, assume the worst.
-        *)             gl_cv_func_realpath_works="guessing no" ;;
+                       # If we don't know, obey --enable-cross-guesses.
+        *)             gl_cv_func_realpath_works="$gl_cross_guess_normal" ;;
       esac
      ])
     rm -rf conftest.a conftest.d
diff --git a/m4/clock_time.m4 b/m4/clock_time.m4
new file mode 100644 (file)
index 0000000..f4f51fa
--- /dev/null
@@ -0,0 +1,31 @@
+# clock_time.m4 serial 10
+dnl Copyright (C) 2002-2006, 2009-2020 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+# Check for clock_gettime and clock_settime, and set LIB_CLOCK_GETTIME.
+# For a program named, say foo, you should add a line like the following
+# in the corresponding Makefile.am file:
+# foo_LDADD = $(LDADD) $(LIB_CLOCK_GETTIME)
+
+AC_DEFUN([gl_CLOCK_TIME],
+[
+  dnl Persuade glibc and Solaris <time.h> to declare these functions.
+  AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
+
+  # Solaris 2.5.1 needs -lposix4 to get the clock_gettime function.
+  # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4.
+
+  # Save and restore LIBS so e.g., -lrt, isn't added to it.  Otherwise, *all*
+  # programs in the package would end up linked with that potentially-shared
+  # library, inducing unnecessary run-time overhead.
+  LIB_CLOCK_GETTIME=
+  AC_SUBST([LIB_CLOCK_GETTIME])
+  gl_saved_libs=$LIBS
+    AC_SEARCH_LIBS([clock_gettime], [rt posix4],
+                   [test "$ac_cv_search_clock_gettime" = "none required" ||
+                    LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime])
+    AC_CHECK_FUNCS([clock_gettime clock_settime])
+  LIBS=$gl_saved_libs
+])
index 7013a130433b666500daff67a115aa3ec2c2aa72..378ec4cb0a38d2a2b5fa84b99b3abdd09fc8bdbf 100644 (file)
@@ -1,5 +1,5 @@
 # close.m4 serial 9
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2020 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.
index 280f556fe83dfb4ac832f8533cfc5610feb57275..9b019cfffef10b17c9a5b4bfcd716e89db5ffd28 100644 (file)
@@ -1,5 +1,5 @@
 # codeset.m4 serial 5 (gettext-0.18.2)
-dnl Copyright (C) 2000-2002, 2006, 2008-2014, 2016, 2019 Free Software
+dnl Copyright (C) 2000-2002, 2006, 2008-2014, 2016, 2019-2020 Free Software
 dnl Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
index 7379df7d5620600b0e84f188fafdd3c219454c6e..213b1cf76add5fd9854db09d0639a952d37225f6 100644 (file)
@@ -1,6 +1,6 @@
 # Say that -DHAVE_CONFIG_H is not needed.
 
-dnl Copyright (C) 2006, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2006, 2009-2020 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.
index 057195264cc2aa487869eb3caa3b4367e524042d..f0f094f5f56a9b51b877b397df500ee4ec4c3e02 100644 (file)
@@ -1,5 +1,5 @@
-# configmake.m4 serial 3
-dnl Copyright (C) 2010-2019 Free Software Foundation, Inc.
+# configmake.m4 serial 4
+dnl Copyright (C) 2010-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -9,7 +9,7 @@ AC_PREREQ([2.60])
 # gl_CONFIGMAKE_PREP
 # ------------------
 # Guarantee all of the standard directory variables, even when used with
-# autoconf 2.63 (runstatedir wasn't supported before 2.70) or
+# autoconf 2.64 (runstatedir wasn't supported before 2.70) or
 # automake 1.11 (runstatedir isn't supported even in 1.16.1).
 AC_DEFUN([gl_CONFIGMAKE_PREP],
 [
index bd30e11748f0504cb43fa5f4e8ade50d79310d5f..0b123d50199bf654475129c58cf362e6730fdf67 100644 (file)
@@ -1,5 +1,5 @@
 # ctype_h.m4 serial 6
-dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2009-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/m4/dirname.m4 b/m4/dirname.m4
deleted file mode 100644 (file)
index 32141ae..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-#serial 10   -*- autoconf -*-
-dnl Copyright (C) 2002-2006, 2009-2019 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-
-AC_DEFUN([gl_DIRNAME],
-[
-  AC_REQUIRE([gl_DIRNAME_LGPL])
-])
-
-AC_DEFUN([gl_DIRNAME_LGPL],
-[
-  dnl Prerequisites of lib/dirname.h.
-  AC_REQUIRE([gl_DOUBLE_SLASH_ROOT])
-
-  dnl No prerequisites of lib/basename-lgpl.c, lib/dirname-lgpl.c,
-  dnl lib/stripslash.c.
-])
index 0c5afb17156d1da2ab3d1e03551f8ca6117b2805..c463ac41acaef8946b32fa89a760520888aa86f4 100644 (file)
@@ -1,5 +1,5 @@
 # double-slash-root.m4 serial 4   -*- Autoconf -*-
-dnl Copyright (C) 2006, 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2006, 2008-2020 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.
index b314247d3bc360bc460ac2bcd86f32e1f719e6d3..a82798d6bba898f299c3023ab24c5ab18895a302 100644 (file)
@@ -1,5 +1,5 @@
-#serial 25
-dnl Copyright (C) 2002, 2005, 2007, 2009-2019 Free Software Foundation, Inc.
+#serial 27
+dnl Copyright (C) 2002, 2005, 2007, 2009-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -8,107 +8,95 @@ AC_DEFUN([gl_FUNC_DUP2],
 [
   AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
   AC_REQUIRE([AC_CANONICAL_HOST])
-  m4_ifdef([gl_FUNC_DUP2_OBSOLETE], [
-    AC_CHECK_FUNCS_ONCE([dup2])
-    if test $ac_cv_func_dup2 = no; then
-      HAVE_DUP2=0
-    fi
-  ], [
-    AC_DEFINE([HAVE_DUP2], [1], [Define to 1 if you have the 'dup2' function.])
-  ])
-  if test $HAVE_DUP2 = 1; then
-    AC_CACHE_CHECK([whether dup2 works], [gl_cv_func_dup2_works],
-      [AC_RUN_IFELSE([
-         AC_LANG_PROGRAM(
-           [[#include <errno.h>
-             #include <fcntl.h>
-             #include <limits.h>
-             #include <sys/resource.h>
-             #include <unistd.h>
-             #ifndef RLIM_SAVED_CUR
-             # define RLIM_SAVED_CUR RLIM_INFINITY
-             #endif
-             #ifndef RLIM_SAVED_MAX
-             # define RLIM_SAVED_MAX RLIM_INFINITY
-             #endif
-           ]],
-           [[int result = 0;
-             int bad_fd = INT_MAX;
-             struct rlimit rlim;
-             if (getrlimit (RLIMIT_NOFILE, &rlim) == 0
-                 && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX
-                 && rlim.rlim_cur != RLIM_INFINITY
-                 && rlim.rlim_cur != RLIM_SAVED_MAX
-                 && rlim.rlim_cur != RLIM_SAVED_CUR)
-               bad_fd = rlim.rlim_cur;
-             #ifdef FD_CLOEXEC
-               if (fcntl (1, F_SETFD, FD_CLOEXEC) == -1)
-                 result |= 1;
-             #endif
-             if (dup2 (1, 1) != 1)
-               result |= 2;
-             #ifdef FD_CLOEXEC
-               if (fcntl (1, F_GETFD) != FD_CLOEXEC)
-                 result |= 4;
-             #endif
-             close (0);
-             if (dup2 (0, 0) != -1)
-               result |= 8;
-             /* Many gnulib modules require POSIX conformance of EBADF.  */
-             if (dup2 (2, bad_fd) == -1 && errno != EBADF)
-               result |= 16;
-             /* Flush out some cygwin core dumps.  */
-             if (dup2 (2, -1) != -1 || errno != EBADF)
-               result |= 32;
-             dup2 (2, 255);
-             dup2 (2, 256);
-             /* On OS/2 kLIBC, dup2() does not work on a directory fd.  */
-             {
-               int fd = open (".", O_RDONLY);
-               if (fd == -1)
-                 result |= 64;
-               else if (dup2 (fd, fd + 1) == -1)
-                 result |= 128;
-
-               close (fd);
-             }
-             return result;]])
-        ],
-        [gl_cv_func_dup2_works=yes], [gl_cv_func_dup2_works=no],
-        [case "$host_os" in
-           mingw*) # on this platform, dup2 always returns 0 for success
-             gl_cv_func_dup2_works="guessing no" ;;
-           cygwin*) # on cygwin 1.5.x, dup2(1,1) returns 0
-             gl_cv_func_dup2_works="guessing no" ;;
-           aix* | freebsd*)
-                   # on AIX 7.1 and FreeBSD 6.1, dup2 (1,toobig) gives EMFILE,
-                   # not EBADF.
-             gl_cv_func_dup2_works="guessing no" ;;
-           haiku*) # on Haiku alpha 2, dup2(1, 1) resets FD_CLOEXEC.
-             gl_cv_func_dup2_works="guessing no" ;;
-           *-android*) # implemented using dup3(), which fails if oldfd == newfd
-             gl_cv_func_dup2_works="guessing no" ;;
-           os2*) # on OS/2 kLIBC, dup2() does not work on a directory fd.
-             gl_cv_func_dup2_works="guessing no" ;;
-           *) gl_cv_func_dup2_works="guessing yes" ;;
-         esac])
-      ])
-    case "$gl_cv_func_dup2_works" in
-      *yes) ;;
-      *)
-        REPLACE_DUP2=1
-        AC_CHECK_FUNCS([setdtablesize])
-        ;;
-    esac
-  fi
+  AC_CACHE_CHECK([whether dup2 works], [gl_cv_func_dup2_works],
+    [AC_RUN_IFELSE([
+       AC_LANG_PROGRAM(
+         [[#include <errno.h>
+           #include <fcntl.h>
+           #include <limits.h>
+           #include <sys/resource.h>
+           #include <unistd.h>
+           ]GL_MDA_DEFINES[
+           #ifndef RLIM_SAVED_CUR
+           # define RLIM_SAVED_CUR RLIM_INFINITY
+           #endif
+           #ifndef RLIM_SAVED_MAX
+           # define RLIM_SAVED_MAX RLIM_INFINITY
+           #endif
+         ]],
+         [[int result = 0;
+           int bad_fd = INT_MAX;
+           struct rlimit rlim;
+           if (getrlimit (RLIMIT_NOFILE, &rlim) == 0
+               && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX
+               && rlim.rlim_cur != RLIM_INFINITY
+               && rlim.rlim_cur != RLIM_SAVED_MAX
+               && rlim.rlim_cur != RLIM_SAVED_CUR)
+             bad_fd = rlim.rlim_cur;
+           #ifdef FD_CLOEXEC
+             if (fcntl (1, F_SETFD, FD_CLOEXEC) == -1)
+               result |= 1;
+           #endif
+           if (dup2 (1, 1) != 1)
+             result |= 2;
+           #ifdef FD_CLOEXEC
+             if (fcntl (1, F_GETFD) != FD_CLOEXEC)
+               result |= 4;
+           #endif
+           close (0);
+           if (dup2 (0, 0) != -1)
+             result |= 8;
+           /* Many gnulib modules require POSIX conformance of EBADF.  */
+           if (dup2 (2, bad_fd) == -1 && errno != EBADF)
+             result |= 16;
+           /* Flush out some cygwin core dumps.  */
+           if (dup2 (2, -1) != -1 || errno != EBADF)
+             result |= 32;
+           dup2 (2, 255);
+           dup2 (2, 256);
+           /* On OS/2 kLIBC, dup2() does not work on a directory fd.  */
+           {
+             int fd = open (".", O_RDONLY);
+             if (fd == -1)
+               result |= 64;
+             else if (dup2 (fd, fd + 1) == -1)
+               result |= 128;
+             close (fd);
+           }
+           return result;]])
+      ],
+      [gl_cv_func_dup2_works=yes], [gl_cv_func_dup2_works=no],
+      [case "$host_os" in
+         mingw*) # on this platform, dup2 always returns 0 for success
+           gl_cv_func_dup2_works="guessing no" ;;
+         cygwin*) # on cygwin 1.5.x, dup2(1,1) returns 0
+           gl_cv_func_dup2_works="guessing no" ;;
+         aix* | freebsd*)
+                 # on AIX 7.1 and FreeBSD 6.1, dup2 (1,toobig) gives EMFILE,
+                 # not EBADF.
+           gl_cv_func_dup2_works="guessing no" ;;
+         haiku*) # on Haiku alpha 2, dup2(1, 1) resets FD_CLOEXEC.
+           gl_cv_func_dup2_works="guessing no" ;;
+         *-android*) # implemented using dup3(), which fails if oldfd == newfd
+           gl_cv_func_dup2_works="guessing no" ;;
+         os2*) # on OS/2 kLIBC, dup2() does not work on a directory fd.
+           gl_cv_func_dup2_works="guessing no" ;;
+         *) gl_cv_func_dup2_works="guessing yes" ;;
+       esac])
+    ])
+  case "$gl_cv_func_dup2_works" in
+    *yes) ;;
+    *)
+      REPLACE_DUP2=1
+      AC_CHECK_FUNCS([setdtablesize])
+      ;;
+  esac
   dnl Replace dup2() for supporting the gnulib-defined fchdir() function,
   dnl to keep fchdir's bookkeeping up-to-date.
   m4_ifdef([gl_FUNC_FCHDIR], [
     gl_TEST_FCHDIR
     if test $HAVE_FCHDIR = 0; then
-      if test $HAVE_DUP2 = 1; then
-        REPLACE_DUP2=1
-      fi
+      REPLACE_DUP2=1
     fi
   ])
 ])
index 2a4b120a172fac47269c524aaede94ad732d99e7..236f373c564f61551ab5e517283d11577c89773d 100644 (file)
@@ -1,5 +1,5 @@
 # eealloc.m4 serial 3
-dnl Copyright (C) 2003, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2003, 2009-2020 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.
index c1a6fa374687cd913d317e73d3c48d87fe416846..bab85f13404bb01036f97a6585307e053eea5b16 100644 (file)
@@ -1,5 +1,5 @@
 # environ.m4 serial 7
-dnl Copyright (C) 2001-2004, 2006-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2001-2004, 2006-2020 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.
index 2388854e05731abe0edc9a58164280cdfd0c782a..dd4994f3d5d33ed098c206e324541a54f34d38ea 100644 (file)
@@ -1,5 +1,5 @@
 # errno_h.m4 serial 13
-dnl Copyright (C) 2004, 2006, 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2004, 2006, 2008-2020 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.
index 393adb54c64e4bd366957bba64626eebb6631986..60c229d5add534e773da03f128e16c8337acfb9c 100644 (file)
@@ -1,6 +1,6 @@
 #serial 14
 
-# Copyright (C) 1996-1998, 2001-2004, 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 1996-1998, 2001-2004, 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
index fd1ce817f069f4841643f53e20ca060773b2ed6b..31790801e558bbab0d01cda29d694a70cae89fba 100644 (file)
@@ -1,7 +1,7 @@
-# serial 18  -*- Autoconf -*-
+# serial 20  -*- Autoconf -*-
 # Enable extensions on systems that normally disable them.
 
-# Copyright (C) 2003, 2006-2019 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2006-2020 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.
@@ -177,13 +177,5 @@ dnl configure.ac when using autoheader 2.62.
 # typically due to standards-conformance issues.
 AC_DEFUN_ONCE([gl_USE_SYSTEM_EXTENSIONS],
 [
-  dnl Require this macro before AC_USE_SYSTEM_EXTENSIONS.
-  dnl gnulib does not need it. But if it gets required by third-party macros
-  dnl after AC_USE_SYSTEM_EXTENSIONS is required, autoconf 2.62..2.63 emit a
-  dnl warning: "AC_COMPILE_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS".
-  dnl Note: We can do this only for one of the macros AC_AIX, AC_GNU_SOURCE,
-  dnl AC_MINIX. If people still use AC_AIX or AC_MINIX, they are out of luck.
-  AC_REQUIRE([AC_GNU_SOURCE])
-
   AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
 ])
index ec9f2218bf33c31f37ca41f8a914116d055010a0..75c50087bd011418f36eca0ce0c648745cc07923 100644 (file)
@@ -1,6 +1,6 @@
 dnl 'extern inline' a la ISO C99.
 
-dnl Copyright 2012-2019 Free Software Foundation, Inc.
+dnl Copyright 2012-2020 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,7 +32,7 @@ AC_DEFUN([gl_EXTERN_INLINE],
      https://lists.gnu.org/r/bug-gnulib/2012-12/msg00023.html
 
      DragonFly; see
-     http://muscles.dragonflybsd.org/bulk/bleeding-edge-potential/latest-per-pkg/ah-tty-0.3.12.log
+     http://muscles.dragonflybsd.org/bulk/clang-master-potential/20141111_102002/logs/ah-tty-0.3.12.log
 
      FreeBSD; see:
      https://lists.gnu.org/r/bug-gnulib/2014-07/msg00104.html
index 6ab3387dafab1f7105fb0f4c019fa6822982026f..3ef061d84875f0a01b39876dc8a7061ec6efa3d3 100644 (file)
@@ -1,5 +1,5 @@
-# fcntl-o.m4 serial 6
-dnl Copyright (C) 2006, 2009-2019 Free Software Foundation, Inc.
+# fcntl-o.m4 serial 7
+dnl Copyright (C) 2006, 2009-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -32,6 +32,7 @@ AC_DEFUN([gl_FCNTL_O_FLAGS],
            # defined sleep(n) _sleep ((n) * 1000)
            #endif
            #include <fcntl.h>
+           ]GL_MDA_DEFINES[
            #ifndef O_NOATIME
             #define O_NOATIME 0
            #endif
index e409e96b1c8975bd986579882ed413079833f82d..547ff40b804f0e9f936a20aa94b7f30b359dc316 100644 (file)
@@ -1,5 +1,5 @@
-# fcntl.m4 serial 9
-dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# fcntl.m4 serial 11
+dnl Copyright (C) 2009-2020 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.
@@ -34,6 +34,7 @@ AC_DEFUN([gl_FUNC_FCNTL],
               #include <limits.h>
               #include <sys/resource.h>
               #include <unistd.h>
+              ]GL_MDA_DEFINES[
               #ifndef RLIM_SAVED_CUR
               # define RLIM_SAVED_CUR RLIM_INFINITY
               #endif
@@ -80,15 +81,29 @@ AC_DEFUN([gl_FUNC_FCNTL],
           behavior does not match POSIX]) ;;
     esac
 
-    dnl Many systems lack F_DUPFD_CLOEXEC
+    dnl Many systems lack F_DUPFD_CLOEXEC.
+    dnl NetBSD 9.0 declares F_DUPFD_CLOEXEC but it works only like F_DUPFD.
     AC_CACHE_CHECK([whether fcntl understands F_DUPFD_CLOEXEC],
       [gl_cv_func_fcntl_f_dupfd_cloexec],
-      [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <fcntl.h>
-#ifndef F_DUPFD_CLOEXEC
-choke me
-#endif
-         ]])],
+      [AC_RUN_IFELSE(
+         [AC_LANG_SOURCE(
+            [[#include <fcntl.h>
+              #include <unistd.h>
+              int main (int argc, char *argv[])
+              {
+                if (argc == 1)
+                  /* parent process */
+                  {
+                    if (fcntl (1, F_DUPFD_CLOEXEC, 10) < 0)
+                      return 1;
+                    return execl ("./conftest", "./conftest", "child", NULL);
+                  }
+                else
+                  /* child process */
+                  return (fcntl (10, F_GETFL) < 0 ? 0 : 42);
+              }
+            ]])
+         ],
          [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
 #ifdef __linux__
 /* The Linux kernel only added F_DUPFD_CLOEXEC in 2.6.24, so we always replace
@@ -97,12 +112,22 @@ choke me
 #endif
            ]])],
            [gl_cv_func_fcntl_f_dupfd_cloexec=yes],
-           [gl_cv_func_fcntl_f_dupfd_cloexec="needs runtime check"])],
-         [gl_cv_func_fcntl_f_dupfd_cloexec=no])])
-    if test "$gl_cv_func_fcntl_f_dupfd_cloexec" != yes; then
-      gl_REPLACE_FCNTL
-      dnl No witness macro needed for this bug.
-    fi
+           [gl_cv_func_fcntl_f_dupfd_cloexec="needs runtime check"])
+         ],
+         [gl_cv_func_fcntl_f_dupfd_cloexec=no],
+         [case "$host_os" in
+                     # Guess no on NetBSD.
+            netbsd*) gl_cv_func_fcntl_f_dupfd_cloexec="guessing no" ;;
+            *)       gl_cv_func_fcntl_f_dupfd_cloexec="$gl_cross_guess_normal" ;;
+          esac
+         ])
+      ])
+    case "$gl_cv_func_fcntl_f_dupfd_cloexec" in
+      *yes) ;;
+      *)    gl_REPLACE_FCNTL
+            dnl No witness macro needed for this bug.
+            ;;
+    esac
   fi
   dnl Replace fcntl() for supporting the gnulib-defined fchdir() function,
   dnl to keep fchdir's bookkeeping up-to-date.
index a86fdae5feb6ba160c068261d5d0a54814c95fa2..6b253937fd1c24525dc31897f05c49d8e38b069f 100644 (file)
@@ -1,6 +1,6 @@
-# serial 15
+# serial 16
 # Configure fcntl.h.
-dnl Copyright (C) 2006-2007, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2006-2007, 2009-2020 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,7 @@ AC_DEFUN([gl_FCNTL_MODULE_INDICATOR],
 
 AC_DEFUN([gl_FCNTL_H_DEFAULTS],
 [
+  GNULIB_CREAT=0;        AC_SUBST([GNULIB_CREAT])
   GNULIB_FCNTL=0;        AC_SUBST([GNULIB_FCNTL])
   GNULIB_NONBLOCKING=0;  AC_SUBST([GNULIB_NONBLOCKING])
   GNULIB_OPEN=0;         AC_SUBST([GNULIB_OPEN])
@@ -44,6 +45,7 @@ AC_DEFUN([gl_FCNTL_H_DEFAULTS],
   dnl Assume proper GNU behavior unless another module says otherwise.
   HAVE_FCNTL=1;          AC_SUBST([HAVE_FCNTL])
   HAVE_OPENAT=1;         AC_SUBST([HAVE_OPENAT])
+  REPLACE_CREAT=0;       AC_SUBST([REPLACE_CREAT])
   REPLACE_FCNTL=0;       AC_SUBST([REPLACE_FCNTL])
   REPLACE_OPEN=0;        AC_SUBST([REPLACE_OPEN])
   REPLACE_OPENAT=0;      AC_SUBST([REPLACE_OPENAT])
index 06b43f668727b3e74eb4319d26c919988f76d4d2..f4d44259706163b61f563cbb7b9233b9e71c79cb 100644 (file)
@@ -1,5 +1,5 @@
-# fdopen.m4 serial 4
-dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
+# fdopen.m4 serial 5
+dnl Copyright (C) 2011-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -22,6 +22,7 @@ AC_DEFUN([gl_FUNC_FDOPEN],
           [AC_LANG_SOURCE([[
 #include <stdio.h>
 #include <errno.h>
+]GL_MDA_DEFINES[
 int
 main (void)
 {
index c245ab025f61eddc56a209f25a53ee38fad39e73..90f3dddc6601556051cd39bab10d0988b36b454a 100644 (file)
@@ -1,7 +1,7 @@
 # serial 5
 # Check for flexible array member support.
 
-# Copyright (C) 2006, 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2006, 2009-2020 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.
index 402ec4033164cc85e915079a35080c1f4b231e13..edabcec5f0be3bfc84e5e75c1197ac209a3b7ee8 100644 (file)
@@ -1,6 +1,6 @@
-# serial 22
+# serial 23
 
-# Copyright (C) 2000-2001, 2004-2019 Free Software Foundation, Inc.
+# Copyright (C) 2000-2001, 2004-2020 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.
@@ -25,7 +25,7 @@ AC_DEFUN([gl_FUNC_FPENDING],
   AC_CACHE_CHECK([for __fpending], [gl_cv_func___fpending],
     [
       AC_LINK_IFELSE(
-        [AC_LANG_PROGRAM([$fp_headers],
+        [AC_LANG_PROGRAM([[$fp_headers]],
            [[return ! __fpending (stdin);]])],
         [gl_cv_func___fpending=yes],
         [gl_cv_func___fpending=no])
index 2a59c8ff4063d07ddb60c25906bd21e351d7f78a..bd8cb7966215737d7c6b843352aa05d21669f2b6 100644 (file)
@@ -1,5 +1,5 @@
-# fstat.m4 serial 6
-dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
+# fstat.m4 serial 7
+dnl Copyright (C) 2011-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -35,5 +35,6 @@ AC_DEFUN([gl_FUNC_FSTAT],
 # Prerequisites of lib/fstat.c and lib/stat-w32.c.
 AC_DEFUN([gl_PREREQ_FSTAT], [
   AC_REQUIRE([gl_HEADER_SYS_STAT_H])
+  AC_REQUIRE([gl_PREREQ_STAT_W32])
   :
 ])
index 1b94a258f9716ffb330ebe0619e5ba0cc0a5debd..c86c0e6a53d024c79f11c40525c83c39a98b2de7 100644 (file)
@@ -1,5 +1,5 @@
 # fsync.m4 serial 2
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2020 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.
index 5151bdcafe5ace1019c13af18c73cbe48119cdb1..752b0dd4ebb0ba99aa46e8f2a5e093726282da0c 100644 (file)
@@ -1,8 +1,8 @@
-# serial 20
+# serial 21
 
-# See if we need to emulate a missing ftruncate function using chsize.
+# See if we need to emulate a missing ftruncate function using _chsize.
 
-# Copyright (C) 2000-2001, 2003-2007, 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2000-2001, 2003-2007, 2009-2020 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.
@@ -20,7 +20,7 @@ AC_DEFUN([gl_FUNC_FTRUNCATE],
           dnl The MSVCRT _chsize() function only accepts a 32-bit file size,
           dnl and the mingw64 ftruncate64() function is unreliable (it may
           dnl delete the file, see
-          dnl <http://mingw-w64.sourcearchive.com/documentation/2.0-1/ftruncate64_8c_source.html>).
+          dnl <https://web.archive.org/web/20160425005423/http://mingw-w64.sourcearchive.com/documentation/2.0-1/ftruncate64_8c_source.html>).
           dnl Use gnulib's ftruncate() implementation instead.
           REPLACE_FTRUNCATE=1
           ;;
@@ -36,5 +36,5 @@ AC_DEFUN([gl_FUNC_FTRUNCATE],
 # Prerequisites of lib/ftruncate.c.
 AC_DEFUN([gl_PREREQ_FTRUNCATE],
 [
-  AC_CHECK_FUNCS([chsize])
+  AC_CHECK_FUNCS([_chsize])
 ])
index 625171a2fa93b1c3ca6e8cecdc042520dfec14f0..a646b90a32bfebd962434b1eb36d3529799b0440 100644 (file)
@@ -1,12 +1,12 @@
 # getcwd.m4 - check for working getcwd that is compatible with glibc
 
-# Copyright (C) 2001, 2003-2007, 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003-2007, 2009-2020 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
 # Written by Paul Eggert.
-# serial 17
+# serial 19
 
 AC_DEFUN([gl_FUNC_GETCWD_NULL],
   [
@@ -21,12 +21,13 @@ AC_DEFUN([gl_FUNC_GETCWD_NULL],
 #        else /* on Windows with MSVC */
 #         include <direct.h>
 #        endif
+         ]GL_MDA_DEFINES[
 #        ifndef getcwd
          char *getcwd ();
 #        endif
 ]], [[
 #if defined _WIN32 && ! defined __CYGWIN__
-/* mingw cwd does not start with '/', but getcwd does allocate.
+/* mingw cwd does not start with '/', but _getcwd does allocate.
    However, mingw fails to honor non-zero size.  */
 #else
            if (chdir ("/") != 0)
@@ -54,8 +55,8 @@ AC_DEFUN([gl_FUNC_GETCWD_NULL],
             *-musl*)       gl_cv_func_getcwd_null="guessing yes";;
                            # Guess yes on Cygwin.
             cygwin*)       gl_cv_func_getcwd_null="guessing yes";;
-                           # If we don't know, assume the worst.
-            *)             gl_cv_func_getcwd_null="guessing no";;
+                           # If we don't know, obey --enable-cross-guesses.
+            *)             gl_cv_func_getcwd_null="$gl_cross_guess_normal";;
           esac
         ]])])
 ])
@@ -66,7 +67,8 @@ AC_DEFUN([gl_FUNC_GETCWD_SIGNATURE],
     [gl_cv_func_getcwd_posix_signature],
     [AC_COMPILE_IFELSE(
       [AC_LANG_PROGRAM(
-         [[#include <unistd.h>]],
+         [[#include <unistd.h>
+         ]GL_MDA_DEFINES],
          [[extern
            #ifdef __cplusplus
            "C"
@@ -127,7 +129,7 @@ AC_DEFUN([gl_FUNC_GETCWD],
   dnl Define HAVE_MINIMALLY_WORKING_GETCWD and HAVE_PARTLY_WORKING_GETCWD
   dnl if appropriate.
   case "$gl_cv_func_getcwd_path_max" in
-    "no"|"no, it has the AIX bug") ;;
+    *"no" | *"no, it has the AIX bug") ;;
     *)
       AC_DEFINE([HAVE_MINIMALLY_WORKING_GETCWD], [1],
         [Define to 1 if getcwd minimally works, that is, its result can be
@@ -135,12 +137,12 @@ AC_DEFUN([gl_FUNC_GETCWD],
       ;;
   esac
   case "$gl_cv_func_getcwd_path_max" in
-    "no, but it is partly working")
+    *"no, but it is partly working")
       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.])
       ;;
-    "yes, but with shorter paths")
+    *"yes, but with shorter paths")
       AC_DEFINE([HAVE_GETCWD_SHORTER], [1],
         [Define to 1 if getcwd works, but with shorter paths
          than is generally tested with the replacement.])
index 96aa241b1922bc9013340f67cced8b2a73d350f7..af328644adb91a7a2253d7defc1905481639e09a 100644 (file)
@@ -1,5 +1,5 @@
-# getdtablesize.m4 serial 7
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+# getdtablesize.m4 serial 8
+dnl Copyright (C) 2008-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -29,13 +29,16 @@ AC_DEFUN([gl_FUNC_GETDTABLESIZE],
            dnl correctly require setrlimit before getdtablesize() can report
            dnl a larger value.
            AC_RUN_IFELSE([
-             AC_LANG_PROGRAM([[#include <unistd.h>]],
-               [int size = getdtablesize();
-                if (dup2 (0, getdtablesize()) != -1)
-                  return 1;
-                if (size != getdtablesize())
-                  return 2;
-               ])],
+             AC_LANG_PROGRAM(
+               [[#include <unistd.h>]
+                GL_MDA_DEFINES
+               ],
+               [[int size = getdtablesize();
+                 if (dup2 (0, getdtablesize()) != -1)
+                   return 1;
+                 if (size != getdtablesize())
+                   return 2;
+               ]])],
              [gl_cv_func_getdtablesize_works=yes],
              [gl_cv_func_getdtablesize_works=no],
              [case "$host_os" in
index 5991bf83e8916c9ed24895f2b3a2af8ff3c69d42..595483d58cbff7513604f9ed86c2d32db911c584 100644 (file)
@@ -1,5 +1,5 @@
-# getopt.m4 serial 46
-dnl Copyright (C) 2002-2006, 2008-2019 Free Software Foundation, Inc.
+# getopt.m4 serial 47
+dnl Copyright (C) 2002-2006, 2008-2020 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.
@@ -302,8 +302,10 @@ dnl is ambiguous with environment values that contain newlines.
            ]])],
         [gl_cv_func_getopt_gnu=yes],
         [gl_cv_func_getopt_gnu=no],
-        [dnl Cross compiling. Assume the worst, even on glibc platforms.
-         gl_cv_func_getopt_gnu="guessing no"
+        [dnl Cross compiling.
+         dnl Assume the worst, even on glibc platforms.
+         dnl But obey --enable-cross-guesses.
+         gl_cv_func_getopt_gnu="$gl_cross_guess_normal"
         ])
        case $gl_had_POSIXLY_CORRECT in
          exported) ;;
index 546c3ad11ebee5e916c416dd821c5f37846bc241..8f0f0468811250b687f0494a1fcea0d7125c782b 100644 (file)
@@ -1,5 +1,5 @@
 # getpagesize.m4 serial 10
-dnl Copyright (C) 2002, 2004-2005, 2007, 2009-2019 Free Software Foundation,
+dnl Copyright (C) 2002, 2004-2005, 2007, 2009-2020 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,
index 4a96d066aa3da7f37c8a78959aefabae1c815b20..6baefc91c6242e31c1f337368385e70083dda61a 100644 (file)
@@ -1,6 +1,6 @@
 # getprogname.m4 - check for getprogname or replacements for it
 
-# Copyright (C) 2016-2019 Free Software Foundation, Inc.
+# Copyright (C) 2016-2020 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
diff --git a/m4/getrandom.m4 b/m4/getrandom.m4
new file mode 100644 (file)
index 0000000..d6da71a
--- /dev/null
@@ -0,0 +1,68 @@
+# getrandom.m4 serial 8
+dnl Copyright 2020 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl Written by Paul Eggert.
+
+AC_DEFUN([gl_FUNC_GETRANDOM],
+[
+  AC_REQUIRE([gl_SYS_RANDOM_H_DEFAULTS])
+  AC_CHECK_FUNCS_ONCE([getrandom])
+  if test "$ac_cv_func_getrandom" != yes; then
+    HAVE_GETRANDOM=0
+  else
+    dnl On Solaris 11.4 the return type is 'int', not 'ssize_t'.
+    AC_CACHE_CHECK([whether getrandom is compatible with its GNU+BSD signature],
+      [gl_cv_func_getrandom_ok],
+      [AC_COMPILE_IFELSE(
+         [AC_LANG_PROGRAM(
+            [[/* Additional includes are needed before <sys/random.h> on uClibc
+                 and Mac OS X.  */
+              #include <sys/types.h>
+              #include <stdlib.h>
+              #include <sys/random.h>
+              ssize_t getrandom (void *, size_t, unsigned int);
+            ]],
+            [[]])
+         ],
+         [gl_cv_func_getrandom_ok=yes],
+         [gl_cv_func_getrandom_ok=no])
+      ])
+    if test $gl_cv_func_getrandom_ok = no; then
+      REPLACE_GETRANDOM=1
+    fi
+  fi
+
+  case "$host_os" in
+    mingw*)
+      AC_CHECK_HEADERS([bcrypt.h], [], [],
+        [[#include <windows.h>
+        ]])
+      AC_CACHE_CHECK([whether the bcrypt library is guaranteed to be present],
+        [gl_cv_lib_assume_bcrypt],
+        [AC_COMPILE_IFELSE(
+           [AC_LANG_PROGRAM(
+              [[#include <windows.h>]],
+              [[#if !(_WIN32_WINNT >= _WIN32_WINNT_WIN7)
+                  cannot assume it
+                #endif
+              ]])
+           ],
+           [gl_cv_lib_assume_bcrypt=yes],
+           [gl_cv_lib_assume_bcrypt=no])
+        ])
+      if test $gl_cv_lib_assume_bcrypt = yes; then
+        AC_DEFINE([HAVE_LIB_BCRYPT], [1],
+          [Define to 1 if the bcrypt library is guaranteed to be present.])
+        LIB_GETRANDOM='-lbcrypt'
+      else
+        LIB_GETRANDOM='-ladvapi32'
+      fi
+      ;;
+    *)
+      LIB_GETRANDOM= ;;
+  esac
+  AC_SUBST([LIB_GETRANDOM])
+])
index 5e2ef6f47e2f3cbd56e9dbdbb3e151cfed1b80d3..578ed49b077c3ddf11e2e7ade438d8d15076bfc3 100644 (file)
@@ -1,6 +1,6 @@
-# serial 26
+# serial 28
 
-# Copyright (C) 2001-2003, 2005, 2007, 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2001-2003, 2005, 2007, 2009-2020 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.
@@ -19,7 +19,6 @@ AC_DEFUN([gl_FUNC_GETTIMEOFDAY],
   if test $ac_cv_func_gettimeofday != yes; then
     HAVE_GETTIMEOFDAY=0
   else
-    gl_FUNC_GETTIMEOFDAY_CLOBBER
     AC_CACHE_CHECK([for gettimeofday with POSIX signature],
       [gl_cv_func_gettimeofday_posix_signature],
       [AC_COMPILE_IFELSE(
@@ -66,63 +65,5 @@ int gettimeofday (struct timeval *restrict, struct timezone *restrict);
      declaration of the second argument to gettimeofday.])
 ])
 
-
-dnl See if gettimeofday clobbers the static buffer that localtime uses
-dnl for its return value.  The gettimeofday function from Mac OS X 10.0.4
-dnl (i.e., Darwin 1.3.7) has this problem.
-dnl
-dnl If it does, then arrange to use gettimeofday and localtime only via
-dnl the wrapper functions that work around the problem.
-
-AC_DEFUN([gl_FUNC_GETTIMEOFDAY_CLOBBER],
-[
- AC_REQUIRE([gl_HEADER_SYS_TIME_H])
- AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
- AC_REQUIRE([gl_LOCALTIME_BUFFER_DEFAULTS])
-
- AC_CACHE_CHECK([whether gettimeofday clobbers localtime buffer],
-  [gl_cv_func_gettimeofday_clobber],
-  [AC_RUN_IFELSE(
-     [AC_LANG_PROGRAM(
-        [[#include <string.h>
-          #include <sys/time.h>
-          #include <time.h>
-          #include <stdlib.h>
-        ]],
-        [[
-          time_t t = 0;
-          struct tm *lt;
-          struct tm saved_lt;
-          struct timeval tv;
-          lt = localtime (&t);
-          saved_lt = *lt;
-          gettimeofday (&tv, NULL);
-          return memcmp (lt, &saved_lt, sizeof (struct tm)) != 0;
-        ]])],
-     [gl_cv_func_gettimeofday_clobber=no],
-     [gl_cv_func_gettimeofday_clobber=yes],
-     [# When cross-compiling:
-      case "$host_os" in
-                       # Guess all is fine on glibc systems.
-        *-gnu* | gnu*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
-                       # Guess all is fine on musl systems.
-        *-musl*)       gl_cv_func_gettimeofday_clobber="guessing no" ;;
-                       # Guess no on native Windows.
-        mingw*)        gl_cv_func_gettimeofday_clobber="guessing no" ;;
-                       # If we don't know, assume the worst.
-        *)             gl_cv_func_gettimeofday_clobber="guessing yes" ;;
-      esac
-     ])])
-
- case "$gl_cv_func_gettimeofday_clobber" in
-   *yes)
-     REPLACE_GETTIMEOFDAY=1
-     AC_DEFINE([GETTIMEOFDAY_CLOBBERS_LOCALTIME], [1],
-       [Define if gettimeofday clobbers the localtime buffer.])
-     gl_LOCALTIME_BUFFER_NEEDED
-     ;;
- esac
-])
-
 # Prerequisites of lib/gettimeofday.c.
 AC_DEFUN([gl_PREREQ_GETTIMEOFDAY], [:])
index 0ab0f235a66224be382dfaacade43e977f3a3855..ece484b5ae93034b9214fc06c5d594c8947257dd 100644 (file)
@@ -1,5 +1,5 @@
 # glibc21.m4 serial 5
-dnl Copyright (C) 2000-2002, 2004, 2008, 2010-2019 Free Software Foundation,
+dnl Copyright (C) 2000-2002, 2004, 2008, 2010-2020 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,
index 57b94ed53256c3df5bbcd1b674fb2cad3693d793..8a40713c07b6a759fa05be87284ec7465874e9c7 100644 (file)
@@ -1,5 +1,5 @@
-# gnulib-common.m4 serial 44
-dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
+# gnulib-common.m4 serial 62
+dnl Copyright (C) 2007-2020 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,20 +12,40 @@ AC_DEFUN([gl_COMMON], [
   dnl Use AC_REQUIRE here, so that the code is expanded once only.
   AC_REQUIRE([gl_00GNULIB])
   AC_REQUIRE([gl_COMMON_BODY])
+  AC_REQUIRE([gl_ZZGNULIB])
 ])
 AC_DEFUN([gl_COMMON_BODY], [
+  AH_VERBATIM([_GL_GNUC_PREREQ],
+[/* True if the compiler says it groks GNU C version MAJOR.MINOR.  */
+#if defined __GNUC__ && defined __GNUC_MINOR__
+# define _GL_GNUC_PREREQ(major, minor) \
+    ((major) < __GNUC__ + ((minor) <= __GNUC_MINOR__))
+#else
+# define _GL_GNUC_PREREQ(major, minor) 0
+#endif
+])
   AH_VERBATIM([_Noreturn],
 [/* The _Noreturn keyword of C11.  */
 #ifndef _Noreturn
 # if (defined __cplusplus \
       && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \
-          || (defined _MSC_VER && 1900 <= _MSC_VER)))
+          || (defined _MSC_VER && 1900 <= _MSC_VER)) \
+      && 0)
+    /* [[noreturn]] is not practically usable, because with it the syntax
+         extern _Noreturn void func (...);
+       would not be valid; such a declaration would only be valid with 'extern'
+       and '_Noreturn' swapped, or without the 'extern' keyword.  However, some
+       AIX system header files and several gnulib header files use precisely
+       this syntax with 'extern'.  */
 #  define _Noreturn [[noreturn]]
 # elif ((!defined __cplusplus || defined __clang__) \
         && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0)  \
-            || 4 < __GNUC__ + (7 <= __GNUC_MINOR__)))
+            || _GL_GNUC_PREREQ (4, 7) \
+            || (defined __apple_build_version__ \
+                ? 6000000 <= __apple_build_version__ \
+                : 3 < __clang_major__ + (5 <= __clang_minor__))))
    /* _Noreturn works as-is.  */
-# elif 2 < __GNUC__ + (8 <= __GNUC_MINOR__) || 0x5110 <= __SUNPRO_C
+# elif _GL_GNUC_PREREQ (2, 8) || defined __clang__ || 0x5110 <= __SUNPRO_C
 #  define _Noreturn __attribute__ ((__noreturn__))
 # elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0)
 #  define _Noreturn __declspec (noreturn)
@@ -44,48 +64,216 @@ AC_DEFUN([gl_COMMON_BODY], [
 #if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__
 # define __GNUC_STDC_INLINE__ 1
 #endif])
-  AH_VERBATIM([unused_parameter],
-[/* Define as a marker that can be attached to declarations that might not
-    be used.  This helps to reduce warnings, such as from
-    GCC -Wunused-parameter.  */
-#if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
-# define _GL_UNUSED __attribute__ ((__unused__))
+  AH_VERBATIM([attribute],
+[/* Attributes.  */
+#ifdef __has_attribute
+# define _GL_HAS_ATTRIBUTE(attr) __has_attribute (__##attr##__)
 #else
-# define _GL_UNUSED
+# define _GL_HAS_ATTRIBUTE(attr) _GL_ATTR_##attr
+# define _GL_ATTR_alloc_size _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_always_inline _GL_GNUC_PREREQ (3, 2)
+# define _GL_ATTR_artificial _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_cold _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_const _GL_GNUC_PREREQ (2, 95)
+# define _GL_ATTR_deprecated _GL_GNUC_PREREQ (3, 1)
+# define _GL_ATTR_diagnose_if 0
+# define _GL_ATTR_error _GL_GNUC_PREREQ (4, 3)
+# define _GL_ATTR_externally_visible _GL_GNUC_PREREQ (4, 1)
+# define _GL_ATTR_fallthrough _GL_GNUC_PREREQ (7, 0)
+# define _GL_ATTR_format _GL_GNUC_PREREQ (2, 7)
+# define _GL_ATTR_leaf _GL_GNUC_PREREQ (4, 6)
+# ifdef _ICC
+#  define _GL_ATTR_may_alias 0
+# else
+#  define _GL_ATTR_may_alias _GL_GNUC_PREREQ (3, 3)
+# endif
+# define _GL_ATTR_malloc _GL_GNUC_PREREQ (3, 0)
+# define _GL_ATTR_noinline _GL_GNUC_PREREQ (3, 1)
+# define _GL_ATTR_nonnull _GL_GNUC_PREREQ (3, 3)
+# define _GL_ATTR_nonstring _GL_GNUC_PREREQ (8, 0)
+# define _GL_ATTR_nothrow _GL_GNUC_PREREQ (3, 3)
+# define _GL_ATTR_packed _GL_GNUC_PREREQ (2, 7)
+# define _GL_ATTR_pure _GL_GNUC_PREREQ (2, 96)
+# define _GL_ATTR_returns_nonnull _GL_GNUC_PREREQ (4, 9)
+# define _GL_ATTR_sentinel _GL_GNUC_PREREQ (4, 0)
+# define _GL_ATTR_unused _GL_GNUC_PREREQ (2, 7)
+# define _GL_ATTR_warn_unused_result _GL_GNUC_PREREQ (3, 4)
 #endif
-/* The name _UNUSED_PARAMETER_ is an earlier spelling, although the name
-   is a misnomer outside of parameter lists.  */
-#define _UNUSED_PARAMETER_ _GL_UNUSED
-
-/* gcc supports the "unused" attribute on possibly unused labels, and
-   g++ has since version 4.5.  Note to support C++ as well as C,
-   _GL_UNUSED_LABEL should be used with a trailing ;  */
-#if !defined __cplusplus || __GNUC__ > 4 \
-    || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5)
-# define _GL_UNUSED_LABEL _GL_UNUSED
+
+]dnl There is no _GL_ATTRIBUTE_ALIGNED; use stdalign's _Alignas instead.
+[
+#if _GL_HAS_ATTRIBUTE (alloc_size)
+# define _GL_ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args))
 #else
-# define _GL_UNUSED_LABEL
+# define _GL_ATTRIBUTE_ALLOC_SIZE(args)
 #endif
 
-/* The __pure__ attribute was added in gcc 2.96.  */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)
-# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
+#if _GL_HAS_ATTRIBUTE (always_inline)
+# define _GL_ATTRIBUTE_ALWAYS_INLINE __attribute__ ((__always_inline__))
+#else
+# define _GL_ATTRIBUTE_ALWAYS_INLINE
+#endif
+
+#if _GL_HAS_ATTRIBUTE (artificial)
+# define _GL_ATTRIBUTE_ARTIFICIAL __attribute__ ((__artificial__))
+#else
+# define _GL_ATTRIBUTE_ARTIFICIAL
+#endif
+
+/* Avoid __attribute__ ((cold)) on MinGW; see thread starting at
+   <https://lists.gnu.org/r/emacs-devel/2019-04/msg01152.html>.
+   Also, Oracle Studio 12.6 requires 'cold' not '__cold__'.  */
+#if _GL_HAS_ATTRIBUTE (cold) && !defined __MINGW32__
+# ifndef __SUNPRO_C
+#  define _GL_ATTRIBUTE_COLD __attribute__ ((__cold__))
+# else
+#  define _GL_ATTRIBUTE_COLD __attribute__ ((cold))
+# endif
 #else
-# define _GL_ATTRIBUTE_PURE /* empty */
+# define _GL_ATTRIBUTE_COLD
 #endif
 
-/* The __const__ attribute was added in gcc 2.95.  */
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
+#if _GL_HAS_ATTRIBUTE (const)
 # define _GL_ATTRIBUTE_CONST __attribute__ ((__const__))
 #else
-# define _GL_ATTRIBUTE_CONST /* empty */
+# define _GL_ATTRIBUTE_CONST
+#endif
+
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_DEPRECATED [[__deprecated__]]
+#elif _GL_HAS_ATTRIBUTE (deprecated)
+# define _GL_ATTRIBUTE_DEPRECATED __attribute__ ((__deprecated__))
+#else
+# define _GL_ATTRIBUTE_DEPRECATED
+#endif
+
+#if _GL_HAS_ATTRIBUTE (error)
+# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__error__ (msg)))
+# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__warning__ (msg)))
+#elif _GL_HAS_ATTRIBUTE (diagnose_if)
+# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__diagnose_if__ (1, msg, "error")))
+# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__diagnose_if__ (1, msg, "warning")))
+#else
+# define _GL_ATTRIBUTE_ERROR(msg)
+# define _GL_ATTRIBUTE_WARNING(msg)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (externally_visible)
+# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE __attribute__ ((externally_visible))
+#else
+# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE
+#endif
+
+/* FALLTHROUGH is special, because it always expands to something.  */
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_FALLTHROUGH [[__fallthrough__]]
+#elif _GL_HAS_ATTRIBUTE (fallthrough)
+# define _GL_ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__))
+#else
+# define _GL_ATTRIBUTE_FALLTHROUGH ((void) 0)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (format)
+# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
+#else
+# define _GL_ATTRIBUTE_FORMAT(spec)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (leaf)
+# define _GL_ATTRIBUTE_LEAF __attribute__ ((__leaf__))
+#else
+# define _GL_ATTRIBUTE_LEAF
+#endif
+
+/* Oracle Studio 12.6 mishandles may_alias despite __has_attribute OK.  */
+#if _GL_HAS_ATTRIBUTE (may_alias) && !defined __SUNPRO_C
+# define _GL_ATTRIBUTE_MAY_ALIAS __attribute__ ((__may_alias__))
+#else
+# define _GL_ATTRIBUTE_MAY_ALIAS
 #endif
 
-/* The __malloc__ attribute was added in gcc 3.  */
-#if 3 <= __GNUC__
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]]
+#elif _GL_HAS_ATTRIBUTE (unused)
+# define _GL_ATTRIBUTE_MAYBE_UNUSED __attribute__ ((__unused__))
+#else
+# define _GL_ATTRIBUTE_MAYBE_UNUSED
+#endif
+/* Earlier spellings of this macro.  */
+#define _GL_UNUSED _GL_ATTRIBUTE_MAYBE_UNUSED
+#define _UNUSED_PARAMETER_ _GL_ATTRIBUTE_MAYBE_UNUSED
+
+#if _GL_HAS_ATTRIBUTE (malloc)
 # define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__))
 #else
-# define _GL_ATTRIBUTE_MALLOC /* empty */
+# define _GL_ATTRIBUTE_MALLOC
+#endif
+
+#if 201710L < __STDC_VERSION__
+# define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]]
+#elif _GL_HAS_ATTRIBUTE (warn_unused_result)
+# define _GL_ATTRIBUTE_NODISCARD __attribute__ ((__warn_unused_result__))
+#else
+# define _GL_ATTRIBUTE_NODISCARD
+#endif
+
+#if _GL_HAS_ATTRIBUTE (noinline)
+# define _GL_ATTRIBUTE_NOINLINE __attribute__ ((__noinline__))
+#else
+# define _GL_ATTRIBUTE_NOINLINE
+#endif
+
+#if _GL_HAS_ATTRIBUTE (nonnull)
+# define _GL_ATTRIBUTE_NONNULL(args) __attribute__ ((__nonnull__ args))
+#else
+# define _GL_ATTRIBUTE_NONNULL(args)
+#endif
+
+#if _GL_HAS_ATTRIBUTE (nonstring)
+# define _GL_ATTRIBUTE_NONSTRING __attribute__ ((__nonstring__))
+#else
+# define _GL_ATTRIBUTE_NONSTRING
+#endif
+
+/* There is no _GL_ATTRIBUTE_NORETURN; use _Noreturn instead.  */
+
+#if _GL_HAS_ATTRIBUTE (nothrow) && !defined __cplusplus
+# define _GL_ATTRIBUTE_NOTHROW __attribute__ ((__nothrow__))
+#else
+# define _GL_ATTRIBUTE_NOTHROW
+#endif
+
+#if _GL_HAS_ATTRIBUTE (packed)
+# define _GL_ATTRIBUTE_PACKED __attribute__ ((__packed__))
+#else
+# define _GL_ATTRIBUTE_PACKED
+#endif
+
+#if _GL_HAS_ATTRIBUTE (pure)
+# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
+#else
+# define _GL_ATTRIBUTE_PURE
+#endif
+
+#if _GL_HAS_ATTRIBUTE (returns_nonnull)
+# define _GL_ATTRIBUTE_RETURNS_NONNULL __attribute__ ((__returns_nonnull__))
+#else
+# define _GL_ATTRIBUTE_RETURNS_NONNULL
+#endif
+
+#if _GL_HAS_ATTRIBUTE (sentinel)
+# define _GL_ATTRIBUTE_SENTINEL(pos) __attribute__ ((__sentinel__ pos))
+#else
+# define _GL_ATTRIBUTE_SENTINEL(pos)
+#endif
+
+]dnl There is no _GL_ATTRIBUTE_VISIBILITY; see m4/visibility.m4 instead.
+[
+/* To support C++ as well as C, use _GL_UNUSED_LABEL with trailing ';'.  */
+#if !defined __cplusplus || _GL_GNUC_PREREQ (4, 5)
+# define _GL_UNUSED_LABEL _GL_ATTRIBUTE_MAYBE_UNUSED
+#else
+# define _GL_UNUSED_LABEL
 #endif
 ])
   AH_VERBATIM([async_safe],
@@ -94,7 +282,7 @@ AC_DEFUN([gl_COMMON_BODY], [
    invoked from such signal handlers.  Such functions have some restrictions:
      * All functions that it calls should be marked _GL_ASYNC_SAFE as well,
        or should be listed as async-signal-safe in POSIX
-       <http://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_04>
+       <https://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_04>
        section 2.4.3.  Note that malloc(), sprintf(), and fwrite(), in
        particular, are NOT async-signal-safe.
      * All memory locations (variables and struct fields) that these functions
@@ -115,6 +303,49 @@ AC_DEFUN([gl_COMMON_BODY], [
        errno.  */
 #define _GL_ASYNC_SAFE
 ])
+  AH_VERBATIM([micro_optimizations],
+[/* _GL_CMP (n1, n2) performs a three-valued comparison on n1 vs. n2, where
+   n1 and n2 are expressions without side effects, that evaluate to real
+   numbers (excluding NaN).
+   It returns
+     1  if n1 > n2
+     0  if n1 == n2
+     -1 if n1 < n2
+   The naïve code   (n1 > n2 ? 1 : n1 < n2 ? -1 : 0)  produces a conditional
+   jump with nearly all GCC versions up to GCC 10.
+   This variant     (n1 < n2 ? -1 : n1 > n2)  produces a conditional with many
+   GCC versions up to GCC 9.
+   The better code  (n1 > n2) - (n1 < n2)  from Hacker's Delight § 2-9
+   avoids conditional jumps in all GCC versions >= 3.4.  */
+#define _GL_CMP(n1, n2) (((n1) > (n2)) - ((n1) < (n2)))
+])
+  dnl Hint which direction to take regarding cross-compilation guesses:
+  dnl When a user installs a program on a platform they are not intimately
+  dnl familiar with, --enable-cross-guesses=conservative is the appropriate
+  dnl choice.  It implements the "If we don't know, assume the worst" principle.
+  dnl However, when an operating system developer (on a platform which is not
+  dnl yet known to gnulib) builds packages for their platform, they want to
+  dnl expose, not hide, possible platform bugs; in this case,
+  dnl --enable-cross-guesses=risky is the appropriate choice.
+  dnl Sets the variables
+  dnl gl_cross_guess_normal    (to be used when 'yes' is good and 'no' is bad),
+  dnl gl_cross_guess_inverted  (to be used when 'no' is good and 'yes' is bad).
+  AC_ARG_ENABLE([cross-guesses],
+    [AS_HELP_STRING([--enable-cross-guesses={conservative|risky}],
+       [specify policy for cross-compilation guesses])],
+    [if test "x$enableval" != xconservative && test "x$enableval" != xrisky; then
+       AC_MSG_WARN([invalid argument supplied to --enable-cross-guesses])
+       enableval=conservative
+     fi
+     gl_cross_guesses="$enableval"],
+    [gl_cross_guesses=conservative])
+  if test $gl_cross_guesses = risky; then
+    gl_cross_guess_normal="guessing yes"
+    gl_cross_guess_inverted="guessing no"
+  else
+    gl_cross_guess_normal="guessing no"
+    gl_cross_guess_inverted="guessing yes"
+  fi
   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
@@ -249,34 +480,20 @@ AC_DEFUN([gl_FEATURES_H],
   AC_SUBST([HAVE_FEATURES_H])
 ])
 
-# AS_VAR_IF(VAR, VALUE, [IF-MATCH], [IF-NOT-MATCH])
-# ----------------------------------------------------
-# Backport of autoconf-2.63b's macro.
-# Remove this macro when we can assume autoconf >= 2.64.
-m4_ifndef([AS_VAR_IF],
-[m4_define([AS_VAR_IF],
-[AS_IF([test x"AS_VAR_GET([$1])" = x""$2], [$3], [$4])])])
-
 # gl_PROG_CC_C99
 # Modifies the value of the shell variable CC in an attempt to make $CC
 # understand ISO C99 source code.
-# This is like AC_PROG_CC_C99, except that
-# - AC_PROG_CC_C99 does not mix well with AC_PROG_CC_STDC
-#   <https://lists.gnu.org/r/bug-gnulib/2011-09/msg00367.html>,
-#   but many more packages use AC_PROG_CC_STDC than AC_PROG_CC_C99
-#   <https://lists.gnu.org/r/bug-gnulib/2011-09/msg00441.html>.
-# Remaining problems:
-# - When AC_PROG_CC_STDC is invoked twice, it adds the C99 enabling options
-#   to CC twice
-#   <https://lists.gnu.org/r/bug-gnulib/2011-09/msg00431.html>.
-# - AC_PROG_CC_STDC is likely to change now that C11 is an ISO standard.
 AC_DEFUN([gl_PROG_CC_C99],
 [
-  dnl Change that version number to the minimum Autoconf version that supports
-  dnl mixing AC_PROG_CC_C99 calls with AC_PROG_CC_STDC calls.
-  m4_version_prereq([9.0],
-    [AC_REQUIRE([AC_PROG_CC_C99])],
-    [AC_REQUIRE([AC_PROG_CC_STDC])])
+  dnl Just use AC_PROG_CC_C99.
+  dnl When AC_PROG_CC_C99 and AC_PROG_CC_STDC are used together, the substituted
+  dnl value of CC will contain the C99 enabling options twice. But this is only
+  dnl a cosmetic problem.
+  dnl With Autoconf >= 2.69c, use AC_PROG_CC since it implies AC_PROG_CC_C99;
+  dnl this avoids a "warning: The macro `AC_PROG_CC_C99' is obsolete."
+  m4_version_prereq([2.69c],
+    [AC_REQUIRE([AC_PROG_CC])],
+    [AC_REQUIRE([AC_PROG_CC_C99])])
 ])
 
 # gl_PROG_AR_RANLIB
@@ -381,12 +598,13 @@ AC_DEFUN([AC_C_RESTRICT],
    nothing if this is not supported.  Do not define if restrict is
    supported directly.  */
 #undef restrict
-/* Work around a bug in Sun C++: it does not support _Restrict or
-   __restrict__, even though the corresponding Sun C compiler ends up with
-   "#define restrict _Restrict" or "#define restrict __restrict__" in the
-   previous line.  Perhaps some future version of Sun C++ will work with
-   restrict; if so, hopefully it defines __RESTRICT like Sun C does.  */
-#if defined __SUNPRO_CC && !defined __RESTRICT
+/* Work around a bug in older versions of Sun C++, which did not
+   #define __restrict__ or support _Restrict or __restrict__
+   even though the corresponding Sun C compiler ended up with
+   "#define restrict _Restrict" or "#define restrict __restrict__"
+   in the previous line.  This workaround can be removed once
+   we assume Oracle Developer Studio 12.5 (2016) or later.  */
+#if defined __SUNPRO_CC && !defined __RESTRICT && !defined __restrict__
 # define _Restrict
 # define __restrict__
 #endif])
@@ -406,6 +624,22 @@ AC_DEFUN([gl_BIGENDIAN],
   AC_C_BIGENDIAN
 ])
 
+# A temporary file descriptor.
+# Must be less than 10, because dash 0.5.8 does not support redirections
+# with multi-digit file descriptors.
+m4_define([GL_TMP_FD], 9)
+
+# gl_SILENT(command)
+# executes command, but without the normal configure output.
+# This is useful when you want to invoke AC_CACHE_CHECK (or AC_CHECK_FUNC etc.)
+# inside another AC_CACHE_CHECK.
+AC_DEFUN([gl_SILENT],
+[
+  exec GL_TMP_FD>&AS_MESSAGE_FD AS_MESSAGE_FD>/dev/null
+  $1
+  exec AS_MESSAGE_FD>&GL_TMP_FD GL_TMP_FD>&-
+])
+
 # gl_CACHE_VAL_SILENT(cache-id, command-to-set-it)
 # is like AC_CACHE_VAL(cache-id, command-to-set-it), except that it does not
 # output a spurious "(cached)" mark in the midst of other configure output.
@@ -413,12 +647,77 @@ AC_DEFUN([gl_BIGENDIAN],
 # by an AC_MSG_CHECKING/AC_MSG_RESULT pair.
 AC_DEFUN([gl_CACHE_VAL_SILENT],
 [
-  saved_as_echo_n="$as_echo_n"
-  as_echo_n=':'
-  AC_CACHE_VAL([$1], [$2])
-  as_echo_n="$saved_as_echo_n"
+  gl_SILENT([
+    AC_CACHE_VAL([$1], [$2])
+  ])
 ])
 
-# AS_VAR_COPY was added in autoconf 2.63b
-m4_define_default([AS_VAR_COPY],
-[AS_LITERAL_IF([$1[]$2], [$1=$$2], [eval $1=\$$2])])
+dnl Expands to some code for use in .c programs that, on native Windows, defines
+dnl the Microsoft deprecated alias function names to the underscore-prefixed
+dnl actual function names. With this macro, these function names are available
+dnl without linking with '-loldnames' and without generating warnings.
+dnl Usage: Use it after all system header files are included.
+dnl          #include <...>
+dnl          #include <...>
+dnl          ]GL_MDA_DEFINES[
+dnl          ...
+AC_DEFUN([GL_MDA_DEFINES],[
+AC_REQUIRE([_GL_MDA_DEFINES])
+[$gl_mda_defines]
+])
+AC_DEFUN([_GL_MDA_DEFINES],
+[gl_mda_defines='
+#if defined _WIN32 && !defined __CYGWIN__
+#define access    _access
+#define chdir     _chdir
+#define chmod     _chmod
+#define close     _close
+#define creat     _creat
+#define dup       _dup
+#define dup2      _dup2
+#define ecvt      _ecvt
+#define execl     _execl
+#define execle    _execle
+#define execlp    _execlp
+#define execv     _execv
+#define execve    _execve
+#define execvp    _execvp
+#define execvpe   _execvpe
+#define fcloseall _fcloseall
+#define fcvt      _fcvt
+#define fdopen    _fdopen
+#define fileno    _fileno
+#define gcvt      _gcvt
+#define getcwd    _getcwd
+#define getpid    _getpid
+#define getw      _getw
+#define isatty    _isatty
+#define j0        _j0
+#define j1        _j1
+#define jn        _jn
+#define lfind     _lfind
+#define lsearch   _lsearch
+#define lseek     _lseek
+#define memccpy   _memccpy
+#define mkdir     _mkdir
+#define mktemp    _mktemp
+#define open      _open
+#define putenv    _putenv
+#define putw      _putw
+#define read      _read
+#define rmdir     _rmdir
+#define strdup    _strdup
+#define swab      _swab
+#define tempnam   _tempnam
+#define tzset     _tzset
+#define umask     _umask
+#define unlink    _unlink
+#define utime     _utime
+#define wcsdup    _wcsdup
+#define write     _write
+#define y0        _y0
+#define y1        _y1
+#define yn        _yn
+#endif
+'
+])
index f46f178eabeb207a78e780076fbc547ec7399879..e04e5892a2a7e28ab4de4d070802b9e7b79911c4 100644 (file)
@@ -1,5 +1,5 @@
 # DO NOT EDIT! GENERATED AUTOMATICALLY!
-# Copyright (C) 2002-2019 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This file is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -56,6 +56,8 @@ AC_DEFUN([gl_EARLY],
   # Code from module arpa_inet-tests:
   # Code from module assert:
   # Code from module assure:
+  # Code from module attribute:
+  # Code from module basename-lgpl:
   # Code from module binary-io:
   # Code from module binary-io-tests:
   # Code from module bind:
@@ -74,6 +76,7 @@ AC_DEFUN([gl_EARLY],
   # Code from module calloc-posix:
   # Code from module canonicalize-lgpl:
   # Code from module canonicalize-lgpl-tests:
+  # Code from module clock-time:
   # Code from module cloexec:
   # Code from module cloexec-tests:
   # Code from module close:
@@ -90,7 +93,6 @@ AC_DEFUN([gl_EARLY],
   # Code from module dirname-lgpl:
   # Code from module dirname-tests:
   # Code from module do-release-commit-and-tag:
-  # Code from module dosname:
   # Code from module double-slash-root:
   # Code from module dup2:
   # Code from module dup2-tests:
@@ -136,6 +138,8 @@ AC_DEFUN([gl_EARLY],
   # Code from module getpagesize:
   # Code from module getprogname:
   # Code from module getprogname-tests:
+  # Code from module getrandom:
+  # Code from module getrandom-tests:
   # Code from module gettext-h:
   # Code from module gettimeofday:
   # Code from module gettimeofday-tests:
@@ -145,7 +149,8 @@ AC_DEFUN([gl_EARLY],
   # Code from module gnumakefile:
   # Code from module gnupload:
   # Code from module hard-locale:
-  # Code from module havelib:
+  # Code from module hard-locale-tests:
+  # Code from module idx:
   # Code from module ignore-value:
   # Code from module ignore-value-tests:
   # Code from module include_next:
@@ -178,7 +183,6 @@ AC_DEFUN([gl_EARLY],
   # Code from module localeconv-tests:
   # Code from module localename:
   # Code from module localename-tests:
-  # Code from module localtime-buffer:
   # Code from module lock:
   # Code from module lock-tests:
   # Code from module long-options:
@@ -225,8 +229,7 @@ AC_DEFUN([gl_EARLY],
   # Code from module priv-set-tests:
   # Code from module progname:
   # Code from module pthread-h:
-  AC_DEFINE([_REENTRANT], 1, [For thread-safety on OSF/1, Solaris.])
-  AC_DEFINE([_THREAD_SAFE], 1, [For thread-safety on AIX, FreeBSD.])
+  gl_ANYTHREADLIB_EARLY
   # Code from module pthread-h-tests:
   # Code from module pthread-thread:
   # Code from module pthread-thread-tests:
@@ -259,6 +262,8 @@ AC_DEFUN([gl_EARLY],
   # Code from module setenv:
   # Code from module setenv-tests:
   # Code from module setlocale:
+  # Code from module setlocale-null:
+  # Code from module setlocale-null-tests:
   # Code from module setlocale-tests:
   # Code from module setsockopt:
   # Code from module setsockopt-tests:
@@ -291,6 +296,7 @@ AC_DEFUN([gl_EARLY],
   dnl Some compilers (e.g., AIX 5.3 cc) need to be in c99 mode
   dnl for the builtin va_copy to work.  gl_PROG_CC_C99 arranges for this.
   gl_PROG_CC_C99
+  # Code from module stdarg-tests:
   # Code from module stdbool:
   # Code from module stdbool-tests:
   # Code from module stddef:
@@ -321,6 +327,8 @@ AC_DEFUN([gl_EARLY],
   # Code from module symlink-tests:
   # Code from module sys_ioctl:
   # Code from module sys_ioctl-tests:
+  # Code from module sys_random:
+  # Code from module sys_random-tests:
   # Code from module sys_select:
   # Code from module sys_select-tests:
   # Code from module sys_socket:
@@ -337,6 +345,7 @@ AC_DEFUN([gl_EARLY],
   # Code from module test-framework-sh:
   # Code from module test-framework-sh-tests:
   # Code from module thread:
+  # Code from module thread-optim:
   # Code from module thread-tests:
   # Code from module threadlib:
   gl_THREADLIB_EARLY
@@ -382,6 +391,7 @@ AC_DEFUN([gl_EARLY],
   # Code from module xalloc-oversized:
   # Code from module xstrndup:
   # Code from module xstrtol:
+  # Code from module xstrtol-error:
   # Code from module xstrtol-tests:
   # Code from module xstrtoll:
   # Code from module xstrtoll-tests:
@@ -432,6 +442,8 @@ AC_SUBST([LTALLOCA])
   gl_MODULE_INDICATOR([canonicalize-lgpl])
   gl_STDLIB_MODULE_INDICATOR([canonicalize_file_name])
   gl_STDLIB_MODULE_INDICATOR([realpath])
+  gl_CLOCK_TIME
+  gl_MODULE_INDICATOR_FOR_TESTS([cloexec])
   gl_FUNC_CLOSE
   if test $REPLACE_CLOSE = 1; then
     AC_LIBOBJ([close])
@@ -440,10 +452,14 @@ AC_SUBST([LTALLOCA])
   gl_MODULE_INDICATOR([close-stream])
   gl_CONFIG_H
   gl_CONFIGMAKE_PREP
-  gl_DIRNAME
   gl_MODULE_INDICATOR([dirname])
-  gl_DIRNAME_LGPL
   gl_DOUBLE_SLASH_ROOT
+  gl_FUNC_DUP2
+  if test $REPLACE_DUP2 = 1; then
+    AC_LIBOBJ([dup2])
+    gl_PREREQ_DUP2
+  fi
+  gl_UNISTD_MODULE_INDICATOR([dup2])
   gl_HEADER_ERRNO_H
   gl_ERROR
   if test $ac_cv_lib_error_at_line = no; then
@@ -454,6 +470,11 @@ AC_SUBST([LTALLOCA])
     [AM_][XGETTEXT_OPTION([--flag=error:3:c-format])
      AM_][XGETTEXT_OPTION([--flag=error_at_line:5:c-format])])
   AC_REQUIRE([gl_EXTERN_INLINE])
+  gl_FUNC_FCNTL
+  if test $HAVE_FCNTL = 0 || test $REPLACE_FCNTL = 1; then
+    AC_LIBOBJ([fcntl])
+  fi
+  gl_FCNTL_MODULE_INDICATOR([fcntl])
   gl_FCNTL_H
   gl_FUNC_FPENDING
   if test $gl_cv_func___fpending = no; then
@@ -476,6 +497,12 @@ AC_SUBST([LTALLOCA])
     gl_PREREQ_FSYNC
   fi
   gl_UNISTD_MODULE_INDICATOR([fsync])
+  gl_FUNC_GETDTABLESIZE
+  if test $HAVE_GETDTABLESIZE = 0 || test $REPLACE_GETDTABLESIZE = 1; then
+    AC_LIBOBJ([getdtablesize])
+    gl_PREREQ_GETDTABLESIZE
+  fi
+  gl_UNISTD_MODULE_INDICATOR([getdtablesize])
   gl_FUNC_GETOPT_GNU
   dnl Because of the way gl_FUNC_GETOPT_GNU is implemented (the gl_getopt_required
   dnl mechanism), there is no need to do any AC_LIBOBJ or AC_SUBST here; they are
@@ -488,15 +515,16 @@ AC_SUBST([LTALLOCA])
     GNULIB_GL_UNISTD_H_GETOPT=1
   fi
   AC_SUBST([GNULIB_GL_UNISTD_H_GETOPT])
+  gl_UNISTD_MODULE_INDICATOR([getopt-posix])
   gl_FUNC_GETPROGNAME
+  AC_REQUIRE([AC_CANONICAL_HOST])
+  gl_FUNC_GETRANDOM
+  if test $HAVE_GETRANDOM = 0 || test $REPLACE_GETRANDOM = 1; then
+    AC_LIBOBJ([getrandom])
+  fi
+  gl_SYS_RANDOM_MODULE_INDICATOR([getrandom])
   AC_SUBST([LIBINTL])
   AC_SUBST([LTLIBINTL])
-  gl_FUNC_GETTIMEOFDAY
-  if test $HAVE_GETTIMEOFDAY = 0 || test $REPLACE_GETTIMEOFDAY = 1; then
-    AC_LIBOBJ([gettimeofday])
-    gl_PREREQ_GETTIMEOFDAY
-  fi
-  gl_SYS_TIME_MODULE_INDICATOR([gettimeofday])
   # Autoconf 2.61a.99 and earlier don't support linking a file only
   # in VPATH builds.  But since GNUmakefile is for maintainer use
   # only, it does not matter if we skip the link with older autoconf.
@@ -507,6 +535,9 @@ AC_SUBST([LTALLOCA])
           m4_defn([m4_PACKAGE_VERSION])), [1], [],
         [AC_CONFIG_LINKS([$GNUmakefile:$GNUmakefile], [],
           [GNUmakefile=$GNUmakefile])])
+  AC_REQUIRE([gl_FUNC_SETLOCALE_NULL])
+  LIB_HARD_LOCALE="$LIB_SETLOCALE_NULL"
+  AC_SUBST([LIB_HARD_LOCALE])
   gl_INTTYPES_H
   gl_INTTYPES_INCOMPLETE
   gl_LANGINFO_H
@@ -525,8 +556,6 @@ AC_SUBST([LTALLOCA])
     gl_PREREQ_LOCALECONV
   fi
   gl_LOCALE_MODULE_INDICATOR([localeconv])
-  AC_REQUIRE([gl_LOCALTIME_BUFFER_DEFAULTS])
-  AC_LIBOBJ([localtime-buffer])
   gl_LOCK
   gl_MODULE_INDICATOR([lock])
   gl_FUNC_LSEEK
@@ -558,6 +587,11 @@ AC_SUBST([LTALLOCA])
   gl_FUNC_MBRTOWC
   if test $HAVE_MBRTOWC = 0 || test $REPLACE_MBRTOWC = 1; then
     AC_LIBOBJ([mbrtowc])
+    if test $REPLACE_MBSTATE_T = 1; then
+      AC_LIBOBJ([lc-charset-dispatch])
+      AC_LIBOBJ([mbtowc-lock])
+      gl_PREREQ_MBTOWC_LOCK
+    fi
     gl_PREREQ_MBRTOWC
   fi
   gl_WCHAR_MODULE_INDICATOR([mbrtowc])
@@ -598,7 +632,17 @@ AC_SUBST([LTALLOCA])
   if test $HAVE_NL_LANGINFO = 0 || test $REPLACE_NL_LANGINFO = 1; then
     AC_LIBOBJ([nl_langinfo])
   fi
+  if test $REPLACE_NL_LANGINFO = 1 && test $NL_LANGINFO_MTSAFE = 0; then
+    AC_LIBOBJ([nl_langinfo-lock])
+    gl_PREREQ_NL_LANGINFO_LOCK
+  fi
   gl_LANGINFO_MODULE_INDICATOR([nl_langinfo])
+  gl_FUNC_OPEN
+  if test $REPLACE_OPEN = 1; then
+    AC_LIBOBJ([open])
+    gl_PREREQ_OPEN
+  fi
+  gl_FCNTL_MODULE_INDICATOR([open])
   gl_PATHMAX
   AC_CHECK_DECLS([program_invocation_name], [], [], [#include <errno.h>])
   AC_CHECK_DECLS([program_invocation_short_name], [], [], [#include <errno.h>])
@@ -638,6 +682,12 @@ AC_SUBST([LTALLOCA])
   fi
   gl_STDLIB_MODULE_INDICATOR([rpmatch])
   gl_PREREQ_SAFE_READ
+  gl_FUNC_SETLOCALE_NULL
+  if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then
+    AC_LIBOBJ([setlocale-lock])
+    gl_PREREQ_SETLOCALE_LOCK
+  fi
+  gl_LOCALE_MODULE_INDICATOR([setlocale_null])
   gl_FUNC_SLEEP
   if test $HAVE_SLEEP = 0 || test $REPLACE_SLEEP = 1; then
     AC_LIBOBJ([sleep])
@@ -657,6 +707,7 @@ AC_SUBST([LTALLOCA])
   gl_SYS_STAT_MODULE_INDICATOR([stat])
   gl_STAT_TIME
   gl_STAT_BIRTHTIME
+  gl_STDALIGN_H
   gl_STDARG_H
   AM_STDBOOL_H
   gl_STDDEF_H
@@ -664,7 +715,7 @@ AC_SUBST([LTALLOCA])
   gl_STDIO_H
   gl_STDLIB_H
   gl_FUNC_STRDUP_POSIX
-  if test $ac_cv_func_strdup = no || test $REPLACE_STRDUP = 1; then
+  if test $REPLACE_STRDUP = 1; then
     AC_LIBOBJ([strdup])
     gl_PREREQ_STRDUP
   fi
@@ -705,13 +756,14 @@ AC_SUBST([LTALLOCA])
     gl_PREREQ_STRTOULL
   fi
   gl_STDLIB_MODULE_INDICATOR([strtoull])
-  gl_HEADER_SYS_STAT_H
+  gl_HEADER_SYS_RANDOM
   AC_PROG_MKDIR_P
-  gl_HEADER_SYS_TIME_H
+  gl_HEADER_SYS_STAT_H
   AC_PROG_MKDIR_P
   gl_SYS_TYPES_H
   AC_PROG_MKDIR_P
   gl_FUNC_GEN_TEMPNAME
+  gl_MODULE_INDICATOR([tempname])
   AC_REQUIRE([gl_THREADLIB])
   gl_HEADER_TIME_H
   gl_UNISTD_H
@@ -759,14 +811,10 @@ AC_SUBST([LTALLOCA])
       ;;
   esac
   gl_XALLOC
+  gl_MODULE_INDICATOR([xalloc])
+  gl_MODULE_INDICATOR([xalloc-die])
   gl_XSTRNDUP
   gl_XSTRTOL
-  AC_LIBOBJ([xstrtoll])
-  AC_LIBOBJ([xstrtoull])
-  AC_TYPE_LONG_LONG_INT
-  test $ac_cv_type_long_long_int = no \
-    && AC_MSG_ERROR(
-        [you lack long long support; required by gnulib's xstrtoll module])
   # End of code from modules
   m4_ifval(gl_LIBSOURCES_LIST, [
     m4_syscmd([test ! -d ]m4_defn([gl_LIBSOURCES_DIR])[ ||
@@ -829,26 +877,14 @@ changequote([, ])dnl
   gt_LOCALE_FR_UTF8
   gt_LOCALE_FR
   gt_LOCALE_TR_UTF8
-  gl_MODULE_INDICATOR_FOR_TESTS([cloexec])
   AC_REQUIRE([gl_HEADER_SYS_SOCKET])
   if test "$ac_cv_header_winsock2_h" = yes; then
     AC_LIBOBJ([connect])
   fi
   gl_SYS_SOCKET_MODULE_INDICATOR([connect])
   gl_CTYPE_H
-  gl_FUNC_DUP2
-  if test $HAVE_DUP2 = 0 || test $REPLACE_DUP2 = 1; then
-    AC_LIBOBJ([dup2])
-    gl_PREREQ_DUP2
-  fi
-  gl_UNISTD_MODULE_INDICATOR([dup2])
   gl_ENVIRON
   gl_UNISTD_MODULE_INDICATOR([environ])
-  gl_FUNC_FCNTL
-  if test $HAVE_FCNTL = 0 || test $REPLACE_FCNTL = 1; then
-    AC_LIBOBJ([fcntl])
-  fi
-  gl_FCNTL_MODULE_INDICATOR([fcntl])
   gl_FUNC_FDOPEN
   if test $REPLACE_FDOPEN = 1; then
     AC_LIBOBJ([fdopen])
@@ -867,17 +903,20 @@ changequote([, ])dnl
     AC_LIBOBJ([getcwd-lgpl])
   fi
   gl_UNISTD_MODULE_INDICATOR([getcwd])
-  gl_FUNC_GETDTABLESIZE
-  if test $HAVE_GETDTABLESIZE = 0 || test $REPLACE_GETDTABLESIZE = 1; then
-    AC_LIBOBJ([getdtablesize])
-    gl_PREREQ_GETDTABLESIZE
-  fi
-  gl_UNISTD_MODULE_INDICATOR([getdtablesize])
   gl_FUNC_GETPAGESIZE
   if test $REPLACE_GETPAGESIZE = 1; then
     AC_LIBOBJ([getpagesize])
   fi
   gl_UNISTD_MODULE_INDICATOR([getpagesize])
+  gl_FUNC_GETTIMEOFDAY
+  if test $HAVE_GETTIMEOFDAY = 0 || test $REPLACE_GETTIMEOFDAY = 1; then
+    AC_LIBOBJ([gettimeofday])
+    gl_PREREQ_GETTIMEOFDAY
+  fi
+  gl_SYS_TIME_MODULE_INDICATOR([gettimeofday])
+  gl_MUSL_LIBC
+  dnl Distinguish OpenBSD >= 6.2 from OpenBSD < 6.2.
+  AC_CHECK_FUNCS_ONCE([duplocale])
   gl_FUNC_INET_PTON
   if test $HAVE_INET_PTON = 0 || test $REPLACE_INET_PTON = 1; then
     AC_LIBOBJ([inet_pton])
@@ -894,6 +933,7 @@ changequote([, ])dnl
   if test $HAVE_ISBLANK = 0; then
     AC_LIBOBJ([isblank])
   fi
+  gl_MODULE_INDICATOR([isblank])
   gl_CTYPE_MODULE_INDICATOR([isblank])
   AC_REQUIRE([gl_HEADER_SYS_SOCKET])
   if test "$ac_cv_header_winsock2_h" = yes; then
@@ -906,6 +946,7 @@ changequote([, ])dnl
   AC_CHECK_FUNCS_ONCE([newlocale])
   AC_CHECK_HEADERS_ONCE([semaphore.h])
   AC_CHECK_DECLS_ONCE([alarm])
+  AC_REQUIRE([gl_SEMAPHORE])
   gt_LOCALE_FR
   gt_LOCALE_FR_UTF8
   gt_LOCALE_JA
@@ -922,12 +963,6 @@ changequote([, ])dnl
   AC_PROG_MKDIR_P
   gt_LOCALE_FR
   gt_LOCALE_FR_UTF8
-  gl_FUNC_OPEN
-  if test $REPLACE_OPEN = 1; then
-    AC_LIBOBJ([open])
-    gl_PREREQ_OPEN
-  fi
-  gl_FCNTL_MODULE_INDICATOR([open])
   gl_FUNC_PERROR
   if test $REPLACE_PERROR = 1; then
     AC_LIBOBJ([perror])
@@ -1026,7 +1061,6 @@ changequote([, ])dnl
   AC_REQUIRE([gl_SOCKETLIB])
   AC_REQUIRE([gl_SOCKETS])
   gl_TYPE_SOCKLEN_T
-  gl_STDALIGN_H
   AC_REQUIRE([gt_TYPE_WCHAR_T])
   AC_REQUIRE([gt_TYPE_WINT_T])
   gl_FUNC_STRERROR_R
@@ -1053,9 +1087,12 @@ changequote([, ])dnl
   AC_REQUIRE([gl_HEADER_SYS_SOCKET])
   AC_PROG_MKDIR_P
   AC_CHECK_FUNCS_ONCE([shutdown])
+  gl_HEADER_SYS_TIME_H
+  AC_PROG_MKDIR_P
   gl_HEADER_SYS_UIO
   AC_PROG_MKDIR_P
   gl_THREAD
+  AC_CHECK_HEADERS([sys/single_threaded.h])
   gl_UNLINKDIR
   gl_FUNC_UNSETENV
   if test $HAVE_UNSETENV = 0 || test $REPLACE_UNSETENV = 1; then
@@ -1189,7 +1226,6 @@ AC_DEFUN([gltests_LIBSOURCES], [
 # gnulib-tool and may be removed by future gnulib-tool invocations.
 AC_DEFUN([gl_FILE_LIST], [
   build-aux/announce-gen
-  build-aux/config.rpath
   build-aux/do-release-commit-and-tag
   build-aux/gendocs.sh
   build-aux/git-version-gen
@@ -1210,7 +1246,9 @@ AC_DEFUN([gl_FILE_LIST], [
   lib/argmatch.c
   lib/argmatch.h
   lib/assure.h
+  lib/attribute.h
   lib/basename-lgpl.c
+  lib/basename-lgpl.h
   lib/basename.c
   lib/btowc.c
   lib/c++defs.h
@@ -1223,6 +1261,8 @@ AC_DEFUN([gl_FILE_LIST], [
   lib/calloc.c
   lib/canonicalize-lgpl.c
   lib/cdefs.h
+  lib/cloexec.c
+  lib/cloexec.h
   lib/close-stream.c
   lib/close-stream.h
   lib/close.c
@@ -1231,12 +1271,13 @@ AC_DEFUN([gl_FILE_LIST], [
   lib/dirname-lgpl.c
   lib/dirname.c
   lib/dirname.h
-  lib/dosname.h
+  lib/dup2.c
   lib/errno.in.h
   lib/error.c
   lib/error.h
   lib/exitfail.c
   lib/exitfail.h
+  lib/fcntl.c
   lib/fcntl.in.h
   lib/fd-hook.c
   lib/fd-hook.h
@@ -1245,6 +1286,7 @@ AC_DEFUN([gl_FILE_LIST], [
   lib/fpending.h
   lib/fstat.c
   lib/fsync.c
+  lib/getdtablesize.c
   lib/getopt-cdefs.in.h
   lib/getopt-core.h
   lib/getopt-ext.h
@@ -1256,24 +1298,25 @@ AC_DEFUN([gl_FILE_LIST], [
   lib/getopt_int.h
   lib/getprogname.c
   lib/getprogname.h
+  lib/getrandom.c
   lib/gettext.h
-  lib/gettimeofday.c
   lib/glthread/lock.c
   lib/glthread/lock.h
   lib/glthread/threadlib.c
   lib/hard-locale.c
   lib/hard-locale.h
+  lib/idx.h
   lib/intprops.h
   lib/inttypes.in.h
   lib/langinfo.in.h
+  lib/lc-charset-dispatch.c
+  lib/lc-charset-dispatch.h
   lib/libc-config.h
   lib/limits.in.h
   lib/localcharset.c
   lib/localcharset.h
   lib/locale.in.h
   lib/localeconv.c
-  lib/localtime-buffer.c
-  lib/localtime-buffer.h
   lib/long-options.c
   lib/long-options.h
   lib/lseek.c
@@ -1281,9 +1324,13 @@ AC_DEFUN([gl_FILE_LIST], [
   lib/malloc.c
   lib/malloca.c
   lib/malloca.h
+  lib/mbrtowc-impl-utf8.h
+  lib/mbrtowc-impl.h
   lib/mbrtowc.c
   lib/mbsinit.c
   lib/mbtowc-impl.h
+  lib/mbtowc-lock.c
+  lib/mbtowc-lock.h
   lib/mbtowc.c
   lib/minmax.h
   lib/mkdir.c
@@ -1292,7 +1339,9 @@ AC_DEFUN([gl_FILE_LIST], [
   lib/msvc-inval.h
   lib/msvc-nothrow.c
   lib/msvc-nothrow.h
+  lib/nl_langinfo-lock.c
   lib/nl_langinfo.c
+  lib/open.c
   lib/pathmax.h
   lib/progname.c
   lib/progname.h
@@ -1311,12 +1360,16 @@ AC_DEFUN([gl_FILE_LIST], [
   lib/rpmatch.c
   lib/safe-read.c
   lib/safe-read.h
+  lib/setlocale-lock.c
+  lib/setlocale_null.c
+  lib/setlocale_null.h
   lib/sleep.c
   lib/stat-time.c
   lib/stat-time.h
   lib/stat-w32.c
   lib/stat-w32.h
   lib/stat.c
+  lib/stdalign.in.h
   lib/stdarg.in.h
   lib/stdbool.in.h
   lib/stddef.in.h
@@ -1338,8 +1391,8 @@ AC_DEFUN([gl_FILE_LIST], [
   lib/strtoul.c
   lib/strtoull.c
   lib/sys-limits.h
+  lib/sys_random.in.h
   lib/sys_stat.in.h
-  lib/sys_time.in.h
   lib/sys_types.in.h
   lib/tempname.c
   lib/tempname.h
@@ -1372,7 +1425,6 @@ AC_DEFUN([gl_FILE_LIST], [
   lib/xmalloc.c
   lib/xstrndup.c
   lib/xstrndup.h
-  lib/xstrtol-error.c
   lib/xstrtol.c
   lib/xstrtol.h
   lib/xstrtoll.c
@@ -1388,12 +1440,12 @@ AC_DEFUN([gl_FILE_LIST], [
   m4/builtin-expect.m4
   m4/calloc.m4
   m4/canonicalize.m4
+  m4/clock_time.m4
   m4/close.m4
   m4/codeset.m4
   m4/config-h.m4
   m4/configmake.m4
   m4/ctype.m4
-  m4/dirname.m4
   m4/double-slash-root.m4
   m4/dup2.m4
   m4/eealloc.m4
@@ -1416,15 +1468,14 @@ AC_DEFUN([gl_FILE_LIST], [
   m4/getopt.m4
   m4/getpagesize.m4
   m4/getprogname.m4
+  m4/getrandom.m4
   m4/gettimeofday.m4
   m4/glibc21.m4
   m4/gnulib-common.m4
-  m4/host-cpu-c-abi.m4
   m4/include_next.m4
   m4/inet_pton.m4
   m4/intl-thread-locale.m4
   m4/intlmacosx.m4
-  m4/inttypes-pri.m4
   m4/inttypes.m4
   m4/ioctl.m4
   m4/isblank.m4
@@ -1432,9 +1483,6 @@ AC_DEFUN([gl_FILE_LIST], [
   m4/largefile.m4
   m4/lcmessage.m4
   m4/lib-ignore.m4
-  m4/lib-ld.m4
-  m4/lib-link.m4
-  m4/lib-prefix.m4
   m4/limits-h.m4
   m4/localcharset.m4
   m4/locale-fr.m4
@@ -1444,9 +1492,7 @@ AC_DEFUN([gl_FILE_LIST], [
   m4/locale_h.m4
   m4/localeconv.m4
   m4/localename.m4
-  m4/localtime-buffer.m4
   m4/lock.m4
-  m4/longlong.m4
   m4/lseek.m4
   m4/lstat.m4
   m4/malloc.m4
@@ -1465,15 +1511,18 @@ AC_DEFUN([gl_FILE_LIST], [
   m4/msvc-inval.m4
   m4/msvc-nothrow.m4
   m4/multiarch.m4
+  m4/musl.m4
   m4/nanosleep.m4
   m4/netinet_in_h.m4
   m4/nl_langinfo.m4
   m4/nocrash.m4
   m4/off_t.m4
   m4/open-cloexec.m4
+  m4/open-slash.m4
   m4/open.m4
   m4/pathmax.m4
   m4/perror.m4
+  m4/pid_t.m4
   m4/pipe.m4
   m4/priv-set.m4
   m4/pthread-thread.m4
@@ -1492,8 +1541,10 @@ AC_DEFUN([gl_FILE_LIST], [
   m4/safe-read.m4
   m4/sched_h.m4
   m4/select.m4
+  m4/semaphore.m4
   m4/setenv.m4
   m4/setlocale.m4
+  m4/setlocale_null.m4
   m4/sigaction.m4
   m4/signal_h.m4
   m4/signalblocking.m4
@@ -1523,6 +1574,7 @@ AC_DEFUN([gl_FILE_LIST], [
   m4/strtoull.m4
   m4/symlink.m4
   m4/sys_ioctl_h.m4
+  m4/sys_random_h.m4
   m4/sys_select_h.m4
   m4/sys_socket_h.m4
   m4/sys_stat_h.m4
@@ -1538,6 +1590,7 @@ AC_DEFUN([gl_FILE_LIST], [
   m4/unlinkdir.m4
   m4/usleep.m4
   m4/version-etc.m4
+  m4/visibility.m4
   m4/warn-on-use.m4
   m4/warnings.m4
   m4/wchar_h.m4
@@ -1551,7 +1604,10 @@ AC_DEFUN([gl_FILE_LIST], [
   m4/xstrndup.m4
   m4/xstrtol.m4
   m4/yield.m4
+  m4/zzgnulib.m4
+  tests/atomic-int-gnulib.h
   tests/init.sh
+  tests/locale.c
   tests/macros.h
   tests/nap.h
   tests/null-ptr.h
@@ -1601,7 +1657,9 @@ AC_DEFUN([gl_FILE_LIST], [
   tests/test-getopt.h
   tests/test-getopt_long.h
   tests/test-getprogname.c
+  tests/test-getrandom.c
   tests/test-gettimeofday.c
+  tests/test-hard-locale.c
   tests/test-ignore-value.c
   tests/test-inet_pton.c
   tests/test-init.sh
@@ -1628,6 +1686,8 @@ AC_DEFUN([gl_FILE_LIST], [
   tests/test-mbrtowc-w32-3.sh
   tests/test-mbrtowc-w32-4.sh
   tests/test-mbrtowc-w32-5.sh
+  tests/test-mbrtowc-w32-6.sh
+  tests/test-mbrtowc-w32-7.sh
   tests/test-mbrtowc-w32.c
   tests/test-mbrtowc.c
   tests/test-mbrtowc1.sh
@@ -1641,6 +1701,7 @@ AC_DEFUN([gl_FILE_LIST], [
   tests/test-mkdir.h
   tests/test-nanosleep.c
   tests/test-netinet_in.c
+  tests/test-nl_langinfo-mt.c
   tests/test-nl_langinfo.c
   tests/test-nl_langinfo.sh
   tests/test-once.c
@@ -1677,6 +1738,9 @@ AC_DEFUN([gl_FILE_LIST], [
   tests/test-setlocale1.sh
   tests/test-setlocale2.c
   tests/test-setlocale2.sh
+  tests/test-setlocale_null-mt-all.c
+  tests/test-setlocale_null-mt-one.c
+  tests/test-setlocale_null.c
   tests/test-setsockopt.c
   tests/test-sigaction.c
   tests/test-signal-h.c
@@ -1701,6 +1765,7 @@ AC_DEFUN([gl_FILE_LIST], [
   tests/test-symlink.c
   tests/test-symlink.h
   tests/test-sys_ioctl.c
+  tests/test-sys_random.c
   tests/test-sys_select.c
   tests/test-sys_socket.c
   tests/test-sys_stat.c
@@ -1730,6 +1795,8 @@ AC_DEFUN([gl_FILE_LIST], [
   tests/test-wcrtomb-w32-3.sh
   tests/test-wcrtomb-w32-4.sh
   tests/test-wcrtomb-w32-5.sh
+  tests/test-wcrtomb-w32-6.sh
+  tests/test-wcrtomb-w32-7.sh
   tests/test-wcrtomb-w32.c
   tests/test-wcrtomb.c
   tests/test-wcrtomb.sh
@@ -1751,18 +1818,14 @@ AC_DEFUN([gl_FILE_LIST], [
   tests=lib/binary-io.h
   tests=lib/bind.c
   tests=lib/c++defs.h
-  tests=lib/cloexec.c
-  tests=lib/cloexec.h
   tests=lib/connect.c
   tests=lib/ctype.in.h
-  tests=lib/dup2.c
-  tests=lib/fcntl.c
   tests=lib/fdopen.c
   tests=lib/flexmember.h
   tests=lib/ftruncate.c
   tests=lib/getcwd-lgpl.c
-  tests=lib/getdtablesize.c
   tests=lib/getpagesize.c
+  tests=lib/gettimeofday.c
   tests=lib/glthread/thread.c
   tests=lib/glthread/thread.h
   tests=lib/glthread/yield.h
@@ -1777,7 +1840,6 @@ AC_DEFUN([gl_FILE_LIST], [
   tests=lib/localename.h
   tests=lib/nanosleep.c
   tests=lib/netinet_in.in.h
-  tests=lib/open.c
   tests=lib/perror.c
   tests=lib/pipe.c
   tests=lib/priv-set.c
@@ -1802,14 +1864,15 @@ AC_DEFUN([gl_FILE_LIST], [
   tests=lib/socket.c
   tests=lib/sockets.c
   tests=lib/sockets.h
-  tests=lib/stdalign.in.h
   tests=lib/strerror_r.c
   tests=lib/symlink.c
   tests=lib/sys_ioctl.in.h
   tests=lib/sys_select.in.h
   tests=lib/sys_socket.c
   tests=lib/sys_socket.in.h
+  tests=lib/sys_time.in.h
   tests=lib/sys_uio.in.h
+  tests=lib/thread-optim.h
   tests=lib/unlinkdir.c
   tests=lib/unlinkdir.h
   tests=lib/unsetenv.c
@@ -1822,6 +1885,8 @@ AC_DEFUN([gl_FILE_LIST], [
   tests=lib/windows-thread.h
   tests=lib/windows-tls.c
   tests=lib/windows-tls.h
+  tests=lib/xstrtol-error.c
+  tests=lib/xstrtol-error.h
   top/GNUmakefile
   top/maint.mk
 ])
diff --git a/m4/host-cpu-c-abi.m4 b/m4/host-cpu-c-abi.m4
deleted file mode 100644 (file)
index 4407296..0000000
+++ /dev/null
@@ -1,644 +0,0 @@
-# host-cpu-c-abi.m4 serial 11
-dnl Copyright (C) 2002-2019 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-
-dnl From Bruno Haible and Sam Steingold.
-
-dnl Sets the HOST_CPU variable to the canonical name of the CPU.
-dnl Sets the HOST_CPU_C_ABI variable to the canonical name of the CPU with its
-dnl C language ABI (application binary interface).
-dnl Also defines __${HOST_CPU}__ and __${HOST_CPU_C_ABI}__ as C macros in
-dnl config.h.
-dnl
-dnl This canonical name can be used to select a particular assembly language
-dnl source file that will interoperate with C code on the given host.
-dnl
-dnl For example:
-dnl * 'i386' and 'sparc' are different canonical names, because code for i386
-dnl   will not run on SPARC CPUs and vice versa. They have different
-dnl   instruction sets.
-dnl * 'sparc' and 'sparc64' are different canonical names, because code for
-dnl   'sparc' and code for 'sparc64' cannot be linked together: 'sparc' code
-dnl   contains 32-bit instructions, whereas 'sparc64' code contains 64-bit
-dnl   instructions. A process on a SPARC CPU can be in 32-bit mode or in 64-bit
-dnl   mode, but not both.
-dnl * 'mips' and 'mipsn32' are different canonical names, because they use
-dnl   different argument passing and return conventions for C functions, and
-dnl   although the instruction set of 'mips' is a large subset of the
-dnl   instruction set of 'mipsn32'.
-dnl * 'mipsn32' and 'mips64' are different canonical names, because they use
-dnl   different sizes for the C types like 'int' and 'void *', and although
-dnl   the instruction sets of 'mipsn32' and 'mips64' are the same.
-dnl * The same canonical name is used for different endiannesses. You can
-dnl   determine the endianness through preprocessor symbols:
-dnl   - 'arm': test __ARMEL__.
-dnl   - 'mips', 'mipsn32', 'mips64': test _MIPSEB vs. _MIPSEL.
-dnl   - 'powerpc64': test _BIG_ENDIAN vs. _LITTLE_ENDIAN.
-dnl * The same name 'i386' is used for CPUs of type i386, i486, i586
-dnl   (Pentium), AMD K7, Pentium II, Pentium IV, etc., because
-dnl   - Instructions that do not exist on all of these CPUs (cmpxchg,
-dnl     MMX, SSE, SSE2, 3DNow! etc.) are not frequently used. If your
-dnl     assembly language source files use such instructions, you will
-dnl     need to make the distinction.
-dnl   - Speed of execution of the common instruction set is reasonable across
-dnl     the entire family of CPUs. If you have assembly language source files
-dnl     that are optimized for particular CPU types (like GNU gmp has), you
-dnl     will need to make the distinction.
-dnl   See <https://en.wikipedia.org/wiki/X86_instruction_listings>.
-AC_DEFUN([gl_HOST_CPU_C_ABI],
-[
-  AC_REQUIRE([AC_CANONICAL_HOST])
-  AC_REQUIRE([gl_C_ASM])
-  AC_CACHE_CHECK([host CPU and C ABI], [gl_cv_host_cpu_c_abi],
-    [case "$host_cpu" in
-
-changequote(,)dnl
-       i[4567]86 )
-changequote([,])dnl
-         gl_cv_host_cpu_c_abi=i386
-         ;;
-
-       x86_64 )
-         # On x86_64 systems, the C compiler may be generating code in one of
-         # these ABIs:
-         # - 64-bit instruction set, 64-bit pointers, 64-bit 'long': x86_64.
-         # - 64-bit instruction set, 64-bit pointers, 32-bit 'long': x86_64
-         #   with native Windows (mingw, MSVC).
-         # - 64-bit instruction set, 32-bit pointers, 32-bit 'long': x86_64-x32.
-         # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': i386.
-         AC_COMPILE_IFELSE(
-           [AC_LANG_SOURCE(
-              [[#if (defined __x86_64__ || defined __amd64__ \
-                     || defined _M_X64 || defined _M_AMD64)
-                 int ok;
-                #else
-                 error fail
-                #endif
-              ]])],
-           [AC_COMPILE_IFELSE(
-              [AC_LANG_SOURCE(
-                 [[#if defined __ILP32__ || defined _ILP32
-                    int ok;
-                   #else
-                    error fail
-                   #endif
-                 ]])],
-              [gl_cv_host_cpu_c_abi=x86_64-x32],
-              [gl_cv_host_cpu_c_abi=x86_64])],
-           [gl_cv_host_cpu_c_abi=i386])
-         ;;
-
-changequote(,)dnl
-       alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] )
-changequote([,])dnl
-         gl_cv_host_cpu_c_abi=alpha
-         ;;
-
-       arm* | aarch64 )
-         # Assume arm with EABI.
-         # On arm64 systems, the C compiler may be generating code in one of
-         # these ABIs:
-         # - aarch64 instruction set, 64-bit pointers, 64-bit 'long': arm64.
-         # - aarch64 instruction set, 32-bit pointers, 32-bit 'long': arm64-ilp32.
-         # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': arm or armhf.
-         AC_COMPILE_IFELSE(
-           [AC_LANG_SOURCE(
-              [[#ifdef __aarch64__
-                 int ok;
-                #else
-                 error fail
-                #endif
-              ]])],
-           [AC_COMPILE_IFELSE(
-              [AC_LANG_SOURCE(
-                [[#if defined __ILP32__ || defined _ILP32
-                   int ok;
-                  #else
-                   error fail
-                  #endif
-                ]])],
-              [gl_cv_host_cpu_c_abi=arm64-ilp32],
-              [gl_cv_host_cpu_c_abi=arm64])],
-           [# Don't distinguish little-endian and big-endian arm, since they
-            # don't require different machine code for simple operations and
-            # since the user can distinguish them through the preprocessor
-            # defines __ARMEL__ vs. __ARMEB__.
-            # But distinguish arm which passes floating-point arguments and
-            # return values in integer registers (r0, r1, ...) - this is
-            # gcc -mfloat-abi=soft or gcc -mfloat-abi=softfp - from arm which
-            # passes them in float registers (s0, s1, ...) and double registers
-            # (d0, d1, ...) - this is gcc -mfloat-abi=hard. GCC 4.6 or newer
-            # sets the preprocessor defines __ARM_PCS (for the first case) and
-            # __ARM_PCS_VFP (for the second case), but older GCC does not.
-            echo 'double ddd; void func (double dd) { ddd = dd; }' > conftest.c
-            # Look for a reference to the register d0 in the .s file.
-            AC_TRY_COMMAND(${CC-cc} $CFLAGS $CPPFLAGS $gl_c_asm_opt conftest.c) >/dev/null 2>&1
-            if LC_ALL=C grep 'd0,' conftest.$gl_asmext >/dev/null; then
-              gl_cv_host_cpu_c_abi=armhf
-            else
-              gl_cv_host_cpu_c_abi=arm
-            fi
-            rm -f conftest*
-           ])
-         ;;
-
-       hppa1.0 | hppa1.1 | hppa2.0* | hppa64 )
-         # On hppa, the C compiler may be generating 32-bit code or 64-bit
-         # code. In the latter case, it defines _LP64 and __LP64__.
-         AC_COMPILE_IFELSE(
-           [AC_LANG_SOURCE(
-              [[#ifdef __LP64__
-                 int ok;
-                #else
-                 error fail
-                #endif
-              ]])],
-           [gl_cv_host_cpu_c_abi=hppa64],
-           [gl_cv_host_cpu_c_abi=hppa])
-         ;;
-
-       ia64* )
-         # On ia64 on HP-UX, the C compiler may be generating 64-bit code or
-         # 32-bit code. In the latter case, it defines _ILP32.
-         AC_COMPILE_IFELSE(
-           [AC_LANG_SOURCE(
-              [[#ifdef _ILP32
-                 int ok;
-                #else
-                 error fail
-                #endif
-              ]])],
-           [gl_cv_host_cpu_c_abi=ia64-ilp32],
-           [gl_cv_host_cpu_c_abi=ia64])
-         ;;
-
-       mips* )
-         # We should also check for (_MIPS_SZPTR == 64), but gcc keeps this
-         # at 32.
-         AC_COMPILE_IFELSE(
-           [AC_LANG_SOURCE(
-              [[#if defined _MIPS_SZLONG && (_MIPS_SZLONG == 64)
-                 int ok;
-                #else
-                 error fail
-                #endif
-              ]])],
-           [gl_cv_host_cpu_c_abi=mips64],
-           [# In the n32 ABI, _ABIN32 is defined, _ABIO32 is not defined (but
-            # may later get defined by <sgidefs.h>), and _MIPS_SIM == _ABIN32.
-            # In the 32 ABI, _ABIO32 is defined, _ABIN32 is not defined (but
-            # may later get defined by <sgidefs.h>), and _MIPS_SIM == _ABIO32.
-            AC_COMPILE_IFELSE(
-              [AC_LANG_SOURCE(
-                 [[#if (_MIPS_SIM == _ABIN32)
-                    int ok;
-                   #else
-                    error fail
-                   #endif
-                 ]])],
-              [gl_cv_host_cpu_c_abi=mipsn32],
-              [gl_cv_host_cpu_c_abi=mips])])
-         ;;
-
-       powerpc* )
-         # Different ABIs are in use on AIX vs. Mac OS X vs. Linux,*BSD.
-         # No need to distinguish them here; the caller may distinguish
-         # them based on the OS.
-         # On powerpc64 systems, the C compiler may still be generating
-         # 32-bit code. And on powerpc-ibm-aix systems, the C compiler may
-         # be generating 64-bit code.
-         AC_COMPILE_IFELSE(
-           [AC_LANG_SOURCE(
-              [[#if defined __powerpc64__ || defined _ARCH_PPC64
-                 int ok;
-                #else
-                 error fail
-                #endif
-              ]])],
-           [# On powerpc64, there are two ABIs on Linux: The AIX compatible
-            # one and the ELFv2 one. The latter defines _CALL_ELF=2.
-            AC_COMPILE_IFELSE(
-              [AC_LANG_SOURCE(
-                 [[#if defined _CALL_ELF && _CALL_ELF == 2
-                    int ok;
-                   #else
-                    error fail
-                   #endif
-                 ]])],
-              [gl_cv_host_cpu_c_abi=powerpc64-elfv2],
-              [gl_cv_host_cpu_c_abi=powerpc64])
-           ],
-           [gl_cv_host_cpu_c_abi=powerpc])
-         ;;
-
-       rs6000 )
-         gl_cv_host_cpu_c_abi=powerpc
-         ;;
-
-       riscv32 | riscv64 )
-         # There are 2 architectures (with variants): rv32* and rv64*.
-         AC_COMPILE_IFELSE(
-           [AC_LANG_SOURCE(
-              [[#if __riscv_xlen == 64
-                  int ok;
-                #else
-                  error fail
-                #endif
-              ]])],
-           [cpu=riscv64],
-           [cpu=riscv32])
-         # There are 6 ABIs: ilp32, ilp32f, ilp32d, lp64, lp64f, lp64d.
-         # Size of 'long' and 'void *':
-         AC_COMPILE_IFELSE(
-           [AC_LANG_SOURCE(
-              [[#if defined __LP64__
-                  int ok;
-                #else
-                  error fail
-                #endif
-              ]])],
-           [main_abi=lp64],
-           [main_abi=ilp32])
-         # Float ABIs:
-         # __riscv_float_abi_double:
-         #   'float' and 'double' are passed in floating-point registers.
-         # __riscv_float_abi_single:
-         #   'float' are passed in floating-point registers.
-         # __riscv_float_abi_soft:
-         #   No values are passed in floating-point registers.
-         AC_COMPILE_IFELSE(
-           [AC_LANG_SOURCE(
-              [[#if defined __riscv_float_abi_double
-                  int ok;
-                #else
-                  error fail
-                #endif
-              ]])],
-           [float_abi=d],
-           [AC_COMPILE_IFELSE(
-              [AC_LANG_SOURCE(
-                 [[#if defined __riscv_float_abi_single
-                     int ok;
-                   #else
-                     error fail
-                   #endif
-                 ]])],
-              [float_abi=f],
-              [float_abi=''])
-           ])
-         gl_cv_host_cpu_c_abi="${cpu}-${main_abi}${float_abi}"
-         ;;
-
-       s390* )
-         # On s390x, the C compiler may be generating 64-bit (= s390x) code
-         # or 31-bit (= s390) code.
-         AC_COMPILE_IFELSE(
-           [AC_LANG_SOURCE(
-              [[#if defined __LP64__ || defined __s390x__
-                  int ok;
-                #else
-                  error fail
-                #endif
-              ]])],
-           [gl_cv_host_cpu_c_abi=s390x],
-           [gl_cv_host_cpu_c_abi=s390])
-         ;;
-
-       sparc | sparc64 )
-         # UltraSPARCs running Linux have `uname -m` = "sparc64", but the
-         # C compiler still generates 32-bit code.
-         AC_COMPILE_IFELSE(
-           [AC_LANG_SOURCE(
-              [[#if defined __sparcv9 || defined __arch64__
-                 int ok;
-                #else
-                 error fail
-                #endif
-              ]])],
-           [gl_cv_host_cpu_c_abi=sparc64],
-           [gl_cv_host_cpu_c_abi=sparc])
-         ;;
-
-       *)
-         gl_cv_host_cpu_c_abi="$host_cpu"
-         ;;
-     esac
-    ])
-
-  dnl In most cases, $HOST_CPU and $HOST_CPU_C_ABI are the same.
-  HOST_CPU=`echo "$gl_cv_host_cpu_c_abi" | sed -e 's/-.*//'`
-  HOST_CPU_C_ABI="$gl_cv_host_cpu_c_abi"
-  AC_SUBST([HOST_CPU])
-  AC_SUBST([HOST_CPU_C_ABI])
-
-  # This was
-  #   AC_DEFINE_UNQUOTED([__${HOST_CPU}__])
-  #   AC_DEFINE_UNQUOTED([__${HOST_CPU_C_ABI}__])
-  # earlier, but KAI C++ 3.2d doesn't like this.
-  sed -e 's/-/_/g' >> confdefs.h <<EOF
-#ifndef __${HOST_CPU}__
-#define __${HOST_CPU}__ 1
-#endif
-#ifndef __${HOST_CPU_C_ABI}__
-#define __${HOST_CPU_C_ABI}__ 1
-#endif
-EOF
-  AH_TOP([/* CPU and C ABI indicator */
-#ifndef __i386__
-#undef __i386__
-#endif
-#ifndef __x86_64_x32__
-#undef __x86_64_x32__
-#endif
-#ifndef __x86_64__
-#undef __x86_64__
-#endif
-#ifndef __alpha__
-#undef __alpha__
-#endif
-#ifndef __arm__
-#undef __arm__
-#endif
-#ifndef __armhf__
-#undef __armhf__
-#endif
-#ifndef __arm64_ilp32__
-#undef __arm64_ilp32__
-#endif
-#ifndef __arm64__
-#undef __arm64__
-#endif
-#ifndef __hppa__
-#undef __hppa__
-#endif
-#ifndef __hppa64__
-#undef __hppa64__
-#endif
-#ifndef __ia64_ilp32__
-#undef __ia64_ilp32__
-#endif
-#ifndef __ia64__
-#undef __ia64__
-#endif
-#ifndef __m68k__
-#undef __m68k__
-#endif
-#ifndef __mips__
-#undef __mips__
-#endif
-#ifndef __mipsn32__
-#undef __mipsn32__
-#endif
-#ifndef __mips64__
-#undef __mips64__
-#endif
-#ifndef __powerpc__
-#undef __powerpc__
-#endif
-#ifndef __powerpc64__
-#undef __powerpc64__
-#endif
-#ifndef __powerpc64_elfv2__
-#undef __powerpc64_elfv2__
-#endif
-#ifndef __riscv32__
-#undef __riscv32__
-#endif
-#ifndef __riscv64__
-#undef __riscv64__
-#endif
-#ifndef __riscv32_ilp32__
-#undef __riscv32_ilp32__
-#endif
-#ifndef __riscv32_ilp32f__
-#undef __riscv32_ilp32f__
-#endif
-#ifndef __riscv32_ilp32d__
-#undef __riscv32_ilp32d__
-#endif
-#ifndef __riscv64_ilp32__
-#undef __riscv64_ilp32__
-#endif
-#ifndef __riscv64_ilp32f__
-#undef __riscv64_ilp32f__
-#endif
-#ifndef __riscv64_ilp32d__
-#undef __riscv64_ilp32d__
-#endif
-#ifndef __riscv64_lp64__
-#undef __riscv64_lp64__
-#endif
-#ifndef __riscv64_lp64f__
-#undef __riscv64_lp64f__
-#endif
-#ifndef __riscv64_lp64d__
-#undef __riscv64_lp64d__
-#endif
-#ifndef __s390__
-#undef __s390__
-#endif
-#ifndef __s390x__
-#undef __s390x__
-#endif
-#ifndef __sh__
-#undef __sh__
-#endif
-#ifndef __sparc__
-#undef __sparc__
-#endif
-#ifndef __sparc64__
-#undef __sparc64__
-#endif
-])
-
-])
-
-
-dnl Sets the HOST_CPU_C_ABI_32BIT variable to 'yes' if the C language ABI
-dnl (application binary interface) is a 32-bit one, or to 'no' otherwise.
-dnl This is a simplified variant of gl_HOST_CPU_C_ABI.
-AC_DEFUN([gl_HOST_CPU_C_ABI_32BIT],
-[
-  AC_REQUIRE([AC_CANONICAL_HOST])
-  AC_CACHE_CHECK([32-bit host C ABI], [gl_cv_host_cpu_c_abi_32bit],
-    [if test -n "$gl_cv_host_cpu_c_abi"; then
-       case "$gl_cv_host_cpu_c_abi" in
-         i386 | x86_64-x32 | arm | armhf | arm64-ilp32 | hppa | ia64-ilp32 | mips | mipsn32 | powerpc | riscv*-ilp32* | s390 | sparc)
-           gl_cv_host_cpu_c_abi_32bit=yes ;;
-         *)
-           gl_cv_host_cpu_c_abi_32bit=no ;;
-       esac
-     else
-       case "$host_cpu" in
-
-changequote(,)dnl
-         i[4567]86 )
-changequote([,])dnl
-           gl_cv_host_cpu_c_abi_32bit=yes
-           ;;
-
-         x86_64 )
-           # On x86_64 systems, the C compiler may be generating code in one of
-           # these ABIs:
-           # - 64-bit instruction set, 64-bit pointers, 64-bit 'long': x86_64.
-           # - 64-bit instruction set, 64-bit pointers, 32-bit 'long': x86_64
-           #   with native Windows (mingw, MSVC).
-           # - 64-bit instruction set, 32-bit pointers, 32-bit 'long': x86_64-x32.
-           # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': i386.
-           AC_COMPILE_IFELSE(
-             [AC_LANG_SOURCE(
-                [[#if (defined __x86_64__ || defined __amd64__ \
-                       || defined _M_X64 || defined _M_AMD64) \
-                      && !(defined __ILP32__ || defined _ILP32)
-                   int ok;
-                  #else
-                   error fail
-                  #endif
-                ]])],
-             [gl_cv_host_cpu_c_abi_32bit=no],
-             [gl_cv_host_cpu_c_abi_32bit=yes])
-           ;;
-
-         arm* | aarch64 )
-           # Assume arm with EABI.
-           # On arm64 systems, the C compiler may be generating code in one of
-           # these ABIs:
-           # - aarch64 instruction set, 64-bit pointers, 64-bit 'long': arm64.
-           # - aarch64 instruction set, 32-bit pointers, 32-bit 'long': arm64-ilp32.
-           # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': arm or armhf.
-           AC_COMPILE_IFELSE(
-             [AC_LANG_SOURCE(
-                [[#if defined __aarch64__ && !(defined __ILP32__ || defined _ILP32)
-                   int ok;
-                  #else
-                   error fail
-                  #endif
-                ]])],
-             [gl_cv_host_cpu_c_abi_32bit=no],
-             [gl_cv_host_cpu_c_abi_32bit=yes])
-           ;;
-
-         hppa1.0 | hppa1.1 | hppa2.0* | hppa64 )
-           # On hppa, the C compiler may be generating 32-bit code or 64-bit
-           # code. In the latter case, it defines _LP64 and __LP64__.
-           AC_COMPILE_IFELSE(
-             [AC_LANG_SOURCE(
-                [[#ifdef __LP64__
-                   int ok;
-                  #else
-                   error fail
-                  #endif
-                ]])],
-             [gl_cv_host_cpu_c_abi_32bit=no],
-             [gl_cv_host_cpu_c_abi_32bit=yes])
-           ;;
-
-         ia64* )
-           # On ia64 on HP-UX, the C compiler may be generating 64-bit code or
-           # 32-bit code. In the latter case, it defines _ILP32.
-           AC_COMPILE_IFELSE(
-             [AC_LANG_SOURCE(
-                [[#ifdef _ILP32
-                   int ok;
-                  #else
-                   error fail
-                  #endif
-                ]])],
-             [gl_cv_host_cpu_c_abi_32bit=yes],
-             [gl_cv_host_cpu_c_abi_32bit=no])
-           ;;
-
-         mips* )
-           # We should also check for (_MIPS_SZPTR == 64), but gcc keeps this
-           # at 32.
-           AC_COMPILE_IFELSE(
-             [AC_LANG_SOURCE(
-                [[#if defined _MIPS_SZLONG && (_MIPS_SZLONG == 64)
-                   int ok;
-                  #else
-                   error fail
-                  #endif
-                ]])],
-             [gl_cv_host_cpu_c_abi_32bit=no],
-             [gl_cv_host_cpu_c_abi_32bit=yes])
-           ;;
-
-         powerpc* )
-           # Different ABIs are in use on AIX vs. Mac OS X vs. Linux,*BSD.
-           # No need to distinguish them here; the caller may distinguish
-           # them based on the OS.
-           # On powerpc64 systems, the C compiler may still be generating
-           # 32-bit code. And on powerpc-ibm-aix systems, the C compiler may
-           # be generating 64-bit code.
-           AC_COMPILE_IFELSE(
-             [AC_LANG_SOURCE(
-                [[#if defined __powerpc64__ || defined _ARCH_PPC64
-                   int ok;
-                  #else
-                   error fail
-                  #endif
-                ]])],
-             [gl_cv_host_cpu_c_abi_32bit=no],
-             [gl_cv_host_cpu_c_abi_32bit=yes])
-           ;;
-
-         rs6000 )
-           gl_cv_host_cpu_c_abi_32bit=yes
-           ;;
-
-         riscv32 | riscv64 )
-           # There are 6 ABIs: ilp32, ilp32f, ilp32d, lp64, lp64f, lp64d.
-           # Size of 'long' and 'void *':
-           AC_COMPILE_IFELSE(
-             [AC_LANG_SOURCE(
-                [[#if defined __LP64__
-                    int ok;
-                  #else
-                    error fail
-                  #endif
-                ]])],
-             [gl_cv_host_cpu_c_abi_32bit=no],
-             [gl_cv_host_cpu_c_abi_32bit=yes])
-           ;;
-
-         s390* )
-           # On s390x, the C compiler may be generating 64-bit (= s390x) code
-           # or 31-bit (= s390) code.
-           AC_COMPILE_IFELSE(
-             [AC_LANG_SOURCE(
-                [[#if defined __LP64__ || defined __s390x__
-                    int ok;
-                  #else
-                    error fail
-                  #endif
-                ]])],
-             [gl_cv_host_cpu_c_abi_32bit=no],
-             [gl_cv_host_cpu_c_abi_32bit=yes])
-           ;;
-
-         sparc | sparc64 )
-           # UltraSPARCs running Linux have `uname -m` = "sparc64", but the
-           # C compiler still generates 32-bit code.
-           AC_COMPILE_IFELSE(
-             [AC_LANG_SOURCE(
-                [[#if defined __sparcv9 || defined __arch64__
-                   int ok;
-                  #else
-                   error fail
-                  #endif
-                ]])],
-             [gl_cv_host_cpu_c_abi_32bit=no],
-             [gl_cv_host_cpu_c_abi_32bit=yes])
-           ;;
-
-         *)
-           gl_cv_host_cpu_c_abi_32bit=no
-           ;;
-       esac
-     fi
-    ])
-
-  HOST_CPU_C_ABI_32BIT="$gl_cv_host_cpu_c_abi_32bit"
-])
index 86eb2c97c925bbdee4fa337e4661a9f728669e9e..9221d9f7d5f59069fdf874832638d06d4cde215a 100644 (file)
@@ -1,5 +1,5 @@
-# include_next.m4 serial 24
-dnl Copyright (C) 2006-2019 Free Software Foundation, Inc.
+# include_next.m4 serial 26
+dnl Copyright (C) 2006-2020 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.
@@ -106,19 +106,21 @@ dnl We intentionally avoid using AC_LANG_SOURCE here.
   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],
+
+  dnl HP NonStop systems, which define __TANDEM, limit the line length
+  dnl after including some system header files.
+  AC_CACHE_CHECK([whether source code line length is unlimited],
+    [gl_cv_source_line_length_unlimited],
+    [AC_EGREP_CPP([choke me],
        [
 #ifdef __TANDEM
 choke me
 #endif
        ],
-       [gl_cv_pragma_columns=yes],
-       [gl_cv_pragma_columns=no])
+       [gl_cv_source_line_length_unlimited=no],
+       [gl_cv_source_line_length_unlimited=yes])
     ])
-  if test $gl_cv_pragma_columns = yes; then
+  if test $gl_cv_source_line_length_unlimited = no; then
     PRAGMA_COLUMNS="#pragma COLUMNS 10000"
   else
     PRAGMA_COLUMNS=
@@ -176,42 +178,40 @@ AC_DEFUN([gl_NEXT_HEADERS_INTERNAL],
     [AC_CHECK_HEADERS_ONCE([$1])
     ])
 
-dnl FIXME: gl_next_header and gl_header_exists must be used unquoted
-dnl until we can assume autoconf 2.64 or newer.
   m4_foreach_w([gl_HEADER_NAME], [$1],
     [AS_VAR_PUSHDEF([gl_next_header],
                     [gl_cv_next_]m4_defn([gl_HEADER_NAME]))
      if test $gl_cv_have_include_next = yes; then
-       AS_VAR_SET(gl_next_header, ['<'gl_HEADER_NAME'>'])
+       AS_VAR_SET([gl_next_header], ['<'gl_HEADER_NAME'>'])
      else
        AC_CACHE_CHECK(
          [absolute name of <]m4_defn([gl_HEADER_NAME])[>],
-         m4_defn([gl_next_header]),
+         [gl_next_header],
          [m4_if([$2], [check],
             [AS_VAR_PUSHDEF([gl_header_exists],
                             [ac_cv_header_]m4_defn([gl_HEADER_NAME]))
-             if test AS_VAR_GET(gl_header_exists) = yes; then
+             if test AS_VAR_GET([gl_header_exists]) = yes; then
              AS_VAR_POPDEF([gl_header_exists])
             ])
            gl_ABSOLUTE_HEADER_ONE(gl_HEADER_NAME)
            AS_VAR_COPY([gl_header], [gl_cv_absolute_]AS_TR_SH(gl_HEADER_NAME))
-           AS_VAR_SET(gl_next_header, ['"'$gl_header'"'])
+           AS_VAR_SET([gl_next_header], ['"'$gl_header'"'])
           m4_if([$2], [check],
             [else
-               AS_VAR_SET(gl_next_header, ['<'gl_HEADER_NAME'>'])
+               AS_VAR_SET([gl_next_header], ['<'gl_HEADER_NAME'>'])
              fi
             ])
          ])
      fi
      AC_SUBST(
        AS_TR_CPP([NEXT_]m4_defn([gl_HEADER_NAME])),
-       [AS_VAR_GET(gl_next_header)])
+       [AS_VAR_GET([gl_next_header])])
      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='<'gl_HEADER_NAME'>'
      else
        # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
-       gl_next_as_first_directive=AS_VAR_GET(gl_next_header)
+       gl_next_as_first_directive=AS_VAR_GET([gl_next_header])
      fi
      AC_SUBST(
        AS_TR_CPP([NEXT_AS_FIRST_DIRECTIVE_]m4_defn([gl_HEADER_NAME])),
index 264892c1ee4cfd5ff7a9d9c929b8019b84851db1..4191a3993ffb0aa05a811dfd4e6e74573aa965f3 100644 (file)
@@ -1,5 +1,5 @@
 # inet_pton.m4 serial 19
-dnl Copyright (C) 2006, 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2006, 2008-2020 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.
index 3ecba86aff780f712b6cf55f7d0d9650068b1e0f..3cdee24536530e0a9bed5c4804817948852fe4c3 100644 (file)
@@ -1,15 +1,15 @@
-# intl-thread-locale.m4 serial 4
-dnl Copyright (C) 2015-2019 Free Software Foundation, Inc.
+# intl-thread-locale.m4 serial 8
+dnl Copyright (C) 2015-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
 dnl
 dnl This file can be used in projects which are not available under
-dnl the GNU General Public License or the GNU Library General Public
+dnl the GNU General Public License or the GNU Lesser General Public
 dnl License but which still want to provide support for the GNU gettext
 dnl functionality.
 dnl Please note that the actual code of the GNU gettext library is covered
-dnl by the GNU Library General Public License, and the rest of the GNU
+dnl by the GNU Lesser General Public License, and the rest of the GNU
 dnl gettext package is covered by the GNU General Public License.
 dnl They are *not* in the public domain.
 
@@ -17,7 +17,7 @@ dnl Check how to retrieve the name of a per-thread locale (POSIX locale_t).
 dnl Sets gt_nameless_locales.
 AC_DEFUN([gt_INTL_THREAD_LOCALE_NAME],
 [
-  AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
+  AC_REQUIRE([AC_CANONICAL_HOST])
 
   dnl Persuade Solaris <locale.h> to define 'locale_t'.
   AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
@@ -119,18 +119,20 @@ int main ()
       ;;
   esac
 
-  dnl This code is for future use, in case we some day have to port to a
-  dnl platform where the locale_t type does not provide access to the name of
-  dnl each locale category.  This code has the drawback that it requires the
-  dnl gnulib overrides of 'newlocale', 'duplocale', 'freelocale', which is a
-  dnl problem for GNU libunistring.  Therefore try hard to avoid enabling this
-  dnl code!
+  dnl This code is for platforms where the locale_t type does not provide access
+  dnl to the name of each locale category.  This code has the drawback that it
+  dnl requires the gnulib overrides of 'newlocale', 'duplocale', 'freelocale',
+  dnl which is a problem for GNU libunistring.  Therefore try hard to avoid
+  dnl enabling this code!
   gt_nameless_locales=no
-  if false; then
-    gt_nameless_locales=yes
-    AC_DEFINE([HAVE_NAMELESS_LOCALES], [1],
-      [Define if the locale_t type does not contain the name of each locale category.])
-  fi
+  case "$host_os" in
+    dnl It's needed on AIX 7.2.
+    aix*)
+      gt_nameless_locales=yes
+      AC_DEFINE([HAVE_NAMELESS_LOCALES], [1],
+        [Define if the locale_t type does not contain the name of each locale category.])
+      ;;
+  esac
 ])
 
 dnl Tests whether uselocale() exists and is usable.
@@ -139,13 +141,15 @@ AC_DEFUN([gt_FUNC_USELOCALE],
 [
   AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
 
-  dnl Persuade Solaris <locale.h> to define 'locale_t'.
+  dnl Persuade glibc and Solaris <locale.h> to define 'locale_t'.
   AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
 
   AC_CHECK_FUNCS_ONCE([uselocale])
 
   dnl On AIX 7.2, the uselocale() function is not documented and leads to
   dnl crashes in subsequent setlocale() invocations.
+  dnl In 2019, some versions of z/OS lack the locale_t type and have a broken
+  dnl uselocale function.
   if test $ac_cv_func_uselocale = yes; then
     AC_CHECK_HEADERS_ONCE([xlocale.h])
     AC_CACHE_CHECK([whether uselocale works],
@@ -156,6 +160,7 @@ AC_DEFUN([gt_FUNC_USELOCALE],
 #if HAVE_XLOCALE_H
 # include <xlocale.h>
 #endif
+locale_t loc1;
 int main ()
 {
   uselocale (NULL);
@@ -164,10 +169,10 @@ int main ()
 }]])],
          [gt_cv_func_uselocale_works=yes],
          [gt_cv_func_uselocale_works=no],
-         [# Guess no on AIX, yes otherwise.
+         [# Guess no on AIX and z/OS, yes otherwise.
           case "$host_os" in
-            aix*) gt_cv_func_uselocale_works="guessing no" ;;
-            *)    gt_cv_func_uselocale_works="guessing yes" ;;
+            aix* | openedition*) gt_cv_func_uselocale_works="guessing no" ;;
+            *)                   gt_cv_func_uselocale_works="guessing yes" ;;
           esac
          ])
       ])
index 3495174304347dde7accb8861d6ded584f165bdf..ebd9937c1aaabb4756fda8aa5eb80717013e1139 100644 (file)
@@ -1,15 +1,15 @@
-# intlmacosx.m4 serial 7 (gettext-0.20.2)
-dnl Copyright (C) 2004-2014, 2016, 2019 Free Software Foundation, Inc.
+# intlmacosx.m4 serial 8 (gettext-0.20.2)
+dnl Copyright (C) 2004-2014, 2016, 2019-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
 dnl
 dnl This file can be used in projects which are not available under
-dnl the GNU General Public License or the GNU Library General Public
+dnl the GNU General Public License or the GNU Lesser General Public
 dnl License but which still want to provide support for the GNU gettext
 dnl functionality.
 dnl Please note that the actual code of the GNU gettext library is covered
-dnl by the GNU Library General Public License, and the rest of the GNU
+dnl by the GNU Lesser General Public License, and the rest of the GNU
 dnl gettext package is covered by the GNU General Public License.
 dnl They are *not* in the public domain.
 
diff --git a/m4/inttypes-pri.m4 b/m4/inttypes-pri.m4
deleted file mode 100644 (file)
index 38fe118..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-# inttypes-pri.m4 serial 7 (gettext-0.18.2)
-dnl Copyright (C) 1997-2002, 2006, 2008-2019 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-
-dnl From Bruno Haible.
-
-AC_PREREQ([2.53])
-
-# Define PRI_MACROS_BROKEN if <inttypes.h> exists and defines the PRI*
-# macros to non-string values.  This is the case on AIX 4.3.3.
-
-AC_DEFUN([gt_INTTYPES_PRI],
-[
-  AC_CHECK_HEADERS([inttypes.h])
-  if test $ac_cv_header_inttypes_h = yes; then
-    AC_CACHE_CHECK([whether the inttypes.h PRIxNN macros are broken],
-      [gt_cv_inttypes_pri_broken],
-      [
-        AC_COMPILE_IFELSE(
-          [AC_LANG_PROGRAM(
-             [[
-#include <inttypes.h>
-#ifdef PRId32
-char *p = PRId32;
-#endif
-             ]],
-             [[]])],
-          [gt_cv_inttypes_pri_broken=no],
-          [gt_cv_inttypes_pri_broken=yes])
-      ])
-  fi
-  if test "$gt_cv_inttypes_pri_broken" = yes; then
-    AC_DEFINE_UNQUOTED([PRI_MACROS_BROKEN], [1],
-      [Define if <inttypes.h> exists and defines unusable PRI* macros.])
-    PRI_MACROS_BROKEN=1
-  else
-    PRI_MACROS_BROKEN=0
-  fi
-  AC_SUBST([PRI_MACROS_BROKEN])
-])
index c58a1bec4744437efe43a774d8c061b6e15293f1..84b1654ea26a9b2476d6dfecd6d0497f23056474 100644 (file)
@@ -1,5 +1,5 @@
-# inttypes.m4 serial 27
-dnl Copyright (C) 2006-2019 Free Software Foundation, Inc.
+# inttypes.m4 serial 32
+dnl Copyright (C) 2006-2020 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.
@@ -28,17 +28,26 @@ AC_DEFUN_ONCE([gl_INTTYPES_INCOMPLETE],
   dnl corresponding gnulib module is not in use.
   gl_WARN_ON_USE_PREPARE([[#include <inttypes.h>
     ]], [imaxabs imaxdiv strtoimax strtoumax])
+
+  AC_REQUIRE([AC_C_RESTRICT])
 ])
 
 # Ensure that the PRI* and SCN* macros are defined appropriately.
 AC_DEFUN([gl_INTTYPES_PRI_SCN],
 [
-  AC_REQUIRE([gt_INTTYPES_PRI])
-
   PRIPTR_PREFIX=
   if test -n "$STDINT_H"; then
-    dnl Using the gnulib <stdint.h>. It always defines intptr_t to 'long'.
-    PRIPTR_PREFIX='"l"'
+    dnl Using the gnulib <stdint.h>. It defines intptr_t to 'long' or
+    dnl 'long long', depending on _WIN64.
+    AC_COMPILE_IFELSE(
+      [AC_LANG_PROGRAM([[
+         #ifdef _WIN64
+         LLP64
+         #endif
+         ]])
+      ],
+      [PRIPTR_PREFIX='"l"'],
+      [PRIPTR_PREFIX='"ll"'])
   else
     dnl Using the system's <stdint.h>.
     for glpfx in '' l ll I64; do
@@ -113,10 +122,8 @@ AC_DEFUN([gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION],
 
             #if $2
              #define CONDITION ($3)
-            #elif HAVE_LONG_LONG_INT
-             #define CONDITION ($4)
             #else
-             #define CONDITION 0
+             #define CONDITION ($4)
             #endif
             int test[CONDITION ? 1 : -1];]])],
        [gl_cv_test_$1=yes],
@@ -152,7 +159,6 @@ AC_DEFUN([gl_INTTYPES_H_DEFAULTS],
   REPLACE_STRTOUMAX=0;   AC_SUBST([REPLACE_STRTOUMAX])
   INT32_MAX_LT_INTMAX_MAX=1;  AC_SUBST([INT32_MAX_LT_INTMAX_MAX])
   INT64_MAX_EQ_LONG_MAX='defined _LP64';  AC_SUBST([INT64_MAX_EQ_LONG_MAX])
-  PRI_MACROS_BROKEN=0;   AC_SUBST([PRI_MACROS_BROKEN])
   PRIPTR_PREFIX=__PRIPTR_PREFIX;  AC_SUBST([PRIPTR_PREFIX])
   UINT32_MAX_LT_UINTMAX_MAX=1;  AC_SUBST([UINT32_MAX_LT_UINTMAX_MAX])
   UINT64_MAX_EQ_ULONG_MAX='defined _LP64';  AC_SUBST([UINT64_MAX_EQ_ULONG_MAX])
index 2d00611b756a3330e664e86bb207e215f2ab3cf4..263aaaec38c60a5841ce8ef14148729b136424bf 100644 (file)
@@ -1,5 +1,5 @@
 # ioctl.m4 serial 5
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2020 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.
index 817084e42643cba523c55c13be65f2424331b448..5e1b78315f0039be7d6f93d4b47f59a80eb596bd 100644 (file)
@@ -1,5 +1,5 @@
 # isblank.m4 serial 3
-dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2009-2020 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.
index 76385d817c433f9f70d76fc22d4aeae309ba8fc2..9d5e16e8b391ebcbc34d43a09f621059a1771ed3 100644 (file)
@@ -1,5 +1,5 @@
-# langinfo_h.m4 serial 8
-dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# langinfo_h.m4 serial 9
+dnl Copyright (C) 2009-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -23,8 +23,10 @@ AC_DEFUN([gl_LANGINFO_H],
   AC_CHECK_HEADERS_ONCE([langinfo.h])
   if test $ac_cv_header_langinfo_h = yes; then
     HAVE_LANGINFO_H=1
-    dnl Determine what <langinfo.h> defines. CODESET and ERA etc. are missing
-    dnl on OpenBSD 3.8. T_FMT_AMPM and YESEXPR, NOEXPR are missing on IRIX 5.3.
+    dnl Determine what <langinfo.h> defines.
+    dnl CODESET is missing on OpenBSD 3.8.
+    dnl ERA etc. are missing on OpenBSD 6.7.
+    dnl T_FMT_AMPM and YESEXPR, NOEXPR are missing on IRIX 5.3.
     dnl ALTMON_* are missing on glibc 2.26 and many other systems.
     AC_CACHE_CHECK([whether langinfo.h defines CODESET],
       [gl_cv_header_langinfo_codeset],
index 1938188c17b998ff7eb1c5edb2b439d824aab4b6..2562d064b38287c879272af64832d5edf2734636 100644 (file)
@@ -1,24 +1,41 @@
 # Enable large files on systems where this is not the default.
+# Enable support for files on Linux file systems with 64-bit inode numbers.
 
-# Copyright 1992-1996, 1998-2019 Free Software Foundation, Inc.
+# Copyright 1992-1996, 1998-2020 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.
 
+# The following macro works around a problem in Autoconf's AC_FUNC_FSEEKO:
+# It does not set _LARGEFILE_SOURCE=1 on HP-UX/ia64 32-bit, although this
+# setting of _LARGEFILE_SOURCE is needed so that <stdio.h> declares fseeko
+# and ftello in C++ mode as well.
+AC_DEFUN([gl_SET_LARGEFILE_SOURCE],
+[
+  AC_REQUIRE([AC_CANONICAL_HOST])
+  AC_FUNC_FSEEKO
+  case "$host_os" in
+    hpux*)
+      AC_DEFINE([_LARGEFILE_SOURCE], [1],
+        [Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2).])
+      ;;
+  esac
+])
+
 # The following implementation works around a problem in autoconf <= 2.69;
 # AC_SYS_LARGEFILE does not configure for large inodes on Mac OS X 10.5,
 # or configures them incorrectly in some cases.
-m4_version_prereq([2.70], [] ,[
+m4_version_prereq([2.69c], [] ,[
 
 # _AC_SYS_LARGEFILE_TEST_INCLUDES
 # -------------------------------
 m4_define([_AC_SYS_LARGEFILE_TEST_INCLUDES],
-[@%:@include <sys/types.h>
+[#include <sys/types.h>
  /* Check that off_t can represent 2**63 - 1 correctly.
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[[(LARGE_OFF_T % 2147483629 == 721
                        && LARGE_OFF_T % 2147483647 == 1)
                       ? 1 : -1]];[]dnl
@@ -37,7 +54,7 @@ m4_define([_AC_SYS_LARGEFILE_MACRO_VALUE],
     [AC_LANG_PROGRAM([$5], [$6])],
     [$3=no; break])
   m4_ifval([$6], [AC_LINK_IFELSE], [AC_COMPILE_IFELSE])(
-    [AC_LANG_PROGRAM([@%:@define $1 $2
+    [AC_LANG_PROGRAM([#define $1 $2
 $5], [$6])],
     [$3=$2; break])
   $3=unknown
@@ -56,7 +73,10 @@ rm -rf conftest*[]dnl
 # By default, many hosts won't let programs access large files;
 # one must use special compiler options to get large-file access to work.
 # For more details about this brain damage please see:
-# http://www.unix-systems.org/version2/whatsnew/lfs20mar.html
+# http://www.unix.org/version2/whatsnew/lfs20mar.html
+# Additionally, on Linux file systems with 64-bit inodes a file that happens
+# to have a 64-bit inode number cannot be accessed by 32-bit applications on
+# Linux x86/x86_64.  This can occur with file systems such as XFS and NFS.
 AC_DEFUN([AC_SYS_LARGEFILE],
 [AC_ARG_ENABLE(largefile,
                [  --disable-largefile     omit support for large files])
@@ -93,12 +113,9 @@ if test "$enable_largefile" != no; then
       [Define for large files, on AIX-style hosts.],
       [_AC_SYS_LARGEFILE_TEST_INCLUDES])
   fi
-
-  AC_DEFINE([_DARWIN_USE_64_BIT_INODE], [1],
-    [Enable large inode numbers on Mac OS X 10.5.])
 fi
 ])# AC_SYS_LARGEFILE
-])# m4_version_prereq 2.70
+])# m4_version_prereq 2.69c
 
 # Enable large files on systems where this is implemented by Gnulib, not by the
 # system headers.
index 8d32e10f9f1fd81af3be0cd1ab4b104d7be8f8e1..f67c3d70d792905ee68b11af64745dedb7abc81f 100644 (file)
@@ -1,16 +1,16 @@
-# lcmessage.m4 serial 7 (gettext-0.18.2)
-dnl Copyright (C) 1995-2002, 2004-2005, 2008-2014, 2016, 2019 Free Software
-dnl Foundation, Inc.
+# lcmessage.m4 serial 8
+dnl Copyright (C) 1995-2002, 2004-2005, 2008-2014, 2016, 2019-2020 Free
+dnl Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
 dnl
 dnl This file can be used in projects which are not available under
-dnl the GNU General Public License or the GNU Library General Public
+dnl the GNU General Public License or the GNU Lesser General Public
 dnl License but which still want to provide support for the GNU gettext
 dnl functionality.
 dnl Please note that the actual code of the GNU gettext library is covered
-dnl by the GNU Library General Public License, and the rest of the GNU
+dnl by the GNU Lesser General Public License, and the rest of the GNU
 dnl gettext package is covered by the GNU General Public License.
 dnl They are *not* in the public domain.
 
index 1c198f9650b2704e4093bd877a6f31893040c29e..1b7703f639b167dd19c102b65f1e8f729c7935a3 100644 (file)
@@ -1,6 +1,6 @@
 # If possible, ignore libraries that are not depended on.
 
-dnl Copyright (C) 2006, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2006, 2009-2020 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.
index a18719630d59538c0c03a8677aca2adcd63313aa..ebb30528bd5abfdfcc2126175cbe1de99d902457 100644 (file)
-# lib-ld.m4 serial 9
-dnl Copyright (C) 1996-2003, 2009-2019 Free Software Foundation, Inc.
+# lib-ld.m4 serial 4 (gettext-0.18)
+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,
 dnl with or without modifications, as long as this notice is preserved.
 
 dnl Subroutines of libtool.m4,
-dnl with replacements s/_*LT_PATH/AC_LIB_PROG/ and s/lt_/acl_/ to avoid
-dnl collision with libtool.m4.
+dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision
+dnl with libtool.m4.
 
-dnl From libtool-2.4. Sets the variable with_gnu_ld to yes or no.
+dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no.
 AC_DEFUN([AC_LIB_PROG_LD_GNU],
 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], [acl_cv_prog_gnu_ld],
-[# I'd rather use --version here, but apparently some GNU lds only accept -v.
+[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
 case `$LD -v 2>&1 </dev/null` in
 *GNU* | *'with BFD'*)
-  acl_cv_prog_gnu_ld=yes
-  ;;
+  acl_cv_prog_gnu_ld=yes ;;
 *)
-  acl_cv_prog_gnu_ld=no
-  ;;
+  acl_cv_prog_gnu_ld=no ;;
 esac])
 with_gnu_ld=$acl_cv_prog_gnu_ld
 ])
 
-dnl From libtool-2.4. Sets the variable LD.
+dnl From libtool-1.4. Sets the variable LD.
 AC_DEFUN([AC_LIB_PROG_LD],
-[AC_REQUIRE([AC_PROG_CC])dnl
+[AC_ARG_WITH([gnu-ld],
+[  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]],
+test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
+AC_REQUIRE([AC_PROG_CC])dnl
 AC_REQUIRE([AC_CANONICAL_HOST])dnl
-
-AC_ARG_WITH([gnu-ld],
-    [AS_HELP_STRING([--with-gnu-ld],
-        [assume the C compiler uses GNU ld [default=no]])],
-    [test "$withval" = no || with_gnu_ld=yes],
-    [with_gnu_ld=no])dnl
-
 # Prepare PATH_SEPARATOR.
 # The user is always right.
 if test "${PATH_SEPARATOR+set}" != set; then
-  # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which
-  # contains only /bin. Note that ksh looks also at the FPATH variable,
-  # so we have to set that as well for the test.
-  PATH_SEPARATOR=:
-  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \
-    && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \
-           || PATH_SEPARATOR=';'
-       }
+  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
 fi
-
-if test -n "$LD"; then
-  AC_MSG_CHECKING([for ld])
-elif test "$GCC" = yes; then
-  AC_MSG_CHECKING([for ld used by $CC])
+ac_prog=ld
+if test "$GCC" = yes; then
+  # Check if gcc -print-prog-name=ld gives a path.
+  AC_MSG_CHECKING([for ld used by GCC])
+  case $host in
+  *-*-mingw*)
+    # gcc leaves a trailing carriage return which upsets mingw
+    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
+  *)
+    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
+  esac
+  case $ac_prog in
+    # Accept absolute paths.
+    [[\\/]* | [A-Za-z]:[\\/]*)]
+      [re_direlt='/[^/][^/]*/\.\./']
+      # Canonicalize the path of ld
+      ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
+      while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
+        ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
+      done
+      test -z "$LD" && LD="$ac_prog"
+      ;;
+  "")
+    # If it fails, then pretend we aren't using GCC.
+    ac_prog=ld
+    ;;
+  *)
+    # If it is relative, then search for the first ld in PATH.
+    with_gnu_ld=unknown
+    ;;
+  esac
 elif test "$with_gnu_ld" = yes; then
   AC_MSG_CHECKING([for GNU ld])
 else
   AC_MSG_CHECKING([for non-GNU ld])
 fi
-if test -n "$LD"; then
-  # Let the user override the test with a path.
-  :
-else
-  AC_CACHE_VAL([acl_cv_path_LD],
-  [
-    acl_cv_path_LD= # Final result of this test
-    ac_prog=ld # Program to search in $PATH
-    if test "$GCC" = yes; then
-      # Check if gcc -print-prog-name=ld gives a path.
-      case $host in
-        *-*-mingw*)
-          # gcc leaves a trailing carriage return which upsets mingw
-          acl_output=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
-        *)
-          acl_output=`($CC -print-prog-name=ld) 2>&5` ;;
-      esac
-      case $acl_output in
-        # Accept absolute paths.
-        [[\\/]]* | ?:[[\\/]]*)
-          re_direlt='/[[^/]][[^/]]*/\.\./'
-          # Canonicalize the pathname of ld
-          acl_output=`echo "$acl_output" | sed 's%\\\\%/%g'`
-          while echo "$acl_output" | grep "$re_direlt" > /dev/null 2>&1; do
-            acl_output=`echo $acl_output | sed "s%$re_direlt%/%"`
-          done
-          # Got the pathname. No search in PATH is needed.
-          acl_cv_path_LD="$acl_output"
-          ac_prog=
-          ;;
-        "")
-          # If it fails, then pretend we aren't using GCC.
-          ;;
-        *)
-          # If it is relative, then search for the first ld in PATH.
-          with_gnu_ld=unknown
-          ;;
+AC_CACHE_VAL([acl_cv_path_LD],
+[if test -z "$LD"; then
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
+  for ac_dir in $PATH; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
+      acl_cv_path_LD="$ac_dir/$ac_prog"
+      # Check to see if the program is GNU ld.  I'd rather use --version,
+      # but apparently some GNU ld's only accept -v.
+      # Break only if it was the GNU/non-GNU ld that we prefer.
+      case `"$acl_cv_path_LD" -v 2>&1 < /dev/null` in
+      *GNU* | *'with BFD'*)
+        test "$with_gnu_ld" != no && break ;;
+      *)
+        test "$with_gnu_ld" != yes && break ;;
       esac
     fi
-    if test -n "$ac_prog"; then
-      # Search for $ac_prog in $PATH.
-      acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-      for ac_dir in $PATH; do
-        IFS="$acl_save_ifs"
-        test -z "$ac_dir" && ac_dir=.
-        if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-          acl_cv_path_LD="$ac_dir/$ac_prog"
-          # Check to see if the program is GNU ld.  I'd rather use --version,
-          # but apparently some variants of GNU ld only accept -v.
-          # Break only if it was the GNU/non-GNU ld that we prefer.
-          case `"$acl_cv_path_LD" -v 2>&1 </dev/null` in
-            *GNU* | *'with BFD'*)
-              test "$with_gnu_ld" != no && break
-              ;;
-            *)
-              test "$with_gnu_ld" != yes && break
-              ;;
-          esac
-        fi
-      done
-      IFS="$acl_save_ifs"
-    fi
-    case $host in
-      *-*-aix*)
-        AC_COMPILE_IFELSE(
-          [AC_LANG_SOURCE(
-             [[#if defined __powerpc64__ || defined _ARCH_PPC64
-                int ok;
-               #else
-                error fail
-               #endif
-             ]])],
-          [# The compiler produces 64-bit code. Add option '-b64' so that the
-           # linker groks 64-bit object files.
-           case "$acl_cv_path_LD " in
-             *" -b64 "*) ;;
-             *) acl_cv_path_LD="$acl_cv_path_LD -b64" ;;
-           esac
-          ], [])
-        ;;
-      sparc64-*-netbsd*)
-        AC_COMPILE_IFELSE(
-          [AC_LANG_SOURCE(
-             [[#if defined __sparcv9 || defined __arch64__
-                int ok;
-               #else
-                error fail
-               #endif
-             ]])],
-          [],
-          [# The compiler produces 32-bit code. Add option '-m elf32_sparc'
-           # so that the linker groks 32-bit object files.
-           case "$acl_cv_path_LD " in
-             *" -m elf32_sparc "*) ;;
-             *) acl_cv_path_LD="$acl_cv_path_LD -m elf32_sparc" ;;
-           esac
-          ])
-        ;;
-    esac
-  ])
-  LD="$acl_cv_path_LD"
-fi
+  done
+  IFS="$ac_save_ifs"
+else
+  acl_cv_path_LD="$LD" # Let the user override the test with a path.
+fi])
+LD="$acl_cv_path_LD"
 if test -n "$LD"; then
   AC_MSG_RESULT([$LD])
 else
   AC_MSG_RESULT([no])
-  AC_MSG_ERROR([no acceptable ld found in \$PATH])
 fi
+test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
 AC_LIB_PROG_LD_GNU
 ])
index 0ff10731facd82df2d2e94453bbbf44b0d475965..c73bd8e3a478ce61292aaa298d42aad15c9d348a 100644 (file)
@@ -1,12 +1,12 @@
-# lib-link.m4 serial 28
-dnl Copyright (C) 2001-2019 Free Software Foundation, Inc.
+# lib-link.m4 serial 21 (gettext-0.18)
+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,
 dnl with or without modifications, as long as this notice is preserved.
 
 dnl From Bruno Haible.
 
-AC_PREREQ([2.61])
+AC_PREREQ([2.54])
 
 dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and
 dnl the libraries corresponding to explicit and implicit dependencies.
@@ -18,9 +18,9 @@ AC_DEFUN([AC_LIB_LINKFLAGS],
 [
   AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
   AC_REQUIRE([AC_LIB_RPATH])
-  pushdef([Name],[m4_translit([$1],[./+-], [____])])
-  pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-],
-                                   [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])])
+  pushdef([Name],[translit([$1],[./-], [___])])
+  pushdef([NAME],[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],[m4_translit([$1],[./+-], [____])])
-  pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-],
-                                   [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])])
+  pushdef([Name],[translit([$1],[./-], [___])])
+  pushdef([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
+                                [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
 
   dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME
   dnl accordingly.
@@ -85,8 +85,7 @@ AC_DEFUN([AC_LIB_HAVE_LINKFLAGS],
       *" -l"*) LIBS="$LIBS $LIB[]NAME" ;;
       *)       LIBS="$LIB[]NAME $LIBS" ;;
     esac
-    AC_LINK_IFELSE(
-      [AC_LANG_PROGRAM([[$3]], [[$4]])],
+    AC_TRY_LINK([$3], [$4],
       [ac_cv_lib[]Name=yes],
       [ac_cv_lib[]Name='m4_if([$5], [], [no], [[$5]])'])
     LIBS="$ac_save_LIBS"
@@ -116,16 +115,14 @@ AC_DEFUN([AC_LIB_HAVE_LINKFLAGS],
 dnl Determine the platform dependent parameters needed to use rpath:
 dnl   acl_libext,
 dnl   acl_shlibext,
-dnl   acl_libname_spec,
-dnl   acl_library_names_spec,
 dnl   acl_hardcode_libdir_flag_spec,
 dnl   acl_hardcode_libdir_separator,
 dnl   acl_hardcode_direct,
 dnl   acl_hardcode_minus_L.
 AC_DEFUN([AC_LIB_RPATH],
 [
-  dnl Complain if config.rpath is missing.
-  AC_REQUIRE_AUX_FILE([config.rpath])
+  dnl Tell automake >= 1.10 to complain if config.rpath is missing.
+  m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([config.rpath])])
   AC_REQUIRE([AC_PROG_CC])                dnl we use $CC, $GCC, $LDFLAGS
   AC_REQUIRE([AC_LIB_PROG_LD])            dnl we use $LD, $with_gnu_ld
   AC_REQUIRE([AC_CANONICAL_HOST])         dnl we use $host
@@ -160,15 +157,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],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-],
-                                   [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])])
+  pushdef([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
+                                [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
   define([acl_frompackage_]NAME, [$2])
   popdef([NAME])
   pushdef([PACK],[$2])
-  pushdef([PACKUP],[m4_translit(PACK,[abcdefghijklmnopqrstuvwxyz./+-],
-                                     [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])])
+  pushdef([PACKUP],[translit(PACK,[abcdefghijklmnopqrstuvwxyz./-],
+                                  [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
   define([acl_libsinpackage_]PACKUP,
-    m4_ifdef([acl_libsinpackage_]PACKUP, [m4_defn([acl_libsinpackage_]PACKUP)[, ]],)[lib$1])
+    m4_ifdef([acl_libsinpackage_]PACKUP, [acl_libsinpackage_]PACKUP[[, ]],)[lib$1])
   popdef([PACKUP])
   popdef([PACK])
 ])
@@ -181,21 +178,23 @@ dnl in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
 AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
 [
   AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
-  pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-],
-                                   [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])])
+  pushdef([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
+                                [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
   pushdef([PACK],[m4_ifdef([acl_frompackage_]NAME, [acl_frompackage_]NAME, lib[$1])])
-  pushdef([PACKUP],[m4_translit(PACK,[abcdefghijklmnopqrstuvwxyz./+-],
-                                     [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])])
+  pushdef([PACKUP],[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)])
   dnl By default, look in $includedir and $libdir.
   use_additional=yes
   AC_LIB_WITH_FINAL_PREFIX([
     eval additional_includedir=\"$includedir\"
     eval additional_libdir=\"$libdir\"
   ])
-  AC_ARG_WITH(PACK[-prefix],
-[[  --with-]]PACK[[-prefix[=DIR]  search for ]PACKLIBS[ in DIR/include and DIR/lib
-  --without-]]PACK[[-prefix     don't search for ]PACKLIBS[ in includedir and libdir]],
+  AC_ARG_WITH(P_A_C_K[-prefix],
+[[  --with-]]P_A_C_K[[-prefix[=DIR]  search for ]PACKLIBS[ in DIR/include and DIR/lib
+  --without-]]P_A_C_K[[-prefix     don't search for ]PACKLIBS[ in includedir and libdir]],
 [
     if test "X$withval" = "Xno"; then
       use_additional=no
@@ -209,7 +208,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
         additional_includedir="$withval/include"
         additional_libdir="$withval/$acl_libdirstem"
         if test "$acl_libdirstem2" != "$acl_libdirstem" \
-           && test ! -d "$withval/$acl_libdirstem"; then
+           && ! test -d "$withval/$acl_libdirstem"; then
           additional_libdir="$withval/$acl_libdirstem2"
         fi
       fi
@@ -243,7 +242,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
@@ -668,6 +667,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
       LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir"
     done
   fi
+  popdef([P_A_C_K])
   popdef([PACKLIBS])
   popdef([PACKUP])
   popdef([PACK])
index 8adb17bb9167df0d9efa87e3da6e5bec47033389..1601ceaefd3c2b447b569f991813be12b0e06e2d 100644 (file)
@@ -1,11 +1,18 @@
-# lib-prefix.m4 serial 14
-dnl Copyright (C) 2001-2005, 2008-2019 Free Software Foundation, Inc.
+# lib-prefix.m4 serial 7 (gettext-0.18)
+dnl Copyright (C) 2001-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,
 dnl with or without modifications, as long as this notice is preserved.
 
 dnl From Bruno Haible.
 
+dnl AC_LIB_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and
+dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't
+dnl require excessive bracketing.
+ifdef([AC_HELP_STRING],
+[AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])],
+[AC_DEFUN([AC_][LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])])
+
 dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed
 dnl to access previously installed libraries. The basic assumption is that
 dnl a user will want packages to use other packages he previously installed
@@ -25,9 +32,9 @@ AC_DEFUN([AC_LIB_PREFIX],
     eval additional_includedir=\"$includedir\"
     eval additional_libdir=\"$libdir\"
   ])
-  AC_ARG_WITH([lib-prefix],
-[[  --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib
-  --without-lib-prefix    don't search for libraries in includedir and libdir]],
+  AC_LIB_ARG_WITH([lib-prefix],
+[  --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib
+  --without-lib-prefix    don't search for libraries in includedir and libdir],
 [
     if test "X$withval" = "Xno"; then
       use_additional=no
@@ -167,83 +174,51 @@ AC_DEFUN([AC_LIB_PREPARE_MULTILIB],
   dnl $prefix/lib/64 (which is a symlink to either $prefix/lib/sparcv9 or
   dnl $prefix/lib/amd64) and 32-bit libraries go under $prefix/lib.
   AC_REQUIRE([AC_CANONICAL_HOST])
-  AC_REQUIRE([gl_HOST_CPU_C_ABI_32BIT])
-
+  acl_libdirstem=lib
+  acl_libdirstem2=
   case "$host_os" in
     solaris*)
+      dnl See Solaris 10 Software Developer Collection > Solaris 64-bit Developer's Guide > The Development Environment
+      dnl <http://docs.sun.com/app/docs/doc/816-5138/dev-env?l=en&a=view>.
+      dnl "Portable Makefiles should refer to any library directories using the 64 symbolic link."
+      dnl But we want to recognize the sparcv9 or amd64 subdirectory also if the
+      dnl symlink is missing, so we set acl_libdirstem2 too.
       AC_CACHE_CHECK([for 64-bit host], [gl_cv_solaris_64bit],
-        [AC_COMPILE_IFELSE(
-           [AC_LANG_SOURCE(
-              [[#ifdef _LP64
-                 int ok;
-                #else
-                 error fail
-                #endif
-              ]])],
-           [gl_cv_solaris_64bit=yes],
-           [gl_cv_solaris_64bit=no])
-        ]);;
-  esac
-
-  dnl Allow the user to override the result by setting acl_cv_libdirstems.
-  AC_CACHE_CHECK([for the common suffixes of directories in the library search path],
-    [acl_cv_libdirstems],
-    [acl_libdirstem=lib
-     acl_libdirstem2=
-     case "$host_os" in
-       solaris*)
-         dnl See Solaris 10 Software Developer Collection > Solaris 64-bit Developer's Guide > The Development Environment
-         dnl <https://docs.oracle.com/cd/E19253-01/816-5138/dev-env/index.html>.
-         dnl "Portable Makefiles should refer to any library directories using the 64 symbolic link."
-         dnl But we want to recognize the sparcv9 or amd64 subdirectory also if the
-         dnl symlink is missing, so we set acl_libdirstem2 too.
-         if test $gl_cv_solaris_64bit = yes; then
-           acl_libdirstem=lib/64
-           case "$host_cpu" in
-             sparc*)        acl_libdirstem2=lib/sparcv9 ;;
-             i*86 | x86_64) acl_libdirstem2=lib/amd64 ;;
-           esac
-         fi
-         ;;
-       *)
-         dnl If $CC generates code for a 32-bit ABI, the libraries are
-         dnl surely under $prefix/lib, not $prefix/lib64.
-         if test "$HOST_CPU_C_ABI_32BIT" != yes; then
-           dnl The result is a property of the system. However, non-system
-           dnl compilers sometimes have odd library search paths. Therefore
-           dnl prefer asking /usr/bin/gcc, if available, rather than $CC.
-           searchpath=`(if test -f /usr/bin/gcc \
-                           && LC_ALL=C /usr/bin/gcc -print-search-dirs >/dev/null 2>/dev/null; then \
-                          LC_ALL=C /usr/bin/gcc -print-search-dirs; \
-                        else \
-                          LC_ALL=C $CC -print-search-dirs; \
-                        fi) 2>/dev/null \
-                       | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
-           if test -n "$searchpath"; then
-             acl_save_IFS="${IFS=      }"; IFS=":"
-             for searchdir in $searchpath; do
-               if test -d "$searchdir"; then
+        [AC_EGREP_CPP([sixtyfour bits], [
+#ifdef _LP64
+sixtyfour bits
+#endif
+           ], [gl_cv_solaris_64bit=yes], [gl_cv_solaris_64bit=no])
+        ])
+      if test $gl_cv_solaris_64bit = yes; then
+        acl_libdirstem=lib/64
+        case "$host_cpu" in
+          sparc*)        acl_libdirstem2=lib/sparcv9 ;;
+          i*86 | x86_64) acl_libdirstem2=lib/amd64 ;;
+        esac
+      fi
+      ;;
+    *)
+      searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
+      if test -n "$searchpath"; then
+        acl_save_IFS="${IFS=   }"; IFS=":"
+        for searchdir in $searchpath; do
+          if test -d "$searchdir"; then
+            case "$searchdir" in
+              */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
+              */../ | */.. )
+                # Better ignore directories of this form. They are misleading.
+                ;;
+              *) searchdir=`cd "$searchdir" && pwd`
                  case "$searchdir" in
-                   */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
-                   */../ | */.. )
-                     # Better ignore directories of this form. They are misleading.
-                     ;;
-                   *) searchdir=`cd "$searchdir" && pwd`
-                      case "$searchdir" in
-                        */lib64 ) acl_libdirstem=lib64 ;;
-                      esac ;;
-                 esac
-               fi
-             done
-             IFS="$acl_save_IFS"
-           fi
-         fi
-         ;;
-     esac
-     test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem"
-     acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2"
-    ])
-  # Decompose acl_cv_libdirstems into acl_libdirstem and acl_libdirstem2.
-  acl_libdirstem=`echo "$acl_cv_libdirstems" | sed -e 's/,.*//'`
-  acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e '/,/s/.*,//'`
+                   */lib64 ) acl_libdirstem=lib64 ;;
+                 esac ;;
+            esac
+          fi
+        done
+        IFS="$acl_save_IFS"
+      fi
+      ;;
+  esac
+  test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem"
 ])
index 68f724c777ed0372950cb7ff3b47b8038c8f0085..0b4f092a4325c7be0ff8538cef1072ae5039345b 100644 (file)
@@ -1,6 +1,6 @@
 dnl Check whether limits.h has needed features.
 
-dnl Copyright 2016-2019 Free Software Foundation, Inc.
+dnl Copyright 2016-2020 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.
index 2a7f82d06f065dede1eb925c0eff3e9cee20284a..9d21c4f90624c4f7e5a6840e0cd838d67bdd2c3a 100644 (file)
@@ -1,5 +1,5 @@
 # localcharset.m4 serial 8
-dnl Copyright (C) 2002, 2004, 2006, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2002, 2004, 2006, 2009-2020 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.
index cfa068d594ed3c44161caa28549fd26a4c952e27..406951fedcec27ed3678da7c10982e75ae2403a2 100644 (file)
@@ -1,5 +1,5 @@
-# locale-fr.m4 serial 19
-dnl Copyright (C) 2003, 2005-2019 Free Software Foundation, Inc.
+# locale-fr.m4 serial 20
+dnl Copyright (C) 2003, 2005-2020 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,8 +12,7 @@ AC_DEFUN([gt_LOCALE_FR],
   AC_REQUIRE([AC_CANONICAL_HOST])
   AC_REQUIRE([AM_LANGINFO_CODESET])
   AC_CACHE_CHECK([for a traditional french locale], [gt_cv_locale_fr], [
-    AC_LANG_CONFTEST([AC_LANG_SOURCE([
-changequote(,)dnl
+    AC_LANG_CONFTEST([AC_LANG_SOURCE([[
 #include <locale.h>
 #include <time.h>
 #if HAVE_LANGINFO_CODESET
@@ -78,8 +77,7 @@ int main () {
   return 0;
 #endif
 }
-changequote([,])dnl
-      ])])
+      ]])])
     if AC_TRY_EVAL([ac_link]) && test -s conftest$ac_exeext; then
       case "$host_os" in
         # Handle native Windows specially, because there setlocale() interprets
@@ -143,8 +141,7 @@ AC_DEFUN([gt_LOCALE_FR_UTF8],
 [
   AC_REQUIRE([AM_LANGINFO_CODESET])
   AC_CACHE_CHECK([for a french Unicode locale], [gt_cv_locale_fr_utf8], [
-    AC_LANG_CONFTEST([AC_LANG_SOURCE([
-changequote(,)dnl
+    AC_LANG_CONFTEST([AC_LANG_SOURCE([[
 #include <locale.h>
 #include <time.h>
 #if HAVE_LANGINFO_CODESET
@@ -206,8 +203,7 @@ int main () {
 #endif
   return 0;
 }
-changequote([,])dnl
-      ])])
+      ]])])
     if AC_TRY_EVAL([ac_link]) && test -s conftest$ac_exeext; then
       case "$host_os" in
         # Handle native Windows specially, because there setlocale() interprets
index 487f68bdc3f2408c4bc4fe478f5a7e38344d2670..31e95b88ac535c51079f3cccf628f7344b75c726 100644 (file)
@@ -1,5 +1,5 @@
-# locale-ja.m4 serial 14
-dnl Copyright (C) 2003, 2005-2019 Free Software Foundation, Inc.
+# locale-ja.m4 serial 15
+dnl Copyright (C) 2003, 2005-2020 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,8 +12,7 @@ AC_DEFUN([gt_LOCALE_JA],
   AC_REQUIRE([AC_CANONICAL_HOST])
   AC_REQUIRE([AM_LANGINFO_CODESET])
   AC_CACHE_CHECK([for a traditional japanese locale], [gt_cv_locale_ja], [
-    AC_LANG_CONFTEST([AC_LANG_SOURCE([
-changequote(,)dnl
+    AC_LANG_CONFTEST([AC_LANG_SOURCE([[
 #include <locale.h>
 #include <time.h>
 #if HAVE_LANGINFO_CODESET
@@ -82,8 +81,7 @@ int main ()
   return 0;
 #endif
 }
-changequote([,])dnl
-      ])])
+      ]])])
     if AC_TRY_EVAL([ac_link]) && test -s conftest$ac_exeext; then
       case "$host_os" in
         # Handle native Windows specially, because there setlocale() interprets
index aeb2419792a368b45f6ff46ce0c7877f9afe8b71..b88a8a372da5866153ef5ebcea54b666fe0f7f5e 100644 (file)
@@ -1,5 +1,5 @@
-# locale-tr.m4 serial 11
-dnl Copyright (C) 2003, 2005-2019 Free Software Foundation, Inc.
+# locale-tr.m4 serial 13
+dnl Copyright (C) 2003, 2005-2020 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,8 +12,7 @@ AC_DEFUN([gt_LOCALE_TR_UTF8],
   AC_REQUIRE([AC_CANONICAL_HOST])
   AC_REQUIRE([AM_LANGINFO_CODESET])
   AC_CACHE_CHECK([for a turkish Unicode locale], [gt_cv_locale_tr_utf8], [
-    AC_LANG_CONFTEST([AC_LANG_SOURCE([
-changequote(,)dnl
+    AC_LANG_CONFTEST([AC_LANG_SOURCE([[
 #include <locale.h>
 #include <time.h>
 #if HAVE_LANGINFO_CODESET
@@ -21,6 +20,7 @@ changequote(,)dnl
 #endif
 #include <stdlib.h>
 #include <string.h>
+#include <wctype.h>
 struct tm t;
 char buf[16];
 int main () {
@@ -74,8 +74,7 @@ int main () {
     return 1;
   return 0;
 }
-changequote([,])dnl
-      ])])
+      ]])])
     if AC_TRY_EVAL([ac_link]) && test -s conftest$ac_exeext; then
       case "$host_os" in
         # Handle native Windows specially, because there setlocale() interprets
index 8b813263ae55cc7332df340865847b68c2928b21..c60883c11ed71c78cd24acf2021db21769db495d 100644 (file)
@@ -1,5 +1,5 @@
-# locale-zh.m4 serial 14
-dnl Copyright (C) 2003, 2005-2019 Free Software Foundation, Inc.
+# locale-zh.m4 serial 15
+dnl Copyright (C) 2003, 2005-2020 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,8 +12,7 @@ AC_DEFUN([gt_LOCALE_ZH_CN],
   AC_REQUIRE([AC_CANONICAL_HOST])
   AC_REQUIRE([AM_LANGINFO_CODESET])
   AC_CACHE_CHECK([for a transitional chinese locale], [gt_cv_locale_zh_CN], [
-    AC_LANG_CONFTEST([AC_LANG_SOURCE([
-changequote(,)dnl
+    AC_LANG_CONFTEST([AC_LANG_SOURCE([[
 #include <locale.h>
 #include <stdlib.h>
 #include <time.h>
@@ -83,8 +82,7 @@ int main ()
   return 0;
 #endif
 }
-changequote([,])dnl
-      ])])
+      ]])])
     if AC_TRY_EVAL([ac_link]) && test -s conftest$ac_exeext; then
       case "$host_os" in
         # Handle native Windows specially, because there setlocale() interprets
index d28ba0c2df59739204f1d84bcd2302846b267ab4..32494cf225f5398e40f10be15cc0f77902c692f1 100644 (file)
@@ -1,5 +1,5 @@
-# locale_h.m4 serial 21
-dnl Copyright (C) 2007, 2009-2019 Free Software Foundation, Inc.
+# locale_h.m4 serial 24
+dnl Copyright (C) 2007, 2009-2020 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.
@@ -17,6 +17,8 @@ AC_DEFUN([gl_LOCALE_H],
   dnl If <stddef.h> is replaced, then <locale.h> must also be replaced.
   AC_REQUIRE([gl_STDDEF_H])
 
+  AC_REQUIRE([gl_LOCALE_T])
+
   dnl Solaris 11.0 defines the int_p_*, int_n_* members of 'struct lconv'
   dnl only if _LCONV_C99 is defined.
   AC_REQUIRE([AC_CANONICAL_HOST])
@@ -37,34 +39,6 @@ AC_DEFUN([gl_LOCALE_H],
        [gl_cv_header_locale_h_posix2001=yes],
        [gl_cv_header_locale_h_posix2001=no])])
 
-  dnl Check for <xlocale.h>.
-  AC_CHECK_HEADERS_ONCE([xlocale.h])
-  if test $ac_cv_header_xlocale_h = yes; then
-    HAVE_XLOCALE_H=1
-    dnl Check whether use of locale_t requires inclusion of <xlocale.h>,
-    dnl e.g. on Mac OS X 10.5. If <locale.h> does not define locale_t by
-    dnl itself, we assume that <xlocale.h> will do so.
-    AC_CACHE_CHECK([whether locale.h defines locale_t],
-      [gl_cv_header_locale_has_locale_t],
-      [AC_COMPILE_IFELSE(
-         [AC_LANG_PROGRAM(
-            [[#include <locale.h>
-              locale_t x;]],
-            [[]])],
-         [gl_cv_header_locale_has_locale_t=yes],
-         [gl_cv_header_locale_has_locale_t=no])
-      ])
-    if test $gl_cv_header_locale_has_locale_t = yes; then
-      gl_cv_header_locale_h_needs_xlocale_h=no
-    else
-      gl_cv_header_locale_h_needs_xlocale_h=yes
-    fi
-  else
-    HAVE_XLOCALE_H=0
-    gl_cv_header_locale_h_needs_xlocale_h=no
-  fi
-  AC_SUBST([HAVE_XLOCALE_H])
-
   dnl Check whether 'struct lconv' is complete.
   dnl Bionic libc's 'struct lconv' is just a dummy.
   dnl On OpenBSD 4.9, HP-UX 11, IRIX 6.5, OSF/1 5.1, Solaris 9, Cygwin 1.5.x,
@@ -82,7 +56,20 @@ AC_DEFUN([gl_LOCALE_H],
        [gl_cv_sys_struct_lconv_ok=no])
     ])
   if test $gl_cv_sys_struct_lconv_ok = no; then
-    REPLACE_STRUCT_LCONV=1
+    dnl On native Windows with MSVC, merely define these member names as macros.
+    dnl This avoids trouble in C++ mode.
+    case "$host_os" in
+      mingw*)
+        AC_EGREP_CPP([Special], [
+#ifdef _MSC_VER
+ Special
+#endif
+          ],
+          [],
+          [REPLACE_STRUCT_LCONV=1])
+        ;;
+      *) REPLACE_STRUCT_LCONV=1 ;;
+    esac
   fi
 
   dnl <locale.h> is always overridden, because of GNULIB_POSIXCHECK.
@@ -99,6 +86,49 @@ AC_DEFUN([gl_LOCALE_H],
     [setlocale newlocale duplocale freelocale])
 ])
 
+dnl Checks to determine whether the system has the locale_t type,
+dnl and how to obtain it.
+AC_DEFUN([gl_LOCALE_T],
+[
+  dnl Persuade glibc and Solaris <locale.h> to define locale_t.
+  AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
+
+  dnl Check whether use of locale_t requires inclusion of <xlocale.h>,
+  dnl e.g. on Mac OS X 10.5. If <locale.h> does not define locale_t by
+  dnl itself, we assume that <xlocale.h> will do so.
+  AC_CACHE_CHECK([whether locale.h defines locale_t],
+    [gl_cv_header_locale_has_locale_t],
+    [AC_COMPILE_IFELSE(
+       [AC_LANG_PROGRAM(
+          [[#include <locale.h>
+            locale_t x;]],
+          [[]])],
+       [gl_cv_header_locale_has_locale_t=yes],
+       [gl_cv_header_locale_has_locale_t=no])
+    ])
+
+  dnl Check for <xlocale.h>.
+  AC_CHECK_HEADERS_ONCE([xlocale.h])
+  if test $ac_cv_header_xlocale_h = yes; then
+    HAVE_XLOCALE_H=1
+    if test $gl_cv_header_locale_has_locale_t = yes; then
+      gl_cv_header_locale_h_needs_xlocale_h=no
+    else
+      gl_cv_header_locale_h_needs_xlocale_h=yes
+    fi
+    HAVE_LOCALE_T=1
+  else
+    HAVE_XLOCALE_H=0
+    gl_cv_header_locale_h_needs_xlocale_h=no
+    if test $gl_cv_header_locale_has_locale_t = yes; then
+      HAVE_LOCALE_T=1
+    else
+      HAVE_LOCALE_T=0
+    fi
+  fi
+  AC_SUBST([HAVE_XLOCALE_H])
+])
+
 AC_DEFUN([gl_LOCALE_MODULE_INDICATOR],
 [
   dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
@@ -110,10 +140,11 @@ AC_DEFUN([gl_LOCALE_MODULE_INDICATOR],
 
 AC_DEFUN([gl_LOCALE_H_DEFAULTS],
 [
-  GNULIB_LOCALECONV=0; AC_SUBST([GNULIB_LOCALECONV])
-  GNULIB_SETLOCALE=0;  AC_SUBST([GNULIB_SETLOCALE])
-  GNULIB_DUPLOCALE=0;  AC_SUBST([GNULIB_DUPLOCALE])
-  GNULIB_LOCALENAME=0; AC_SUBST([GNULIB_LOCALENAME])
+  GNULIB_LOCALECONV=0;     AC_SUBST([GNULIB_LOCALECONV])
+  GNULIB_SETLOCALE=0;      AC_SUBST([GNULIB_SETLOCALE])
+  GNULIB_SETLOCALE_NULL=0; AC_SUBST([GNULIB_SETLOCALE_NULL])
+  GNULIB_DUPLOCALE=0;      AC_SUBST([GNULIB_DUPLOCALE])
+  GNULIB_LOCALENAME=0;     AC_SUBST([GNULIB_LOCALENAME])
   dnl Assume proper GNU behavior unless another module says otherwise.
   HAVE_NEWLOCALE=1;       AC_SUBST([HAVE_NEWLOCALE])
   HAVE_DUPLOCALE=1;       AC_SUBST([HAVE_DUPLOCALE])
index 9bb78f0d8389ed82f785ba53e719f85ce56a444f..a926224f855cfcee33651fb8ec0a70fe6b9ac41a 100644 (file)
@@ -1,5 +1,5 @@
 # localeconv.m4 serial 1
-dnl Copyright (C) 2012-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2012-2020 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.
index a9f629dd17762850a4032ee3171d02623c598087..fa7fe12befdd5cdb5dd6562c277aacc951220f95 100644 (file)
@@ -1,5 +1,5 @@
-# localename.m4 serial 6
-dnl Copyright (C) 2007, 2009-2019 Free Software Foundation, Inc.
+# localename.m4 serial 7
+dnl Copyright (C) 2007, 2009-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -7,18 +7,30 @@ dnl with or without modifications, as long as this notice is preserved.
 AC_DEFUN([gl_LOCALENAME],
 [
   AC_REQUIRE([gl_LOCALE_H_DEFAULTS])
+  AC_REQUIRE([gl_LOCALE_T])
   AC_REQUIRE([gt_LC_MESSAGES])
   AC_REQUIRE([gt_INTL_THREAD_LOCALE_NAME])
   AC_REQUIRE([gt_INTL_MACOSX])
   AC_CHECK_HEADERS_ONCE([langinfo.h])
-  AC_CHECK_FUNCS_ONCE([newlocale duplocale freelocale])
-  if test $ac_cv_func_newlocale != yes; then
+  if test $HAVE_LOCALE_T = 1; then
+    AC_CHECK_FUNCS_ONCE([newlocale duplocale freelocale])
+    gl_func_newlocale="$ac_cv_func_newlocale"
+    gl_func_duplocale="$ac_cv_func_duplocale"
+    gl_func_freelocale="$ac_cv_func_freelocale"
+  else
+    dnl In 2019, some versions of z/OS lack the locale_t type and have broken
+    dnl newlocale, duplocale, freelocale functions.
+    gl_func_newlocale=no
+    gl_func_duplocale=no
+    gl_func_freelocale=no
+  fi
+  if test $gl_func_newlocale != yes; then
     HAVE_NEWLOCALE=0
   fi
-  if test $ac_cv_func_duplocale != yes; then
+  if test $gl_func_duplocale != yes; then
     HAVE_DUPLOCALE=0
   fi
-  if test $ac_cv_func_freelocale != yes; then
+  if test $gl_func_freelocale != yes; then
     HAVE_FREELOCALE=0
   fi
   if test $gt_nameless_locales = yes; then
diff --git a/m4/localtime-buffer.m4 b/m4/localtime-buffer.m4
deleted file mode 100644 (file)
index 6d99828..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-# localtime-buffer.m4 serial 1
-dnl Copyright (C) 2017-2019 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-
-AC_DEFUN([gl_LOCALTIME_BUFFER_DEFAULTS],
-[
-  NEED_LOCALTIME_BUFFER=0
-])
-
-dnl Macro invoked from other modules, to signal that the compilation of
-dnl module 'localtime-buffer' is needed.
-AC_DEFUN([gl_LOCALTIME_BUFFER_NEEDED],
-[
-  AC_REQUIRE([gl_LOCALTIME_BUFFER_DEFAULTS])
-  AC_REQUIRE([gl_HEADER_TIME_H_DEFAULTS])
-  NEED_LOCALTIME_BUFFER=1
-  REPLACE_GMTIME=1
-  REPLACE_LOCALTIME=1
-])
index 93b76fa44db620e4e44aca2946bd561db2cdfffd..1c39591d5e3102e055469c45e26351dd469d682f 100644 (file)
@@ -1,5 +1,5 @@
 # lock.m4 serial 14
-dnl Copyright (C) 2005-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2005-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/m4/longlong.m4 b/m4/longlong.m4
deleted file mode 100644 (file)
index 08d0e36..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-# longlong.m4 serial 18
-dnl Copyright (C) 1999-2007, 2009-2019 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-
-dnl From Paul Eggert.
-
-AC_PREREQ([2.62])
-
-# Define HAVE_LONG_LONG_INT if 'long long int' works.
-# This can be faster than what's in Autoconf 2.62 through 2.68.
-
-# Note: If the type 'long long int' exists but is only 32 bits large
-# (as on some very old compilers), HAVE_LONG_LONG_INT will not be
-# defined. In this case you can treat 'long long int' like 'long int'.
-
-AC_DEFUN([AC_TYPE_LONG_LONG_INT],
-[
-  AC_REQUIRE([AC_TYPE_UNSIGNED_LONG_LONG_INT])
-  AC_CACHE_CHECK([for long long int], [ac_cv_type_long_long_int],
-     [ac_cv_type_long_long_int=yes
-      if test "x${ac_cv_prog_cc_c99-no}" = xno; then
-        ac_cv_type_long_long_int=$ac_cv_type_unsigned_long_long_int
-        if test $ac_cv_type_long_long_int = yes; then
-          dnl Catch a bug in Tandem NonStop Kernel (OSS) cc -O circa 2004.
-          dnl If cross compiling, assume the bug is not important, since
-          dnl nobody cross compiles for this platform as far as we know.
-          AC_RUN_IFELSE(
-            [AC_LANG_PROGRAM(
-               [[@%:@include <limits.h>
-                 @%:@ifndef LLONG_MAX
-                 @%:@ define HALF \
-                          (1LL << (sizeof (long long int) * CHAR_BIT - 2))
-                 @%:@ define LLONG_MAX (HALF - 1 + HALF)
-                 @%:@endif]],
-               [[long long int n = 1;
-                 int i;
-                 for (i = 0; ; i++)
-                   {
-                     long long int m = n << i;
-                     if (m >> i != n)
-                       return 1;
-                     if (LLONG_MAX / 2 < m)
-                       break;
-                   }
-                 return 0;]])],
-            [],
-            [ac_cv_type_long_long_int=no],
-            [:])
-        fi
-      fi])
-  if test $ac_cv_type_long_long_int = yes; then
-    AC_DEFINE([HAVE_LONG_LONG_INT], [1],
-      [Define to 1 if the system has the type 'long long int'.])
-  fi
-])
-
-# Define HAVE_UNSIGNED_LONG_LONG_INT if 'unsigned long long int' works.
-# This can be faster than what's in Autoconf 2.62 through 2.68.
-
-# Note: If the type 'unsigned long long int' exists but is only 32 bits
-# large (as on some very old compilers), AC_TYPE_UNSIGNED_LONG_LONG_INT
-# will not be defined. In this case you can treat 'unsigned long long int'
-# like 'unsigned long int'.
-
-AC_DEFUN([AC_TYPE_UNSIGNED_LONG_LONG_INT],
-[
-  AC_CACHE_CHECK([for unsigned long long int],
-    [ac_cv_type_unsigned_long_long_int],
-    [ac_cv_type_unsigned_long_long_int=yes
-     if test "x${ac_cv_prog_cc_c99-no}" = xno; then
-       AC_LINK_IFELSE(
-         [_AC_TYPE_LONG_LONG_SNIPPET],
-         [],
-         [ac_cv_type_unsigned_long_long_int=no])
-     fi])
-  if test $ac_cv_type_unsigned_long_long_int = yes; then
-    AC_DEFINE([HAVE_UNSIGNED_LONG_LONG_INT], [1],
-      [Define to 1 if the system has the type 'unsigned long long int'.])
-  fi
-])
-
-# Expands to a C program that can be used to test for simultaneous support
-# of 'long long' and 'unsigned long long'. We don't want to say that
-# 'long long' is available if 'unsigned long long' is not, or vice versa,
-# because too many programs rely on the symmetry between signed and unsigned
-# integer types (excluding 'bool').
-AC_DEFUN([_AC_TYPE_LONG_LONG_SNIPPET],
-[
-  AC_LANG_PROGRAM(
-    [[/* For now, do not test the preprocessor; as of 2007 there are too many
-         implementations with broken preprocessors.  Perhaps this can
-         be revisited in 2012.  In the meantime, code should not expect
-         #if to work with literals wider than 32 bits.  */
-      /* Test literals.  */
-      long long int ll = 9223372036854775807ll;
-      long long int nll = -9223372036854775807LL;
-      unsigned long long int ull = 18446744073709551615ULL;
-      /* Test constant expressions.   */
-      typedef int a[((-9223372036854775807LL < 0 && 0 < 9223372036854775807ll)
-                     ? 1 : -1)];
-      typedef int b[(18446744073709551615ULL <= (unsigned long long int) -1
-                     ? 1 : -1)];
-      int i = 63;]],
-    [[/* Test availability of runtime routines for shift and division.  */
-      long long int llmax = 9223372036854775807ll;
-      unsigned long long int ullmax = 18446744073709551615ull;
-      return ((ll << 63) | (ll >> 63) | (ll < i) | (ll > i)
-              | (llmax / ll) | (llmax % ll)
-              | (ull << 63) | (ull >> 63) | (ull << i) | (ull >> i)
-              | (ullmax / ull) | (ullmax % ull));]])
-])
index d55ec2a3b112bd6e590546c6f3aa67a3c51788c7..472a1cbba088e5538c764f0653c43a30b4cab5bd 100644 (file)
@@ -1,5 +1,5 @@
-# lseek.m4 serial 10
-dnl Copyright (C) 2007, 2009-2019 Free Software Foundation, Inc.
+# lseek.m4 serial 11
+dnl Copyright (C) 2007, 2009-2020 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,7 +32,8 @@ AC_DEFUN([gl_FUNC_LSEEK],
 #else /* on Windows with MSVC */
 # include <io.h>
 #endif
-]], [[
+]GL_MDA_DEFINES],
+[[
   /* Exit with success only if stdin is seekable.  */
   return lseek (0, (off_t)0, SEEK_CUR) < 0;
 ]])],
index ace163867e22731234fd80bead0caf5ed69d8200..3c2b214b85743a7d505414128c1b3df1e6e72eee 100644 (file)
@@ -1,6 +1,6 @@
-# serial 32
+# serial 33
 
-# Copyright (C) 1997-2001, 2003-2019 Free Software Foundation, Inc.
+# Copyright (C) 1997-2001, 2003-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -63,8 +63,8 @@ AC_DEFUN([gl_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK],
             # Guess no on native Windows.
             gl_cv_func_lstat_dereferences_slashed_symlink="guessing no" ;;
           *)
-            # If we don't know, assume the worst.
-            gl_cv_func_lstat_dereferences_slashed_symlink="guessing no" ;;
+            # If we don't know, obey --enable-cross-guesses.
+            gl_cv_func_lstat_dereferences_slashed_symlink="$gl_cross_guess_normal" ;;
         esac
        ])
      rm -f conftest.sym conftest.file
index c469c4508deb9423de07d864d241229287a65790..3823566d950dd1b1e627b83266ce65505d83f0a8 100644 (file)
@@ -1,27 +1,19 @@
-# malloc.m4 serial 19
-dnl Copyright (C) 2007, 2009-2019 Free Software Foundation, Inc.
+# malloc.m4 serial 21
+dnl Copyright (C) 2007, 2009-2020 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.
 
-m4_version_prereq([2.70], [] ,[
-
 # This is adapted with modifications from upstream Autoconf here:
 # https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=04be2b7a29d65d9a08e64e8e56e594c91749598c
 AC_DEFUN([_AC_FUNC_MALLOC_IF],
 [
-  AC_REQUIRE([AC_HEADER_STDC])dnl
   AC_REQUIRE([AC_CANONICAL_HOST])dnl for cross-compiles
-  AC_CHECK_HEADERS([stdlib.h])
   AC_CACHE_CHECK([for GNU libc compatible malloc],
     [ac_cv_func_malloc_0_nonnull],
     [AC_RUN_IFELSE(
        [AC_LANG_PROGRAM(
-          [[#if defined STDC_HEADERS || defined HAVE_STDLIB_H
-            # include <stdlib.h>
-            #else
-            char *malloc ();
-            #endif
+          [[#include <stdlib.h>
           ]],
           [[char *p = malloc (0);
             int result = !p;
@@ -35,8 +27,8 @@ AC_DEFUN([_AC_FUNC_MALLOC_IF],
           *-gnu* | gnu* | *-musl* | freebsd* | netbsd* | openbsd* \
           | hpux* | solaris* | cygwin* | mingw*)
             ac_cv_func_malloc_0_nonnull="guessing yes" ;;
-          # If we don't know, assume the worst.
-          *) ac_cv_func_malloc_0_nonnull="guessing no" ;;
+          # If we don't know, obey --enable-cross-guesses.
+          *) ac_cv_func_malloc_0_nonnull="$gl_cross_guess_normal" ;;
         esac
        ])
     ])
@@ -50,8 +42,6 @@ AC_DEFUN([_AC_FUNC_MALLOC_IF],
   esac
 ])# _AC_FUNC_MALLOC_IF
 
-])
-
 # gl_FUNC_MALLOC_GNU
 # ------------------
 # Test whether 'malloc (0)' is handled like in GNU libc, and replace malloc if
index 820f40a8a88cce48935d3b0a61804141e97b71b2..930199da14ac72dc1faf1cb7ba19a2def4d459ef 100644 (file)
@@ -1,5 +1,5 @@
-# malloca.m4 serial 1
-dnl Copyright (C) 2003-2004, 2006-2007, 2009-2019 Free Software Foundation,
+# malloca.m4 serial 2
+dnl Copyright (C) 2003-2004, 2006-2007, 2009-2020 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,
@@ -11,5 +11,4 @@ AC_DEFUN([gl_MALLOCA],
   dnl @ALLOCA@ and @LTALLOCA@.
   dnl gl_FUNC_ALLOCA   dnl Already brought in by the module dependencies.
   AC_REQUIRE([gl_EEMALLOC])
-  AC_REQUIRE([AC_TYPE_LONG_LONG_INT])
 ])
index 6bb9f8f84e867961cc1cf3d6c1a764d4c34f862a..a37cd15b69a48bd182b571970773b2f31fdb5231 100644 (file)
@@ -1,5 +1,5 @@
-# manywarnings.m4 serial 18
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+# manywarnings.m4 serial 21
+dnl Copyright (C) 2008-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -21,7 +21,7 @@ AC_DEFUN([gl_MANYWARN_COMPLEMENT],
       *" $gl_warn_item "*)
         ;;
       *)
-        gl_warn_set="$gl_warn_set $gl_warn_item"
+        gl_AS_VAR_APPEND([gl_warn_set], [" $gl_warn_item"])
         ;;
     esac
   done
@@ -39,8 +39,7 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC],
 [_AC_LANG_DISPATCH([$0], _AC_LANG, $@)])
 
 # Specialization for _AC_LANG = C.
-# Use of m4_defun rather than AC_DEFUN works around a bug in autoconf < 2.63b.
-m4_defun([gl_MANYWARN_ALL_GCC(C)],
+AC_DEFUN([gl_MANYWARN_ALL_GCC(C)],
 [
   AC_LANG_PUSH([C])
 
@@ -49,12 +48,12 @@ m4_defun([gl_MANYWARN_ALL_GCC(C)],
   AC_REQUIRE([AC_PROG_CC])
   if test -n "$GCC"; then
 
-    dnl Check if -W -Werror -Wno-missing-field-initializers is supported
+    dnl Check if -Wextra -Werror -Wno-missing-field-initializers is supported
     dnl with the current $CC $CFLAGS $CPPFLAGS.
     AC_CACHE_CHECK([whether -Wno-missing-field-initializers is supported],
       [gl_cv_cc_nomfi_supported],
       [gl_save_CFLAGS="$CFLAGS"
-       CFLAGS="$CFLAGS -W -Werror -Wno-missing-field-initializers"
+       CFLAGS="$CFLAGS -Wextra -Werror -Wno-missing-field-initializers"
        AC_COMPILE_IFELSE(
          [AC_LANG_PROGRAM([[]], [[]])],
          [gl_cv_cc_nomfi_supported=yes],
@@ -68,7 +67,7 @@ m4_defun([gl_MANYWARN_ALL_GCC(C)],
       AC_CACHE_CHECK([whether -Wno-missing-field-initializers is needed],
         [gl_cv_cc_nomfi_needed],
         [gl_save_CFLAGS="$CFLAGS"
-         CFLAGS="$CFLAGS -W -Werror"
+         CFLAGS="$CFLAGS -Wextra -Werror"
          AC_COMPILE_IFELSE(
            [AC_LANG_PROGRAM(
               [[int f (void)
@@ -105,133 +104,41 @@ m4_defun([gl_MANYWARN_ALL_GCC(C)],
   # To compare this list to your installed GCC's, run this Bash command:
   #
   # comm -3 \
-  #  <((sed -n 's/^  *\(-[^ 0-9][^ ]*\) .*/\1/p' manywarnings.m4; \
+  #  <((sed -n 's/^  *\(-[^ 0-9][^ ]*\).*/\1/p' manywarnings.m4; \
   #     awk '/^[^#]/ {print $1}' ../build-aux/gcc-warning.spec) | sort) \
   #  <(LC_ALL=C gcc --help=warnings | sed -n 's/^  \(-[^ ]*\) .*/\1/p' | sort)
 
-  gl_manywarn_set=
-  for gl_manywarn_item in -fno-common \
-    -W \
-    -Wabsolute-value \
-    -Waddress \
-    -Waddress-of-packed-member \
-    -Waggressive-loop-optimizations \
+  $1=
+  for gl_manywarn_item in -fanalyzer -fno-common \
     -Wall \
-    -Wattribute-warning \
-    -Wattributes \
+    -Warith-conversion \
     -Wbad-function-cast \
-    -Wbool-compare \
-    -Wbool-operation \
-    -Wbuiltin-declaration-mismatch \
-    -Wbuiltin-macro-redefined \
-    -Wcannot-profile \
-    -Wcast-align \
     -Wcast-align=strict \
-    -Wcast-function-type \
-    -Wchar-subscripts \
-    -Wclobbered \
-    -Wcomment \
-    -Wcomments \
-    -Wcoverage-mismatch \
-    -Wcpp \
-    -Wdangling-else \
     -Wdate-time \
-    -Wdeprecated \
-    -Wdeprecated-declarations \
-    -Wdesignated-init \
     -Wdisabled-optimization \
-    -Wdiscarded-array-qualifiers \
-    -Wdiscarded-qualifiers \
-    -Wdiv-by-zero \
     -Wdouble-promotion \
     -Wduplicated-branches \
     -Wduplicated-cond \
-    -Wduplicate-decl-specifier \
-    -Wempty-body \
-    -Wendif-labels \
-    -Wenum-compare \
-    -Wexpansion-to-defined \
     -Wextra \
-    -Wformat-contains-nul \
-    -Wformat-extra-args \
-    -Wformat-nonliteral \
-    -Wformat-security \
     -Wformat-signedness \
-    -Wformat-y2k \
-    -Wformat-zero-length \
-    -Wframe-address \
-    -Wfree-nonheap-object \
-    -Whsa \
-    -Wif-not-aligned \
-    -Wignored-attributes \
-    -Wignored-qualifiers \
-    -Wimplicit \
-    -Wimplicit-function-declaration \
-    -Wimplicit-int \
-    -Wincompatible-pointer-types \
     -Winit-self \
     -Winline \
-    -Wint-conversion \
-    -Wint-in-bool-context \
-    -Wint-to-pointer-cast \
-    -Winvalid-memory-model \
     -Winvalid-pch \
-    -Wlogical-not-parentheses \
     -Wlogical-op \
-    -Wmain \
-    -Wmaybe-uninitialized \
-    -Wmemset-elt-size \
-    -Wmemset-transposed-args \
-    -Wmisleading-indentation \
-    -Wmissing-attributes \
-    -Wmissing-braces \
     -Wmissing-declarations \
-    -Wmissing-field-initializers \
     -Wmissing-include-dirs \
-    -Wmissing-parameter-type \
-    -Wmissing-profile \
     -Wmissing-prototypes \
-    -Wmultichar \
-    -Wmultistatement-macros \
-    -Wnarrowing \
     -Wnested-externs \
-    -Wnonnull \
-    -Wnonnull-compare \
     -Wnull-dereference \
-    -Wodr \
-    -Wold-style-declaration \
     -Wold-style-definition \
     -Wopenmp-simd \
-    -Woverflow \
     -Woverlength-strings \
-    -Woverride-init \
     -Wpacked \
-    -Wpacked-bitfield-compat \
-    -Wpacked-not-aligned \
-    -Wparentheses \
     -Wpointer-arith \
-    -Wpointer-compare \
-    -Wpointer-sign \
-    -Wpointer-to-int-cast \
-    -Wpragmas \
-    -Wpsabi \
-    -Wrestrict \
-    -Wreturn-local-addr \
-    -Wreturn-type \
-    -Wscalar-storage-order \
-    -Wsequence-point \
     -Wshadow \
-    -Wshift-count-negative \
-    -Wshift-count-overflow \
-    -Wshift-negative-value \
-    -Wsizeof-array-argument \
-    -Wsizeof-pointer-div \
-    -Wsizeof-pointer-memaccess \
     -Wstack-protector \
-    -Wstrict-aliasing \
     -Wstrict-overflow \
     -Wstrict-prototypes \
-    -Wstringop-truncation \
     -Wsuggest-attribute=cold \
     -Wsuggest-attribute=const \
     -Wsuggest-attribute=format \
@@ -240,100 +147,69 @@ m4_defun([gl_MANYWARN_ALL_GCC(C)],
     -Wsuggest-attribute=pure \
     -Wsuggest-final-methods \
     -Wsuggest-final-types \
-    -Wswitch \
-    -Wswitch-bool \
-    -Wswitch-unreachable \
     -Wsync-nand \
     -Wsystem-headers \
-    -Wtautological-compare \
     -Wtrampolines \
-    -Wtrigraphs \
-    -Wtype-limits \
     -Wuninitialized \
     -Wunknown-pragmas \
     -Wunsafe-loop-optimizations \
-    -Wunused \
-    -Wunused-but-set-parameter \
-    -Wunused-but-set-variable \
-    -Wunused-function \
-    -Wunused-label \
-    -Wunused-local-typedefs \
     -Wunused-macros \
-    -Wunused-parameter \
-    -Wunused-result \
-    -Wunused-value \
-    -Wunused-variable \
-    -Wvarargs \
     -Wvariadic-macros \
     -Wvector-operation-performance \
     -Wvla \
-    -Wvolatile-register-var \
     -Wwrite-strings \
     \
     ; do
-    gl_manywarn_set="$gl_manywarn_set $gl_manywarn_item"
+    gl_AS_VAR_APPEND([$1], [" $gl_manywarn_item"])
   done
 
   # gcc --help=warnings outputs an unusual form for these options; list
   # them here so that the above 'comm' command doesn't report a false match.
-  # Would prefer "min (PTRDIFF_MAX, SIZE_MAX)", but it must be a literal.
-  # Also, AC_COMPUTE_INT requires it to fit in a long; it is 2**63 on
-  # the only platforms where it does not fit in a long, so make that
-  # a special case.
-  AC_MSG_CHECKING([max safe object size])
-  AC_COMPUTE_INT([gl_alloc_max],
-    [LONG_MAX < (PTRDIFF_MAX < (size_t) -1 ? PTRDIFF_MAX : (size_t) -1)
-     ? -1
-     : PTRDIFF_MAX < (size_t) -1 ? (long) PTRDIFF_MAX : (long) (size_t) -1],
-    [[#include <limits.h>
-      #include <stddef.h>
-      #include <stdint.h>
-    ]],
-    [gl_alloc_max=2147483647])
-  case $gl_alloc_max in
-    -1) gl_alloc_max=9223372036854775807;;
-  esac
-  AC_MSG_RESULT([$gl_alloc_max])
-  gl_manywarn_set="$gl_manywarn_set -Walloc-size-larger-than=$gl_alloc_max"
-  gl_manywarn_set="$gl_manywarn_set -Warray-bounds=2"
-  gl_manywarn_set="$gl_manywarn_set -Wattribute-alias=2"
-  gl_manywarn_set="$gl_manywarn_set -Wformat-overflow=2"
-  gl_manywarn_set="$gl_manywarn_set -Wformat-truncation=2"
-  gl_manywarn_set="$gl_manywarn_set -Wimplicit-fallthrough=5"
-  gl_manywarn_set="$gl_manywarn_set -Wnormalized=nfc"
-  gl_manywarn_set="$gl_manywarn_set -Wshift-overflow=2"
-  gl_manywarn_set="$gl_manywarn_set -Wstringop-overflow=2"
-  gl_manywarn_set="$gl_manywarn_set -Wunused-const-variable=2"
-  gl_manywarn_set="$gl_manywarn_set -Wvla-larger-than=4031"
+  gl_AS_VAR_APPEND([$1], [' -Warray-bounds=2'])
+  gl_AS_VAR_APPEND([$1], [' -Wattribute-alias=2'])
+  gl_AS_VAR_APPEND([$1], [' -Wformat-overflow=2'])
+  gl_AS_VAR_APPEND([$1], [' -Wformat=2'])
+  gl_AS_VAR_APPEND([$1], [' -Wformat-truncation=2'])
+  gl_AS_VAR_APPEND([$1], [' -Wimplicit-fallthrough=5'])
+  gl_AS_VAR_APPEND([$1], [' -Wshift-overflow=2'])
+  gl_AS_VAR_APPEND([$1], [' -Wunused-const-variable=2'])
+  gl_AS_VAR_APPEND([$1], [' -Wvla-larger-than=4031'])
 
   # These are needed for older GCC versions.
   if test -n "$GCC"; then
     case `($CC --version) 2>/dev/null` in
       'gcc (GCC) '[[0-3]].* | \
       'gcc (GCC) '4.[[0-7]].*)
-        gl_manywarn_set="$gl_manywarn_set -fdiagnostics-show-option"
-        gl_manywarn_set="$gl_manywarn_set -funit-at-a-time"
+        gl_AS_VAR_APPEND([$1], [' -fdiagnostics-show-option'])
+        gl_AS_VAR_APPEND([$1], [' -funit-at-a-time'])
           ;;
     esac
   fi
 
   # Disable specific options as needed.
   if test "$gl_cv_cc_nomfi_needed" = yes; then
-    gl_manywarn_set="$gl_manywarn_set -Wno-missing-field-initializers"
+    gl_AS_VAR_APPEND([$1], [' -Wno-missing-field-initializers'])
   fi
 
   if test "$gl_cv_cc_uninitialized_supported" = no; then
-    gl_manywarn_set="$gl_manywarn_set -Wno-uninitialized"
+    gl_AS_VAR_APPEND([$1], [' -Wno-uninitialized'])
   fi
 
-  $1=$gl_manywarn_set
+  # Some warnings have too many false alarms in GCC 10.1.
+  # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93695
+  gl_AS_VAR_APPEND([$1], [' -Wno-analyzer-double-free'])
+  # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94458
+  gl_AS_VAR_APPEND([$1], [' -Wno-analyzer-malloc-leak'])
+  # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94851
+  gl_AS_VAR_APPEND([$1], [' -Wno-analyzer-null-dereference'])
+  # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95758
+  gl_AS_VAR_APPEND([$1], [' -Wno-analyzer-use-after-free'])
 
   AC_LANG_POP([C])
 ])
 
 # Specialization for _AC_LANG = C++.
-# Use of m4_defun rather than AC_DEFUN works around a bug in autoconf < 2.63b.
-m4_defun([gl_MANYWARN_ALL_GCC(C++)],
+AC_DEFUN([gl_MANYWARN_ALL_GCC(C++)],
 [
   gl_MANYWARN_ALL_GCC_CXX_IMPL([$1])
 ])
index 4811af5d0007cf670c48e75932c131d72df527d4..755f8c905079327b056c659dde80866436a9003a 100644 (file)
@@ -1,5 +1,5 @@
-# mbrtowc.m4 serial 31  -*- coding: utf-8 -*-
-dnl Copyright (C) 2001-2002, 2004-2005, 2008-2019 Free Software Foundation,
+# mbrtowc.m4 serial 37  -*- coding: utf-8 -*-
+dnl Copyright (C) 2001-2002, 2004-2005, 2008-2020 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,
@@ -8,6 +8,8 @@ dnl with or without modifications, as long as this notice is preserved.
 AC_DEFUN([gl_FUNC_MBRTOWC],
 [
   AC_REQUIRE([gl_WCHAR_H_DEFAULTS])
+  AC_REQUIRE([gl_PTHREADLIB])
+  AC_CHECK_HEADERS_ONCE([threads.h])
 
   AC_REQUIRE([AC_TYPE_MBSTATE_T])
   gl_MBSTATE_T_BROKEN
@@ -39,6 +41,7 @@ AC_DEFUN([gl_FUNC_MBRTOWC],
       gl_MBRTOWC_NULL_ARG2
       gl_MBRTOWC_RETVAL
       gl_MBRTOWC_NUL_RETVAL
+      gl_MBRTOWC_STORES_INCOMPLETE
       gl_MBRTOWC_EMPTY_INPUT
       gl_MBRTOWC_C_LOCALE
       case "$gl_cv_func_mbrtowc_null_arg1" in
@@ -69,6 +72,13 @@ AC_DEFUN([gl_FUNC_MBRTOWC],
            REPLACE_MBRTOWC=1
            ;;
       esac
+      case "$gl_cv_func_mbrtowc_stores_incomplete" in
+        *no) ;;
+        *) AC_DEFINE([MBRTOWC_STORES_INCOMPLETE_BUG], [1],
+             [Define if the mbrtowc function stores a wide character when reporting incomplete input.])
+           REPLACE_MBRTOWC=1
+           ;;
+      esac
       case "$gl_cv_func_mbrtowc_empty_input" in
         *yes) ;;
         *) AC_DEFINE([MBRTOWC_EMPTY_INPUT_BUG], [1],
@@ -77,15 +87,32 @@ AC_DEFUN([gl_FUNC_MBRTOWC],
            REPLACE_MBRTOWC=1
            ;;
       esac
-      case $gl_cv_C_locale_sans_EILSEQ in
+      case "$gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" in
         *yes) ;;
-        *) AC_DEFINE([C_LOCALE_MAYBE_EILSEQ], [1],
-             [Define to 1 if the C locale may have encoding errors.])
+        *) AC_DEFINE([MBRTOWC_IN_C_LOCALE_MAYBE_EILSEQ], [1],
+             [Define if the mbrtowc function may signal encoding errors in the C locale.])
            REPLACE_MBRTOWC=1
            ;;
       esac
     fi
   fi
+  if test $REPLACE_MBSTATE_T = 1; then
+    case "$host_os" in
+      mingw*) LIB_MBRTOWC= ;;
+      *)
+        gl_WEAK_SYMBOLS
+        case "$gl_cv_have_weak" in
+          *yes) LIB_MBRTOWC= ;;
+          *)    LIB_MBRTOWC="$LIBPTHREAD" ;;
+        esac
+        ;;
+    esac
+  else
+    LIB_MBRTOWC=
+  fi
+  dnl LIB_MBRTOWC is expected to be '-pthread' or '-lpthread' on AIX
+  dnl with gcc or xlc, and empty otherwise.
+  AC_SUBST([LIB_MBRTOWC])
 ])
 
 dnl Test whether mbsinit() and mbrtowc() need to be overridden in a way that
@@ -97,11 +124,19 @@ dnl avoid inconsistencies.
 AC_DEFUN([gl_MBSTATE_T_BROKEN],
 [
   AC_REQUIRE([gl_WCHAR_H_DEFAULTS])
+  AC_REQUIRE([AC_CANONICAL_HOST])
 
   AC_REQUIRE([AC_TYPE_MBSTATE_T])
   AC_CHECK_FUNCS_ONCE([mbsinit])
   AC_CHECK_FUNCS_ONCE([mbrtowc])
-  if test $ac_cv_func_mbsinit = yes && test $ac_cv_func_mbrtowc = yes; then
+  dnl On native Windows, we know exactly how mbsinit() behaves and don't need
+  dnl to override it, even if - like on MSVC - mbsinit() is only defined as
+  dnl an inline function, not as a global function.
+  if case "$host_os" in
+       mingw*) true ;;
+       *) test $ac_cv_func_mbsinit = yes ;;
+     esac \
+    && test $ac_cv_func_mbrtowc = yes; then
     gl_MBRTOWC_INCOMPLETE_STATE
     gl_MBRTOWC_SANITYCHECK
     REPLACE_MBSTATE_T=0
@@ -126,6 +161,7 @@ AC_DEFUN([gl_MBRTOWC_INCOMPLETE_STATE],
 [
   AC_REQUIRE([AC_PROG_CC])
   AC_REQUIRE([gt_LOCALE_JA])
+  AC_REQUIRE([gt_LOCALE_FR_UTF8])
   AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
   AC_CACHE_CHECK([whether mbrtowc handles incomplete characters],
     [gl_cv_func_mbrtowc_incomplete_state],
@@ -171,6 +207,39 @@ int main ()
           [gl_cv_func_mbrtowc_incomplete_state=yes],
           [gl_cv_func_mbrtowc_incomplete_state=no],
           [:])
+      else
+        if test $LOCALE_FR_UTF8 != none; then
+          AC_RUN_IFELSE(
+            [AC_LANG_SOURCE([[
+#include <locale.h>
+#include <string.h>
+/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
+   <wchar.h>.
+   BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
+   included before <wchar.h>.  */
+#include <stddef.h>
+#include <stdio.h>
+#include <time.h>
+#include <wchar.h>
+int main ()
+{
+  if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+    {
+      const char input[] = "B\303\274\303\237er"; /* "Büßer" */
+      mbstate_t state;
+      wchar_t wc;
+
+      memset (&state, '\0', sizeof (mbstate_t));
+      if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2))
+        if (mbsinit (&state))
+          return 2;
+    }
+  return 0;
+}]])],
+          [gl_cv_func_mbrtowc_incomplete_state=yes],
+          [gl_cv_func_mbrtowc_incomplete_state=no],
+          [:])
+        fi
       fi
     ])
 ])
@@ -550,6 +619,126 @@ int main ()
     ])
 ])
 
+dnl Test whether mbrtowc stores a wide character when reporting incomplete
+dnl input.
+
+AC_DEFUN([gl_MBRTOWC_STORES_INCOMPLETE],
+[
+  AC_REQUIRE([AC_PROG_CC])
+  AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
+  AC_CACHE_CHECK([whether mbrtowc stores incomplete characters],
+    [gl_cv_func_mbrtowc_stores_incomplete],
+    [
+     dnl Initial guess, used when cross-compiling or when no suitable locale
+     dnl is present.
+changequote(,)dnl
+     case "$host_os" in
+               # Guess yes on native Windows.
+       mingw*) gl_cv_func_mbrtowc_stores_incomplete="guessing yes" ;;
+       *)      gl_cv_func_mbrtowc_stores_incomplete="guessing no" ;;
+     esac
+changequote([,])dnl
+     case "$host_os" in
+       mingw*)
+         AC_RUN_IFELSE(
+           [AC_LANG_SOURCE([[
+#include <locale.h>
+#include <string.h>
+/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
+   <wchar.h>.
+   BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
+   included before <wchar.h>.  */
+#include <stddef.h>
+#include <stdio.h>
+#include <time.h>
+#include <wchar.h>
+int main ()
+{
+  int result = 0;
+  if (setlocale (LC_ALL, "French_France.65001") != NULL)
+    {
+      wchar_t wc = (wchar_t) 0xBADFACE;
+      mbstate_t state;
+
+      memset (&state, '\0', sizeof (mbstate_t));
+      if (mbrtowc (&wc, "\303", 1, &state) == (size_t)(-2)
+          && wc != (wchar_t) 0xBADFACE)
+        result |= 1;
+    }
+  if (setlocale (LC_ALL, "Japanese_Japan.932") != NULL)
+    {
+      wchar_t wc = (wchar_t) 0xBADFACE;
+      mbstate_t state;
+
+      memset (&state, '\0', sizeof (mbstate_t));
+      if (mbrtowc (&wc, "\226", 1, &state) == (size_t)(-2)
+          && wc != (wchar_t) 0xBADFACE)
+        result |= 2;
+    }
+  if (setlocale (LC_ALL, "Chinese_Taiwan.950") != NULL)
+    {
+      wchar_t wc = (wchar_t) 0xBADFACE;
+      mbstate_t state;
+
+      memset (&state, '\0', sizeof (mbstate_t));
+      if (mbrtowc (&wc, "\245", 1, &state) == (size_t)(-2)
+          && wc != (wchar_t) 0xBADFACE)
+        result |= 4;
+    }
+  if (setlocale (LC_ALL, "Chinese_China.936") != NULL)
+    {
+      wchar_t wc = (wchar_t) 0xBADFACE;
+      mbstate_t state;
+
+      memset (&state, '\0', sizeof (mbstate_t));
+      if (mbrtowc (&wc, "\261", 1, &state) == (size_t)(-2)
+          && wc != (wchar_t) 0xBADFACE)
+        result |= 8;
+    }
+  return result;
+}]])],
+           [gl_cv_func_mbrtowc_stores_incomplete=no],
+           [gl_cv_func_mbrtowc_stores_incomplete=yes],
+           [:])
+         ;;
+       *)
+         AC_REQUIRE([gt_LOCALE_FR_UTF8])
+         if test $LOCALE_FR_UTF8 != none; then
+           AC_RUN_IFELSE(
+             [AC_LANG_SOURCE([[
+#include <locale.h>
+#include <string.h>
+/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
+   <wchar.h>.
+   BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
+   included before <wchar.h>.  */
+#include <stddef.h>
+#include <stdio.h>
+#include <time.h>
+#include <wchar.h>
+int main ()
+{
+  if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+    {
+      wchar_t wc = (wchar_t) 0xBADFACE;
+      mbstate_t state;
+
+      memset (&state, '\0', sizeof (mbstate_t));
+      if (mbrtowc (&wc, "\303", 1, &state) == (size_t)(-2)
+          && wc != (wchar_t) 0xBADFACE)
+        return 1;
+    }
+  return 0;
+}]])],
+             [gl_cv_func_mbrtowc_stores_incomplete=no],
+             [gl_cv_func_mbrtowc_stores_incomplete=yes],
+             [:])
+         fi
+         ;;
+     esac
+    ])
+])
+
 dnl Test whether mbrtowc returns the correct value on empty input.
 
 AC_DEFUN([gl_MBRTOWC_EMPTY_INPUT],
@@ -595,11 +784,11 @@ AC_DEFUN([gl_MBRTOWC_C_LOCALE],
 [
   AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
   AC_CACHE_CHECK([whether the C locale is free of encoding errors],
-    [gl_cv_C_locale_sans_EILSEQ],
+    [gl_cv_func_mbrtowc_C_locale_sans_EILSEQ],
     [
      dnl Initial guess, used when cross-compiling or when no suitable locale
      dnl is present.
-     gl_cv_C_locale_sans_EILSEQ="guessing no"
+     gl_cv_func_mbrtowc_C_locale_sans_EILSEQ="$gl_cross_guess_normal"
 
      AC_RUN_IFELSE(
        [AC_LANG_PROGRAM(
@@ -622,22 +811,28 @@ AC_DEFUN([gl_MBRTOWC_C_LOCALE],
               }
             return 0;
           ]])],
-      [gl_cv_C_locale_sans_EILSEQ=yes],
-      [gl_cv_C_locale_sans_EILSEQ=no],
+      [gl_cv_func_mbrtowc_C_locale_sans_EILSEQ=yes],
+      [gl_cv_func_mbrtowc_C_locale_sans_EILSEQ=no],
       [case "$host_os" in
                  # Guess yes on native Windows.
-         mingw*) gl_cv_C_locale_sans_EILSEQ="guessing yes" ;;
+         mingw*) gl_cv_func_mbrtowc_C_locale_sans_EILSEQ="guessing yes" ;;
        esac
       ])
     ])
 ])
 
-# Prerequisites of lib/mbrtowc.c.
+# Prerequisites of lib/mbrtowc.c and lib/lc-charset-dispatch.c.
 AC_DEFUN([gl_PREREQ_MBRTOWC], [
   AC_REQUIRE([AC_C_INLINE])
   :
 ])
 
+# Prerequisites of lib/mbtowc-lock.c.
+AC_DEFUN([gl_PREREQ_MBTOWC_LOCK],
+[
+  gl_VISIBILITY
+])
+
 
 dnl From Paul Eggert
 
index e2f45e75a1e1d048ee9643b2ae48f3ee7216bd2f..8c26b6b97164a38613cdee888764097c1c9b3207 100644 (file)
@@ -1,5 +1,5 @@
 # mbsinit.m4 serial 8
-dnl Copyright (C) 2008, 2010-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2008, 2010-2020 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.
index f669753c07e43b4b5f7f6d13532eecf2cd7293b8..057ce12ebe64b6c57627208f8cc4497bd0d6ce51 100644 (file)
@@ -1,5 +1,5 @@
 # mbstate_t.m4 serial 13
-dnl Copyright (C) 2000-2002, 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2000-2002, 2008-2020 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.
index 5a4b92ee52eb71ed263b22829ccbe8f7349d81e1..befcffab28e76bcbb3709d940152f9d06edb95c3 100644 (file)
@@ -1,5 +1,5 @@
 # mbtowc.m4 serial 3
-dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2020 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.
index 1e0d30b9806553acc2b3c015666dd1f8875c36cf..e5b28b0b8b416d14f823662989c23cdac9d6d6ae 100644 (file)
@@ -1,5 +1,5 @@
 # minmax.m4 serial 4
-dnl Copyright (C) 2005, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2005, 2009-2020 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.
index 366a3cd744bc31d00f8f8b2da5f486dacc1141ab..bd9e0885912a6250e20d39290f46393c4076b40f 100644 (file)
@@ -1,6 +1,6 @@
-# serial 15
+# serial 17
 
-# Copyright (C) 2001, 2003-2004, 2006, 2008-2019 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003-2004, 2006, 2008-2020 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.
@@ -16,33 +16,34 @@ AC_DEFUN([gl_FUNC_MKDIR],
   AC_CACHE_CHECK([whether mkdir handles trailing slash],
     [gl_cv_func_mkdir_trailing_slash_works],
     [rm -rf conftest.dir
-      AC_RUN_IFELSE([AC_LANG_PROGRAM([[
-#       include <sys/types.h>
-#       include <sys/stat.h>
-]], [return mkdir ("conftest.dir/", 0700);])],
-      [gl_cv_func_mkdir_trailing_slash_works=yes],
-      [gl_cv_func_mkdir_trailing_slash_works=no],
-      [case "$host_os" in
-                          # Guess yes on Linux systems.
-         linux-* | linux) gl_cv_func_mkdir_trailing_slash_works="guessing yes" ;;
-                          # Guess yes on glibc systems.
-         *-gnu* | gnu*)   gl_cv_func_mkdir_trailing_slash_works="guessing yes" ;;
-                          # Guess yes on MSVC, no on mingw.
-         mingw*)          AC_EGREP_CPP([Known], [
+     AC_RUN_IFELSE(
+       [AC_LANG_PROGRAM([[
+          #include <sys/types.h>
+          #include <sys/stat.h>
+          ]GL_MDA_DEFINES],
+          [[return mkdir ("conftest.dir/", 0700);]])],
+       [gl_cv_func_mkdir_trailing_slash_works=yes],
+       [gl_cv_func_mkdir_trailing_slash_works=no],
+       [case "$host_os" in
+                           # Guess yes on Linux systems.
+          linux-* | linux) gl_cv_func_mkdir_trailing_slash_works="guessing yes" ;;
+                           # Guess yes on glibc systems.
+          *-gnu* | gnu*)   gl_cv_func_mkdir_trailing_slash_works="guessing yes" ;;
+                           # Guess yes on MSVC, no on mingw.
+          mingw*)          AC_EGREP_CPP([Known], [
 #ifdef _MSC_VER
  Known
 #endif
-                            ],
-                            [gl_cv_func_mkdir_trailing_slash_works="guessing yes"],
-                            [gl_cv_func_mkdir_trailing_slash_works="guessing no"])
-                          ;;
-                          # If we don't know, assume the worst.
-         *)               gl_cv_func_mkdir_trailing_slash_works="guessing no" ;;
-       esac
-      ])
-    rm -rf conftest.dir
-    ]
-  )
+                             ],
+                             [gl_cv_func_mkdir_trailing_slash_works="guessing yes"],
+                             [gl_cv_func_mkdir_trailing_slash_works="guessing no"])
+                           ;;
+                           # If we don't know, obey --enable-cross-guesses.
+          *)               gl_cv_func_mkdir_trailing_slash_works="$gl_cross_guess_normal" ;;
+        esac
+       ])
+     rm -rf conftest.dir
+    ])
   case "$gl_cv_func_mkdir_trailing_slash_works" in
     *yes) ;;
     *)
@@ -53,24 +54,26 @@ AC_DEFUN([gl_FUNC_MKDIR],
   AC_CACHE_CHECK([whether mkdir handles trailing dot],
     [gl_cv_func_mkdir_trailing_dot_works],
     [rm -rf conftest.dir
-      AC_RUN_IFELSE([AC_LANG_PROGRAM([[
-#       include <sys/types.h>
-#       include <sys/stat.h>
-]], [return !mkdir ("conftest.dir/./", 0700);])],
-      [gl_cv_func_mkdir_trailing_dot_works=yes],
-      [gl_cv_func_mkdir_trailing_dot_works=no],
-      [case "$host_os" in
-                        # Guess yes on glibc systems.
-         *-gnu* | gnu*) gl_cv_func_mkdir_trailing_dot_works="guessing yes" ;;
-                        # Guess yes on musl systems.
-         *-musl*)       gl_cv_func_mkdir_trailing_dot_works="guessing yes" ;;
-                        # Guess no on native Windows.
-         mingw*)        gl_cv_func_mkdir_trailing_dot_works="guessing no" ;;
-                        # If we don't know, assume the worst.
-         *)             gl_cv_func_mkdir_trailing_dot_works="guessing no" ;;
-       esac
-      ])
-    rm -rf conftest.dir
+     AC_RUN_IFELSE(
+       [AC_LANG_PROGRAM([[
+          #include <sys/types.h>
+          #include <sys/stat.h>
+          ]GL_MDA_DEFINES],
+          [[return !mkdir ("conftest.dir/./", 0700);]])],
+       [gl_cv_func_mkdir_trailing_dot_works=yes],
+       [gl_cv_func_mkdir_trailing_dot_works=no],
+       [case "$host_os" in
+                         # Guess yes on glibc systems.
+          *-gnu* | gnu*) gl_cv_func_mkdir_trailing_dot_works="guessing yes" ;;
+                         # Guess yes on musl systems.
+          *-musl*)       gl_cv_func_mkdir_trailing_dot_works="guessing yes" ;;
+                         # Guess no on native Windows.
+          mingw*)        gl_cv_func_mkdir_trailing_dot_works="guessing no" ;;
+                         # If we don't know, obey --enable-cross-guesses.
+          *)             gl_cv_func_mkdir_trailing_dot_works="$gl_cross_guess_normal" ;;
+        esac
+       ])
+     rm -rf conftest.dir
     ]
   )
   case "$gl_cv_func_mkdir_trailing_dot_works" in
index 1b15c2eb3abb5b29ef255b3bb5c39f967105cb89..392f97cff5ca0bb4493924fa8725d72aa68fef8e 100644 (file)
@@ -1,6 +1,6 @@
-#serial 26
+#serial 28
 
-# Copyright (C) 2001, 2003-2007, 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003-2007, 2009-2020 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.
@@ -26,7 +26,8 @@ AC_DEFUN([gl_FUNC_MKSTEMP],
         mkdir conftest.mkstemp
         AC_RUN_IFELSE(
           [AC_LANG_PROGRAM(
-            [AC_INCLUDES_DEFAULT],
+            [AC_INCLUDES_DEFAULT
+             GL_MDA_DEFINES],
             [[int result = 0;
               int i;
               off_t large = (off_t) 4294967295u;
@@ -63,8 +64,8 @@ AC_DEFUN([gl_FUNC_MKSTEMP],
              *-musl*)       gl_cv_func_working_mkstemp="guessing yes" ;;
                             # Guess no on native Windows.
              mingw*)        gl_cv_func_working_mkstemp="guessing no" ;;
-                            # If we don't know, assume the worst.
-             *)             gl_cv_func_working_mkstemp="guessing no" ;;
+                            # If we don't know, obey --enable-cross-guesses.
+             *)             gl_cv_func_working_mkstemp="$gl_cross_guess_normal" ;;
            esac
           ])
         rm -rf conftest.mkstemp
index 50c380824c7624ae73ec5447a000ec712c4328cc..2995ad555d16ec50ab199a81559be0e6d206e73d 100644 (file)
@@ -1,5 +1,5 @@
-# mmap-anon.m4 serial 10
-dnl Copyright (C) 2005, 2007, 2009-2019 Free Software Foundation, Inc.
+# mmap-anon.m4 serial 11
+dnl Copyright (C) 2005, 2007, 2009-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -9,7 +9,7 @@ dnl with or without modifications, as long as this notice is preserved.
 # - On Linux, AIX, OSF/1, Solaris, Cygwin, Interix, Haiku, both MAP_ANONYMOUS
 #   and MAP_ANON exist and have the same value.
 # - On HP-UX, only MAP_ANONYMOUS exists.
-# - On Mac OS X, FreeBSD, NetBSD, OpenBSD, only MAP_ANON exists.
+# - On Mac OS X, FreeBSD, NetBSD, OpenBSD, Minix, only MAP_ANON exists.
 # - On IRIX, neither exists, and a file descriptor opened to /dev/zero must be
 #   used.
 
index ba840dca99d592a3bdaac4447a1777cd8d450e13..f1909517c2d3f3b074b1a60458d5b45d3aecd17b 100644 (file)
@@ -1,5 +1,5 @@
 # mode_t.m4 serial 2
-dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2009-2020 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.
index 4b958762d2a3785b64c383d2f7436e68265313c0..dcf398d032d056a9262389411a52c038015e61b0 100644 (file)
@@ -1,5 +1,5 @@
 # msvc-inval.m4 serial 1
-dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2020 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.
index 7e73b40b63257c818f280fe35667f970388cc84b..13198d8599c539acc8e59251226a551c1f123c0e 100644 (file)
@@ -1,5 +1,5 @@
 # msvc-nothrow.m4 serial 1
-dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2020 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.
index d48316e0ed7712376a4fb790a940f950326b6cea..2c61afbd76e2625d7093367bcf281aebf425ec8c 100644 (file)
@@ -1,5 +1,5 @@
-# multiarch.m4 serial 7
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+# multiarch.m4 serial 9
+dnl Copyright (C) 2008-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -21,37 +21,40 @@ dnl with or without modifications, as long as this notice is preserved.
 AC_DEFUN_ONCE([gl_MULTIARCH],
 [
   dnl Code similar to autoconf-2.63 AC_C_BIGENDIAN.
-  gl_cv_c_multiarch=no
-  AC_COMPILE_IFELSE(
-    [AC_LANG_SOURCE(
-      [[#ifndef __APPLE_CC__
-         not a universal capable compiler
-        #endif
-        typedef int dummy;
-      ]])],
-    [
-     dnl Check for potential -arch flags.  It is not universal unless
-     dnl there are at least two -arch flags with different values.
-     arch=
-     prev=
-     for word in ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}; do
-       if test -n "$prev"; then
-         case $word in
-           i?86 | x86_64 | ppc | ppc64)
-             if test -z "$arch" || test "$arch" = "$word"; then
-               arch="$word"
-             else
-               gl_cv_c_multiarch=yes
-             fi
-             ;;
-         esac
-         prev=
-       else
-         if test "x$word" = "x-arch"; then
-           prev=arch
-         fi
-       fi
-     done
+  AC_CACHE_CHECK([whether the compiler produces multi-arch binaries],
+    [gl_cv_c_multiarch],
+    [gl_cv_c_multiarch=no
+     AC_COMPILE_IFELSE(
+       [AC_LANG_SOURCE(
+         [[#ifndef __APPLE_CC__
+            not a universal capable compiler
+           #endif
+           typedef int dummy;
+         ]])],
+       [
+        dnl Check for potential -arch flags.  It is not universal unless
+        dnl there are at least two -arch flags with different values.
+        arch=
+        prev=
+        for word in ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}; do
+          if test -n "$prev"; then
+            case $word in
+              i?86 | x86_64 | ppc | ppc64 | arm | arm64)
+                if test -z "$arch" || test "$arch" = "$word"; then
+                  arch="$word"
+                else
+                  gl_cv_c_multiarch=yes
+                fi
+                ;;
+            esac
+            prev=
+          else
+            if test "x$word" = "x-arch"; then
+              prev=arch
+            fi
+          fi
+        done
+       ])
     ])
   if test $gl_cv_c_multiarch = yes; then
     APPLE_UNIVERSAL_BUILD=1
diff --git a/m4/musl.m4 b/m4/musl.m4
new file mode 100644 (file)
index 0000000..d552cd7
--- /dev/null
@@ -0,0 +1,18 @@
+# musl.m4 serial 3
+dnl Copyright (C) 2019-2020 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.
+
+# Test for musl libc, despite the musl libc authors don't like it
+# <https://wiki.musl-libc.org/faq.html>
+# <https://lists.gnu.org/archive/html/bug-gnulib/2018-02/msg00079.html>.
+# From Bruno Haible.
+
+AC_DEFUN_ONCE([gl_MUSL_LIBC],
+[
+  AC_REQUIRE([AC_CANONICAL_HOST])
+  case "$host_os" in
+    *-musl*) AC_DEFINE([MUSL_LIBC], [1], [Define to 1 on musl libc.]) ;;
+  esac
+])
index 971aae329f9817be57fc9a9cc16185957f853523..1fb13ed3daa04dc1ec674148368b4c51f55d3814 100644 (file)
@@ -1,11 +1,11 @@
-# serial 38
+# serial 39
 
 dnl From Jim Meyering.
 dnl Check for the nanosleep function.
 dnl If not found, use the supplied replacement.
 dnl
 
-# Copyright (C) 1999-2001, 2003-2019 Free Software Foundation, Inc.
+# Copyright (C) 1999-2001, 2003-2020 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -119,8 +119,8 @@ AC_DEFUN([gl_FUNC_NANOSLEEP],
             gl_cv_func_nanosleep='guessing no (mishandles large arguments)' ;;
           mingw*) # Guess no on native Windows.
             gl_cv_func_nanosleep='guessing no' ;;
-          *)      # If we don't know, assume the worst.
-            gl_cv_func_nanosleep='guessing no' ;;
+          *)      # If we don't know, obey --enable-cross-guesses.
+            gl_cv_func_nanosleep="$gl_cross_guess_normal" ;;
         esac
        ])
     ])
index 0f96caee5b66ec352bb60c67438e014a1f4ce360..df9f383479b5fe2c8ca784872711fc59bb01f93f 100644 (file)
@@ -1,5 +1,5 @@
 # netinet_in_h.m4 serial 5
-dnl Copyright (C) 2006-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2006-2020 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.
index 66eee41d8895dc8545459475a1c615faba21c515..342afd298d713b96b2f54034219eb679b8cfc75e 100644 (file)
@@ -1,5 +1,5 @@
-# nl_langinfo.m4 serial 6
-dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# nl_langinfo.m4 serial 8
+dnl Copyright (C) 2009-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -9,7 +9,10 @@ AC_DEFUN([gl_FUNC_NL_LANGINFO],
   AC_REQUIRE([gl_LANGINFO_H_DEFAULTS])
   AC_REQUIRE([gl_LANGINFO_H])
   AC_CHECK_FUNCS_ONCE([nl_langinfo])
-  AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
+  AC_REQUIRE([AC_CANONICAL_HOST])
+  AC_REQUIRE([gl_FUNC_SETLOCALE_NULL])
+  AC_REQUIRE([gl_PTHREADLIB])
+  AC_CHECK_HEADERS_ONCE([threads.h])
   if test $ac_cv_func_nl_langinfo = yes; then
     # On Irix 6.5, YESEXPR is defined, but nl_langinfo(YESEXPR) is broken.
     AC_CACHE_CHECK([whether YESEXPR works],
@@ -36,11 +39,19 @@ AC_DEFUN([gl_FUNC_NL_LANGINFO],
     AC_DEFINE_UNQUOTED([FUNC_NL_LANGINFO_YESEXPR_WORKS],
       [$FUNC_NL_LANGINFO_YESEXPR_WORKS],
       [Define to 1 if nl_langinfo (YESEXPR) returns a non-empty string.])
+    # On Solaris 10 and Solaris 11.3, nl_langinfo is not multithread-safe.
+    case "$host_os" in
+      solaris*) NL_LANGINFO_MTSAFE=0 ;;
+      *)        NL_LANGINFO_MTSAFE=1 ;;
+    esac
+    AC_DEFINE_UNQUOTED([NL_LANGINFO_MTSAFE], [$NL_LANGINFO_MTSAFE],
+      [Define to 1 if nl_langinfo is multithread-safe.])
     if test $HAVE_LANGINFO_CODESET = 1 \
        && test $HAVE_LANGINFO_T_FMT_AMPM = 1 \
        && test $HAVE_LANGINFO_ALTMON = 1 \
        && test $HAVE_LANGINFO_ERA = 1 \
-       && test $FUNC_NL_LANGINFO_YESEXPR_WORKS = 1; then
+       && test $FUNC_NL_LANGINFO_YESEXPR_WORKS = 1 \
+       && test $NL_LANGINFO_MTSAFE = 1; then
       :
     else
       REPLACE_NL_LANGINFO=1
@@ -50,4 +61,17 @@ AC_DEFUN([gl_FUNC_NL_LANGINFO],
   else
     HAVE_NL_LANGINFO=0
   fi
+  if test $HAVE_NL_LANGINFO = 0 || test $HAVE_LANGINFO_CODESET = 0; then
+    LIB_NL_LANGINFO="$LIB_SETLOCALE_NULL"
+  else
+    LIB_NL_LANGINFO=
+  fi
+  dnl LIB_NL_LANGINFO is expected to be empty everywhere.
+  AC_SUBST([LIB_NL_LANGINFO])
+])
+
+# Prerequisites of lib/nl_langinfo-lock.c.
+AC_DEFUN([gl_PREREQ_NL_LANGINFO_LOCK],
+[
+  gl_VISIBILITY
 ])
index 4d9f0226906fe81ce9fed34db6506dd8193679fa..637a0ea45bea68df9382df0c3a857589437321d0 100644 (file)
@@ -1,5 +1,5 @@
 # nocrash.m4 serial 5
-dnl Copyright (C) 2005, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2005, 2009-2020 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.
@@ -53,7 +53,7 @@ nocrash_init (void)
   /* Allocate a port on which the thread shall listen for exceptions.  */
   if (mach_port_allocate (self, MACH_PORT_RIGHT_RECEIVE, &our_exception_port)
       == KERN_SUCCESS) {
-    /* See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html.  */
+    /* See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html.  */
     if (mach_port_insert_right (self, our_exception_port, our_exception_port,
                                 MACH_MSG_TYPE_MAKE_SEND)
         == KERN_SUCCESS) {
@@ -72,7 +72,7 @@ nocrash_init (void)
            for a particular thread.  This has the effect that when our exception
            port gets the message, the thread specific exception port has already
            been asked, and we don't need to bother about it.
-           See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html.  */
+           See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html.  */
         task_set_exception_ports (self, mask, our_exception_port,
                                   EXCEPTION_DEFAULT, MACHINE_THREAD_STATE);
       }
index 3999fba2bbefb89e8a21ede2ae3a076ea27a3b24..264fb4591915dd4698c763f5cab650bc9664456d 100644 (file)
@@ -3,7 +3,7 @@
 # The problem is that on systems supporting O_DIRECT, open with O_DIRECT
 # fails for some file system types (e.g., tmpfs on linux-2.6.21).
 
-# Copyright (C) 2007-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2007-2014, 2019-2021 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.
index 711a2d44fbe41bdb0aafcc41f127d44feae06594..6e19af881eda6911e32e755a7e7182dca1e76a0a 100644 (file)
@@ -1,5 +1,5 @@
 # off_t.m4 serial 1
-dnl Copyright (C) 2012-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2012-2020 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.
index 52498d953b8db3c5a1d75f52a23c90a7e4328794..11652d5f81cdff10598215ac852350008e4a5883 100644 (file)
@@ -1,6 +1,6 @@
 # Test whether O_CLOEXEC is defined.
 
-dnl Copyright 2017-2019 Free Software Foundation, Inc.
+dnl Copyright 2017-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff --git a/m4/open-slash.m4 b/m4/open-slash.m4
new file mode 100644 (file)
index 0000000..5d84f2b
--- /dev/null
@@ -0,0 +1,60 @@
+# open-slash.m4 serial 2
+dnl Copyright (C) 2007-2020 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 Tests whether open() and creat() recognize a trailing slash.
+dnl Sets gl_cv_func_open_slash.
+AC_DEFUN([gl_OPEN_TRAILING_SLASH_BUG],
+[
+  AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
+  dnl open("foo/") should not create a file when the file name has a
+  dnl trailing slash.  FreeBSD only has the problem on symlinks.
+  AC_CHECK_FUNCS_ONCE([lstat])
+  AC_CACHE_CHECK([whether open recognizes a trailing slash],
+    [gl_cv_func_open_slash],
+    [# 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
+     AC_RUN_IFELSE(
+       [AC_LANG_SOURCE([[
+#include <fcntl.h>
+#if HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+]GL_MDA_DEFINES[
+int main ()
+{
+  int result = 0;
+#if HAVE_LSTAT
+  if (open ("conftest.lnk/", O_RDONLY) != -1)
+    result |= 1;
+#endif
+  if (open ("conftest.sl/", O_CREAT, 0600) >= 0)
+    result |= 2;
+  return result;
+}]])],
+       [gl_cv_func_open_slash=yes],
+       [gl_cv_func_open_slash=no],
+       [
+changequote(,)dnl
+        case "$host_os" in
+          freebsd* | aix* | hpux* | solaris2.[0-9] | solaris2.[0-9].*)
+            gl_cv_func_open_slash="guessing no" ;;
+          *)
+            gl_cv_func_open_slash="guessing yes" ;;
+        esac
+changequote([,])dnl
+       ])
+     rm -f conftest.sl conftest.tmp conftest.lnk
+    ])
+  case "$gl_cv_func_open_slash" in
+    *no)
+      AC_DEFINE([OPEN_TRAILING_SLASH_BUG], [1],
+        [Define to 1 if open() fails to recognize a trailing slash.])
+      ;;
+  esac
+])
index 5d73f4de1acb87e07a86e344ad486aa771b3577e..552eedf8c5360fb361f042a73a2c72456647a525 100644 (file)
@@ -1,5 +1,5 @@
 # open.m4 serial 15
-dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2007-2020 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.
@@ -19,48 +19,9 @@ AC_DEFUN([gl_FUNC_OPEN],
       if test "$gl_cv_macro_O_CLOEXEC" != yes; then
         REPLACE_OPEN=1
       fi
-      AC_CACHE_CHECK([whether open recognizes a trailing slash],
-        [gl_cv_func_open_slash],
-        [# 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
-          AC_RUN_IFELSE(
-            [AC_LANG_SOURCE([[
-#include <fcntl.h>
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-int main ()
-{
-  int result = 0;
-#if HAVE_LSTAT
-  if (open ("conftest.lnk/", O_RDONLY) != -1)
-    result |= 1;
-#endif
-  if (open ("conftest.sl/", O_CREAT, 0600) >= 0)
-    result |= 2;
-  return result;
-}]])],
-            [gl_cv_func_open_slash=yes],
-            [gl_cv_func_open_slash=no],
-            [
-changequote(,)dnl
-             case "$host_os" in
-               freebsd* | aix* | hpux* | solaris2.[0-9] | solaris2.[0-9].*)
-                 gl_cv_func_open_slash="guessing no" ;;
-               *)
-                 gl_cv_func_open_slash="guessing yes" ;;
-             esac
-changequote([,])dnl
-            ])
-          rm -f conftest.sl conftest.tmp conftest.lnk
-        ])
+      gl_OPEN_TRAILING_SLASH_BUG
       case "$gl_cv_func_open_slash" in
         *no)
-          AC_DEFINE([OPEN_TRAILING_SLASH_BUG], [1],
-            [Define to 1 if open() fails to recognize a trailing slash.])
           REPLACE_OPEN=1
           ;;
       esac
index 0770aca3aac7e4ffc0fe9598ad38dc087c5d7ea8..bb4fdeba750f85876818824f0c749930276be09a 100644 (file)
@@ -1,5 +1,5 @@
 # pathmax.m4 serial 11
-dnl Copyright (C) 2002-2003, 2005-2006, 2009-2019 Free Software Foundation,
+dnl Copyright (C) 2002-2003, 2005-2006, 2009-2020 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,
index 08e2db187b5353b7dbface67a585d096c559de69..6a36408e747f4cb4e2d542222c0e5811b38c59bb 100644 (file)
@@ -1,5 +1,5 @@
-# perror.m4 serial 8
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+# perror.m4 serial 9
+dnl Copyright (C) 2008-2020 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.
@@ -52,8 +52,8 @@ AC_DEFUN([gl_FUNC_PERROR],
               *-musl*) gl_cv_func_perror_works="guessing yes" ;;
                        # Guess yes on native Windows.
               mingw*)  gl_cv_func_perror_works="guessing yes" ;;
-                       # Otherwise guess no.
-              *)       gl_cv_func_perror_works="guessing no" ;;
+                       # Otherwise obey --enable-cross-guesses.
+              *)       gl_cv_func_perror_works="$gl_cross_guess_normal" ;;
             esac
            ])
         ])
diff --git a/m4/pid_t.m4 b/m4/pid_t.m4
new file mode 100644 (file)
index 0000000..3eb7916
--- /dev/null
@@ -0,0 +1,38 @@
+# pid_t.m4 serial 3
+dnl Copyright (C) 2020 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.
+
+# The following implementation works around a problem in autoconf <= 2.69.
+m4_version_prereq([2.69c], [] ,[
+
+dnl Define pid_t if the headers don't define it.
+AC_DEFUN([AC_TYPE_PID_T],
+[
+  AC_CHECK_TYPE([pid_t],
+    [],
+    [dnl On 64-bit native Windows, define it to the equivalent of 'intptr_t'
+     dnl (= 'long long' = '__int64'), because that is the return type
+     dnl of the _spawnv* functions
+     dnl <https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/spawnvp-wspawnvp>
+     dnl and the argument type of the _cwait function
+     dnl <https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/cwait>.
+     dnl Otherwise (on 32-bit Windows and on old Unix platforms), define it
+     dnl to 'int'.
+     AC_COMPILE_IFELSE(
+       [AC_LANG_PROGRAM([[
+          #if defined _WIN64 && !defined __CYGWIN__
+          LLP64
+          #endif
+          ]])
+       ],
+       [gl_pid_type='int'],
+       [gl_pid_type='__int64'])
+     AC_DEFINE_UNQUOTED([pid_t], [$gl_pid_type],
+       [Define as a signed integer type capable of holding a process identifier.])
+    ],
+    [AC_INCLUDES_DEFAULT])
+])
+
+])# m4_version_prereq 2.70
index 199cfefd404ecfc6f0e843eae4d25bdbb4f005d9..6b1fa2f289a7d06f3d498027f6b3f1ef89d2bdf2 100644 (file)
@@ -1,5 +1,5 @@
 # pipe.m4 serial 2
-dnl Copyright (C) 2010-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2010-2020 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.
index 258dc4312539c3c0ba25e653accf9618d533e673..b74c9aef9a0b7ab058409401f989c3bbd50a80a0 100644 (file)
@@ -1,6 +1,6 @@
 # serial 8
 
-# Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
index eef29c99337901f7324b45568f51158ff4a3d25a..5a959953f2a177ba17845149b0774f60135c954b 100644 (file)
@@ -1,5 +1,5 @@
-# pthread-thread.m4 serial 1
-dnl Copyright (C) 2019 Free Software Foundation, Inc.
+# pthread-thread.m4 serial 2
+dnl Copyright (C) 2019-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -41,7 +41,7 @@ AC_DEFUN([gl_PTHREAD_THREAD],
       AC_CACHE_CHECK([whether pthread_create exists as a global function],
         [gl_cv_func_pthread_create],
         [saved_LIBS="$LIBS"
-         LIBS="$LIBS $LIBMULTITHREAD"
+         LIBS="$LIBS $LIBPMULTITHREAD"
          AC_LINK_IFELSE(
            [AC_LANG_SOURCE(
               [[extern
index 8c23a77794fdb0f58eff2a39c5e099f83f53c8df..5b5e7ba96842cd141d0958f230aec639c5c0f44d 100644 (file)
@@ -1,5 +1,5 @@
-# pthread_h.m4 serial 4
-dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# pthread_h.m4 serial 5
+dnl Copyright (C) 2009-2020 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,13 +10,21 @@ AC_DEFUN([gl_PTHREAD_H],
   dnl once only, before all statements that occur in other macros.
   AC_REQUIRE([gl_PTHREAD_H_DEFAULTS])
 
-  AC_REQUIRE([gl_THREADLIB])
+  AC_REQUIRE([AC_CANONICAL_HOST])
+  AC_REQUIRE([gl_PTHREADLIB])
 
   gl_CHECK_NEXT_HEADERS([pthread.h])
-  dnl On mingw, if --enable-threads=windows or gl_AVOID_WINPTHREAD is used,
-  dnl ignore the <pthread.h> from the mingw-w64 winpthreads library.
-  if test $ac_cv_header_pthread_h = yes && test $gl_threads_api != windows; then
+  if test $ac_cv_header_pthread_h = yes; then
     HAVE_PTHREAD_H=1
+    dnl On mingw, if --enable-threads=windows or gl_AVOID_WINPTHREAD is used,
+    dnl ignore the <pthread.h> from the mingw-w64 winpthreads library.
+    m4_ifdef([gl_][THREADLIB], [
+      AC_REQUIRE([gl_][THREADLIB])
+      if { case "$host_os" in mingw*) true;; *) false;; esac; } \
+         && test $gl_threads_api = windows; then
+        HAVE_PTHREAD_H=0
+      fi
+    ])
   else
     HAVE_PTHREAD_H=0
   fi
@@ -125,7 +133,7 @@ AC_DEFUN([gl_PTHREAD_H],
   AC_REQUIRE([AC_C_RESTRICT])
 
   dnl For backward compatibility with gnulib versions <= 2019-07.
-  LIB_PTHREAD="$LIBMULTITHREAD"
+  LIB_PTHREAD="$LIBPMULTITHREAD"
   AC_SUBST([LIB_PTHREAD])
 ])
 
index 3c1d64566128a3dd0905c4f9be3e69722f726e54..049af50fdea0b32677af879770d58f07607940ca 100644 (file)
@@ -1,5 +1,5 @@
-# pthread_rwlock_rdlock.m4 serial 2
-dnl Copyright (C) 2017-2019 Free Software Foundation, Inc.
+# pthread_rwlock_rdlock.m4 serial 4
+dnl Copyright (C) 2017-2020 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.
@@ -26,14 +26,16 @@ dnl
 dnl POSIX:2017 makes this requirement only for implementations that support TPS
 dnl (Thread Priority Scheduling) and only for the scheduling policies SCHED_FIFO
 dnl and SCHED_RR, see
-dnl http://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlock_rdlock.html
+dnl https://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlock_rdlock.html
 dnl but this test verifies the guarantee regardless of TPS and regardless of
 dnl scheduling policy.
-dnl Glibc currently does not provide this guarantee, see
+dnl Glibc does not provide this guarantee (and never will on Linux), see
 dnl https://sourceware.org/bugzilla/show_bug.cgi?id=13701
+dnl https://bugzilla.redhat.com/show_bug.cgi?id=1410052
 AC_DEFUN([gl_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER],
 [
   AC_REQUIRE([gl_THREADLIB_EARLY])
+  AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
   AC_CACHE_CHECK([whether pthread_rwlock_rdlock prefers a writer to a reader],
     [gl_cv_pthread_rwlock_rdlock_prefer_writer],
     [save_LIBS="$LIBS"
@@ -153,7 +155,25 @@ main ()
 ]])],
        [gl_cv_pthread_rwlock_rdlock_prefer_writer=yes],
        [gl_cv_pthread_rwlock_rdlock_prefer_writer=no],
-       [gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing yes"])
+       [case "$host_os" in
+                         # Guess no on glibc systems.
+          *-gnu* | gnu*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;;
+                         # Guess no on musl systems.
+          *-musl*)       gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;;
+                         # Guess no on bionic systems.
+          *-android*)    gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;;
+                         # Guess yes on native Windows with the mingw-w64 winpthreads library.
+                         # Guess no on native Windows with the gnulib windows-rwlock module.
+          mingw*)        if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then
+                           gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing yes"
+                         else
+                           gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no"
+                         fi
+                         ;;
+                         # If we don't know, obey --enable-cross-guesses.
+          *)             gl_cv_pthread_rwlock_rdlock_prefer_writer="$gl_cross_guess_normal" ;;
+         esac
+       ])
      LIBS="$save_LIBS"
     ])
   case "$gl_cv_pthread_rwlock_rdlock_prefer_writer" in
index d788cf656ea2935fd4a4ebeac7cc5074af93d258..030862de015af8c663c21f7aecfe8ea18c2e6920 100644 (file)
@@ -1,5 +1,5 @@
-# pthread_sigmask.m4 serial 18
-dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
+# pthread_sigmask.m4 serial 19
+dnl Copyright (C) 2011-2020 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.
@@ -220,6 +220,7 @@ int main ()
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
+]GL_MDA_DEFINES[
 static volatile int sigint_occurred;
 static void
 sigint_handler (int sig)
index 342ba2636ab1ca242ce7eb444e543846c239b22e..3799fb5f13419f0071178dab27db66f01535bab8 100644 (file)
@@ -1,5 +1,5 @@
-# putenv.m4 serial 23
-dnl Copyright (C) 2002-2019 Free Software Foundation, Inc.
+# putenv.m4 serial 25
+dnl Copyright (C) 2002-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -14,37 +14,41 @@ AC_DEFUN([gl_FUNC_PUTENV],
   AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
   AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
   AC_CACHE_CHECK([for putenv compatible with GNU and SVID],
-   [gl_cv_func_svid_putenv],
-   [AC_RUN_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT],[[
-    /* Put it in env.  */
-    if (putenv ("CONFTEST_putenv=val"))
-      return 1;
+    [gl_cv_func_svid_putenv],
+    [AC_RUN_IFELSE(
+       [AC_LANG_PROGRAM(
+          [AC_INCLUDES_DEFAULT
+           GL_MDA_DEFINES],
+          [[
+            /* Put it in env.  */
+            if (putenv ("CONFTEST_putenv=val"))
+              return 1;
 
-    /* Try to remove it.  */
-    if (putenv ("CONFTEST_putenv"))
-      return 2;
+            /* Try to remove it.  */
+            if (putenv ("CONFTEST_putenv"))
+              return 2;
 
-    /* Make sure it was deleted.  */
-    if (getenv ("CONFTEST_putenv") != 0)
-      return 3;
+            /* Make sure it was deleted.  */
+            if (getenv ("CONFTEST_putenv") != 0)
+              return 3;
 
-    return 0;
-              ]])],
-             gl_cv_func_svid_putenv=yes,
-             gl_cv_func_svid_putenv=no,
-             dnl When crosscompiling, assume putenv is broken.
-             [case "$host_os" in
-                               # Guess yes on glibc systems.
-                *-gnu* | gnu*) gl_cv_func_svid_putenv="guessing yes" ;;
-                               # Guess yes on musl systems.
-                *-musl*)       gl_cv_func_svid_putenv="guessing yes" ;;
-                               # Guess no on native Windows.
-                mingw*)        gl_cv_func_svid_putenv="guessing no" ;;
-                               # If we don't know, assume the worst.
-                *)             gl_cv_func_svid_putenv="guessing no" ;;
-              esac
-             ])
-   ])
+            return 0;
+          ]])],
+       [gl_cv_func_svid_putenv=yes],
+       [gl_cv_func_svid_putenv=no],
+       [dnl When crosscompiling, assume putenv is broken.
+        case "$host_os" in
+                         # Guess yes on glibc systems.
+          *-gnu* | gnu*) gl_cv_func_svid_putenv="guessing yes" ;;
+                         # Guess yes on musl systems.
+          *-musl*)       gl_cv_func_svid_putenv="guessing yes" ;;
+                         # Guess no on native Windows.
+          mingw*)        gl_cv_func_svid_putenv="guessing no" ;;
+                         # If we don't know, obey --enable-cross-guesses.
+          *)             gl_cv_func_svid_putenv="$gl_cross_guess_normal" ;;
+        esac
+       ])
+    ])
   case "$gl_cv_func_svid_putenv" in
     *yes) ;;
     *)
index feaa7351142f7e279d60a6b46c5feee952ec904f..9efab95e7f32a2232e23afb77f4b5383047cdc41 100644 (file)
@@ -1,5 +1,5 @@
 # quote.m4 serial 6
-dnl Copyright (C) 2002-2003, 2005-2006, 2009-2019 Free Software Foundation,
+dnl Copyright (C) 2002-2003, 2005-2006, 2009-2020 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,
index c478f5058ee7253c77062397618cacaa78fd27b5..40387119b57225794dcfcd70ea17066ca2ac170f 100644 (file)
@@ -1,10 +1,11 @@
-# quotearg.m4 serial 9
-dnl Copyright (C) 2002, 2004-2019 Free Software Foundation, Inc.
+# quotearg.m4 serial 10
+dnl Copyright (C) 2002, 2004-2020 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_QUOTEARG],
 [
+  AC_REQUIRE([AC_C_RESTRICT])
   :
 ])
index f7661e6597bcb4d17f6f30cb47533da640104e87..5b61b65d28c03fe6b037335e5e380e600658dd2f 100644 (file)
@@ -1,5 +1,5 @@
 # raise.m4 serial 4
-dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2020 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.
index b1e77d2e7b450fd6486c938f425294d6ff86e13a..5ba775f2dbffd6b3fd173b3c0fd60ed7501ba7d0 100644 (file)
@@ -1,5 +1,5 @@
 # read.m4 serial 5
-dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2020 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.
index 2d7681576ccdb7821ab726960a5eb17fe9c944c7..9aa9e46da8c53f146708b4227a6c99b0c9936676 100644 (file)
@@ -1,5 +1,5 @@
-# readlink.m4 serial 14
-dnl Copyright (C) 2003, 2007, 2009-2019 Free Software Foundation, Inc.
+# readlink.m4 serial 15
+dnl Copyright (C) 2003, 2007, 2009-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -38,8 +38,8 @@ AC_DEFUN([gl_FUNC_READLINK],
             linux-* | linux) gl_cv_func_readlink_works="guessing yes" ;;
                              # Guess yes on glibc systems.
             *-gnu* | gnu*)   gl_cv_func_readlink_works="guessing yes" ;;
-                             # If we don't know, assume the worst.
-            *)               gl_cv_func_readlink_works="guessing no" ;;
+                             # If we don't know, obey --enable-cross-guesses.
+            *)               gl_cv_func_readlink_works="$gl_cross_guess_normal" ;;
           esac
          ])
       rm -f conftest.link conftest.lnk2])
index 93066e80cea2d79509f83e99eb52fe02d5d46ce5..53967f4ef133fae5a7c849faba01c325a21a8dd3 100644 (file)
@@ -1,27 +1,19 @@
-# realloc.m4 serial 17
-dnl Copyright (C) 2007, 2009-2019 Free Software Foundation, Inc.
+# realloc.m4 serial 19
+dnl Copyright (C) 2007, 2009-2020 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.
 
-m4_version_prereq([2.70], [] ,[
-
 # This is adapted with modifications from upstream Autoconf here:
 # https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=04be2b7a29d65d9a08e64e8e56e594c91749598c
 AC_DEFUN([_AC_FUNC_REALLOC_IF],
 [
-  AC_REQUIRE([AC_HEADER_STDC])dnl
   AC_REQUIRE([AC_CANONICAL_HOST])dnl for cross-compiles
-  AC_CHECK_HEADERS([stdlib.h])
   AC_CACHE_CHECK([for GNU libc compatible realloc],
     [ac_cv_func_realloc_0_nonnull],
     [AC_RUN_IFELSE(
        [AC_LANG_PROGRAM(
-          [[#if defined STDC_HEADERS || defined HAVE_STDLIB_H
-            # include <stdlib.h>
-            #else
-            char *realloc ();
-            #endif
+          [[#include <stdlib.h>
           ]],
           [[char *p = realloc (0, 0);
             int result = !p;
@@ -35,8 +27,8 @@ AC_DEFUN([_AC_FUNC_REALLOC_IF],
           *-gnu* | gnu* | *-musl* | freebsd* | netbsd* | openbsd* \
           | hpux* | solaris* | cygwin* | mingw*)
             ac_cv_func_realloc_0_nonnull="guessing yes" ;;
-          # If we don't know, assume the worst.
-          *) ac_cv_func_realloc_0_nonnull="guessing no" ;;
+          # If we don't know, obey --enable-cross-guesses.
+          *) ac_cv_func_realloc_0_nonnull="$gl_cross_guess_normal" ;;
         esac
        ])
     ])
@@ -50,8 +42,6 @@ AC_DEFUN([_AC_FUNC_REALLOC_IF],
   esac
 ])# AC_FUNC_REALLOC
 
-])
-
 # gl_FUNC_REALLOC_GNU
 # -------------------
 # Test whether 'realloc (0, 0)' is handled like in GNU libc, and replace
index 35119c5c85fab372253e07f755b2475e69608dcb..e723f591216ba53cdc532639b99b3c90c1eb7242 100644 (file)
@@ -1,6 +1,6 @@
-# serial 68
+# serial 70
 
-# Copyright (C) 1996-2001, 2003-2019 Free Software Foundation, Inc.
+# Copyright (C) 1996-2001, 2003-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -90,11 +90,14 @@ AC_DEFUN([gl_REGEX],
                   s = re_compile_pattern (pat, sizeof pat - 1, &regex);
                   if (s)
                     result |= 1;
-                  else if (re_search (&regex, data, sizeof data - 1,
-                                      0, sizeof data - 1, &regs)
-                           != -1)
-                    result |= 1;
-                  regfree (&regex);
+                  else
+                    {
+                      if (re_search (&regex, data, sizeof data - 1,
+                                     0, sizeof data - 1, &regs)
+                          != -1)
+                        result |= 1;
+                      regfree (&regex);
+                    }
                 }
 
                 {
@@ -125,8 +128,8 @@ AC_DEFUN([gl_REGEX],
                                      0, sizeof data - 1, 0);
                       if (i != 0 && i != 21)
                         result |= 1;
+                      regfree (&regex);
                     }
-                  regfree (&regex);
                 }
 
                 if (! setlocale (LC_ALL, "C"))
@@ -139,9 +142,13 @@ AC_DEFUN([gl_REGEX],
             s = re_compile_pattern ("a[^x]b", 6, &regex);
             if (s)
               result |= 2;
-            /* This should fail, but succeeds for glibc-2.5.  */
-            else if (re_search (&regex, "a\nb", 3, 0, 3, &regs) != -1)
-              result |= 2;
+            else
+              {
+                /* This should fail, but succeeds for glibc-2.5.  */
+                if (re_search (&regex, "a\nb", 3, 0, 3, &regs) != -1)
+                  result |= 2;
+                regfree (&regex);
+              }
 
             /* This regular expression is from Spencer ere test number 75
                in grep-2.3.  */
@@ -153,7 +160,10 @@ AC_DEFUN([gl_REGEX],
             s = re_compile_pattern ("a[[:@:>@:]]b\n", 11, &regex);
             /* This should fail with _Invalid character class name_ error.  */
             if (!s)
-              result |= 4;
+              {
+                result |= 4;
+                regfree (&regex);
+              }
 
             /* Ensure that [b-a] is diagnosed as invalid, when
                using RE_NO_EMPTY_RANGES. */
@@ -161,13 +171,18 @@ AC_DEFUN([gl_REGEX],
             memset (&regex, 0, sizeof regex);
             s = re_compile_pattern ("a[b-a]", 6, &regex);
             if (s == 0)
-              result |= 8;
+              {
+                result |= 8;
+                regfree (&regex);
+              }
 
             /* This should succeed, but does not for glibc-2.1.3.  */
             memset (&regex, 0, sizeof regex);
             s = re_compile_pattern ("{1", 2, &regex);
             if (s)
               result |= 8;
+            else
+              regfree (&regex);
 
             /* The following example is derived from a problem report
                against gawk from Jorge Stolfi <stolfi@ic.unicamp.br>.  */
@@ -175,17 +190,35 @@ AC_DEFUN([gl_REGEX],
             s = re_compile_pattern ("[an\371]*n", 7, &regex);
             if (s)
               result |= 8;
-            /* This should match, but does not for glibc-2.2.1.  */
-            else if (re_match (&regex, "an", 2, 0, &regs) != 2)
-              result |= 8;
+            else
+              {
+                /* This should match, but does not for glibc-2.2.1.  */
+                if (re_match (&regex, "an", 2, 0, &regs) != 2)
+                  result |= 8;
+                else
+                  {
+                    free (regs.start);
+                    free (regs.end);
+                  }
+                regfree (&regex);
+              }
 
             memset (&regex, 0, sizeof regex);
             s = re_compile_pattern ("x", 1, &regex);
             if (s)
               result |= 8;
-            /* glibc-2.2.93 does not work with a negative RANGE argument.  */
-            else if (re_search (&regex, "wxy", 3, 2, -2, &regs) != 1)
-              result |= 8;
+            else
+              {
+                /* glibc-2.2.93 does not work with a negative RANGE argument.  */
+                if (re_search (&regex, "wxy", 3, 2, -2, &regs) != 1)
+                  result |= 8;
+                else
+                  {
+                    free (regs.start);
+                    free (regs.end);
+                  }
+                regfree (&regex);
+              }
 
             /* The version of regex.c in older versions of gnulib
                ignored RE_ICASE.  Detect that problem too.  */
@@ -194,8 +227,17 @@ AC_DEFUN([gl_REGEX],
             s = re_compile_pattern ("x", 1, &regex);
             if (s)
               result |= 16;
-            else if (re_search (&regex, "WXY", 3, 0, 3, &regs) < 0)
-              result |= 16;
+            else
+              {
+                if (re_search (&regex, "WXY", 3, 0, 3, &regs) < 0)
+                  result |= 16;
+                else
+                  {
+                    free (regs.start);
+                    free (regs.end);
+                  }
+                regfree (&regex);
+              }
 
             /* Catch a bug reported by Vin Shelton in
                https://lists.gnu.org/r/bug-coreutils/2007-06/msg00089.html
@@ -207,6 +249,8 @@ AC_DEFUN([gl_REGEX],
             s = re_compile_pattern ("[[:alnum:]_-]\\\\+$", 16, &regex);
             if (s)
               result |= 32;
+            else
+              regfree (&regex);
 
             /* REG_STARTEND was added to glibc on 2004-01-15.
                Reject older versions.  */
@@ -221,8 +265,14 @@ AC_DEFUN([gl_REGEX],
             re_set_syntax (RE_SYNTAX_POSIX_EGREP);
             memset (&regex, 0, sizeof regex);
             s = re_compile_pattern ("0|()0|\\1|0", 10, &regex);
-            if (!s || strcmp (s, "Invalid back reference"))
+            if (!s)
               result |= 64;
+            else
+              {
+                if (strcmp (s, "Invalid back reference"))
+                  result |= 64;
+                regfree (&regex);
+              }
 
 #if 0
             /* It would be nice to reject hosts whose regoff_t values are too
@@ -243,8 +293,8 @@ AC_DEFUN([gl_REGEX],
         [case "$host_os" in
                    # Guess no on native Windows.
            mingw*) gl_cv_func_re_compile_pattern_working="guessing no" ;;
-                   # Otherwise, assume it is not working.
-           *)      gl_cv_func_re_compile_pattern_working="guessing no" ;;
+                   # Otherwise obey --enable-cross-guesses.
+           *)      gl_cv_func_re_compile_pattern_working="$gl_cross_guess_normal" ;;
          esac
         ])
       ])
index d10a005b78aab2228b47845c65ae96ea26495e9a..06420589d354021078fcb42c528ac9c69d8b8d4c 100644 (file)
@@ -1,5 +1,5 @@
 # rpmatch.m4 serial 10
-dnl Copyright (C) 2002-2003, 2007-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2003, 2007-2020 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.
index d133e0567b08217accac4f8b5a215f5d60e0ba21..5e2ca07f71284beced333d321a5af05ba45aa21f 100644 (file)
@@ -1,5 +1,5 @@
 # safe-read.m4 serial 6
-dnl Copyright (C) 2002-2003, 2005-2006, 2009-2019 Free Software Foundation,
+dnl Copyright (C) 2002-2003, 2005-2006, 2009-2020 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,
index 2cc814e2e7c5982804b63048d826e859afce748e..af0c43de079a5df98ecc7a2fbcd22a5fa8e121b8 100644 (file)
@@ -1,5 +1,5 @@
 # sched_h.m4 serial 12
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2020 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.
index 531c817a1868e1eaea238abb92cedc6fc715c91a..90d2bb9492271181dd144d36fc34196d71cb7782 100644 (file)
@@ -1,5 +1,5 @@
-# select.m4 serial 10
-dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# select.m4 serial 12
+dnl Copyright (C) 2009-2020 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.
@@ -60,7 +60,8 @@ changequote([,])dnl
 #endif
 #include <unistd.h>
 #include <errno.h>
-]],[[
+]GL_MDA_DEFINES],
+[[
   fd_set set;
   dup2(0, 16);
   FD_ZERO(&set);
@@ -78,8 +79,8 @@ changequote([,])dnl
             linux-* | linux) gl_cv_func_select_detects_ebadf="guessing yes" ;;
                              # Guess yes on glibc systems.
             *-gnu* | gnu*)   gl_cv_func_select_detects_ebadf="guessing yes" ;;
-                             # If we don't know, assume the worst.
-            *)               gl_cv_func_select_detects_ebadf="guessing no" ;;
+                             # If we don't know, obey --enable-cross-guesses.
+            *)               gl_cv_func_select_detects_ebadf="$gl_cross_guess_normal" ;;
            esac
           ])
       ])
diff --git a/m4/semaphore.m4 b/m4/semaphore.m4
new file mode 100644 (file)
index 0000000..ca20c76
--- /dev/null
@@ -0,0 +1,45 @@
+# semaphore.m4 serial 1
+dnl Copyright (C) 2019-2020 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.
+
+# Sets LIB_SEMAPHORE to the library needed, in addition to $(LIBMULTITHREAD),
+# for getting the <semaphore.h> functions.
+
+AC_DEFUN([gl_SEMAPHORE],
+[
+  AC_REQUIRE([gl_THREADLIB])
+  dnl sem_post is
+  dnl   - in libc on macOS, FreeBSD, AIX, IRIX, Solaris 11, Haiku, Cygwin,
+  dnl   - in libpthread on glibc systems, OpenBSD,
+  dnl   - in libpthread or librt on NetBSD,
+  dnl   - in librt on HP-UX 11, OSF/1, Solaris 10.
+  dnl On the platforms where -lpthread is needed, it is contained in
+  dnl $LIBMULTITHREAD. Therefore, the only library we need to test for is -lrt.
+  AC_CACHE_CHECK([for library needed for semaphore functions],
+    [gl_cv_semaphore_lib],
+    [save_LIBS="$LIBS"
+     LIBS="$LIBS $LIBMULTITHREAD"
+     AC_LINK_IFELSE(
+       [AC_LANG_PROGRAM(
+          [[#include <semaphore.h>]],
+          [[sem_post ((sem_t *)0);]])],
+       [gl_cv_semaphore_lib=none],
+       [LIBS="$LIBS -lrt"
+        AC_LINK_IFELSE(
+          [AC_LANG_PROGRAM(
+             [[#include <semaphore.h>]],
+             [[sem_post ((sem_t *)0);]])],
+          [gl_cv_semaphore_lib='-lrt'],
+          [gl_cv_semaphore_lib=none])
+       ])
+     LIBS="$save_LIBS"
+    ])
+  if test "x$gl_cv_semaphore_lib" = xnone; then
+    LIB_SEMAPHORE=
+  else
+    LIB_SEMAPHORE="$gl_cv_semaphore_lib"
+  fi
+  AC_SUBST([LIB_SEMAPHORE])
+])
index a8f83d60ffa6e30eee09f6d6ad2f799d45db2a4f..5dbf91306633d83fe54d4a656f8eadd298c2bafe 100644 (file)
@@ -1,5 +1,5 @@
-# setenv.m4 serial 28
-dnl Copyright (C) 2001-2004, 2006-2019 Free Software Foundation, Inc.
+# setenv.m4 serial 30
+dnl Copyright (C) 2001-2004, 2006-2020 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.
@@ -39,8 +39,8 @@ AC_DEFUN([gl_FUNC_SETENV],
          *-gnu* | gnu*) gl_cv_func_setenv_works="guessing yes" ;;
                         # Guess yes on musl systems.
          *-musl*)       gl_cv_func_setenv_works="guessing yes" ;;
-                        # If we don't know, assume the worst.
-         *)             gl_cv_func_setenv_works="guessing no" ;;
+                        # If we don't know, obey --enable-cross-guesses.
+         *)             gl_cv_func_setenv_works="$gl_cross_guess_normal" ;;
        esac
       ])])
     case "$gl_cv_func_setenv_works" in
@@ -106,35 +106,39 @@ int unsetenv (const char *name);
     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 <stdlib.h>
-       #include <errno.h>
-       extern char **environ;
-      ]], [[
-       char entry1[] = "a=1";
-       char entry2[] = "b=2";
-       char *env[] = { entry1, entry2, NULL };
-       if (putenv ((char *) "a=1")) return 1;
-       if (putenv (entry2)) return 2;
-       entry2[0] = 'a';
-       unsetenv ("a");
-       if (getenv ("a")) return 3;
-       if (!unsetenv ("") || errno != EINVAL) return 4;
-       entry2[0] = 'b';
-       environ = env;
-       if (!getenv ("a")) return 5;
-       entry2[0] = 'a';
-       unsetenv ("a");
-       if (getenv ("a")) return 6;
-      ]])],
-      [gl_cv_func_unsetenv_works=yes], [gl_cv_func_unsetenv_works=no],
-      [case "$host_os" in
-                 # Guess yes on glibc systems.
-         *-gnu*) gl_cv_func_unsetenv_works="guessing yes" ;;
-                 # If we don't know, assume the worst.
-         *)      gl_cv_func_unsetenv_works="guessing no" ;;
-       esac
-      ])])
+      [AC_RUN_IFELSE(
+         [AC_LANG_PROGRAM([[
+            #include <stdlib.h>
+            #include <errno.h>
+            extern char **environ;
+           ]GL_MDA_DEFINES],
+           [[
+            char entry1[] = "a=1";
+            char entry2[] = "b=2";
+            char *env[] = { entry1, entry2, NULL };
+            if (putenv ((char *) "a=1")) return 1;
+            if (putenv (entry2)) return 2;
+            entry2[0] = 'a';
+            unsetenv ("a");
+            if (getenv ("a")) return 3;
+            if (!unsetenv ("") || errno != EINVAL) return 4;
+            entry2[0] = 'b';
+            environ = env;
+            if (!getenv ("a")) return 5;
+            entry2[0] = 'a';
+            unsetenv ("a");
+            if (getenv ("a")) return 6;
+           ]])],
+         [gl_cv_func_unsetenv_works=yes],
+         [gl_cv_func_unsetenv_works=no],
+         [case "$host_os" in
+                    # Guess yes on glibc systems.
+            *-gnu*) gl_cv_func_unsetenv_works="guessing yes" ;;
+                    # If we don't know, obey --enable-cross-guesses.
+            *)      gl_cv_func_unsetenv_works="$gl_cross_guess_normal" ;;
+          esac
+         ])
+      ])
     case "$gl_cv_func_unsetenv_works" in
       *yes) ;;
       *)
index dba68c4e4ffcf30fb0252b1db315bec967be56fd..a56bf4e62b8aa719b792294d7dcb515e501abde4 100644 (file)
@@ -1,5 +1,5 @@
-# setlocale.m4 serial 6
-dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
+# setlocale.m4 serial 7
+dnl Copyright (C) 2011-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -7,16 +7,20 @@ dnl with or without modifications, as long as this notice is preserved.
 AC_DEFUN([gl_FUNC_SETLOCALE],
 [
   AC_REQUIRE([gl_LOCALE_H_DEFAULTS])
+  AC_REQUIRE([gl_FUNC_SETLOCALE_NULL])
   AC_REQUIRE([AC_CANONICAL_HOST])
+
+  dnl Test whether we need to improve on the general working of setlocale.
+  NEED_SETLOCALE_IMPROVED=0
   case "$host_os" in
     dnl On native Windows systems, setlocale(category,NULL) does not look at
     dnl the environment variables LC_ALL, category, and LANG.
-    mingw*) REPLACE_SETLOCALE=1 ;;
+    mingw*) NEED_SETLOCALE_IMPROVED=1 ;;
     dnl On Cygwin 1.5.x, setlocale always succeeds but setlocale(LC_CTYPE,NULL)
     dnl is then still "C".
     cygwin*)
       case `uname -r` in
-        1.5.*) REPLACE_SETLOCALE=1 ;;
+        1.5.*) NEED_SETLOCALE_IMPROVED=1 ;;
       esac
       ;;
     dnl On Android 4.3, setlocale(category,"C") always fails.
@@ -42,10 +46,33 @@ int main ()
         ])
       case "$gl_cv_func_setlocale_works" in
         *yes) ;;
-        *) REPLACE_SETLOCALE=1 ;;
+        *) NEED_SETLOCALE_IMPROVED=1 ;;
       esac
       ;;
   esac
+  AC_DEFINE_UNQUOTED([NEED_SETLOCALE_IMPROVED], [$NEED_SETLOCALE_IMPROVED],
+    [Define to 1 to enable general improvements of setlocale.])
+
+  dnl Test whether we need a multithread-safe setlocale(category,NULL).
+  NEED_SETLOCALE_MTSAFE=0
+  if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then
+    NEED_SETLOCALE_MTSAFE=1
+  fi
+  AC_DEFINE_UNQUOTED([NEED_SETLOCALE_MTSAFE], [$NEED_SETLOCALE_MTSAFE],
+    [Define to 1 to enable a multithread-safety fix of setlocale.])
+
+  if test $NEED_SETLOCALE_IMPROVED = 1 || test $NEED_SETLOCALE_MTSAFE = 1; then
+    REPLACE_SETLOCALE=1
+  fi
+
+  if test $NEED_SETLOCALE_MTSAFE = 1; then
+    LIB_SETLOCALE="$LIB_SETLOCALE_NULL"
+  else
+    LIB_SETLOCALE=
+  fi
+  dnl LIB_SETLOCALE is expected to be '-pthread' or '-lpthread' on AIX with gcc
+  dnl or xlc, and empty otherwise.
+  AC_SUBST([LIB_SETLOCALE])
 ])
 
 # Prerequisites of lib/setlocale.c.
diff --git a/m4/setlocale_null.m4 b/m4/setlocale_null.m4
new file mode 100644 (file)
index 0000000..fc1e3e1
--- /dev/null
@@ -0,0 +1,98 @@
+# setlocale_null.m4 serial 4
+dnl Copyright (C) 2019-2020 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_SETLOCALE_NULL],
+[
+  AC_REQUIRE([AC_CANONICAL_HOST])
+  AC_REQUIRE([gl_PTHREADLIB])
+  AC_CHECK_HEADERS_ONCE([threads.h])
+
+  AC_CACHE_CHECK([whether setlocale (LC_ALL, NULL) is multithread-safe],
+    [gl_cv_func_setlocale_null_all_mtsafe],
+    [case "$host_os" in
+       # Guess no on musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku, Cygwin.
+       *-musl* | darwin* | freebsd* | netbsd* | openbsd* | aix* | haiku* | cygwin*)
+         gl_cv_func_setlocale_null_all_mtsafe=no ;;
+       # Guess yes on glibc, HP-UX, IRIX, Solaris, native Windows.
+       *-gnu* | gnu* | hpux* | irix* | solaris* | mingw*)
+         gl_cv_func_setlocale_null_all_mtsafe=yes ;;
+       # If we don't know, obey --enable-cross-guesses.
+       *)
+         gl_cv_func_setlocale_null_all_mtsafe="$gl_cross_guess_normal" ;;
+     esac
+    ])
+  dnl On platforms without multithreading, there is no issue.
+  case "$host_os" in
+    mingw*) ;;
+    *)
+      if test $gl_pthread_api = no && test $ac_cv_header_threads_h = no; then
+        gl_cv_func_setlocale_null_all_mtsafe="trivially yes"
+      fi
+      ;;
+  esac
+  case "$gl_cv_func_setlocale_null_all_mtsafe" in
+    *yes) SETLOCALE_NULL_ALL_MTSAFE=1 ;;
+    *)    SETLOCALE_NULL_ALL_MTSAFE=0 ;;
+  esac
+  AC_DEFINE_UNQUOTED([SETLOCALE_NULL_ALL_MTSAFE], [$SETLOCALE_NULL_ALL_MTSAFE],
+    [Define to 1 if setlocale (LC_ALL, NULL) is multithread-safe.])
+
+  dnl This is about a single category (not LC_ALL).
+  AC_CACHE_CHECK([whether setlocale (category, NULL) is multithread-safe],
+    [gl_cv_func_setlocale_null_one_mtsafe],
+    [case "$host_os" in
+       # Guess no on OpenBSD, AIX.
+       openbsd* | aix*)
+         gl_cv_func_setlocale_null_one_mtsafe=no ;;
+       # Guess yes on glibc, musl libc, macOS, FreeBSD, NetBSD, HP-UX, IRIX, Solaris, Haiku, Cygwin, native Windows.
+       *-gnu* | gnu* | *-musl* | darwin* | freebsd* | netbsd* | hpux* | irix* | solaris* | haiku* | cygwin* | mingw*)
+         gl_cv_func_setlocale_null_one_mtsafe=yes ;;
+       # If we don't know, obey --enable-cross-guesses.
+       *)
+         gl_cv_func_setlocale_null_one_mtsafe="$gl_cross_guess_normal" ;;
+     esac
+    ])
+  dnl On platforms without multithreading, there is no issue.
+  case "$host_os" in
+    mingw*) ;;
+    *)
+      if test $gl_pthread_api = no && test $ac_cv_header_threads_h = no; then
+        gl_cv_func_setlocale_null_one_mtsafe="trivially yes"
+      fi
+      ;;
+  esac
+  case "$gl_cv_func_setlocale_null_one_mtsafe" in
+    *yes) SETLOCALE_NULL_ONE_MTSAFE=1 ;;
+    *)    SETLOCALE_NULL_ONE_MTSAFE=0 ;;
+  esac
+  AC_DEFINE_UNQUOTED([SETLOCALE_NULL_ONE_MTSAFE], [$SETLOCALE_NULL_ONE_MTSAFE],
+    [Define to 1 if setlocale (category, NULL) is multithread-safe.])
+
+  dnl Determine link dependencies of lib/setlocale_null.c and lib/setlocale-lock.c.
+  if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then
+    case "$host_os" in
+      mingw*) LIB_SETLOCALE_NULL= ;;
+      *)
+        gl_WEAK_SYMBOLS
+        case "$gl_cv_have_weak" in
+          *yes) LIB_SETLOCALE_NULL= ;;
+          *)    LIB_SETLOCALE_NULL="$LIBPTHREAD" ;;
+        esac
+        ;;
+    esac
+  else
+    LIB_SETLOCALE_NULL=
+  fi
+  dnl LIB_SETLOCALE_NULL is expected to be '-pthread' or '-lpthread' on AIX
+  dnl with gcc or xlc, and empty otherwise.
+  AC_SUBST([LIB_SETLOCALE_NULL])
+])
+
+# Prerequisites of lib/setlocale-lock.c.
+AC_DEFUN([gl_PREREQ_SETLOCALE_LOCK],
+[
+  gl_VISIBILITY
+])
index 6117d1b40279fbe0b3dd0fd8ff691431d8ab4767..9a2d201b2aa938b40f493a3db902bebdde0c302b 100644 (file)
@@ -1,5 +1,5 @@
 # sigaction.m4 serial 7
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2020 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.
index 3acec64f881ca266a21e8821e5906df6605ac8f1..b2629809f18cc737e7d5c960de6090ade94b78c8 100644 (file)
@@ -1,5 +1,5 @@
-# signal_h.m4 serial 18
-dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
+# signal_h.m4 serial 19
+dnl Copyright (C) 2007-2020 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.
@@ -34,6 +34,8 @@ AC_DEFUN([gl_SIGNAL_H],
     ]], [pthread_sigmask sigaction
     sigaddset sigdelset sigemptyset sigfillset sigismember
     sigpending sigprocmask])
+
+  AC_REQUIRE([AC_C_RESTRICT])
 ])
 
 AC_DEFUN([gl_CHECK_TYPE_SIGSET_T],
index d722f65a2f39d8400f080cda3f688e682b33407b..b7cff8ddcee74819d24da7d40b111ae0742da685 100644 (file)
@@ -1,5 +1,5 @@
-# signalblocking.m4 serial 14
-dnl Copyright (C) 2001-2002, 2006-2019 Free Software Foundation, Inc.
+# signalblocking.m4 serial 17
+dnl Copyright (C) 2001-2002, 2006-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -13,11 +13,9 @@ AC_DEFUN([gl_SIGNALBLOCKING],
 [
   AC_REQUIRE([gl_SIGNAL_H_DEFAULTS])
   AC_REQUIRE([gl_CHECK_TYPE_SIGSET_T])
-  if test $gl_cv_type_sigset_t = yes; then
-    AC_CHECK_FUNC([sigprocmask], [gl_cv_func_sigprocmask=1])
-  fi
-  if test -z "$gl_cv_func_sigprocmask"; then
-    HAVE_POSIX_SIGNALBLOCKING=0
+  HAVE_POSIX_SIGNALBLOCKING=0
+  if test "$gl_cv_type_sigset_t" = yes; then
+    AC_CHECK_FUNC([sigprocmask], [HAVE_POSIX_SIGNALBLOCKING=1])
   fi
 ])
 
index 7bab4670a4960e9ce796d2314ca3ad50951a5f1c..d19170e90587e927db32dabb4900221e4946f83a 100644 (file)
@@ -1,5 +1,5 @@
-# sleep.m4 serial 10
-dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
+# sleep.m4 serial 11
+dnl Copyright (C) 2007-2020 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.
@@ -52,8 +52,8 @@ handle_alarm (int sig)
          *-musl*)       gl_cv_func_sleep_works="guessing yes" ;;
                         # Guess no on native Windows.
          mingw*)        gl_cv_func_sleep_works="guessing no" ;;
-                        # If we don't know, assume the worst.
-         *)             gl_cv_func_sleep_works="guessing no" ;;
+                        # If we don't know, obey --enable-cross-guesses.
+         *)             gl_cv_func_sleep_works="$gl_cross_guess_normal" ;;
        esac
       ])])
     case "$gl_cv_func_sleep_works" in
index 90ba20c14c4ab82495324036ea2f251adc9b33d7..48dd7d66c78a8c84df6e561ba67de5c40d1f7d81 100644 (file)
@@ -1,5 +1,5 @@
-# socketlib.m4 serial 2
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+# socketlib.m4 serial 3
+dnl Copyright (C) 2008-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -14,21 +14,27 @@ AC_DEFUN([gl_SOCKETLIB],
   LIBSOCKET=
   if test $HAVE_WINSOCK2_H = 1; then
     dnl Native Windows API (not Cygwin).
-    AC_CACHE_CHECK([if we need to call WSAStartup in winsock2.h and -lws2_32],
-                   [gl_cv_func_wsastartup], [
-      gl_save_LIBS="$LIBS"
-      LIBS="$LIBS -lws2_32"
-      AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+    dnl If the function WSAStartup exists (declared in <winsock2.h> and
+    dnl defined through -lws2_32), we need to call it.
+    AC_CACHE_CHECK([for WSAStartup],
+      [gl_cv_func_wsastartup], [
+       gl_save_LIBS="$LIBS"
+       LIBS="$LIBS -lws2_32"
+       AC_LINK_IFELSE(
+         [AC_LANG_PROGRAM([[
 #ifdef HAVE_WINSOCK2_H
 # include <winsock2.h>
 #endif]], [[
-          WORD wVersionRequested = MAKEWORD(1, 1);
-          WSADATA wsaData;
-          int err = WSAStartup(wVersionRequested, &wsaData);
-          WSACleanup ();]])],
-        gl_cv_func_wsastartup=yes, gl_cv_func_wsastartup=no)
-      LIBS="$gl_save_LIBS"
-    ])
+            WORD wVersionRequested = MAKEWORD(1, 1);
+            WSADATA wsaData;
+            int err = WSAStartup(wVersionRequested, &wsaData);
+            WSACleanup ();
+            ]])
+         ],
+         [gl_cv_func_wsastartup=yes],
+         [gl_cv_func_wsastartup=no])
+       LIBS="$gl_save_LIBS"
+      ])
     if test "$gl_cv_func_wsastartup" = "yes"; then
       AC_DEFINE([WINDOWS_SOCKETS], [1], [Define if WSAStartup is needed.])
       LIBSOCKET='-lws2_32'
index 06d3b9dbfd8c9b9574a5edde0efd3cfd662e62ce..7e53ef20fcdc4c3f2f9d6fee9a50d5f6ea4639ee 100644 (file)
@@ -1,5 +1,5 @@
 # sockets.m4 serial 7
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2020 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.
index deb5135fef41d610d8d172c75dfa84934892114f..251960b0ac0c89f9bb500cccb23c73d3ba9accc0 100644 (file)
@@ -1,5 +1,5 @@
 # socklen.m4 serial 11
-dnl Copyright (C) 2005-2007, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2005-2007, 2009-2020 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.
index 7b3298235f9bf1bde8715d7f0dd7f9f9f9d3ee4e..495a35567e36750b0f748e5779b7d263c6f4dd13 100644 (file)
@@ -1,5 +1,5 @@
 # sockpfaf.m4 serial 9
-dnl Copyright (C) 2004, 2006, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2004, 2006, 2009-2020 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.
index 38bcee1c7d997372918aaa6f0db7810e6e165c9c..6c0a588873cb2ca39200cfb1e9e063f5b428608d 100644 (file)
@@ -1,5 +1,5 @@
 # ssize_t.m4 serial 5 (gettext-0.18.2)
-dnl Copyright (C) 2001-2003, 2006, 2010-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2001-2003, 2006, 2010-2020 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.
index 1685788e05fd7e65a368c665d091e55256acd589..0ac3f7272e398d546e9b6de704895d73ccfcf51a 100644 (file)
@@ -1,6 +1,6 @@
 # Checks for stat-related time functions.
 
-# Copyright (C) 1998-1999, 2001, 2003, 2005-2007, 2009-2019 Free Software
+# Copyright (C) 1998-1999, 2001, 2003, 2005-2007, 2009-2020 Free Software
 # Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
index 60040d13756e20f7d4c4ccc8ae321e8081011743..db2038f63dc0bfe6ef1a689b480c52bb0fa42333 100644 (file)
@@ -1,6 +1,6 @@
-# serial 15
+# serial 17
 
-# Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -47,8 +47,8 @@ AC_DEFUN([gl_FUNC_STAT],
               linux-* | linux) gl_cv_func_stat_file_slash="guessing yes" ;;
                                # Guess yes on glibc systems.
               *-gnu* | gnu*)   gl_cv_func_stat_file_slash="guessing yes" ;;
-                               # If we don't know, assume the worst.
-              *)               gl_cv_func_stat_file_slash="guessing no" ;;
+                               # If we don't know, obey --enable-cross-guesses.
+              *)               gl_cv_func_stat_file_slash="$gl_cross_guess_normal" ;;
             esac
            ])
          rm -f conftest.tmp conftest.lnk])
@@ -70,5 +70,16 @@ AC_DEFUN([gl_FUNC_STAT],
 # Prerequisites of lib/stat.c and lib/stat-w32.c.
 AC_DEFUN([gl_PREREQ_STAT], [
   AC_REQUIRE([gl_HEADER_SYS_STAT_H])
+  AC_REQUIRE([gl_PREREQ_STAT_W32])
   :
 ])
+
+# Prerequisites of lib/stat-w32.c.
+AC_DEFUN([gl_PREREQ_STAT_W32], [
+  AC_REQUIRE([AC_CANONICAL_HOST])
+  case "$host_os" in
+    mingw*)
+      AC_CHECK_HEADERS([sdkddkver.h])
+      ;;
+  esac
+])
index 23e7f75f1f46086a91c596eebb337530a6afe9b6..b5ab8abed0288b1197fe9f49dcf6aeb6b503ddf3 100644 (file)
@@ -6,8 +6,10 @@
 # This implementation will be obsolete once we can assume Autoconf 2.70
 # or later is installed everywhere a Gnulib program might be developed.
 
+m4_version_prereq([2.70], [], [
 
-# Copyright (C) 2001-2019 Free Software Foundation, Inc.
+
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -70,7 +72,7 @@ _AS_ECHO_LOG([checking for _AC_LANG compiler version])
 set X $ac_compile
 ac_compiler=$[2]
 for ac_option in --version -v -V -qversion -version; do
-  m4_ifdef([_AC_DO_LIMIT],[_AC_DO_LIMIT],[_AC_DO])([$ac_compiler $ac_option >&AS_MESSAGE_LOG_FD])
+  _AC_DO_LIMIT([$ac_compiler $ac_option >&AS_MESSAGE_LOG_FD])
 done
 
 m4_expand_once([_AC_COMPILER_EXEEXT])[]dnl
@@ -135,7 +137,7 @@ _AS_ECHO_LOG([checking for _AC_LANG compiler version])
 set X $ac_compile
 ac_compiler=$[2]
 for ac_option in --version -v -V -qversion; do
-  m4_ifdef([_AC_DO_LIMIT],[_AC_DO_LIMIT],[_AC_DO])([$ac_compiler $ac_option >&AS_MESSAGE_LOG_FD])
+  _AC_DO_LIMIT([$ac_compiler $ac_option >&AS_MESSAGE_LOG_FD])
 done
 
 m4_expand_once([_AC_COMPILER_EXEEXT])[]dnl
@@ -822,3 +824,6 @@ dnl Tru64   N/A (no support)
 dnl with extended modes being tried first.
 [[-std=gnu++11 -std=c++11 -std=gnu++0x -std=c++0x -qlanglvl=extended0x -AA]], [$1], [$2])[]dnl
 ])# _AC_PROG_CXX_CXX11
+
+
+])# m4_version_prereq
index 601fd21f03b9c78d313b1357dfbb314d7346c073..dcf778e6456fac1057baee53fb78e9984a754c15 100644 (file)
@@ -1,6 +1,6 @@
 # Check for stdalign.h that conforms to C11.
 
-dnl Copyright 2011-2019 Free Software Foundation, Inc.
+dnl Copyright 2011-2020 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.
index f43fe20b8f630cb500730132c2e0183541332f4b..69747f3ed5ac7a6456bbe62b1196c40c10d117d9 100644 (file)
@@ -1,5 +1,5 @@
 # stdarg.m4 serial 7
-dnl Copyright (C) 2006, 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2006, 2008-2020 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.
index acb852244f786cbb98fcd4001ceb1a07c75c5851..6bb087ebdf4aff9315ef2332385863a5c9b9e27b 100644 (file)
@@ -1,22 +1,36 @@
 # Check for stdbool.h that conforms to C99.
 
-dnl Copyright (C) 2002-2006, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2006, 2009-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
 
-#serial 7
+#serial 8
 
 # Prepare for substituting <stdbool.h> if it is not supported.
 
 AC_DEFUN([AM_STDBOOL_H],
 [
   AC_REQUIRE([AC_CHECK_HEADER_STDBOOL])
+  AC_REQUIRE([AC_CANONICAL_HOST])
 
-  # Define two additional variables used in the Makefile substitution.
-
+  dnl On some platforms, <stdbool.h> does not exist or does not conform to C99.
+  dnl On Solaris 10 with CC=cc CXX=CC, <stdbool.h> exists but is not usable
+  dnl in C++ mode (and no <cstdbool> exists). In this case, we use our
+  dnl replacement, also in C mode (for binary compatibility between C and C++).
   if test "$ac_cv_header_stdbool_h" = yes; then
-    STDBOOL_H=''
+    case "$host_os" in
+      solaris*)
+        if test -z "$GCC"; then
+          STDBOOL_H='stdbool.h'
+        else
+          STDBOOL_H=''
+        fi
+        ;;
+      *)
+        STDBOOL_H=''
+        ;;
+    esac
   else
     STDBOOL_H='stdbool.h'
   fi
index 979e3cf7e794d3def8d6886b1d8ee74b327abe1b..d8bc8ff64e4cc6a2d730fa3099e9cc424d4b2201 100644 (file)
@@ -1,6 +1,6 @@
 dnl A placeholder for <stddef.h>, for platforms that have issues.
-# stddef_h.m4 serial 6
-dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# stddef_h.m4 serial 7
+dnl Copyright (C) 2009-2020 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.
@@ -19,7 +19,7 @@ AC_DEFUN([gl_STDDEF_H],
        [AC_LANG_PROGRAM(
           [[#include <stddef.h>
             unsigned int s = sizeof (max_align_t);
-            #if defined __GNUC__ || defined __IBM__ALIGNOF__
+            #if defined __GNUC__ || defined __clang__ || defined __IBM__ALIGNOF__
             int check1[2 * (__alignof__ (double) <= __alignof__ (max_align_t)) - 1];
             int check2[2 * (__alignof__ (long double) <= __alignof__ (max_align_t)) - 1];
             #endif
index 11d8e8e52d45b20872c3cd476bfee70f24bd1b0c..d5f5d6133a9b0bf6b49a54936ddd6bc65eca30e1 100644 (file)
@@ -1,5 +1,5 @@
-# stdint.m4 serial 53
-dnl Copyright (C) 2001-2019 Free Software Foundation, Inc.
+# stdint.m4 serial 56
+dnl Copyright (C) 2001-2020 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.
@@ -17,21 +17,12 @@ AC_DEFUN_ONCE([gl_STDINT_H],
   AC_REQUIRE([gl_LIMITS_H])
   AC_REQUIRE([gt_TYPE_WINT_T])
 
-  dnl Check for long long int and unsigned long long int.
-  AC_REQUIRE([AC_TYPE_LONG_LONG_INT])
-  if test $ac_cv_type_long_long_int = yes; then
-    HAVE_LONG_LONG_INT=1
-  else
-    HAVE_LONG_LONG_INT=0
-  fi
-  AC_SUBST([HAVE_LONG_LONG_INT])
-  AC_REQUIRE([AC_TYPE_UNSIGNED_LONG_LONG_INT])
-  if test $ac_cv_type_unsigned_long_long_int = yes; then
-    HAVE_UNSIGNED_LONG_LONG_INT=1
-  else
-    HAVE_UNSIGNED_LONG_LONG_INT=0
-  fi
-  AC_SUBST([HAVE_UNSIGNED_LONG_LONG_INT])
+  dnl For backward compatibility. Some packages may still be testing these
+  dnl macros.
+  AC_DEFINE([HAVE_LONG_LONG_INT], [1],
+    [Define to 1 if the system has the type 'long long int'.])
+  AC_DEFINE([HAVE_UNSIGNED_LONG_LONG_INT], [1],
+    [Define to 1 if the system has the type 'unsigned long long int'.])
 
   dnl Check for <wchar.h>, in the same way as gl_WCHAR_H does.
   AC_CHECK_HEADERS_ONCE([wchar.h])
@@ -161,7 +152,7 @@ uintmax_t j = UINTMAX_MAX;
 /* Check that SIZE_MAX has the correct type, if possible.  */
 #if 201112 <= __STDC_VERSION__
 int k = _Generic (SIZE_MAX, size_t: 0);
-#elif (2 <= __GNUC__ || defined __IBM__TYPEOF__ \
+#elif (2 <= __GNUC__ || 4 <= __clang_major__ || defined __IBM__TYPEOF__ \
        || (0x5110 <= __SUNPRO_C && !__STDC__))
 extern size_t k;
 extern __typeof__ (SIZE_MAX) k;
@@ -311,9 +302,10 @@ static const char *macro_values[] =
       HAVE_C99_STDINT_H=1
       dnl Now see whether the system <stdint.h> works without
       dnl __STDC_CONSTANT_MACROS/__STDC_LIMIT_MACROS defined.
-      AC_CACHE_CHECK([whether stdint.h predates C++11],
-        [gl_cv_header_stdint_predates_cxx11_h],
-        [gl_cv_header_stdint_predates_cxx11_h=yes
+      dnl If not, there would be problems when stdint.h is included from C++.
+      AC_CACHE_CHECK([whether stdint.h works without ISO C predefines],
+        [gl_cv_header_stdint_without_STDC_macros],
+        [gl_cv_header_stdint_without_STDC_macros=no
          AC_COMPILE_IFELSE([
            AC_LANG_PROGRAM([[
 #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 /* work if build isn't clean */
@@ -324,13 +316,14 @@ gl_STDINT_INCLUDES
 intmax_t im = INTMAX_MAX;
 int32_t i32 = INT32_C (0x7fffffff);
            ]])],
-           [gl_cv_header_stdint_predates_cxx11_h=no])])
+           [gl_cv_header_stdint_without_STDC_macros=yes])
+        ])
 
-      if test "$gl_cv_header_stdint_predates_cxx11_h" = yes; then
+      if test $gl_cv_header_stdint_without_STDC_macros = no; then
         AC_DEFINE([__STDC_CONSTANT_MACROS], [1],
-                  [Define to 1 if the system <stdint.h> predates C++11.])
+          [Define to 1 if the system <stdint.h> predates C++11.])
         AC_DEFINE([__STDC_LIMIT_MACROS], [1],
-                  [Define to 1 if the system <stdint.h> predates C++11.])
+          [Define to 1 if the system <stdint.h> predates C++11.])
       fi
       AC_CACHE_CHECK([whether stdint.h has UINTMAX_WIDTH etc.],
         [gl_cv_header_stdint_width],
index 6c9c104044aacb7d1ecdf463f78f2039317b75b0..6003a31b3822a14d6c717b43da15e70a26dd9679 100644 (file)
@@ -1,5 +1,5 @@
-# stdio_h.m4 serial 49
-dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
+# stdio_h.m4 serial 51
+dnl Copyright (C) 2007-2020 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.
@@ -107,6 +107,13 @@ AC_DEFUN([gl_STDIO_H],
   gl_WARN_ON_USE_PREPARE([[#include <stdio.h>
     ]], [dprintf fpurge fseeko ftello getdelim getline gets pclose popen
     renameat snprintf tmpfile vdprintf vsnprintf])
+
+  AC_REQUIRE([AC_C_RESTRICT])
+
+  AC_CHECK_DECLS_ONCE([fcloseall])
+  if test $ac_cv_have_decl_fcloseall = no; then
+    HAVE_DECL_FCLOSEALL=0
+  fi
 ])
 
 AC_DEFUN([gl_STDIO_MODULE_INDICATOR],
@@ -174,6 +181,7 @@ AC_DEFUN([gl_STDIO_H_DEFAULTS],
   GNULIB_VSNPRINTF=0;            AC_SUBST([GNULIB_VSNPRINTF])
   GNULIB_VSPRINTF_POSIX=0;       AC_SUBST([GNULIB_VSPRINTF_POSIX])
   dnl Assume proper GNU behavior unless another module says otherwise.
+  HAVE_DECL_FCLOSEALL=1;         AC_SUBST([HAVE_DECL_FCLOSEALL])
   HAVE_DECL_FPURGE=1;            AC_SUBST([HAVE_DECL_FPURGE])
   HAVE_DECL_FSEEKO=1;            AC_SUBST([HAVE_DECL_FSEEKO])
   HAVE_DECL_FTELLO=1;            AC_SUBST([HAVE_DECL_FTELLO])
index 6121602aea371f3eb6dbf35727c706a32defa865..8b3cfe3183d78b42a4dfbd4e9aeeadca3f523ac7 100644 (file)
@@ -1,5 +1,5 @@
-# stdlib_h.m4 serial 48
-dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
+# stdlib_h.m4 serial 52
+dnl Copyright (C) 2007-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -22,11 +22,28 @@ AC_DEFUN([gl_STDLIB_H],
 #if HAVE_RANDOM_H
 # include <random.h>
 #endif
-    ]], [_Exit atoll canonicalize_file_name getloadavg getsubopt grantpt
+    ]], [_Exit aligned_alloc atoll canonicalize_file_name
+    getloadavg getsubopt grantpt
     initstate initstate_r mbtowc mkdtemp mkostemp mkostemps mkstemp mkstemps
-    posix_openpt ptsname ptsname_r qsort_r random random_r reallocarray
-    realpath rpmatch secure_getenv setenv setstate setstate_r srandom
-    srandom_r strtod strtold strtoll strtoull unlockpt unsetenv])
+    posix_memalign posix_openpt ptsname ptsname_r qsort_r
+    random random_r reallocarray realpath rpmatch secure_getenv setenv
+    setstate setstate_r srandom srandom_r
+    strtod strtold strtoll strtoull unlockpt unsetenv])
+
+  AC_REQUIRE([AC_C_RESTRICT])
+
+  AC_CHECK_DECLS_ONCE([ecvt])
+  if test $ac_cv_have_decl_ecvt = no; then
+    HAVE_DECL_ECVT=0
+  fi
+  AC_CHECK_DECLS_ONCE([fcvt])
+  if test $ac_cv_have_decl_fcvt = no; then
+    HAVE_DECL_FCVT=0
+  fi
+  AC_CHECK_DECLS_ONCE([gcvt])
+  if test $ac_cv_have_decl_gcvt = no; then
+    HAVE_DECL_GCVT=0
+  fi
 ])
 
 AC_DEFUN([gl_STDLIB_MODULE_INDICATOR],
@@ -41,6 +58,7 @@ AC_DEFUN([gl_STDLIB_MODULE_INDICATOR],
 AC_DEFUN([gl_STDLIB_H_DEFAULTS],
 [
   GNULIB__EXIT=0;         AC_SUBST([GNULIB__EXIT])
+  GNULIB_ALIGNED_ALLOC=0; AC_SUBST([GNULIB_ALIGNED_ALLOC])
   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])
@@ -54,6 +72,7 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS],
   GNULIB_MKOSTEMPS=0;     AC_SUBST([GNULIB_MKOSTEMPS])
   GNULIB_MKSTEMP=0;       AC_SUBST([GNULIB_MKSTEMP])
   GNULIB_MKSTEMPS=0;      AC_SUBST([GNULIB_MKSTEMPS])
+  GNULIB_POSIX_MEMALIGN=0;AC_SUBST([GNULIB_POSIX_MEMALIGN])
   GNULIB_POSIX_OPENPT=0;  AC_SUBST([GNULIB_POSIX_OPENPT])
   GNULIB_PTSNAME=0;       AC_SUBST([GNULIB_PTSNAME])
   GNULIB_PTSNAME_R=0;     AC_SUBST([GNULIB_PTSNAME_R])
@@ -77,8 +96,12 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS],
   GNULIB_WCTOMB=0;        AC_SUBST([GNULIB_WCTOMB])
   dnl Assume proper GNU behavior unless another module says otherwise.
   HAVE__EXIT=1;              AC_SUBST([HAVE__EXIT])
+  HAVE_ALIGNED_ALLOC=1;      AC_SUBST([HAVE_ALIGNED_ALLOC])
   HAVE_ATOLL=1;              AC_SUBST([HAVE_ATOLL])
   HAVE_CANONICALIZE_FILE_NAME=1;  AC_SUBST([HAVE_CANONICALIZE_FILE_NAME])
+  HAVE_DECL_ECVT=1;          AC_SUBST([HAVE_DECL_ECVT])
+  HAVE_DECL_FCVT=1;          AC_SUBST([HAVE_DECL_FCVT])
+  HAVE_DECL_GCVT=1;          AC_SUBST([HAVE_DECL_GCVT])
   HAVE_DECL_GETLOADAVG=1;    AC_SUBST([HAVE_DECL_GETLOADAVG])
   HAVE_GETSUBOPT=1;          AC_SUBST([HAVE_GETSUBOPT])
   HAVE_GRANTPT=1;            AC_SUBST([HAVE_GRANTPT])
@@ -90,6 +113,7 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS],
   HAVE_MKOSTEMPS=1;          AC_SUBST([HAVE_MKOSTEMPS])
   HAVE_MKSTEMP=1;            AC_SUBST([HAVE_MKSTEMP])
   HAVE_MKSTEMPS=1;           AC_SUBST([HAVE_MKSTEMPS])
+  HAVE_POSIX_MEMALIGN=1;     AC_SUBST([HAVE_POSIX_MEMALIGN])
   HAVE_POSIX_OPENPT=1;       AC_SUBST([HAVE_POSIX_OPENPT])
   HAVE_PTSNAME=1;            AC_SUBST([HAVE_PTSNAME])
   HAVE_PTSNAME_R=1;          AC_SUBST([HAVE_PTSNAME_R])
@@ -113,12 +137,14 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS],
   HAVE_SYS_LOADAVG_H=0;      AC_SUBST([HAVE_SYS_LOADAVG_H])
   HAVE_UNLOCKPT=1;           AC_SUBST([HAVE_UNLOCKPT])
   HAVE_DECL_UNSETENV=1;      AC_SUBST([HAVE_DECL_UNSETENV])
+  REPLACE_ALIGNED_ALLOC=0;   AC_SUBST([REPLACE_ALIGNED_ALLOC])
   REPLACE_CALLOC=0;          AC_SUBST([REPLACE_CALLOC])
   REPLACE_CANONICALIZE_FILE_NAME=0;  AC_SUBST([REPLACE_CANONICALIZE_FILE_NAME])
   REPLACE_INITSTATE=0;       AC_SUBST([REPLACE_INITSTATE])
   REPLACE_MALLOC=0;          AC_SUBST([REPLACE_MALLOC])
   REPLACE_MBTOWC=0;          AC_SUBST([REPLACE_MBTOWC])
   REPLACE_MKSTEMP=0;         AC_SUBST([REPLACE_MKSTEMP])
+  REPLACE_POSIX_MEMALIGN=0;  AC_SUBST([REPLACE_POSIX_MEMALIGN])
   REPLACE_PTSNAME=0;         AC_SUBST([REPLACE_PTSNAME])
   REPLACE_PTSNAME_R=0;       AC_SUBST([REPLACE_PTSNAME_R])
   REPLACE_PUTENV=0;          AC_SUBST([REPLACE_PUTENV])
index 82d74202dfeb4bca65bde3259cd70e0a5a0895e1..63402094229d7b80e0e8fd7454aeba162e399d88 100644 (file)
@@ -1,6 +1,6 @@
-# strdup.m4 serial 13
+# strdup.m4 serial 14
 
-dnl Copyright (C) 2002-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2020 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,7 +9,6 @@ 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_CHECK_FUNCS_ONCE([strdup])
   AC_CHECK_DECLS_ONCE([strdup])
   if test $ac_cv_have_decl_strdup = no; then
     HAVE_DECL_STRDUP=0
@@ -20,11 +19,8 @@ AC_DEFUN([gl_FUNC_STRDUP_POSIX],
 [
   AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   AC_REQUIRE([gl_CHECK_MALLOC_POSIX])
-  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
-    fi
+  if test $gl_cv_func_malloc_posix != yes; then
+    REPLACE_STRDUP=1
   fi
   AC_CHECK_DECLS_ONCE([strdup])
   if test $ac_cv_have_decl_strdup = no; then
index 2c90f3163ca94a09251cf6f6ec46399143200dae..fd84ce87116d3c0c405367b833d7b642cbf8fad4 100644 (file)
@@ -1,5 +1,5 @@
-# strerror.m4 serial 20
-dnl Copyright (C) 2002, 2007-2019 Free Software Foundation, Inc.
+# strerror.m4 serial 21
+dnl Copyright (C) 2002, 2007-2020 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.
@@ -28,8 +28,8 @@ AC_DEFUN([gl_FUNC_STRERROR],
            *-gnu* | gnu*) gl_cv_func_working_strerror="guessing yes" ;;
                           # Guess yes on musl systems.
            *-musl*)       gl_cv_func_working_strerror="guessing yes" ;;
-                          # If we don't know, assume the worst.
-           *)             gl_cv_func_working_strerror="guessing no" ;;
+                          # If we don't know, obey --enable-cross-guesses.
+           *)             gl_cv_func_working_strerror="$gl_cross_guess_normal" ;;
          esac
         ])
     ])
@@ -86,8 +86,8 @@ AC_DEFUN([gl_FUNC_STRERROR_0],
          *-musl*)       gl_cv_func_strerror_0_works="guessing yes" ;;
                         # Guess yes on native Windows.
          mingw*)        gl_cv_func_strerror_0_works="guessing yes" ;;
-                        # If we don't know, assume the worst.
-         *)             gl_cv_func_strerror_0_works="guessing no" ;;
+                        # If we don't know, obey --enable-cross-guesses.
+         *)             gl_cv_func_strerror_0_works="$gl_cross_guess_normal" ;;
        esac
       ])
   ])
index dafc46d2490990eb62b8dcf3fa1408678e16a26d..d431f2360bae1100a17099d45d6dc2178376a4c3 100644 (file)
@@ -1,5 +1,5 @@
-# strerror_r.m4 serial 19
-dnl Copyright (C) 2002, 2007-2019 Free Software Foundation, Inc.
+# strerror_r.m4 serial 20
+dnl Copyright (C) 2002, 2007-2020 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.
@@ -163,7 +163,7 @@ changequote([,])dnl
                [gl_cv_func_strerror_r_works=no],
                [dnl Guess no on all platforms that have __xpg_strerror_r,
                 dnl at least until fixed glibc and cygwin are more common.
-                gl_cv_func_strerror_r_works="guessing no"
+                gl_cv_func_strerror_r_works="$gl_cross_guess_normal"
                ])
             ])
         fi
index 0c0e3a71af3c3963dda8169e13e9cb2d5fad584a..29796b8629f98998dd5e7fd1a32ffa77bbc8d2f1 100644 (file)
@@ -1,11 +1,11 @@
 # Configure a GNU-like replacement for <string.h>.
 
-# Copyright (C) 2007-2019 Free Software Foundation, Inc.
+# Copyright (C) 2007-2020 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 22
+# serial 27
 
 # Written by Paul Eggert.
 
@@ -18,7 +18,6 @@ AC_DEFUN([gl_HEADER_STRING_H],
 
 AC_DEFUN([gl_HEADER_STRING_H_BODY],
 [
-  AC_REQUIRE([AC_C_RESTRICT])
   AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
   gl_NEXT_HEADERS([string.h])
 
@@ -29,7 +28,9 @@ AC_DEFUN([gl_HEADER_STRING_H_BODY],
     ]],
     [ffsl ffsll memmem mempcpy memrchr rawmemchr stpcpy stpncpy strchrnul
      strdup strncat strndup strnlen strpbrk strsep strcasestr strtok_r
-     strerror_r strsignal strverscmp])
+     strerror_r strerrorname_np sigabbrev_np sigdescr_np strsignal strverscmp])
+
+  AC_REQUIRE([AC_C_RESTRICT])
 ])
 
 AC_DEFUN([gl_STRING_MODULE_INDICATOR],
@@ -43,50 +44,52 @@ AC_DEFUN([gl_STRING_MODULE_INDICATOR],
 
 AC_DEFUN([gl_HEADER_STRING_H_DEFAULTS],
 [
-  GNULIB_EXPLICIT_BZERO=0; AC_SUBST([GNULIB_EXPLICIT_BZERO])
-  GNULIB_FFSL=0;        AC_SUBST([GNULIB_FFSL])
-  GNULIB_FFSLL=0;       AC_SUBST([GNULIB_FFSLL])
-  GNULIB_MEMCHR=0;      AC_SUBST([GNULIB_MEMCHR])
-  GNULIB_MEMMEM=0;      AC_SUBST([GNULIB_MEMMEM])
-  GNULIB_MEMPCPY=0;     AC_SUBST([GNULIB_MEMPCPY])
-  GNULIB_MEMRCHR=0;     AC_SUBST([GNULIB_MEMRCHR])
-  GNULIB_RAWMEMCHR=0;   AC_SUBST([GNULIB_RAWMEMCHR])
-  GNULIB_STPCPY=0;      AC_SUBST([GNULIB_STPCPY])
-  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])
-  GNULIB_STRSEP=0;      AC_SUBST([GNULIB_STRSEP])
-  GNULIB_STRSTR=0;      AC_SUBST([GNULIB_STRSTR])
-  GNULIB_STRCASESTR=0;  AC_SUBST([GNULIB_STRCASESTR])
-  GNULIB_STRTOK_R=0;    AC_SUBST([GNULIB_STRTOK_R])
-  GNULIB_MBSLEN=0;      AC_SUBST([GNULIB_MBSLEN])
-  GNULIB_MBSNLEN=0;     AC_SUBST([GNULIB_MBSNLEN])
-  GNULIB_MBSCHR=0;      AC_SUBST([GNULIB_MBSCHR])
-  GNULIB_MBSRCHR=0;     AC_SUBST([GNULIB_MBSRCHR])
-  GNULIB_MBSSTR=0;      AC_SUBST([GNULIB_MBSSTR])
-  GNULIB_MBSCASECMP=0;  AC_SUBST([GNULIB_MBSCASECMP])
-  GNULIB_MBSNCASECMP=0; AC_SUBST([GNULIB_MBSNCASECMP])
-  GNULIB_MBSPCASECMP=0; AC_SUBST([GNULIB_MBSPCASECMP])
-  GNULIB_MBSCASESTR=0;  AC_SUBST([GNULIB_MBSCASESTR])
-  GNULIB_MBSCSPN=0;     AC_SUBST([GNULIB_MBSCSPN])
-  GNULIB_MBSPBRK=0;     AC_SUBST([GNULIB_MBSPBRK])
-  GNULIB_MBSSPN=0;      AC_SUBST([GNULIB_MBSSPN])
-  GNULIB_MBSSEP=0;      AC_SUBST([GNULIB_MBSSEP])
-  GNULIB_MBSTOK_R=0;    AC_SUBST([GNULIB_MBSTOK_R])
-  GNULIB_STRERROR=0;    AC_SUBST([GNULIB_STRERROR])
-  GNULIB_STRERROR_R=0;  AC_SUBST([GNULIB_STRERROR_R])
-  GNULIB_STRSIGNAL=0;   AC_SUBST([GNULIB_STRSIGNAL])
-  GNULIB_STRVERSCMP=0;  AC_SUBST([GNULIB_STRVERSCMP])
-  HAVE_MBSLEN=0;        AC_SUBST([HAVE_MBSLEN])
+  GNULIB_EXPLICIT_BZERO=0;   AC_SUBST([GNULIB_EXPLICIT_BZERO])
+  GNULIB_FFSL=0;             AC_SUBST([GNULIB_FFSL])
+  GNULIB_FFSLL=0;            AC_SUBST([GNULIB_FFSLL])
+  GNULIB_MEMCHR=0;           AC_SUBST([GNULIB_MEMCHR])
+  GNULIB_MEMMEM=0;           AC_SUBST([GNULIB_MEMMEM])
+  GNULIB_MEMPCPY=0;          AC_SUBST([GNULIB_MEMPCPY])
+  GNULIB_MEMRCHR=0;          AC_SUBST([GNULIB_MEMRCHR])
+  GNULIB_RAWMEMCHR=0;        AC_SUBST([GNULIB_RAWMEMCHR])
+  GNULIB_STPCPY=0;           AC_SUBST([GNULIB_STPCPY])
+  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])
+  GNULIB_STRSEP=0;           AC_SUBST([GNULIB_STRSEP])
+  GNULIB_STRSTR=0;           AC_SUBST([GNULIB_STRSTR])
+  GNULIB_STRCASESTR=0;       AC_SUBST([GNULIB_STRCASESTR])
+  GNULIB_STRTOK_R=0;         AC_SUBST([GNULIB_STRTOK_R])
+  GNULIB_MBSLEN=0;           AC_SUBST([GNULIB_MBSLEN])
+  GNULIB_MBSNLEN=0;          AC_SUBST([GNULIB_MBSNLEN])
+  GNULIB_MBSCHR=0;           AC_SUBST([GNULIB_MBSCHR])
+  GNULIB_MBSRCHR=0;          AC_SUBST([GNULIB_MBSRCHR])
+  GNULIB_MBSSTR=0;           AC_SUBST([GNULIB_MBSSTR])
+  GNULIB_MBSCASECMP=0;       AC_SUBST([GNULIB_MBSCASECMP])
+  GNULIB_MBSNCASECMP=0;      AC_SUBST([GNULIB_MBSNCASECMP])
+  GNULIB_MBSPCASECMP=0;      AC_SUBST([GNULIB_MBSPCASECMP])
+  GNULIB_MBSCASESTR=0;       AC_SUBST([GNULIB_MBSCASESTR])
+  GNULIB_MBSCSPN=0;          AC_SUBST([GNULIB_MBSCSPN])
+  GNULIB_MBSPBRK=0;          AC_SUBST([GNULIB_MBSPBRK])
+  GNULIB_MBSSPN=0;           AC_SUBST([GNULIB_MBSSPN])
+  GNULIB_MBSSEP=0;           AC_SUBST([GNULIB_MBSSEP])
+  GNULIB_MBSTOK_R=0;         AC_SUBST([GNULIB_MBSTOK_R])
+  GNULIB_STRERROR=0;         AC_SUBST([GNULIB_STRERROR])
+  GNULIB_STRERROR_R=0;       AC_SUBST([GNULIB_STRERROR_R])
+  GNULIB_STRERRORNAME_NP=0;  AC_SUBST([GNULIB_STRERRORNAME_NP])
+  GNULIB_SIGABBREV_NP=0;     AC_SUBST([GNULIB_SIGABBREV_NP])
+  GNULIB_SIGDESCR_NP=0;      AC_SUBST([GNULIB_SIGDESCR_NP])
+  GNULIB_STRSIGNAL=0;        AC_SUBST([GNULIB_STRSIGNAL])
+  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_EXPLICIT_BZERO=1;        AC_SUBST([HAVE_EXPLICIT_BZERO])
   HAVE_FFSL=1;                  AC_SUBST([HAVE_FFSL])
   HAVE_FFSLL=1;                 AC_SUBST([HAVE_FFSLL])
-  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])
@@ -102,6 +105,9 @@ AC_DEFUN([gl_HEADER_STRING_H_DEFAULTS],
   HAVE_STRCASESTR=1;            AC_SUBST([HAVE_STRCASESTR])
   HAVE_DECL_STRTOK_R=1;         AC_SUBST([HAVE_DECL_STRTOK_R])
   HAVE_DECL_STRERROR_R=1;       AC_SUBST([HAVE_DECL_STRERROR_R])
+  HAVE_STRERRORNAME_NP=1;       AC_SUBST([HAVE_STRERRORNAME_NP])
+  HAVE_SIGABBREV_NP=1;          AC_SUBST([HAVE_SIGABBREV_NP])
+  HAVE_SIGDESCR_NP=1;           AC_SUBST([HAVE_SIGDESCR_NP])
   HAVE_DECL_STRSIGNAL=1;        AC_SUBST([HAVE_DECL_STRSIGNAL])
   HAVE_STRVERSCMP=1;            AC_SUBST([HAVE_STRVERSCMP])
   REPLACE_MEMCHR=0;             AC_SUBST([REPLACE_MEMCHR])
@@ -117,6 +123,7 @@ AC_DEFUN([gl_HEADER_STRING_H_DEFAULTS],
   REPLACE_STRTOK_R=0;           AC_SUBST([REPLACE_STRTOK_R])
   REPLACE_STRERROR=0;           AC_SUBST([REPLACE_STRERROR])
   REPLACE_STRERROR_R=0;         AC_SUBST([REPLACE_STRERROR_R])
+  REPLACE_STRERRORNAME_NP=0;    AC_SUBST([REPLACE_STRERRORNAME_NP])
   REPLACE_STRSIGNAL=0;          AC_SUBST([REPLACE_STRSIGNAL])
   UNDEFINE_STRTOK_R=0;          AC_SUBST([UNDEFINE_STRTOK_R])
 ])
index 325af5d13d6abb718e944c7f1c66336ec30ccfb2..006a31ad25f9a527bb5ffd5346be0aa7d4b0ed96 100644 (file)
@@ -1,5 +1,5 @@
 # strndup.m4 serial 22
-dnl Copyright (C) 2002-2003, 2005-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2003, 2005-2020 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.
index c283c3ece9f0bd01c01ca1a1ad0205ed90a0f5d1..71b8e1baffe349f20950508a0d076756318432e1 100644 (file)
@@ -1,5 +1,5 @@
 # strnlen.m4 serial 13
-dnl Copyright (C) 2002-2003, 2005-2007, 2009-2019 Free Software Foundation,
+dnl Copyright (C) 2002-2003, 2005-2007, 2009-2020 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,
index 3ba7e223b582334041f01f9faa77c6bc1d13aa2d..edcde3b5582db400b7ecbc217c1571bd894189fb 100644 (file)
@@ -1,5 +1,5 @@
-# strtoll.m4 serial 7
-dnl Copyright (C) 2002, 2004, 2006, 2008-2019 Free Software Foundation, Inc.
+# strtoll.m4 serial 8
+dnl Copyright (C) 2002, 2004, 2006, 2008-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -7,14 +7,9 @@ dnl with or without modifications, as long as this notice is preserved.
 AC_DEFUN([gl_FUNC_STRTOLL],
 [
   AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
-  dnl We don't need (and can't compile) the replacement strtoll
-  dnl unless the type 'long long int' exists.
-  AC_REQUIRE([AC_TYPE_LONG_LONG_INT])
-  if test "$ac_cv_type_long_long_int" = yes; then
-    AC_CHECK_FUNCS([strtoll])
-    if test $ac_cv_func_strtoll = no; then
-      HAVE_STRTOLL=0
-    fi
+  AC_CHECK_FUNCS([strtoll])
+  if test $ac_cv_func_strtoll = no; then
+    HAVE_STRTOLL=0
   fi
 ])
 
index 532139c5f2600b0c19c962f9d2879c51ed5277bd..b40210d4debb0bb2ccc572ee6c716727988e50ba 100644 (file)
@@ -1,5 +1,5 @@
-# strtoull.m4 serial 7
-dnl Copyright (C) 2002, 2004, 2006, 2008-2019 Free Software Foundation, Inc.
+# strtoull.m4 serial 8
+dnl Copyright (C) 2002, 2004, 2006, 2008-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -7,14 +7,9 @@ dnl with or without modifications, as long as this notice is preserved.
 AC_DEFUN([gl_FUNC_STRTOULL],
 [
   AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
-  dnl We don't need (and can't compile) the replacement strtoull
-  dnl unless the type 'unsigned long long int' exists.
-  AC_REQUIRE([AC_TYPE_UNSIGNED_LONG_LONG_INT])
-  if test "$ac_cv_type_unsigned_long_long_int" = yes; then
-    AC_CHECK_FUNCS([strtoull])
-    if test $ac_cv_func_strtoull = no; then
-      HAVE_STRTOULL=0
-    fi
+  AC_CHECK_FUNCS([strtoull])
+  if test $ac_cv_func_strtoull = no; then
+    HAVE_STRTOULL=0
   fi
 ])
 
index 508e94dd41016cb8b743e8a62068bf836d07de13..9cfdf93943cb0417493596ccbec7929f6cb7e21b 100644 (file)
@@ -1,7 +1,7 @@
-# serial 8
+# serial 9
 # See if we need to provide symlink replacement.
 
-dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2009-2020 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.
@@ -40,8 +40,8 @@ AC_DEFUN([gl_FUNC_SYMLINK],
             linux-* | linux) gl_cv_func_symlink_works="guessing yes" ;;
                              # Guess yes on glibc systems.
             *-gnu* | gnu*)   gl_cv_func_symlink_works="guessing yes" ;;
-                             # If we don't know, assume the worst.
-            *)               gl_cv_func_symlink_works="guessing no" ;;
+                             # If we don't know, obey --enable-cross-guesses.
+            *)               gl_cv_func_symlink_works="$gl_cross_guess_normal" ;;
           esac
          ])
       rm -f conftest.f conftest.link conftest.lnk2])
index 54004219e2a380c2a98828edeb9f96f7de2b7ca1..98d24e8a39d363ab987332a8e4325f8e01e6538d 100644 (file)
@@ -1,5 +1,5 @@
-# sys_ioctl_h.m4 serial 10
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+# sys_ioctl_h.m4 serial 12
+dnl Copyright (C) 2008-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -22,8 +22,8 @@ AC_DEFUN([gl_SYS_IOCTL_H],
       [dnl We cannot use AC_CHECK_DECL because it produces its own messages.
        AC_COMPILE_IFELSE(
          [AC_LANG_PROGRAM(
-            [AC_INCLUDES_DEFAULT([#include <sys/ioctl.h>])],
-            [(void) ioctl;])],
+            [[#include <sys/ioctl.h>]],
+            [[(void) ioctl;]])],
          [gl_cv_decl_ioctl_in_sys_ioctl_h=yes],
          [gl_cv_decl_ioctl_in_sys_ioctl_h=no])
       ])
diff --git a/m4/sys_random_h.m4 b/m4/sys_random_h.m4
new file mode 100644 (file)
index 0000000..8c5d537
--- /dev/null
@@ -0,0 +1,53 @@
+# sys_random_h.m4 serial 5
+dnl Copyright (C) 2020 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_HEADER_SYS_RANDOM],
+[
+  AC_REQUIRE([gl_SYS_RANDOM_H_DEFAULTS])
+  dnl <sys/random.h> is always overridden, because of GNULIB_POSIXCHECK.
+  gl_CHECK_NEXT_HEADERS([sys/random.h])
+  if test $ac_cv_header_sys_random_h = yes; then
+    HAVE_SYS_RANDOM_H=1
+  else
+    HAVE_SYS_RANDOM_H=0
+  fi
+  AC_SUBST([HAVE_SYS_RANDOM_H])
+
+  m4_ifdef([gl_UNISTD_H_DEFAULTS], [AC_REQUIRE([gl_UNISTD_H_DEFAULTS])])
+  if test $ac_cv_header_sys_random_h = yes; then
+    UNISTD_H_HAVE_SYS_RANDOM_H=1
+  fi
+
+  dnl Check for declarations of anything we want to poison if the
+  dnl corresponding gnulib module is not in use.
+  gl_WARN_ON_USE_PREPARE([[
+#if HAVE_SYS_RANDOM_H
+/* Additional includes are needed before <sys/random.h> on uClibc
+   and Mac OS X.  */
+# include <sys/types.h>
+# include <stdlib.h>
+# include <sys/random.h>
+#endif
+    ]],
+    [getrandom])
+])
+
+AC_DEFUN([gl_SYS_RANDOM_MODULE_INDICATOR],
+[
+  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+  AC_REQUIRE([gl_SYS_RANDOM_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_FOR_TESTS([$1])
+])
+
+AC_DEFUN([gl_SYS_RANDOM_H_DEFAULTS],
+[
+  GNULIB_GETRANDOM=0;     AC_SUBST([GNULIB_GETRANDOM])
+  dnl Assume proper GNU behavior unless another module says otherwise.
+  HAVE_GETRANDOM=1;       AC_SUBST([HAVE_GETRANDOM])
+  REPLACE_GETRANDOM=0;    AC_SUBST([REPLACE_GETRANDOM])
+])
index 918212a9465c95e65e13d819126e86dbb4b71dca..fa19bb65f6e8c1d1d0048fa7b0520060c431c8c0 100644 (file)
@@ -1,5 +1,5 @@
 # sys_select_h.m4 serial 20
-dnl Copyright (C) 2006-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2006-2020 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.
index d0a902061aa0ce45a4fd3201dd2995d7f01dec05..bf902f081080a905ed3b540ffe29447452c2100f 100644 (file)
@@ -1,5 +1,5 @@
-# sys_socket_h.m4 serial 24
-dnl Copyright (C) 2005-2019 Free Software Foundation, Inc.
+# sys_socket_h.m4 serial 25
+dnl Copyright (C) 2005-2020 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.
@@ -95,6 +95,8 @@ AC_DEFUN([gl_HEADER_SYS_SOCKET],
 #include <sys/socket.h>
     ]], [socket connect accept bind getpeername getsockname getsockopt
     listen recv send recvfrom sendto setsockopt shutdown accept4])
+
+  AC_REQUIRE([AC_C_RESTRICT])
 ])
 
 AC_DEFUN([gl_PREREQ_SYS_H_SOCKET],
index 361ac3fc14154c8b4928a001f22cecbd3c761b9e..929144d155b10337345a6e05544a831db8d6802d 100644 (file)
@@ -1,5 +1,5 @@
-# sys_stat_h.m4 serial 31   -*- Autoconf -*-
-dnl Copyright (C) 2006-2019 Free Software Foundation, Inc.
+# sys_stat_h.m4 serial 34   -*- Autoconf -*-
+dnl Copyright (C) 2006-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -46,9 +46,11 @@ AC_DEFUN([gl_HEADER_SYS_STAT_H],
   dnl Check for declarations of anything we want to poison if the
   dnl corresponding gnulib module is not in use.
   gl_WARN_ON_USE_PREPARE([[#include <sys/stat.h>
-    ]], [fchmodat fstat fstatat futimens lchmod lstat mkdirat mkfifo mkfifoat
-    mknod mknodat stat utimensat])
-]) # gl_HEADER_SYS_STAT_H
+    ]], [fchmodat fstat fstatat futimens getumask lchmod lstat
+    mkdirat mkfifo mkfifoat mknod mknodat stat utimensat])
+
+  AC_REQUIRE([AC_C_RESTRICT])
+])
 
 AC_DEFUN([gl_SYS_STAT_MODULE_INDICATOR],
 [
@@ -66,6 +68,7 @@ AC_DEFUN([gl_SYS_STAT_H_DEFAULTS],
   GNULIB_FSTAT=0;       AC_SUBST([GNULIB_FSTAT])
   GNULIB_FSTATAT=0;     AC_SUBST([GNULIB_FSTATAT])
   GNULIB_FUTIMENS=0;    AC_SUBST([GNULIB_FUTIMENS])
+  GNULIB_GETUMASK=0;    AC_SUBST([GNULIB_GETUMASK])
   GNULIB_LCHMOD=0;      AC_SUBST([GNULIB_LCHMOD])
   GNULIB_LSTAT=0;       AC_SUBST([GNULIB_LSTAT])
   GNULIB_MKDIRAT=0;     AC_SUBST([GNULIB_MKDIRAT])
@@ -80,6 +83,7 @@ AC_DEFUN([gl_SYS_STAT_H_DEFAULTS],
   HAVE_FCHMODAT=1;      AC_SUBST([HAVE_FCHMODAT])
   HAVE_FSTATAT=1;       AC_SUBST([HAVE_FSTATAT])
   HAVE_FUTIMENS=1;      AC_SUBST([HAVE_FUTIMENS])
+  HAVE_GETUMASK=1;      AC_SUBST([HAVE_GETUMASK])
   HAVE_LCHMOD=1;        AC_SUBST([HAVE_LCHMOD])
   HAVE_LSTAT=1;         AC_SUBST([HAVE_LSTAT])
   HAVE_MKDIRAT=1;       AC_SUBST([HAVE_MKDIRAT])
@@ -88,6 +92,7 @@ AC_DEFUN([gl_SYS_STAT_H_DEFAULTS],
   HAVE_MKNOD=1;         AC_SUBST([HAVE_MKNOD])
   HAVE_MKNODAT=1;       AC_SUBST([HAVE_MKNODAT])
   HAVE_UTIMENSAT=1;     AC_SUBST([HAVE_UTIMENSAT])
+  REPLACE_FCHMODAT=0;   AC_SUBST([REPLACE_FCHMODAT])
   REPLACE_FSTAT=0;      AC_SUBST([REPLACE_FSTAT])
   REPLACE_FSTATAT=0;    AC_SUBST([REPLACE_FSTATAT])
   REPLACE_FUTIMENS=0;   AC_SUBST([REPLACE_FUTIMENS])
index 3d9233aa998dabc321fbb62a4be52ed733d28b5d..8fc8599242dcb86d1f4d6d21a07e1db72af3ca67 100644 (file)
@@ -1,7 +1,7 @@
 # Configure a replacement for <sys/time.h>.
 # serial 9
 
-# Copyright (C) 2007, 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2009-2020 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.
index be0655900d5ff409394fd847a114893a11bfbbbc..419b85703d55b2ba2c924511271b207bc18624ae 100644 (file)
@@ -1,5 +1,5 @@
-# sys_types_h.m4 serial 9
-dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
+# sys_types_h.m4 serial 10
+dnl Copyright (C) 2011-2020 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,7 +37,7 @@ AC_DEFUN([gl_SYS_TYPES_H_DEFAULTS],
 # This works around a buggy version in autoconf <= 2.69.
 # See <https://lists.gnu.org/r/autoconf/2016-08/msg00014.html>
 
-m4_version_prereq([2.70], [], [
+m4_version_prereq([2.69c], [], [
 
 # This is taken from the following Autoconf patch:
 # https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=e17a30e987d7ee695fb4294a82d987ec3dc9b974
index 8b8ba6d6782ab5d9d7397442474186e030f08905..a255dea98f3af305b0d786ee0679abad25e3e1b0 100644 (file)
@@ -1,5 +1,5 @@
 # sys_uio_h.m4 serial 1
-dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2020 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.
index 664a6322f3827d952edf045a46924d1f0bd275d9..da439f07b58e756a27836e25709d790641440343 100644 (file)
@@ -1,6 +1,6 @@
 #serial 5
 
-# Copyright (C) 2006-2007, 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2006-2007, 2009-2020 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.
index decf6a8e3172b1554534c0054ff34cc15d6a0bd5..d1e62b82ae20486fc49207f0ed53620d4511863a 100644 (file)
@@ -1,5 +1,5 @@
 # thread.m4 serial 3
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2020 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.
index 045d9dad29c8446acaddf81deb5362bd4fac9a0b..e03c34f53b8f597e183660d8b3415ac2073534b3 100644 (file)
@@ -1,5 +1,5 @@
-# threadlib.m4 serial 20
-dnl Copyright (C) 2005-2019 Free Software Foundation, Inc.
+# threadlib.m4 serial 29
+dnl Copyright (C) 2005-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -8,6 +8,344 @@ dnl From Bruno Haible.
 
 AC_PREREQ([2.60])
 
+dnl The general structure of the multithreading modules in gnulib is that we
+dnl have three set of modules:
+dnl
+dnl   * POSIX API:
+dnl     pthread, which combines
+dnl       pthread-h
+dnl       pthread-thread
+dnl       pthread-once
+dnl       pthread-mutex
+dnl       pthread-rwlock
+dnl       pthread-cond
+dnl       pthread-tss
+dnl       pthread-spin
+dnl     sched_yield
+dnl
+dnl   * ISO C API:
+dnl     threads, which combines
+dnl       threads-h
+dnl       thrd
+dnl       mtx
+dnl       cnd
+dnl       tss
+dnl
+dnl   * Gnulib API, with an implementation that can be chosen at configure
+dnl     time through the option --enable-threads=...
+dnl       thread
+dnl       lock
+dnl       cond
+dnl       tls
+dnl       yield
+dnl
+dnl They are independent, except for the fact that
+dnl   - the implementation of the ISO C API may use the POSIX (or some other
+dnl     platform dependent) API,
+dnl   - the implementation of the Gnulib API may use the POSIX or ISO C or
+dnl     some other platform dependent API, depending on the --enable-threads
+dnl     option.
+dnl
+dnl This file contains macros for all of these APIs!
+
+dnl ============================================================================
+dnl Macros for all thread APIs
+
+AC_DEFUN([gl_ANYTHREADLIB_EARLY],
+[
+  AC_REQUIRE([AC_CANONICAL_HOST])
+  if test -z "$gl_anythreadlib_early_done"; then
+    case "$host_os" in
+      osf*)
+        # On OSF/1, the compiler needs the flag -D_REENTRANT so that it
+        # groks <pthread.h>. cc also understands the flag -pthread, but
+        # we don't use it because 1. gcc-2.95 doesn't understand -pthread,
+        # 2. putting a flag into CPPFLAGS that has an effect on the linker
+        # causes the AC_LINK_IFELSE test below to succeed unexpectedly,
+        # leading to wrong values of LIBTHREAD and LTLIBTHREAD.
+        CPPFLAGS="$CPPFLAGS -D_REENTRANT"
+        ;;
+    esac
+    # Some systems optimize for single-threaded programs by default, and
+    # need special flags to disable these optimizations. For example, the
+    # definition of 'errno' in <errno.h>.
+    case "$host_os" in
+      aix* | freebsd*) CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" ;;
+      solaris*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" ;;
+    esac
+    gl_anythreadlib_early_done=done
+  fi
+])
+
+dnl Checks whether the compiler and linker support weak declarations of symbols.
+
+AC_DEFUN([gl_WEAK_SYMBOLS],
+[
+  AC_REQUIRE([AC_CANONICAL_HOST])
+  AC_CACHE_CHECK([whether imported symbols can be declared weak],
+    [gl_cv_have_weak],
+    [gl_cv_have_weak=no
+     dnl First, test whether the compiler accepts it syntactically.
+     AC_LINK_IFELSE(
+       [AC_LANG_PROGRAM(
+          [[extern void xyzzy ();
+#pragma weak xyzzy]],
+          [[xyzzy();]])],
+       [gl_cv_have_weak=maybe])
+     if test $gl_cv_have_weak = maybe; then
+       dnl Second, test whether it actually works. On Cygwin 1.7.2, with
+       dnl gcc 4.3, symbols declared weak always evaluate to the address 0.
+       AC_RUN_IFELSE(
+         [AC_LANG_SOURCE([[
+#include <stdio.h>
+#pragma weak fputs
+int main ()
+{
+  return (fputs == NULL);
+}]])],
+         [gl_cv_have_weak=yes],
+         [gl_cv_have_weak=no],
+         [dnl When cross-compiling, assume that only ELF platforms support
+          dnl weak symbols.
+          AC_EGREP_CPP([Extensible Linking Format],
+            [#ifdef __ELF__
+             Extensible Linking Format
+             #endif
+            ],
+            [gl_cv_have_weak="guessing yes"],
+            [gl_cv_have_weak="guessing no"])
+         ])
+     fi
+     dnl But when linking statically, weak symbols don't work.
+     case " $LDFLAGS " in
+       *" -static "*) gl_cv_have_weak=no ;;
+     esac
+     dnl Test for a bug in FreeBSD 11: A link error occurs when using a weak
+     dnl symbol and linking against a shared library that has a dependency on
+     dnl the shared library that defines the symbol.
+     case "$gl_cv_have_weak" in
+       *yes)
+         case "$host_os" in
+           freebsd* | dragonfly*)
+             : > conftest1.c
+             $CC $CPPFLAGS $CFLAGS $LDFLAGS -fPIC -shared -o libempty.so conftest1.c -lpthread >&AS_MESSAGE_LOG_FD 2>&1
+             cat <<EOF > conftest2.c
+#include <pthread.h>
+#pragma weak pthread_mutexattr_gettype
+int main ()
+{
+  return (pthread_mutexattr_gettype != NULL);
+}
+EOF
+             $CC $CPPFLAGS $CFLAGS $LDFLAGS -o conftest conftest2.c libempty.so >&AS_MESSAGE_LOG_FD 2>&1 \
+               || gl_cv_have_weak=no
+             rm -f conftest1.c libempty.so conftest2.c conftest
+             ;;
+         esac
+         ;;
+     esac
+    ])
+  case "$gl_cv_have_weak" in
+    *yes)
+      AC_DEFINE([HAVE_WEAK_SYMBOLS], [1],
+        [Define to 1 if the compiler and linker support weak declarations of symbols.])
+      ;;
+  esac
+])
+
+dnl ============================================================================
+dnl Macros for the POSIX API
+
+dnl gl_PTHREADLIB
+dnl -------------
+dnl Tests for the libraries needs for using the POSIX threads API.
+dnl Sets the variable LIBPTHREAD to the linker options for use in a Makefile.
+dnl Sets the variable LIBPMULTITHREAD, for programs that really need
+dnl multithread functionality. The difference between LIBPTHREAD and
+dnl LIBPMULTITHREAD is that on platforms supporting weak symbols, typically
+dnl LIBPTHREAD is empty whereas LIBPMULTITHREAD is not.
+dnl Sets the variable LIB_SCHED_YIELD to the linker options needed to use the
+dnl sched_yield() function.
+dnl Adds to CPPFLAGS the flag -D_REENTRANT or -D_THREAD_SAFE if needed for
+dnl multithread-safe programs.
+dnl Defines the C macro HAVE_PTHREAD_API if (at least parts of) the POSIX
+dnl threads API is available.
+
+dnl The guts of gl_PTHREADLIB. Needs to be expanded only once.
+
+AC_DEFUN([gl_PTHREADLIB_BODY],
+[
+  AC_REQUIRE([gl_ANYTHREADLIB_EARLY])
+  if test -z "$gl_pthreadlib_body_done"; then
+    gl_pthread_api=no
+    LIBPTHREAD=
+    LIBPMULTITHREAD=
+    # On OSF/1, the compiler needs the flag -pthread or -D_REENTRANT so that
+    # it groks <pthread.h>. It's added above, in gl_ANYTHREADLIB_EARLY.
+    AC_CHECK_HEADER([pthread.h],
+      [gl_have_pthread_h=yes], [gl_have_pthread_h=no])
+    if test "$gl_have_pthread_h" = yes; then
+      # Other possible tests:
+      #   -lpthreads (FSU threads, PCthreads)
+      #   -lgthreads
+      # Test whether both pthread_mutex_lock and pthread_mutexattr_init exist
+      # in libc. IRIX 6.5 has the first one in both libc and libpthread, but
+      # the second one only in libpthread, and lock.c needs it.
+      #
+      # If -pthread works, prefer it to -lpthread, since Ubuntu 14.04
+      # needs -pthread for some reason.  See:
+      # https://lists.gnu.org/r/bug-gnulib/2014-09/msg00023.html
+      save_LIBS=$LIBS
+      for gl_pthread in '' '-pthread'; do
+        LIBS="$LIBS $gl_pthread"
+        AC_LINK_IFELSE(
+          [AC_LANG_PROGRAM(
+             [[#include <pthread.h>
+               pthread_mutex_t m;
+               pthread_mutexattr_t ma;
+             ]],
+             [[pthread_mutex_lock (&m);
+               pthread_mutexattr_init (&ma);]])],
+          [gl_pthread_api=yes
+           LIBPTHREAD=$gl_pthread
+           LIBPMULTITHREAD=$gl_pthread])
+        LIBS=$save_LIBS
+        test $gl_pthread_api = yes && break
+      done
+
+      # Test for libpthread by looking for pthread_kill. (Not pthread_self,
+      # since it is defined as a macro on OSF/1.)
+      if test $gl_pthread_api = yes && test -z "$LIBPTHREAD"; then
+        # The program links fine without libpthread. But it may actually
+        # need to link with libpthread in order to create multiple threads.
+        AC_CHECK_LIB([pthread], [pthread_kill],
+          [LIBPMULTITHREAD=-lpthread
+           # On Solaris and HP-UX, most pthread functions exist also in libc.
+           # Therefore pthread_in_use() needs to actually try to create a
+           # thread: pthread_create from libc will fail, whereas
+           # pthread_create will actually create a thread.
+           # On Solaris 10 or newer, this test is no longer needed, because
+           # libc contains the fully functional pthread functions.
+           case "$host_os" in
+             solaris | solaris2.[1-9] | solaris2.[1-9].* | hpux*)
+               AC_DEFINE([PTHREAD_IN_USE_DETECTION_HARD], [1],
+                 [Define if the pthread_in_use() detection is hard.])
+           esac
+          ])
+      elif test $gl_pthread_api != yes; then
+        # Some library is needed. Try libpthread and libc_r.
+        AC_CHECK_LIB([pthread], [pthread_kill],
+          [gl_pthread_api=yes
+           LIBPTHREAD=-lpthread
+           LIBPMULTITHREAD=-lpthread])
+        if test $gl_pthread_api != yes; then
+          # For FreeBSD 4.
+          AC_CHECK_LIB([c_r], [pthread_kill],
+            [gl_pthread_api=yes
+             LIBPTHREAD=-lc_r
+             LIBPMULTITHREAD=-lc_r])
+        fi
+      fi
+    fi
+    AC_MSG_CHECKING([whether POSIX threads API is available])
+    AC_MSG_RESULT([$gl_pthread_api])
+    AC_SUBST([LIBPTHREAD])
+    AC_SUBST([LIBPMULTITHREAD])
+    if test $gl_pthread_api = yes; then
+      AC_DEFINE([HAVE_PTHREAD_API], [1],
+        [Define if you have the <pthread.h> header and the POSIX threads API.])
+    fi
+
+    dnl On some systems, sched_yield is in librt, rather than in libpthread.
+    AC_LINK_IFELSE(
+      [AC_LANG_PROGRAM(
+         [[#include <sched.h>]],
+         [[sched_yield ();]])],
+      [LIB_SCHED_YIELD=
+      ],
+      [dnl Solaris 7...10 has sched_yield in librt, not in libpthread or libc.
+       AC_CHECK_LIB([rt], [sched_yield], [LIB_SCHED_YIELD=-lrt],
+         [dnl Solaris 2.5.1, 2.6 has sched_yield in libposix4, not librt.
+          AC_CHECK_LIB([posix4], [sched_yield], [LIB_SCHED_YIELD=-lposix4])])
+      ])
+    AC_SUBST([LIB_SCHED_YIELD])
+
+    gl_pthreadlib_body_done=done
+  fi
+])
+
+AC_DEFUN([gl_PTHREADLIB],
+[
+  AC_REQUIRE([gl_ANYTHREADLIB_EARLY])
+  gl_PTHREADLIB_BODY
+])
+
+dnl ============================================================================
+dnl Macros for the ISO C API
+
+dnl gl_STDTHREADLIB
+dnl ---------------
+dnl Tests for the libraries needs for using the ISO C threads API.
+dnl Sets the variable LIBSTDTHREAD to the linker options for use in a Makefile.
+dnl Adds to CPPFLAGS the flag -D_REENTRANT or -D_THREAD_SAFE if needed for
+dnl multithread-safe programs.
+dnl Defines the C macro HAVE_THREADS_H if (at least parts of) the ISO C threads
+dnl API is available.
+
+dnl The guts of gl_STDTHREADLIB. Needs to be expanded only once.
+
+AC_DEFUN([gl_STDTHREADLIB_BODY],
+[
+  AC_REQUIRE([gl_ANYTHREADLIB_EARLY])
+  AC_REQUIRE([AC_CANONICAL_HOST])
+  if test -z "$gl_stdthreadlib_body_done"; then
+    AC_CHECK_HEADERS_ONCE([threads.h])
+
+    case "$host_os" in
+      mingw*)
+        LIBSTDTHREAD=
+        ;;
+      *)
+        gl_PTHREADLIB_BODY
+        if test $ac_cv_header_threads_h = yes; then
+          dnl glibc >= 2.29 has thrd_create in libpthread.
+          dnl FreeBSD >= 10 has thrd_create in libstdthreads; this library depends
+          dnl on libpthread (for the symbol 'pthread_mutexattr_gettype').
+          dnl AIX >= 7.1 and Solaris >= 11.4 have thrd_create in libc.
+          AC_CHECK_FUNCS([thrd_create])
+          if test $ac_cv_func_thrd_create = yes; then
+            LIBSTDTHREAD=
+          else
+            AC_CHECK_LIB([stdthreads], [thrd_create], [
+              LIBSTDTHREAD='-lstdthreads -lpthread'
+            ], [
+              dnl Guess that thrd_create is in libpthread.
+              LIBSTDTHREAD="$LIBPMULTITHREAD"
+            ])
+          fi
+        else
+          dnl Libraries needed by thrd.c, mtx.c, cnd.c, tss.c.
+          LIBSTDTHREAD="$LIBPMULTITHREAD $LIB_SCHED_YIELD"
+        fi
+        ;;
+    esac
+    AC_SUBST([LIBSTDTHREAD])
+
+    AC_MSG_CHECKING([whether ISO C threads API is available])
+    AC_MSG_RESULT([$ac_cv_header_threads_h])
+    gl_stdthreadlib_body_done=done
+  fi
+])
+
+AC_DEFUN([gl_STDTHREADLIB],
+[
+  AC_REQUIRE([gl_ANYTHREADLIB_EARLY])
+  gl_STDTHREADLIB_BODY
+])
+
+dnl ============================================================================
+dnl Macros for the Gnulib API
+
 dnl gl_THREADLIB
 dnl ------------
 dnl Tests for a multithreading library to be used.
@@ -16,7 +354,13 @@ dnl (it must be placed before the invocation of gl_THREADLIB_EARLY!), then the
 dnl default is 'no', otherwise it is system dependent. In both cases, the user
 dnl can change the choice through the options --enable-threads=choice or
 dnl --disable-threads.
-dnl Defines at most one of the macros USE_POSIX_THREADS, USE_WINDOWS_THREADS.
+dnl Defines at most one of the macros USE_ISOC_THREADS, USE_POSIX_THREADS,
+dnl USE_ISOC_AND_POSIX_THREADS, USE_WINDOWS_THREADS.
+dnl The choice --enable-threads=isoc+posix is available only on platforms that
+dnl have both the ISO C and the POSIX threads APIs. It has the effect of using
+dnl the ISO C API for most things and the POSIX API only for creating and
+dnl controlling threads (because there is no equivalent to pthread_atfork in
+dnl the ISO C API).
 dnl Sets the variables LIBTHREAD and LTLIBTHREAD to the linker options for use
 dnl in a Makefile (LIBTHREAD for use without libtool, LTLIBTHREAD for use with
 dnl libtool).
@@ -54,8 +398,8 @@ AC_DEFUN([gl_THREADLIB_EARLY_BODY],
     [m4_divert_text([DEFAULTS], [gl_use_threads_default=])])
   m4_divert_text([DEFAULTS], [gl_use_winpthreads_default=])
   AC_ARG_ENABLE([threads],
-AC_HELP_STRING([--enable-threads={posix|windows}], [specify multithreading API])m4_ifdef([gl_THREADLIB_DEFAULT_NO], [], [
-AC_HELP_STRING([--disable-threads], [build without multithread safety])]),
+AS_HELP_STRING([--enable-threads={isoc|posix|isoc+posix|windows}], [specify multithreading API])m4_ifdef([gl_THREADLIB_DEFAULT_NO], [], [
+AS_HELP_STRING([--disable-threads], [build without multithread safety])]),
     [gl_use_threads=$enableval],
     [if test -n "$gl_use_threads_default"; then
        gl_use_threads="$gl_use_threads_default"
@@ -88,26 +432,12 @@ changequote(,)dnl
 changequote([,])dnl
      fi
     ])
-  if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then
-    # For using <pthread.h>:
-    case "$host_os" in
-      osf*)
-        # On OSF/1, the compiler needs the flag -D_REENTRANT so that it
-        # groks <pthread.h>. cc also understands the flag -pthread, but
-        # we don't use it because 1. gcc-2.95 doesn't understand -pthread,
-        # 2. putting a flag into CPPFLAGS that has an effect on the linker
-        # causes the AC_LINK_IFELSE test below to succeed unexpectedly,
-        # leading to wrong values of LIBTHREAD and LTLIBTHREAD.
-        CPPFLAGS="$CPPFLAGS -D_REENTRANT"
-        ;;
-    esac
-    # Some systems optimize for single-threaded programs by default, and
-    # need special flags to disable these optimizations. For example, the
-    # definition of 'errno' in <errno.h>.
-    case "$host_os" in
-      aix* | freebsd*) CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" ;;
-      solaris*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" ;;
-    esac
+  if test "$gl_use_threads" = yes \
+     || test "$gl_use_threads" = isoc \
+     || test "$gl_use_threads" = posix \
+     || test "$gl_use_threads" = isoc+posix; then
+    # For using <threads.h> or <pthread.h>:
+    gl_ANYTHREADLIB_EARLY
   fi
 ])
 
@@ -123,45 +453,7 @@ AC_DEFUN([gl_THREADLIB_BODY],
   LTLIBMULTITHREAD=
   if test "$gl_use_threads" != no; then
     dnl Check whether the compiler and linker support weak declarations.
-    AC_CACHE_CHECK([whether imported symbols can be declared weak],
-      [gl_cv_have_weak],
-      [gl_cv_have_weak=no
-       dnl First, test whether the compiler accepts it syntactically.
-       AC_LINK_IFELSE(
-         [AC_LANG_PROGRAM(
-            [[extern void xyzzy ();
-#pragma weak xyzzy]],
-            [[xyzzy();]])],
-         [gl_cv_have_weak=maybe])
-       if test $gl_cv_have_weak = maybe; then
-         dnl Second, test whether it actually works. On Cygwin 1.7.2, with
-         dnl gcc 4.3, symbols declared weak always evaluate to the address 0.
-         AC_RUN_IFELSE(
-           [AC_LANG_SOURCE([[
-#include <stdio.h>
-#pragma weak fputs
-int main ()
-{
-  return (fputs == NULL);
-}]])],
-           [gl_cv_have_weak=yes],
-           [gl_cv_have_weak=no],
-           [dnl When cross-compiling, assume that only ELF platforms support
-            dnl weak symbols.
-            AC_EGREP_CPP([Extensible Linking Format],
-              [#ifdef __ELF__
-               Extensible Linking Format
-               #endif
-              ],
-              [gl_cv_have_weak="guessing yes"],
-              [gl_cv_have_weak="guessing no"])
-           ])
-       fi
-       dnl But when linking statically, weak symbols don't work.
-       case " $LDFLAGS " in
-         *" -static "*) gl_cv_have_weak=no ;;
-       esac
-      ])
+    gl_WEAK_SYMBOLS
     if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then
       dnl If we use weak symbols to implement pthread_in_use / pth_in_use /
       dnl thread_in_use, we also need to test whether the ISO C 11 thrd_create
@@ -169,75 +461,23 @@ int main ()
       AC_CHECK_HEADERS_ONCE([threads.h])
       :
     fi
-    if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then
-      # On OSF/1, the compiler needs the flag -pthread or -D_REENTRANT so that
-      # it groks <pthread.h>. It's added above, in gl_THREADLIB_EARLY_BODY.
-      AC_CHECK_HEADER([pthread.h],
-        [gl_have_pthread_h=yes], [gl_have_pthread_h=no])
-      if test "$gl_have_pthread_h" = yes; then
-        # Other possible tests:
-        #   -lpthreads (FSU threads, PCthreads)
-        #   -lgthreads
-        gl_have_pthread=
-        # Test whether both pthread_mutex_lock and pthread_mutexattr_init exist
-        # in libc. IRIX 6.5 has the first one in both libc and libpthread, but
-        # the second one only in libpthread, and lock.c needs it.
-        #
-        # If -pthread works, prefer it to -lpthread, since Ubuntu 14.04
-        # needs -pthread for some reason.  See:
-        # https://lists.gnu.org/r/bug-gnulib/2014-09/msg00023.html
-        save_LIBS=$LIBS
-        for gl_pthread in '' '-pthread'; do
-          LIBS="$LIBS $gl_pthread"
-          AC_LINK_IFELSE(
-            [AC_LANG_PROGRAM(
-               [[#include <pthread.h>
-                 pthread_mutex_t m;
-                 pthread_mutexattr_t ma;
-               ]],
-               [[pthread_mutex_lock (&m);
-                 pthread_mutexattr_init (&ma);]])],
-            [gl_have_pthread=yes
-             LIBTHREAD=$gl_pthread LTLIBTHREAD=$gl_pthread
-             LIBMULTITHREAD=$gl_pthread LTLIBMULTITHREAD=$gl_pthread])
-          LIBS=$save_LIBS
-          test -n "$gl_have_pthread" && break
-        done
-
-        # Test for libpthread by looking for pthread_kill. (Not pthread_self,
-        # since it is defined as a macro on OSF/1.)
-        if test -n "$gl_have_pthread" && test -z "$LIBTHREAD"; then
-          # The program links fine without libpthread. But it may actually
-          # need to link with libpthread in order to create multiple threads.
-          AC_CHECK_LIB([pthread], [pthread_kill],
-            [LIBMULTITHREAD=-lpthread LTLIBMULTITHREAD=-lpthread
-             # On Solaris and HP-UX, most pthread functions exist also in libc.
-             # Therefore pthread_in_use() needs to actually try to create a
-             # thread: pthread_create from libc will fail, whereas
-             # pthread_create will actually create a thread.
-             # On Solaris 10 or newer, this test is no longer needed, because
-             # libc contains the fully functional pthread functions.
-             case "$host_os" in
-               solaris | solaris2.[1-9] | solaris2.[1-9].* | hpux*)
-                 AC_DEFINE([PTHREAD_IN_USE_DETECTION_HARD], [1],
-                   [Define if the pthread_in_use() detection is hard.])
-             esac
-            ])
-        elif test -z "$gl_have_pthread"; then
-          # Some library is needed. Try libpthread and libc_r.
-          AC_CHECK_LIB([pthread], [pthread_kill],
-            [gl_have_pthread=yes
-             LIBTHREAD=-lpthread LTLIBTHREAD=-lpthread
-             LIBMULTITHREAD=-lpthread LTLIBMULTITHREAD=-lpthread])
-          if test -z "$gl_have_pthread"; then
-            # For FreeBSD 4.
-            AC_CHECK_LIB([c_r], [pthread_kill],
-              [gl_have_pthread=yes
-               LIBTHREAD=-lc_r LTLIBTHREAD=-lc_r
-               LIBMULTITHREAD=-lc_r LTLIBMULTITHREAD=-lc_r])
-          fi
-        fi
-        if test -n "$gl_have_pthread"; then
+    if test "$gl_use_threads" = isoc || test "$gl_use_threads" = isoc+posix; then
+      AC_CHECK_HEADERS_ONCE([threads.h])
+      gl_have_isoc_threads="$ac_cv_header_threads_h"
+    fi
+    if test "$gl_use_threads" = yes \
+       || test "$gl_use_threads" = posix \
+       || test "$gl_use_threads" = isoc+posix; then
+      gl_PTHREADLIB_BODY
+      LIBTHREAD=$LIBPTHREAD LTLIBTHREAD=$LIBPTHREAD
+      LIBMULTITHREAD=$LIBPMULTITHREAD LTLIBMULTITHREAD=$LIBPMULTITHREAD
+      if test $gl_pthread_api = yes; then
+        if test "$gl_use_threads" = isoc+posix && test "$gl_have_isoc_threads" = yes; then
+          gl_threads_api='isoc+posix'
+          AC_DEFINE([USE_ISOC_AND_POSIX_THREADS], [1],
+            [Define if the combination of the ISO C and POSIX multithreading APIs can be used.])
+          LIBTHREAD= LTLIBTHREAD=
+        else
           gl_threads_api=posix
           AC_DEFINE([USE_POSIX_THREADS], [1],
             [Define if the POSIX multithreading library can be used.])
@@ -245,14 +485,34 @@ int main ()
             if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then
               AC_DEFINE([USE_POSIX_THREADS_WEAK], [1],
                 [Define if references to the POSIX multithreading library should be made weak.])
-              LIBTHREAD=
-              LTLIBTHREAD=
+              LIBTHREAD= LTLIBTHREAD=
+            else
+              case "$host_os" in
+                freebsd* | dragonfly*)
+                  if test "x$LIBTHREAD" != "x$LIBMULTITHREAD"; then
+                    dnl If weak symbols can't tell whether pthread_create(), pthread_key_create()
+                    dnl etc. will succeed, we need a runtime test.
+                    AC_DEFINE([PTHREAD_IN_USE_DETECTION_HARD], [1],
+                      [Define if the pthread_in_use() detection is hard.])
+                  fi
+                  ;;
+              esac
             fi
           fi
         fi
       fi
     fi
-    if test -z "$gl_have_pthread"; then
+    if test $gl_threads_api = none; then
+      if test "$gl_use_threads" = isoc && test "$gl_have_isoc_threads" = yes; then
+        gl_STDTHREADLIB_BODY
+        LIBTHREAD=$LIBSTDTHREAD LTLIBTHREAD=$LIBSTDTHREAD
+        LIBMULTITHREAD=$LIBSTDTHREAD LTLIBMULTITHREAD=$LIBSTDTHREAD
+        gl_threads_api=isoc
+        AC_DEFINE([USE_ISOC_THREADS], [1],
+          [Define if the ISO C multithreading library can be used.])
+      fi
+    fi
+    if test $gl_threads_api = none; then
       case "$gl_use_threads" in
         yes | windows | win32) # The 'win32' is for backward compatibility.
           if { case "$host_os" in
@@ -306,6 +566,9 @@ AC_DEFUN([gl_AVOID_WINPTHREAD], [
 ])
 
 
+dnl ============================================================================
+
+
 dnl Survey of platforms:
 dnl
 dnl Platform           Available  Compiler    Supports   test-lock
index f08f29b35ea5fe7c56d37bb70e8a51bfbe7494bb..a15c09dc07b880fbd29cdce84e35a40ce780b2ee 100644 (file)
@@ -1,8 +1,8 @@
 # Configure a more-standard replacement for <time.h>.
 
-# Copyright (C) 2000-2001, 2003-2007, 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2000-2001, 2003-2007, 2009-2020 Free Software Foundation, Inc.
 
-# serial 11
+# serial 12
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -19,10 +19,12 @@ AC_DEFUN([gl_HEADER_TIME_H],
 
 AC_DEFUN([gl_HEADER_TIME_H_BODY],
 [
-  AC_REQUIRE([AC_C_RESTRICT])
   AC_REQUIRE([gl_HEADER_TIME_H_DEFAULTS])
+
   gl_NEXT_HEADERS([time.h])
   AC_REQUIRE([gl_CHECK_TYPE_STRUCT_TIMESPEC])
+
+  AC_REQUIRE([AC_C_RESTRICT])
 ])
 
 dnl Check whether 'struct timespec' is declared
@@ -119,7 +121,6 @@ AC_DEFUN([gl_HEADER_TIME_H_DEFAULTS],
   HAVE_NANOSLEEP=1;                      AC_SUBST([HAVE_NANOSLEEP])
   HAVE_STRPTIME=1;                       AC_SUBST([HAVE_STRPTIME])
   HAVE_TIMEGM=1;                         AC_SUBST([HAVE_TIMEGM])
-  HAVE_TZSET=1;                          AC_SUBST([HAVE_TZSET])
   dnl Even GNU libc does not have timezone_t yet.
   HAVE_TIMEZONE_T=0;                     AC_SUBST([HAVE_TIMEZONE_T])
   dnl If another module says to replace or to not replace, do that.
index a3b3905f84e51a3cef2336e8d1b5aec7495f4a49..b26d2c88dde0c07ce6a3798a8d00194d5b5d68b7 100644 (file)
@@ -1,5 +1,5 @@
-# unistd_h.m4 serial 75
-dnl Copyright (C) 2006-2019 Free Software Foundation, Inc.
+# unistd_h.m4 serial 83
+dnl Copyright (C) 2006-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -41,13 +41,21 @@ AC_DEFUN([gl_UNISTD_H],
 #  include <io.h>
 # endif
 #endif
-    ]], [chdir chown dup dup2 dup3 environ euidaccess faccessat fchdir fchownat
-    fdatasync fsync ftruncate getcwd getdomainname getdtablesize getgroups
-    gethostname getlogin getlogin_r getpagesize getpass
+    ]], [access chdir chown copy_file_range dup dup2 dup3 environ euidaccess
+    faccessat fchdir
+    fchownat fdatasync fsync ftruncate getcwd getdomainname getdtablesize
+    getentropy getgroups gethostname getlogin getlogin_r getpagesize getpass
     getusershell setusershell endusershell
     group_member isatty lchown link linkat lseek pipe pipe2 pread pwrite
     readlink readlinkat rmdir sethostname sleep symlink symlinkat
     truncate ttyname_r unlink unlinkat usleep])
+
+  AC_REQUIRE([AC_C_RESTRICT])
+
+  AC_CHECK_DECLS_ONCE([execvpe])
+  if test $ac_cv_have_decl_execvpe = no; then
+    HAVE_DECL_EXECVPE=0
+  fi
 ])
 
 AC_DEFUN([gl_UNISTD_MODULE_INDICATOR],
@@ -61,6 +69,7 @@ AC_DEFUN([gl_UNISTD_MODULE_INDICATOR],
 
 AC_DEFUN([gl_UNISTD_H_DEFAULTS],
 [
+  GNULIB_ACCESS=0;               AC_SUBST([GNULIB_ACCESS])
   GNULIB_CHDIR=0;                AC_SUBST([GNULIB_CHDIR])
   GNULIB_CHOWN=0;                AC_SUBST([GNULIB_CHOWN])
   GNULIB_CLOSE=0;                AC_SUBST([GNULIB_CLOSE])
@@ -79,10 +88,12 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS],
   GNULIB_GETCWD=0;               AC_SUBST([GNULIB_GETCWD])
   GNULIB_GETDOMAINNAME=0;        AC_SUBST([GNULIB_GETDOMAINNAME])
   GNULIB_GETDTABLESIZE=0;        AC_SUBST([GNULIB_GETDTABLESIZE])
+  GNULIB_GETENTROPY=0;           AC_SUBST([GNULIB_GETENTROPY])
   GNULIB_GETGROUPS=0;            AC_SUBST([GNULIB_GETGROUPS])
   GNULIB_GETHOSTNAME=0;          AC_SUBST([GNULIB_GETHOSTNAME])
   GNULIB_GETLOGIN=0;             AC_SUBST([GNULIB_GETLOGIN])
   GNULIB_GETLOGIN_R=0;           AC_SUBST([GNULIB_GETLOGIN_R])
+  GNULIB_GETOPT_POSIX=0;         AC_SUBST([GNULIB_GETOPT_POSIX])
   GNULIB_GETPAGESIZE=0;          AC_SUBST([GNULIB_GETPAGESIZE])
   GNULIB_GETPASS=0;              AC_SUBST([GNULIB_GETPASS])
   GNULIB_GETUSERSHELL=0;         AC_SUBST([GNULIB_GETUSERSHELL])
@@ -115,7 +126,6 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS],
   dnl Assume proper GNU behavior unless another module says otherwise.
   HAVE_CHOWN=1;           AC_SUBST([HAVE_CHOWN])
   HAVE_COPY_FILE_RANGE=1; AC_SUBST([HAVE_COPY_FILE_RANGE])
-  HAVE_DUP2=1;            AC_SUBST([HAVE_DUP2])
   HAVE_DUP3=1;            AC_SUBST([HAVE_DUP3])
   HAVE_EUIDACCESS=1;      AC_SUBST([HAVE_EUIDACCESS])
   HAVE_FACCESSAT=1;       AC_SUBST([HAVE_FACCESSAT])
@@ -125,6 +135,7 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS],
   HAVE_FSYNC=1;           AC_SUBST([HAVE_FSYNC])
   HAVE_FTRUNCATE=1;       AC_SUBST([HAVE_FTRUNCATE])
   HAVE_GETDTABLESIZE=1;   AC_SUBST([HAVE_GETDTABLESIZE])
+  HAVE_GETENTROPY=1;      AC_SUBST([HAVE_GETENTROPY])
   HAVE_GETGROUPS=1;       AC_SUBST([HAVE_GETGROUPS])
   HAVE_GETHOSTNAME=1;     AC_SUBST([HAVE_GETHOSTNAME])
   HAVE_GETLOGIN=1;        AC_SUBST([HAVE_GETLOGIN])
@@ -147,6 +158,7 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS],
   HAVE_UNLINKAT=1;        AC_SUBST([HAVE_UNLINKAT])
   HAVE_USLEEP=1;          AC_SUBST([HAVE_USLEEP])
   HAVE_DECL_ENVIRON=1;    AC_SUBST([HAVE_DECL_ENVIRON])
+  HAVE_DECL_EXECVPE=1;    AC_SUBST([HAVE_DECL_EXECVPE])
   HAVE_DECL_FCHDIR=1;     AC_SUBST([HAVE_DECL_FCHDIR])
   HAVE_DECL_FDATASYNC=1;  AC_SUBST([HAVE_DECL_FDATASYNC])
   HAVE_DECL_GETDOMAINNAME=1; AC_SUBST([HAVE_DECL_GETDOMAINNAME])
@@ -159,6 +171,7 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS],
   HAVE_DECL_TTYNAME_R=1;  AC_SUBST([HAVE_DECL_TTYNAME_R])
   HAVE_OS_H=0;            AC_SUBST([HAVE_OS_H])
   HAVE_SYS_PARAM_H=0;     AC_SUBST([HAVE_SYS_PARAM_H])
+  REPLACE_ACCESS=0;       AC_SUBST([REPLACE_ACCESS])
   REPLACE_CHOWN=0;        AC_SUBST([REPLACE_CHOWN])
   REPLACE_CLOSE=0;        AC_SUBST([REPLACE_CLOSE])
   REPLACE_DUP=0;          AC_SUBST([REPLACE_DUP])
@@ -193,6 +206,7 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS],
   REPLACE_UNLINKAT=0;     AC_SUBST([REPLACE_UNLINKAT])
   REPLACE_USLEEP=0;       AC_SUBST([REPLACE_USLEEP])
   REPLACE_WRITE=0;        AC_SUBST([REPLACE_WRITE])
+  UNISTD_H_HAVE_SYS_RANDOM_H=0; AC_SUBST([UNISTD_H_HAVE_SYS_RANDOM_H])
   UNISTD_H_HAVE_WINSOCK2_H=0; AC_SUBST([UNISTD_H_HAVE_WINSOCK2_H])
   UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=0;
                            AC_SUBST([UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS])
index 69fd1af7f8ae6f1bdc26a739e8f02f1054161f83..69d8ba5cd089293a9dcdc12c6625ff7a39924c9b 100644 (file)
@@ -1,5 +1,5 @@
-# unlink.m4 serial 13
-dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# unlink.m4 serial 15
+dnl Copyright (C) 2009-2020 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.
@@ -26,7 +26,7 @@ AC_DEFUN([gl_FUNC_UNLINK],
            # include <io.h>
            #endif
            #include <errno.h>
-         ]],
+         ]GL_MDA_DEFINES],
          [[int result = 0;
            if (!unlink ("conftest.file/"))
              result |= 1;
@@ -49,8 +49,8 @@ AC_DEFUN([gl_FUNC_UNLINK],
          *-gnu*)          gl_cv_func_unlink_honors_slashes="guessing yes" ;;
                           # Guess no on native Windows.
          mingw*)          gl_cv_func_unlink_honors_slashes="guessing no" ;;
-                          # If we don't know, assume the worst.
-         *)               gl_cv_func_unlink_honors_slashes="guessing no" ;;
+                          # If we don't know, obey --enable-cross-guesses.
+         *)               gl_cv_func_unlink_honors_slashes="$gl_cross_guess_normal" ;;
        esac
       ])
      rm -f conftest.file conftest.lnk])
@@ -98,6 +98,7 @@ AC_DEFUN([gl_FUNC_UNLINK],
                 # include <direct.h>
                 # include <io.h>
                 #endif
+                ]GL_MDA_DEFINES[
                 int main ()
                 {
                   int result = 0;
@@ -110,8 +111,8 @@ AC_DEFUN([gl_FUNC_UNLINK],
               ]])],
              [gl_cv_func_unlink_parent_fails=yes],
              [gl_cv_func_unlink_parent_fails=no],
-             [# If we don't know, assume the worst.
-              gl_cv_func_unlink_parent_fails="guessing no"
+             [# If we don't know, obey --enable-cross-guesses.
+              gl_cv_func_unlink_parent_fails="$gl_cross_guess_normal"
              ])
            unset GL_SUBDIR_FOR_UNLINK
            rm -rf "$tmp"
index 7a9c02733dc9b49f7b1d47515f6aa72d972f98be..271083dadd16a741ad31a561bb83614248526db7 100644 (file)
@@ -1,6 +1,6 @@
 # serial 7
 
-# Copyright (C) 2005-2007, 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2005-2007, 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
index 4a6bff0bada0354a788e3c00480ac72b712ec404..4d4137ad8011ff9b725191d4d18cc45e2a1c140e 100644 (file)
@@ -1,5 +1,5 @@
-# usleep.m4 serial 6
-dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# usleep.m4 serial 7
+dnl Copyright (C) 2009-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -35,8 +35,8 @@ AC_DEFUN([gl_FUNC_USLEEP],
            *-musl*)       gl_cv_func_usleep_works="guessing yes" ;;
                           # Guess no on native Windows.
            mingw*)        gl_cv_func_usleep_works="guessing no" ;;
-                          # If we don't know, assume the worst.
-           *)             gl_cv_func_usleep_works="guessing no" ;;
+                          # If we don't know, obey --enable-cross-guesses.
+           *)             gl_cv_func_usleep_works="$gl_cross_guess_normal" ;;
          esac
         ])])
     case "$gl_cv_func_usleep_works" in
index 4b2c4ffad7d1965ecd06d14d41260e17cc057155..a2455e8567e213cd7add1aa02d958a7f5ef00630 100644 (file)
@@ -1,5 +1,5 @@
 # version-etc.m4 serial 1
-# Copyright (C) 2009-2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
diff --git a/m4/visibility.m4 b/m4/visibility.m4
new file mode 100644 (file)
index 0000000..9f493ba
--- /dev/null
@@ -0,0 +1,77 @@
+# visibility.m4 serial 6
+dnl Copyright (C) 2005, 2008, 2010-2020 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl From Bruno Haible.
+
+dnl Tests whether the compiler supports the command-line option
+dnl -fvisibility=hidden and the function and variable attributes
+dnl __attribute__((__visibility__("hidden"))) and
+dnl __attribute__((__visibility__("default"))).
+dnl Does *not* test for __visibility__("protected") - which has tricky
+dnl semantics (see the 'vismain' test in glibc) and does not exist e.g. on
+dnl Mac OS X.
+dnl Does *not* test for __visibility__("internal") - which has processor
+dnl dependent semantics.
+dnl Does *not* test for #pragma GCC visibility push(hidden) - which is
+dnl "really only recommended for legacy code".
+dnl Set the variable CFLAG_VISIBILITY.
+dnl Defines and sets the variable HAVE_VISIBILITY.
+
+AC_DEFUN([gl_VISIBILITY],
+[
+  AC_REQUIRE([AC_PROG_CC])
+  CFLAG_VISIBILITY=
+  HAVE_VISIBILITY=0
+  if test -n "$GCC"; then
+    dnl First, check whether -Werror can be added to the command line, or
+    dnl whether it leads to an error because of some other option that the
+    dnl user has put into $CC $CFLAGS $CPPFLAGS.
+    AC_CACHE_CHECK([whether the -Werror option is usable],
+      [gl_cv_cc_vis_werror],
+      [gl_save_CFLAGS="$CFLAGS"
+       CFLAGS="$CFLAGS -Werror"
+       AC_COMPILE_IFELSE(
+         [AC_LANG_PROGRAM([[]], [[]])],
+         [gl_cv_cc_vis_werror=yes],
+         [gl_cv_cc_vis_werror=no])
+       CFLAGS="$gl_save_CFLAGS"
+      ])
+    dnl Now check whether visibility declarations are supported.
+    AC_CACHE_CHECK([for simple visibility declarations],
+      [gl_cv_cc_visibility],
+      [gl_save_CFLAGS="$CFLAGS"
+       CFLAGS="$CFLAGS -fvisibility=hidden"
+       dnl We use the option -Werror and a function dummyfunc, because on some
+       dnl platforms (Cygwin 1.7) the use of -fvisibility triggers a warning
+       dnl "visibility attribute not supported in this configuration; ignored"
+       dnl at the first function definition in every compilation unit, and we
+       dnl don't want to use the option in this case.
+       if test $gl_cv_cc_vis_werror = yes; then
+         CFLAGS="$CFLAGS -Werror"
+       fi
+       AC_COMPILE_IFELSE(
+         [AC_LANG_PROGRAM(
+            [[extern __attribute__((__visibility__("hidden"))) int hiddenvar;
+              extern __attribute__((__visibility__("default"))) int exportedvar;
+              extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void);
+              extern __attribute__((__visibility__("default"))) int exportedfunc (void);
+              void dummyfunc (void) {}
+            ]],
+            [[]])],
+         [gl_cv_cc_visibility=yes],
+         [gl_cv_cc_visibility=no])
+       CFLAGS="$gl_save_CFLAGS"
+      ])
+    if test $gl_cv_cc_visibility = yes; then
+      CFLAG_VISIBILITY="-fvisibility=hidden"
+      HAVE_VISIBILITY=1
+    fi
+  fi
+  AC_SUBST([CFLAG_VISIBILITY])
+  AC_SUBST([HAVE_VISIBILITY])
+  AC_DEFINE_UNQUOTED([HAVE_VISIBILITY], [$HAVE_VISIBILITY],
+    [Define to 1 or 0, depending whether the compiler supports simple visibility declarations.])
+])
index 7ebe2d317a519d6879551f5ed5ee7c7f4b8eb0d6..1d2bcdfec9604ec7ba4964c74afadb4a0262182c 100644 (file)
@@ -1,5 +1,5 @@
-# warn-on-use.m4 serial 6
-dnl Copyright (C) 2010-2019 Free Software Foundation, Inc.
+# warn-on-use.m4 serial 9
+dnl Copyright (C) 2010-2020 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.
@@ -30,17 +30,15 @@ AC_DEFUN([gl_WARN_ON_USE_PREPARE],
        [AH_TEMPLATE([HAVE_RAW_DECL_]AS_TR_CPP(m4_defn([gl_decl])),
          [Define to 1 if ]m4_defn([gl_decl])[ is declared even after
           undefining macros.])])dnl
-dnl FIXME: gl_Symbol must be used unquoted until we can assume
-dnl autoconf 2.64 or newer.
      for gl_func in m4_flatten([$2]); do
        AS_VAR_PUSHDEF([gl_Symbol], [gl_cv_have_raw_decl_$gl_func])dnl
        AC_CACHE_CHECK([whether $gl_func is declared without a macro],
-         gl_Symbol,
+         [gl_Symbol],
          [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([$1],
-[@%:@undef $gl_func
-  (void) $gl_func;])],
-           [AS_VAR_SET(gl_Symbol, [yes])], [AS_VAR_SET(gl_Symbol, [no])])])
-       AS_VAR_IF(gl_Symbol, [yes],
+[[#undef $gl_func
+  (void) $gl_func;]])],
+           [AS_VAR_SET([gl_Symbol], [yes])], [AS_VAR_SET([gl_Symbol], [no])])])
+       AS_VAR_IF([gl_Symbol], [yes],
          [AC_DEFINE_UNQUOTED(AS_TR_CPP([HAVE_RAW_DECL_$gl_func]), [1])
           dnl shortcut - if the raw declaration exists, then set a cache
           dnl variable to allow skipping any later AC_CHECK_DECL efforts
index 235cac6171c0477c023f8e63878c2900654d5284..d4e4b0734531d657d33072c36218b4339fdc6d7e 100644 (file)
@@ -1,5 +1,5 @@
-# warnings.m4 serial 14
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+# warnings.m4 serial 16
+dnl Copyright (C) 2008-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -23,8 +23,6 @@ m4_ifdef([AS_VAR_APPEND],
 # The effects of this macro depend on the current language (_AC_LANG).
 AC_DEFUN([gl_COMPILER_OPTION_IF],
 [
-dnl FIXME: gl_Warn must be used unquoted until we can assume Autoconf
-dnl 2.64 or newer.
 AS_VAR_PUSHDEF([gl_Warn], [gl_cv_warn_[]_AC_LANG_ABBREV[]_$1])dnl
 AS_VAR_PUSHDEF([gl_Flags], [_AC_LANG_PREFIX[]FLAGS])dnl
 AS_LITERAL_IF([$1],
@@ -34,13 +32,13 @@ case $gl_positive in
   -Wno-*) gl_positive=-W`expr "X$gl_positive" : 'X-Wno-\(.*\)'` ;;
 esac
 m4_pushdef([gl_Positive], [$gl_positive])])dnl
-AC_CACHE_CHECK([whether _AC_LANG compiler handles $1], m4_defn([gl_Warn]), [
+AC_CACHE_CHECK([whether _AC_LANG compiler handles $1], [gl_Warn], [
   gl_save_compiler_FLAGS="$gl_Flags"
   gl_AS_VAR_APPEND(m4_defn([gl_Flags]),
     [" $gl_unknown_warnings_are_errors ]m4_defn([gl_Positive])["])
-  AC_LINK_IFELSE([m4_default([$4], [AC_LANG_PROGRAM([])])],
-                 [AS_VAR_SET(gl_Warn, [yes])],
-                 [AS_VAR_SET(gl_Warn, [no])])
+  AC_LINK_IFELSE([m4_default([$4], [AC_LANG_PROGRAM([[]])])],
+                 [AS_VAR_SET([gl_Warn], [yes])],
+                 [AS_VAR_SET([gl_Warn], [no])])
   gl_Flags="$gl_save_compiler_FLAGS"
 ])
 AS_VAR_IF(gl_Warn, [yes], [$2], [$3])
@@ -59,8 +57,7 @@ AC_DEFUN([gl_UNKNOWN_WARNINGS_ARE_ERRORS],
 [_AC_LANG_DISPATCH([$0], _AC_LANG, $@)])
 
 # Specialization for _AC_LANG = C. This macro can be AC_REQUIREd.
-# Use of m4_defun rather than AC_DEFUN works around a bug in autoconf < 2.63b.
-m4_defun([gl_UNKNOWN_WARNINGS_ARE_ERRORS(C)],
+AC_DEFUN([gl_UNKNOWN_WARNINGS_ARE_ERRORS(C)],
 [
   AC_LANG_PUSH([C])
   gl_UNKNOWN_WARNINGS_ARE_ERRORS_IMPL
@@ -68,8 +65,7 @@ m4_defun([gl_UNKNOWN_WARNINGS_ARE_ERRORS(C)],
 ])
 
 # Specialization for _AC_LANG = C++. This macro can be AC_REQUIREd.
-# Use of m4_defun rather than AC_DEFUN works around a bug in autoconf < 2.63b.
-m4_defun([gl_UNKNOWN_WARNINGS_ARE_ERRORS(C++)],
+AC_DEFUN([gl_UNKNOWN_WARNINGS_ARE_ERRORS(C++)],
 [
   AC_LANG_PUSH([C++])
   gl_UNKNOWN_WARNINGS_ARE_ERRORS_IMPL
@@ -77,8 +73,7 @@ m4_defun([gl_UNKNOWN_WARNINGS_ARE_ERRORS(C++)],
 ])
 
 # Specialization for _AC_LANG = Objective C. This macro can be AC_REQUIREd.
-# Use of m4_defun rather than AC_DEFUN works around a bug in autoconf < 2.63b.
-m4_defun([gl_UNKNOWN_WARNINGS_ARE_ERRORS(Objective C)],
+AC_DEFUN([gl_UNKNOWN_WARNINGS_ARE_ERRORS(Objective C)],
 [
   AC_LANG_PUSH([Objective C])
   gl_UNKNOWN_WARNINGS_ARE_ERRORS_IMPL
index cd20e7a0c174abb3d16b2bbb2516d0d53d0f625a..e0a4060018a89aa21136c2663133281fa149d956 100644 (file)
@@ -1,13 +1,13 @@
 dnl A placeholder for ISO C99 <wchar.h>, for platforms that have issues.
 
-dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2007-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
 
 dnl Written by Eric Blake.
 
-# wchar_h.m4 serial 43
+# wchar_h.m4 serial 48
 
 AC_DEFUN([gl_WCHAR_H],
 [
@@ -52,11 +52,30 @@ AC_DEFUN([gl_WCHAR_H],
 #include <wchar.h>
     ]],
     [btowc wctob mbsinit mbrtowc mbrlen mbsrtowcs mbsnrtowcs wcrtomb
-     wcsrtombs wcsnrtombs wcwidth wmemchr wmemcmp wmemcpy wmemmove wmemset
+     wcsrtombs wcsnrtombs wcwidth
+     wmemchr wmemcmp wmemcpy wmemmove wmempcpy wmemset
      wcslen wcsnlen wcscpy wcpcpy wcsncpy wcpncpy wcscat wcsncat wcscmp
      wcsncmp wcscasecmp wcsncasecmp wcscoll wcsxfrm wcsdup wcschr wcsrchr
      wcscspn wcsspn wcspbrk wcsstr wcstok wcswidth wcsftime
     ])
+
+  AC_REQUIRE([AC_C_RESTRICT])
+
+  AC_CHECK_DECLS([wcsdup], [], [], [[
+/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
+   <wchar.h>.
+   BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
+   included before <wchar.h>.  */
+#if !(defined __GLIBC__ && !defined __UCLIBC__)
+# include <stddef.h>
+# include <stdio.h>
+# include <time.h>
+#endif
+#include <wchar.h>
+    ]])
+  if test $ac_cv_have_decl_wcsdup = no; then
+    HAVE_DECL_WCSDUP=0
+  fi
 ])
 
 dnl Check whether <wchar.h> is usable at all.
@@ -67,11 +86,14 @@ AC_DEFUN([gl_WCHAR_H_INLINE_OK],
   dnl and <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=42440>. In summary,
   dnl glibc version 2.5 or older, together with gcc version 4.3 or newer and
   dnl the option -std=c99 or -std=gnu99, leads to a broken <wchar.h>.
+  AC_REQUIRE([AC_CANONICAL_HOST])
   AC_CACHE_CHECK([whether <wchar.h> uses 'inline' correctly],
     [gl_cv_header_wchar_h_correct_inline],
     [gl_cv_header_wchar_h_correct_inline=yes
-     AC_LANG_CONFTEST([
-       AC_LANG_SOURCE([[#define wcstod renamed_wcstod
+     case "$host_os" in
+       *-gnu* | gnu*)
+         AC_LANG_CONFTEST([
+           AC_LANG_SOURCE([[#define wcstod renamed_wcstod
 /* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
    <wchar.h>.
    BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
@@ -83,17 +105,17 @@ AC_DEFUN([gl_WCHAR_H_INLINE_OK],
 extern int zero (void);
 int main () { return zero(); }
 ]])])
-     dnl Do not rename the object file from conftest.$ac_objext to
-     dnl conftest1.$ac_objext, as this will cause the link to fail on
-     dnl z/OS when using the XPLINK object format (due to duplicate
-     dnl CSECT names). Instead, temporarily redefine $ac_compile so
-     dnl that the object file has the latter name from the start.
-     save_ac_compile="$ac_compile"
-     ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest1/`
-     if echo '#include "conftest.c"' >conftest1.c &&
-        AC_TRY_EVAL([ac_compile]); then
-       AC_LANG_CONFTEST([
-         AC_LANG_SOURCE([[#define wcstod renamed_wcstod
+         dnl Do not rename the object file from conftest.$ac_objext to
+         dnl conftest1.$ac_objext, as this will cause the link to fail on
+         dnl z/OS when using the XPLINK object format (due to duplicate
+         dnl CSECT names). Instead, temporarily redefine $ac_compile so
+         dnl that the object file has the latter name from the start.
+         save_ac_compile="$ac_compile"
+         ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest1/`
+         if echo '#include "conftest.c"' >conftest1.c \
+            && AC_TRY_EVAL([ac_compile]); then
+           AC_LANG_CONFTEST([
+             AC_LANG_SOURCE([[#define wcstod renamed_wcstod
 /* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
    <wchar.h>.
    BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
@@ -104,19 +126,21 @@ int main () { return zero(); }
 #include <wchar.h>
 int zero (void) { return 0; }
 ]])])
-       dnl See note above about renaming object files.
-       ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest2/`
-       if echo '#include "conftest.c"' >conftest2.c &&
-          AC_TRY_EVAL([ac_compile]); then
-         if $CC -o conftest$ac_exeext $CFLAGS $LDFLAGS conftest1.$ac_objext conftest2.$ac_objext $LIBS >&AS_MESSAGE_LOG_FD 2>&1; then
-           :
-         else
-           gl_cv_header_wchar_h_correct_inline=no
+           dnl See note above about renaming object files.
+           ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest2/`
+           if echo '#include "conftest.c"' >conftest2.c \
+              && AC_TRY_EVAL([ac_compile]); then
+             if $CC -o conftest$ac_exeext $CFLAGS $LDFLAGS conftest1.$ac_objext conftest2.$ac_objext $LIBS >&AS_MESSAGE_LOG_FD 2>&1; then
+               :
+             else
+               gl_cv_header_wchar_h_correct_inline=no
+             fi
+           fi
          fi
-       fi
-     fi
-     ac_compile="$save_ac_compile"
-     rm -f conftest[12].c conftest[12].$ac_objext conftest$ac_exeext
+         ac_compile="$save_ac_compile"
+         rm -f conftest[12].c conftest[12].$ac_objext conftest$ac_exeext
+         ;;
+     esac
     ])
   if test $gl_cv_header_wchar_h_correct_inline = no; then
     AC_MSG_ERROR([<wchar.h> cannot be used with this compiler ($CC $CFLAGS $CPPFLAGS).
@@ -157,6 +181,7 @@ AC_DEFUN([gl_WCHAR_H_DEFAULTS],
   GNULIB_WMEMCMP=0;     AC_SUBST([GNULIB_WMEMCMP])
   GNULIB_WMEMCPY=0;     AC_SUBST([GNULIB_WMEMCPY])
   GNULIB_WMEMMOVE=0;    AC_SUBST([GNULIB_WMEMMOVE])
+  GNULIB_WMEMPCPY=0;    AC_SUBST([GNULIB_WMEMPCPY])
   GNULIB_WMEMSET=0;     AC_SUBST([GNULIB_WMEMSET])
   GNULIB_WCSLEN=0;      AC_SUBST([GNULIB_WCSLEN])
   GNULIB_WCSNLEN=0;     AC_SUBST([GNULIB_WCSNLEN])
@@ -196,6 +221,7 @@ AC_DEFUN([gl_WCHAR_H_DEFAULTS],
   HAVE_WMEMCMP=1;       AC_SUBST([HAVE_WMEMCMP])
   HAVE_WMEMCPY=1;       AC_SUBST([HAVE_WMEMCPY])
   HAVE_WMEMMOVE=1;      AC_SUBST([HAVE_WMEMMOVE])
+  HAVE_WMEMPCPY=1;      AC_SUBST([HAVE_WMEMPCPY])
   HAVE_WMEMSET=1;       AC_SUBST([HAVE_WMEMSET])
   HAVE_WCSLEN=1;        AC_SUBST([HAVE_WCSLEN])
   HAVE_WCSNLEN=1;       AC_SUBST([HAVE_WCSNLEN])
@@ -222,6 +248,7 @@ AC_DEFUN([gl_WCHAR_H_DEFAULTS],
   HAVE_WCSWIDTH=1;      AC_SUBST([HAVE_WCSWIDTH])
   HAVE_WCSFTIME=1;      AC_SUBST([HAVE_WCSFTIME])
   HAVE_DECL_WCTOB=1;    AC_SUBST([HAVE_DECL_WCTOB])
+  HAVE_DECL_WCSDUP=1;   AC_SUBST([HAVE_DECL_WCSDUP])
   HAVE_DECL_WCWIDTH=1;  AC_SUBST([HAVE_DECL_WCWIDTH])
   REPLACE_MBSTATE_T=0;  AC_SUBST([REPLACE_MBSTATE_T])
   REPLACE_BTOWC=0;      AC_SUBST([REPLACE_BTOWC])
@@ -237,4 +264,5 @@ AC_DEFUN([gl_WCHAR_H_DEFAULTS],
   REPLACE_WCWIDTH=0;    AC_SUBST([REPLACE_WCWIDTH])
   REPLACE_WCSWIDTH=0;   AC_SUBST([REPLACE_WCSWIDTH])
   REPLACE_WCSFTIME=0;   AC_SUBST([REPLACE_WCSFTIME])
+  REPLACE_WCSTOK=0;     AC_SUBST([REPLACE_WCSTOK])
 ])
index 5db5815209d458444ed31c4cc5408ea95b2a1d3d..e48d4649322d82f9ddbc165775bc7606dd8a3d8d 100644 (file)
@@ -1,5 +1,5 @@
 # wchar_t.m4 serial 4 (gettext-0.18.2)
-dnl Copyright (C) 2002-2003, 2008-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2003, 2008-2020 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.
index fec22f34e0198399fc5aab229604fee2b76d0f04..c45fd9830f61cbcad6c6400e0b29aede62e5154a 100644 (file)
@@ -1,5 +1,5 @@
-# wcrtomb.m4 serial 14
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+# wcrtomb.m4 serial 16
+dnl Copyright (C) 2008-2020 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.
@@ -31,9 +31,11 @@ AC_DEFUN([gl_FUNC_WCRTOMB],
       REPLACE_WCRTOMB=1
     fi
   else
-    if test $REPLACE_MBSTATE_T = 1; then
-      REPLACE_WCRTOMB=1
-    fi
+    dnl We don't actually need to override wcrtomb when redefining the semantics
+    dnl of the mbstate_t type. Tested on 32-bit AIX.
+    dnl if test $REPLACE_MBSTATE_T = 1; then
+    dnl   REPLACE_WCRTOMB=1
+    dnl fi
     if test $REPLACE_WCRTOMB = 0; then
       dnl On Android 4.3, wcrtomb produces wrong characters in the C locale.
       dnl On AIX 4.3, OSF/1 5.1 and Solaris <= 11.3, wcrtomb (NULL, 0, NULL)
@@ -79,7 +81,9 @@ int main ()
         ])
       case "$gl_cv_func_wcrtomb_works" in
         *yes) ;;
-        *) REPLACE_WCRTOMB=1 ;;
+        *) AC_DEFINE([WCRTOMB_C_LOCALE_BUG], [1],
+             [Define if the wcrtomb function does not work in the C locale.])
+           REPLACE_WCRTOMB=1 ;;
       esac
     fi
     if test $REPLACE_WCRTOMB = 0; then
@@ -90,12 +94,10 @@ int main ()
           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 on native Windows.
-            mingw*)                  gl_cv_func_wcrtomb_retval="guessing yes" ;;
-                                     # Guess yes otherwise.
-            *)                       gl_cv_func_wcrtomb_retval="guessing yes" ;;
+            # Guess no on AIX 4, OSF/1, Solaris, native Windows.
+            aix4* | osf* | solaris* | mingw*) 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
@@ -111,6 +113,7 @@ changequote([,])dnl
 #include <stdio.h>
 #include <time.h>
 #include <wchar.h>
+#include <stdlib.h>
 int main ()
 {
   int result = 0;
@@ -123,6 +126,12 @@ int main ()
     {
       if (wcrtomb (NULL, 0, NULL) != 1)
         result |= 2;
+      {
+        wchar_t wc = (wchar_t) 0xBADFACE;
+        if (mbtowc (&wc, "\303\274", 2) == 2)
+          if (wcrtomb (NULL, wc, NULL) != 1)
+            result |= 2;
+      }
     }
   if (setlocale (LC_ALL, "$LOCALE_JA") != NULL)
     {
@@ -143,7 +152,9 @@ int main ()
         ])
       case "$gl_cv_func_wcrtomb_retval" in
         *yes) ;;
-        *) REPLACE_WCRTOMB=1 ;;
+        *) AC_DEFINE([WCRTOMB_RETVAL_BUG], [1],
+             [Define if the wcrtomb function has an incorrect return value.])
+           REPLACE_WCRTOMB=1 ;;
       esac
     fi
   fi
index 05c1237ee0a4c607b573324e565431c5c16efe26..801332620bdb173c58356b0db3d98240877b50b2 100644 (file)
@@ -1,5 +1,5 @@
-# wctob.m4 serial 11
-dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
+# wctob.m4 serial 12
+dnl Copyright (C) 2008-2020 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.
@@ -74,6 +74,7 @@ int main ()
           AC_RUN_IFELSE(
             [AC_LANG_SOURCE([[
 #include <locale.h>
+#include <stdlib.h>
 #include <string.h>
 /* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
    <wchar.h>.
index 79d29f18542feccc987eb8f734c5194a8ccd2994..8e8c6a2f79939eb989ae1e3db57b0eb5a6bd2d98 100644 (file)
@@ -1,5 +1,5 @@
 # wctomb.m4 serial 2
-dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2020 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.
index 6903d7583c770735632d290d589a3e5fb6a0a0c2..a3cfc833fd3adce8bfbbade61ac7b1cac8063a87 100644 (file)
@@ -1,8 +1,8 @@
-# wctype_h.m4 serial 21
+# wctype_h.m4 serial 25
 
 dnl A placeholder for ISO C99 <wctype.h>, for platforms that lack it.
 
-dnl Copyright (C) 2006-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2006-2020 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.
@@ -57,7 +57,7 @@ AC_DEFUN([gl_WCTYPE_H],
              AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdlib.h>
                           #if __GNU_LIBRARY__ == 1
                           Linux libc5 i18n is broken.
-                          #endif]], [])],
+                          #endif]], [[]])],
               [gl_cv_func_iswcntrl_works="guessing yes"],
               [gl_cv_func_iswcntrl_works="guessing no"])
             ])
@@ -69,10 +69,14 @@ AC_DEFUN([gl_WCTYPE_H],
   fi
   AC_SUBST([HAVE_WCTYPE_H])
 
-  case "$gl_cv_func_iswcntrl_works" in
-    *yes) REPLACE_ISWCNTRL=0 ;;
-    *)    REPLACE_ISWCNTRL=1 ;;
-  esac
+  if test $GNULIB_OVERRIDES_WINT_T = 1; then
+    REPLACE_ISWCNTRL=1
+  else
+    case "$gl_cv_func_iswcntrl_works" in
+      *yes) REPLACE_ISWCNTRL=0 ;;
+      *)    REPLACE_ISWCNTRL=1 ;;
+    esac
+  fi
   AC_SUBST([REPLACE_ISWCNTRL])
 
   if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then
@@ -200,6 +204,8 @@ AC_DEFUN([gl_WCTYPE_MODULE_INDICATOR],
 AC_DEFUN([gl_WCTYPE_H_DEFAULTS],
 [
   GNULIB_ISWBLANK=0;    AC_SUBST([GNULIB_ISWBLANK])
+  GNULIB_ISWDIGIT=0;    AC_SUBST([GNULIB_ISWDIGIT])
+  GNULIB_ISWXDIGIT=0;   AC_SUBST([GNULIB_ISWXDIGIT])
   GNULIB_WCTYPE=0;      AC_SUBST([GNULIB_WCTYPE])
   GNULIB_ISWCTYPE=0;    AC_SUBST([GNULIB_ISWCTYPE])
   GNULIB_WCTRANS=0;     AC_SUBST([GNULIB_WCTRANS])
@@ -209,4 +215,6 @@ AC_DEFUN([gl_WCTYPE_H_DEFAULTS],
   HAVE_WCTYPE_T=1;      AC_SUBST([HAVE_WCTYPE_T])
   HAVE_WCTRANS_T=1;     AC_SUBST([HAVE_WCTRANS_T])
   REPLACE_ISWBLANK=0;   AC_SUBST([REPLACE_ISWBLANK])
+  REPLACE_ISWDIGIT=0;   AC_SUBST([REPLACE_ISWDIGIT])
+  REPLACE_ISWXDIGIT=0;  AC_SUBST([REPLACE_ISWXDIGIT])
 ])
index 61e8a23d2785b2d3fc43a678a7b3c9151ce82577..cf9764da3ccb4e1bd689cad3b6cbc3687744f435 100644 (file)
@@ -1,5 +1,5 @@
-# wint_t.m4 serial 7
-dnl Copyright (C) 2003, 2007-2019 Free Software Foundation, Inc.
+# wint_t.m4 serial 9
+dnl Copyright (C) 2003, 2007-2020 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,10 +32,10 @@ AC_DEFUN([gt_TYPE_WINT_T],
 
     dnl Determine whether gnulib's <wchar.h> or <wctype.h> would, if present,
     dnl override 'wint_t'.
-    AC_CACHE_CHECK([whether wint_t is too small],
-      [gl_cv_type_wint_t_too_small],
+    AC_CACHE_CHECK([whether wint_t is large enough],
+      [gl_cv_type_wint_t_large_enough],
       [AC_COMPILE_IFELSE(
-           [AC_LANG_PROGRAM([[
+         [AC_LANG_PROGRAM([[
 /* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
    <wchar.h>.
    BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
@@ -46,11 +46,11 @@ AC_DEFUN([gt_TYPE_WINT_T],
 # include <time.h>
 #endif
 #include <wchar.h>
-              int verify[sizeof (wint_t) < sizeof (int) ? -1 : 1];
-              ]])],
-           [gl_cv_type_wint_t_too_small=no],
-           [gl_cv_type_wint_t_too_small=yes])])
-    if test $gl_cv_type_wint_t_too_small = yes; then
+            int verify[sizeof (wint_t) < sizeof (int) ? -1 : 1];
+            ]])],
+         [gl_cv_type_wint_t_large_enough=yes],
+         [gl_cv_type_wint_t_large_enough=no])])
+    if test $gl_cv_type_wint_t_large_enough = no; then
       GNULIB_OVERRIDES_WINT_T=1
     else
       GNULIB_OVERRIDES_WINT_T=0
index dfff94319b7e63655149b8059125ff6dee04e843..a5568700766582e8d3609a5377ac5de319d752a3 100644 (file)
@@ -1,5 +1,5 @@
 # xalloc.m4 serial 18
-dnl Copyright (C) 2002-2006, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2006, 2009-2020 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.
index 32dc51bede4b978139a7bcc232660ca8208f3a7e..3846f9148e5e06a5747bd8321ffa55a6db40ae8d 100644 (file)
@@ -1,5 +1,5 @@
 # xstrndup.m4 serial 2
-dnl Copyright (C) 2003, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2003, 2009-2020 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.
index ee86a563301cb99e54f0bd23b7c1ca8a963f5741..4e32f045901e6b8487a7c6f5f4b0cd6c1dc4d65d 100644 (file)
@@ -1,5 +1,5 @@
 #serial 11
-dnl Copyright (C) 2002-2007, 2009-2019 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2007, 2009-2020 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.
index 59c8c38eb4f3a1433b6cf46931e2db1e5d1a4dbd..5ccd39a945b8a8ea5c9781fffddd79524c007be1 100644 (file)
@@ -1,19 +1,18 @@
-# yield.m4 serial 3
-dnl Copyright (C) 2005-2019 Free Software Foundation, Inc.
+# yield.m4 serial 4
+dnl Copyright (C) 2005-2020 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_YIELD],
 [
+  AC_REQUIRE([gl_PTHREADLIB])
   AC_REQUIRE([gl_THREADLIB])
-  dnl On some systems, sched_yield is in librt, rather than in libpthread.
-  YIELD_LIB=
+
   if test $gl_threads_api = posix; then
-    dnl Solaris 7...10 has sched_yield in librt, not in libpthread or libc.
-    AC_CHECK_LIB([rt], [sched_yield], [YIELD_LIB=-lrt],
-      [dnl Solaris 2.5.1, 2.6 has sched_yield in libposix4, not librt.
-       AC_CHECK_LIB([posix4], [sched_yield], [YIELD_LIB=-lposix4])])
+    YIELD_LIB="$LIB_SCHED_YIELD"
+  else
+    YIELD_LIB=
   fi
   AC_SUBST([YIELD_LIB])
 ])
diff --git a/m4/zzgnulib.m4 b/m4/zzgnulib.m4
new file mode 100644 (file)
index 0000000..98fa68f
--- /dev/null
@@ -0,0 +1,23 @@
+# zzgnulib.m4 serial 1
+dnl Copyright (C) 2020 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 This file must be named something that sorts after all other
+dnl package- or gnulib-provided .m4 files - at least for those packages
+dnl that redefine AC_PROG_CC.
+
+dnl Redefine AC_PROG_CC so that it ends with invocations of gl_COMPILER_CLANG
+dnl and gl_COMPILER_PREPARE_CHECK_DECL.
+m4_define([AC_PROG_CC],
+  m4_defn([AC_PROG_CC])[
+gl_COMPILER_CLANG
+gl_COMPILER_PREPARE_CHECK_DECL
+])
+
+# gl_ZZGNULIB
+# -----------
+# Witness macro that this file has been included.  Needed to force
+# Automake to include this file after all other gnulib .m4 files.
+AC_DEFUN([gl_ZZGNULIB])
index 16e936022c76aa98276cbebf142ab4d7c9312393..2a0d2b4ce212d62575913b376135d2063c5ca0da 100644 (file)
--- a/maint.mk
+++ b/maint.mk
@@ -2,7 +2,7 @@
 # This Makefile fragment tries to be general-purpose enough to be
 # used by many projects via the gnulib maintainer-makefile module.
 
-## Copyright (C) 2001-2019 Free Software Foundation, Inc.
+## Copyright (C) 2001-2020 Free Software Foundation, Inc.
 ##
 ## This program is free software: you can redistribute it and/or modify
 ## it under the terms of the GNU General Public License as published by
@@ -442,7 +442,7 @@ sc_prohibit_gnu_make_extensions:
            $(SED) -ne '/Makefile/{s/\.in$$//;p;}' |                    \
            while read m; do                                            \
              $(MAKE) -qp -f $$m .DUMMY-TARGET 2>/dev/null |            \
-               $(AWK) -v file=$$m -e '$($@_awk_)' || exit 1;           \
+               $(AWK) -v file=$$m -e '$($@_awk_)' || exit 1;           \
            done;                                                       \
        fi
 
@@ -649,7 +649,7 @@ sc_prohibit_safe_read_without_use:
 
 sc_prohibit_argmatch_without_use:
        @h='argmatch.h' \
-       re='(\<(ARRAY_CARDINALITY|X?ARGMATCH(|_TO_ARGUMENT|_VERIFY))\>|\<(invalid_arg|argmatch(_exit_fn|_(in)?valid)?) *\()' \
+       re='(\<(ARGMATCH_DEFINE_GROUP|ARRAY_CARDINALITY|X?ARGMATCH(|_TO_ARGUMENT|_VERIFY))\>|\<(invalid_arg|argmatch(_exit_fn|_(in)?valid)?) *\()' \
          $(_sc_header_without_use)
 
 sc_prohibit_canonicalize_without_use:
@@ -915,7 +915,7 @@ sc_prohibit_always-defined_macros:
                dummy /dev/null                                         \
            && { printf '$(ME): define the above'                       \
                        ' via some gnulib .h file\n' 1>&2;              \
-                exit 1; }                                              \
+                exit 1; }                                              \
            || :;                                                       \
        fi
 # ==================================================================
index 6904e1e20416eab66854489b60b9312e82ee4511..40824d475acf469451dd323f9cca67412188f9da 100644 (file)
@@ -1,18 +1,12 @@
-# Default to disabling device-mapper and SELinux
+# Default to disabling device-mapper
 %define use_devmapper 0
-%define use_selinux 0
-%define use_sepol 0
 
 # Enable device-mapper support if we find devmapper
 %define use_devmapper %(pkg-config --libs devmapper >/dev/null 2>&1; [ $? -eq 0 ] && echo 1)
 
-# Enable SELinux if we find libselinux and libsepol
-%define use_selinux %([ -r %{_libdir}/libselinux.a ] && echo 1)
-%define use_sepol %([ -r %{_libdir}/libsepol.so ] && echo 1)
-
 Summary:   The GNU disk partition manipulation program
 Name:      parted
-Version:   3.2.153.3-5236
+Version:   3.3.52.5-2334-dirty
 Release:   1
 Source:    ftp://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.bz2
 Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -22,7 +16,7 @@ Group:     Applications/System
 BuildRequires: e2fsprogs-devel readline-devel ncurses-devel gperf
 BuildRequires: automake libtool gettext-devel texinfo pkgconfig
 
-BuildRequires: device-mapper-devel, libselinux-devel libsepol-devel
+BuildRequires: device-mapper-devel
 
 Prereq: /sbin/install-info
 
@@ -52,11 +46,6 @@ Parted library, you need to install this package.
    --enable-device-mapper \
 %else
    --disable-devmapper \
-%endif
-%if "%{use_selinux}" == "1" && "%{use_sepol}" == "1"
-   --enable-selinux \
-%else
-   --disable-selinux \
 %endif
    --enable-part-static \
    --enable-pc98=no \
index bdbe21890aea3b35dce3a693ccbe758f4bad2296..d0e2b11a950dc82fe8a375da9e91bf2130b6adbb 100644 (file)
@@ -1,15 +1,9 @@
-# Default to disabling device-mapper and SELinux
+# Default to disabling device-mapper
 %define use_devmapper 0
-%define use_selinux 0
-%define use_sepol 0
 
 # Enable device-mapper support if we find devmapper
 %define use_devmapper %(pkg-config --libs devmapper >/dev/null 2>&1; [ $? -eq 0 ] && echo 1)
 
-# Enable SELinux if we find libselinux and libsepol
-%define use_selinux %([ -r %{_libdir}/libselinux.a ] && echo 1)
-%define use_sepol %([ -r %{_libdir}/libsepol.so ] && echo 1)
-
 Summary:   The GNU disk partition manipulation program
 Name:      @PACKAGE@
 Version:   @VERSION@
@@ -22,7 +16,7 @@ Group:     Applications/System
 BuildRequires: e2fsprogs-devel readline-devel ncurses-devel gperf
 BuildRequires: automake libtool gettext-devel texinfo pkgconfig
 
-BuildRequires: device-mapper-devel, libselinux-devel libsepol-devel
+BuildRequires: device-mapper-devel
 
 Prereq: /sbin/install-info
 
@@ -52,11 +46,6 @@ Parted library, you need to install this package.
    --enable-device-mapper \
 %else
    --disable-devmapper \
-%endif
-%if "%{use_selinux}" == "1" && "%{use_sepol}" == "1"
-   --enable-selinux \
-%else
-   --disable-selinux \
 %endif
    --enable-part-static \
    --enable-pc98=no \
index 178723fd3e6b4f00efac8befeb2838b8f8b84969..842cc86fb9bca6d5a27f28f1b55216b29f98ec34 100644 (file)
@@ -97,9 +97,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -111,15 +111,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -129,25 +127,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -159,9 +158,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -176,6 +176,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -184,14 +185,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -312,6 +314,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -346,6 +349,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -356,6 +361,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -403,19 +409,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -429,6 +439,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -489,6 +501,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -537,9 +550,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -555,6 +571,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -638,11 +655,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -652,12 +671,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -691,10 +715,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -716,14 +740,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -742,7 +769,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -752,7 +778,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -775,6 +800,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -860,7 +886,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -873,6 +901,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -895,6 +924,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -903,15 +933,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -950,6 +979,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -975,16 +1005,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -1033,6 +1075,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -1062,6 +1105,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1098,21 +1142,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1140,6 +1187,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1149,6 +1197,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1181,6 +1231,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1269,6 +1320,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1306,13 +1358,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1331,6 +1383,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
index 5014d71ed5f7d1bf822a63786adc53dc6237be44..d02820280911b54da9b24fffaf74bbc21e955e3f 100644 (file)
@@ -1,7 +1,7 @@
 /*
     parted - a frontend to libparted
-    Copyright (C) 1999-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1999-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index fa78ae4adb2aae07ecec33aeb40235ca58758f3a..323f8a20efe7e7b45cec38eb4cb8b0a31857bce5 100644 (file)
@@ -1,7 +1,7 @@
 /*
     parted - a frontend to libparted
-    Copyright (C) 1999-2000, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1999-2000, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 9dcdb0539cbe581f00db609167fc0aa550695530..e84e66d00c5f9d75ed2cf9d0e7937ba3acf17ff8 100644 (file)
@@ -1,6 +1,7 @@
 /*
     parted - a frontend to libparted
-    Copyright (C) 1999-2003, 2005-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1999-2003, 2005-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -1545,6 +1546,8 @@ do_resizepart (PedDevice** dev, PedDisk** diskp)
         PedGeometry             *range_end = NULL;
         PedConstraint*          constraint;
         int rc = 0;
+        char*                   end_input = NULL;
+        char*                   end_size = NULL;
 
         if (!disk) {
                 disk = ped_disk_new (*dev);
@@ -1560,12 +1563,25 @@ do_resizepart (PedDevice** dev, PedDisk** diskp)
 
         if (!command_line_get_partition (_("Partition number?"), disk, &part))
                 goto error;
+
+        /* Save the optional End value if the partition is busy. */
+        if (ped_partition_is_busy(part)) {
+            if (command_line_get_word_count())
+                end_size = command_line_pop_word();
+        }
+
+        /* If the partition is busy this may clear the command_line and prompt the user */
         if (!_partition_warn_busy (part))
                 goto error;
 
+        /* Push the End value back onto the command_line, if it exists */
+        if (end_size) {
+            command_line_push_word(end_size);
+            free(end_size);
+        }
+
         start = part->geom.start;
         end = oldend = part->geom.end;
-        char *end_input;
         if (!command_line_get_sector (_("End?"), *dev, &end, &range_end, &end_input))
                 goto error;
         _adjust_end_if_iec(&start, &end, range_end, end_input);
index 7ed4e9e7653fc1ec53e52022dfecf63972c6f2d1..e2a8bd186b40c3efc7f086e7e30cc377f4fc3c67 100644 (file)
@@ -1,7 +1,7 @@
 /*
     parted - a frontend to libparted
-    Copyright (C) 1999-2001, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1999-2001, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index c5d8bb0a96d0bcd3d32c057efe1b50616725893f..40a89734c81adcb0bd2d4178e05c2143ce3ceed8 100644 (file)
@@ -1,7 +1,7 @@
 /*
     parted - a frontend to libparted
-    Copyright (C) 1999-2001, 2007, 2009-2014, 2019 Free Software Foundation,
-    Inc.
+    Copyright (C) 1999-2001, 2007, 2009-2014, 2019-2021 Free Software
+    Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 21ebbb041191ecbd6fc618e0e728371e8d8e5788..e754ac78ef2a46eb18096fe374ad497a0f037325 100644 (file)
@@ -3,7 +3,7 @@
  */
 /*
     parted - a frontend to libparted
-    Copyright (C) 2006-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2006-2014, 2019-2021 Free Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 3fe0794ccba96aa21fb07c0db9e81454556c7341..298a2b154e826e44f38d7ed7eb84ede52d28fe57 100644 (file)
@@ -1,6 +1,7 @@
 /*
     parted - a frontend to libparted
-    Copyright (C) 2006-2007, 2009-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2006-2007, 2009-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 7b5374de6c4d7a538c0264481c22df42d62fe634..973bd266c7fe39268a868612a1037129e9b98042 100644 (file)
@@ -1,6 +1,7 @@
 /*
     parted - a frontend to libparted
-    Copyright (C) 1999-2002, 2006-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1999-2002, 2006-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -909,11 +910,11 @@ command_line_get_word (const char* prompt, const char* def,
 int
 command_line_get_integer (const char* prompt, int* value)
 {
-        char     def_str [10];
+        char     def_str [20];
         char*    input;
         long     ret;
 
-        snprintf (def_str, 10, "%d", *value);
+        snprintf (def_str, 20, "%d", *value);
         input = command_line_get_word (prompt, *value ? def_str : NULL,
                                        NULL, 1);
         if (!input)
@@ -1138,7 +1139,7 @@ command_line_get_disk_flag (const char* prompt, const PedDisk* disk,
                             PedDiskFlag* flag)
 {
         StrList*            opts = NULL;
-        PedPartitionFlag    walk = 0;
+        PedDiskFlag         walk = 0;
         char*               flag_name;
 
         while ( (walk = ped_disk_flag_next (walk)) ) {
index 6192ee512c0b58fde5ff62e65a5603ed1009377b..3b0778264261688f9cd2e0afadf3193fc87ddee3 100644 (file)
@@ -1,6 +1,7 @@
 /*
     parted - a frontend to libparted
-    Copyright (C) 1999-2001, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 1999-2001, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 57792b095ad99c7ca929e39d58f179f13fc863f8..458e55f5dfd7ab8a9931bc0ea02a5d734bfd8def 100644 (file)
@@ -96,9 +96,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -110,15 +110,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -128,25 +126,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -158,9 +157,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -175,6 +175,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -183,14 +184,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -299,6 +301,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -333,6 +336,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -343,6 +348,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -390,19 +396,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -416,6 +426,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -476,6 +488,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -524,9 +537,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -542,6 +558,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -625,11 +642,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -639,12 +658,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -678,10 +702,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -703,14 +727,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -729,7 +756,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -739,7 +765,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -762,6 +787,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -847,7 +873,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -860,6 +888,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -882,6 +911,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -890,15 +920,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -937,6 +966,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -962,16 +992,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -1020,6 +1062,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -1049,6 +1092,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1085,21 +1129,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1127,6 +1174,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1136,6 +1184,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1168,6 +1218,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1256,6 +1307,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1293,13 +1345,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1318,6 +1370,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
index 686d76c4c1121b0737a21a7d66468fd5c20d8ab2..cee8e22f42f1094c7fb4b96bf2384cdb34390a6a 100644 (file)
@@ -1,6 +1,7 @@
 /*
     partprobe - informs the OS kernel of partition layout
-    Copyright (C) 2001-2002, 2007-2014, 2019 Free Software Foundation, Inc.
+    Copyright (C) 2001-2002, 2007-2014, 2019-2021 Free Software Foundation,
+    Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
index 166b6520e4ae2b3e46537b0c2314553165923d4b..828a8d7a4e0228868f3431f16cec1b18deda2537 100644 (file)
@@ -1,5 +1,5 @@
 # libparted
-# Copyright (C) 1999-2001, 2006-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 1999-2001, 2006-2014, 2019-2021 Free Software Foundation, Inc.
 # This file may be modified and/or copied without restriction.
 
 # list of files containing translatable strings
@@ -15,7 +15,6 @@ lib/regcomp.c
 lib/rpmatch.c
 lib/version-etc.c
 lib/xalloc-die.c
-lib/xstrtol-error.c
 libparted/arch/beos.c
 
 partprobe/partprobe.c
index 63db9e2f6653291f8e53d248e0733c607f4db75b..84f43ead3f307f2d337a440508bd3ac2babb6e96 100644 (file)
Binary files a/po/ca.gmo and b/po/ca.gmo differ
index dd8d40dc7f06b52aac78e8a7352833a30dc8ac1b..cbed00f7c953b775db99d0d2ceef45188648f5a6 100644 (file)
--- a/po/ca.po
+++ b/po/ca.po
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 1.6.0\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2002-05-05 14:47+0100\n"
 "Last-Translator: Miquel Matas <miquelmatas@wanadoo.es>\n"
 "Language-Team: Catalan <ca@dodds.net>\n"
@@ -96,11 +96,11 @@ msgstr ""
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr ""
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr ""
 
@@ -341,79 +341,64 @@ msgstr ""
 msgid "memory exhausted"
 msgstr ""
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr ""
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr ""
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr ""
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr ""
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Error obrint %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
 msgstr ""
 "No s'ha pogut obrir %s lectura/escritura (%s). %s s'ha obert només lectura. "
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s mentre es preparava per llegir a %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s mentre s'estava llegint a %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "No s'ha pogut escriure a %s, ja que era obert per només lectura"
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s mentre es preparava per escruire a %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s mentre s'estava escrivint a %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr ""
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -423,13 +408,13 @@ msgid ""
 "  -v, --version    output version information and exit\n"
 msgstr ""
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
 msgstr ""
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -445,44 +430,7 @@ msgstr "No s'ha pogut obrir %s"
 msgid "Unable to probe store."
 msgstr "No s'ha pogut provar d'emmagatzemar."
 
-#: libparted/arch/gnu.c:368
-#, fuzzy
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"La taula de particions no s'ha pogut rellegir, per tant es necessita fer "
-"reboot abans de muntar una partició modificada. També es necessita "
-"reinstal·lar el carregador d'arrencada abans de reinicialitzar ( que pot "
-"necessitar el muntatge de les particions modificades ). No és possible fer "
-"les dues coses! Per tant, necessites arrencar amb un disquet de rescat i "
-"reinstal·lar el carregador d'arrencada des del disc de rescat. Llegeix la "
-"secció 4 de la documentació de l'Usuari de Parted per més informació. "
-
-#: libparted/arch/gnu.c:385
-#, fuzzy, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"La taula de particions a %s (%s).Aixó vol dir que Linux no reconeixerà cap "
-"de les modificacions fetes. S'ha de re-arrencar la màquina abans de fer res "
-"amb %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"S'ha de reinstal·lar el carregador d'arrencada abans de rearrencar llegir la "
-"secció 4 de la documentació de l'Usuari de Parted per més informació."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s intentant de sincronitzar %s al dics"
@@ -789,15 +737,15 @@ msgstr "metadata"
 msgid "free"
 msgstr "lliure"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "extesa"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "lògica"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primària"
 
@@ -875,64 +823,73 @@ msgstr ""
 msgid "esp"
 msgstr "Sí"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "boot"
+
+#: libparted/disk.c:2419
 #, fuzzy, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Flag desconegut a %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Informació"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Perill"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Error"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Fatal"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Bug"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "No Implementat"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Fix"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Sí"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "No"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "D'accord"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Reintentar"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Ignorar"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Cancel·lar"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -941,33 +898,33 @@ msgid ""
 "containing at least the version (%s) and the following message:  "
 msgstr ""
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 #, fuzzy
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr ""
 "El suport per crear sistemes de fitxers de %s encara no està implementat."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 #, fuzzy
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr ""
 "El suport per crear sistemes de fitxers de %s encara no està implementat."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 #, fuzzy
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "El suport per crear sistemes de fitxers de %s encara no està implementat."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 #, fuzzy
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "El suport per crear sistemes de fitxers de %s encara no està implementat."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 #, fuzzy
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
@@ -975,7 +932,7 @@ msgid ""
 msgstr ""
 "El suport per crear sistemes de fitxers de %s encara no està implementat."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 #, fuzzy
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
@@ -1065,11 +1022,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "No s'ha pogut satisfer les limitacions a la partició"
@@ -1086,44 +1043,44 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "S'esperava un múmero de partició."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 #, fuzzy
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "No s'ha pogut reservar una etiqueta bsd"
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 #, fuzzy
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "No s'ha pogut reservar una etiqueta bsd"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, fuzzy, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Taula de particions invàlida a %s - signatura dolenta %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Taula de particions invàlida - partició recursiva a %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr ""
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "Taula de particions invàlida - partició recursiva a %s."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 #, fuzzy
 msgid "cannot create any more partitions"
 msgstr "No es pot crear cap més partició."
@@ -1271,12 +1228,12 @@ msgstr ""
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 #, fuzzy
 msgid "device is too small for GPT"
 msgstr "Sistema de fitxers massa petit per ext2."
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, fuzzy, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1285,7 +1242,7 @@ msgstr ""
 "El format de la taula de particions GPT és més nou que el que Parted pot "
 "reconeixer. Si-us-plau, diga'ns-ho a  bug-parted@gnu.org"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1293,7 +1250,7 @@ msgid ""
 "setting? "
 msgstr ""
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 #, fuzzy
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
@@ -1303,7 +1260,7 @@ msgstr ""
 "voler dir que un altre sistema operatiu creu que el disc és més petit. Ho "
 "voleu arreglar novent la còpia al final ( i esborrant la còpia antiga)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 #, fuzzy
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
@@ -1313,7 +1270,7 @@ msgstr ""
 "taula actualitzada, i fent servir la opció de rescat de Parted per "
 "reconstruïr les particions."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 #, fuzzy
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
@@ -1322,7 +1279,7 @@ msgstr ""
 "La taula primària GPT és corrupte, però la còpia sembla correcta, per tant "
 "es farà servir aquesta."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 #, fuzzy
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
@@ -1331,11 +1288,11 @@ msgstr ""
 "La taula primària GPT és corrupte, però la còpia sembla correcta, per tant "
 "es farà servir aquesta."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr ""
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 #, fuzzy
 msgid "failed to translate partition name"
 msgstr "No s'ha pogut determinar si la partició està muntada."
@@ -1370,26 +1327,21 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "La regió de dades no comença al principi de la partició"
 
 #: libparted/labels/mac.c:572
-#, fuzzy
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "La regió d'arrencada no comemça al principi de la partició"
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "La regió d'arrencada de la partició no ocupa la partició sencera."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "La regió de dades de la partició no ocupa la partició sencera."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr ""
 "La mida de bloc extrany al dispositiu: %d bytes no és divisible per 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1398,11 +1350,11 @@ msgstr ""
 "El controlador diu que el tamany de bloc físic és de %d bytes, però Linux "
 "troba que és de %d bytes."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "No s'ha trobat un mapa de particions vàlid."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, fuzzy, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1411,12 +1363,12 @@ msgstr ""
 "Conflicte de mida de entrada del mapa de particions! La entrada 1 diu que és "
 "%d, però la entrada %d diu que és %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 #, fuzzy
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Estrany - 2 entrades de mapes de particions!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1424,18 +1376,18 @@ msgstr ""
 "Canviar el nom d'una partició root o swap impedirà que Linux les reconeixi "
 "com a tals."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 #, fuzzy
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr ""
 "No es pot afegir una altra partició - el mapa de particions és massa petit!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, fuzzy, c-format
 msgid "Invalid partition table on %s."
 msgstr "Taula de particions invàlida a %s"
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, fuzzy, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1444,7 +1396,7 @@ msgstr ""
 "La partició %d no està aliniada als límits dels cilindres. Cal afegir suport "
 "per aquesta característica."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "No es pot afegir un altra partició."
 
@@ -1617,39 +1569,39 @@ msgstr ""
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr ""
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Sense memòria."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr ""
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr ""
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr ""
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr ""
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr ""
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr ""
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr ""
 
@@ -1659,18 +1611,18 @@ msgstr ""
 msgid "%s : Failed to allocate partition block\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1696,22 +1648,22 @@ msgstr ""
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s mentre s'estava escrivint a %s"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr ""
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 #, fuzzy
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
@@ -1813,7 +1765,7 @@ msgid ""
 "geometry."
 msgstr ""
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1840,14 +1792,14 @@ msgstr ""
 "El començament delta de cluster = %d, que no és multiple de la mida de "
 "cluster %d. "
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Entrada de directori incorrecta per %s: el primer clúster és el final de la "
 "marca de fitxer."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1855,7 +1807,7 @@ msgstr ""
 "FAT incorrecta: cadena sense acabar per %s. Has de executar dosfsck o "
 "scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, fuzzy, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1864,7 +1816,7 @@ msgstr ""
 "FAT incorrecta: clúster %d fora del sistema de fitxers a la cadena per %s. "
 "Has de executar dosfsck o scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1873,26 +1825,17 @@ msgstr ""
 "FAT incorrecta: clúster %d té un enllaç creuat per %s. Has d'executar "
 "dosfsck o scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, fuzzy, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s és %dk, però té %d clústers (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"El fitxer %s està marcat com un sistema de fitxers.  Això vol dir que si el "
-"moveu por ocasionar que alguns programes no funcionin."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, fuzzy, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Partició massa gran/petita per un sistema de fitxers %s"
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1900,11 +1843,11 @@ msgstr ""
 "Les FATs no coincideixen. Si no saps què vols dir aixó, llavors selecciona "
 "cancelar, executa scandisk al sistema de fitxers, i després torna."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "No hi ha configuracions possibles per aquest tipus de FAT."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1916,7 +1859,7 @@ msgstr ""
 "(hauria de ser de %d); la mida de FAT és de %d sectors ( hauria de ser de %d "
 "sectors)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
@@ -1924,7 +1867,7 @@ msgstr ""
 "El sistema de fitxers diu que la mida de l'espai lliure en clústers és de "
 "%d, no de %d clústers."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 #, fuzzy
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
@@ -1933,17 +1876,17 @@ msgstr ""
 "No hi ha espai suficient al directori root, per a tots els fitxers. O bé, "
 "cancel·lar, o bé, Ignorar perdent els fitxers. "
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Error escribint al directori root."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 #, fuzzy
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr ""
 "Si deixes el sistema de fitxers com FAT16, llavors no tindràs problemes"
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1954,7 +1897,7 @@ msgstr ""
 "vols fer aixó, hauries de consultar el manual de Parted ( o el manual de la "
 "teva distribució)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -1962,7 +1905,7 @@ msgstr ""
 "Si deixes el teu sistema de fitxers com a FAT32, llavors no tindràs més "
 "problemes."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1976,35 +1919,35 @@ msgstr ""
 "teva distribució). També, convertint a FAT32 faràs que MS DOS, MS Windows "
 "95a i Windows NT no puguin llegir el sistema de fitxers "
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Vol fer servir FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "El sistema de fitxers només pot ser redimensionada a aquesta mida covertint-"
 "la a FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "El sistema de fitxers només pot ser redimensionada a aquesta mida covertint-"
 "la a FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 #, fuzzy
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
@@ -2012,7 +1955,7 @@ msgstr ""
 "GNU Parted no por redimensionar aquesta partició a aquesta mida. Estem "
 "treballant en aixó!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2021,44 +1964,44 @@ msgstr ""
 "La FAT %d del medi %x no coincideix amb sector boot del medi %x.  Hauries "
 "d'executar scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, fuzzy, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: clúster %ld fora del sistema de fitxers"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, fuzzy, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: clúster %ld fora del sistema de fitxers"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: no hi ha clústers lliures"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "No s'ha pogut detectar el sistema de fitxers."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, fuzzy, c-format
 msgid "resizing %s file systems is not supported"
 msgstr ""
 "El suport per redimensionar sistemes de fitxers de %s encara no està "
 "implementat."
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 #, fuzzy
 msgid "The file system is bigger than its volume!"
 msgstr "El sistema de fitxers és més gran que ho és el volum!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr ""
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr ""
 
@@ -2116,90 +2059,90 @@ msgstr ""
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "encongint"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 #, fuzzy
 msgid "writing HFS Master Directory Block"
 msgstr "Error escribint al directori root."
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 #, fuzzy
 msgid "Error while writing the allocation file."
 msgstr "Error escribint al directori root."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 #, fuzzy
 msgid "shrinking HFS wrapper"
 msgstr "encongint"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2270,73 +2213,73 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 #, fuzzy
 msgid "Could not cache the file system in memory."
 msgstr "No s'ha pogut detectar el sistema de fitxers."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "mostra aquest missatge d'ajuda"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr ""
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr ""
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "mai pregunta a l'usuari"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "mostra la versió"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 #, fuzzy
 msgid "alignment for new partitions"
 msgstr "No es poden copiar particions exteses."
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 #, fuzzy
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
@@ -2346,57 +2289,57 @@ msgstr ""
 "msdos, les particions primàries són numeradas de 1 a 4, i les particions "
 "lògiques de la 5 en davant.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "TIPUS-ETI és una d'aquestes: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "FLAG és una d'aquests:"
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 #, fuzzy
 msgid "UNIT is one of: "
 msgstr "FLAG és una d'aquests:"
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr ""
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "TIPUS-PART és una d'aquestes: primària, lògica, extesa\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "TIPUS-SF és un d'aquests: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
 "sector.\n"
 msgstr ""
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
 msgstr ""
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "ESTAT és un d'aquests: on, off\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "DISPOS és, normalment, /dev/hda o /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NOM és qualsevol paraula que vulguis\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 #, fuzzy
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
@@ -2417,155 +2360,155 @@ msgstr ""
 "General Pública GNU.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(temps que queda %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "La(s) partició(ns) a %s s'està utilitzant."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
 "will be lost. Do you want to continue?"
 msgstr ""
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Nou tipus d'etiqueta?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Tipus de partició?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Nom de la partició?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Sistema de fitxers?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Inici?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Fi?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
 "The closest location we can manage is %s to %s (sectors %llu..%llu).%s"
 msgstr ""
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
 msgstr ""
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "Les etiquetes de disc de %s no suporten particions exteses."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Número de partició?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr ""
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, fuzzy, c-format
 msgid "Disk %s: %s\n"
 msgstr "Tipus d'etiqueta: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr ""
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, fuzzy, c-format
 msgid "Partition Table: %s\n"
 msgstr "Nom de la partició?"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, fuzzy, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Tipus d'etiqueta: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr ""
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 #, fuzzy
 msgid "Start"
 msgstr "Inici?"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 #, fuzzy
 msgid "End"
 msgstr "Fi?"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr ""
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr ""
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 #, fuzzy
 msgid "File system"
 msgstr "Sistema de fitxers?"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr ""
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Flags"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr ""
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, fuzzy, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2574,82 +2517,82 @@ msgstr ""
 "Una partició %s %s ha estat trobada a %.3fMb -> %.3fMb.  Vols afegir-la a la "
 "taula de particions?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 #, fuzzy
 msgid "searching for file systems"
 msgstr "sistema de fitxers creixent"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr ""
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Nou dispositiu?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr ""
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr ""
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, c-format
 msgid "%d not aligned: %s\n"
 msgstr ""
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 #, fuzzy
 msgid "Flag to Invert?"
 msgstr "Flag a canviar?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Nou estat?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr ""
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 #, fuzzy
 msgid "align-check"
 msgstr "comprova"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
 msgstr ""
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "ajuda"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 #, fuzzy
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
 msgstr "Ajuda [ORDRE]                 imprimeix ajuda general, o ajuda d'ORDRE"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr ""
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 #, fuzzy
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
@@ -2657,16 +2600,16 @@ msgid ""
 msgstr ""
 "mklabel TIPUS-ETI        crea una nova etiqueta de disc (taula de partició)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 #, fuzzy
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart TIPUS-PART [TIPUS-SF] INICI FI      crea una partició"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 #, fuzzy
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
@@ -2675,196 +2618,204 @@ msgstr ""
 "mkpart crea una partició sense crear cap sistema de fitxers a la partició. "
 "TIPUS-SF ha de ser especificat per assignar una ID de partició.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 #, fuzzy
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr "name MINOR NOM               anomena la partició MINOR NOM"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
 "partition"
 msgstr ""
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
 msgstr ""
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
 msgstr ""
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 #, fuzzy
 msgid "quit                                     exit program"
 msgstr "quit                          surt del programa"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescatar"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 #, fuzzy
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
 msgstr "rescatar INICI FI        rescata particions perdudes entre INICI i FI"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr ""
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 #, fuzzy
 msgid "resizepart"
 msgstr "resize"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 #, fuzzy
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "rm MINOR                      suprimeix la partició MINOR"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 #, fuzzy
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm MINOR                      suprimeix la partició MINOR"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 #, fuzzy
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select DISPOSITIU                 escollir el dispositiu a editar"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr ""
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr ""
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
 msgstr ""
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 #, fuzzy
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr "set MINOR FLAG ESTAT          canvia un flag a la partició MINOR"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr ""
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
 msgstr ""
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr ""
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 #, fuzzy
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr "quit                          surt del programa"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr ""
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
 msgstr ""
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
 msgstr ""
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "No s'ha trobat el dispositiu"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr ""
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"S'ha de reinstal·lar el carregador d'arrencada abans de rearrencar llegir la "
+"secció 4 de la documentació de l'Usuari de Parted per més informació."
+
+#: parted/parted.c:2341
 #, fuzzy
 msgid "You may need to update /etc/fstab.\n"
 msgstr "No us oblideu d'actualitzar /etc/fstab si cal.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 #, fuzzy
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
@@ -2877,7 +2828,7 @@ msgstr ""
 "ORDRES, s'executa en\n"
 "mode interactiu.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2911,216 +2862,217 @@ msgid ""
 "consider important.\n"
 msgstr ""
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
 msgstr ""
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
 msgstr ""
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
 msgstr ""
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
 msgstr ""
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
 msgstr ""
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
 msgstr ""
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
 msgstr ""
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
 msgstr ""
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
 msgstr ""
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
 msgstr ""
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
 msgstr ""
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
 msgstr ""
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
 msgstr ""
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
 msgstr ""
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
 msgstr ""
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
 msgstr ""
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
 msgstr ""
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
 msgstr ""
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
 msgstr ""
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
 msgstr ""
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, fuzzy, c-format
 msgid "invalid token: %s"
 msgstr "Taula de particions invàlida a %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "S'esperava un múmero de partició."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "La partició no existeix."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "S'esperava un tipus de sistema de fitxers."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Tipus de sistema de fitxers desconegut \"%s\"."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "S'esperava un tipus de etiqueta de dics."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "No es pot crear cap més partició."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "S'esperava un tipus de partició."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "on"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "off"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr ""
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr ""
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "OPCIONS:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "ORDRES:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
 "Report bugs to %s\n"
 msgstr ""
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Utilitzant %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr ""
 
+#, c-format
 #~ msgid ""
 #~ "The sector size on %s is %d bytes.  Parted is known not to work properly "
 #~ "with drives with sector sizes other than %d bytes"
@@ -3128,6 +3080,7 @@ msgstr ""
 #~ "La mida del sector a %s és de %d bytes. Parted no funcionarà correctament "
 #~ "amb discs d'una mida de sector diferent de %d bytes"
 
+#, c-format
 #~ msgid "Device %s has dodgey geometry."
 #~ msgstr "El dispositiu %s té una geometria incorrecte."
 
@@ -3137,12 +3090,15 @@ msgstr ""
 #~ msgid "SCSI"
 #~ msgstr "SCSI"
 
+#, c-format
 #~ msgid "Device %s is neither a SCSI nor IDE drive."
 #~ msgstr "El dispositiu %s no és ni SCSI ni IDE"
 
+#, c-format
 #~ msgid "Error reading %s (%s) to determine if partition is mounted."
 #~ msgstr "Error al llegir %s (%s) per determinar si la partició està muntada."
 
+#, c-format
 #~ msgid ""
 #~ "The kernel was unable to re-read the partition table on %s (%s).  This "
 #~ "means Linux won't know anything nothing about the modifications you made "
@@ -3153,6 +3109,34 @@ msgstr ""
 #~ "dir que Linux no reconeixerà cap de les modificacions fetes. Heu "
 #~ "d'arrencar la màquina abans de fer res amb %s."
 
+#~ msgid ""
+#~ "The partition table was unable to be reread, as such, you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "La taula de particions no s'ha pogut rellegir, per tant es necessita fer "
+#~ "reboot abans de muntar una partició modificada. També es necessita "
+#~ "reinstal·lar el carregador d'arrencada abans de reinicialitzar ( que pot "
+#~ "necessitar el muntatge de les particions modificades ). No és possible "
+#~ "fer les dues coses! Per tant, necessites arrencar amb un disquet de "
+#~ "rescat i reinstal·lar el carregador d'arrencada des del disc de rescat. "
+#~ "Llegeix la secció 4 de la documentació de l'Usuari de Parted per més "
+#~ "informació. "
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s (%s).  This means the Hurd knows nothing about "
+#~ "any modifications you made.  You should reboot your computer before doing "
+#~ "anything with %s."
+#~ msgstr ""
+#~ "La taula de particions a %s (%s).Aixó vol dir que Linux no reconeixerà "
+#~ "cap de les modificacions fetes. S'ha de re-arrencar la màquina abans de "
+#~ "fer res amb %s."
+
+#, c-format
 #~ msgid ""
 #~ "The partition table on %s is inconsistent.  There are many reasons why "
 #~ "this might be the case.  However, the most likely reason is that Linux "
@@ -3175,6 +3159,7 @@ msgstr ""
 #~ "continuar ( i arregleu Linux després). Si no, seleccioneu Cancel·lar ( i "
 #~ "arregleu Linux i/o la BIOS ara mateix)."
 
+#, c-format
 #~ msgid ""
 #~ "The partition table on %s is inconsistent.  There are many reasons why "
 #~ "this might be the case.  Often, the reason is that Linux detected the "
@@ -3203,6 +3188,7 @@ msgstr ""
 #~ "més segur és Ignorar, però si s'ignora pot causar problemes (que es "
 #~ "podren arreglar)amb alguns carregadors d'arrencada."
 
+#, c-format
 #~ msgid ""
 #~ "%s contains GPT signatures, indicating that it has a GPT table.  However, "
 #~ "it does not have a valid fake msdos partition table, as it should.  "
@@ -3217,10 +3203,15 @@ msgstr ""
 #~ "taula GPT i ara feu servir una taula de particions msdos. És aquesta una "
 #~ "partició GPT? "
 
+#~ msgid "The boot region doesn't start at the start of the partition"
+#~ msgstr "La regió d'arrencada no comemça al principi de la partició"
+
+#, c-format
 #~ msgid "Support for opening %s file systems is not implemented yet."
 #~ msgstr ""
 #~ "El suport per obrir sistemes de fitxers de %s encara no està implementat."
 
+#, c-format
 #~ msgid "Support for checking %s file systems is not implemented yet."
 #~ msgstr ""
 #~ "El suport per comprovar sistemes de fitxers de %s encara no està "
@@ -3232,6 +3223,7 @@ msgstr ""
 #~ msgid "Can't copy onto an overlapping partition."
 #~ msgstr "No es pot copiar a una partició solapada."
 
+#, c-format
 #~ msgid ""
 #~ "Direct support for copying file systems is not yet implemented for %s.  "
 #~ "However, support for resizing implemented.  Therefore, the file system "
@@ -3245,10 +3237,12 @@ msgstr ""
 #~ "nova partició és, com a mínim, tant gran com la antiga. Per tant, o es "
 #~ "contrau la partició que es vol copiar o es copia a una partició més gran."
 
+#, c-format
 #~ msgid "Support for copying %s file systems is not implemented yet."
 #~ msgstr ""
 #~ "Suport per copiar sistemes de fitxers %s encara no està implementat."
 
+#, c-format
 #~ msgid ""
 #~ "A bug has been detected in GNU parted.  Please email a bug report to bug-"
 #~ "parted@gnu.org containing the version (%s) and the following message:"
@@ -3256,6 +3250,7 @@ msgstr ""
 #~ "S'ha detectat un bug a GNU Parted. Si-us-plau, envieu un e-mail a bug-"
 #~ "parted@gnu.org que contingui la versió (%s) i el següent missatge:"
 
+#, c-format
 #~ msgid "Attempt to read sectors %ld-%ld outside of partition on %s"
 #~ msgstr "S'ha intentat llegir sectors %ld-%ld fora de la partició a %s"
 
@@ -3308,11 +3303,13 @@ msgstr ""
 #~ msgid "adding groups"
 #~ msgstr "afegint grups"
 
+#, c-format
 #~ msgid "Your filesystem is too occupied to resize it to %i blocks. Sorry."
 #~ msgstr ""
 #~ "El sistema de fitxers està massa ocupat en redimensionar-se a %i blocs.Ho "
 #~ "sento."
 
+#, c-format
 #~ msgid ""
 #~ "Your filesystem has too much occupied inodes to resize it to %i blocks. "
 #~ "Sorry."
@@ -3325,9 +3322,11 @@ msgstr ""
 #~ "S'ha trobat blocs amb enllaços creuats! Millor que primer s'executi "
 #~ "e2fsck!"
 
+#, c-format
 #~ msgid "Block %i has no reference?  Weird"
 #~ msgstr "El bloc %i no té referència? Extrany"
 
+#, c-format
 #~ msgid "Block %i shouldn't have been marked!"
 #~ msgstr "El bloc %i no hauria d'estar marcat!"
 
@@ -3353,6 +3352,7 @@ msgstr ""
 #~ "El sistema de fitxers té una signatura invàlida per a un sistema de "
 #~ "fitxers FAT."
 
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3360,6 +3360,7 @@ msgstr ""
 #~ "Aquest sistema de fitxers té una mida de sector lògic de %d. GNU Parted "
 #~ "no treballarà correctament amb mides de sectors diferents de 512 bytes."
 
+#, c-format
 #~ msgid ""
 #~ "The FATs aren't big enough to describe all clusters!  Each FAT is %d "
 #~ "sectors.  There are %d clusters, which would require each FAT to be %d "
@@ -3371,6 +3372,14 @@ msgstr ""
 #~ "tingui %d sectors.  Això és molt extrany. Ens podries escriure un e-mail "
 #~ "a: bug-parted@gnu.org"
 
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "El fitxer %s està marcat com un sistema de fitxers.  Això vol dir que si "
+#~ "el moveu por ocasionar que alguns programes no funcionin."
+
 #~ msgid "Too many bad pages."
 #~ msgstr "Massa pàgines incorrectes."
 
@@ -3389,6 +3398,7 @@ msgstr ""
 #~ msgid "Destination partition number?"
 #~ msgstr "Número de partició destí?"
 
+#, c-format
 #~ msgid ""
 #~ "You requested to create a partition at %.3f-%.3fMb. The closest Parted "
 #~ "can manage is %.3f-%.3fMb."
@@ -3409,6 +3419,7 @@ msgstr ""
 #~ "No es por moure una partició a ella mateixa.  Vols redimensionar-la, "
 #~ "potser?"
 
+#, c-format
 #~ msgid ""
 #~ "You requested to move the partition to %.3f-%.3fMb. The closest Parted "
 #~ "can manage is %.3f-%.3fMb."
@@ -3416,24 +3427,30 @@ msgstr ""
 #~ "Has demanat de moure una partició a %.3f-%.3fMb. El més proper que Parted "
 #~ "pot manegar és %.3f-%.3fMb."
 
+#, c-format
 #~ msgid "Minor: %d\n"
 #~ msgstr "Minor: %d\n"
 
 #~ msgid "Flags: "
 #~ msgstr "Flags:"
 
+#, c-format
 #~ msgid "File System: %s\n"
 #~ msgstr "Sistema de fitxers:%s\n"
 
+#, c-format
 #~ msgid "Size:         %10.3fMb (%d%%)\n"
 #~ msgstr "Mida:         %10.3fMb (%d%%)\n"
 
+#, c-format
 #~ msgid "Minimum size: %10.3fMb (%d%%)\n"
 #~ msgstr "Mida mínima: %10.3fMb (%d%%)\n"
 
+#, c-format
 #~ msgid "Maximum size: %10.3fMb (%d%%)\n"
 #~ msgstr "Mida màxima: %10.3fMb (%d%%)\n"
 
+#, c-format
 #~ msgid "Disk geometry for %s: 0.000-%.3f megabytes\n"
 #~ msgstr "La geometria del disc per %s: 0.000-%.3f megabytes\n"
 
@@ -3449,6 +3466,7 @@ msgstr ""
 #~ msgid "Name                  "
 #~ msgstr "Nom                   "
 
+#, c-format
 #~ msgid ""
 #~ "You requested to resize the partition to %.3f-%.3fMb. The closest Parted "
 #~ "can manage is %.3f-%.3fMb."
@@ -3508,6 +3526,7 @@ msgstr ""
 #~ "resize MINOR INICI FI        redimensiona el sistema de fitxers a la "
 #~ "partició MINOR"
 
+#, c-format
 #~ msgid ""
 #~ "You found a bug in GNU Parted.  Please email a bug report to bug-"
 #~ "parted@gnu.org containing the version (%s), and the following message:\n"
@@ -3527,6 +3546,7 @@ msgstr ""
 #~ "FAT. D'altra manera, assegura't que el sistema operatiu i la BIOS tenen "
 #~ "la mateixa geometria abans de canviar de mida qualservol partició FAT."
 
+#, c-format
 #~ msgid ""
 #~ "The operating system thinks the geometry on %s is %d/%d/%d.  Therefore, "
 #~ "cylinder 1024 ends at %.3fM.%s"
@@ -3534,5 +3554,6 @@ msgstr ""
 #~ "El sistema operatiu creu que la geometria a %s és %d/%d/%d.  El cilindre "
 #~ "1024 acaba a %.3fM.%s"
 
+#, c-format
 #~ msgid "The operating system thinks the geometry on %s is %d/%d/%d.%s"
 #~ msgstr "El sistema operatiu creu que la geometria a %s és %d/%d/%d.%s"
index 31b927d62b6bade819334a27cbedacb681afe6be..e808b01e2826ed9b5409ba3a15ff6c275a5e9ee7 100644 (file)
Binary files a/po/cs.gmo and b/po/cs.gmo differ
index adde028021fceab11566965b48402476037b8f48..59ef903be8c11f251ab403677025cf32c7c02524 100644 (file)
--- a/po/cs.po
+++ b/po/cs.po
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 1.8.8\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2007-09-11 14:02+0200\n"
 "Last-Translator: Miloslav Trmac <mitr@volny.cz>\n"
 "Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
@@ -94,11 +94,11 @@ msgstr "%s: přepínač vyžaduje parametr -- %c\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "„"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "”"
 
@@ -367,79 +367,64 @@ msgstr ""
 msgid "memory exhausted"
 msgstr "došla paměť"
 
-#: lib/xstrtol-error.c:63
-#, fuzzy, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "neplatný token: %s"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr ""
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr ""
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Obraz disku"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Chyba při otevírání %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
 msgstr ""
 "Nemohu otevřít %s pro čtení/zápis (%s). %s bylo otevřeno jen pro čtení."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s při seek pro čtení %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s při čtení %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Nemohu zapisovat na %s, protože je otevřen jen pro čtení."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s při seek pro zápis na %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s při zápisu na %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Pro více informací zkuste `%s --help'.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "použití: %s [PŘEPÍNAČ] [ZAŘÍZENÍ]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -455,7 +440,7 @@ msgstr ""
 "  -h, --help       zobrazit tuto nápovědu a skončit\n"
 "  -v, --version    vypsat informace o verzi a skončit\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -463,7 +448,7 @@ msgstr ""
 "\n"
 "Když není zadáno ZAŘÍZENÍ, prozkoumat všechny oddíly.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -481,42 +466,7 @@ msgstr "Nemohu otevřít %s."
 msgid "Unable to probe store."
 msgstr "Nemohu prozkoumat úložný prostor."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Nebylo možné znovu načíst tabulku oddílů. To znamená, že budete muset před "
-"připojením změněných oddílů restartovat počítač. Také musíte před restartem "
-"reinstalovat svůj zavaděč systému (což může vyžadovat připojení změněných "
-"oddílů). Nelze provést obojí! Takže budete muset zavést systém ze "
-"záchranného disku a reinstalovat svůj zavaděč systému odtud. Pro více "
-"informací si přečtěte oddíl 4 Uživatelské dokumentace Parted."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Tabulku oddílů na %s nelze znovu načíst (%s). To znamená, že Hurd neví nic o "
-"změnách, které jste provedli. Než budete cokoli dělat s %s, měli byste "
-"restartovat svůj počítač."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Před restartem byste měli reinstalovat svůj zavaděč systému. Pro více "
-"informací si přečtěte oddíl 4 Uživatelské dokumentace Parted."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s při pokusu sync %s na disk"
@@ -829,15 +779,15 @@ msgstr "metadata"
 msgid "free"
 msgstr "volné"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "rozšířený"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logický"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primární"
 
@@ -915,64 +865,73 @@ msgstr ""
 msgid "esp"
 msgstr "Ano"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Neznámý příznak oddílu, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Informace"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Varování"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Chyba"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Fatální"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Chyba"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Neimplementováno"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Opravit"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Ano"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Ne"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Znovu"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Ignorovat"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Zrušit"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, fuzzy, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -985,29 +944,29 @@ msgstr ""
 "parted.html! Pošlete prosím e-mailem hlášení o chybě na bug-parted@gnu.org "
 "obsahující alespoň verzi (%s) a následující zprávu:"
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "Podpora pro čtení jmenovek disku AIXu ještě není implementována."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "Podpora pro zápis jmenovek disku AIXu ještě není implementována."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "Podpora pro přidávání oddílů do jmenovek disku AIXu ještě není "
 "implementována."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "Podpora pro duplikování oddílů ve jmenovkách disku AIXu ještě není "
 "implementována."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1015,7 +974,7 @@ msgstr ""
 "Podpora pro nastavování typu systému oddílů ve jmenovkách disku AIXu ještě "
 "není implementována."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 "Podpora pro nastavování přepínačů ve jmenovkách disku AIXu ještě není "
@@ -1107,11 +1066,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Nemohu splnit všechna omezení na oddíl."
@@ -1127,43 +1086,43 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Nemohu alokovat číslo oddílu."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Nemohu alokovat položku jmenovky disku bsd."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Nemohu alokovat položku jmenovky disku dasd"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Neplatná tabulka oddílů na %s - nesprávný podpis %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Neplatná tabulka oddílů - rekurzivní oddíl na %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "Rozšířené oddíly nelze na jmenovkách disku msdos skrývat."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "Rozšířené oddíly nelze na jmenovkách disku msdos skrývat."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted neumí měnit velikost oddílů spravovaných pomocí Windows Dynamic Disk."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 #, fuzzy
 msgid "cannot create any more partitions"
 msgstr "Nemohu vytvářet další oddíly."
@@ -1304,12 +1263,12 @@ msgstr "Nemohu získat informace o velikosti bloku."
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 #, fuzzy
 msgid "device is too small for GPT"
 msgstr "Zařízení pro %lu bloků příliš malé."
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, fuzzy, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1318,7 +1277,7 @@ msgstr ""
 "Formát tabulky oddílů GPT je verze %x, což je novější, než kterou umí "
 "rozpoznat Parted. Oznamte nám to prosím! bug-parted@gnu.org"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1329,7 +1288,7 @@ msgstr ""
 "používala všechno místo (dalších %llu bloků) nebo pokračovat se současným "
 "nasatvením? "
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 #, fuzzy
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
@@ -1339,7 +1298,7 @@ msgstr ""
 "že jiný operační systém si myslí, že disk je menší. Mám to opravit "
 "přesunutím zálohy na konec (a odstraněním staré zálohy)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1347,7 +1306,7 @@ msgstr ""
 "Primární i záložní tabulka GPT je poškozena. Zkuste vytvořit novou tabulku a "
 "obnovit oddíly pomocí schopnosti Partedu rescue."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 #, fuzzy
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
@@ -1356,7 +1315,7 @@ msgstr ""
 "Primární tabulka GPT je poškozena, ale záloha se zdá být v pořádku, takže "
 "bude použita záloha."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1364,11 +1323,11 @@ msgstr ""
 "Primární tabulka GPT je poškozena, ale záloha se zdá být v pořádku, takže "
 "bude použita záloha."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr ""
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 #, fuzzy
 msgid "failed to translate partition name"
 msgstr "Nemohu alokovat číslo oddílu."
@@ -1402,25 +1361,21 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Datový region nezačíná na začátku oddílu."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Zaváděcí region nezačíná na začátku oddílu."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Zaváděcí region oddílu nezabírá celý oddíl."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Datový region oddílu nezabírá celý oddíl."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr ""
 "Podivná velikost bloku v deskriptoru zařízení: %d bajtů není dělitelné 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1429,11 +1384,11 @@ msgstr ""
 "Deskriptor ovladače říká, že fyzická velikost bloku je %d bajtů ale Linux "
 "říká, že je to %d bajtů."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Nenalezena platná mapa oddílů."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1442,11 +1397,11 @@ msgstr ""
 "Kolidující velikosti položek mapy oddílů! Položka 1 říká, že je to %d, ale "
 "položka %d říká, že je to %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Podivné! Existují 2 položky mapy oddílu!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1454,16 +1409,16 @@ msgstr ""
 "Změna názvu kořenového nebo odkládacího oddílu zabrání Linuxu v jeho "
 "rozpoznání."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "Nemohu přidat další oddíl — mapa oddílů je příliš malá!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Neplatná tabulka oddílů na %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1471,7 +1426,7 @@ msgid ""
 msgstr ""
 "Oddíl %d není zarovnán na hranice cylindru. To pořád ještě není podporováno."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Nemohu přidat další oddíl."
 
@@ -1642,39 +1597,39 @@ msgstr "Nemohu zapisovat FMT7 DSCB VTOC."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Nemohu zapisovat FMT1 DSCB VTOC."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Nedostatek paměti."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Nemohu získat velikost jednotky pro speciální jednotku 'COMPACT'."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "\"%s\" má neplatnou syntax umístění."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Maximální hodnota hlavy je %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Maximální hodnota sektoru je %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "Umístění %s je mimo zařízení %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Neplatné číslo."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr ""
 
@@ -1684,18 +1639,18 @@ msgstr ""
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : Nemohu alokovat blok oddílu\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : Nemohu alokovat blok\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : Nemohu číst zaváděcí blok %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1721,22 +1676,22 @@ msgstr "%s : Špatný kontrolní součet bloku %llu typu %s\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : Nemohu zapsat blok %d\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s : Nemohu alokovat disk_specific blok rdb\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s : Nenašeljsem blok rdb, to by se nemělo nikdy stát\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : Nemohučíst blok oddílu %llu\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1831,7 +1786,7 @@ msgstr ""
 "systému souborů bude nastavena tak, aby odpovídala geometrii CHS tabulky "
 "oddílů."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1856,12 +1811,12 @@ msgid ""
 "Cluster start delta = %d, which is not a multiple of the cluster size %d."
 msgstr "Změna začátku clusteru = %d, což není násobek velikosti clusteru %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr "Špatná položka adresáře pro %s: první cluster je značka konce souboru."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1869,7 +1824,7 @@ msgstr ""
 "Špatná FAT: neukončený řetězec pro %s. Měli byste spustit dosfsck nebo "
 "scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1878,7 +1833,7 @@ msgstr ""
 "Špatná FAT: cluster %d je mimo systém souborů v řetězci pro %s. Měli byste "
 "spustit dosfsck nebo scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1887,26 +1842,17 @@ msgstr ""
 "Špatná FAT: cluster %d pro %s má křížové odkazy. Měli byste spustit dosfsck "
 "nebo scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s je %dk, ale má %d clusterů (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"Soubor %s je označen jako systémový soubor. To znamená, že jeho přesun může "
-"způsobit, že některé programy přestanou fungovat."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Oddíl je příliš velký/malý pro systém souborů %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1914,11 +1860,11 @@ msgstr ""
 "Tabulky FAT si neodpovídají. Pokud nevíte, co to znamená, zvolte Zrušit, "
 "spusťte na systému souborů scandisk a pak se vraťte."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Pro tento typ FAT neexistuje možná konfigurace."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1929,13 +1875,13 @@ msgstr ""
 "clusteru je %dk (očekáváno %dk); počet clusterů je %d (očekáváno %d); "
 "velikost FAT je %d sektorů (očekáváno %d)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr "Systém souborů oznamuje volné místo jako %d clusterů, ne %d clusterů."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1943,16 +1889,16 @@ msgstr ""
 "V kořenovém adresáři není dostatek místa pro všechny souborů. Zvolte buď "
 "Zrušit, nebo Ignorovat pro ztrátu těchto souborů."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Chyba při zápisu do kořenového adresáře."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr ""
 "Pokud svůj systém souborů ponecháte jako FAT16, nebudete mít žádné problémy."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1962,7 +1908,7 @@ msgstr ""
 "musíte reinstalovat zavaděč systému MS Windows. Pokud to chcete udělat, měli "
 "byste si přečíst manuál Partedu (nebo manuál své distribuce)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -1970,7 +1916,7 @@ msgstr ""
 "Pokud svůj systém souborů ponecháte jako FAT16, nezpůsobíte žádné nové "
 "problémy."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1984,42 +1930,42 @@ msgstr ""
 "FAT32 také učiní systém souborů nečitelným pro MS DOS, MS Windows 95a a MS "
 "Windows NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Chcete použít FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "Velikost systému souborů může být na tuto hodnotu změněna jen převodem na "
 "FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "Velikost systému souborů může být na tuto hodnotu změněna jen převodem na "
 "FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted neumí změnit velikost tohoto oddílu na tuto hodnotu. Pracujeme na "
 "tom!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2028,42 +1974,42 @@ msgstr ""
 "FAT %d media %x neodpovídá media %x zaváděcího sektoru. Pravděpodobně byste "
 "měli spustit scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: cluster %ld mimo systém souborů"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: cluster %ld mimo systém souborů"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: nejsou volné clustery"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Nemohu detekovat systém souborů."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, fuzzy, c-format
 msgid "resizing %s file systems is not supported"
 msgstr ""
 "Podpora pro změnu velikosti souborových systémů %s ještě není implementována."
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "Systém souborů je větší než jeho obsah!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "Systém souborů obsahuje chyby."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "Nelze číst špatné bloky."
 
@@ -2125,61 +2071,61 @@ msgstr "Nemohu najít sektor %lli souboru HFS+ s CNID %X."
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "Pokus zapisovat do souboru HFS+ s CNID %X za konec souboru."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "Lituji, HFS zatím nelze takto měnit velikost."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "zmenšuji"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Přesun dat selhal."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr "Přesun dat nechal na konci svazku nějaká data."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "zapisuhi blok hlavního adresáře HFS"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "Při otevírání nebyl nalezen platný podpis HFS[+X]."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "Verze %d HFS+ není podporována."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "Verze %d HFSX není podporována."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "Přesun dat nechal na konci svazku nějaká data."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Chyba při zápisu do souboru alokací."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "Chyba při zápisu do části pro kompatibilitu souboru alokací."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "zapisuji hlavičku svazku HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "Při hledání povinného souboru špatných bloků došlo k chybě."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2187,27 +2133,27 @@ msgstr ""
 "V obalu HFS je zřejmě chyba: soubor špatných bloků neobsahuje vložený svazek "
 "HFS+."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "Lituji, HFS+ zatím nelze takto měnit velikost."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "zmenšuji vložený svazek HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Změna velikosti svazku HFS+ selhala."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "zmenšuji obal HFS"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "Aktualizace obalu HFS selhala."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2285,7 +2231,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Rozsah nebyl přesunut."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2293,16 +2239,16 @@ msgstr ""
 "Odkaz na rozsah přichází z místa, ze kterého by neměla. Měli byste "
 "zkontrolovat systém souborů!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "Tento svazek HFS nemá soubor katalogu. To je velice neobvyklé!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Tento svazek HFS nemá soubor přetečení rozsahů. To je celkem neobvyklé!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2310,53 +2256,53 @@ msgstr ""
 "Soubor přetečení rozsahů by neměl obsahovat své vlastní rozsahy! Měli byste "
 "zkontrolovat systém souborů."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Nemohu kešovat systém souborů v paměti."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "Seznam špatných bloků nelze načíst."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Při přesunu rozsahu došlo k chybě."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "Tento svazek HFS+ nemá soubor katalogu. To je velice neobvyklé!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Tento svazek HFS+ nemá soubor přetečení rozsahů. To je celkem neobvyklé!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "zobrazí tuto zprávu nápovědy"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "vypíše rozložení oddílů na všech blokových zařízeních"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "zobrazí strojově zpracovatelný výstup"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "nikdy nežádá o intervenci uživatele"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "zobrazí verzi"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 #, fuzzy
 msgid "alignment for new partitions"
 msgstr "Nemohu vytvářet další oddíly."
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2364,31 +2310,31 @@ msgstr ""
 "ČÍSLO je číslo oddílu používané Linuxem. Na jmenovkách disku MS-DOS mají "
 "primární oddíly čísla 1-4 a logické oddíly od 5 dál.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "TYP-JMENOVKY je jeden z: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "PŘEPÍNAČ je jeden z: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "JEDNOTKA je jedna z: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr ""
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "TYP-ODDÍLU je jeden z: primary, logical, extended\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "TYP-FS je jeden z: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2397,7 +2343,7 @@ msgstr ""
 "ZAČÁTEK a KONEC jsou místa na disku, např. 4GB nebo 10%. Záporné hodnoty se "
 "počítají od konce disku. Například -1s určuje přesně poslední sektor.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 #, fuzzy
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
@@ -2406,19 +2352,19 @@ msgstr ""
 "ZAČÁTEK a KONEC jsou místa na disku, např. 4GB nebo 10%. Záporné hodnoty se "
 "počítají od konce disku. Například -1s určuje přesně poslední sektor.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "STAV je jeden z: on, off\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "ZAŘÍZENÍ je obvykle /dev/hda nebo /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NÁZEV je libovolné slovo\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2438,23 +2384,23 @@ msgstr ""
 "podrobnosti najdete v GNU General Public License.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(zbylý čas %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, fuzzy, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr ""
 "Oddíl %s se používá. Než jej budete upravovat Partedem, musíte jej odpojit."
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Oddíl(a) na %s jsou používány."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2463,31 +2409,31 @@ msgstr ""
 "Existující jmenovka disku na %s bude zničena a všechna data na tomto disku "
 "budou ztracena. Chcete pokračovat?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Typ nové jmenovky disku?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Typ oddílu?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Název oddílu?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Typ souborového systému?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Začátek?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Konec?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, fuzzy, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2497,99 +2443,99 @@ msgstr ""
 "Nejbližší umístění, které zvládneme, je %s až %s. Je to pro vás ještě "
 "přijatelné?"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
 msgstr ""
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "Jmenovky disku %s nepodporují rozšířené oddíly."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Číslo oddílu?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr "Geometrie cylindr,hlava,sektor BIOSu: %d,%d,%d. Každý cylindr je %s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Model: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Disk %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Sector size (logical/physical): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Tabulka oddílů: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, fuzzy, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Disk %s: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Číslo"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Začátek"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Konec"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Velikost"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Typ"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Systém souborů"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Název"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Přepínače"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Volné místo"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2597,65 +2543,65 @@ msgid ""
 msgstr ""
 "Byl nalezen oddíl %s %s na %s -> %s. Chcete jej přidat do tabulky oddílů?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "hledám systémy souborů"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr ""
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Nové zařízení?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr ""
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr ""
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, c-format
 msgid "%d not aligned: %s\n"
 msgstr ""
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Přepínač, který změnit?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Nový stav?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Jednotka?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 #, fuzzy
 msgid "align-check"
 msgstr "check"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
 msgstr ""
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2663,15 +2609,15 @@ msgstr ""
 "help [PŘÍKAZ]                            vypsat obecnou nápovědu nebo "
 "nápovědu o PŘÍKAZu"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2679,15 +2625,15 @@ msgstr ""
 "mklabel,mktable TYP-JMENOVKY             vytvořit novou jmenovku disku "
 "(tabulku oddílů)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart TYP-ODDÍLU [TYP-FS] ZAČÁTEK KONEC  vytvořit oddíl"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2695,19 +2641,19 @@ msgstr ""
 "'mkpart' vytvoří oddíl bez vytvoření nového systému souborů na něm. TYP-FS "
 "může být určen pro nastavení odpovídajícího ID oddílu.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr "name ČÍSLO NÁZEV                         pojmenovat oddíl ČÍSLO NÁZEV"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2716,7 +2662,7 @@ msgstr ""
 "print [devices|free|list,all|ČÍSLO]      zobrazit tabulku oddílů, dostupná "
 "zařízení, volné místo, všechny nalezené oddíly, nebo konkrétní oddíl"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2724,11 +2670,11 @@ msgstr ""
 "'print' bez parametrů zobrazí celou tabulku oddílů. S následujícími "
 "parametry ale provede různé jiné akce.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : zobrazit všechna aktivní bloková zařízení\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2736,32 +2682,32 @@ msgstr ""
 "  free      : zobrazit informace o volném místě mimo oddíly na aktuálním "
 "blokovém zařízení\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all : zobrazit tabulky oddílů všech aktivních blokových zařízení\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 "  ČÍSLO     : zobrazit podrobnější informace o tomto konkrétním oddílu\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                     ukončit program"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2769,57 +2715,57 @@ msgstr ""
 "rescue ZAČÁTEK KONEC                     zachránit ztracený oddíl poblíž "
 "ZAČÁTKU a KONCE"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr ""
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 #, fuzzy
 msgid "resizepart"
 msgstr "resize"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 #, fuzzy
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "move ČÍSLO ZAČÁTEK KONEC                 přesunout oddíl ČÍSLO"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm ČÍSLO                                 odstranit oddíl ČÍSLO"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select ZAŘÍZENÍ                          zvolit upravované zařízení"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr ""
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 #, fuzzy
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 "set ČÍSLO PŘEPÍNAČ STAV                  změnit PŘEPÍNAČ na oddílu ČÍSLO"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 #, fuzzy
 msgid "disk_toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 #, fuzzy
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
@@ -2828,21 +2774,21 @@ msgstr ""
 "toggle [ČÍSLO [PŘEPÍNAČ]]                přepnout stav PŘEPÍNAČE na oddílu "
 "ČÍSLO"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "set ČÍSLO PŘEPÍNAČ STAV                  změnit PŘEPÍNAČ na oddílu ČÍSLO"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2850,21 +2796,21 @@ msgstr ""
 "toggle [ČÍSLO [PŘEPÍNAČ]]                přepnout stav PŘEPÍNAČE na oddílu "
 "ČÍSLO"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "unit JEDNOTKA                            nastavit implicitní jednotku na "
 "JEDNOTKA"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2872,7 +2818,7 @@ msgstr ""
 "version                                  zobrazit číslo verze a informace o "
 "copyrightu GNU Parted"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2880,29 +2826,37 @@ msgstr ""
 "'version' zobrazí informace o copyrightu a informace o verzi odpovídající "
 "této kopii GNU Parted\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, fuzzy, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr "Použití: %s [-hlmsv] [ZAŘÍZENÍ [PŘÍKAZ [PARAMETRY]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Nenalezeno žádné zařízení"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 #, fuzzy
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "VAROVÁNÍ: Nejste superuživatel. Pozor na oprávnění."
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Před restartem byste měli reinstalovat svůj zavaděč systému. Pro více "
+"informací si přečtěte oddíl 4 Uživatelské dokumentace Parted."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Možná budete potřebovat aktualizovat /etc/fstab.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr "Vítá vás GNU Parted! Zobrazte seznam příkazů napsáním 'help'.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2913,7 +2867,7 @@ msgstr ""
 "Provést PŘÍKAZy s PARAMETRY na ZAŘÍZENÍ. Není-li zadán PŘÍKAZ, spustit\n"
 "v interaktivním režimu.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2976,7 +2930,7 @@ msgstr ""
 "Také přidejte další informace o vaší konfiguraci, které\n"
 "považujete za důležité.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -2984,7 +2938,7 @@ msgstr ""
 "\n"
 "Historie příkazů:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -2992,7 +2946,7 @@ msgstr ""
 "\n"
 "Chyba: SEGV_MAPERR (Adresa nepřiřazena objektu)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3000,7 +2954,7 @@ msgstr ""
 "\n"
 "Chyba: SEGV_ACCERR (Neplatné oprávnění namapovaného objektu)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3008,7 +2962,7 @@ msgstr ""
 "\n"
 "Chyba: Byl přijat obecný signál SIGSEGV.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3016,7 +2970,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_INTDIV (Celá čísla: dělení nulou)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3024,7 +2978,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_INTOVF (Celá čísla: přetečení)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3032,7 +2986,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_FLTDIV (Plovoucí: dělení nulou)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3040,7 +2994,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_FLTOVF (Plovoucí: přetečení)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3048,7 +3002,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_FLTUND (Plovoucí: podtečení)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3056,7 +3010,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_FLTRES (Plovoucí: nepřesný výsledek)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3064,7 +3018,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_FLTINV (Plovoucí: neplatný výsledek)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3072,7 +3026,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_FLTSUB (Plovoucí: index mimo rozsah)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3080,7 +3034,7 @@ msgstr ""
 "\n"
 "Chyba: Byl přijat obecný signál SIGFPE."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3088,7 +3042,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_ILLOPC (Neplatný kód operace)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3096,7 +3050,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_ILLOPN (Neplatný parametr)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3104,7 +3058,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_ILLADR (Neplatný režim adresování)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3112,7 +3066,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_ILLTRP (Neplatné zachycení)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3120,7 +3074,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_PRVOPC (Privilegovaný kód operace)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3128,7 +3082,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_PRVREG (Privilegovaný registr)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3136,7 +3090,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_COPROC (Chyba koprocesoru)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3144,7 +3098,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_BADSTK (Interní chyba zásobníku)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3152,69 +3106,69 @@ msgstr ""
 "\n"
 "Chyba: Byl přijat obecný signál SIGILL."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "neplatný token: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Očekávám číslo oddílu."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Oddíl neexistuje."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Očekávám typ systému souborů."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Neznámý typ systému souborů \"%s\"."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Očekávám typ jmenovky disku."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Nemohu vytvářet další oddíly."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Očekávám typ oddílu."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "on"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "off"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr ""
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr ""
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "PŘEPÍNAČe:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "PŘÍKAZy:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, fuzzy, c-format
 msgid ""
 "\n"
@@ -3223,30 +3177,36 @@ msgstr ""
 "\n"
 "Chyby hlaste na <%s>.\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Používám %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Tento příkaz nedává smysl v neinteraktivním režimu.\n"
 
+#, c-format
 #~ msgid "%s: option `--%s' doesn't allow an argument\n"
 #~ msgstr "%s: přepínač `--%s' nepovoluje parametr\n"
 
+#, c-format
 #~ msgid "%s: unrecognized option `--%s'\n"
 #~ msgstr "%s: neznámý přepínač `--%s'\n"
 
+#, c-format
 #~ msgid "%s: illegal option -- %c\n"
 #~ msgstr "%s: neplatný přepínač -- %c\n"
 
+#, c-format
 #~ msgid "%s: option `-W %s' is ambiguous\n"
 #~ msgstr "%s: přepínač `-W %s' není jednoznačný\n"
 
+#, c-format
 #~ msgid "%s: option `-W %s' doesn't allow an argument\n"
 #~ msgstr "%s: přepínač `-W %s' nepovoluje parametr\n"
 
+#, c-format
 #~ msgid ""
 #~ "Usage: %s [OPTION]\n"
 #~ "  or:  %s DEVICE MINOR\n"
@@ -3268,12 +3228,40 @@ msgstr "Tento příkaz nedává smysl v neinteraktivním režimu.\n"
 #~ msgid "      --version  output version information and exit\n"
 #~ msgstr "      --version  vypsat informace o verzi a skončit\n"
 
+#, c-format
 #~ msgid "too few arguments"
 #~ msgstr "příliš málo parametrů"
 
+#, c-format
 #~ msgid "too many arguments"
 #~ msgstr "příliš mnoho parametrů"
 
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Nebylo možné znovu načíst tabulku oddílů. To znamená, že budete muset "
+#~ "před připojením změněných oddílů restartovat počítač. Také musíte před "
+#~ "restartem reinstalovat svůj zavaděč systému (což může vyžadovat připojení "
+#~ "změněných oddílů). Nelze provést obojí! Takže budete muset zavést systém "
+#~ "ze záchranného disku a reinstalovat svůj zavaděč systému odtud. Pro více "
+#~ "informací si přečtěte oddíl 4 Uživatelské dokumentace Parted."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "Tabulku oddílů na %s nelze znovu načíst (%s). To znamená, že Hurd neví "
+#~ "nic o změnách, které jste provedli. Než budete cokoli dělat s %s, měli "
+#~ "byste restartovat svůj počítač."
+
+#, c-format
 #~ msgid ""
 #~ "Device %s has a logical sector size of %lld.  Not all parts of GNU Parted "
 #~ "support this at the moment, and the working code is HIGHLY EXPERIMENTAL.\n"
@@ -3282,6 +3270,7 @@ msgstr "Tento příkaz nedává smysl v neinteraktivním režimu.\n"
 #~ "Parted to momentálně podporují, a fungující kód je VELICE "
 #~ "EXPERIMENTÁLNÍ.\n"
 
+#, c-format
 #~ msgid ""
 #~ "parted was unable to re-read the partition table on %s (%s).  This means "
 #~ "Linux won't know anything about the modifications you made. "
@@ -3289,6 +3278,7 @@ msgstr "Tento příkaz nedává smysl v neinteraktivním režimu.\n"
 #~ "parted nemohl znovu načíst tabulku oddílů na %s (%s). To znamená, že "
 #~ "Linux nebude vědět nic o změnách, které jste provedli."
 
+#, c-format
 #~ msgid ""
 #~ "The kernel was unable to re-read the partition table on %s (%s).  This "
 #~ "means Linux won't know anything about the modifications you made until "
@@ -3300,14 +3290,17 @@ msgstr "Tento příkaz nedává smysl v neinteraktivním režimu.\n"
 #~ "nerestartujete systém. Měli byste svůj počítač restartovat, než budete s "
 #~ "%s něco dělat."
 
+#, c-format
 #~ msgid "Support for opening %s file systems is not implemented yet."
 #~ msgstr ""
 #~ "Podpora pro otevírání souborových systémů %s ještě není implementována."
 
+#, c-format
 #~ msgid "Support for creating %s file systems is not implemented yet."
 #~ msgstr ""
 #~ "Podpora pro vytváření souborových systémů %s ještě není implementována."
 
+#, c-format
 #~ msgid "Support for checking %s file systems is not implemented yet."
 #~ msgstr ""
 #~ "Podpora pro kontrolu souborových systémů %s ještě není implementována."
@@ -3321,6 +3314,7 @@ msgstr "Tento příkaz nedává smysl v neinteraktivním režimu.\n"
 #~ msgid "Can't copy onto an overlapping partition."
 #~ msgstr "Nemohu kopírovat do překrývajícího se oddílu."
 
+#, c-format
 #~ msgid ""
 #~ "Direct support for copying file systems is not yet implemented for %s.  "
 #~ "However, support for resizing is implemented.  Therefore, the file system "
@@ -3334,6 +3328,7 @@ msgstr "Tento příkaz nedává smysl v neinteraktivním režimu.\n"
 #~ "starý. Takže buď zmenšete oddíl, který se pokoušíte zkopírovat, nebo "
 #~ "kopírujte do většího oddílu."
 
+#, c-format
 #~ msgid "Support for copying %s file systems is not implemented yet."
 #~ msgstr ""
 #~ "Podpora pro kopírování souborových systémů %s ještě není implementována."
@@ -3379,12 +3374,14 @@ msgstr "Tento příkaz nedává smysl v neinteraktivním režimu.\n"
 #~ msgid "copying"
 #~ msgstr "kopíruji"
 
+#, c-format
 #~ msgid "Couldn't resolve symbol %s.  Error: %s."
 #~ msgstr "Nemohu nalézt symbol %s. Chyba: %s."
 
 #~ msgid "GNU Parted found an invalid libreiserfs library."
 #~ msgstr "GNU Parted nalezl neplatnou knihovnu libreiserfs."
 
+#, c-format
 #~ msgid ""
 #~ "GNU Parted has detected libreiserfs interface version mismatch.  Found %d-"
 #~ "%d, required %d. ReiserFS support will be disabled."
@@ -3398,6 +3395,7 @@ msgstr "Tento příkaz nedává smysl v neinteraktivním režimu.\n"
 #~ msgid "This is not an ECKD disk!  This disk type is not supported!"
 #~ msgstr "Toto není disk ECKD! Tento typ disku není podporován!"
 
+#, c-format
 #~ msgid ""
 #~ "%s contains GPT signatures, indicating that it has a GPT table.  However, "
 #~ "it does not have a valid fake msdos partition table, as it should.  "
@@ -3411,6 +3409,9 @@ msgstr "Tento příkaz nedává smysl v neinteraktivním režimu.\n"
 #~ "jste možná odstranili tabulku oddílů GPT a nyní používáte tabulku oddílů "
 #~ "msdos. Je toto tabulka oddílů GPT?"
 
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "Zaváděcí region nezačíná na začátku oddílu."
+
 #~ msgid "Inconsistent group descriptors!"
 #~ msgstr "Nekonzistentní deskriptory skupin!"
 
@@ -3455,11 +3456,13 @@ msgstr "Tento příkaz nedává smysl v neinteraktivním režimu.\n"
 #~ msgid "adding groups"
 #~ msgstr "přidávám skupiny"
 
+#, c-format
 #~ msgid "Your file system is too full to resize it to %i blocks.  Sorry."
 #~ msgstr ""
 #~ "Váš systém souborů je příliš plný na to, abych mohl změnit jeho velikost "
 #~ "na %i bloků. Lituji."
 
+#, c-format
 #~ msgid ""
 #~ "Your file system has too many occupied inodes to resize it to %i blocks.  "
 #~ "Sorry."
@@ -3497,9 +3500,11 @@ msgstr "Tento příkaz nedává smysl v neinteraktivním režimu.\n"
 #~ msgid "Cross-linked blocks found!  Better go run e2fsck first!"
 #~ msgstr "Nalezeny bloky s křížovými odkazy! Radši nejdřív spusťte e2fsck!"
 
+#, c-format
 #~ msgid "Block %i has no reference?  Weird."
 #~ msgstr "Blok %i nemá odkaz? Divné."
 
+#, c-format
 #~ msgid "Block %i shouldn't have been marked (%d, %d)!"
 #~ msgstr "Blok %i by neměl být označen (%d, %d)!"
 
@@ -3522,6 +3527,7 @@ msgstr "Tento příkaz nedává smysl v neinteraktivním režimu.\n"
 #~ msgid "File system too small for ext2."
 #~ msgstr "Systém souborů příliš malý pro ext2."
 
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3529,6 +3535,14 @@ msgstr "Tento příkaz nedává smysl v neinteraktivním režimu.\n"
 #~ "Systém souborů má logickou velikost sektoru %d. Ví se, že GNU Parted "
 #~ "nepracuje správně s velikostí sektoru jinou než 512 bajtů."
 
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "Soubor %s je označen jako systémový soubor. To znamená, že jeho přesun "
+#~ "může způsobit, že některé programy přestanou fungovat."
+
 #~ msgid "Too many bad pages."
 #~ msgstr "Příliš mnoho špatných stránek."
 
@@ -3559,12 +3573,15 @@ msgstr "Tento příkaz nedává smysl v neinteraktivním režimu.\n"
 #~ msgid "Can't move a partition onto itself.  Try using resize, perhaps?"
 #~ msgstr "Nemohu přesunout oddíl na sebe. Možná zkuste použít resize?"
 
+#, c-format
 #~ msgid "Minor: %d\n"
 #~ msgstr "Minor: %d\n"
 
+#, c-format
 #~ msgid "Flags: %s\n"
 #~ msgstr "Přepínače: %s\n"
 
+#, c-format
 #~ msgid "File System: %s\n"
 #~ msgstr "Systém souborů: %s\n"
 
index 98c9d1cdce7aae068e2ebf99aafd652f28d12cde..d314564916a2adb8f97ed0e0068eea6a5751df5e 100644 (file)
Binary files a/po/da.gmo and b/po/da.gmo differ
index fc87fe5f85121ac4d816676f3e2c682af4056f24..fa99ae13c0467fce7c000f5a863568a8c1534e1f 100644 (file)
--- a/po/da.po
+++ b/po/da.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 3.0\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2011-06-03 23:23+0200\n"
 "Last-Translator: Keld Simonsen <keld@keldix.com>\n"
 "Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
@@ -96,11 +96,11 @@ msgstr "%s: flaget kr
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "'"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "'"
 
@@ -370,32 +370,17 @@ msgstr ""
 msgid "memory exhausted"
 msgstr "slut på hukommelse"
 
-#: lib/xstrtol-error.c:63
-#, fuzzy, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "ugyldigt %s%s-argument '%s'"
-
-#: lib/xstrtol-error.c:68
-#, fuzzy, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "ugyldigt suffiks i %s%s-argumentet '%s'"
-
-#: lib/xstrtol-error.c:72
-#, fuzzy, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s-argumentet '%s' er for stort"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Diskafbildning"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "En fejl opstod da %s åbnedes: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -403,47 +388,47 @@ msgstr ""
 "Kunne ikke åbne %s for både læsning og skrivning (%s). %s åbnedes i "
 "læsetilstand."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s under positionering for at læse på %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s under læsning på %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Kan ikke skrive til %s eftersom den kun er åbnet i læsetilstand."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s under positionering for at skrive på %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s under skrivning på %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Prøv '%s --help' for mere information.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Brug: %s [FLAG] [ENHED]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -459,7 +444,7 @@ msgstr ""
 "  -h, --help       vis denne hjælpetekst og afslut\n"
 "  -v, --version    vis versionsinformation og afslut\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -467,7 +452,7 @@ msgstr ""
 "\n"
 "Når ingen ENHED er sngivet, så undersøg alle partitioner.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -486,43 +471,7 @@ msgstr "Kunne ikke 
 msgid "Unable to probe store."
 msgstr "Kunne ikke undersøge lageret."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Partitionstabellen kan ikke genindlæses. Dette betyder at du skal starte "
-"maskinen op igen inden du kan montere nogen ændrede partitioner. Du skal "
-"også geninstallere opstartsprogrammet inden du genstarter (hvilket kan "
-"indebære montering af ændrede partitioner). Det er umuligt at gøre begge "
-"dele! Så du skal starte fra en redningsdiskette og geninstallere "
-"opstartsprogrammet fra redningsdisketten. Læs kapitel 4 i Parteds "
-"brugermanual for mere information."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Partitionstabellen på %s kan ikke genindlæses (%s). Det betyder at Hurd ikke "
-"véd noget som helst om de ændringer du lavede. Du bør genstarte maskinen "
-"inden du gør noget som helst med %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Du bør geninstallere opstartsprogrammet inden du genopstarter. Læs sektion 4 "
-"i Parteds brugermanual for mere information."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s prøver at synkronisere %s med disk"
@@ -843,15 +792,15 @@ msgstr "metadata"
 msgid "free"
 msgstr "ledigt"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "udvidet"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logisk"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primær"
 
@@ -929,64 +878,73 @@ msgstr ""
 msgid "esp"
 msgstr "Ja"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "start"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Ukendt partitionsflag, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Information"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Advarsel"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Fejl"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Fatal"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Programfejl"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Ikke implementeret"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Reparér"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Ja"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Nej"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "O.k."
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Forsøg igen"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Ignorér"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Annullér"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -999,30 +957,30 @@ msgstr ""
 "nyttigt for fejlrapportering! Send en fejlrapport med e-post til %s hvor du "
 "angiver versionsnumret (%s) og følgende meddelelse:"
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr ""
 "Understøttelse for at læse AIX disketiketter er ikke implementeret endnu."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr ""
 "Understøttelse for at skrive AIX disketiketter er ikke implementeret endnu."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "Understøttelse for at tilføje AIX disketiketter er ikke implementeret endnu."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "Understøttelse for at duplikere AIX disketiketter er ikke implementeret "
 "endnu."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1030,7 +988,7 @@ msgstr ""
 "Understøttelse for at sætte systemtype på partitioner i AIX disketiketter er "
 "ikke implementeret endnu."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 "Understøttelse for at sætte flag i AIX disketiketter er ikke implementeret "
@@ -1121,11 +1079,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Kunne ikke opfylde alle begrænsninger på partitionen."
@@ -1141,44 +1099,44 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Kan ikke tildele et partitionsnummer."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Kan ikke tildele en plads til bsd-disketikette."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Kan ikke tildele en plads til dasd-disketikette"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Ugyldig partitionstabel på %s - fejlagtig signatur %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Ugyldig partitionstabel - rekursiv partition på %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "Udvidede partitioner kan ikke være skjulte i etiketter af typen msdos."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "Udvidede partitioner kan ikke være skjulte i etiketter af typen msdos."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted kan ikke ændre størrelse på partitioner som håndteres af Windows "
 "Dynamic Disk."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 #, fuzzy
 msgid "cannot create any more partitions"
 msgstr "Kan ikke tilføje flere partitioner."
@@ -1323,11 +1281,11 @@ msgstr "Kunne ikke f
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr ""
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1336,7 +1294,7 @@ msgstr ""
 "Formatet på GPT-partitionstabellen er version %x, hvilket er nyere end hvad "
 "Parted kan genkende. Rapportér gerne dette!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1347,7 +1305,7 @@ msgstr ""
 "GPT til at bruge al pladsen (%llu blokke mere), eller fortsæt med at bruge "
 "den aktuelle indstilling? "
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 #, fuzzy
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
@@ -1358,7 +1316,7 @@ msgstr ""
 "Skal det rettes ved at flytte sikkerhedskopien til slutningen (og fjerne den "
 "gamle sikkerhedskopi)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1366,7 +1324,7 @@ msgstr ""
 "Både den primære GPT-tabel og sikkerhedskopien er ødelagt. Prøv at lave en "
 "frisk tabel, og at genskabe partitioner med Parteds redningsfacilitet."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1374,7 +1332,7 @@ msgstr ""
 "Sikkerhedskopien af GPT-tabellen er ødelagt, men den primære tabel ser ud "
 "til at være i orden, så den vil blive brugt."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1382,11 +1340,11 @@ msgstr ""
 "Den primære GPT-tabel er ødelagt, men sikkerhedskopien ser ud til at være i "
 "orden, så den vil blive brugt."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "Uoverensstemmelse for CRC på primær partitionstabel"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 #, fuzzy
 msgid "failed to translate partition name"
 msgstr "Kan ikke tildele et partitionsnummer."
@@ -1420,18 +1378,14 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Dataområdet begynder ikke ved partitionens begyndelse."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Startområdet begynder ikke ved partitionens begyndelse"
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Partitionens opstartområde optager ikke hele partitionens plads."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Partitionens dataområde optager ikke hele partitionens plads."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
@@ -1439,7 +1393,7 @@ msgstr ""
 "Mærkelig blokstørrelse på enhedens beskriver: %d byte er ikke helt delbart "
 "med 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1448,11 +1402,11 @@ msgstr ""
 "Enhedens beskriver påstår at den fysiske blokstørrelse er %d byte, men Linux "
 "påstår at den er %d byte."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Ingen gyldig partitionstabel kunne findes."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1461,11 +1415,11 @@ msgstr ""
 "Konfliktende størrelsesdata i partitionstabellen! Post 1 påstår den er %d, "
 "mens post %d påstår den er %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Mærkeligt! Der er 2 poster i partitionstabellen!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1473,16 +1427,16 @@ msgstr ""
 "At ændre navnet på en rod- eller swappartition gør at Linux ikke kan "
 "genkende dem."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "Kan ikke tilføje endnu en partition - partitionstabellen er for lille!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Ugyldig partitionstabel på %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1491,7 +1445,7 @@ msgstr ""
 "Partitionen %d ligger ikke på hel cylindergrænse. Dette er stadig ikke "
 "understøttelset."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Kan ikke tilføje endnu en partition."
 
@@ -1667,39 +1621,39 @@ msgstr "Kunne ikke skrive VTOC FMT7 DSCB."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Kunne ikke skrive VTOC FMT1 DSCB."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Ikke mere hukommelse."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Kan ikke få fat på enhedsstørrelse på specialenhed 'COMPACT'."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "'%s' indeholder en ugyldig syntaks for placeringer."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Den maksimale værdi for hoved er %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Den maksimale sektor-værdi er %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "Placeringen %s er udenfor enheden %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Ugyldigt nummer."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr ""
 
@@ -1709,18 +1663,18 @@ msgstr ""
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : Mislykkedes med at allokere partitionsblok\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : Mislykkedes med at allokere blok\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : Kunne ikke læse startblok %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1746,22 +1700,22 @@ msgstr "%s : Fejlagtig kontrolsum p
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : Kunne ikke skrive blok %d\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s : Mislykkedes med at allokere dikspecifik rdb-blok\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s :Fandt ikke rdb-blok, dette burde aldig kunne ske\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : Mislykkedes med at læse partitionsblok %llu\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1857,7 +1811,7 @@ msgstr ""
 "vil filsystemets CHS-geometri bilve sat til at matche partitionstabellens "
 "CHS-geometri."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1880,59 +1834,52 @@ msgid ""
 "Cluster start delta = %d, which is not a multiple of the cluster size %d."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
 "dosfsck or scandisk."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
 "scandisk."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, fuzzy, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Partition %d er %s, men filsystemet er %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
 msgstr ""
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr ""
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1940,40 +1887,40 @@ msgid ""
 "FATs is %d sectors (%d expected)."
 msgstr ""
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
 "should consult the Parted manual (or your distribution's manual)."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1982,79 +1929,79 @@ msgid ""
 "Windows 95a, and MS Windows NT."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
 "probably run scandisk."
 msgstr ""
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr ""
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr ""
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr ""
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 #, fuzzy
 msgid "Could not detect file system."
 msgstr "Kunne ikke tage status på enheden %s - %s."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, fuzzy, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "Forventer en filsystemstype."
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 #, fuzzy
 msgid "The file system is bigger than its volume!"
 msgstr "Disk-etiketten beskriver en disk større end %s."
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr ""
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr ""
 
@@ -2112,88 +2059,88 @@ msgstr ""
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 #, fuzzy
 msgid "Data relocation has failed."
 msgstr "Hukommelsesallokeringen mislykkedes"
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2258,71 +2205,71 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "viser denne hjælpetekst"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "lister partitionslayout for alle blokenheder"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "viser udskriften på maskintolkningsbar måde"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "spørger aldrig brugeren om alternativer"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "viser versionen"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "justering for nye partitioner"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2331,31 +2278,31 @@ msgstr ""
 "er de primære partitioner numrerede fra 1 til 4, og de logiske partitioner "
 "fra 5 og opad.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "LABEL-TYPE er en af:"
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "FLAG er et af: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "ENHED er et af: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "ønsket tilpasning: mindste eller bedste"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "PART-TYPE er en af: primær, logisk, udvidet\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "FS-TYPE er en af: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2365,7 +2312,7 @@ msgstr ""
 "regnes fra slutningen på disken. For eksempel angiver -1s præcist den sidste "
 "sektor.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 #, fuzzy
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
@@ -2375,19 +2322,19 @@ msgstr ""
 "regnes fra slutningen på disken. For eksempel angiver -1s præcist den sidste "
 "sektor.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "TILSTAND er en af: på, af\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "ENHED er normalt /dev/hda eller /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NAVN er et vilkårligt ord\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2406,24 +2353,24 @@ msgstr ""
 "SALGBARHED eller EGNETHED FOR NOGET SPECIELT FORMÅL. Se GNU General\n"
 "Public License for yderligere information.\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(tid tilbage %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, fuzzy, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr ""
 "Partitionen %s bruges. Du skal afmontere den inden du kan ændre den med "
 "Parted."
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Partitionen på %s er i brug."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2432,31 +2379,31 @@ msgstr ""
 "Den eksisterende disketikette på %s vil blive ødelagt og alle data på denne "
 "disk vil gå tabt. Vil du fortsætte?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Type på ny disketikette?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Type på partitionen"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Navn på partitionen?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Type på filsystemet?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Start?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Slut?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, fuzzy, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2465,7 +2412,7 @@ msgstr ""
 "Du bad om at oprette en partition fra %s til %s.\n"
 "Det nærmeste Parted kan klare er fra %s til %s.%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2473,94 +2420,94 @@ msgstr ""
 "\n"
 "Er dette stadigvæk acceptabelt for dig?"
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, fuzzy, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr "Den resulterende partition er ikke rigtigt justeret for bedste ydelse."
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "Filallokeringstabeller for %s understøtter ikke udvidede partitioner."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Nummer på partitionen?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 "BIOS-geometri for cylinder,hoved,sektor: %d,%d,%d. Hver cylinder er %s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Model: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Disk %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Sektorstørrelse (logisk/fysisk): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Partitionstabel: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, fuzzy, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Disk %s: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Nummer"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Start"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Slut"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Størrelse"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Type"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Filsystem"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Name"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Flag"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Fri plads"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2569,54 +2516,54 @@ msgstr ""
 "En %s %s partition blev fundet på %s -> %s. Ønsker du at tilføje den til "
 "partitionstabellen?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "leder efter filsystemer"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr ""
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Ny enhed?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "justeringstype (min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d justeret\n"
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, fuzzy, c-format
 msgid "%d not aligned: %s\n"
 msgstr "%d ikke justeret\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Flag at invertere?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Ny tilstand?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Enhed?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
@@ -2625,11 +2572,11 @@ msgstr ""
 "align-check TYPE N                        tjek partition N for TYPE(min|opt) "
 "justering"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "hjælp"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2637,15 +2584,15 @@ msgstr ""
 "hjælp [KOMMANDO]                         udskriver generel hjælp, eller "
 "speciel hjælp for KOMMANDO"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2653,15 +2600,15 @@ msgstr ""
 "mklabel,mktable ETIKETTE-TYPE            opret en ny disketikette "
 "(partitionstabel)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart PARTITIONSTYPE [FS-TYPE] START SLUT    lav en partition"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2669,20 +2616,20 @@ msgstr ""
 "'mkpart' laver en partition uden at oprette et nyt filsystem på partitionen. "
 "FS-TYPE kan angives for at sætte en passende identitet på partitionen.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "name NUMMER NAVN                         navngiv partition NUMMER som NAVN"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2692,7 +2639,7 @@ msgstr ""
 "tilgængelige enheder, ledig plads, alle partitioner som blev fundet, eller "
 "en specifik partition"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2701,11 +2648,11 @@ msgstr ""
 "en partition er angivet vil mere detaljeret information om denne partition "
 "blive vist.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : vis alle aktive blokenheder\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2713,31 +2660,31 @@ msgstr ""
 "  free      : vis information om ledig upartitioneret plads på den aktuelle "
 "blokenhed\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr "  list, all : vis partitionstabellerne på alle aktive blokenheder\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 "  NUMMER    : vis mere detaljeret information om denne specifikke partition\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                     afslut programmet"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2745,56 +2692,56 @@ msgstr ""
 "rescue START SLUT                        red tabte partitioner nær ved START "
 "og SLUT"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr ""
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr ""
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr ""
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 #, fuzzy
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "rm NUMMER                                slet partition NUMMER"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm NUMMER                                slet partition NUMMER"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "vælg"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr "vælg ENHED                               vælg enhed at redigere"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr ""
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 #, fuzzy
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 "sæt NUMMER FLAG TILSTAND                 ændr et flag på partition NUMMER"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 #, fuzzy
 msgid "disk_toggle"
 msgstr "skift"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 #, fuzzy
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
@@ -2803,21 +2750,21 @@ msgstr ""
 "skift [NUMMER [FLAG]]                  væxla tilstandet for FLAG på "
 "partition NUMMER"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "sæt"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "sæt NUMMER FLAG TILSTAND                 ændr et flag på partition NUMMER"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "skift"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2825,19 +2772,19 @@ msgstr ""
 "skift [NUMMER [FLAG]]                  væxla tilstandet for FLAG på "
 "partition NUMMER"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr "enhed ENHED                              sæt standardenheden til ENHED"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2845,7 +2792,7 @@ msgstr ""
 "version                                  vis versionsnummeret og "
 "ophavsretlig information om GNU Parted"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2853,32 +2800,40 @@ msgstr ""
 "'version' viser information om version og ophavsret for denne kopi af GNU "
 "Parted\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr "Usage: %s [-hlmsv] [-a<align>] [ENHED [KOMMANDO [PARAMETRE]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Ingen enhed fundet"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 #, fuzzy
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr ""
 "ADVARSEL: Du er ikke superbruger. Vær opmærksom på rettighedsproblemer."
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Du bør geninstallere opstartsprogrammet inden du genopstarter. Læs sektion 4 "
+"i Parteds brugermanual for mere information."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Glem ikke at opdatere /etc/fstab, om nødvendigt.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 "Velkommen til GNU Parted! Skriv 'hjælp' for at vise en liste med "
 "kommandoer.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2889,7 +2844,7 @@ msgstr ""
 "Kør KOMMANDO med PARAMETRE på ENHED. Hvis ingen KOMMANDOER angives køres\n"
 "programmet i interaktiv tilstand.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2952,7 +2907,7 @@ msgstr ""
 "Inkludér også yderligere information om din konfiguration som\n"
 "du mener er vigtigt at vide.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -2960,7 +2915,7 @@ msgstr ""
 "\n"
 "Kommandohistorik:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -2968,7 +2923,7 @@ msgstr ""
 "\n"
 "Fejl: SEGV_MAPERR (Adresse ikke mappet to objekt)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -2976,7 +2931,7 @@ msgstr ""
 "\n"
 "Fejl: SEGV_ACCERR (Ugyldige rettigheder for mappet object)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -2984,7 +2939,7 @@ msgstr ""
 "\n"
 "Fejl: Et generelt SIGSEGV-signal indtraf.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -2992,7 +2947,7 @@ msgstr ""
 "\n"
 "Fejl: FPE_INTDIV (heltal: division med nul)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3000,7 +2955,7 @@ msgstr ""
 "\n"
 "Fejl: FPE_INTOVF (Integer: overløb)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3008,7 +2963,7 @@ msgstr ""
 "\n"
 "Fejl: FPE_FLTDIV (Float: division med nul)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3016,7 +2971,7 @@ msgstr ""
 "\n"
 "Fejl: FPE_FLTOVF (Float: overløb)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3024,7 +2979,7 @@ msgstr ""
 "\n"
 "Fejl: FPE_FLTUND (Float: underløb)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3032,7 +2987,7 @@ msgstr ""
 "\n"
 "Fejl: FPE_FLTRES (Float: unøjagtigt resultat)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3040,7 +2995,7 @@ msgstr ""
 "\n"
 "Fejl: FPE_FLTINV (Float: ugyldig operation)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3048,7 +3003,7 @@ msgstr ""
 "\n"
 "Fejl: FPE_FLTSUB (Float: subskript uden for område)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3056,7 +3011,7 @@ msgstr ""
 "\n"
 "Fejl: Et generelt SIGFPE-signal indtraf."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3064,7 +3019,7 @@ msgstr ""
 "\n"
 "Fejl: ILL_ILLOPC (Ugyldig Opcode)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3072,7 +3027,7 @@ msgstr ""
 "\n"
 "Fejl: ILL_ILLOPN (Ugyldig Operand)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3080,7 +3035,7 @@ msgstr ""
 "\n"
 "Fejl: ILL_ILLADR (Ugyldig adressingstilstand)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3088,7 +3043,7 @@ msgstr ""
 "\n"
 "Fejl: ILL_ILLTRP (Ugyldig Fælde)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3096,7 +3051,7 @@ msgstr ""
 "\n"
 "Fejl: ILL_PRVOPC (Privilligeret Opkode)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3104,7 +3059,7 @@ msgstr ""
 "\n"
 "Fejl: ILL_PRVREG (Privilligeret Register)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3112,7 +3067,7 @@ msgstr ""
 "\n"
 "Fejl: ILL_COPROC (Coprocessor fejl)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3120,7 +3075,7 @@ msgstr ""
 "\n"
 "Fejl: ILL_BADSTK (Intern stakfejl)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3128,69 +3083,69 @@ msgstr ""
 "\n"
 "Fejl: Et generelt SIGILL-signal indtraf."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "ugyldigt token: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Forventer et partitionsnummer."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Partitionen findes ikke."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Forventer en filsystemstype."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Ukendt filsystemstype '%s'."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Forventer en disketikettetype."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Kan ikke tilføje flere partitioner."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Forventer eN partitionstype."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "på"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "fra"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "optimal"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "minimal"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "FLAG:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "KOMMANDOer:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3199,33 +3154,78 @@ msgstr ""
 "\n"
 "Rapportér fejl til %s\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Bruger %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Denne kommando er meningsløs i ikke-interaktiv tilstand.\n"
 
+#, c-format
 #~ msgid "%s: option '--%s' doesn't allow an argument\n"
 #~ msgstr "%s: flaget '--%s' tillader intet argument\n"
 
+#, c-format
 #~ msgid "%s: unrecognized option '--%s'\n"
 #~ msgstr "%s: ukendt flag '--%s'\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' doesn't allow an argument\n"
 #~ msgstr "%s: flaget '-W %s' tillader intet argument\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' requires an argument\n"
 #~ msgstr "%s: flaget '-W %s' kræver et argument\n"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "Hjemmeside for %s: <http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument `%s'"
+#~ msgstr "ugyldigt %s%s-argument '%s'"
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument `%s'"
+#~ msgstr "ugyldigt suffiks i %s%s-argumentet '%s'"
+
+#, c-format
+#~ msgid "%s%s argument `%s' too large"
+#~ msgstr "%s%s-argumentet '%s' er for stort"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Partitionstabellen kan ikke genindlæses. Dette betyder at du skal starte "
+#~ "maskinen op igen inden du kan montere nogen ændrede partitioner. Du skal "
+#~ "også geninstallere opstartsprogrammet inden du genstarter (hvilket kan "
+#~ "indebære montering af ændrede partitioner). Det er umuligt at gøre begge "
+#~ "dele! Så du skal starte fra en redningsdiskette og geninstallere "
+#~ "opstartsprogrammet fra redningsdisketten. Læs kapitel 4 i Parteds "
+#~ "brugermanual for mere information."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "Partitionstabellen på %s kan ikke genindlæses (%s). Det betyder at Hurd "
+#~ "ikke véd noget som helst om de ændringer du lavede. Du bør genstarte "
+#~ "maskinen inden du gør noget som helst med %s."
+
+#, c-format
 #~ msgid "Failed to add partition %d (%s)"
 #~ msgstr "Mislykkedes med at tilføje partition %d (%s)"
 
+#, c-format
 #~ msgid ""
 #~ "parted was unable to re-read the partition table on %s (%s).  This means "
 #~ "Linux won't know anything about the modifications you made. "
@@ -3233,6 +3233,7 @@ msgstr "Denne kommando er meningsl
 #~ "parted kunne ikke genindlæse partitionstabellen på %s (%s). Det betyder "
 #~ "at Linux ikke véd noget som helst om de ændringer du lavede. "
 
+#, c-format
 #~ msgid ""
 #~ "%s contains GPT signatures, indicating that it has a GPT table.  However, "
 #~ "it does not have a valid fake msdos partition table, as it should.  "
@@ -3246,6 +3247,10 @@ msgstr "Denne kommando er meningsl
 #~ "partitionstabeller. Eller måske slettede du GPT-tabellen, og bruger nu en "
 #~ "msdos-partitionstabel. Er dette en GPT-tabel?"
 
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "Startområdet begynder ikke ved partitionens begyndelse"
+
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
index 1048f9c1bf4430d3ad33d045108f47fe3529ac12..3248691fc8d85a72cbd8092b4804d508fc0e3b4f 100644 (file)
Binary files a/po/de.gmo and b/po/de.gmo differ
index 2bc3f8179945c7a64023e4f0ba027274315b6ea9..9e207ab6f678c8d03d121fc7fd5b2d3ada25c374 100644 (file)
--- a/po/de.po
+++ b/po/de.po
@@ -3,13 +3,13 @@
 # This file is distributed under the same license as the parted package.
 # Martin von Löwis <martin@v.loewis.de>, 1999, 2000, 2001, 2002.
 # Martin Ereth <martin.ereth@arcor.de>, 2007.
-# Mario Blättermann <mario.blaettermann@gmail.com>, 2014.
+# Mario Blättermann <mario.blaettermann@gmail.com>, 2014, 2021.
 msgid ""
 msgstr ""
-"Project-Id-Version: parted-3.1.90\n"
+"Project-Id-Version: parted-3.3.52\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
-"PO-Revision-Date: 2014-07-03 21:25+0100\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
+"PO-Revision-Date: 2021-01-18 19:59+0100\n"
 "Last-Translator: Mario Blättermann <mario.blaettermann@gmail.com>\n"
 "Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
 "Language: de\n"
@@ -17,7 +17,8 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "X-Bugs: Report translation errors to the Language-Team address.\n"
-"X-Generator: Poedit 1.5.4\n"
+"X-Generator: Lokalize 20.12.1\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: lib/argmatch.c:132
 #, c-format
@@ -42,29 +43,29 @@ msgid "Unknown system error"
 msgstr "Unbekannter Systemfehler"
 
 #: lib/getopt.c:278
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' is ambiguous\n"
-msgstr "%s: Die Option »-W %s« ist mehrdeutig\n"
+msgstr "%s: Die Option »%s%s« ist mehrdeutig\n"
 
 #: lib/getopt.c:284
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' is ambiguous; possibilities:"
-msgstr "%s: Die Option »%s« ist mehrdeutig; Möglichkeiten:"
+msgstr "%s: Die Option »%s%s« ist mehrdeutig; Möglichkeiten:"
 
 #: lib/getopt.c:319
-#, fuzzy, c-format
+#, c-format
 msgid "%s: unrecognized option '%s%s'\n"
-msgstr "%s: unbekannte Option »%c%s«\n"
+msgstr "%s: unbekannte Option »%s%s«\n"
 
 #: lib/getopt.c:345
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' doesn't allow an argument\n"
-msgstr "%s: Die Option »%c%s« erlaubt kein Argument\n"
+msgstr "%s: Die Option »%s%s« erlaubt kein Argument\n"
 
 #: lib/getopt.c:360
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' requires an argument\n"
-msgstr "%s: Die Option »%s« benötigt ein Argument\n"
+msgstr "%s: Die Option »%s%s« benötigt ein Argument\n"
 
 #: lib/getopt.c:621
 #, c-format
@@ -97,11 +98,11 @@ msgstr "%s: Die Option benötigt ein Argument -- »%c«\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "»"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "«"
 
@@ -134,9 +135,8 @@ msgid "Invalid back reference"
 msgstr "Ungültige Zurück-Referenz"
 
 #: lib/regcomp.c:156
-#, fuzzy
 msgid "Unmatched [, [^, [:, [., or [="
-msgstr "Nicht gefunden: [ oder [^"
+msgstr "Nicht gefunden: [, [^, [:, [., oder [="
 
 #: lib/regcomp.c:159
 msgid "Unmatched ( or \\("
@@ -217,19 +217,16 @@ msgstr "(C)"
 
 #. TRANSLATORS: The %s placeholder is the web address of the GPL license.
 #: lib/version-etc.c:88
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "License GPLv3+: GNU GPL version 3 or later <%s>.\n"
 "This is free software: you are free to change and redistribute it.\n"
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
-"\n"
-"Lizenz GPLv3+: GNU GPL Version 3 oder neuer <http://gnu.org/licenses/gpl."
-"html>\n"
+"Lizenz GPLv3+: GNU GPL Version 3 oder neuer <%s>\n"
 "Dies ist freie Software: Es ist Ihnen freigestellt, sie zu verändern und zu "
 "verbreiten.\n"
 "Es gibt in dem gesetzlichen gegebenen Umfang KEINE GARANTIE.\n"
-"\n"
 
 #. TRANSLATORS: %s denotes an author name.
 #: lib/version-etc.c:105
@@ -342,11 +339,9 @@ msgstr ""
 #. "Report translation bugs to <...>\n" with the address for translation
 #. bugs (typically your translation team's web or email address).
 #: lib/version-etc.c:249
-#, fuzzy, c-format
+#, c-format
 msgid "Report bugs to: %s\n"
-msgstr ""
-"\n"
-"Melden Sie Fehler an: %s\n"
+msgstr "Melden Sie Fehler an: %s\n"
 
 #: lib/version-etc.c:251
 #, c-format
@@ -359,40 +354,25 @@ msgid "%s home page: <%s>\n"
 msgstr "Webseite von %s: <%s>\n"
 
 #: lib/version-etc.c:260
-#, fuzzy, c-format
+#, c-format
 msgid "General help using GNU software: <%s>\n"
-msgstr "Allgemeine Hilfe zu GNU-Software: <http://www.gnu.org/gethelp/>\n"
+msgstr "Allgemeine Hilfe zu GNU-Software: <%s>\n"
 
 #: lib/xalloc-die.c:34
 msgid "memory exhausted"
 msgstr "Speicher erschöpft"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "Ungültiges %s%s-Argument »%s«"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "Ungültiges Suffix im %s%s-Argument »%s«"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s Argument »%s« zu groß"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Speicherabbild"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Fehler beim Öffnen von %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -400,48 +380,48 @@ msgstr ""
 "%s kann nicht zum Schreiben geöffnet werden (%s). %s wurde nur lesbar "
 "geöffnet."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s, während %s zum Lesen positioniert wurde"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s, während von %s gelesen wurde"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr ""
 "Auf %s kann nicht geschrieben werden, weil es nur-lesend geöffnet wurde."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s, während %s zum Schreiben positioniert wurde"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s, während auf %s geschrieben wurde"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Rufen Sie »%s --help« auf, um mehr Informationen zu erhalten.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Aufruf: %s [OPTION] [GERÄT] …\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -457,7 +437,7 @@ msgstr ""
 "  -h, --help       diese Hilfe anzeigen und beenden\n"
 "  -v, --version    Versionsangaben ausgeben und beenden\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -465,7 +445,7 @@ msgstr ""
 "\n"
 "Ohne GERÄT, alle Partitionen testen.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -483,43 +463,7 @@ msgstr "%s kann nicht geöffnet werden."
 msgid "Unable to probe store."
 msgstr "Der Speicher konnte nicht untersucht werden."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Die Partitionstabelle konnte nicht neu gelesen werden. Sie müssen also den "
-"Rechner neu hochfahren, bevor Sie geänderte Partitionen einhängen. Sie "
-"müssen auch Ihren Bootlader vor dem Booten neu installieren (was u.U. das "
-"Einhängen geänderter Partitionen erfordert). Man kann nicht beides tun! Also "
-"müssen Sie von einer Rettungsdiskette booten und Ihren Bootlader von dort "
-"neu installieren. Lesen Sie Abschnitt 4 der Benutzerdokumentation von Parted "
-"für mehr Informationen."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Die Partitionstabelle auf %s konnte nicht neu eingelesen werden (%s). Das "
-"bedeutet, dass das Hurd nichts über Ihre Änderungen weiß. Sie sollten den "
-"Computer neu starten, bevor Sie irgend etwas mit %s machen."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Vor einem Neustart sollten Sie Ihren Bootlader neu installieren. Lesen Sie "
-"den Abschnitt 4 der Benutzerdokumentation von Parted für mehr Informationen."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s beim Versuch, %s auf die Platte zu speichern (sync)"
@@ -609,9 +553,8 @@ msgid "Generic SD/MMC Storage Card"
 msgstr "Generisch SD/MMC-Speicherkarte"
 
 #: libparted/arch/linux.c:1422
-#, fuzzy
 msgid "NVMe Device"
-msgstr "Neues Gerät?"
+msgstr "NVMe-Gerät"
 
 #: libparted/arch/linux.c:1483
 msgid "DAC960 RAID controller"
@@ -639,7 +582,7 @@ msgstr "Compaq Smart Array"
 
 #: libparted/arch/linux.c:1520
 msgid "NVDIMM Device"
-msgstr ""
+msgstr "NVDIMM-Gerät"
 
 #: libparted/arch/linux.c:1525
 msgid "ATARAID Controller"
@@ -680,7 +623,7 @@ msgstr "Linux Software-RAID-Verbund"
 
 #: libparted/arch/linux.c:1588
 msgid "RAM Drive"
-msgstr ""
+msgstr "RAM-Gerät"
 
 #: libparted/arch/linux.c:1595
 msgid "ped_device_new()  Unsupported device type"
@@ -844,15 +787,15 @@ msgstr "Metadaten"
 msgid "free"
 msgstr "frei"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "erweitert"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logisch"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primär"
 
@@ -928,64 +871,72 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr "chromeos_kernel"
+
+#: libparted/disk.c:2413
+msgid "bls_boot"
+msgstr "bls_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Unbekanntes Partitionsflag %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Information"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Warnung"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Fehler"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Fataler Fehler"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Bug"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Keine Implementierung"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Fix"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Ja"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Nein"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Wiederholen"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Ignorieren"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Abbrechen"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -998,33 +949,33 @@ msgstr ""
 "einen Fehlerbericht sein könnte. Bitte senden Sie einen Fehlerbericht an %s "
 "unter Angabe der Version (%s) und der folgenden Meldung:  "
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr ""
 "Unterstützung für das Lesen von AIX-Partitionstabellen ist noch nicht "
 "implementiert."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr ""
 "Unterstützung für das Schreiben von AIX-Partitionstabellen ist noch nicht "
 "implementiert."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "Unterstützung für das Hinzufügen von Partitionen zu AIX-Partitionstabellen "
 "ist noch nicht implementiert."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "Unterstützung für das Duplizieren von Partitionen in AIX-Partitionstabellen "
 "ist noch nicht implementiert."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1032,42 +983,48 @@ msgstr ""
 "Unterstützung für das Setzen des Systemtyps von Partitionen in AIX-"
 "Partitionstabellen ist noch nicht implementiert."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 "Unterstützung für das Setzen von Flags in AIX-Partitionstabellen ist noch "
 "nicht implementiert."
 
 #: libparted/labels/atari.c:273
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Can't use Atari partition tables on disks with a sector size not equal to %d "
 "bytes."
 msgstr ""
-"Parted kann das HFS-Dateisystem nicht auf Festplatten mit einer Sektorgröße "
-"ungleich %d Bytes verwenden."
+"Atari-Partitionstabellen auf Festplatten mit einer Sektorgröße ungleich %d "
+"Bytes können nicht verwendet werden."
 
 #: libparted/labels/atari.c:285
 #, c-format
 msgid "Can't use Atari partition tables on disks with more than %d sectors."
 msgstr ""
+"Atari-Partitionstabellen auf Festplatten mit mehr als %d Sektoren können "
+"nicht verwendet werden."
 
 #: libparted/labels/atari.c:398
 msgid ""
 "Too many Atari partitions detected.  Maybe there is a loop in the XGM linked "
 "list.  Aborting."
 msgstr ""
+"Es wurden zu viele Atari-Partitionen erkannt. Möglicherweise ist eine "
+"Schleife in der XGM-Linkliste. Abbruch."
 
 #: libparted/labels/atari.c:596
 #, c-format
 msgid "No data partition found in the ARS at sector %lli."
-msgstr ""
+msgstr "Keine Datenpartition gefunden im ARS bei Sektor %lli."
 
 #: libparted/labels/atari.c:617
 #, c-format
 msgid ""
 "The entry of the next logical ARS is not of type XGM in ARS at sector %lli."
 msgstr ""
+"Der Eintrag des nächsten logischen ARS ist nicht vom Typ XGM im ARS bei "
+"Sektor %lli."
 
 #: libparted/labels/atari.c:648
 #, c-format
@@ -1075,31 +1032,36 @@ msgid ""
 "There doesn't seem to be an Atari partition table on this disk (%s), or it "
 "is corrupted."
 msgstr ""
+"Die Partitionstabelle auf dieser Festplatte (%s) scheint keine Atari-"
+"Partitionstabelle zu sein, oder sie ist beschädigt."
 
 #: libparted/labels/atari.c:878
 #, c-format
 msgid "No room at sector %lli to store ARS of logical partition %d."
 msgstr ""
+"Kein Platz bei Sektor %lli zum Speichern des ARS der logischen Partition %d."
 
 #: libparted/labels/atari.c:885
 #, c-format
 msgid "No room at sector %lli to store ARS."
-msgstr ""
+msgstr "Kein Platz bei Sektor %lli zum Speichern des ARS."
 
 #: libparted/labels/atari.c:962
 msgid ""
 "The sector count that is stored in the partition table does not correspond "
 "to the size of your device.  Do you want to fix the partition table?"
 msgstr ""
+"Die in der Partitionstabelle gespeicherte Sektorenanzahl entspricht nicht "
+"der Größe Ihres Gerätes. Wollen Sie die Partitionstabelle korrigieren?"
 
 #: libparted/labels/atari.c:1003
 #, c-format
 msgid "No room at sector %lli to store BSL."
-msgstr ""
+msgstr "Kein Platz bei Sektor %lli zum Speichern des BSL."
 
 #: libparted/labels/atari.c:1111
 msgid "There were remaining partitions after filling the main AHDI table."
-msgstr ""
+msgstr "Nach dem Füllen der Haupt-AHDI-Tabelle waren Partitionen übrig."
 
 #: libparted/labels/atari.c:1130
 msgid ""
@@ -1107,14 +1069,18 @@ msgid ""
 "not empty so more partitions of unknown size and position will be detected "
 "by ICD compatible software.  Do you want to invalidate the ICD table?"
 msgstr ""
+"Die Haupt-AHDI-Tabelle wurde mit allen Partitionen gefüllt, aber die ICD-"
+"Tabelle ist nicht leer, so dass weitere Partitionen unbekannter Größe und "
+"Position von ICD-kompatibler Software erkannt werden. Wollen Sie die ICD-"
+"Tabelle ungültig machen?"
 
 #: libparted/labels/atari.c:1164
 msgid "ICD entries can't contain extended or logical partitions."
-msgstr ""
+msgstr "ICD-Einträge können erweiterte oder logische Partitionen enthalten."
 
 #: libparted/labels/atari.c:1186
 msgid "There were remaining partitions after filling the tables."
-msgstr ""
+msgstr "Nach dem Füllen der Tabellen waren Partitionen übrig."
 
 #: libparted/labels/atari.c:1226
 #, c-format
@@ -1122,12 +1088,15 @@ msgid ""
 "You can't use an extended XGM partition in ICD mode (more than %d primary "
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
+"Sie können eine erweiterte XGM-Partition nicht im ICD-Modus verwenden (mehr "
+"als %d primäre Partitionen; falls XGM die erste Partition ist, zählt sie "
+"doppelt)."
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Es können nicht alle Anforderungen an die Partition erfüllt werden."
@@ -1138,51 +1107,55 @@ msgid ""
 "You can't use more than %d primary partitions (ICD mode) if you use an "
 "extended XGM partition.  If XGM is the first partition it counts for two."
 msgstr ""
+"Sie können nicht mehr als %d primäre Partition (ICD-Modus) verwenden, wenn "
+"Sie eine erweiterte XGM-Partition verwenden. Falls XGM die erste Partition "
+"ist, zählt sie doppelt."
 
 #: libparted/labels/atari.c:1823 libparted/labels/rdb.c:1082
 msgid "Unable to allocate a partition number."
 msgstr "Die Partitionsnummer konnte nicht zugewiesen werden."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "BSD-Disklabel-Zeilen können nicht belegt werden."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
+"Die Partitionstabelle des DASD-LDL-Gerätes kann nicht geändert werden.\n"
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "dasd-Disklabel-Zeilen können nicht belegt werden"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Ungültige Partitionstabelle auf %s -- falsche Signatur %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Ungültige Partitionstabelle - Rekursive Partition auf %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr ""
 "Erweiterte Partitionen können in MS-DOS-Disk-Labels nicht versteckt werden."
 
-#: libparted/labels/dos.c:1572
-#, fuzzy
+#: libparted/labels/dos.c:1569
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr ""
-"Erweiterte Partitionen können in MS-DOS-Disk-Labels nicht versteckt werden."
+"Erweiterte Partitionen können in MS-DOS-Disk-Labels keine "
+"Wiederherstellungspartitionen sein."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted kann von Windows Dynamic Disk verwaltete Partitionen nicht in der "
 "Größe verändern."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "Es können keine weiteren Partitionen erzeugt werden."
 
@@ -1279,7 +1252,7 @@ msgstr "Das angegebene Gerät ist kein gültiges DASD-Gerät"
 
 #: libparted/labels/fdasd.c:188
 msgid "VOLSER not found on device"
-msgstr ""
+msgstr "VOLSER wurde auf dem Gerät nicht gefunden"
 
 #: libparted/labels/fdasd.c:191 libparted/labels/vtoc.c:179
 msgid "Fatal error"
@@ -1310,9 +1283,8 @@ msgstr ""
 "überein!"
 
 #: libparted/labels/fdasd.c:1020
-#, fuzzy
 msgid "Could not retrieve disk size."
-msgstr "Die Festplatteninformationen konnten nicht gelesen werden."
+msgstr "Die Festplattengröße konnte nicht ermittelt werden."
 
 #: libparted/labels/fdasd.c:1029
 msgid "Could not retrieve disk geometry information."
@@ -1325,12 +1297,13 @@ msgstr "Die Blöckgröße konnte nicht gelesen werden."
 #: libparted/labels/fdasd.c:1045
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
+"Die Festplattengeometrie entspricht nicht einem DASD-Gerät des Typs 3390."
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "Gerät ist für GPT zu klein"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1339,7 +1312,7 @@ msgstr ""
 "Das Format der GPT-Partitionstabelle (%x) ist neuer als das von Parted "
 "verstandene. Bitte melden Sie das."
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1350,7 +1323,7 @@ msgstr ""
 "die GPT reparieren, damit der gesamte Platz verwendet wird (zusätzlich %llu "
 "Blöcke) oder Sie können mit den aktuellen Einstellungen fortfahren."
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1359,7 +1332,7 @@ msgstr ""
 "normalerweise sein sollte. Soll das durch Verschieben der Sicherung zum Ende "
 "(und löschen der alten Sicherung) korrigiert werden?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1368,7 +1341,7 @@ msgstr ""
 "Sie, eine neue Tabelle anzulegen und die Partititionen mit Hilfe von "
 "Parted's Rettungsmöglichkeiten zu restaurieren."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1376,7 +1349,7 @@ msgstr ""
 "Die gesicherte GPT-Tabelle ist defekt, aber die primäre scheint in Ordnung "
 "zu sein, daher wird diese verwendet."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1384,11 +1357,11 @@ msgstr ""
 "Die primäre GPT-Tabelle ist defekt, aber die Sicherung scheint in Ordnung zu "
 "sein. Daher wird die Sicherung verwendet."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "Array der primären Partitionstabelle und CRC stimmen nicht überein"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "Der Partitionsname konnte nicht übersetzt werden."
 
@@ -1421,18 +1394,14 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Die Datenregion beginnt nicht am Anfang der Partition."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Die Bootregion beginnt nicht am Anfang der Partition."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Die Bootregion der Partition belegt nicht die ganze Partition."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Die Datenregion der Partition belegt nicht die ganze Partition."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
@@ -1440,7 +1409,7 @@ msgstr ""
 "Seltsame Blockgröße auf dem Gerätedeskriptor: %d Bytes ist nicht durch 512 "
 "teilbar."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1449,11 +1418,11 @@ msgstr ""
 "Der Treiberdeskriptor sagt, dass die physische Blockgröße %d Bytes ist. "
 "Linux sagt, dass es %d Bytes sind."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Keine gültige Partitionskarte gefunden."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1462,11 +1431,11 @@ msgstr ""
 "Widersprüchliche Größen in den Partitionskarteneinträgen! Eintrag 1 sagt, "
 "dass es %d Bytes sind, Eintrag %d sagt aber, dass es %d Bytes sind!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Seltsam! Es gibt 2 Partitionskarteneinträge!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1474,18 +1443,18 @@ msgstr ""
 "Eine Änderung des Namens der Root- oder Swap-Partition verhindert, dass "
 "Linux sie als solche erkennt."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr ""
 "Eine weitere Partition kann nicht hinzugefügt werden -- die Partitionskarte "
 "ist zu klein!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Ungültige Partitionstabelle auf %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1494,7 +1463,7 @@ msgstr ""
 "Partition %d ist nicht an den Zylindergrenzen ausgerichtet. Dies wird immer "
 "noch nicht unterstützt."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Es kann keine weitere Partition hinzugefügt werden."
 
@@ -1672,40 +1641,40 @@ msgstr "VTOC FMT7 DSCB kann nicht geschrieben werden."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "VTOC FMT9 DSCB kann nicht geschrieben werden."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Speicher erschöpft."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr ""
 "Die Größe der speziellen Einheit »COMPACT« konnte nicht ermittelt werden."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "»%s« hat eine ungültige Syntax für Orte."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Die maximale Zahl der Köpfe ist %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Die maximale Zahl der Sektoren ist %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "Der Ort %s ist außerhalb des Geräts %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Ungültige Nummer."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "Verwenden Sie eine kleinere Einheit anstelle eines Wertes < 1."
 
@@ -1715,18 +1684,18 @@ msgstr "Verwenden Sie eine kleinere Einheit anstelle eines Wertes < 1."
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : Der Partitionsblock konnte nicht belegt werden\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : Der Block konnte nicht belegt werden\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : Der Boot-Block %llu konnte nicht gelesen werden\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1752,24 +1721,24 @@ msgstr "%s : Falsche Prüfsumme bei Block %llu vom Typ %s\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : Block %d konnte nicht geschrieben werden\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr ""
 "%s : Der Festplatten-spezifische rdb-Block konnte nicht belegt werden\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr ""
 "%s : rdb-Block konnte nicht gefunden werden. Das sollte niemals passieren\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : Der Partitionsblock %llu kann nicht gelesen werden\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1868,7 +1837,7 @@ msgstr ""
 "Reparieren auswählen, wird die CHS-Geometrie des Dateisystems so gesetzt, "
 "dass sie mit der CHS-Geometrie der Partitionstabelle übereinstimmt."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1893,14 +1862,14 @@ msgid ""
 "Cluster start delta = %d, which is not a multiple of the cluster size %d."
 msgstr "Clusteranfang delta = %d ist kein Vielfaches der Clustergröße %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Falscher Verzeichniseintrag für %s: Erster Cluster ist am Ende des "
 "Dateimarkers."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1908,7 +1877,7 @@ msgstr ""
 "Schlechte FAT: unbeendete Kette für %s. Sie sollten dosfsck oder Scandisk "
 "ausführen."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1917,7 +1886,7 @@ msgstr ""
 "Schlechte FAT: Cluster %d ist außerhalb des Dateisystems in Kette %s. Sie "
 "sollten dosfsck oder Scandisk ausführen."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1926,26 +1895,17 @@ msgstr ""
 "Schlechte FAT: Cluster %d ist querverbunden für %s. Sie sollten dosfsck oder "
 "Scandisk ausführen."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s ist %dk, hat aber %d Cluster (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"Die Datei %s ist als Systemdatei markiert. Das bedeutet, dass nach dem "
-"Verschieben einige Programme nicht mehr funktionieren könnten."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Die Partition ist für ein %s-Dateisystem zu groß/klein."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1954,11 +1914,11 @@ msgstr ""
 "brechen Sie ab, rufen Scandisk für das Dateisystem auf und versuchen es noch "
 "einmal."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Es gibt keine möglichen Konfigurationen für diesen FAT-Typ."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1969,13 +1929,13 @@ msgstr ""
 "%dk (%dk erwartet); die Clusterzahl ist %d (%d erwartet); die FAT-Größe ist "
 "%d Sektoren (%d erwartet)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr "Dateisystem meldet freien Platz als %d Cluster, nicht %d Cluster."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1983,16 +1943,16 @@ msgstr ""
 "Es gibt im Root-Verzeichnis nicht genügend Platz für alle Dateien. Entweder "
 "abbrechen, oder ignorieren und die Dateien verlieren."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Fehler beim Schreiben in das Root-Verzeichnis."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr ""
 "Wenn Sie Ihr Dateisystem als FAT16 belassen, werden Sie keine Probleme haben."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2003,7 +1963,7 @@ msgstr ""
 "Sie das tun wollen, sollten Sie das Handbuch von Parted lesen (oder das "
 "Handbuch Ihrer Distribution)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -2011,7 +1971,7 @@ msgstr ""
 "Wenn Sie Ihr Dateisystem als FAT32 belassen, werden Sie keine neuen Probleme "
 "herbeiführen."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2026,42 +1986,42 @@ msgstr ""
 "Dateisystem nicht mehr von MS-DOS, MS-Windows 95a und MS-Windows NT gelesen "
 "werden."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Wollen Sie FAT32 verwenden?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "Das Dateisystem kann nur durch Konvertierung zu FAT16 in der Größe verändert "
 "werden."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "Das Dateisystem kann nur durch Konvertierung zu FAT32 in der Größe verändert "
 "werden."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted kann diese Partition nicht auf diese Größe verändern. Wir "
 "arbeiten daran!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2070,41 +2030,41 @@ msgstr ""
 "FAT %d Medium %x stimmt nicht mit dem Bootsektor von Medium %x überein. Sie "
 "sollten Scandisk ausführen."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: Cluster %ld ist außerhalb des Dateisystems"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: Cluster %ld ist außerhalb des Dateisystems"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: Keine freien Cluster"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Dateisystem wurde nicht erkannt."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "Größenänderung von %s-Dateisystemen ist noch nicht implementiert."
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "Das Dateisystem ist größer als sein Datenträger!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "Das Dateisystem enthält Fehler."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "Fehlerhafte Blöcke konnten nicht gelesen werden."
 
@@ -2119,12 +2079,12 @@ msgstr ""
 "Dateisystem überprüfen!"
 
 #: libparted/fs/r/hfs/cache.c:214
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Trying to move an extent from block 0x%X to block 0x%X, but another one "
 "already exists at this position.  This should not happen!"
 msgstr ""
-"Es wurde versucht, einen erweiterten Block von 0x%X nach 0X%X zu "
+"Es wurde versucht, einen erweiterten Block von 0x%X nach 0x%X zu "
 "verschieben, aber ein anderer existiert bereits an dieser Stelle. Das sollte "
 "nicht passieren!"
 
@@ -2178,67 +2138,67 @@ msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr ""
 "Die HFS+-Datei mit der CNID %X kann nicht hinter dem Ende geschrieben werden."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "Entschuldigung, HFS kann so noch nicht in der Größe verändert werden."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "verkleinern"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Die Umlagerung der Daten ist fehlgeschlagen."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 "Die Umlagerung der Daten hat einige Daten am Ende des Datenträgers "
 "hinterlassen."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "Schreiben des HFS Master Directory Block"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "Beim Öffnen wurde keine gültige HFS[+X]-Signatur gefunden."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "Die HFS+-Version %d ist nicht unterstützt."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "Die HFSX-Version %d ist nicht unterstützt."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr ""
 "Die Umlagerung der Daten hat einige Daten am Ende des Datenträgers "
 "hinterlassen."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Fehler beim Schreiben der Belegungsdatei."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "Fehler beim Schreiben des Kompatibilitätsteils der Belegungsdatei."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "Schreiben des HFS+-Datenträger-Kopfes"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr ""
 "Beim Suchen nach der notwendigen Datei, die fehlerhafte Blöcke enthält, trat "
 "ein Fehler auf."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2246,27 +2206,27 @@ msgstr ""
 "Es scheint, als wäre im HFS-Wrapper ein Fehler: die Datei der fehlerhaften "
 "Blöcke enthält nicht den eingebetteten HFS+-Datenträger."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "Entschuldigung, HFS+ kann so nicht in der Größe verändert werden."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "Verkleinern des eingebetteten HFS+-Datenträgers"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Verkleinern des HFS+-Datenträgers ist fehlgeschlagen."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "Verkleinern des HFS-Wrappers"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "Aktualisieren des HFS-Wrappers ist fehlgeschlagen."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2288,7 +2248,6 @@ msgstr ""
 "(%i Bytes)."
 
 #: libparted/fs/r/hfs/journal.c:260
-#, fuzzy
 msgid ""
 "Journal stored outside of the volume are not supported.  Try to deactivate "
 "the journal and run Parted again."
@@ -2346,7 +2305,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Eine Erweiterung wurde nicht umgelagert."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2354,17 +2313,17 @@ msgstr ""
 "Ein Verweis einer Erweiterung kam von einem Ort, von dem er nicht kommen "
 "sollte. Sie sollten das Dateisystem überprüfen lassen!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "Dieser HFS-Datenträger hat keine Katalog-Datei. Das ist sehr unüblich!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Dieser HFS-Datenträger hat keine Überlaufdatei für Erweiterungen. Das ist "
 "schon ungewöhnlich!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2372,54 +2331,54 @@ msgstr ""
 "Die Überlaufdatei der Erweiterungen sollte nicht seine eigenen Erweiterungen "
 "enthalten! Sie sollten das Dateisystem überprüfen lassen."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Das Dateisystem konnte nicht zwischengespeichert werden."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "Die Liste der schlechten Blöcke konnte nicht geladen werden."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Während der Umlagerung der Erweiterungen trat ein Fehler auf."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr ""
 "Dieser HFS+-Datenträger hat keine Katalog-Datei. Das ist sehr ungewöhnlich!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Dieser HFS-Datenträger hat keine Überlaufdatei für Erweiterungen. Das ist "
 "schon ungewöhnlich!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "zeigt diese Hilfe"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "zeigt das Partitionslayout aller blockorientierten Geräte"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "zeigt maschinenlesbare Ausgaben"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "bittet nie um Eingriff des Benutzers"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "zeigt die Version"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "Ausrichtung für neue Partitionen"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2428,31 +2387,31 @@ msgstr ""
 "Partitionstabellen ist für Primärpartitionen die Nummer zwischen 1 und 4, "
 "für logische Partitionen größer 5.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "LABEL-TYP ist eines von: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "FLAG ist eines von: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "EINHEIT ist eines von: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "Gewünschte Ausrichtung: minimum oder optimal"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "PART-TYP ist eines von: primär, logisch, erweitert\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "FS-TYP ist eines von: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2462,7 +2421,7 @@ msgstr ""
 "Werte zählen vom Ende der Festplatte aus. Beispielsweise steht -1s für genau "
 "den letzen Sektor.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2471,19 +2430,19 @@ msgstr ""
 "zählen vom Ende der Festplatte aus. Beispielsweise steht -1s für genau den "
 "letzten Sektor.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "STATUS ist eines von: an, aus\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "GERÄT ist normalerweise /dev/hda oder /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NAME ist ein beliebiges Wort Ihrer Wahl\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2504,24 +2463,24 @@ msgstr ""
 "\"GNU General Public License\" können weitere Einzelheiten nachgelesen\n"
 "werden.\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(Restzeit %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr ""
 "Die Partition %s wird gerade verwendet. Sind Sie sicher, dass Sie fortsetzen "
 "wollen?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Partition(en) auf %s werden verwendet."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2530,31 +2489,31 @@ msgstr ""
 "Die bestehende Partitionstabelle und alle Daten auf %s werden gelöscht. "
 "Wollen Sie fortfahren?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Neuer Disk-Label-Typ?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Partitionstyp?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Partitionsname?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Dateisystemtyp?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Anfang?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Ende?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2564,7 +2523,7 @@ msgstr ""
 "Das Beste, was Parted bieten kann, ist von %s nach %s (Sektoren %llu..%llu)."
 "%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2572,96 +2531,97 @@ msgstr ""
 "\n"
 "Ist dies noch akzeptabel für Sie?"
 
-#: parted/parted.c:798
-#, fuzzy, c-format
+#: parted/parted.c:799
+#, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
-"Die Partition ist nicht sauber ausgerichtet, gemessen an bester Performance."
+"Die Partition ist nicht sauber ausgerichtet, gemessen an bester Performance: "
+"%s"
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
-msgstr ""
+msgstr "unbekannt (»malloc« fehlgeschlagen)"
 
-#: parted/parted.c:876
-#, fuzzy, c-format
+#: parted/parted.c:877
+#, c-format
 msgid "%s disk labels do not support partition name."
-msgstr "%s-Disk-Labels unterstützen keine erweiterten Partitionen."
+msgstr "%s-Disk-Labels unterstützen keine Partitionsnamen."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Partitionsnummer?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 "BIOS Zylinder-, Kopf-, Sektor-Geometrie: %d, %d, %d. Jeder Zylinder ist %s "
 "groß.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Modell: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Festplatte  %s:  %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Sektorgröße (logisch/physisch): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Partitionstabelle: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Disk-Flags: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Nummer"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Anfang"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Ende"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Größe"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Typ"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Dateisystem"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Name"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Flags"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Freier Platz"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2670,84 +2630,83 @@ msgstr ""
 "Eine %s %s-Partition wurde bei %s -> %s gefunden. Wollen Sie diese Partition "
 "zur Partitionstabelle hinzufügen?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "Suche nach Dateisystemen"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "Der resize-Befehl wurde in parted 3.0 entfernt."
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "Das Verkleinern einer Partition kann Datenverlust zur Folge haben, sind Sie "
 "sicher, dass Sie fortsetzen wollen?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Neues Gerät?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "Ausrichtungstyp (min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d ausgerichtet\n"
 
-#: parted/parted.c:1721
-#, fuzzy, c-format
+#: parted/parted.c:1737
+#, c-format
 msgid "%d not aligned: %s\n"
-msgstr "%d nicht ausgerichtet\n"
+msgstr "%d nicht ausgerichtet: %s\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Umzukehrendes Flag?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Neuer Zustand?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Einheit?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
-#, fuzzy
+#: parted/parted.c:1988
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
 msgstr ""
-"align-check TYP N                         Partition N auf TYP (min|opt) der "
+"align-check TYP N                        Partition N auf TYP (min|opt) der "
 "Ausrichtung prüfen"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
 msgstr ""
 "help [BEFEHL]                          Allgemeine Hilfe, oder Hilfe zu BEFEHL"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2755,15 +2714,15 @@ msgstr ""
 "mklabel,mktable LABEL-TYP                Neues Disklabel (Partitionstabelle) "
 "erzeugen"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart PART-TYP [FS-TYP] ANFANG ENDE    Partition erzeugen"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2772,20 +2731,20 @@ msgstr ""
 "Partition zu erzeugen. FS-TYP kann angegeben werden, um eine geeignete "
 "Partitions-ID zu setzen.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "name NUMMER NAME                         Partition NUMMER mit NAME benennen"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2795,7 +2754,7 @@ msgstr ""
 "Geräte, freien Speicher, alle Paritionen oder eine bestimmte Partition "
 "anzeigen"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2803,11 +2762,11 @@ msgstr ""
 "Ohne Argumente zeigt »print« die komplette Partitionstabelle an. Mit den "
 "folgenden Argumenten verrichtet es die zahlreichen anderen Aktionen.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : zeigt alle aktiven blockorientierten Geräte an\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2816,33 +2775,33 @@ msgstr ""
 "dem\n"
 "              aktuellen blockorientierten Gerät an\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all : zeigt Partitionstabellen aller aktiven blockorientierten\n"
 "              Geräte an\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 "  NUMMER    : zeigt detailliertere Informationen über diese Partition an\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                     Programm beenden"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2850,56 +2809,56 @@ msgstr ""
 "rescue ANFANG ENDE                       Eine verlorene Partitionen zwischen "
 "ANFANG und ENDE retten"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "Der resize-Befehl wurde in parted 3.0 entfernt.\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "resizepart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr ""
 "resizepart NUMMER ENDE                   Größe der Partition NUMMER ändern"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm NUMMER                                Partition NUMMER löschen"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr ""
 "select GERÄT                             Wählen Sie ein GERÄT zur Bearbeitung"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disk_set"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 "disk_set FLAG STATUS                     ändern des FLAGs auf dem gewählten "
 "Gerät"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
@@ -2907,22 +2866,22 @@ msgstr ""
 "disk_toggle [FLAG]                       Umschalten des FLAGs auf dem "
 "gewählten Gerät"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "set NUMMER FLAG STATUS                   Ändern des FLAGs auf der Partition "
 "NUMMER"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2930,20 +2889,20 @@ msgstr ""
 "toggle [NUMMER [FLAG]]                   Umschalten des FLAGs von Partition "
 "NUMMER"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "unit EINHEIT                             die Standardgröße auf EINHEIT setzen"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2952,7 +2911,7 @@ msgstr ""
 "Informationen\n"
 "                                         von GNU Parted an"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2960,31 +2919,39 @@ msgstr ""
 "»version« zeigt die Versions- und Copyright-Informationen zu dieser Kopie "
 "von GNU Parted an\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr "Aufruf: %s [-hlmsv] [-a<Ausrichtung>] [GERÄT [BEFEHL [PARAMETER]] …]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Kein Gerät gefunden"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr ""
 "WARNUNG: Sie sind kein Systemadministrator. Achten Sie auf Ihre Rechte.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Vor einem Neustart sollten Sie Ihren Bootlader neu installieren. Lesen Sie "
+"den Abschnitt 4 der Benutzerdokumentation von Parted für mehr Informationen."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Möglicherweise müssen Sie /etc/fstab anpassen.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 "Willkommen zu GNU Parted! Rufen Sie »help« auf, um eine Liste der "
 "verfügbaren Befehle zu erhalten.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2996,7 +2963,7 @@ msgstr ""
 "sind,\n"
 "interaktiv arbeiten.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -3062,7 +3029,7 @@ msgstr ""
 "Nehmen Sie auch noch weitere Informationen über Ihr System auf, die Sie als "
 "wichtig empfinden.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -3070,7 +3037,7 @@ msgstr ""
 "\n"
 "Befehlsfolge:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -3078,7 +3045,7 @@ msgstr ""
 "\n"
 "Fehler: SEGV_MAPERR (Adresse nicht an ein Objekt gebunden)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3086,7 +3053,7 @@ msgstr ""
 "\n"
 "Fehler: SEGV_ACCERR (Ungültige Berechtigung für gebundenes Objekt)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3094,7 +3061,7 @@ msgstr ""
 "\n"
 "Fehler: Ein generelles SIGSEGV-Signal wurde empfangen.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3102,7 +3069,7 @@ msgstr ""
 "\n"
 "Fehler: FPE_INTDIV (Ganzzahl: Division durch Null)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3110,7 +3077,7 @@ msgstr ""
 "\n"
 "Fehler: FPE_INTOVF (Ganzzahl: Überlauf)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3118,7 +3085,7 @@ msgstr ""
 "\n"
 "Fehler: FPE_FLTDIV (Fließkommazahl: Division durch Null)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3126,7 +3093,7 @@ msgstr ""
 "\n"
 "Fehler: FPE_FLTOVF (Fließkommazahl: Überlauf)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3134,7 +3101,7 @@ msgstr ""
 "\n"
 "Fehler: FPE_FLTUND (Fließkommazahl: Unterlauf)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3142,7 +3109,7 @@ msgstr ""
 "\n"
 "Fehler: FPE_FLTRES (Fließkommazahl: ungenaues Ergebnis)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3150,7 +3117,7 @@ msgstr ""
 "\n"
 "Fehler: FPE_FLTINV (Fließkommazahl: ungültige Operation)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3158,7 +3125,7 @@ msgstr ""
 "\n"
 "Fehler: FPE_FLTSUB (Fließkommazahl: Index außerhalb des zulässigen Bereichs)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3166,7 +3133,7 @@ msgstr ""
 "\n"
 "Fehler: Ein generelles SIGFPE-Signal wurde empfangen."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3174,7 +3141,7 @@ msgstr ""
 "\n"
 "Fehler: ILL_ILLOPC (Nicht erlaubter Opcode)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3182,7 +3149,7 @@ msgstr ""
 "\n"
 "Fehler: ILL_ILLOPN (Nicht erlaubter Operand)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3190,7 +3157,7 @@ msgstr ""
 "\n"
 "Fehler: ILL_ILLADR (Nicht erlaubter Adressierungsmodus)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3198,7 +3165,7 @@ msgstr ""
 "\n"
 "Fehler: ILL_ILLTRP (Nicht erlaubte Falle)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3206,7 +3173,7 @@ msgstr ""
 "\n"
 "Fehler: ILL_PRVOPC (Privilegierter Opcode)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3214,7 +3181,7 @@ msgstr ""
 "\n"
 "Fehler: ILL_PRVREG (Privilegiertes Register)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3222,7 +3189,7 @@ msgstr ""
 "\n"
 "Fehler: ILL_COPROC (Coprozessor-Fehler)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3230,7 +3197,7 @@ msgstr ""
 "\n"
 "Fehler: ILL_BADSTK (Interner Stack-Fehler)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3238,69 +3205,69 @@ msgstr ""
 "\n"
 "Fehler: Ein generelles SIGILL-Signal wurde empfangen."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "Unbekanntes Zeichen: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Es wird eine Partitionsnummer erwartet."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Die Partition existiert nicht."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Es wird ein Dateisystemtyp erwartet."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Unbekannter Dateisystemtyp »%s«."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Es wird ein Disklabeltyp erwartet."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
-msgstr ""
+msgstr "Keine Unterstützung für Flags"
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Weitere Partitionen können nicht mehr erzeugt werden."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Es wird ein Partitionstyp erwartet."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "an"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "aus"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "optimal"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "minimal"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "OPTIONEN:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "BEFEHLE:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3309,58 +3276,11 @@ msgstr ""
 "\n"
 "Melden Sie Fehler an %s\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "%s wird verwendet\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Dieser Befehl ergibt im nicht-interaktiven Modus keinen Sinn.\n"
-
-#~ msgid "%s: option '--%s' doesn't allow an argument\n"
-#~ msgstr "%s: Die Option »%s« erlaubt kein Argument\n"
-
-#~ msgid "%s: unrecognized option '--%s'\n"
-#~ msgstr "%s: Unbekannte Option »--%s«\n"
-
-#~ msgid "%s: option '-W %s' doesn't allow an argument\n"
-#~ msgstr "%s: Die Option »-W %s« erlaubt kein Argument\n"
-
-#~ msgid "%s: option '-W %s' requires an argument\n"
-#~ msgstr "%s: Die Option »-W %s« benötigt ein Argument\n"
-
-#~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
-#~ msgstr "Webseite von %s: <http://www.gnu.org/software/%s/>\n"
-
-#~ msgid ""
-#~ "This file system has a logical sector size of %d.  GNU Parted is known "
-#~ "not to work properly with sector sizes other than 512 bytes."
-#~ msgstr ""
-#~ "Dieses Dateisystem hat eine logische Sektorgröße von %d. GNU Parted "
-#~ "funktioniert mit anderen Sektorgrößen als 512 Bytes nicht richtig."
-
-#~ msgid "Failed to add partition %d (%s)"
-#~ msgstr "Partition %d konnte nicht hinzugefügt werden (%s)"
-
-#~ msgid ""
-#~ "parted was unable to re-read the partition table on %s (%s).  This means "
-#~ "Linux won't know anything about the modifications you made. "
-#~ msgstr ""
-#~ "Parted konnte die Partitionstabelle von %s nicht neu einlesen (%s). Das "
-#~ "bedeutet, dass Linux bis zum Neustart nichts über Ihrer Modifikationen "
-#~ "weiß. "
-
-#~ msgid ""
-#~ "%s contains GPT signatures, indicating that it has a GPT table.  However, "
-#~ "it does not have a valid fake msdos partition table, as it should.  "
-#~ "Perhaps it was corrupted -- possibly by a program that doesn't understand "
-#~ "GPT partition tables.  Or perhaps you deleted the GPT table, and are now "
-#~ "using an msdos partition table.  Is this a GPT partition table?"
-#~ msgstr ""
-#~ "%s enthält GPT-Signaturen, die anzeigen, dass es eine GPT-Tabelle hat. Es "
-#~ "ist jedoch keine gültige vorgetäuschte MSDOS-Partitionstabelle vorhanden, "
-#~ "die erforderlich wäre. Vielleicht wurde diese zerstört -- eventuell durch "
-#~ "ein Programm, das GPT-Partitionstabellen nicht versteht. Oder vielleicht "
-#~ "haben Sie die GPT-Tabelle gelöscht, und verwenden jetzt eine MS-DOS-"
-#~ "Partitions-Tabelle. Ist dies eine GPT-Partitionstabelle?"
index 8432a33309ea3cd5353dde3e7c99d78e985be2f1..b7be4eaba308a946f95e08c800bc7d7cc9dfb3ec 100644 (file)
Binary files a/po/es.gmo and b/po/es.gmo differ
index 02ef43866f2d6e7aad7f95d31fec14dffb14fec5..9668efffe12587c4f47c6c76dff1a2cf2be675b8 100644 (file)
--- a/po/es.po
+++ b/po/es.po
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: GNU parted 1.6.23\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2005-09-18 20:05+0100\n"
 "Last-Translator: Vicente E. Llorens <vllorens@mundofree.com>\n"
 "Language-Team: Spanish <es@li.org>\n"
@@ -95,11 +95,11 @@ msgstr ""
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr ""
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr ""
 
@@ -340,33 +340,18 @@ msgstr ""
 msgid "memory exhausted"
 msgstr ""
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr ""
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr ""
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr ""
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr ""
 
 # o también "al abrir"
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Error al abrir %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -374,48 +359,48 @@ msgstr ""
 "No se puede abrir %s en modo lectura-escritura (%s). %s ha sido abierto en "
 "modo de sólo lectura."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s durante la preparación para lectura en %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s durante la lectura en %s"
 
 # para sólo lectura.
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "No se puede escribir en %s, porque está abierto para sólo lectura."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s durante la preparación para escribir en %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s durante la escritura en %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr ""
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -425,13 +410,13 @@ msgid ""
 "  -v, --version    output version information and exit\n"
 msgstr ""
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
 msgstr ""
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -448,45 +433,7 @@ msgstr "No se puede abrir %s."
 msgid "Unable to probe store."
 msgstr "No se puede probar el guardar."
 
-# cargador "de" aranque (no del)
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"No se pudo releer la tabla de particiones, por lo tanto es necesario "
-"reiniciar antes de montar alguna partición modificada.  ¡También necesita "
-"reinstalar su cargador de arranque antes de reiniciar (que puede requerir "
-"montar las particiones modificadas).  ¡Es imposible hacer ambas cosas!  Así "
-"que necesitará arrancar con un disco de rescate y reinstalar su cargador de "
-"arranque desde el disco de rescate.  Lea la sección 4 de la documentación "
-"del Usuario de Parted para obtener más información."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"La tabla de particiones en %s no puede ser releida(%s).  Esto significa que "
-"Hurd (o Linux) no reconocerá las modificaciones que hizo.  Debe reiniciar su "
-"computadora antes de hacer nada con %s."
-
-# boot loader -> cargador de arranque.
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Debe reinstalar su cargador de arranque antes de reiniciar.  Lea la sección "
-"4 de la documentación del Usuario de Parted para obtener más información."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s intentando sincronizar %s al disco"
@@ -804,15 +751,15 @@ msgstr "metadata"
 msgid "free"
 msgstr "libre"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "extendida"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "lógica"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primaria"
 
@@ -890,64 +837,73 @@ msgstr ""
 msgid "esp"
 msgstr "Sí"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "arranque"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Modificador de particiones desconocido, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Información"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Aviso"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Error"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Fatal"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Bicho"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Sin Implementación"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Arreglar"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Sí"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "No"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "De acuerdo"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Reintentar"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Descartar"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Cancelar"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -956,33 +912,33 @@ msgid ""
 "containing at least the version (%s) and the following message:  "
 msgstr ""
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 #, fuzzy
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr ""
 "El soporte para crear el sistema de ficheros %s aún no está implementado."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 #, fuzzy
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr ""
 "El soporte para crear el sistema de ficheros %s aún no está implementado."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 #, fuzzy
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "El soporte para crear el sistema de ficheros %s aún no está implementado."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 #, fuzzy
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "El soporte para crear el sistema de ficheros %s aún no está implementado."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 #, fuzzy
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
@@ -990,7 +946,7 @@ msgid ""
 msgstr ""
 "El soporte para crear el sistema de ficheros %s aún no está implementado."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 #, fuzzy
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
@@ -1082,11 +1038,11 @@ msgstr ""
 
 # No se pueden, con N.
 # no pongas dos espacios seguidos
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "No se pueden satisfacer todas las restricciones en la partición."
@@ -1102,48 +1058,48 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "No se puede asignar un número de partición."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "No se puede asignar una ranura de la etiqueta de disco bsd"
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 #, fuzzy
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "No se puede asignar una ranura de la etiqueta de disco bsd"
 
 # te doy permiso para poner inválida
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Tabla de particiones inválida en %s -- firma errónea %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Tabla de particiones inválida - partición recursiva en %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr ""
 "No pueden esconderse particiones extendidas en etiquetas de disco msdos."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr ""
 "No pueden esconderse particiones extendidas en etiquetas de disco msdos."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted no puede redimensionar particiones manejadas por Windows Dynamic Disk."
 
 # No se puede.
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 #, fuzzy
 msgid "cannot create any more partitions"
 msgstr "No se puede crear más particiones."
@@ -1298,12 +1254,12 @@ msgstr ""
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 #, fuzzy
 msgid "device is too small for GPT"
 msgstr "Sistema de ficheros demasiado pequeño para ext2."
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, fuzzy, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1313,7 +1269,7 @@ msgstr ""
 "nuevo que lo que Parted puede reconocer.  Por favor, díganoslo a bug-"
 "parted@gnu.org"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1321,7 +1277,7 @@ msgid ""
 "setting? "
 msgstr ""
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 #, fuzzy
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
@@ -1331,7 +1287,7 @@ msgstr ""
 "quiere decir que otro sistema operativo cree que el disco es más pequeño.  "
 "¿Lo quiere arreglar moviendo la copia al final (y borrando la copia vieja)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1340,7 +1296,7 @@ msgstr ""
 "una tabla actualizada, y utilice la opción de rescate de Parted para "
 "reconstruir las particiones."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 #, fuzzy
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
@@ -1349,7 +1305,7 @@ msgstr ""
 "La tabla primaria GPT está corrupta, pero la copia de respaldo parece "
 "correcta, por lo tanto se usará esta."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1357,11 +1313,11 @@ msgstr ""
 "La tabla primaria GPT está corrupta, pero la copia de respaldo parece "
 "correcta, por lo tanto se usará esta."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr ""
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 #, fuzzy
 msgid "failed to translate partition name"
 msgstr "No se puede asignar un número de partición."
@@ -1397,18 +1353,14 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "La región de datos no empieza al principio de la partición."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "La región de arranque no empieza al principio de la partición."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "La región de arranque de la partición no ocupa toda la partición."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "La región de datos de la partición no ocupa toda la partición."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
@@ -1416,7 +1368,7 @@ msgstr ""
 "Tamaño de bloque extraño en el descriptor del dispositivo: %d bytes no es "
 "divisible por 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1425,11 +1377,11 @@ msgstr ""
 "El descriptor del controlador dice que el tamaño del bloque físico es de %d "
 "bytes, pero Linux dice que es de %d bytes."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Se encontró una tabla de particiones inválida."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1438,11 +1390,11 @@ msgstr ""
 "¡Conflicto en el tamaño de la entrada de la tabla de particiones! ¡La "
 "entrada 1 dice que es %d, pero la entrada %d dice que es %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "¡Extraño!  ¡Hay 2 entradas de tabla de particiones!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1450,18 +1402,18 @@ msgstr ""
 "Cambiando el nombre de una partición raíz o de intercambio impedirán a Linux "
 "de reconocela como tal."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr ""
 "¡No se puede añadir otra partición -- la tabla de las particiones es "
 "demasiado pequeña!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Tabla de partición inválida en %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1471,7 +1423,7 @@ msgstr ""
 "añadirle soporte."
 
 # No se puede.
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "No se puede añadir otra partición."
 
@@ -1646,39 +1598,39 @@ msgstr ""
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr ""
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "No hay memoria."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr ""
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr ""
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr ""
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr ""
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr ""
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr ""
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr ""
 
@@ -1688,18 +1640,18 @@ msgstr ""
 msgid "%s : Failed to allocate partition block\n"
 msgstr "Fallo al escribir el bloque de la partición en %d."
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, fuzzy, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : Bucle detectado en el bloque %d."
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, fuzzy, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1725,22 +1677,22 @@ msgstr "%s : Suma de comprobaci
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : Bucle detectado en el bloque %d."
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, fuzzy, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s : No se encuentra el bloque rdb, nunca debería ocurrir."
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, fuzzy, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "Fallo al escribir el bloque de la partición en %d."
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1838,7 +1790,7 @@ msgid ""
 "geometry."
 msgstr ""
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1865,14 +1817,14 @@ msgstr ""
 "El inicio delta del cluster = %d, que no es un múltiplo del tamaño de "
 "cluster %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Entrada de directorio incorrecta para %s: el primer cluster es el final de "
 "la marca del fichero."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1880,7 +1832,7 @@ msgstr ""
 "FAT incorrecta: cadena no terminada para %s.  Debería ejecutar dosfsck o "
 "scandisck."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1889,7 +1841,7 @@ msgstr ""
 "FAT incorrecta: el cluster %d está fuera del sistema de ficheros en la "
 "cadena para %s.  Debería ejecutar dosfsck o scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1898,26 +1850,17 @@ msgstr ""
 "FAT incorrecta: el cluster %d tiene enlaces cruzados para %s.  Debería "
 "ejecutar dosfsck o scandisck."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s es %dk, pero tiene %d clusters (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"El fichero %s está marcado como un fichero del sistema.  Esto quiere decir "
-"que si lo mueve puede ocurrir que algunos programas no funcionen."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Partición demasiado grande/pequeña para un sistema de ficheros %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1925,11 +1868,11 @@ msgstr ""
 "Las FATs no son iguales.  Si no sabe que significa esto, seleccione "
 "cancelar, ejecute scandisk en el sistema de ficheros, y después vuelva."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "No hay configuraciones posibles para este tipo de FAT."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1941,7 +1884,7 @@ msgstr ""
 "clusters es de %d (se esperaba %d); el tamaño de la FAT es de %d sectores "
 "(se esperaba %d)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
@@ -1949,7 +1892,7 @@ msgstr ""
 "El sistema de ficheros está informando que el espacio libre de clusters es "
 "de %d, no de %d clusters."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1957,16 +1900,16 @@ msgstr ""
 "No hay espacio suficiente en el directorio root para todos los ficheros.  "
 "Puede cancelar o descartar perdiendo los ficheros."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Error al escribir en el directorio root."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr ""
 "Si deja su sistema de ficheros como FAT16, entonces no tendrá problemas."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1976,7 +1919,7 @@ msgstr ""
 "debería re-instalar el cargador de arranque de MS Windows.  Si quiere hacer "
 "esto, debería consultar el manual de Parted (o el manual de su distribución)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -1984,7 +1927,7 @@ msgstr ""
 "Si deja su sistema de ficheros como FAT32, entonces no tendrá nuevos "
 "problemas."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1998,42 +1941,42 @@ msgstr ""
 "También, la conversión a FAT32 hará ilegible el sistema de ficheros para MS "
 "DOS, MS Windows 95a y MS Windows NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "¿Le gustaría usar FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "El sistema de ficheros sólo puede ser redimensionado a este tamaño para "
 "convertirlo a FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "El sistema de ficheros sólo puede ser redimensionado a este tamaño para "
 "convertirlo a FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted no puede redimensionar esta partición a ese tamaño. ¡Estamos "
 "trabajando en ello!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2042,43 +1985,43 @@ msgstr ""
 "La FAT %d del medio %x no coincide con los sectores de arranque del medio "
 "%x.  Debería, probablemente, ejecutar scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, fuzzy, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: el cluster %ld está fuera del sistema de ficheros"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, fuzzy, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: el cluster %ld está fuera del sistema de ficheros"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: no quedan clusters libres"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "No se puede detectar el sistema de ficheros."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, fuzzy, c-format
 msgid "resizing %s file systems is not supported"
 msgstr ""
 "El soporte para redimensionar el sistema de ficheros %s aún no está "
 "implementado."
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "¡El sistema de ficheros es más grande que su volumen!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "El sistema de ficheros contiene errores."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "No pueden leerse los bloques incorrectos."
 
@@ -2140,90 +2083,90 @@ msgstr ""
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "contrayendo"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 #, fuzzy
 msgid "writing HFS Master Directory Block"
 msgstr "Error al escribir en el directorio raíz."
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 #, fuzzy
 msgid "Error while writing the allocation file."
 msgstr "Error al escribir en el directorio raíz."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 #, fuzzy
 msgid "shrinking HFS wrapper"
 msgstr "contrayendo"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2294,74 +2237,74 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 #, fuzzy
 msgid "Could not cache the file system in memory."
 msgstr "No se puede detectar el sistema de ficheros."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Ocurrió un error durante la relocalización de la extensión."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "mostrar este mensaje de ayuda"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr ""
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr ""
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "no pedir nunca la intervención del usuario"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "mostrar la versión"
 
 # No se puede.
-#: parted/parted.c:130
+#: parted/parted.c:131
 #, fuzzy
 msgid "alignment for new partitions"
 msgstr "No se puede crear más particiones."
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 #, fuzzy
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
@@ -2371,60 +2314,60 @@ msgstr ""
 "disco msdos, las particiones primarias van del 1 al 4, y las particiones "
 "lógicas de 5 en adelante.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "TIPO_ETIQUETA es uno de: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "FLAG es uno de: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 #, fuzzy
 msgid "UNIT is one of: "
 msgstr "FLAG es uno de: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr ""
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "TIPO-PART es uno de: primário, lógico, extendido\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "TIPO-SF es uno de: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
 "sector.\n"
 msgstr ""
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
 msgstr ""
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "ESTADO es uno de: on, off\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "DISPOSITIVO es normalmente /dev/hda o /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NOMBRE es cualquier palabra que quiera\n"
 
 # Please, busca este mismo texto en el .po de fileutils o textutils e intenta
 # que se parezca en la terminología,
 # por ejemplo: is distributed -> se distribuye
-#: parted/parted.c:164
+#: parted/parted.c:165
 #, fuzzy
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
@@ -2446,55 +2389,55 @@ msgstr ""
 "para obtener más detalles.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(tiempo que queda %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, fuzzy, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr ""
 "La partición %s está usandose.  Debe desmontarla antes de modificarla con "
 "Parted."
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "La(s) partición(es) en %s está(n) siendo usada(s)."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
 "will be lost. Do you want to continue?"
 msgstr ""
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "¿Nuevo tipo de etiqueta de disco?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "¿Tipo de partición?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "¿Nombre de la partición?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "¿Tipo de sistema de ficheros?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "¿Inicio?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "¿Fin?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, fuzzy, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2503,99 +2446,99 @@ msgstr ""
 "Pidió redimensionar la partición para %s - %s. Lo más cerca que Parted puede "
 "manejar es %s - %s."
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
 msgstr ""
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "Las etiquetas de disco de %s no soportan particiones extendidas."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "¿Número de la partición?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr ""
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, fuzzy, c-format
 msgid "Disk %s: %s\n"
 msgstr "Tipo de etiqueta de disco: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr ""
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, fuzzy, c-format
 msgid "Partition Table: %s\n"
 msgstr "¿Nombre de la partición?"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, fuzzy, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Tipo de etiqueta de disco: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Numero"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Inicio"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Fin"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Tamaño"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Typo"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Sistema de ficheros"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Nombre"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Banderas"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr ""
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2604,66 +2547,66 @@ msgstr ""
 "Ha sido encontrada una partición %s %s en %s -> %s.  ¿Quiere añadirla a la "
 "tabla de particiones?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "buscando los sistemas de ficheros"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr ""
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "¿Nuevo dispositivo?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr ""
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr ""
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, c-format
 msgid "%d not aligned: %s\n"
 msgstr ""
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 #, fuzzy
 msgid "Flag to Invert?"
 msgstr "¿Bandera a cambiar?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "¿Nuevo estado?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "¿Unidad?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 #, fuzzy
 msgid "align-check"
 msgstr "comprobar"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
 msgstr ""
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 #, fuzzy
 msgid ""
 "help [COMMAND]                           print general help, or help on "
@@ -2672,15 +2615,15 @@ msgstr ""
 "help [ORDEN]                 muestra la ayuda general, o la ayuda sobre la "
 "ORDEN"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr ""
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 #, fuzzy
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
@@ -2689,15 +2632,15 @@ msgstr ""
 "mklabel TIPO-ETIQUETA        crea una nueva etiqueta de disco (en la tabla "
 "de partición)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart TIPO-PART [TIPO-SF] INICIO FIN     crea una partición"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 #, fuzzy
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
@@ -2707,27 +2650,27 @@ msgstr ""
 "partición. Debe ser especificado el TIPO-SF para asignar una ID de "
 "partición.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 #, fuzzy
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr "name NUMERO NOMBRE            nombra la partición NUMERO como NOMBRE"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
 "partition"
 msgstr ""
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 #, fuzzy
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
@@ -2737,41 +2680,41 @@ msgstr ""
 "da un número de partición, se muestra la información más detallada\n"
 "sobre esa particion.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
 msgstr ""
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 #, fuzzy
 msgid "quit                                     exit program"
 msgstr "quit                          sale del programa"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 #, fuzzy
 msgid ""
 "rescue START END                         rescue a lost partition near START "
@@ -2779,133 +2722,142 @@ msgid ""
 msgstr ""
 "rescue INICIO FIN       recupera las particiones perdidas entre INICIO y FIN"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr ""
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 #, fuzzy
 msgid "resizepart"
 msgstr "resize"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 #, fuzzy
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "rm NUMERO                      borra la partición NUMERO"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 #, fuzzy
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm NUMERO                      borra la partición NUMERO"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 #, fuzzy
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select DISPOSITIVO           elegir el dispositivo a editar"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr ""
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr ""
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
 msgstr ""
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 #, fuzzy
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "set NUMERO MODIF ESTADO        cambia un modificador de la partición NUMERO"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr ""
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 #, fuzzy
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
 msgstr "rm NUMERO                      borra la partición NUMERO"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 #, fuzzy
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "unit UNIDAD                     configura la unidad por defecto para UNIDAD"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr ""
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
 msgstr ""
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
 msgstr ""
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "No se encontró el dispositivo"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr ""
 
-#: parted/parted.c:2325
+# boot loader -> cargador de arranque.
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Debe reinstalar su cargador de arranque antes de reiniciar.  Lea la sección "
+"4 de la documentación del Usuario de Parted para obtener más información."
+
+#: parted/parted.c:2341
 #, fuzzy
 msgid "You may need to update /etc/fstab.\n"
 msgstr "No se olvide de actualizar /etc/fstab, si es necesario.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 
 # Uso: o Modo de empleo:
-#: parted/ui.c:167
+#: parted/ui.c:168
 #, fuzzy
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
@@ -2918,7 +2870,7 @@ msgstr ""
 "ORDEN(es), se ejecuta en\n"
 "modo interactivo.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2952,219 +2904,220 @@ msgid ""
 "consider important.\n"
 msgstr ""
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
 msgstr ""
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
 msgstr ""
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
 msgstr ""
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
 msgstr ""
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
 msgstr ""
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
 msgstr ""
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
 msgstr ""
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
 msgstr ""
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
 msgstr ""
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
 msgstr ""
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
 msgstr ""
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
 msgstr ""
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
 msgstr ""
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
 msgstr ""
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
 msgstr ""
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
 msgstr ""
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
 msgstr ""
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
 msgstr ""
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
 msgstr ""
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
 msgstr ""
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr ""
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Se esperaba un número de partición."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "La partición no existe."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Se esperaba un tipo de sistema de ficheros."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Tipo de sistema de ficheros \"%s\" desconocido."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Se esperaba un tipo de etiqueta de disco."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
 # No se puede.
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "No se puede crear más particiones."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Se esperaba un tipo de partición."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "on"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "off"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr ""
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr ""
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "OPCIÓNes:"
 
 # Comando es una barbaridad. En es@li.org usamos "orden".
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "ORDENes:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
 "Report bugs to %s\n"
 msgstr ""
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Usando %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr ""
 
 # drives -> unidades
+#, c-format
 #~ msgid ""
 #~ "The sector size on %s is %d bytes.  Parted is known not to work properly "
 #~ "with drives with sector sizes other than %d bytes."
@@ -3176,6 +3129,7 @@ msgstr ""
 #~ msgid "IDE"
 #~ msgstr "IDE"
 
+#, c-format
 #~ msgid ""
 #~ "The kernel was unable to re-read the partition table on %s (%s).  This "
 #~ "means Linux won't know anything about the modifications you made until "
@@ -3186,6 +3140,34 @@ msgstr ""
 #~ "significa que Linux no reconocerá las modificaciones que hizo.  Debe "
 #~ "reiniciarlo antes de hacer cualquier uso con %s."
 
+# cargador "de" aranque (no del)
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "No se pudo releer la tabla de particiones, por lo tanto es necesario "
+#~ "reiniciar antes de montar alguna partición modificada.  ¡También necesita "
+#~ "reinstalar su cargador de arranque antes de reiniciar (que puede requerir "
+#~ "montar las particiones modificadas).  ¡Es imposible hacer ambas cosas!  "
+#~ "Así que necesitará arrancar con un disco de rescate y reinstalar su "
+#~ "cargador de arranque desde el disco de rescate.  Lea la sección 4 de la "
+#~ "documentación del Usuario de Parted para obtener más información."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "La tabla de particiones en %s no puede ser releida(%s).  Esto significa "
+#~ "que Hurd (o Linux) no reconocerá las modificaciones que hizo.  Debe "
+#~ "reiniciar su computadora antes de hacer nada con %s."
+
+#, c-format
 #~ msgid ""
 #~ "%s contains GPT signatures, indicating that it has a GPT table.  However, "
 #~ "it does not have a valid fake msdos partition table, as it should.  "
@@ -3200,10 +3182,15 @@ msgstr ""
 #~ "la tabla GPT y ahora está usando una tabla de particiones msdos.  ¿Es "
 #~ "esta una tabla de partición GPT?"
 
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "La región de arranque no empieza al principio de la partición."
+
+#, c-format
 #~ msgid "Support for opening %s file systems is not implemented yet."
 #~ msgstr ""
 #~ "El soporte para abrir el sistema de ficheros %s aún no está implementado."
 
+#, c-format
 #~ msgid "Support for checking %s file systems is not implemented yet."
 #~ msgstr ""
 #~ "El soporte para comprobar el sistema de ficheros %s aún no está "
@@ -3218,6 +3205,7 @@ msgstr ""
 #~ msgid "Can't copy onto an overlapping partition."
 #~ msgstr "No se puede copiar sobre una partición superpuesta."
 
+#, c-format
 #~ msgid ""
 #~ "Direct support for copying file systems is not yet implemented for %s.  "
 #~ "However, support for resizing is implemented.  Therefore, the file system "
@@ -3232,11 +3220,13 @@ msgstr ""
 #~ "la partición que está intentando copiar o copie en una partición más "
 #~ "grande."
 
+#, c-format
 #~ msgid "Support for copying %s file systems is not implemented yet."
 #~ msgstr ""
 #~ "El soporte para copiar el sistema de ficheros %s aún no está implementado."
 
 # bicho :-)
+#, c-format
 #~ msgid ""
 #~ "A bug has been detected in GNU parted.  Please email a bug report to bug-"
 #~ "parted@gnu.org containing the version (%s) and the following message:"
@@ -3244,6 +3234,7 @@ msgstr ""
 #~ "Si detectó un bicho en GNU parted. Por favor, envíe un informe del bicho "
 #~ "a bug-parted@gnu.org conteniendo la versión (%s) y el mensaje siguiente:"
 
+#, c-format
 #~ msgid "Attempt to read sectors %ld-%ld outside of partition on %s."
 #~ msgstr ""
 #~ "Se intentaron leer los sectores %ld-%ld fuera de la partición en %s."
@@ -3305,11 +3296,13 @@ msgstr ""
 #~ msgid "adding groups"
 #~ msgstr "añadiendo grupos"
 
+#, c-format
 #~ msgid "Your file system is too full to resize it to %i blocks.  Sorry."
 #~ msgstr ""
 #~ "Su sistema de ficheros está demasiado lleno para redimensionarlo a %i "
 #~ "bloques.  Disculpe."
 
+#, c-format
 #~ msgid ""
 #~ "Your file system has too many occupied inodes to resize it to %i blocks.  "
 #~ "Sorry."
@@ -3338,9 +3331,11 @@ msgstr ""
 #~ "¡Se encontraron bloques con referencia cruzada!  ¡Mejor ejecutar primero "
 #~ "e2fsck!"
 
+#, c-format
 #~ msgid "Block %i has no reference?  Weird."
 #~ msgstr "¿El bloque %i no tiene una referencia?  Estraño."
 
+#, c-format
 #~ msgid "Block %i shouldn't have been marked!"
 #~ msgstr "¡El bloque %i no debería haber sido marcado!"
 
@@ -3361,6 +3356,7 @@ msgstr ""
 #~ msgid "writing per-group metadata"
 #~ msgstr "escribiendo metadatos por-grupo"
 
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3369,6 +3365,14 @@ msgstr ""
 #~ "Parted es conocido por no funcionar adecuadamente con tamaños de sector "
 #~ "distintos de 512 bytes."
 
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "El fichero %s está marcado como un fichero del sistema.  Esto quiere "
+#~ "decir que si lo mueve puede ocurrir que algunos programas no funcionen."
+
 #~ msgid "Too many bad pages."
 #~ msgstr "Demasiadas páginas incorrectas."
 
@@ -3387,6 +3391,7 @@ msgstr ""
 #~ msgid "File system?"
 #~ msgstr "¿Sistema de ficheros?"
 
+#, c-format
 #~ msgid ""
 #~ "You requested to create a partition at %s - %s. The closest Parted can "
 #~ "manage is %s - %s."
@@ -3409,6 +3414,7 @@ msgstr ""
 #~ "No se puede mover una partición sobre sí misma.  ¿Pruebe a usar "
 #~ "redimensionar, quizás?"
 
+#, c-format
 #~ msgid ""
 #~ "You requested to move the partition to %s - %s. The closest Parted can "
 #~ "manage is %s - %s."
@@ -3416,25 +3422,31 @@ msgstr ""
 #~ "Pidió mover la partición a %s - %s. Lo más cerca que Parted puede manejar "
 #~ "es %s - %s."
 
+#, c-format
 #~ msgid "Minor: %d\n"
 #~ msgstr "Minor: %d\n"
 
+#, c-format
 #~ msgid "Flags: "
 #~ msgstr "Banderas: "
 
+#, c-format
 #~ msgid "File System: %s\n"
 #~ msgstr "Sistema de ficheros: %s\n"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid "Size:         "
 #~ msgstr "Tamaño:         %10.3fMb (%d%%)\n"
 
+#, c-format
 #~ msgid "Minimum size: "
 #~ msgstr "Tamaño mínimo: "
 
+#, c-format
 #~ msgid "Maximum size: "
 #~ msgstr "Tamaño máximo: "
 
+#, c-format
 #~ msgid "Disk geometry for %s: %s - %s\n"
 #~ msgstr "Geometría de disco para %s: %s - %s\n"
 
@@ -3491,6 +3503,7 @@ msgstr ""
 #~ "resize NUMERO INICIO FIN       redimensiona el sistema de ficheros y la "
 #~ "partición NUMERO"
 
+#, c-format
 #~ msgid ""
 #~ "You found a bug in GNU Parted.  Please email a bug report to bug-"
 #~ "parted@gnu.org containing the version (%s), and the following message:\n"
index 010149f5c1a23efd09ed95944ebda183df4e5a49..354cb0f2d3f9879d141c9c986d85e102a5b1d4fc 100644 (file)
Binary files a/po/fr.gmo and b/po/fr.gmo differ
index 3a24fe470cdc0615f2baa780d7251ed4dd08f209..b75d2adf7489b0a4b2e4ca347c21d27b31f9c4fa 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -13,7 +13,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 3.1.90\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2015-04-19 01:50+0200\n"
 "Last-Translator: Stéphane Aulery <lkppo@free.fr>\n"
 "Language-Team: French <traduc@traduc.org>\n"
@@ -102,11 +102,11 @@ msgstr "%s : cette option requiert un argument -- « %c »\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "«"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "»"
 
@@ -374,32 +374,17 @@ msgstr "Aide générale des logiciels GNU : <http://www.gnu.org/gethelp/>\n"
 msgid "memory exhausted"
 msgstr "mémoire épuisée"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "invalide %s%s pour l’argument « %s »"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "suffixe invalide dans %s%s pour l’argument « %s »"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s argument « %s » trop grand"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Image Disque"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Erreur pendant l’ouverture de %s : %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -407,47 +392,47 @@ msgstr ""
 "Impossible d’ouvrir %s en lecture-écriture (%s). %s a été ouvert en lecture "
 "seule."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s lors d’un positionnement pour lecture sur %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s lors de la lecture sur %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Impossible d’écrire sur %s car il est ouvert en lecture seule."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s lors d’un positionnement pour écriture sur %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s lors de l’écriture sur %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Essayez « %s --help » pour plus d’informations.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Usage : %s [OPTION] [PÉRIPHÉRIQUE]…\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -464,7 +449,7 @@ msgstr ""
 "  -h, --help       affiche l’aide et quitte\n"
 "  -v, --version    affiche les informations de version et quitte\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -472,7 +457,7 @@ msgstr ""
 "\n"
 "Quand aucun PÉRIPHÉRIQUE n’est précisé, teste toutes les partitions.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -490,45 +475,7 @@ msgstr "Impossible d’ouvrir %s."
 msgid "Unable to probe store."
 msgstr "Impossible de tester le stockage."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"La table de partition ne peut être relue, vous avez donc besoin de "
-"redémarrer avant de monter toute partition modifiée. Vous devez aussi "
-"réinstaller le gestionnaire de démarrage avant de redémarrer (ce qui peut "
-"nécessiter de monter les partitions modifiées). Il est impossible de faire "
-"ces deux choses à la fois ! C’est pourquoi vous aurez besoin de démarrer à "
-"partir d’un disque de secours et de réinstaller le gestionnaire de démarrage "
-"à partir de ce disque. Consultez la section 4 de la documentation "
-"utilisateur de Parted pour plus de détails."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"La table de partition sur %s ne peut être relue (%s). Cela signifie que Hurd "
-"ne connaît rien des modifications effectuées. Vous devriez redémarrer "
-"l’ordinateur avant de faire quoi que ce soit avec %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Vous devriez réinstaller le gestionnaire de démarrage avant de redémarrer. "
-"Consultez la section 4 de la documentation utilisateur de Parted pour plus "
-"d’informations."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s essaie de synchroniser %s sur le disque"
@@ -859,15 +806,15 @@ msgstr "méta-données"
 msgid "free"
 msgstr "libre"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "étendue"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logique"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primaire"
 
@@ -943,64 +890,73 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "pmbr_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Drapeau de partition inconnu, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Information"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Avertissement"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Erreur"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Fatale"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Bug"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Pas d’implémentation"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Réparer"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Oui"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Non"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Réessayer"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Ignorer"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Annuler"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -1014,32 +970,32 @@ msgstr ""
 "rapportez celle-ci à %s en précisant au moins la version (%s) et le message "
 "suivant : "
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr ""
 "La prise en charge en lecture du système de fichiers AIX n’est pas encore "
 "implanté."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr ""
 "La prise en charge de l’écriture du système de fichiers AIX n’est pas encore "
 "implanté."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "La prise en charge de la création de partitions AIX n’est pas encore "
 "implanté."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "La prise en charge de la copie de partitions AIX n’est pas encore implanté."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1047,7 +1003,7 @@ msgstr ""
 "La prise en charge du type de système de configuration des partitions dans "
 "les étiquettes de disque AIX n’est pas encore implanté."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 "La prise en charge de la modification des drapeaux dans les étiquettes de "
@@ -1138,11 +1094,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Impossible de satisfaire toutes les contraintes sur la partition."
@@ -1158,47 +1114,47 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Impossible d’allouer un numéro de partition."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Impossible d’allouer l’entrée d’une étiquette de disque BSD."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Impossible d’allouer l’entrée d’une étiquette de disque DASD."
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Table de partition invalide sur %s - signature erronée %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Table de partition invalide - partition récursive sur %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr ""
 "Les partitions étendues ne peuvent être cachées sur les disques étiquetés MS-"
 "DOS."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr ""
 "Les partitions étendues ne peuvent être cachées sur les disques étiquetés MS-"
 "DOS."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted ne peut redimensionner les partitions gérées par Windows Dynamic Disk."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "impossible de créer davantage de partitions"
 
@@ -1343,11 +1299,11 @@ msgstr "Impossible de trouver la taille de bloc."
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "périphérique trop petit pour GPT"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1356,7 +1312,7 @@ msgstr ""
 "Le format de la table de partitions GPT est de version %x, ce qui est plus "
 "récent que ce que Parted peut reconnaître. SVP prévenez-nous !"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1367,7 +1323,7 @@ msgstr ""
 "voulez-vous ajuster la table GPT pour utiliser tout l’espace (%llu blocs en "
 "plus) ou continuer ainsi ?"
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1376,7 +1332,7 @@ msgstr ""
 "devrait. Faut-il corriger en déplaçant la copie à la fin du disque (et "
 "enlever la vieille sauvegarde) ?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1385,7 +1341,7 @@ msgstr ""
 "les deux. Essayer d’écrire une nouvelle table et d’utiliser le mode de "
 "secours de Parted pour récupérer les partitions."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1393,7 +1349,7 @@ msgstr ""
 "La sauvegarde de table GPT est corrompue mais l’originale semble valide et "
 "sera donc utilisée."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1401,11 +1357,11 @@ msgstr ""
 "La table primaire GPT est corrompue mais sa sauvegarde semble valide, elle "
 "sera donc utilisée."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "erreur CRC sur la table primaire de partitions"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "échec de traduction du nom de partition"
 
@@ -1438,20 +1394,16 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "La zone de données ne commence pas au début de la partition."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "La zone d’amorce n’est pas au début de la partition."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr ""
 "La zone d’amorce de la partition ne couvre pas entièrement la partition."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr ""
 "La zone de données de la partition ne couvre pas entièrement la partition."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
@@ -1459,7 +1411,7 @@ msgstr ""
 "Taille bizarre de bloc sur le descripteur de périphérique : %d octets n’est "
 "pas divisible par 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1468,11 +1420,11 @@ msgstr ""
 "Le descripteur du pilote indique une taille physique de bloc de %d octets, "
 "mais Linux lui indique %d octets."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Aucune table de partitions valide n’a été trouvée."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1481,11 +1433,11 @@ msgstr ""
 "Tailles conflictuelles des entrées de la table de partition ! L’entrée 1 "
 "indique %d alors que l’entrée %d indique %d !"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Bizarre - Il y a 2 entrées de table de partitions !"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1493,18 +1445,18 @@ msgstr ""
 "Changer le nom d’une partition racine (root) ou d’échange (swap) empêchera "
 "Linux de les reconnaître en tant que telles."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr ""
 "Impossible d’ajouter une autre partition - la table de partition est trop "
 "petite !"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Table de partition invalide sur %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1513,7 +1465,7 @@ msgstr ""
 "La partition %d n’est pas alignée sur une frontière de cylindre. Ce cas de "
 "figure n’est pas pris en charge."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Impossible d’ajouter une autre partition."
 
@@ -1691,39 +1643,39 @@ msgstr "Impossible d’écrire la table de volume VTOC FMT7 DSCB."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Impossible d’écrire VTOC FMT9 DSCB."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Mémoire insuffisante."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Impossible d’obtenir la taille de l’unité spéciale « COMPACT »."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "« %s » a une syntaxe de localisation invalide."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Le nombre maximum de têtes est %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Le nombre maximum de secteurs est %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "La localisation %s est en dehors du périphérique %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Nombre invalide."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "Utiliser une unité plus petite à la place d’une valeur inférieure à 1"
 
@@ -1733,18 +1685,18 @@ msgstr "Utiliser une unité plus petite à la place d’une valeur inférieure 
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : Impossible d’allouer un bloc de partition\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : Impossible d’allouer un bloc\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : Impossible de lire le bloc de démarrage %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1770,23 +1722,23 @@ msgstr "%s : Mauvaise somme de contrôle sur le bloc %llu de type %s\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : impossible d’écrire le bloc %d\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s : impossible d’allouer le bloc RDB spécifique\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr ""
 "%s : impossible de trouver le bloc RDB, cela ne devrait jamais arriver\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : Impossible de lire les blocs de la partition %llu\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1900,7 +1852,7 @@ msgstr ""
 "système de fichiers sera modifiée de manière à concorder avec la géométrie "
 "CHS de la table des partitions."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1927,14 +1879,14 @@ msgstr ""
 "Delta de départ du cluster = %d , lequel n’est pas un multiple de la taille "
 "d’un cluster %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Entrée de répertoire erronée pour %s : le premier cluster est à la fin du "
 "marqueur de fichiers."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1942,7 +1894,7 @@ msgstr ""
 "Table FAT erronée : chaîne non terminée pour %s. Vous devriez exécuter "
 "dosfsck ou scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1951,7 +1903,7 @@ msgstr ""
 "Table FAT erronée : le cluster %d est en dehors du système de fichiers dans "
 "la chaîne associée à %s. Vous devriez exécuter dosfsck ou scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1960,27 +1912,18 @@ msgstr ""
 "Table FAT erronée : le cluster %d a des liens croisés pour %s. Vous devriez "
 "exécuter dosfsck ou scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s est %dk, mais il a %d clusters (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"Le fichier %s est marqué comme fichier système. Cela signifie que son "
-"déplacement pourrait amener certains programmes à cesser de fonctionner."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr ""
 "La partition est trop grande ou trop petite pour un système de fichiers %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1989,11 +1932,11 @@ msgstr ""
 "alors sélectionnez « annuler » (cancel) et exécutez scandisk sur le système "
 "de fichiers, puis réessayez."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Il n’y a pas de configuration possible pour ce type FAT."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -2004,7 +1947,7 @@ msgstr ""
 "Windows. La taille du cluster est %dk (%dk attendu). Le nombre de clusters "
 "est %d (%d attendu). La taille des FAT est de %d secteurs (%d attendu)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
@@ -2012,7 +1955,7 @@ msgstr ""
 "Le système de fichiers annonce un espace libre de %d clusters et non pas %d "
 "clusters."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -2021,17 +1964,17 @@ msgstr ""
 "fichiers. Soit annuler (cancel), soit ignorer (ignore) avec perte de "
 "fichiers."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Erreur d’écriture du répertoire racine (root)."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr ""
 "Si vous conservez votre système de fichiers en FAT16, vous n’aurez pas de "
 "problème."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2042,7 +1985,7 @@ msgstr ""
 "de démarrage de MS Windows. Si vous désirez faire cela, vous devriez "
 "consulter le manuel de Parted (ou le manuel de votre distribution)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -2050,7 +1993,7 @@ msgstr ""
 "Si vous conservez votre système de fichiers en FAT32 alors vous "
 "n’introduirez pas de nouveaux problèmes."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2065,42 +2008,42 @@ msgstr ""
 "FAT32 rendra le système de fichiers illisible par MS DOS, MS Windows 95a et "
 "MS Windows NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Voulez-vous utiliser FAT32 ?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "Le système de fichiers peut seulement être redimensionné à cette taille en "
 "le convertissant en FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "Le système de fichiers peut seulement être redimensionné à cette taille en "
 "le convertissant en FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted ne peut redimensionner cette partition à cette taille. Nous y "
 "travaillons !"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2109,43 +2052,43 @@ msgstr ""
 "La table FAT %d du média %x ne concorde pas avec le secteur d’amorce du "
 "média %x. Vous devriez probablement exécuter scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set : cluster %ld en dehors du système de fichiers"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get : cluster %ld en dehors du système de fichiers"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster : pas de cluster disponible"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Impossible de détecter le système de fichiers."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr ""
 "la modification de la taille du système de fichiers %s n’est pas prise en "
 "charge"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "Le système de fichiers est plus gros que le volume physique !"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "Le système de fichiers contient des erreurs."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "Les blocs défectueux ne peuvent pas être lus."
 
@@ -2220,68 +2163,68 @@ msgstr ""
 "Tentative d’écriture d’un fichier HFS+ ayant un CNID %X après la fin du "
 "fichier."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr ""
 "Désolé, le système de fichiers HFS ne peut être redimensionné de cette "
 "manière pour le moment."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "réduction en cours"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Le déplacement des données a échoué."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 "Le déplacement des données a laissé certaines données à la fin du volume."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "écriture du Master Directory Block HFS"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "Aucune signature HFS[+X] valide n’a été trouvée lors de l’ouverture."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "La version %d du système de fichiers HFS+ n’est pas prise en charge."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "La version %d du système de fichiers HFSX n’est pas prise en charge."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr ""
 "Le déplacement des données a laissé certaines données à la fin du volume."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Erreur lors de l’écriture du fichier d’allocation."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr ""
 "Erreur durant l’écriture de la zone de compatibilité du fichier d’allocation."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "écriture de l’entête de volume HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr ""
 "Une erreur est survenue lors de la recherche du fichier de gestion des blocs "
 "défectueux."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2289,29 +2232,29 @@ msgstr ""
 "Il semble qu’il y ait une erreur dans le gestionnaire HFS : le fichier des "
 "blocs défectueux contient le volume HFS+."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr ""
 "Désolé, le système de fichiers HFS+ ne peut être redimensionné de cette "
 "manière pour le moment."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "réduction du volume HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Le redimensionnement du volume HFS+ a échoué."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "réajustement du conteneur HFS"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "La mise à jour du conteneur HFS a échoué."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2395,7 +2338,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Une zone n’a pas été réallouée."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2403,18 +2346,18 @@ msgstr ""
 "Une référence à une zone correspond à une localisation qui ne devrait pas y "
 "être associée. Vous devriez vérifier le système de fichiers."
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr ""
 "Ce volume HFS n’a pas de fichier catalogue. C’est vraiment inhabituel !"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Ce volume HFS n’a pas de fichier de zones additionnelles. C’est plutôt "
 "inhabituel !"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2422,54 +2365,54 @@ msgstr ""
 "Le fichier de zones additionnelles ne devrait pas contenir sa propre zone ! "
 "Vous devriez vérifier le système de fichiers."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Impossible d’indexer le système de fichiers en mémoire."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "La liste des blocs défectueux ne peut être chargée."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Une erreur est survenue pendant le déplacement de la zone."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr ""
 "Ce volume HFS+ n’a pas de fichier catalogue. C’est vraiment inhabituel !"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Ce volume HFS+ n’a pas de fichier de zones additionnelles. C’est plutôt "
 "inhabituel !"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "affiche ce message d’aide"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "liste la structure des partitions sur tous les périphériques par blocs"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "sortie dans un style lisible par une machine"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "ne demande jamais l’intervention de l’utilisateur"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "affiche la version"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "alignement des nouvelles partitions"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2478,31 +2421,31 @@ msgstr ""
 "disque MS-DOS, les partitions primaires sont numérotées de 1 à 4 et les "
 "partitions logiques à partir de 5.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "LABEL-TYPE est une des valeurs : "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "DRAPEAU est une des valeurs : "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "UNITÉ est parmi : "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "alignement souhaité : minimum ou optimal"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "PART-TYPE est une des valeurs : primaire, logique, étendue\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "FS-TYPE est parmi : "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2512,7 +2455,7 @@ msgstr ""
 "valeurs négatives se comptent à partir de la fin du disque. Par exemple, "
 "=-1s spécifie précisément le dernier secteur.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2521,19 +2464,19 @@ msgstr ""
 "se compte à partir de la fin du disque. Par exemple, -1s spécifie "
 "précisément le dernier secteur.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "ÉTAT est une des valeurs : on, off\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "PÉRIPHÉRIQUE est habituellement du genre /dev/hda ou /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NOM est un mot de votre choix\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2553,24 +2496,24 @@ msgstr ""
 "GNU pour plus de détails.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(temps restant %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr ""
 "La partition %s est en cours d’utilisation. Êtes vous certain de vouloir "
 "continuer ?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Au moins une partition de %s est en cours d’utilisation."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2579,31 +2522,31 @@ msgstr ""
 "Le type du disque %s va être effacé et toutes les données vont être perdues. "
 "Voulez-vous continuer ?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Nouveau type d’étiquette de disque ?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Type de partition ?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Nom de la partition ?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Type de système de fichiers ?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Début ?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Fin ?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2612,7 +2555,7 @@ msgstr ""
 "Vous voulez établir une partition de %s à %s (secteurs %llu..%llu).\n"
 "La position la plus proche gérable est %s à %s (secteurs %llu..%llu). %s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2620,7 +2563,7 @@ msgstr ""
 "\n"
 "Est-ce acceptable pour vous ?"
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, fuzzy, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
@@ -2628,90 +2571,90 @@ msgstr ""
 "L’alignement de la partition ainsi définie n’est pas optimal au niveau "
 "performance."
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr ""
 "Les étiquettes du disque %s ne prennent pas en charge les partitions "
 "étendues."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Numéro de partition ?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 "Géométrie BIOS cylindre,tête,secteur : %d,%d,%d. Chaque cylindre : %s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Modèle : %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Disque %s : %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Taille des secteurs (logiques/physiques) : %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Table de partitions : %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Drapeaux de disque : %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Numéro"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Début"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Fin"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Taille"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Type"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Système de fichiers"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Nom"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Drapeaux"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Espace libre"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2720,56 +2663,56 @@ msgstr ""
 "Une partition %s %s a été localisée de %s à %s. Voulez-vous l’ajouter à la "
 "table de partition ?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "recherche des systèmes de fichiers"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "La commande de redimensionnement a été supprimer dans Parted 3.0"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "Réduire une partition peut causer une perte de données ; Êtes vous certain "
 "de vouloir continuer ?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Nouveau périphérique ?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "type d’alignement (min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d aligné(es)\n"
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, fuzzy, c-format
 msgid "%d not aligned: %s\n"
 msgstr "%d non aligné(es)\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Drapeaux à basculer ?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Nouvel état ?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Unité ?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "vérifier-align"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
@@ -2778,11 +2721,11 @@ msgstr ""
 "vérifier-align TYPE N                     contrôle l’alignement de TYPE(min|"
 "opt) de la partition N"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "aide"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2790,15 +2733,15 @@ msgstr ""
 "help [COMMANDE]                          affiche l’aide générale ou l’aide "
 "concernant la COMMANDE"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2806,15 +2749,15 @@ msgstr ""
 "mklabel,mktable LABEL-TYPE               crée une nouvelle étiquette de "
 "disque (table de partition)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart PART-TYPE [FS-TYPE] DEBUT FIN      créer une partition"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2823,20 +2766,20 @@ msgstr ""
 "la partition. FS-TYPE doit être spécifié pour initialiser le type de "
 "partition approprié.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "nommer"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "name NUMÉRO NOM                          donner un NOM à la partition NUMÉRO"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "afficher"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2846,7 +2789,7 @@ msgstr ""
 "les périphériques disponibles, l’espace libre, toutes les partitions ou une "
 "partition précise"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2854,11 +2797,11 @@ msgstr ""
 "Sans argument, « print » affiche toute la table de partitions. Toutefois "
 "avec les arguments suivants, elle permet bien d’autres actions.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices : affiche tous les périphériques par blocs actifs\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2866,33 +2809,33 @@ msgstr ""
 "  free : affiche l’information sur l’espace libre non partitionné du "
 "périphérique courant\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list,all : afficher la table de partitions de tous les périphériques par "
 "blocs actifs\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 "  NUMÉRO    : affiche les informations détaillées sur la partition désignée\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quitter"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                    quitter le programme"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2900,55 +2843,55 @@ msgstr ""
 "rescue DEBUT FIN                         restaurer une partition perdue "
 "entre DEBUT et FIN"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "redimentionner"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "La commande de redimensionnement a été supprimée dans Parted 3.0\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "redimpart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "redimpart  NUMÉRO FIN                    redim  partition NUMÉRO"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm NUMÉRO                                détruire partition NUMÉRO"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "sélectionner"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr ""
 "choisir PÉRIPHÉRIQUE                     choisir le périphérique à modifier"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disque_choix"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 "disque_choix DRAPEAU ÉTAT                modifier le DRAPEAU du périphérique "
 "choisi"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disque_basculer"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
@@ -2956,22 +2899,22 @@ msgstr ""
 "disque_basculer [DRAPEAU]                basculer l’état du drapeau du "
 "périphérique choisi"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "positionner"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "set NUMÉRO DRAPEAU ÉTAT                  modifier le DRAPEAU de la partition "
 "NUMÉRO"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "basculer"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2979,20 +2922,20 @@ msgstr ""
 "basculer [NUMÉRO [DRAPEAU]]               basculer l’état du DRAPEAU de la "
 "partition NUMÉRO"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unité"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "unité UNITÉ                              définie l’unité par défaut à UNITÉ"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -3000,39 +2943,48 @@ msgstr ""
 "version                                  affiche la version courante de GNU "
 "Parted ainsi que l’information sur le copyright"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
 msgstr ""
 "« version » affiche le copyright et la version de cette copie de GNU Parted\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 "Usage : %s [-hlmsv] [-a <alignement>] [PÉRIPHÉRIQUE [COMMANDE [PARAMÈTRES]]"
 "…]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Aucun périphérique trouvé"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr ""
 "ATTENTION : vous n’êtes pas superutilisateur. Contrôlez les permissions.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Vous devriez réinstaller le gestionnaire de démarrage avant de redémarrer. "
+"Consultez la section 4 de la documentation utilisateur de Parted pour plus "
+"d’informations."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Ne pas oublier de mettre à jour /etc/fstab si nécessaire.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 "Bienvenue sur GNU Parted ! Tapez « help » pour voir la liste des commandes.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -3044,7 +2996,7 @@ msgstr ""
 "COMMANDE n’est fournie\n"
 "l’exécution se fait en mode interactif.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -3107,7 +3059,7 @@ msgstr ""
 "Plus toutes les informations supplémentaires que vous trouverez importantes "
 "à propos de votre configuration.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -3115,7 +3067,7 @@ msgstr ""
 "\n"
 "Historique des commandes :\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -3123,7 +3075,7 @@ msgstr ""
 "\n"
 "Erreur : SEGV_MAPERR (l’adresse n’est pas associée à un objet)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3131,7 +3083,7 @@ msgstr ""
 "\n"
 "Erreur : SEGV_ACCERR (permissions invalides pour l’objet associé)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3139,7 +3091,7 @@ msgstr ""
 "\n"
 "Erreur : un signal SIGSEGV général est survenu.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3147,7 +3099,7 @@ msgstr ""
 "\n"
 "Erreur : FPE_INTDIV (Entier : division par zéro)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3155,7 +3107,7 @@ msgstr ""
 "\n"
 "Erreur : FPE_INTOVF (Entier : dépassement)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3163,7 +3115,7 @@ msgstr ""
 "\n"
 "Erreur : FPE_INTDIV (division par zéro en nombres flottants)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3171,7 +3123,7 @@ msgstr ""
 "\n"
 "Erreur : FPE_FLTOVF (Flottant : dépassement)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3179,7 +3131,7 @@ msgstr ""
 "\n"
 "Erreur : FPE_FLTUND (Flottant:  dépassement de précision)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3187,7 +3139,7 @@ msgstr ""
 "\n"
 "Erreur : PE_FLTRES (Flottant : résultat inexact)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3195,7 +3147,7 @@ msgstr ""
 "\n"
 "Erreur : FPE_FLTINV (Flottant : opération invalide)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3203,7 +3155,7 @@ msgstr ""
 "\n"
 "Erreur : FPE_FLTSUB (Flottant: débordement de plage)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3211,7 +3163,7 @@ msgstr ""
 "\n"
 "Erreur : Un signal SIGFPE général est survenu."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3219,7 +3171,7 @@ msgstr ""
 "\n"
 "Erreur : ILL_ILLOPC (Opcode illégal)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3227,7 +3179,7 @@ msgstr ""
 "\n"
 "Erreur : ILL_ILLOPN (Opérande illégal)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3235,7 +3187,7 @@ msgstr ""
 "\n"
 "Erreur : ILL_ILLADR (Mode d’adressage illégal)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3243,7 +3195,7 @@ msgstr ""
 "\n"
 "Erreur : ILL_ILLTRP (Déroutement illégal)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3251,7 +3203,7 @@ msgstr ""
 "\n"
 "Erreur : ILL_PRVOPC (Opcode privilégié)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3259,7 +3211,7 @@ msgstr ""
 "\n"
 "Erreur : ILL_PRVREG (Registre privilégié)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3267,7 +3219,7 @@ msgstr ""
 "\n"
 "Erreur : ILL_COPROC (Erreur du coprocesseur)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3275,7 +3227,7 @@ msgstr ""
 "\n"
 "Erreur : ILL_BADSTK (Erreur de pile interne)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3283,69 +3235,69 @@ msgstr ""
 "\n"
 "Erreur : un signal SIGILL général est survenu."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "élément incorrect : %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Numéro de partition attendu."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "La partition n’existe pas."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Type de système de fichiers attendu."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Type de système de fichiers inconnu « %s »."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Type d’étiquette de disque attendu."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Impossible d’ajouter de nouvelle partition."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Type de partition attendu."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "on"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "off"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "optimal"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "minimal"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "OPTIONS :"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "COMMANDES :"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3354,30 +3306,78 @@ msgstr ""
 "\n"
 "Rapporter les anomalies à %s\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Utilisation de %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Cette commande n’a pas de sens en mode non-interactif.\n"
 
+#, c-format
 #~ msgid "%s: option '--%s' doesn't allow an argument\n"
 #~ msgstr "%s : l’option « --%s » ne prend pas d’argument\n"
 
+#, c-format
 #~ msgid "%s: unrecognized option '--%s'\n"
 #~ msgstr "%s : option « --%s » inconnue\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' doesn't allow an argument\n"
 #~ msgstr "%s : l’option « -W %s » ne nécessite pas d’argument\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' requires an argument\n"
 #~ msgstr "%s : l’option « -W %s » requiert un argument\n"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "%s page web : <http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "invalide %s%s pour l’argument « %s »"
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "suffixe invalide dans %s%s pour l’argument « %s »"
+
+#, c-format
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "%s%s argument « %s » trop grand"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "La table de partition ne peut être relue, vous avez donc besoin de "
+#~ "redémarrer avant de monter toute partition modifiée. Vous devez aussi "
+#~ "réinstaller le gestionnaire de démarrage avant de redémarrer (ce qui peut "
+#~ "nécessiter de monter les partitions modifiées). Il est impossible de "
+#~ "faire ces deux choses à la fois ! C’est pourquoi vous aurez besoin de "
+#~ "démarrer à partir d’un disque de secours et de réinstaller le "
+#~ "gestionnaire de démarrage à partir de ce disque. Consultez la section 4 "
+#~ "de la documentation utilisateur de Parted pour plus de détails."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "La table de partition sur %s ne peut être relue (%s). Cela signifie que "
+#~ "Hurd ne connaît rien des modifications effectuées. Vous devriez "
+#~ "redémarrer l’ordinateur avant de faire quoi que ce soit avec %s."
+
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "La zone d’amorce n’est pas au début de la partition."
+
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3385,3 +3385,11 @@ msgstr "Cette commande n’a pas de sens en mode non-interactif.\n"
 #~ "Ce système de fichier a une taille de secteur logique de %d. GNU Parted "
 #~ "ne traite pas correctement les tailles de secteurs différentes de 512 "
 #~ "octets."
+
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "Le fichier %s est marqué comme fichier système. Cela signifie que son "
+#~ "déplacement pourrait amener certains programmes à cesser de fonctionner."
index 66dbb02ba8225e65cb4d3710f67c28d1d1031120..3e11fd1e3cfd00a6dd793bb1e2ef6d199de70dc5 100644 (file)
Binary files a/po/fur.gmo and b/po/fur.gmo differ
index 69665887479b6cd9d4547da87a7bb74952f338b1..0e9ff6d33530b19d6d55a2d8421a5aa4a4d73a96 100644 (file)
--- a/po/fur.po
+++ b/po/fur.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: GNU parted 3.1.90\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2019-01-22 11:21+0100\n"
 "Last-Translator: Fabio Tomat <f.t.public@gmail.com>\n"
 "Language-Team: Friulian <f.t.public@gmail.com>\n"
@@ -97,11 +97,11 @@ msgstr "%s: la opzion e à bisugne di un argoment --'%c'\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "\\"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "\\"
 
@@ -369,32 +369,17 @@ msgstr ""
 msgid "memory exhausted"
 msgstr "memorie esauride"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "l'argoment \\\"%3$s\\\" di %1$s%2$s nol è valit"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "il sufìs  tal argomento \\\"%3$s\\\" di %1$s%2$s nol è valit"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "l'argoment \\\"%3$s\\\" di %1$s%2$s al è masse grant"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Imagjin disc"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Erôr tal vierzi %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -402,47 +387,47 @@ msgstr ""
 "Impussibil vierzi %s in leture-scriture (%s).  %s al è stât viert in "
 "modalitât dome-leture."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s dulinvie il plaçament pe leture su %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s dulinvie la leture su %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Impussibil scrivi su %s parcè che al è viert in modalitât dome-leture."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s dulinvie il plaçament pe scriture su %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s dulinvie la scriture su %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Prove \\\"%s --help\\\" par vê plui informazions.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Ûs: %s [OPZION] [DISPOSITÎF]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -458,7 +443,7 @@ msgstr ""
 "  -h, --help       mostre chest jutori e jes\n"
 "  -v, --version    stampe la version e jes\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -467,7 +452,7 @@ msgstr ""
 "Cuant che nol ven furnît nissun DISPOSITÎF, al scandaie dutis lis "
 "partizions.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -485,43 +470,7 @@ msgstr "Impussibil vierzi %s."
 msgid "Unable to probe store."
 msgstr "Impussibil scandaiâ il dispositîf di archiviazion."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Impussibil tornâ a lei la tabele des partizions.  Chest al significhe che al "
-"covente tornâ a inviâ il sisteme prime di montâ cualsisei partizion "
-"modificade.  Tu varâs ancje di tornâ a instalâ il boot loader prime di tornâ "
-"a inviâ il sisteme (che al podarès vê bisugne di montâ lis partizions "
-"modificadis).  Al è impussibil fâ dutis dôs lis robis!  Duncje tu varâs di "
-"inviâ un disc di ripristinament e di lì tornâ a instalâ il boot loader.  Lei "
-"la sezion 4 de documentazion di Parted par vê plui informazions."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Impussibil tornâ a lei la tabele des partizions su %s (%s).  Chest al "
-"significhe che Hurd nol sa nuie su lis modifichis che tu âs fat.  Tu âs di "
-"tornâ a inviâ il computer prime di fâ alc cun %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Tu âs di tornâ a instalâ il boot loader prime di tornâ a inviâ.  Lei la "
-"sezion 4 de documentazion di Parted par vê plui informazions."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s tal tentatîf di sincronizâ %s sul disc"
@@ -841,15 +790,15 @@ msgstr "metadâts"
 msgid "free"
 msgstr "libar"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "estese"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logjiche"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primarie"
 
@@ -925,64 +874,73 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "pmbr_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Opzion/flag di partizion no cognossude, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Informazions"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Avertiment"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Erôr"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Fatâl"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Bug"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "No implementât"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Comede"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Sì"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "No"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "Va ben"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Torne prove"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Ignore"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Anule"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -996,33 +954,33 @@ msgstr ""
 "segnalazion di erôr vie e-mail a %s specificant almancul la version (%s) e "
 "il messaç chi sot:  "
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr ""
 "Il supuart par lei lis etichetis dai discs AIX nol è stât ancjemò "
 "implementât."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr ""
 "Il supuart par scrivi lis etichetis dai discs AIX nol è stât ancjemò "
 "implementât."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "Il supuart par zontâ partizions aes etichetis dai discs AIX nol è stât "
 "ancjemò implementât."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "Il supuart par dopleâ partizions tes etichetis dai discs AIX nol è stât "
 "ancjemò implementât."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1030,7 +988,7 @@ msgstr ""
 "Il supuart par stabilî il gjenar di sisteme des partizions tes etichetis dai "
 "discs AIX nol è stât ancjemò implementât."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 "Il supuart par stabilî lis opzions/flags tes etichetis dai discs AIX nol è "
@@ -1121,11 +1079,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Impussibil sodisfâ ducj i vincui su pe partizion."
@@ -1141,46 +1099,46 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Impussibil assegnâ un numar di partizion."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Impussibil assegnâ un toc di spazi par une etichete bsd."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Impussibil assegnâ un toc di spazi par une etichete dasd"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Tabele des partizions no valide su %s -- firme %x sbaliade."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Tabele des partizion no valide - partizion ricorsive su %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr ""
 "Lis partizions estesis no puedin jessi platadis su pes etichetis disc msdos."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr ""
 "Lis partizions estesis no puedin jessi platadis su pes etichetis disc msdos."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted nol pues ridimensionâ lis partizions gjestidis di Windows Dynamic "
 "Disk."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "impussibil creâ ancjemò partizions"
 
@@ -1325,11 +1283,11 @@ msgstr "Impussibil recuperâ lis informazions su la dimension dal bloc."
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "il dispositîf al è masse piçul par GPT"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1338,7 +1296,7 @@ msgstr ""
 "Il formât ae tabele des partizions GPT al è ae version %x, che al è plui "
 "gnûf di chel che al ricognòs Parted.  Segnale chest probleme!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1349,7 +1307,7 @@ msgstr ""
 "fa un mût che al dopri dut il spazi (altris %llu blocs) o continuâ cun lis "
 "impostazions atuâls? "
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1357,7 +1315,7 @@ msgstr ""
 "La copie di backup de tabele GPT no je ae fin dal disc, come che al varès di "
 "jessi.  Comedâ, spostant la copie di backup ae fin (e gjavant chê viele)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1366,7 +1324,7 @@ msgstr ""
 "Prove a creâ une gnove tabele, e dopre la funzionalitât di ripristinament "
 "partizions di Parted."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1374,7 +1332,7 @@ msgstr ""
 "La tabele GPT di backup e je ruvinade, ma chê primarie e semee a puest, "
 "duncje si doprarà chê."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1382,11 +1340,11 @@ msgstr ""
 "La tabele GPT primarie e je ruvinade, ma chê di backup e semee a puest, "
 "duncje si doprarà chê."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "il CRC dal array de tabele des partizions primarie nol corispuint"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "no si è rivâts a tradusi il non de partizion"
 
@@ -1419,19 +1377,15 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "La regjon dai dâts no scomence al inizi de partizion."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "La regjon di inviament/boot no scomence al inizi de partizion."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr ""
 "La regjon di inviament/boot de partizion no ocupe la partizion interie."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "La regjon dai dâts de partizion no ocupe la partizion interie."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
@@ -1439,7 +1393,7 @@ msgstr ""
 "Dimension dal bloc inusuâl sul descritôr dal dispositîf: %d byte nol è "
 "divisibil par 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1448,11 +1402,11 @@ msgstr ""
 "Il descritôr dal driver al dîs che la dimension dal bloc fisic e je di %d "
 "byte, ma Linux al dîs che e je di %d byte."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "No je stade cjatade nissune mape des partizions valide."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1461,11 +1415,11 @@ msgstr ""
 "Dimensions dai elements de mape des partizions in conflit!  Il prin element "
 "al dîs di jessi %d, ma l'element %d al dîs di jessi %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Inusuâl!  A esistin 2 mapis des partizions!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1473,18 +1427,18 @@ msgstr ""
 "Cambiant il non di une partizion di root o di swap nol permetarà a Linux di "
 "ricognossile par ce che e je."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr ""
 "Impussibil zontâ une altre partizion -- la mape des partizions e je masse "
 "piçule!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Tabele des partizions no valide su %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1493,7 +1447,7 @@ msgstr ""
 "La partizion %d no je inlineade cui margjins dal cilindri.  Funzionalitât "
 "ancjemò no supuartade."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Impussibil zontâ une altre partizion."
 
@@ -1668,39 +1622,39 @@ msgstr "Impussibil scrivi VTOC FMT7 DSCB."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Impussibil scrivi VTOC FMT9 DSCB."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Memorie insuficiente."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Impussibil otignî la dimension de unitât pe unitât speciâl 'COMPACT'."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "\"%s\" nol à une sintassi valide pes posizions."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Il massim valôr pe testine al è %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Il massim valôr pal setôr al è %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "La posizion %s e je fûr dal dispositîf %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Numar no valit."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "Doprâ une unitât plui piçule invezit che un valôr < 1"
 
@@ -1710,18 +1664,18 @@ msgstr "Doprâ une unitât plui piçule invezit che un valôr < 1"
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : No si è rivâts a assegnâ il bloc de partizion\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : No si è rivâts a assegnâ il bloc\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : Impussibil lei il bloc di inviament/boot %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1747,22 +1701,22 @@ msgstr "%s : sume di control sbaliade sul bloc %llu di gjenar %s\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : Impussibil scrivi il bloc %d\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s : no si è rivâts a assegnâ il bloc rdb disk_specific\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s : nol è stât cjatât il bloc rdb, nol varès di sucedi mai\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : no si è rivâts a lei il bloc %llu de partizion\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1871,7 +1825,7 @@ msgstr ""
 "selezione Comede, la gjeometrie CHS dal file system e vignarà stabilide in "
 "mût che e corispuindi ae gjeometrie CHS de tabele des partizions."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1898,14 +1852,14 @@ msgstr ""
 "Il spostament dal prin bloc dal cluster al è di %d e nol è un multipli de "
 "dimension dal cluster %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Element di directory sbaliât par %s: il prin cluster al è ae fin dal "
 "marcadôr di file."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1913,7 +1867,7 @@ msgstr ""
 "FAT sbaliade: la cjadene par %s no je finide.  Tu varessis di eseguî dosfsck "
 "o scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1922,7 +1876,7 @@ msgstr ""
 "FAT sbaliade: il cluster %d doprât te cjadene par %s al è fûr dal file "
 "system.  Si varès di eseguî dosfsck o scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1931,26 +1885,17 @@ msgstr ""
 "FAT sbaliade: cluster %d cun colegaments incrosâts par %s.  Si varès di "
 "eseguî dosfsck o scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s al è di %dk, ma al à %d cluster (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"Il file %s al è segnât come file di sisteme.  Chest al significhe che "
-"spostantlu cualchi program al podarès blocâsi."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Partizion masse grande/piçule par un file system %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1958,11 +1903,11 @@ msgstr ""
 "Lis FAT no corispuindin.  Se no si sa ce che al significhe, selezione anule, "
 "eseguî scandisk sul file system e daspò tornâ achì."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "No'ndi son configurazions pussibilis par chest gjenar di FAT."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1973,7 +1918,7 @@ msgstr ""
 "cluster e je di %dk (si spietave %dk); il numar di cluster al è %d (si "
 "spietave %d); la dimensions des FAT e je di %d setôrs (si spietave %d)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
@@ -1981,7 +1926,7 @@ msgstr ""
 "Il file system al riferìs che il spazi libar al è di %d cluster invezit che "
 "%d cluster."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1989,15 +1934,15 @@ msgstr ""
 "Nol è vonde spazi inte cartele root par ducj i file.  Anule o ignore par "
 "pierdi i file."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Erôr tal scrivi la cartele root."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "Se si lasse il file system come FAT16 no si varà nissun probleme."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2008,14 +1953,14 @@ msgstr ""
 "cussì, al sarès di consultâ il manuâl di Parted (o il manuâl de "
 "distribuzion)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
 msgstr ""
 "Se si lasse il file system come FAT32 no si crearà nissun gnûf probleme."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2029,42 +1974,42 @@ msgstr ""
 "distribuzion).  In diplui, convertint a FAT32, MS DOS, MS Windows 95a e MS "
 "Windows NT no rivaran a lei il file system."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Doprâ FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "Il file system al pues jessi ridimensionât dome a cheste dimension se si "
 "convertìs a FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "Il file system al pues jessi ridimensionât dome a cheste dimension se si "
 "convertìs a FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted nol pues ridimensionâ cheste partizion a cheste dimension.  "
 "Funzion in svilup!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2073,41 +2018,41 @@ msgstr ""
 "FAT %d, il supuart %x nol corispuint al setôr di inviament dal supuart %x.  "
 "Si varès di eseguî scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: cluster %ld fûr dal file system"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: cluster %ld fûr dal file system"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: nissun cluster libar"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Impussibil rilevâ il file system."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "il ridimensionâ il file system %s, nol è supuartât"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "Il file system al è plui grant dal so volum!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "Il file system al conten erôrs."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "I blocs ruvinâts no puedin jessi lets."
 
@@ -2169,63 +2114,63 @@ msgstr "Impussibil cjatâ il setôr %lli dal file HFS+ cun CNID %X."
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "Si cîr di scrivi il file HFS+ cun CNID %X daûr dal EOF."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "HFS nol pues ancjemò jessi ridimensionât in chê maniere."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "daûr a scurtâ"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Riposizionament dai dâts falît."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 "Il riposizionament dai dâts indi à lassât cualchidun inte fin dal volum."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "scriture dal \"Master Directory Block\" di HFS"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "Vierzint no je stade cjatade nissune firme HFS[+X] valide."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "La version %d di HFS+ no je supuartade."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "La version %d di HFSX no je supuartade."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "Il riposizionament dai dâts indi à lassât cualchidun ae fin dal volum."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Erôr tal scrivi il \"allocation file\"."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "Erôr tal scrivi la part di compatibilitât dal \"allocation file\"."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "scriture de intestazion dal volum di HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr ""
 "Si è presentât un erôr intal viodi il file dai blocs ruvinâts obligatori."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2233,27 +2178,27 @@ msgstr ""
 "Al semee che al sedi un erôr intal wrapper HFS: il file dai blocs ruvinâts "
 "nol conten il volum HFS+ integrât."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "HFS+ nol pues ancjemò jessi ridimensionât in chê maniere."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "daûr a scurtâ il volum HFS+ integrât"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Ridimensionament dal volum HFS+ falît."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "daûr a scurtâ il wrapper HFS"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "No si è rivâts a inzornâ il wrapper HFS."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2335,7 +2280,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Un extent nol è stât riposizionât."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2343,19 +2288,19 @@ msgstr ""
 "Un riferiment a un extent al ven di un puest che nol varès di stâ.  Controle "
 "il file system!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr ""
 "Chest volum HFS nol à il file catalic.  Cheste situazion è je une vore "
 "inusuâl!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Chest volum HFS nol à un \"extents overflow file\".  Cheste e je une "
 "situazion vonde inusuâl!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2363,55 +2308,55 @@ msgstr ""
 "Il \"extent overflow file\" nol à di contignî i siei extent!  Controle il "
 "file system."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Impussibil cjariâ la cache dal file system in memorie."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "Impussibil cjariâ la liste dai blocs ruvinâts."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Al è vignût fûr un erôr tal riposizionâ un extent."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr ""
 "Chest volum HFS+ nol à il file catalic.  Cheste situazion è je une vore "
 "inusuâl!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Chest volum HFS+ nol à un \"extents overflow file\".  Cheste e je une "
 "situazion vonde inusuâl!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "al mostre chest messaç di jutori"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "al liste la disposizion des partizions su ducj i dispositîfs a blocs"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "al mostre un output che si pues analizâ dal computer"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "no sta domandâ mai l'intervent dal utent"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "al mostre la version"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "inlineament pes gnovis partizions"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2420,31 +2365,31 @@ msgstr ""
 "MS-DOS, il numar des partizions primaris di 1 a 4, partizions logjichis di 5 "
 "indenant.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "GJENAR-ETIC al è un di: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "FLAG al è un di: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "UNITÂT al è un di: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "inlineament desiderât: minim o otimâl"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "GJENAR-PART al è un di: primary, logical, extended\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "GJENAR-FS al è un di: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2454,7 +2399,7 @@ msgstr ""
 "partissin de fin dal disc.  Par esempli: -1s al specifiche in maniere "
 "precise l'ultin setôr.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2463,19 +2408,19 @@ msgstr ""
 "partissin de fin dal disc.  Par esempli: -1s al specifiche in maniere "
 "precise l'ultin setôr.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "STÂT al è un di: on, off\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "DISPOSITÎF al è di solit /dev/hda or /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NON al è cualsisei peraule desiderade\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2496,22 +2441,22 @@ msgstr ""
 "GNU General Public License par vê plui detais.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(a restin %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "La partizion %s e je in ûs. Sigûrs di continuâ?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Lis partizions su %s a son in ûs."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2520,31 +2465,31 @@ msgstr ""
 "La etichete dal disc su %s e vignarà eliminade e ducj i dâts sul disc a "
 "laran pierdûts. Continuâ?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Gnûf gjenar di etichete disc?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Gjenar di partizion?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Non de partizion?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Gjenar di file system?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Inizi?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Fin?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2553,7 +2498,7 @@ msgstr ""
 "E je stade domandade une partizion di %s a %s (setôrs %llu..%llu).\n"
 "La posizion disponibile plui dongje e je %s a %s (setôrs %llu..%llu).%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2561,96 +2506,96 @@ msgstr ""
 "\n"
 "Ti vadial ben distès cussì?"
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, fuzzy, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 "La partizion che e ven fûr no je inlineade ben par prestazions otimâls."
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "Lis etichetis dai discs %s no supuartin partizions estesis."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Numar di partizion?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 "Gjeometrie cilindri, testine, setôr dal BIOS: %d,%d,%d.  Ogni cilindri al è "
 "%s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Model: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Disc %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Dimension dal setôr (logjic/fisic): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Tabele des partizions: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Flag dal disc: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Numar"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Inizi"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Fin"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Dimension"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Gjenar"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "File system"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Non"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Flag"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Spazi libar"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2659,55 +2604,55 @@ msgstr ""
 "E je stade cjatade une partizion %s %s su %s -> %s.  Desideristu zontâle ae "
 "tabele des partizions?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "ricercje dai file system"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "Il comant par ridimensionâ al è stât gjavât de version 3.0 di parted"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "Scurtâ une partizion al pues causâ pierditis di dâts, sigûrs di continuâ?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Gnûf dispositîf?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "gjenar di inlineament(min/oti)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d inlineade\n"
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, fuzzy, c-format
 msgid "%d not aligned: %s\n"
 msgstr "%d no inlineade\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Flag di invertî?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Gnûf stât?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Unitât?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
@@ -2716,11 +2661,11 @@ msgstr ""
 "align-check GJENAR N                        controle la partizion N pal "
 "inlineament di GJENAR(min|oti)"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "jutori"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2728,15 +2673,15 @@ msgstr ""
 "help [COMANT]                           stampe il jutori gjenerâl o sul "
 "COMANT"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2744,15 +2689,15 @@ msgstr ""
 "mklabel,mktable GJENAR-ETIC               cree une gnove etichete dal disc "
 "(tabele des partizions)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart GJENAR-PART [GJENAR-FS] INIZI FIN     cree une partizion"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2761,20 +2706,20 @@ msgstr ""
 "partizion.  Al pues jessi specificât GJENAR-FS par stabilî un ID di "
 "partizion adat.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "non"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "name NUMAR NON                         clame la partizion NUMAR come NON"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2784,7 +2729,7 @@ msgstr ""
 "dispositîfs disponibii, il spazi libar, dutis lis partizions cjatadis o une "
 "partizion in particolâr"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2792,11 +2737,11 @@ msgstr ""
 "Cence argoments, 'print' al mostre dute la tabele des partizions. Dut câs "
 "cui argoments chi sot al fasarà variis altris azions.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : mostre ducj i dispositîfs a blocs atîfs\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2804,14 +2749,14 @@ msgstr ""
 "  free      : mostre lis informazions sul spazi libar no partizionât, sul "
 "dispositîf a blocs atuâl\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all : mostre lis tabelis des partizions di ducj i dispositîfs a "
 "blocs atîfs\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
@@ -2819,19 +2764,19 @@ msgstr ""
 "  NUMAR    : mostre informazions plui detaiadis sun cheste particolâr "
 "partizion\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                     jes dal program"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2839,56 +2784,56 @@ msgstr ""
 "rescue INIZI FIN                         recupere une partizion pierdude "
 "dongje INIZI e FIN"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "Il comant par ridimensionâ al è stât gjavât in parted 3.0\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "resizepart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr ""
 "resizepart NUMAR FIN                    ridimensione la partizion NUMAR"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm NUMAR                                elimine la partizion NUMAR"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr ""
 "select DISPOSITÎF                            sielç il dispositîf di modificâ"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disk_set"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 "disk_set FLAG STÂT                      cambie il FLAG sul dispositîf "
 "selezionât"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
@@ -2896,21 +2841,21 @@ msgstr ""
 "disk_toggle [FLAG]                       comute il stât dal FLAG sul "
 "dispositîf selezionât"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "set NUMAR FLAG STÂT                    cambie il FLAG su pe partizion NUMAR"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2918,21 +2863,21 @@ msgstr ""
 "toggle [NUMAR [FLAG]]                   comute il stât di FLAG su pe "
 "partizion NUMAR"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "unit UNITÂT                                stabilìs la unitât predefinide a "
 "UNITÂT"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2940,7 +2885,7 @@ msgstr ""
 "version                                  mostre il numar di version e lis "
 "informazions di copyright di GNU Parted"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2948,30 +2893,38 @@ msgstr ""
 "'version' al mostre lis informazions sul copyright e la version relative a "
 "cheste copie di GNU Parted\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 "Ûs: %s [-hlmsv] [-a<inlineament >] [DISPOSITÎF [COMANT [PARAMETRIS]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Nissun dispositîf cjatât"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "ATENZION: No tu sês un superutent.  Fâs atenzion ai permès.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Tu âs di tornâ a instalâ il boot loader prime di tornâ a inviâ.  Lei la "
+"sezion 4 de documentazion di Parted par vê plui informazions."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Al podarès coventâ inzornâ /etc/fstab.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 "Benvignûts in GNU Parted! Scrîf 'help' par viodi une liste di comants.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2983,7 +2936,7 @@ msgstr ""
 "COMANT, \n"
 "al partìs in modalitât interative.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -3046,7 +2999,7 @@ msgstr ""
 "Inclût ancje cualsisei informazion adizionâl su la tô configurazion che tu\n"
 "consideris impuartante.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -3054,7 +3007,7 @@ msgstr ""
 "\n"
 "Cronologjie comants:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -3062,7 +3015,7 @@ msgstr ""
 "\n"
 "Erôr: SEGV_MAPERR (Direzion no mapade al ogjet)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3070,7 +3023,7 @@ msgstr ""
 "\n"
 "Erôr: SEGV_ACCERR (permès no valits pal ogjet mapât)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3078,7 +3031,7 @@ msgstr ""
 "\n"
 "Erôr: si è presentât a un segnâl SIGSEGV gjenerâl.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3086,7 +3039,7 @@ msgstr ""
 "\n"
 "Erôr: FPE_INTDIV (intîr: division par zero)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3094,7 +3047,7 @@ msgstr ""
 "\n"
 "Erôr: FPE_INTOVF (intîr: overflow)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3102,7 +3055,7 @@ msgstr ""
 "\n"
 "Erôr: FPE_FLTDIV (virgule mobile: division par zero)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3110,7 +3063,7 @@ msgstr ""
 "\n"
 "Erôr: FPE_FLTOVF (virgule mobile: overflow)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3118,7 +3071,7 @@ msgstr ""
 "\n"
 "Erôr: FPE_FLTUND (virgule mobile: underflow)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3126,7 +3079,7 @@ msgstr ""
 "\n"
 "Erôr: FPE_FLTRES (virgule mobile: risultât inesat)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3134,7 +3087,7 @@ msgstr ""
 "\n"
 "Erôr: FPE_FLTINV (virgule mobile: operazion no valide)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3142,7 +3095,7 @@ msgstr ""
 "\n"
 "Erôr: FPE_FLTSUB (virgule mobile: subscript fûr dai limits)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3150,7 +3103,7 @@ msgstr ""
 "\n"
 "Erôr: si è presentât un segnâl SIGFPE gjenerâl."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3158,7 +3111,7 @@ msgstr ""
 "\n"
 "Erôr: ILL_ILLOPC (opcode no consintût)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3166,7 +3119,7 @@ msgstr ""
 "\n"
 "Erôr: ILL_ILLOPN (operandi no consintût)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3174,7 +3127,7 @@ msgstr ""
 "\n"
 "Erôr: ILL_ILLADR (modalitât di direzionament no consintude)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3182,7 +3135,7 @@ msgstr ""
 "\n"
 "Erôr: ILL_ILLTRP (trap no consintût)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3190,7 +3143,7 @@ msgstr ""
 "\n"
 "Erôr: ILL_PRVOPC (opcode privilegjât)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3198,7 +3151,7 @@ msgstr ""
 "\n"
 "Erôr: ILL_PRVREG (regjistri privilegjât)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3206,7 +3159,7 @@ msgstr ""
 "\n"
 "Erôr: ILL_COPROC (erôr di coprocessôr)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3214,7 +3167,7 @@ msgstr ""
 "\n"
 "Erôr: ILL_BADSTK (erôr di stack interni)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3222,69 +3175,69 @@ msgstr ""
 "\n"
 "Erôr: si è presentât un segnâl SIGILL gjenerâl."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "token no valit: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Si spiete un numar di partizion."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "La partizion no esist."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Si spiete un gjenar di file system."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Gjenar di file system \"%s\" no cognossût."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Si spiete un gjenar di etichete di disc."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "impussibil creâ ancjemò altris partizions."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Si spiete un gjenar di partizion."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "on"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "off"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "otimâl"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "minimâl"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "OPZIONs:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "COMANTs:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3293,33 +3246,89 @@ msgstr ""
 "\n"
 "segnale i erôrs a %s\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Al ven doprât %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "In modalitât no interative, chest comant nol à sens.\n"
 
+#, c-format
 #~ msgid "%s: option '--%s' doesn't allow an argument\n"
 #~ msgstr "%s: la opzion '--%s' no permet un argoment\n"
 
+#, c-format
 #~ msgid "%s: unrecognized option '--%s'\n"
 #~ msgstr "%s: opzion '--%s' no ricognossude\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' doesn't allow an argument\n"
 #~ msgstr "%s: la opzion '-W %s' no permet un argoment\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' requires an argument\n"
 #~ msgstr "%s: la opzion '-W %s' e à bisugne di un argoment\n"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "Sît web di %s: <http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "l'argoment \\\"%3$s\\\" di %1$s%2$s nol è valit"
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "il sufìs  tal argomento \\\"%3$s\\\" di %1$s%2$s nol è valit"
+
+#, c-format
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "l'argoment \\\"%3$s\\\" di %1$s%2$s al è masse grant"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Impussibil tornâ a lei la tabele des partizions.  Chest al significhe che "
+#~ "al covente tornâ a inviâ il sisteme prime di montâ cualsisei partizion "
+#~ "modificade.  Tu varâs ancje di tornâ a instalâ il boot loader prime di "
+#~ "tornâ a inviâ il sisteme (che al podarès vê bisugne di montâ lis "
+#~ "partizions modificadis).  Al è impussibil fâ dutis dôs lis robis!  Duncje "
+#~ "tu varâs di inviâ un disc di ripristinament e di lì tornâ a instalâ il "
+#~ "boot loader.  Lei la sezion 4 de documentazion di Parted par vê plui "
+#~ "informazions."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "Impussibil tornâ a lei la tabele des partizions su %s (%s).  Chest al "
+#~ "significhe che Hurd nol sa nuie su lis modifichis che tu âs fat.  Tu âs "
+#~ "di tornâ a inviâ il computer prime di fâ alc cun %s."
+
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "La regjon di inviament/boot no scomence al inizi de partizion."
+
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
 #~ msgstr ""
 #~ "Il file systen al à une dimension di setôr logjic di %d.  Si sa che GNU "
 #~ "Parted nol lavore ben cun dimensions di setôr diviers di 512 byte."
+
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "Il file %s al è segnât come file di sisteme.  Chest al significhe che "
+#~ "spostantlu cualchi program al podarès blocâsi."
index fc275c6f4101328a28d5f48e656f5acf9ddf1fb3..65cbef45a7d82f0da79897a56de597945c698c7f 100644 (file)
Binary files a/po/gl.gmo and b/po/gl.gmo differ
index 6b8cd11213db6394f726ab4f28ee70704b41e7f2..85a2da38c2807bae4daf2050392dc597e7c9170f 100644 (file)
--- a/po/gl.po
+++ b/po/gl.po
@@ -13,7 +13,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 3.1\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2012-11-11 15:50+0100\n"
 "Last-Translator: Leandro Regueiro <leandro.regueiro@gmail.com>\n"
 "Language-Team: Galician <proxecto@trasno.net>\n"
@@ -102,11 +102,11 @@ msgstr "%s: a opción require un argumento -- «%c»\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "«"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "»"
 
@@ -373,32 +373,17 @@ msgstr "Axuda xeral ao usar software GNU: <http://www.gnu.org/gethelp/>\n"
 msgid "memory exhausted"
 msgstr "esgotouse a memoria"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "o argumento «%s» de %s%s é incorrecto"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "sufixo incorrecto %s%s no argumento «%s»"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s argumento «%s» demasiado longo"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Imaxe de disco"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Produciuse un erro ao abrir %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -406,47 +391,47 @@ msgstr ""
 "Non foi posíbel abrir %s para lectura-escritura (%s). Abriuse %s para só "
 "lectura."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s mentres se ía á posición na que ler en %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s durante a lectura en %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Non foi posíbel escribir en %s, porque está aberto para só lectura."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s mentres se ía á posición na que escribir en %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s durante a escritura en %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Execute «%s --help» para obter máis información.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Uso: %s [OPCIÓN] [DISPOSITIVO]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -456,13 +441,13 @@ msgid ""
 "  -v, --version    output version information and exit\n"
 msgstr ""
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
 msgstr ""
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -480,43 +465,7 @@ msgstr "Non foi posíbel abrir %s."
 msgid "Unable to probe store."
 msgstr ""
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Non foi posíbel volver ler a táboa de particións, así que ten que reiniciar "
-"antes de montar calquera partición modificada. Tamén ten que reinstalar o "
-"cargador de arranque antes de reiniciar (o que pode precisar a montaxe de "
-"particións modificadas). É imposíbel facer ámbalas dúas cousas, así que ha "
-"ter que arrancar cun disco de rescate, e reinstalar o cargador de arranque "
-"desde o disco de rescate. Lea a sección 4 da documentación de Usuario de "
-"Parted para obter máis información."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Non é posíbel volver ler a táboa de particións de %s (%s). Isto quere dicir "
-"que Hurd non sabe nada sobre as modificacións que vostede fixo. Debería "
-"reiniciar o seu computador antes de facer nada con %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Debería reinstalar o cargador de arranque antes de reiniciar. Lea a sección "
-"4 da documentación de Usuario de Parted para obter máis información."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s tentando sincronizar %s no disco"
@@ -826,15 +775,15 @@ msgstr "metadatos"
 msgid "free"
 msgstr "libre"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "estendida"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "lóxica"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primaria"
 
@@ -912,64 +861,73 @@ msgstr ""
 msgid "esp"
 msgstr "Si"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "arranque"
+
+#: libparted/disk.c:2419
 #, fuzzy, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Modificador de particións descoñecido, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Información"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Aviso"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Erro"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Moi grave"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Fallo"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Sen implementación"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Arranxar"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Si"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Non"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "Aceptar"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Reintentar"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Ignorar"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Cancelar"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -978,33 +936,33 @@ msgid ""
 "containing at least the version (%s) and the following message:  "
 msgstr ""
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr ""
 "A compatibilidade para ler etiquetas de disco AIX aínda non está "
 "implementada."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr ""
 "A compatibilidade para escribir etiquetas de disco AIX aínda non está "
 "implementada."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "A compatibilidade para engadir particións a etiquetas de disco AIX aínda non "
 "está implementada."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "A compatibilidade para duplicar particións en etiquetas de disco AIX aínda "
 "non está implementada."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1012,7 +970,7 @@ msgstr ""
 "A compatibilidade para definir o tipo de sistema de particións en etiquetas "
 "de disco AIX aínda non está implementada."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 
@@ -1100,11 +1058,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Non foi posíbel satisfacer todas as restricións da partición."
@@ -1120,44 +1078,44 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Non foi posíbel asignar un número de partición."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr ""
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr ""
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Táboa de particións incorrecta en %s -- sinatura %x incorrecta."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Táboa de particións incorrecta - partición recursiva en %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr ""
 "As particións estendidas non poden estar ocultas en etiquetas de disco msdos."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr ""
 "As particións estendidas non poden estar ocultas en etiquetas de disco msdos."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "non é posíbel crear máis particións"
 
@@ -1299,12 +1257,12 @@ msgstr ""
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 #, fuzzy
 msgid "device is too small for GPT"
 msgstr "O sistema de ficheiros é pequeno de máis para ext2."
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1313,7 +1271,7 @@ msgstr ""
 "O formato da táboa de partición GPT é da versión %x, que é máis recente do "
 "que Parted pode recoñecer. Por favor infórmenos!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1321,7 +1279,7 @@ msgid ""
 "setting? "
 msgstr ""
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 #, fuzzy
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
@@ -1332,7 +1290,7 @@ msgstr ""
 "máis pequeno. Quere arranxalo, movendo a copia de seguridade ao final (e "
 "retirando a copia vella)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1341,7 +1299,7 @@ msgstr ""
 "Probe a crear unha táboa nova e a empregar a característica de rescate "
 "(rescue) de Parted para recuperar as particións."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1349,7 +1307,7 @@ msgstr ""
 "A copia de seguridade da táboa GPT está danada, pero a primaria semella "
 "estar ben, así que é a que se ha empregar."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1357,11 +1315,11 @@ msgstr ""
 "A táboa GPT primaria está danada, pero a copia de seguridade semella estar "
 "ben, así que é a que se ha empregar."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr ""
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 #, fuzzy
 msgid "failed to translate partition name"
 msgstr "Non foi posíbel asignar un número de partición."
@@ -1395,18 +1353,14 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "A rexión de datos non comeza no principio da partición."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "A rexión de arranque non comeza no principio da partición."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "A rexión de arranque da partición non ocupa toda a partición."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "A rexión de datos da partición non ocupa toda a partición."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
@@ -1414,7 +1368,7 @@ msgstr ""
 "Tamaño de bloque estraño no descritor do dispositivo: %d bytes non é "
 "divisíbel por 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1423,11 +1377,11 @@ msgstr ""
 "O descritor do controlador di que o tamaño do bloque físico é %d bytes, pero "
 "Linux di que é de %d bytes."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Non se atopou un mapa de particións válido."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1436,11 +1390,11 @@ msgstr ""
 "Tamaños das entradas do mapa de particións conflitivos! A entrada 1 di que é "
 "de %d, pero a entrada %d di que é %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Estraño! Hai 2 entradas de mapa de particións!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1448,18 +1402,18 @@ msgstr ""
 "Cambiar o nome dunha partición raíz ou de intercambio ha impedir que Linux a "
 "recoñeza coma tal."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr ""
 "Non é posíbel engadir outra partición -- o mapa de particións é pequeno de "
 "máis!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Táboa de particións incorrecta en %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1468,7 +1422,7 @@ msgstr ""
 "A partición %d non está aliñada nos límites dos cilindros. Aínda non hai "
 "compatibilidade para isto."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Non é posíbel engadir máis particións."
 
@@ -1640,39 +1594,39 @@ msgstr ""
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Non foi posíbel escribir a etiqueta de volume."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Memoria esgotada."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr ""
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr ""
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr ""
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr ""
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "A localización de %s está fóra do dispositivo %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr ""
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr ""
 
@@ -1682,18 +1636,18 @@ msgstr ""
 msgid "%s : Failed to allocate partition block\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1719,22 +1673,22 @@ msgstr ""
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s: non foi posíbel escribir o bloque %d\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr ""
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1836,7 +1790,7 @@ msgid ""
 "geometry."
 msgstr ""
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1863,14 +1817,14 @@ msgstr ""
 "Delta do comezo do cluster = %d, que non é un múltiplo do tamaño do cluster "
 "%d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Entrada de directorio incorrecta para %s: o primeiro cluster é o marcador de "
 "fin de ficheiro."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1878,7 +1832,7 @@ msgstr ""
 "FAT incorrecta: cadea non rematada para %s. Debería executar dosfsck ou "
 "scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1887,7 +1841,7 @@ msgstr ""
 "FAT incorrecta: o cluster %d está fóra do sistema de ficheiros na cadea para "
 "%s. Debería executar dosfsck ou scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1896,26 +1850,17 @@ msgstr ""
 "FAT incorrecta: o cluster %d ten ligazóns cruzadas para %s. Debería executar "
 "dosfsck ou scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s é de %dk, pero ten %d clusters (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"O ficheiro %s está marcado como ficheiro de sistema. Isto significa que "
-"movelo podería facer que outros programas deixen de traballar."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "A partición é grande/pequena de máis para un sistema de ficheiros %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1923,11 +1868,11 @@ msgstr ""
 "As FATs non coinciden. Se non sabe o que isto significa, escolla \"Cancelar"
 "\", empregue \"scandisk\" no sistema de ficheiros, e logo volva."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Non hai configuracións posíbeis para este tipo de FAT."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1938,7 +1883,7 @@ msgstr ""
 "guste. O tamaño do cluster é %dk (esperábase %dk); o número de clusters é %d "
 "(esperábanse %d); o tamaño das FATs é de %d sectores (esperábanse %d)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
@@ -1946,7 +1891,7 @@ msgstr ""
 "O sistema de ficheiros di que o espacio libre é de %d clusters, non %d "
 "clusters."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1954,15 +1899,15 @@ msgstr ""
 "Non hai espazo dabondo no directorio raíz para todos os ficheiros. Pode ou "
 "ben cancelar, ou ben ignorar e perder os ficheiros."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Produciuse un erro ao escribir no directorio raíz."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "Se deixa o sistema de ficheiros como FAT16, non ha ter problemas."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1972,7 +1917,7 @@ msgstr ""
 "reinstalar o cargador de arranque de MS Windows. Se quere facelo, debería "
 "consultar o manual de Parted (ou o manual da súa distribución)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -1980,7 +1925,7 @@ msgstr ""
 "Se deixa o sistema de ficheiros como FAT32, non ha introducir novos "
 "problemas."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1994,40 +1939,40 @@ msgstr ""
 "conversión a FAT32 fará o sistema de ficheiros ilexíbel para MS DOS, MS "
 "Windows 95a e MS Windows NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Quere usar FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "O sistema de ficheiros só pode alcanzar este tamaño convertendo a FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "O sistema de ficheiros só pode alcanzar este tamaño convertendo a FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted non pode redimensionar esta partición a este tamaño. Estamos "
 "traballando niso!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2036,42 +1981,42 @@ msgstr ""
 "Na FAT %d, o soporte %x non coincide co soporte do sector de arranque, %x. "
 "Seguramente debería executar scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: o cluster %ld está fóra do sistema de ficheiros"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: o cluster %ld está fóra do sistema de ficheiros"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: non hai clusters libres"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Non é posíbel detectar un sistema de ficheiros."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr ""
 "non hai compatibilidade para o redimensionamento de sistemas de ficheiros %s"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "O sistema de ficheiros é maior que seu volume!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr ""
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr ""
 
@@ -2129,87 +2074,87 @@ msgstr ""
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "reducindo"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2274,71 +2219,71 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "mostra esta mensaxe de axuda"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "lista a disposición das particións de todos os dispositivos de bloques"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr ""
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "non pedir nunca a intervención do usuario"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "mostra a versión"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr ""
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2347,58 +2292,58 @@ msgstr ""
 "as particións primarias teñen números de 1 a 4, e as lóxicas téñenos do 5 en "
 "diante.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "TIPO-ETIQUETA é un destes: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "MODIF é un destes: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr ""
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr ""
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr ""
 "TIPO-PARTICION é: primary (primaria), logical (lóxica), extended "
 "(estendida)\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "TIPO-SF é un destes: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
 "sector.\n"
 msgstr ""
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
 msgstr ""
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "ESTADO é un destes: on, off\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "DISPOSITIVO adoita ser /dev/hda ou /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NOME é calquera palabra que queira\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2418,152 +2363,152 @@ msgstr ""
 "Licenza Pública Xeral de GNU para obter máis detalles.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(tempo restante %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, fuzzy, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "Estase a usa-la partición %s."
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Esta(n)se a usar a(s) partición(s) de %s."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
 "will be lost. Do you want to continue?"
 msgstr ""
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Novo tipo de etiqueta de disco?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Tipo de partición?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Nome da partición?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Tipo de sistema de ficheiros?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Inicio?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Fin?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
 "The closest location we can manage is %s to %s (sectors %llu..%llu).%s"
 msgstr ""
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
 msgstr ""
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "As etiquetas de disco %s non admiten particións estendidas."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Número de partición?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Modelo: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Disco %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr ""
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Táboa de particións: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr ""
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Número"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Inicio"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Fin"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Tamaño"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Tipo"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Sistema de ficheiros"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Nome"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Modificadores"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Espazo libre"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2572,78 +2517,78 @@ msgstr ""
 "Atopouse unha partición %s %s en %s -> %s. Quere engadila á táboa de "
 "particións?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "buscando sistemas de ficheiros"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr ""
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Novo dispositivo?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr ""
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr ""
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, c-format
 msgid "%d not aligned: %s\n"
 msgstr ""
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr ""
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Novo estado?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr ""
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
 msgstr ""
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
 msgstr "help [ORDE]           mostrar axuda xeral, ou axuda sobre a ORDE"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2651,15 +2596,15 @@ msgstr ""
 "mklabel, mktable TIPO-ETIQUETA           crear unha nova etiqueta de disco "
 "(táboa de particións)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart TIPO-PARTICION [TIPO-FS] INICIO FIN        crear unha partición"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2668,27 +2613,27 @@ msgstr ""
 "partición. Debe especificarse TIPO-SF para definir un ID de partición "
 "axeitado.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "name NÚMERO NOME                         ponlle o NOME á partición NÚMERO"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
 "partition"
 msgstr ""
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2696,40 +2641,40 @@ msgstr ""
 "Sen argumentos, «print» mostra toda a táboa de particións. Aínda así cos "
 "seguintes argumentos realiza outras accións.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
 msgstr ""
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                     saír do programa"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2737,126 +2682,134 @@ msgstr ""
 "rescue INICIO FIN                        recupera unha partición perdida "
 "entre INICIO e FIN"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr ""
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 #, fuzzy
 msgid "resizepart"
 msgstr "resize"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 #, fuzzy
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "rm NÚMERO                                eliminar a partición NÚMERO"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm NÚMERO                                eliminar a partición NÚMERO"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr ""
 "select DISPOSITIVO                       escoller o dispositivo a editar"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disk_set"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
 msgstr ""
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 #, fuzzy
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr "set MENOR MODIF ESTADO       cambiar un MODIFicador na partición MENOR"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
 msgstr ""
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
 msgstr ""
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
 msgstr ""
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Non se atopou ningún dispositivo"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr ""
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Debería reinstalar o cargador de arranque antes de reiniciar. Lea a sección "
+"4 da documentación de Usuario de Parted para obter máis información."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Non esqueza actualizar /etc/fstab, se é necesario.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2867,7 +2820,7 @@ msgstr ""
 "Aplica a ORDE cos PARÁMETROS ao DISPOSITIVO. Se non se indica ningunha\n"
 "ORDE, funciona en modo interactivo.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2901,201 +2854,201 @@ msgid ""
 "consider important.\n"
 msgstr ""
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
 msgstr ""
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
 msgstr ""
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
 msgstr ""
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
 msgstr ""
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
 msgstr ""
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
 msgstr ""
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
 msgstr ""
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
 msgstr ""
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
 msgstr ""
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
 msgstr ""
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
 msgstr ""
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
 msgstr ""
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
 msgstr ""
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
 msgstr ""
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
 msgstr ""
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
 msgstr ""
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
 msgstr ""
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
 msgstr ""
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
 msgstr ""
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
 msgstr ""
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr ""
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Espérase un número de partición."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "A partición non existe."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Espérase un tipo de sistema de ficheiros."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Tipo de sistema de ficheiros «%s» descoñecido."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Espérase un tipo de etiqueta de disco."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Non é posíbel crear máis particións."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Espérase un tipo de partición."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "on"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "off"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr ""
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr ""
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "OPCIÓNs:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "ORDEs:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3104,33 +3057,78 @@ msgstr ""
 "\n"
 "Envíe os informes de fallo a: %s\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Usando %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Esta orde non ten sentido nun modo non interactivo.\n"
 
+#, c-format
 #~ msgid "%s: option '--%s' doesn't allow an argument\n"
 #~ msgstr "%s: a opción «--%s» non permite ningún argumento\n"
 
+#, c-format
 #~ msgid "%s: unrecognized option '--%s'\n"
 #~ msgstr "%s: opción «--%s» non recoñecida\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' doesn't allow an argument\n"
 #~ msgstr "%s: a opción «-W %s» non permite ningún argumento\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' requires an argument\n"
 #~ msgstr "%s: a opción «-W %s» require un argumento\n"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "Páxina web de %s: <http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "o argumento «%s» de %s%s é incorrecto"
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "sufixo incorrecto %s%s no argumento «%s»"
+
+#, c-format
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "%s%s argumento «%s» demasiado longo"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Non foi posíbel volver ler a táboa de particións, así que ten que "
+#~ "reiniciar antes de montar calquera partición modificada. Tamén ten que "
+#~ "reinstalar o cargador de arranque antes de reiniciar (o que pode precisar "
+#~ "a montaxe de particións modificadas). É imposíbel facer ámbalas dúas "
+#~ "cousas, así que ha ter que arrancar cun disco de rescate, e reinstalar o "
+#~ "cargador de arranque desde o disco de rescate. Lea a sección 4 da "
+#~ "documentación de Usuario de Parted para obter máis información."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "Non é posíbel volver ler a táboa de particións de %s (%s). Isto quere "
+#~ "dicir que Hurd non sabe nada sobre as modificacións que vostede fixo. "
+#~ "Debería reiniciar o seu computador antes de facer nada con %s."
+
+#, c-format
 #~ msgid "Failed to add partition %d (%s)"
 #~ msgstr "Produciuse un erro ao engadir a partición %d (%s)"
 
+#, c-format
 #~ msgid ""
 #~ "parted was unable to re-read the partition table on %s (%s).  This means "
 #~ "Linux won't know anything about the modifications you made. "
@@ -3138,6 +3136,7 @@ msgstr "Esta orde non ten sentido nun modo non interactivo.\n"
 #~ "parted non puido volver ler a táboa de particións de %s (%s). Isto quere "
 #~ "dicir que Linux non sabe nada sobre as modificacións que vostede fixo. "
 
+#, c-format
 #~ msgid ""
 #~ "%s contains GPT signatures, indicating that it has a GPT table.  However, "
 #~ "it does not have a valid fake msdos partition table, as it should.  "
@@ -3152,6 +3151,10 @@ msgstr "Esta orde non ten sentido nun modo non interactivo.\n"
 #~ "emprega unha táboa de particións msdos. É esta unha táboa de particións "
 #~ "GPT?"
 
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "A rexión de arranque non comeza no principio da partición."
+
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3160,6 +3163,14 @@ msgstr "Esta orde non ten sentido nun modo non interactivo.\n"
 #~ "que GNU Parted non traballa correctamente con tamaños de sector distintos "
 #~ "de 512 bytes."
 
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "O ficheiro %s está marcado como ficheiro de sistema. Isto significa que "
+#~ "movelo podería facer que outros programas deixen de traballar."
+
 #~ msgid ""
 #~ "The sector size on %s is %d bytes.  Parted is known not to work properly "
 #~ "with drives with sector sizes other than %d bytes"
index 07edd42d55f615c35835c512d17e961ece520889..66d5d8a8949e27b4aa83f32f3c1a8d8ae33d525c 100644 (file)
Binary files a/po/hu.gmo and b/po/hu.gmo differ
index e0fe63efaa399bde07bae55add3a08abeef8e4c9..d0c774faeecca54f9a07bbab0f2d8e1a680a2a0a 100644 (file)
--- a/po/hu.po
+++ b/po/hu.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 3.1.90\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2016-05-27 20:34+0200\n"
 "Last-Translator: Gabor Kelemen <kelemeng@gnome.hu>\n"
 "Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
@@ -99,11 +99,11 @@ msgstr "%s: a kapcsoló egy argumentumot igényel -- „%c”\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "„"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "”"
 
@@ -372,78 +372,63 @@ msgstr ""
 msgid "memory exhausted"
 msgstr "elfogyott a memória"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "érvénytelen %s%s argumentum: „%s”"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "érvénytelen utótag a(z) %s%s argumentumban: „%s”"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s: a(z) „%s” argumentum túl nagy"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Lemezkép"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Hiba %s megnyitása közben: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
 msgstr "%s nem nyitható meg írásra/olvasásra (%s). %s most csak olvasható."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s olvasáshoz pozicionálás közben ezen: %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s olvasáskor ezen: %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "%s nem írható, mert csak olvashatóként van megnyitva."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s íráshoz pozicionálás közben ezen: %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s írás közben ezen: %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "További információkért adja ki a(z) „%s --help” parancsot.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Használat: %s [KAPCSOLÓ] [ESZKÖZ]…\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -459,7 +444,7 @@ msgstr ""
 "  -h, --help       súgó megjelenítése és kilépés\n"
 "  -v, --version    verzióinformációk kiírása és kilépés\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -467,7 +452,7 @@ msgstr ""
 "\n"
 "Ha nincs megadva ESZKÖZ, az összes partíció szondázása.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -485,42 +470,7 @@ msgstr "%s nem nyitható meg."
 msgid "Unable to probe store."
 msgstr "A tároló nem szondázható."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"A partíciós tábla nem olvasható újra. Ez azt jelenti, hogy újra kell "
-"indítani a rendszert a módosított partíciók csatolása előtt. Az újraindítás "
-"előtt újra kell telepíteni a rendszertöltőt is (amihez szükség lehet a "
-"módosított partíciók csatolására). Mindkettőt lehetetlen megtenni. Emiatt "
-"egy mentő lemezről kell indítani a rendszert, és újratelepíteni a "
-"rendszertöltőt a mentő lemezről. További információkért lásd a Parted "
-"felhasználói dokumentáció 4. fejezetét."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Nem lehet újraolvasni %s partíciós tábláját (%s). A Hurd most nem tud semmit "
-"a változásokról. %s bármilyen felhasználása előtt újra kell indítani a gépet."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"A rendszertöltőt újraindítás előtt újra kell telepíteni. További "
-"információkért lásd a Parted felhasználói dokumentáció 4. fejezetét."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s megpróbálja lemezre szinkronizálni ezt: %s"
@@ -836,15 +786,15 @@ msgstr "metaadatok"
 msgid "free"
 msgstr "szabad"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "extended"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logical"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primary"
 
@@ -920,64 +870,73 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "pmbr_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Ismeretlen partíciójelző: %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Információ"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Figyelmeztetés"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Hiba"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Végzetes"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Programhiba"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Nincs megvalósítva"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Javítás"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Igen"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Nem"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Újra"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Mellőzés"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Megszakítás"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -990,28 +949,28 @@ msgstr ""
 "hibajelentést küldje el e-mailben ide: %s, írja meg legalább a verziót (%s), "
 "és a következő üzenetet:"
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "Az AIX lemezcímkék olvasásának támogatása még nincs megvalósítva."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "Az AIX lemezcímkék írásának támogatása még nincs megvalósítva."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "A partíciók AIX lemezcímkékhez adásának támogatása még nincs megvalósítva."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "A partíciók AIX lemezcímkékben duplikálásának támogatása még nincs "
 "megvalósítva."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1019,7 +978,7 @@ msgstr ""
 "A partíciók rendszertípusának AIX lemezcímkékben való beállításának "
 "támogatása még nincs megvalósítva."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 "A jelzők AIX lemezcímkékben való beállításának támogatása még nincs "
@@ -1110,11 +1069,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Nem elégíthető ki minden korlátozás a partíción."
@@ -1130,43 +1089,43 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Nem foglalható partíciószám."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Nem lehet BSD lemezcímke helyet foglalni."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Nem lehet dasd lemezcímke helyet foglalni"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Érvénytelen partíciós tábla ezen: %s -- rossz %x aláírás."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Érvénytelen partíciós tábla - rekurzív partíció ezen: %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "Kiterjesztett partíciók nem rejthetők el msdos lemezcímkéken."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "Kiterjesztett partíciók nem rejthetők el msdos lemezcímkéken."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "A Parted nem tud átméretezni Windows Dynamic Disk által kezelt partíciókat."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "nem lehet több partíciót létrehozni"
 
@@ -1309,11 +1268,11 @@ msgstr "Nem sikerült lekérni a blokkméret-információkat."
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "az eszköz túl kicsi a GPT-hez"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1322,7 +1281,7 @@ msgstr ""
 "A GPT partíciós tábla formátuma %x verziójú, ami újabb a Parted által "
 "felismerhetőnél. Jelentse be ezt hibaként!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1333,7 +1292,7 @@ msgstr ""
 "a GPT-t az összes hely (további %llu blokk) felhasználásához, vagy "
 "folytathatja a jelenlegi beállításokkal."
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1341,7 +1300,7 @@ msgstr ""
 "A tartalék GPT tábla nem a lemez végén van, ahol lennie kellene. Javítja a "
 "tartalék áthelyezésével a végére (és a régi tartalék törlésével)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1349,7 +1308,7 @@ msgstr ""
 "Az elsődleges GPT tábla és a tartalék is sérült. Próbáljon egy újat "
 "készíteni, és a Parted rescue funkciójával visszaállítani a partíciókat."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1357,7 +1316,7 @@ msgstr ""
 "A tartalék GPT tábla sérült, de az elsődleges jónak tűnik, így az lesz "
 "felhasználva."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1365,11 +1324,11 @@ msgstr ""
 "Az elsődleges GPT tábla sérült, de a tartalék jónak tűnik, így az lesz "
 "felhasználva."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "elsődleges partícióstábla-tömb CRC eltérés"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "a partíciónév fordítása meghiúsult"
 
@@ -1402,24 +1361,20 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Az adatterület nem a partíció elején kezdődik."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "A boot terület nem a partíció elején kezdődik."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "A partíció boot területe nem fedi le a teljes partíciót."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "A partíció adatterülete nem fedi le a teljes partíciót."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr "Fura blokkméret az eszközleírón: %d bájt nem osztható 512-vel."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1428,11 +1383,11 @@ msgstr ""
 "Az illesztőprogram-leíró szerint a fizikai blokkméret %d bájt, de az a Linux "
 "szerint %d bájt."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Nincs érvényes partíciótérkép."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1441,11 +1396,11 @@ msgstr ""
 "A partíciótérkép bejegyzésméretei ütköznek. Az 1. bejegyzés szerint %d, %d. "
 "szerint %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Fura! Két partíciótérkép-bejegyzés van!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1453,23 +1408,23 @@ msgstr ""
 "Egy gyökér vagy swap partíció nevének megváltoztatása megakadályozza, hogy a "
 "Linux akként felismerje."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "Nem vehető fel másik partíció -- a partíciótérkép túl kicsi!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Érvénytelen partíciós tábla ezen: %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
 "unsupported."
 msgstr "%d. partíció nem igazodik a cilinderhatárokhoz. Ez még nem támogatott."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Nem vehető fel másik partíció."
 
@@ -1643,39 +1598,39 @@ msgstr "A VTOC FMT7 DSCB nem írható."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "A VTOC FMT9 DSCB nem írható."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Elfogyott a memória."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Nem kérhető le az egységméret a speciális „COMPACT” egységhez."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "„%s” érvénytelen szintaxist tartalmaz a helyekhez."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "A maximális fej érték %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "A maximális szektor érték %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "%s hely kívül esik ezen az eszközön: %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Érvénytelen szám."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "Az 1-nél kisebb érték helyett használjon kisebb egységet."
 
@@ -1685,18 +1640,18 @@ msgstr "Az 1-nél kisebb érték helyett használjon kisebb egységet."
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s: Partícióblokk foglalása sikertelen\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s: Blokk foglalása sikertelen\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s: Nem olvasható a(z) %llu. indító blokk\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1722,22 +1677,22 @@ msgstr "%s: Hibás ellenőrzőösszeg a(z) %llu blokkon (típus: %s)\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s: Nem írható a(z) %d. blokk\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s: A disk_specific rdb blokk foglalása sikertelen\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s: Nem található rdb blokk, ez nem fordulhatna elő\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s: A(z) %llu. partícióblokk foglalása sikertelen\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1832,7 +1787,7 @@ msgstr ""
 "CHS geometriája a partíciós tábla CHS geometriájának megfelelően lesz "
 "beállítva."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1857,12 +1812,12 @@ msgid ""
 "Cluster start delta = %d, which is not a multiple of the cluster size %d."
 msgstr "A fürt kezdeti eltérése = %d, ami nem a(z) %d fürtméret többszöröse."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr "Hibás könyvtárbejegyzés ehhez: %s: az első fürt a fájl vége jelző."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1870,7 +1825,7 @@ msgstr ""
 "Hibás FAT: befejezetlen lánc ehhez: %s. Futtassa a dosfsck vagy a scandisk "
 "programot."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1879,7 +1834,7 @@ msgstr ""
 "Hibás FAT: a(z) %d. fürt kívül esik a fájlrendszeren %s láncában. Futtassa a "
 "dosfsck vagy a scandisk programot."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1888,26 +1843,17 @@ msgstr ""
 "Hibás FAT: a(z) %d. fürt kereszthivatkozva van ehhez: %s. Futtassa a dosfsck "
 "vagy a scandisk programot."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s %dk, de %d fürtje van (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"%s rendszerfájlként van meg jelölve. Áthelyezése után előfordulhat, hogy "
-"egyes programok leállnak."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "A partíció túl nagy vagy túl kicsi egy %s fájlrendszerhez."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1916,11 +1862,11 @@ msgstr ""
 "Megszakítást, futtassa a scandisk programot a fájlrendszeren, és próbálja "
 "újra."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Ehhez a FAT típushoz nincsenek lehetséges beállítások."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1930,13 +1876,13 @@ msgstr ""
 "A fájlrendszer méretei nem a Windows által elvártak. A fürtméret %dk (várt: "
 "%dk), a fürtök száma %d (várt: %d), a FAT-ek mérete %d szektor (várt: %d)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr "A fájlrendszer szerint a szabad hely %d fürt, nem pedig %d fürt."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1944,15 +1890,15 @@ msgstr ""
 "Nincs elég hely a gyökérkönyvtárban az összes fájlnak. Szakítsa meg, vagy a "
 "fájlok elvesztéséhez válassza a Mellőzést."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Hiba a gyökérkönyvtárba írás közben."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "Ha a fájlrendszert FAT16-ként hagyja, nem lesz gond."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1962,13 +1908,13 @@ msgstr ""
 "újra kell telepíteni az MS Windows rendszertöltőjét. Ha ezt szeretné, nézze "
 "meg a Parted (vagy a disztribúciója) kézikönyvét."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
 msgstr "Ha a fájlrendszert FAT32-ként hagyja, nem lesz újabb gond."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1982,37 +1928,37 @@ msgstr ""
 "olvashatatlanná teszi a fájlrendszert az MS DOS, MS Windows 95a és MS "
 "Windows NT számára."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Szeretne FAT32-t használni?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr "A fájlrendszer csak FAT16-ra alakítással méretezhető át ekkorára."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr "A fájlrendszer csak FAT32-re alakítással méretezhető át ekkorára."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "A GNU Parted nem tudja ezt a partíciót ekkorára méretezni. Dolgozunk rajta!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2021,41 +1967,41 @@ msgstr ""
 "A(z) %d. FAT %x. médiája nem egyezik a boot szektor %x médiájával. "
 "Valószínűleg futtatni kellene a scandisk-et."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: a(z) %ld. fürt kívül esik a fájlrendszeren"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: a(z) %ld. fürt kívül esik a fájlrendszeren"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: nincs szabad fürt"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Nem észlelhető fájlrendszer."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "%s fájlrendszerek átméretezése nem támogatott"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "A fájlrendszer nagyobb, mint a kötet!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "A fájlrendszeren hibák vannak."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "A hibás blokkok nem olvashatók."
 
@@ -2119,61 +2065,61 @@ msgstr "Nem található a(z) %2$X CNID-jű HFS+ fájl %1$lli. szektora."
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "Kísérlet a(z) %X CNID-jű HFS+ fájl írására a fájl végén túl."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "Elnézést, a HFS így még nem méretezhető át."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "zsugorítás"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Sikertelen adatáthelyezés."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr "Az adatáthelyezés adatokat hagyott a kötet végén."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "HFS elsődleges könyvtárblokk írása"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "Nem található érvényes HFS[+X] aláírás megnyitáskor."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "A HFS+ %d. verziója nem támogatott."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "A HFSX %d. verziója nem támogatott."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "Az adatáthelyezés adatokat hagyott a kötet végén."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Hiba a foglalási fájl írásakor."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "Hiba a foglalási fájl kompatibilitási részének írásakor."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "HFS+ kötetfejléc írása"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "Hiba történt a hibás blokkok kötelező fájljának keresése közben."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2181,27 +2127,27 @@ msgstr ""
 "Úgy tűnik, a HFS átalakító hibás: a hibás blokkok fájlja nem tartalmazza a "
 "beágyazott HFS+ kötetet."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "Elnézést, a HFS+ így még nem méretezhető át."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "beágyazott HFS+ kötet zsugorítása"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "A HFS+ kötet átméretezése meghiúsult."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "HFS átalakító zsugorítása"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "A HFS átalakító frissítése meghiúsult."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2277,7 +2223,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Egy extent nem lett áthelyezve."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2285,16 +2231,16 @@ msgstr ""
 "Egy extenthivatkozás nem létező helyről érkezik. Ellenőrizni kellene a "
 "fájlrendszert!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "Ennek a HFS+ kötetnek nincs katalógusfájlja. Ez nagyon szokatlan!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Ennek a HFS kötetnek nincs extenttúlcsordulási fájlja. Ez nagyon szokatlan!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2302,52 +2248,52 @@ msgstr ""
 "Az extenttúlcsordulási fájl nem tartalmazhatja a saját extentjeit! "
 "Ellenőrizni kellene a fájlrendszert."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Nem sikerült a fájlrendszert a memóriába gyorsítótárazni."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "A hibás blokkok listája nem tölthető be."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Hiba történt az extent áthelyezéskor."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "Ennek a HFS+ kötetnek nincs katalógusfájlja. Ez nagyon szokatlan!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Ennek a HFS kötetnek nincs extenttúlcsordulási fájlja. Ez nagyon szokatlan!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "ezen súgóüzenet megjelenítése"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "minden blokkos eszköz partícióelrendezésének kiírása"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "gépileg feldolgozható kimenet megjelenítése"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "soha ne kérdezzen"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "verzió megjelenítése"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "új partíciók igazítása"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2356,31 +2302,31 @@ msgstr ""
 "(partíciós táblán) az elsődleges partíciók 1-től 4-ig, a logikaiak 5-től "
 "számozódnak.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "A CÍMKETÍPUS ezek egyike: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "A JELZŐ ezek egyike: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "Az EGYSÉG ezek egyike: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "kívánt igazítás: minimum vagy optimal"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "A PART-TÍPUS ezek egyike: primary, logical, extended\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "Az FS-TÍPUS ezek egyike: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2389,7 +2335,7 @@ msgstr ""
 "A KEZDET és VÉG lemezhelyek, pl.: 4GB vagy 10%. A negatív értékek a lemez "
 "végéről számítódnak. Például a -1s az utolsó szektort adja.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2397,19 +2343,19 @@ msgstr ""
 "A VÉG egy lemezhely, pl.: 4GB vagy 10%. A negatív értékek a lemez végéről "
 "számítódnak. Például a -1s az utolsó szektort adja.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "Az ÁLLAPOT ezek egyike: on, off\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "Az ESZKÖZ általában a /dev/hda vagy /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "A NÉV tetszőleges\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2430,22 +2376,22 @@ msgstr ""
 "További részletekért tanulmányozza a GNU GPL licencet.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(hátralévő idő: %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "A(z) %s partíció használatban van. Biztos, hogy folytatni kívánja?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "%s partíciói használatban vannak."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2454,31 +2400,31 @@ msgstr ""
 "A meglévő lemezcímke ezen: %s megsemmisül, és a lemezen lévő minden adat "
 "elvész. Szeretné folytatni?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Az új lemezcímke típusa?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "A partíció típusa?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "A partíció neve?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "A fájlrendszer típusa?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Kezdete?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Vége?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2487,7 +2433,7 @@ msgstr ""
 "Egy partíciót kért innentől: %s idáig: %s (szektorok: %llu..%llu).\n"
 "A legközelebbi használható hely ez: %s - %s (szektorok: %llu..%llu).%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2495,7 +2441,7 @@ msgstr ""
 "\n"
 "Ez elfogadható?"
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, fuzzy, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
@@ -2503,87 +2449,87 @@ msgstr ""
 "Az eredményül kapott partíció igazítása nem megfelelő a legjobb "
 "teljesítményhez."
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "%s lemez címkéi nem támogatják a kiterjesztett partíciókat."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "A partíció száma?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr "BIOS cilinder,fej,szektor geometria: %d,%d,%d. Minden cilinder %s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Típus: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "%s lemez: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Szektorméret (logikai/fizikai): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Partíciós tábla: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Lemezjelzők: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Szám"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Kezdet"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Vég"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Méret"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Típus"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Fájlrendszer"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Név"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Jelzők"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Szabad hely"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2592,55 +2538,55 @@ msgstr ""
 "Egy %s %s partíció található itt: %s -> %s. Szeretné hozzáadni a partíciós "
 "táblához?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "fájlrendszerek keresése"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "A resize parancs eltávolításra került a parted 3.0-ban"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "Egy partíció zsugorítása adatvesztést okozhat, biztosan folytatni szeretné?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Új eszköz?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "igazítás típusa (min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d igazítva\n"
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, fuzzy, c-format
 msgid "%d not aligned: %s\n"
 msgstr "%d nem igazított\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "A megfordítandó jelző?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Új állapot?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Egység?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
@@ -2649,11 +2595,11 @@ msgstr ""
 "align-check TÍPUS N                       TÍPUS(min|opt) igazítás keresése "
 "az N. partíción"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2661,15 +2607,15 @@ msgstr ""
 "help [PARANCS]                            általános súgó vagy a PARANCS "
 "súgójának kiírása"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2677,15 +2623,15 @@ msgstr ""
 "mklabel,mktable CÍMKETÍPUS                új lemezcímke (partíciós tábla) "
 "létrehozása"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart PART-TÍPUS [FS-TÍPUS] KEZDET VÉG   partíció készítése"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2693,21 +2639,21 @@ msgstr ""
 "Az „mkpart” partíciót hoz létre, új fájlrendszer létrehozása nélkül. Az FS-"
 "TÍPUS megadható megfelelő partícióazonosító beállítása érdekében.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "name SZÁM NÉV                             a SZÁM. partíciót elnevezése a "
 "NÉVVEL"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2717,7 +2663,7 @@ msgstr ""
 "eszközök, szabad hely, minden megtalált partíció vagy egy adott partíció "
 "megjelenítése"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2725,11 +2671,11 @@ msgstr ""
 "Argumentumok nélkül a „print” az egész partíciós táblát megjeleníti. Azonban "
 "a következő argumentumokkal különböző egyéb műveleteket hajt végre.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : az összes aktív blokkos eszköz megjelenítése\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2737,32 +2683,32 @@ msgstr ""
 "  free      : információk megjelenítése a szabad particionálatlan helyről az "
 "aktuális blokkos eszközön\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all : az összes aktív blokkos eszköz partíciós tábláinak kiírása\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 "  SZÁM      : részletesebb információk megjelenítése az adott partícióról\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                      kilépés a programból"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2770,56 +2716,56 @@ msgstr ""
 "rescue KEZDET VÉG                         a KEZDET és VÉG környéki partíció "
 "helyreállítása"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "A resize parancs eltávolításra került a parted 3.0-ban\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "resizepart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr ""
 "resizepart SZÁM VÉG                       a SZÁM. partíció átméretezése"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm SZÁM                                   a SZÁM. partíció törlése"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr ""
 "select ESZKÖZ                             a szerkesztendő eszköz kiválasztása"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disk_set"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 "disk_set JELZŐ ÁLLAPOT                    a JELZŐ módosítása a kijelölt "
 "eszközön"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
@@ -2827,21 +2773,21 @@ msgstr ""
 "disk_toggle [JELZŐ]                       a JELZŐ állapotának átváltása a "
 "kijelölt eszközön"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "set SZÁM JELZŐ ÁLLAPOT                    a JELZŐ átváltása a SZÁM. partíción"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2849,21 +2795,21 @@ msgstr ""
 "toggle [SZÁM [JELZŐ]]                     a JELZŐ állapotának átváltása a "
 "SZÁM. partíción"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "unit EGYSÉG                               az alapértelmezett egység "
 "beállítása az EGYSÉGRE"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2871,7 +2817,7 @@ msgstr ""
 "version                                   megjeleníti a GNU Parted "
 "verziószámát és a szerzői jogi információkat"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2879,31 +2825,39 @@ msgstr ""
 "a „version” megjeleníti a GNU Parted ezen példányának verzió- és szerzői "
 "jogi információit\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 "Használat: %s [-hlmsv] [-a<igazítás>] [ESZKÖZ [PARANCS [PARAMÉTEREK]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Nem található eszköz"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "FIGYELMEZTETÉS: Ön nem rendszergazda. Figyeljen a jogosultságokra.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"A rendszertöltőt újraindítás előtt újra kell telepíteni. További "
+"információkért lásd a Parted felhasználói dokumentáció 4. fejezetét."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Szükség lehet az /etc/fstab frissítésére.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 "Üdvözli a GNU Parted! Írja be a 'help' szót a parancsok listájának "
 "megnézéséhez.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2915,7 +2869,7 @@ msgstr ""
 "megadva\n"
 "PARANCS, interaktív módban fut.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2978,7 +2932,7 @@ msgstr ""
 "A rendszerével kapcsolatos, fontosnak tűnő információkat is\n"
 "csatolja.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -2986,7 +2940,7 @@ msgstr ""
 "\n"
 "Parancselőzmények:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -2994,7 +2948,7 @@ msgstr ""
 "\n"
 "Hiba: SEGV_MAPERR (Cím nincs leképezve objektumra)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3002,7 +2956,7 @@ msgstr ""
 "\n"
 "Hiba: SEGV_ACCERR (Érvénytelen jogosultságok a leképezett objektumhoz)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3010,7 +2964,7 @@ msgstr ""
 "\n"
 "Hiba: Általános SIGSEGV szignál.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3018,7 +2972,7 @@ msgstr ""
 "\n"
 "Hiba: FPE_INTDIV (egész: osztás nullával)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3026,7 +2980,7 @@ msgstr ""
 "\n"
 "Hiba: FPE_INTOVF (egész: túlcsordulás)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3034,7 +2988,7 @@ msgstr ""
 "\n"
 "Hiba: FPE_FLTDIV (lebegőpontos: osztás nullával)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3042,7 +2996,7 @@ msgstr ""
 "\n"
 "Hiba: FPE_FLTOVF (lebegőpontos: túlcsordulás)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3050,7 +3004,7 @@ msgstr ""
 "\n"
 "Hiba: FPE_FLTUND (lebegőpontos: alulcsordulás)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3058,7 +3012,7 @@ msgstr ""
 "\n"
 "Hiba: FPE_FLTRES (lebegőpontos: pontatlan eredmény)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3066,7 +3020,7 @@ msgstr ""
 "\n"
 "Hiba: FPE_FLTINV (lebegőpontos: érvénytelen művelet)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3074,7 +3028,7 @@ msgstr ""
 "\n"
 "Hiba: FPE_FLTSUB (lebegőpontos: kívül esik a tartományon)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3082,7 +3036,7 @@ msgstr ""
 "\n"
 "Hiba: Általános SIGFPE szignál érkezett."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3090,7 +3044,7 @@ msgstr ""
 "\n"
 "Hiba: ILL_ILLOPC (Érvénytelen műveletkód)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3098,7 +3052,7 @@ msgstr ""
 "\n"
 "Hiba: ILL_ILLOPN (Érvénytelen operandus)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3106,7 +3060,7 @@ msgstr ""
 "\n"
 "Hiba: ILL_ILLADR (Érvénytelen címzési mód)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3114,7 +3068,7 @@ msgstr ""
 "\n"
 "Hiba: ILL_ILLTRP (Érvénytelen trap)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3122,7 +3076,7 @@ msgstr ""
 "\n"
 "Hiba: ILL_PRVOPC (Privilegizált műveletkód)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3130,7 +3084,7 @@ msgstr ""
 "\n"
 "Hiba: ILL_PRVREG (Privilegizált regiszter)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3138,7 +3092,7 @@ msgstr ""
 "\n"
 "Hiba: ILL_COPROC (Koprocesszor hiba)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3146,7 +3100,7 @@ msgstr ""
 "\n"
 "Hiba: ILL_BADSTK (Belső veremhiba)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3154,69 +3108,69 @@ msgstr ""
 "\n"
 "Hiba: Általános SIGILL szignál érkezett."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "érvénytelen jelsor: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Egy partíciószám szükséges."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "A partíció nem létezik."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Egy fájlrendszertípus szükséges."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Ismeretlen „%s” fájlrendszertípus."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Egy lemezcímketípus szükséges."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Nem lehet több partíciót létrehozni."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Egy partíciótípus szükséges."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "on"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "off"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "optimal"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "minimal"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "KAPCSOLÓK:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "PARANCSOK:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3225,33 +3179,88 @@ msgstr ""
 "\n"
 "A hibák a(z) %s címen jelenthetők.\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "%s használatával\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Ennek a parancsnak nincs értelme nem interaktív módban.\n"
 
+#, c-format
 #~ msgid "%s: option '--%s' doesn't allow an argument\n"
 #~ msgstr "%s: a(z) „--%s” kapcsoló nem enged meg argumentumot\n"
 
+#, c-format
 #~ msgid "%s: unrecognized option '--%s'\n"
 #~ msgstr "%s: a(z) „--%s” kapcsoló ismeretlen\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' doesn't allow an argument\n"
 #~ msgstr "%s: a „-W %s” kapcsoló nem enged meg argumentumot\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' requires an argument\n"
 #~ msgstr "%s: a(z) „-W %s” kapcsolóhoz argumentum szükséges\n"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "A(z) %s honlapja: <http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "érvénytelen %s%s argumentum: „%s”"
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "érvénytelen utótag a(z) %s%s argumentumban: „%s”"
+
+#, c-format
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "%s%s: a(z) „%s” argumentum túl nagy"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "A partíciós tábla nem olvasható újra. Ez azt jelenti, hogy újra kell "
+#~ "indítani a rendszert a módosított partíciók csatolása előtt. Az "
+#~ "újraindítás előtt újra kell telepíteni a rendszertöltőt is (amihez "
+#~ "szükség lehet a módosított partíciók csatolására). Mindkettőt lehetetlen "
+#~ "megtenni. Emiatt egy mentő lemezről kell indítani a rendszert, és "
+#~ "újratelepíteni a rendszertöltőt a mentő lemezről. További információkért "
+#~ "lásd a Parted felhasználói dokumentáció 4. fejezetét."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "Nem lehet újraolvasni %s partíciós tábláját (%s). A Hurd most nem tud "
+#~ "semmit a változásokról. %s bármilyen felhasználása előtt újra kell "
+#~ "indítani a gépet."
+
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "A boot terület nem a partíció elején kezdődik."
+
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
 #~ msgstr ""
 #~ "A fájlrendszer logikai szektormérete %d. A GNU Parted nem működik jól 512 "
 #~ "bájttól eltérő szektorméretekkel."
+
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "%s rendszerfájlként van meg jelölve. Áthelyezése után előfordulhat, hogy "
+#~ "egyes programok leállnak."
index b4982d9814b245f32c8a3d644e1ce73a86514aca..591fdc8a23f8d02d67299fb3e13d375c6d344fdb 100644 (file)
Binary files a/po/id.gmo and b/po/id.gmo differ
index 282a14fd94c91c905b380a66b661457ba2926c47..07eb8d75820e070474d58b97449c2c8d60fd5b6f 100644 (file)
--- a/po/id.po
+++ b/po/id.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: GNU parted 2.1\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2010-01-27 07:30+0700\n"
 "Last-Translator: Arif E. Nugroho <arif_endro@yahoo.com>\n"
 "Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
@@ -97,11 +97,11 @@ msgstr "%s: pilihan membutuhkan sebuah argumen -- %c\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "U+2018"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "U+2019"
 
@@ -371,32 +371,17 @@ msgstr ""
 msgid "memory exhausted"
 msgstr "kehabisan memory"
 
-#: lib/xstrtol-error.c:63
-#, fuzzy, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "argumen `%s' tidak sah %s%s"
-
-#: lib/xstrtol-error.c:68
-#, fuzzy, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "akhiran tidak sah di %s%s argumen `%s'"
-
-#: lib/xstrtol-error.c:72
-#, fuzzy, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s argumen `%s' terlalu besar"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Salinan dari disk"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Error membuka %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -404,47 +389,47 @@ msgstr ""
 "Tidak dapat membuka %s dengan mode read-write (%s). %s telah dibuka read-"
 "only."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s selama pencarian untuk dibaca pada %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s selama pembacaan pada %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Tidak dapat menulis pada %s, karena ini dibuka secara read-only."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s selama pencarian untuk menulis pada %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s selama penulisan pada %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Coba `%s --help' untuk informasi lebih lanjut.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Penggunaan: %s [OPSI] [PERANGKAT]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -460,7 +445,7 @@ msgstr ""
 "  -h, --help       tampilkan bantuan ini dan keluar\n"
 "  -v, --version    keluarkan informasi versi dan keluar\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -468,7 +453,7 @@ msgstr ""
 "\n"
 "Jika tak ada PERANGKAT yang diberikan, pindai seluruh partisi.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -486,44 +471,7 @@ msgstr "Tidak dapat membuka %s."
 msgid "Unable to probe store."
 msgstr "Tidak dapat memprobe store."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Tabel partisi tidak dapat dibaca ulang. Ini berarti anda perlu untuk me-"
-"reboot terlebih dahulu sebelum me-mount semua partisi yang dimodifikasi. "
-"Anda juga perlu menginstall kembali bootloader anda sebelum me-reboot "
-"komputer anda (yang memerlukan untuk me-mount partisi yang dimodifikasi). "
-"Ini tidak mungkin untuk melakukan keduanya secara sekaligus! Jadi anda perlu "
-"membuat sebuah disket penolong (rescue), dan menginstall bootloader anda "
-"dari disket penolong tersebut. Baca bagian 4 dari dokumentasi pengguna "
-"Parted untuk informasi lebih lanjut."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Tabel partisi pada %s tidak dapat dibaca kembali (%s). Ini berarti hurd "
-"tidak tahu apa-apa tentang modifikasi yang anda buat. Anda seharusnya "
-"mereboot komputer anda sebelum melakukan apapun dengan %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Anda seharusnya menginstall ulang boot loader anda sebelum merebootnya. Baca "
-"bagian 4 dari Parted dokumentasi pengguna untuk informasi lebih lanjut."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s mencoba untuk mensinkronisasi %s pada disk"
@@ -843,15 +791,15 @@ msgstr "metadata"
 msgid "free"
 msgstr "free"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "extended"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logical"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primary"
 
@@ -929,64 +877,73 @@ msgstr ""
 msgid "esp"
 msgstr "Ya"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "flag partisi tidak diketahui, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Informasi"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Peringatan"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Error"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Fatal"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Bug"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Tidak ada Implementasi"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Betulkan"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Ya"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Tidak"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Coba"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Hiraukan"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Batal"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, fuzzy, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -1000,27 +957,27 @@ msgstr ""
 "laporan bug ke bug-parted@gnu.org berisi setidaknya versi (%s) dan pesan "
 "berikut ini:"
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "Support untuk membaca AIX disk label belum diimplementasikan."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "Support untuk menulis AIX disk label belum diimplementasikan."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "Support untuk menambah partisi di AIX disk label belum diimplementasikan."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "Support untuk menduplikasi partisi di AIX disk label belum diimplementasikan."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1028,7 +985,7 @@ msgstr ""
 "Support untuk menset tipe partisi sistem di AIX disk label belum "
 "diimplementasikan."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr "Support untuk menset tanda di AIX disk label belum diimplementasikan."
 
@@ -1118,11 +1075,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Tidak dapat memenuhi semua constraints pada partisi."
@@ -1138,43 +1095,43 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Tidak dapat mengalokasikan sebuah nomor partisi."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Tidak dapat mengalokasikan sebuah slot untuk bsd disklabel."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Tidak dapat mengalokasikan sebuah DASD slot disklabel."
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Table partisi tidak valid pada %s -- signature salah %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Table partisi tidak valid - rekursif partisi pada %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "Partisi extended tidak dapat disembunyikan pada msdos disk labels."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "Partisi extended tidak dapat disembunyikan pada msdos disk labels."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted tidak dapat men-resize partisi yang diatur oleh Windows Dynamic Disk."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 #, fuzzy
 msgid "cannot create any more partitions"
 msgstr "Tidak dapat membuat partisi lagi."
@@ -1317,12 +1274,12 @@ msgstr "Tak dapat menerima infomrasi ukuran blok."
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 #, fuzzy
 msgid "device is too small for GPT"
 msgstr "Perangkat terlalu kecil untuk %lu blok."
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, fuzzy, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1332,7 +1289,7 @@ msgstr ""
 "dari format yang Parted dapat mengenalnya. Tolong beritahu kami! bug-"
 "parted@gnu.org"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1343,7 +1300,7 @@ msgstr ""
 "dapat membetulkan GPT untuk menggunakan semuar ruang kosong yang tersedia "
 "(kosong %llu blocks) atau melanjutkan dengan konfigurasi saat ini?"
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 #, fuzzy
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
@@ -1354,7 +1311,7 @@ msgstr ""
 "lebih kecil. Betulkan, dengan memindahkan tabel backup ke akhir dari disk "
 "(dan menghapus backup yang lama)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1363,7 +1320,7 @@ msgstr ""
 "sebuah tabel yang baru, dan gunakan Parted's rescue feature untuk merecover "
 "partisi."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1371,7 +1328,7 @@ msgstr ""
 "Tabel GPT cadangan telah terkorupsi, tetapi yang utama kelihatan BAIK, jadi "
 "ini yang akan digunakan"
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1379,11 +1336,11 @@ msgstr ""
 "Tabel GPT primer telah terkorupsi, tetapi backup-nya kelihatan BAIK, jadi "
 "ini yang akan digunakan"
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "kumpulan CRC tabel partisi utama tidak cocok"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 #, fuzzy
 msgid "failed to translate partition name"
 msgstr "Tidak dapat mengalokasikan sebuah nomor partisi."
@@ -1417,25 +1374,21 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Daerah data tidak dimulai pada awal dari partisi."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Daerah boot tidak dimulai pada awal dari partisi."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Daerah boot partisi tidak menggunakan seluruh partisi."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Daerah data partisi tidak menggunakan seluruh partisi."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr ""
 "Ukuran block aneh pada deskripsi perangkat: %d bytes tidak terbagi oleh 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1444,11 +1397,11 @@ msgstr ""
 "driver descriptor mengatakan bahwa ukuran physical block adalah %d bytes, "
 "tetapi Linux mengatakan ukurannya %d bytes."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Tidak ditemukan map partisi yang valid."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1457,11 +1410,11 @@ msgstr ""
 "Konflik masukan ukuran peta partisi! Masukan 1 mengatakan %d, tetapi "
 "masukan  %d mengatakan %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Aneh!  Ada 2 masukan map partisi!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1469,16 +1422,16 @@ msgstr ""
 "Mengubah nama dari root atau partisi swap akan membuat Linux tidak dapat "
 "mengenalinya."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "Tidak dapat lagi menambah partisi -- peta partisi terlalu kecil!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Tabel partisi tidak valid pada %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1486,7 +1439,7 @@ msgid ""
 msgstr ""
 "Partisi %d tidak di align ke cylinder boundaries. Ini tetap tidak disupport"
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Tidak dapat menambah partisi yang lain."
 
@@ -1663,39 +1616,39 @@ msgstr "Tidak dapat menulis VTOC FMT7 DSCB."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Tidak dapat menulis VTOC FMT1 DSCB."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Kehabisan memori"
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Tidak dapat mendapatkan ukuran unit untuk spesial unit 'COMPAT'."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "\"%s\" memiliki syntax yang tidak valid untuk lokasi."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Nilai head maksimum adalah %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Nilai maksimum dari sektor adalah %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "Lokasi %s terletak diluar dari perangkat %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "nomor tidak valid."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr ""
 
@@ -1705,18 +1658,18 @@ msgstr ""
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : Gagal untuk mengalokasikan blok partisi\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : Gagal untuk mengalokasikan blok\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : Tidak dapat membaca boot blok %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1742,22 +1695,22 @@ msgstr "%s : Checksum pada block %llu dengan tipe %s tidak baik\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : Tidak dapat menulis blok %d\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s : Gagal untuk mengalokasikan disk_specific rdb blok\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s : Tidak dapa menemukan rdb blok, seharusnya tidak pernah terjadi\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : Gagal untuk menbaca blok partisi %llu\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1855,7 +1808,7 @@ msgstr ""
 "Betulkan, file system CHS geomtry akan diset sehingga cocok dengan tabel "
 "partisi dari CHS geometry."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1881,14 +1834,14 @@ msgid ""
 msgstr ""
 "Cluster awal delta = %d, dimana bukan kelipatan dari ukuran cluster %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Bad directory entry untuk %s: cluster pertama merupakan akhir dari file "
 "marker"
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1896,7 +1849,7 @@ msgstr ""
 "Bad FAT: unterminated chain untuk %s. Anda seharusnya menjalankan dosfsck "
 "atau scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1905,7 +1858,7 @@ msgstr ""
 "Bad FAT: cluster %d diluar dari file system dalam rantai untuk %s. Anda "
 "seharusnya menjalankan dosfsck atau scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1914,26 +1867,17 @@ msgstr ""
 "Bad FAT: cluster %d adalah cross-linked untuk %s. Anda seharusnya "
 "menjalankan dosfsck atan scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s adalah %dk, tetapi ini memiliki %d clusters (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"File %s ditandai sebagai sistem file. Ini berarti memindahkannya dapat "
-"menyebabkan beberapa aplikasi untuk tidak dapat bekerja."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Partisi terlalu besar/kecil untuk sebuah file system %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1941,11 +1885,11 @@ msgstr ""
 "FAT tidak cocok. Jika anda tidak tahu apa artinya ini, maka pilih cancel, "
 "jalankan scandisk pada file system, dan coba lagi."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Tidak ada konfigurasi yang mungkin untuk tipe FAT ini."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1956,14 +1900,14 @@ msgstr ""
 "Ukuran cluster adalah %dk (%dk diperkirakan); jumlah dari cluster adalah %d "
 "(%d diperkirakan); ukuran dari FATs adalah %d sektor (%d diperkirakan)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr ""
 "File system melaporkan ruang kosong sebagai %d clusters, bukan %d clusters."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1971,17 +1915,17 @@ msgstr ""
 "Tidak terdapat ruangan yang cukup untuk direktori root untuk semua file. "
 "Pilih cancel, atau ignore untuk menggagalkan files."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Error menulis pada direktori root."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr ""
 "Jika anda meninggalkan file system anda sebagai FAT16, maka anda mungkin "
 "tidak akan menemui masalah"
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1992,7 +1936,7 @@ msgstr ""
 "anda ingin melakukan ini, anda seharusnya berkonsultasi terlebih dahulu pada "
 "manual dari Parted (atau manual dari distribusi anda)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -2000,7 +1944,7 @@ msgstr ""
 "Jika anda meninggalkan file system sebagai FAT32, mungkin anda tidak menemui "
 "masalah baru."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2015,41 +1959,41 @@ msgstr ""
 "ke FAT32 akan membuat file system tidak dapat dibaca oleh MS DOS, MS Windows "
 "95a, dan MS Windows NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Maukah anda menggunakan FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "File system hanya dapat diresize ke ukuran ini dengan mengubahnya ke FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "The file system hanya dapat di-resize untuk ukuran ini hanya dengan "
 "mengubahnya menjadi FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted tidak dapat men-resize partisi ini untuk ukuran ini. Kita sedang "
 "mengusahkannya untuk bisa!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2058,41 +2002,41 @@ msgstr ""
 "FAT %d media %x tidak cocok dengan boot sector's media %x. Anda seharusnya "
 "menjalankan scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: cluster %ld diluar file system"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: cluster %ld diluar file system"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: tidak ada cluster yang kosong"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Tidak dapat mendeteksi filesystem."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, fuzzy, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "Support untuk men-resize filesystem %s belum diimplementasikan."
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "File system lebih besar dari volumenya!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "File system memiliki kerusakan."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "Bad blocks tidak dapat dibaca."
 
@@ -2154,61 +2098,61 @@ msgstr "Tidak dapat menemukan sekto %lli dari file HFS+ dengan CNID %X."
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "Mencoba untuk menulis file HFS+ dengan CNID %X dibelakang EOF."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "Maaf, HFS tidak dapat di-resize."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "mengecilkan"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Data relocation telah gagal."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr "Data relocation meninggalkan beberapa data pada akhir dari volume."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "menulis HFS Master Directory Block"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "Tanda tangan HFS[+X] tidak valid telah ditemukan ketika membuka."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "HFS+ versi %d tidak disupport."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "HFS+ versi %d tidak disupport."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "Data relocation meninggalkan beberapa data pada akhir dari volume."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Error ketika menulis alokasi file."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "Error ketika menulis bagian kompatibilitas dari alokasi file."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "menulis HFS+ Volume Header"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "Sebuah error terjadi ketika mencari mandatory bad blocks file."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2216,27 +2160,27 @@ msgstr ""
 "Kelihatannya terjadi kesalahan dalam HFS wrapper: file bad blocks tidak "
 "berisi embedded HFS+ volume."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "Maaf, HFS+ tidak dapat di-resize dengan cara itu saat ini."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "mengecilkan embedded HFS+ volume"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Resizing dari HFS+ volume telah gagal."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "mengecilkan HFS wrapper"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "Update dari HFS wrapper telah gagal."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2315,7 +2259,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Sebuah extent tidak dapat direlokasikan."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2323,15 +2267,15 @@ msgstr ""
 "Sebuah referensi untuk sebuah extent datang dari tempat yang tidak "
 "seharusnya. Anda harus mengecheck filesystem!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "HFS volume tidak memiliki catalog file. Ini sangat tidak biasa!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr "HFS+ volume ini tidak memiliki extent overflow file. Ini tidak biasa!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2339,51 +2283,51 @@ msgstr ""
 "Extent overflow file seharusnya tidak berisi extentnya sendiri! Anda "
 "seharusnya mengecheck filesystem."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Tidak dapat men-cache filesystem dalam memori."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "Daftar bad blocks tidak dapat diload."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Terjadi error ketika extent relocation."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "HFS+ volume tidak memiliki catalog file. Ini sangat tidak biasa!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr "HFS+ volume tidak memiliki extent overflow file. Ini tidak biasa!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "tampilkan pesan bantuan ini"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "tampilkan layout partisi di seluruh perangkat blok"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "tampilkan keluaran mesin yang dapat diinputkan (parseable)"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "jangan menanyakan intervensi pengguna"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "tampilkan versi dari program ini"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "penyesuaian untuk partisi baru"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2392,31 +2336,31 @@ msgstr ""
 "label, penomoran partisi utama (primary) dari 1 sampai 4, partisi logical "
 "dari 5 keatas.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "TIPE-LABEL adalah salah satu dari: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "TANDA adalah salah satu dari: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "SATUAN adalah salah satu dari: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "penyesuaian yang diinginkan: minimal atau optimal"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "TIPE-PART adalah salah satu dari: primary, logical, extended\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "TIPE-FS adalah salah satu dari: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2426,7 +2370,7 @@ msgstr ""
 "dihitung dari akhir alamat disk. sebagai contoh, =-1s menyatakan lokasi "
 "sektor terakhir.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 #, fuzzy
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
@@ -2436,19 +2380,19 @@ msgstr ""
 "dihitung dari akhir alamat disk. sebagai contoh, =-1s menyatakan lokasi "
 "sektor terakhir.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "STATUS adalah salah satu dari: on, off\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "PERANGKAT biasanya menggunakan nama /dev/hda atau /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NAMA adalah kata apapun yang anda inginkan\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2469,24 +2413,24 @@ msgstr ""
 "GNU General Public License untuk informasi yang lebih detail.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(waktu tersisa %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, fuzzy, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr ""
 "Partisi %s sedang digunakan. Anda harus meng-umount terlebih dahulu sebelum "
 "memodifikasinya dengan menggunakan Parted."
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Partisi pada %s sedang digunakan."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2495,31 +2439,31 @@ msgstr ""
 "Disk label yang ada di %s akan dihapus dan seluruh data di disk ini akan "
 "hilang. Apakah anda ingin melanjutkan?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Tipe disk label baru?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Tipe partisi?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Nama partisi?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Tipe file system?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Awal?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Akhir?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, fuzzy, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2528,7 +2472,7 @@ msgstr ""
 "Anda meminta sebuah partisi dari %s sampai %s.\n"
 "Lokasi terdekat yang dapat kami tangani adalah %s sampai %s.%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2536,94 +2480,94 @@ msgstr ""
 "\n"
 "Apakah ini masih dapat anda terima?"
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "%s disk label tidak mensupport partisi extended."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Nomor partisi?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 "BIOS cylinder,head,sector geometry: %d,%d,%d. Setiap cylinder adalah %s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Model: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Disk %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Ukuran sektor (logical/physical): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Tabel Partisi: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, fuzzy, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Disk %s: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Nomor"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Awal"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Akhir"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Ukuran"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Tipe"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "File system"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Nama"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Tanda"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Ruang Kosong"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2632,54 +2576,54 @@ msgstr ""
 "Sebuah %s %s partisi ditemukan pada %s -> %s. Anda ingin menambahkan ini "
 "pada tabel partisi?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "mencari untuk file systems"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr ""
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Perangkat baru?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "tipe penyesuaian(min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr ""
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, c-format
 msgid "%d not aligned: %s\n"
 msgstr ""
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Tanda yang akan dirubah?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Status baru?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Satuan?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "pemeriksaan-penyesuaian"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
@@ -2688,11 +2632,11 @@ msgstr ""
 "pemeriksaan-penyesuaian TIPE N            periksa partisi N untuk "
 "penyesuaian TIPE(min|opt)"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "bantuan"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2700,15 +2644,15 @@ msgstr ""
 "bantuan [PERINTAH]                       menampilkan bantuan umum, atau "
 "bantuan pada PERINTAH"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2716,15 +2660,15 @@ msgstr ""
 "mklabel,mktable TIPE-LABEL               membuat sebuah disklabel baru "
 "(tabel partisi)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart TIPE-PART [TIPE-FS] AWAL AKHIR    membuat sebuah partisi"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2732,21 +2676,21 @@ msgstr ""
 "'mkpart' membuat sebuah partisi tanpa membuat sebuah file system baru pada "
 "partisi. TIPE-FS mungkin dispesifikasikan untuk mengeset ID partisi.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "nama"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "nama NOMOR NAMA                          memberi nama partisi NOMOR dengan "
 "NAMA"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "cetak"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2756,7 +2700,7 @@ msgstr ""
 "yang bisa dipakai, ruang kosong, seluruh partisi yang ditemukan, atau untuk "
 "partisi tertentu"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2764,11 +2708,11 @@ msgstr ""
 "Tanpa argumen, 'print' menampilkan seluruh tabel partisi. Akan tetapi dengan "
 "diikuti argument ini akan melakukan beberapa aksi yang berbeda.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : menampilkan seluruh perangkat blok yang aktif\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2776,14 +2720,14 @@ msgstr ""
 "  free      : menampilkan informasi tentang ruang partisi kosong di perngkat "
 "blok yang sedang dipakai\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all : tampilkan tabel partisi dari seluruh perangkat blok yang "
 "aktif\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
@@ -2791,19 +2735,19 @@ msgstr ""
 "  NUMBER    : tampilkan informasi yang lebih detail tentang partisi yang "
 "terpilih\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "berhenti"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "berhenti                                 keluar dari program"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "selamatkan"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2811,58 +2755,58 @@ msgstr ""
 "selamatkan AWAL AKHIR                    menyelamatkan partisi yang hilang "
 "didekat alamat AWAL dan AKHIR"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr ""
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 #, fuzzy
 msgid "resizepart"
 msgstr "resize"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 #, fuzzy
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "pindah NOMOR AWAL AKHIR                  memindahkan partisi NOMOR"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "hapus"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "hapus NOMOR                              hapus partisi NOMOR"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "pilih"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr ""
 "pilih PERANGKAT                          pilih perangkat yang akan di edit"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr ""
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 #, fuzzy
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 "set NOMOR FLAG STATUS                    merubah tanda pada partisi NOMOR"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 #, fuzzy
 msgid "disk_toggle"
 msgstr "ubah"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 #, fuzzy
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
@@ -2871,21 +2815,21 @@ msgstr ""
 "ubah [NOMOR [TANDA]]                     ubah keadaan dari TANDA di partisi "
 "NOMOR"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "set NOMOR FLAG STATUS                    merubah tanda pada partisi NOMOR"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "ubah"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2893,20 +2837,20 @@ msgstr ""
 "ubah [NOMOR [TANDA]]                     ubah keadaan dari TANDA di partisi "
 "NOMOR"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "satuan"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "satuan SATUAN                            mengeset satuan baku pada SATUAN"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "versi"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2914,7 +2858,7 @@ msgstr ""
 "versi                                    menampilkan versi dari GNU Parted "
 "dan informasi hak cipta"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2922,33 +2866,41 @@ msgstr ""
 "'versi' menampilkan hak cipta dan informasi versi sesuai dengan kopi dari "
 "GNU Parted ini\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 "Penggunaan: %s [-hlmsv] [-a<penyesuaian>] [PERANGKAT [PERINTAH "
 "[PARAMETER]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Tidak ditemukan perangkat"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 #, fuzzy
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "PERINGATAN: Anda bukan superuser. Perhatikan permisi anda."
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Anda seharusnya menginstall ulang boot loader anda sebelum merebootnya. Baca "
+"bagian 4 dari Parted dokumentasi pengguna untuk informasi lebih lanjut."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Anda mungkin perlu untuk memperbarui /etc/fstab.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 "Selamat datang di GNU Parted| Ketik 'bantuan' untuk melihat daftar dari "
 "perintah yang tersedia.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2960,7 +2912,7 @@ msgstr ""
 "diberikan,\n"
 "maka parted akan berjalan dengan menggunakan mode interaktif.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -3024,7 +2976,7 @@ msgstr ""
 "dan beberapa informasi tambahan mengenai setting yang telah\n"
 "anda lakukan yang menurut anda penting.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -3032,7 +2984,7 @@ msgstr ""
 "\n"
 "Perintah yang pernah dijalankan:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -3040,7 +2992,7 @@ msgstr ""
 "\n"
 "Error: SEGV_MAPPER (Alamat tidak di map ke objek)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3048,7 +3000,7 @@ msgstr ""
 "\n"
 "Error: SEGV_ACCER (Permisi tidak sah untuk objek yang dimap)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3056,7 +3008,7 @@ msgstr ""
 "\n"
 "Error: Sebuah sinyal SIGSEGV umum telah ditemui.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3064,7 +3016,7 @@ msgstr ""
 "\n"
 "Error: FPE_INTDIV (Integer: dibagi dengan nol)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3072,7 +3024,7 @@ msgstr ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3080,7 +3032,7 @@ msgstr ""
 "\n"
 "Error: FPE_FLTDIV (Float: dibagi dengan nol)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3088,7 +3040,7 @@ msgstr ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3096,7 +3048,7 @@ msgstr ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3104,7 +3056,7 @@ msgstr ""
 "\n"
 "Error: FPE_FLTRES (Float: hasil tidak eksak)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3112,7 +3064,7 @@ msgstr ""
 "\n"
 "Error: FPE_FLTINV (Float: operasi tidak valid)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3120,7 +3072,7 @@ msgstr ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript diluar dari jangkauan)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3128,7 +3080,7 @@ msgstr ""
 "\n"
 "Error: Sebuah sinyal SIGFPE umum telah ditemukan."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3136,7 +3088,7 @@ msgstr ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3144,7 +3096,7 @@ msgstr ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3152,7 +3104,7 @@ msgstr ""
 "\n"
 "Error: ILL_ILLADDR (Illegal mode pengalamatan)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3160,7 +3112,7 @@ msgstr ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3168,7 +3120,7 @@ msgstr ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3176,7 +3128,7 @@ msgstr ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3184,7 +3136,7 @@ msgstr ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3192,7 +3144,7 @@ msgstr ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3200,69 +3152,69 @@ msgstr ""
 "\n"
 "Error: Sebuah sinyal SIGILL umum telah ditemukan."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "token tidak valid: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Memperkirakan sebuah nomor partisi."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Partisi tidak ada."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Memperkirakan sebuah tipe filesystem."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Tipe filesystem tidak diketahui \"%s\"."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Memperkirakan sebuah tipe disk label."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Tidak dapat membuat partisi lagi."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Memperkirakan sebuah tipe partisi."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "nyala"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "mati"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "optimal"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "minimal"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "PILIHAN:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "PERINTAH:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, fuzzy, c-format
 msgid ""
 "\n"
@@ -3271,33 +3223,52 @@ msgstr ""
 "\n"
 "Laporkan bugs ke: %s\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Menggunakan perangkat %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 
+#, c-format
 #~ msgid "%s: option `--%s' doesn't allow an argument\n"
 #~ msgstr "%s: pilihan `--%s' tidak memperbolehkan adanya argumen\n"
 
+#, c-format
 #~ msgid "%s: unrecognized option `--%s'\n"
 #~ msgstr "%s: pilihan `--%s' tidak dikenali\n"
 
+#, c-format
 #~ msgid "%s: illegal option -- %c\n"
 #~ msgstr "%s: pilihan -- %c tidak valid\n"
 
+#, c-format
 #~ msgid "%s: option `-W %s' is ambiguous\n"
 #~ msgstr "%s: pilihan `-W %s' adalah abigu\n"
 
+#, c-format
 #~ msgid "%s: option `-W %s' doesn't allow an argument\n"
 #~ msgstr "%s: pilihan `-W %s' tidak memperbolehkan adanya sebuah argument\n"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "%s halaman rumah: <http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument `%s'"
+#~ msgstr "argumen `%s' tidak sah %s%s"
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument `%s'"
+#~ msgstr "akhiran tidak sah di %s%s argumen `%s'"
+
+#, c-format
+#~ msgid "%s%s argument `%s' too large"
+#~ msgstr "%s%s argumen `%s' terlalu besar"
+
+#, c-format
 #~ msgid ""
 #~ "Usage: %s [OPTION]\n"
 #~ "  or:  %s DEVICE MINOR\n"
@@ -3319,15 +3290,46 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ msgid "      --version  output version information and exit\n"
 #~ msgstr "      --version  menampilkan informasi versi dan keluar\n"
 
+#, c-format
 #~ msgid "too few arguments"
 #~ msgstr "argumen terlalu sedikit"
 
+#, c-format
 #~ msgid "too many arguments"
 #~ msgstr "Terlalu banyak argument."
 
+#, c-format
 #~ msgid "invalid minor device number: %s"
 #~ msgstr "nomor divais minor tidak sah: %s"
 
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Tabel partisi tidak dapat dibaca ulang. Ini berarti anda perlu untuk me-"
+#~ "reboot terlebih dahulu sebelum me-mount semua partisi yang dimodifikasi. "
+#~ "Anda juga perlu menginstall kembali bootloader anda sebelum me-reboot "
+#~ "komputer anda (yang memerlukan untuk me-mount partisi yang dimodifikasi). "
+#~ "Ini tidak mungkin untuk melakukan keduanya secara sekaligus! Jadi anda "
+#~ "perlu membuat sebuah disket penolong (rescue), dan menginstall bootloader "
+#~ "anda dari disket penolong tersebut. Baca bagian 4 dari dokumentasi "
+#~ "pengguna Parted untuk informasi lebih lanjut."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "Tabel partisi pada %s tidak dapat dibaca kembali (%s). Ini berarti hurd "
+#~ "tidak tahu apa-apa tentang modifikasi yang anda buat. Anda seharusnya "
+#~ "mereboot komputer anda sebelum melakukan apapun dengan %s."
+
+#, c-format
 #~ msgid ""
 #~ "Could not determine minimum io size for %s: %s.\n"
 #~ "Using the default size (%lld)."
@@ -3335,6 +3337,7 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ "Tidak dapat menentukan ukuran sektor minimum untuk %s: %s.\n"
 #~ "Menggunakan ukuran sektor baku (%lld)."
 
+#, c-format
 #~ msgid ""
 #~ "Device %s has a logical sector size of %lld.  Not all parts of GNU Parted "
 #~ "support this at the moment, and the working code is HIGHLY EXPERIMENTAL.\n"
@@ -3343,6 +3346,7 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ "GNU Parted support akan hal ini pada saat ini, dan kode program yang "
 #~ "digunakan saat ini masih TAHAP PERCOBAAN.\n"
 
+#, c-format
 #~ msgid ""
 #~ "parted was unable to re-read the partition table on %s (%s).  This means "
 #~ "Linux won't know anything about the modifications you made. "
@@ -3351,6 +3355,7 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ "berarti Linux tidak akan tahu apapun tentang modifikasi yang telah anda "
 #~ "buat."
 
+#, c-format
 #~ msgid ""
 #~ "WARNING: the kernel failed to re-read the partition table on %s (%s).  As "
 #~ "a result, it may not reflect all of your changes until after reboot."
@@ -3359,12 +3364,15 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ "Hasilnya, ini mungkin tidak merefleksikan semua perubahan yang anda "
 #~ "lakukan sampai anda melakukan reboot."
 
+#, c-format
 #~ msgid "Support for opening %s file systems is not implemented yet."
 #~ msgstr "Support untuk membuka file systems %s belum diimplementasikan."
 
+#, c-format
 #~ msgid "Support for creating %s file systems is not implemented yet."
 #~ msgstr "Support untuk membuat file systems %s belum diimplementasikan."
 
+#, c-format
 #~ msgid "Support for checking %s file systems is not implemented yet."
 #~ msgstr "Support untuk mengecheck file systems %s belum diimplementasikan."
 
@@ -3377,6 +3385,7 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ msgid "Can't copy onto an overlapping partition."
 #~ msgstr "Tidak dapat menyalin kedalam partisi yang overlap."
 
+#, c-format
 #~ msgid ""
 #~ "Direct support for copying file systems is not yet implemented for %s.  "
 #~ "However, support for resizing is implemented.  Therefore, the file system "
@@ -3390,6 +3399,7 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ "sama besar dengan partisi lama. Jadi, bisa dilakukan dengan mengecilkan "
 #~ "partisi yang akan disalin, atau menyalin ke partisi yang lebih besar."
 
+#, c-format
 #~ msgid "Support for copying %s file systems is not implemented yet."
 #~ msgstr "Support untuk menyalin filesystem %s belum diimplementasikan."
 
@@ -3437,12 +3447,14 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ msgid "copying"
 #~ msgstr "menyalin"
 
+#, c-format
 #~ msgid "Couldn't resolve symbol %s.  Error: %s."
 #~ msgstr "Tidak dapat menresolv simbol %s. Error: %s."
 
 #~ msgid "GNU Parted found an invalid libreiserfs library."
 #~ msgstr "GNU Parted menemukan sebuah library libreiserfs yang tidak valid."
 
+#, c-format
 #~ msgid ""
 #~ "GNU Parted has detected libreiserfs interface version mismatch.  Found %d-"
 #~ "%d, required %d. ReiserFS support will be disabled."
@@ -3453,6 +3465,7 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ msgid "This is not an ECKD disk!  This disk type is not supported!"
 #~ msgstr "Ini bukan cakram ECKD! Tipe cakram ini tak didukung!"
 
+#, c-format
 #~ msgid ""
 #~ "%s contains GPT signatures, indicating that it has a GPT table.  However, "
 #~ "it does not have a valid fake msdos partition table, as it should.  "
@@ -3467,6 +3480,9 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ "dan sekarang menggunakan sebuah tabel partisi msdos. Apakah ini sebuah "
 #~ "tabel partisi GPT?"
 
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "Daerah boot tidak dimulai pada awal dari partisi."
+
 #~ msgid "Inconsistent group descriptors!"
 #~ msgstr "group descriptors tidak konsistent!"
 
@@ -3521,11 +3537,13 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ msgid "adding groups"
 #~ msgstr "menambahkan groups"
 
+#, c-format
 #~ msgid "Your file system is too full to resize it to %i blocks.  Sorry."
 #~ msgstr ""
 #~ "File system anda terlalu penuh untuk men-resize-nya menjadi %i blocks. "
 #~ "Maaf."
 
+#, c-format
 #~ msgid ""
 #~ "Your file system has too many occupied inodes to resize it to %i blocks.  "
 #~ "Sorry."
@@ -3567,9 +3585,11 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ "Cross-linked blocks ditemukan! Lebih baik menjalankan e2fsck terlebih "
 #~ "daulu!"
 
+#, c-format
 #~ msgid "Block %i has no reference?  Weird."
 #~ msgstr "Block %i tidak memiliki reference? Aneh."
 
+#, c-format
 #~ msgid "Block %i shouldn't have been marked (%d, %d)!"
 #~ msgstr "Block %i seharusnya tidak memiliki tanda (%d, %d)!"
 
@@ -3592,6 +3612,7 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ msgid "File system too small for ext2."
 #~ msgstr "File system terlalu kecil untuk ext2."
 
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3599,6 +3620,14 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ "File system ini memiliki sektor logical yang berukuran %d. GNU Parted "
 #~ "tidak bekerja dengan baik dengan ukuran sektor selain 512 bytes."
 
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "File %s ditandai sebagai sistem file. Ini berarti memindahkannya dapat "
+#~ "menyebabkan beberapa aplikasi untuk tidak dapat bekerja."
+
 #~ msgid "Too many bad pages."
 #~ msgstr "Terlalu banyak bad pages."
 
@@ -3612,6 +3641,7 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ "Filesystem yang ada akan dihapus dan seluruh data yang ada di partisi "
 #~ "tersebut akan hilang. Apakah anda ingin melanjutkan?"
 
+#, c-format
 #~ msgid ""
 #~ "WARNING: you are attempting to use %s to operate on (%s) a file system.\n"
 #~ "%s's file system manipulation code is not as robust as what you'll find "
@@ -3651,12 +3681,15 @@ msgstr "Perintah ini tidak mempunyai arti dalam mode non-interaktif.\n"
 #~ "Tidak dapat memindahkan partisi ke partisi itu sendiri. Coba menggunakan "
 #~ "resize, mungkin?"
 
+#, c-format
 #~ msgid "Minor: %d\n"
 #~ msgstr "Minor: %d\n"
 
+#, c-format
 #~ msgid "Flags: %s\n"
 #~ msgstr "Tanda: %s\n"
 
+#, c-format
 #~ msgid "File System: %s\n"
 #~ msgstr "File System: %s\n"
 
index 29ca846860be3e45d218e3ab1e5cabc2cb949443..24391af65095941a288138344bf2e65e2761b740 100644 (file)
Binary files a/po/it.gmo and b/po/it.gmo differ
index b01bb19bc1bc79e11c9e1ebb8a8bfbaa947fe981..b4235ef5aa648a010677ce569abf856c7a46b86a 100644 (file)
--- a/po/it.po
+++ b/po/it.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 3.1.90\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2014-07-10 09:57+0100\n"
 "Last-Translator: Milo Casagrande <milo@milo.name>\n"
 "Language-Team: Italian <tp@lists.linux.it>\n"
@@ -98,11 +98,11 @@ msgstr "%s: l'opzione richiede un argomento -- \"%c\"\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "\""
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "\""
 
@@ -372,32 +372,17 @@ msgstr "Aiuto per l'utilizzo di software GNU: <http://www.gnu.org/gethelp/>\n"
 msgid "memory exhausted"
 msgstr "memoria esaurita"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "l'argomento \"%3$s\" di %1$s%2$s non è valido"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "il suffisso nell'argomento \"%3$s\" di %1$s%2$s non è valido"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "l'argomento \"%3$s\" di %1$s%2$s è troppo grande"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Immagine disco"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Errore nell'aprire %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -405,47 +390,47 @@ msgstr ""
 "Impossibile aprire %s in lettura-scrittura (%s). %s è stato aperto in sola "
 "lettura."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s durante il posizionamento per la lettura su %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s durante la lettura su %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Impossibile scrivere su %s poiché è stato aperto in sola lettura."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s durante il posizionamento per la scrittura su %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s durante la scrittura su %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Usare \"%s --help\" per ulteriori informazioni.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Uso: %s [OPZIONI] [DEVICE]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -462,7 +447,7 @@ msgstr ""
 "  -h, --help       Visualizza questo aiuto ed esce\n"
 "  -v, --version    Stampa la versione ed esce\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -470,7 +455,7 @@ msgstr ""
 "\n"
 "Quando non viene fornito alcun DEVICE, rileva tutte le partizioni.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -488,43 +473,7 @@ msgstr "Impossibile aprire %s."
 msgid "Unable to probe store."
 msgstr "Impossibile rilevare il dispositivo di archiviazione."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Impossibile rileggere la tabella delle partizioni; per poter montare le "
-"partizioni modificate è necessario riavviare il computer. Prima del riavvio "
-"è anche necessario installare nuovamente il \"boot loader\" (potrebbe "
-"richiedere di montare le partizioni modificate). Poiché non è possibile "
-"svolgere entrambe le operazioni, avviare il computer da un disco di "
-"ripristino e installare il \"boot loader\" da tale disco. Per maggiori "
-"informazioni, consultare la sezione 4 della documentazione di Parted."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"La tabella delle partizioni su %s (%s) non può essere riletta. Questo "
-"significa che le modifiche effettuate non saranno note a Hurd. Riavviare il "
-"computer prima di fare qualsiasi cosa con %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Prima di riavviare è utile reinstallare il \"boot loader\". Per maggiori "
-"informazioni, consultare la sezione 4 della documentazione di Parted."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s nel tentativo di sincronizzare %s sul disco"
@@ -849,15 +798,15 @@ msgstr "metadati"
 msgid "free"
 msgstr "libero"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "estesa"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logica"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primaria"
 
@@ -933,64 +882,73 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "pmbr_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Flag di partizione %d sconosciuto."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Informazioni"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Avviso"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Errore"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Irrimediabile"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Bug"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Non implementato"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Ripara"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Sì"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "No"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Riprova"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Ignora"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Annulla"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -1003,33 +961,33 @@ msgstr ""
 "comunicare nelle segnalazioni. Segnalare un bug a %s specificando almeno la "
 "versione (%s) e il seguente messaggio:  "
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr ""
 "Il supporto per leggere etichette dei dischi AIX non è ancora stato "
 "implementato."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr ""
 "Il supporto per scrivere etichette dei dischi AIX non è ancora stato "
 "implementato."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "Il supporto per aggiungere partizioni alle etichette dei dischi AIX non è "
 "ancora stato implementato."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "Il supporto per duplicare partizioni in etichette dei dischi AIX non è "
 "ancora stato implementato."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1037,7 +995,7 @@ msgstr ""
 "Il supporto per impostare il tipo di sistema delle partizioni in etichette "
 "dei dischi AIX non è ancora stato implementato."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 "Il supporto per impostare i flag in etichette dei dischi AIX non è ancora "
@@ -1128,11 +1086,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Impossibile soddisfare tutti i vincoli sulla partizione."
@@ -1148,42 +1106,42 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Impossibile allocare un numero di partizione."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Impossibile allocare uno spazio per un'etichetta bsd."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Impossibile allocare uno spazio per un'etichetta dasd"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Tabella delle partizioni su %s non valida -- firma %x errata."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Tabella della partizioni non valida - partizione ricorsiva su %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "Le partizioni estese non possono essere nascoste su etichette MS-DOS."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "Le partizioni estese non possono essere nascoste su etichette MS-DOS."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr "Impossibile ridimensionare partizioni gestite da Windows Dynamic Disk."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "Non è possibile creare ulteriori partizioni"
 
@@ -1330,11 +1288,11 @@ msgstr "Impossibile recuperare informazioni sulla dimensione del blocco."
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "il device è troppo piccolo per GPT"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1343,7 +1301,7 @@ msgstr ""
 "La versione del formato della tabella delle partizioni GPT è %x, successiva "
 "a quella nota al programma. Segnalare questo problema."
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1354,7 +1312,7 @@ msgstr ""
 "affinché utilizzi tutto lo spazio (ulteriori %llu blocchi) o continuare con "
 "le impostazioni attuali?"
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1363,7 +1321,7 @@ msgstr ""
 "fine del disco. Correggere il problema spostando la copia alla fine (e "
 "rimuovendo quella vecchia)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1372,7 +1330,7 @@ msgstr ""
 "a crearne una nuova e, tramite le funzionalità di ripristino del programma, "
 "recuperare le partizioni."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1380,7 +1338,7 @@ msgstr ""
 "La tabella GPT di backup è danneggiata, ma quella principale sembra corretta "
 "e verrà utilizzata."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1389,12 +1347,12 @@ msgstr ""
 "corretta e verrà utilizzata."
 
 # (ndt) aiuto!!! idee sul vero significato della frase?
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr ""
 "CRC non corrispondente nella tabella delle partizioni primaria dell'array"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "traduzione nome della partizione non riuscita"
 
@@ -1427,18 +1385,14 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "La regione dei dati non comincia all'inizio della partizione."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "La regione di avvio non comincia all'inizio della partizione."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "La regione di avvio della partizione non occupa l'intera partizione."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "La regione dati della partizione non occupa l'intera partizione."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
@@ -1446,7 +1400,7 @@ msgstr ""
 "Dimensione del blocco nel descrittore del device inusuale: %d byte non è "
 "divisibile per 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1455,11 +1409,11 @@ msgstr ""
 "Il descrittore del driver indica che la dimensione del blocco fisico è di %d "
 "byte, ma Linux indica %d byte."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Non è stata trovata alcuna mappa delle partizioni valida."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1468,11 +1422,11 @@ msgstr ""
 "Due elementi della mappa delle partizioni hanno dimensioni diverse. Il primo "
 "elemento indica di essere %d, mentre l'elemento %d indica %d."
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Sono presenti due mappe delle partizioni. Situazione inusuale."
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1480,18 +1434,18 @@ msgstr ""
 "Cambiare il nome di una partizione di root o swap non permetterà a Linux di "
 "riconoscerla come tale."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr ""
 "Impossibile aggiungere un'altra partizione: la mappa delle partizioni è "
 "troppo piccola."
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Tabella delle partizioni non valida su %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1500,7 +1454,7 @@ msgstr ""
 "La partizione %d non è allineata con l'inizio di un cilindro. Funzionalità "
 "non ancora supportata."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Non è possibile aggiungere un'altra partizione."
 
@@ -1675,39 +1629,39 @@ msgstr "Impossibile scrivere VTOC FMT7 DSCB."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Impossibile scrivere VTOC FMT9 DSCB."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Memoria non sufficiente."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Impossibile ottenere la dimensione dell'unità speciale \"COMPACT\""
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "\"%s\" utilizza una sintassi errata per le posizioni."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Il massimo valore per la testina è %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Il massimo valore per il settore è %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "La posizione %s è esterna al device %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Numero non valido."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "Usare un'unità più piccola al posto di un valore < 1"
 
@@ -1717,18 +1671,18 @@ msgstr "Usare un'unità più piccola al posto di un valore < 1"
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s: allocazione blocco di partizione non riuscita\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s: allocazione del blocco non riuscita\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s: impossibile leggere il blocco di avvio %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1755,22 +1709,22 @@ msgid "%s : Couldn't write block %d\n"
 msgstr "%s: impossibile scrivere il blocco %d\n"
 
 # (ndt) disk_specific ???
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s: allocazione del blocco rdb disk_specific non riuscita\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s: blocco rdb non trovato, non dovrebbe accadere\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s: lettura del blocco di partizione %llu non riuscita\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1875,7 +1829,7 @@ msgstr ""
 "impostare la geometria CHS del file system affinché corrisponda alla "
 "geometria CHS della tabella delle partizioni."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1902,14 +1856,14 @@ msgstr ""
 "Lo spostamento del primo blocco del cluster è %d e non è un multiplo della "
 "dimensione del cluster %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Elemento di directory errato per %s: il primo cluster è la fine del "
 "marcatore di file."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1917,7 +1871,7 @@ msgstr ""
 "FAT errata: catena per %s non terminata. Eseguire \"dosfsck\" oppure "
 "\"scandisk\"."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1926,7 +1880,7 @@ msgstr ""
 "FAT errata: cluster %d usato nella catena %s fuori dal file system. Eseguire "
 "\"dosfsck\" oppure \"scandisk\"."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1935,26 +1889,17 @@ msgstr ""
 "FAT errata: cluster %d con collegamenti incrociati per %s. Eseguire \"dosfsck"
 "\" oppure \"scandisk\"."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s è %dk, ma contiene %d cluster (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"Il file %s è indicato come file di sistema; spostandolo, alcuni programmi "
-"potrebbero bloccarsi."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Partizione troppo grande o troppo piccola per il file system %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1962,11 +1907,11 @@ msgstr ""
 "Le FAT non coincidono. Se non se ne conosce il significato, selezionare "
 "\"Annulla\", eseguire \"scandisk\", quindi ritornare a questo punto."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Non ci sono configurazioni possibili per questo tipo di FAT."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1977,13 +1922,13 @@ msgstr ""
 "del cluster è %dk (atteso %dk); il numero di cluster è %d (atteso %d); la "
 "dimensione delle FAT è %d settori (atteso %d)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr "Il file system riporta uno spazio libero di %d cluster anziché %d."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1991,15 +1936,15 @@ msgstr ""
 "Non c'è sufficiente spazio nella directory principale per tutti i file. "
 "Annullare oppure ignorare per perdere i file."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Errore nello scrivere nella directory principale."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "Lasciare il file system come FAT16 non causerà alcun problema."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2009,13 +1954,13 @@ msgstr ""
 "reinstallare il boot loader di Windows. Per continuare, consultare il "
 "manuale di Parted (o della propria distribuzione)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
 msgstr "Lasciare il file system come FAT32 non introdurrà alcun problema."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2028,42 +1973,42 @@ msgstr ""
 "(o della propria distribuzione). Inoltre, la conversione a FAT32 renderà il "
 "file system non utilizzabile con MS-DOS, MS Windows 95a e MS Windows NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Usare FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "Il file system può solo essere portato a questa dimensione se si converte a "
 "FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "Il file system può solo essere portato a questa dimensione se si converte a "
 "FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "Impossibile ridimensionare questa partizione a questa dimensione. Funzione "
 "in fase di sviluppo."
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2072,41 +2017,41 @@ msgstr ""
 "FAT %d, il supporto %x non coincide con quello specificato nel settore di "
 "avvio di %x. Eseguire \"scandisk\"."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: cluster %ld al di fuori del file system"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: cluster %ld al di fuori del file system"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: cluster esauriti"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Impossibile rilevare il file system."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "La ridimensione del file system %s non è supportata"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "Il file system è più ampio del suo volume."
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "Il file system contiene errori."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "I blocchi danneggiati non possono essere letti."
 
@@ -2169,63 +2114,63 @@ msgstr "Impossibile trovare il settore %lli del file HFS+ con CNID %X."
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "Tentativo di scrivere file HFS+ con CNID %X oltre EOF."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "HFS non può ancora essere ridimensionato in quel modo."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "riduzione"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Riposizionamento dei dati non riuscito."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 "Il riposizionamento dei dati ne ha lasciati alcuni alla fine del volume."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "scrittura del \"Master Directory Block\" HFS"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "All'apertura non è stata trovata alcuna firma HFS[+X] valida."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "La versione %d di HFS+ non è supportata."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "La versione %d di HFSX non è supportata."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr ""
 "Il riposizionamento dei dati ne ha lasciati alcuni alla fine del volume."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Errore nello scrivere l'\"Allocation File\"."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "Errore nello scrivere la parte compatibile dell'\"Allocation File\"."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "scrittura del \"Volume Header\" HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "Errore nella ricerca del file obbligatorio per i blocchi danneggiati."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2233,28 +2178,28 @@ msgstr ""
 "Sembra esserci un errore nel wrapper HFS: il file dei blocchi danneggiati "
 "non contiene il volume HFS+ integrato."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "HFS+ non può ancora essere ridimensionato in quel modo."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "riduzione del volume HFS+ integrato"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Ridimensionamento del volume HFS+ non riuscito."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "riduzione del wrapper HFS"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "Aggiornamento del wrapper HFS non riuscito."
 
 # (ndt) mah...
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2338,7 +2283,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Un extent non è stato riposizionato."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2347,18 +2292,18 @@ msgstr ""
 "il file system."
 
 # (ndt) preferisco lasciarli in inglese, sono delle 'parti' della struttura di HFS
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr ""
 "Questo volume HFS non possiede un \"Catalog File\". Situazione inusuale."
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Questo volume HFS non possiede un \"Extent Overflow File\". Situazione "
 "abbastanza inusuale."
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2366,53 +2311,53 @@ msgstr ""
 "L'\"Extent Overflow File\" non deve contenere i propri extent. Controllare "
 "il file system."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Impossibile caricare il file system in memoria."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "Impossibile caricare l'elenco dei blocchi danneggiati."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Si è verificato un errore nel riallocare l'extent."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "Questo volume HFS non ha un \"Catalog File\". Situazione inusuale."
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Questo volume HFS+ non possiede un \"Extent Overflow File\". Situazione "
 "abbastanza inusuale."
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "Mostra questo messaggio di aiuto"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "Elenca la disposizione delle partizioni su tutti i device a blocchi"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "Mostra un output analizzabile dal computer"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "Non chiede mai l'intervento dell'utente"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "Stampa la versione"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "allineamento per le nuove partizioni"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2420,32 +2365,32 @@ msgstr ""
 "NUMERO è il numero di partizione usato da Linux. Su etichette del disco MS-"
 "DOS, le partizioni primarie hanno numeri da 1 a 4 e le logiche da 5 in poi.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "TIPO_ETIC è uno di: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "FLAG è uno di: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "UNITÀ è uno di: "
 
 # (ndt) da tradurre?
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "allineamento richiesto: minimo od ottimale"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "TIPO_PART è uno di: primary, logical, extended\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "TIPO_FS è uno di: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2455,7 +2400,7 @@ msgstr ""
 "sono relativi alla fine del disco. Per esempio, -1s indica esattamente "
 "l'ultimo settore.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2464,19 +2409,19 @@ msgstr ""
 "relativi alla fine del disco. Per esempio, -1s indica esattamente l'ultimo "
 "settore.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "STATO è uno di: on, off\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "DEVICE è normalmente /dev/hda o /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NOME è una qualsiasi parola\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2497,23 +2442,23 @@ msgstr ""
 "consultare la GNU General Public License.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(tempo rimasto %.2d.%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "La partizione %s è in uso. Continuare veramente?"
 
 # (ndt) preferisco tenerla al plurale
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Le partizioni su %s sono in uso."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2522,31 +2467,31 @@ msgstr ""
 "L'etichetta del disco su %s verrà eliminata e tutti i dati su questo disco "
 "saranno persi. Continuare?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Tipo dell'etichetta del nuovo disco?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Tipo di partizione?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Nome della partizione?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Tipo di file system?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Inizio?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Fine?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2555,7 +2500,7 @@ msgstr ""
 "È stata richiesta una partizione da %s a %s (settori %llu..%llu).\n"
 "La posizione più prossima disponibile è da %s a %s (settori %llu..%llu).%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2563,7 +2508,7 @@ msgstr ""
 "\n"
 "È accettabile?"
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, fuzzy, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
@@ -2571,89 +2516,89 @@ msgstr ""
 "La partizione risultante non è allineata correttamente per garantire "
 "prestazioni ottimali."
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "Le etichette dei dischi %s non supportano le partizioni estese."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Partizione numero?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 "Geometria cilindri, testine, settori dal BIOS: %d,%d,%d. Ogni cilindro è "
 "%s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Modello: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Disco %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Dimensione del settore (logica/fisica): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Tabella delle partizioni: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Flag del disco: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Numero"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Inizio"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Fine"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Dimensione"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Tipo"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "File system"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Nome"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Flag"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Spazio libero"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2662,57 +2607,57 @@ msgstr ""
 "È stata trovata una partizione %s %s su %s -> %s. Aggiungerla alla tabella "
 "delle partizioni?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "ricerca file system"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "Il comando di ridimensionamento è stato rimosso da parted 3.0"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "Ridurre la dimensione di una partizione può causare la perdita di dati: "
 "continuare veramente?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Nuovo device?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "tipo di allineamento (min/ott)"
 
 # (ndt) sembra che quel numero sia il numero della partizione
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d allineata\n"
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, fuzzy, c-format
 msgid "%d not aligned: %s\n"
 msgstr "%d non allineata\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Flag da invertire?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Nuovo stato?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Unità?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
@@ -2721,11 +2666,11 @@ msgstr ""
 "align-check TIPO N                        Controlla la partizione N per "
 "l'allineamento TIPO(min|ott)"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2733,15 +2678,15 @@ msgstr ""
 "help [COMANDO]                           Mostra l'aiuto generale o sul "
 "COMANDO"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2749,15 +2694,15 @@ msgstr ""
 "mklabel,mktable TIPO_ETIC                Crea una nuova etichetta del disco "
 "(tabella delle partizioni)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart TIPO_PART [TIPO_FS] INIZIO FINE   Crea una partizione"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2765,21 +2710,21 @@ msgstr ""
 "\"mkpart\" crea un partizione senza crearvi un file system. TIPO_FS può "
 "essere specificato per impostare un ID della partizione appropriato.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "name NUMERO NOME                         Chiama la partizione NUMERO come "
 "NOME"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2789,7 +2734,7 @@ msgstr ""
 "partizioni, i device disponibili, lo spazio libero, tutte le partizioni "
 "trovate o una particolare partizione"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2797,11 +2742,11 @@ msgstr ""
 "Senza argomenti, \"print\" visualizza l'intera tabella delle partizioni. Con "
 "i seguenti argomenti esegue diverse altre azioni.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : mostra tutti i device a blocchi attivi\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2809,14 +2754,14 @@ msgstr ""
 "  free      : visualizza informazioni riguardo lo spazio libero non "
 "partizionato sul device a blocchi corrente\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all : visualizza le tabelle delle partizioni di tutti i device a "
 "blocchi attivi\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
@@ -2824,19 +2769,19 @@ msgstr ""
 "  NUMERO    : visualizza informazioni dettagliate riguardo questa "
 "particolare partizione\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                     Esce dal programma"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2844,56 +2789,56 @@ msgstr ""
 "rescue INIZIO FINE                       Ripristina una partizione persa "
 "vicino a INIZIO e FINE"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "Il comando di ridimensionamento è stato rimosso da parted 3.0\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "resizepart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr ""
 "resizepart NUMERO FINE                   Ridimensiona la partizione NUMERO"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm NUMERO                                Elimina la partizione NUMERO"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr ""
 "select DEVICE                            Sceglie il device da modificare"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disk_set"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 "disk_set FLAG STATO                      Modifica il FLAG sul device "
 "selezionato"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
@@ -2902,22 +2847,22 @@ msgstr ""
 "device\n"
 "                                         selezionato"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "set NUMERO FLAG STATO                    Modifica il FLAG sulla partizione\n"
 "                                         NUMERO"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2925,20 +2870,20 @@ msgstr ""
 "toggle [NUMERO [FLAG]]                   Commuta lo stato del FLAG sulla\n"
 "                                         partizione NUMERO"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "unit UNITÀ                               Imposta l'unità predefinita a UNITÀ"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2947,7 +2892,7 @@ msgstr ""
 "informazioni\n"
 "                                         sul copyright di GNU Parted"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2955,31 +2900,39 @@ msgstr ""
 "\"version\" visualizza informazioni sul copyright e la versione di questa "
 "copia di GNU Parted\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 "Uso: %s [-hlmsv] [-a<allineamento>] [DEVICE [COMANDO [PARAMETRI]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Nessun device trovato"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr ""
 "Attenzione: non è stato eseguito come super utente. Prestare attenzione ai "
 "permessi.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Prima di riavviare è utile reinstallare il \"boot loader\". Per maggiori "
+"informazioni, consultare la sezione 4 della documentazione di Parted."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Potrebbe essere necessario aggiornare /etc/fstab.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr "Benvenuti in GNU Parted. Digitare \"help\" per l'elenco dei comandi.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2990,7 +2943,7 @@ msgstr ""
 "Esegue COMANDO con i PARAMETRI sul DEVICE. Se non c'è alcun COMANDO\n"
 "parte in modalità interattiva.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -3053,7 +3006,7 @@ msgstr ""
 "Includere anche qualsiasi altra informazione riguardo la propria\n"
 "configurazione da considerarsi importante.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -3061,7 +3014,7 @@ msgstr ""
 "\n"
 "Cronologia comandi:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -3069,7 +3022,7 @@ msgstr ""
 "\n"
 "Errore: SEGV_MAPERR (indirizzo non mappato all'oggetto)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3077,7 +3030,7 @@ msgstr ""
 "\n"
 "Errore: SEGV_ACCERR (permessi non validi per l'oggetto mappato)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3085,7 +3038,7 @@ msgstr ""
 "\n"
 "Errore: incontrato un segnale SIGSEGV generico.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3093,7 +3046,7 @@ msgstr ""
 "\n"
 "Errore: FPE_INTDIV (intero: divisione per zero)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3101,7 +3054,7 @@ msgstr ""
 "\n"
 "Errore: FPE_INTOVF (intero: overflow)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3109,7 +3062,7 @@ msgstr ""
 "\n"
 "Errore: FPE_FLTDIV (float: divisione per zero)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3117,7 +3070,7 @@ msgstr ""
 "\n"
 "Errore: FPE_FLTOVF (float: overflow)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3125,7 +3078,7 @@ msgstr ""
 "\n"
 "Errore: FPE_FLTUND (float: underflow)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3133,7 +3086,7 @@ msgstr ""
 "\n"
 "Errore: FPE_FLTRES (float: risultato inesatto)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3141,7 +3094,7 @@ msgstr ""
 "\n"
 "Errore: FPE_FLTINV (float: operazione non valida)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3149,7 +3102,7 @@ msgstr ""
 "\n"
 "Errore: FPE_FLTSUB (float: subscript fuori dal limite)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3157,7 +3110,7 @@ msgstr ""
 "\n"
 "Errore: incontrato un segnale SIGFPE generico."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3165,7 +3118,7 @@ msgstr ""
 "\n"
 "Errore: ILL_ILLOPC (opcode non consentito)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3173,7 +3126,7 @@ msgstr ""
 "\n"
 "Errore: ILL_ILLOPN (operando non consentito)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3181,7 +3134,7 @@ msgstr ""
 "\n"
 "Errore: ILL_ILLADR (modalità di indirizzamento non consentita)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3189,7 +3142,7 @@ msgstr ""
 "\n"
 "Errore: ILL_ILLTRP (trap non consentita)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3197,7 +3150,7 @@ msgstr ""
 "\n"
 "Errore: ILL_PRVOPC (opcode privilegiato)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3205,7 +3158,7 @@ msgstr ""
 "\n"
 "Errore: ILL_PRVREG (registro privilegiato)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3213,7 +3166,7 @@ msgstr ""
 "\n"
 "Errore: ILL_COPROC (errore del coprocessore)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3221,7 +3174,7 @@ msgstr ""
 "\n"
 "Errore: ILL_BADSTK (errore dello stack interno)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3229,69 +3182,69 @@ msgstr ""
 "\n"
 "Errore: incontrato un segnale SIGILL generico."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "token non valido: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Atteso un numero di partizione."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "La partizione non esiste."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Atteso un tipo di file system."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Tipo di file system \"%s\" sconosciuto."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Atteso un tipo di etichetta disco."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Non è possibile creare ulteriori partizioni."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Atteso un tipo di partizione."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "on"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "off"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "ottimale"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "minimale"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "OPZIONI:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "COMANDI:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3301,33 +3254,89 @@ msgstr ""
 "Segnalare i bug a %s\n"
 
 # '%s' = dev->path
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Viene usato %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Questo comando non ha senso nella modalità non interattiva.\n"
 
+#, c-format
 #~ msgid "%s: option '--%s' doesn't allow an argument\n"
 #~ msgstr "%s: l'opzione \"--%s\" non accetta un argomento\n"
 
+#, c-format
 #~ msgid "%s: unrecognized option '--%s'\n"
 #~ msgstr "%s: opzione \"--%s\" non riconosciuta\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' doesn't allow an argument\n"
 #~ msgstr "%s: l'opzione \"-W %s\" non accetta un argomento\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' requires an argument\n"
 #~ msgstr "%s: l'opzione \"-W %s\" richiede un argomento\n"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "Sito web di %s: <http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "l'argomento \"%3$s\" di %1$s%2$s non è valido"
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "il suffisso nell'argomento \"%3$s\" di %1$s%2$s non è valido"
+
+#, c-format
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "l'argomento \"%3$s\" di %1$s%2$s è troppo grande"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Impossibile rileggere la tabella delle partizioni; per poter montare le "
+#~ "partizioni modificate è necessario riavviare il computer. Prima del "
+#~ "riavvio è anche necessario installare nuovamente il \"boot loader"
+#~ "\" (potrebbe richiedere di montare le partizioni modificate). Poiché non "
+#~ "è possibile svolgere entrambe le operazioni, avviare il computer da un "
+#~ "disco di ripristino e installare il \"boot loader\" da tale disco. Per "
+#~ "maggiori informazioni, consultare la sezione 4 della documentazione di "
+#~ "Parted."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "La tabella delle partizioni su %s (%s) non può essere riletta. Questo "
+#~ "significa che le modifiche effettuate non saranno note a Hurd. Riavviare "
+#~ "il computer prima di fare qualsiasi cosa con %s."
+
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "La regione di avvio non comincia all'inizio della partizione."
+
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
 #~ msgstr ""
 #~ "Il file system ha dei settori logici con dimensione %d. Il programma non "
 #~ "funziona correttamente con settori di dimensione diversa da 512 byte."
+
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "Il file %s è indicato come file di sistema; spostandolo, alcuni programmi "
+#~ "potrebbero bloccarsi."
index ad0605ab9c09350b8f3afd6e1db90679fb005093..4e62880f9d9a64311980ea8cb088290e0cce98d2 100644 (file)
Binary files a/po/ja.gmo and b/po/ja.gmo differ
index 48475580f7dbb7fca0f5416fe4ff5c502cff0589..09ece3e52846332a38998bbe08a6f45466b596cc 100644 (file)
--- a/po/ja.po
+++ b/po/ja.po
@@ -1,14 +1,14 @@
 # Partedのメッセージの日本語訳
 # Copyright (C) 2010 Free Software Foundation, Inc.
 # This file is distributed under the same license as the parted package.
-# Hiroshi Takekawa <sian@big.or.jp>, 1999-2014.
+# Hiroshi Takekawa <sian@big.or.jp>, 1999, 2019, 2021.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: parted 3.1.90\n"
+"Project-Id-Version: GNU parted 3.3.52\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
-"PO-Revision-Date: 2014-07-04 18:30+0900\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
+"PO-Revision-Date: 2021-01-19 19:40+0900\n"
 "Last-Translator: Hiroshi Takekawa <sian@big.or.jp>\n"
 "Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
 "Language: ja\n"
@@ -40,29 +40,29 @@ msgid "Unknown system error"
 msgstr "不明なシステムエラー"
 
 #: lib/getopt.c:278
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' is ambiguous\n"
-msgstr "%s: オプション '-W %s' はいくつかの意味にとれてしまいます\n"
+msgstr "%s: オプション '%s%s' は曖昧です\n"
 
 #: lib/getopt.c:284
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' is ambiguous; possibilities:"
-msgstr "%s: オプション '%s' は曖昧です。可能性としては次のものがあります:"
+msgstr "%s: オプション '%s%s' は曖昧です。可能性としては次のものがあります:"
 
 #: lib/getopt.c:319
-#, fuzzy, c-format
+#, c-format
 msgid "%s: unrecognized option '%s%s'\n"
-msgstr "%s: '%c%s' は認識できないオプションです\n"
+msgstr "%s: '%s%s' は認識できないオプションです\n"
 
 #: lib/getopt.c:345
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' doesn't allow an argument\n"
-msgstr "%s: オプション '%c%s' は引数を受けとりません\n"
+msgstr "%s: オプション '%s%s' は引数を受けとりません\n"
 
 #: lib/getopt.c:360
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' requires an argument\n"
-msgstr "%s: オプション '--%s' には引数が必要です\n"
+msgstr "%s: オプション '%s%s' には引数が必要です\n"
 
 #: lib/getopt.c:621
 #, c-format
@@ -95,11 +95,11 @@ msgstr "%s: '%c' には引数が必要です\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "`"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "'"
 
@@ -132,9 +132,8 @@ msgid "Invalid back reference"
 msgstr "不正な後方参照"
 
 #: lib/regcomp.c:156
-#, fuzzy
 msgid "Unmatched [, [^, [:, [., or [="
-msgstr "対応のない [ あるいは [^"
+msgstr "対応のない [, [^, [:, [. あるいは [="
 
 #: lib/regcomp.c:159
 msgid "Unmatched ( or \\("
@@ -215,15 +214,13 @@ msgstr "(C)"
 
 #. TRANSLATORS: The %s placeholder is the web address of the GPL license.
 #: lib/version-etc.c:88
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "License GPLv3+: GNU GPL version 3 or later <%s>.\n"
 "This is free software: you are free to change and redistribute it.\n"
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
-"\n"
-"ライセンス GPLv3+: GNU GPL バージョン 3 あるいはそれ以降のバージョン <http://"
-"gnu.org/licenses/gpl.html>\n"
+"ライセンス GPLv3+: GNU GPL バージョン 3 あるいはそれ以降のバージョン <%s>。\n"
 "このソフトウェアはフリーソフトウェアです。自由に変更、再配布ができます。\n"
 "法律が許すかぎり、全くの無保証です。\n"
 "\n"
@@ -341,11 +338,11 @@ msgstr ""
 #. "Report translation bugs to <...>\n" with the address for translation
 #. bugs (typically your translation team's web or email address).
 #: lib/version-etc.c:249
-#, fuzzy, c-format
+#, c-format
 msgid "Report bugs to: %s\n"
 msgstr ""
-"\n"
 "バグレポートは %s へ。\n"
+"翻訳については translation-team-ja@lists.sourceforge.net へ。\n"
 
 #: lib/version-etc.c:251
 #, c-format
@@ -358,40 +355,25 @@ msgid "%s home page: <%s>\n"
 msgstr "%s ホームページ: <%s>\n"
 
 #: lib/version-etc.c:260
-#, fuzzy, c-format
+#, c-format
 msgid "General help using GNU software: <%s>\n"
-msgstr "GNU ソフトウェアの一般的なヘルプは: <http://www.gnu.org/gethelp/>\n"
+msgstr "GNU ソフトウェアの一般的なヘルプは: <%s>\n"
 
 #: lib/xalloc-die.c:34
 msgid "memory exhausted"
 msgstr "メモリ不足"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "不正な %s%s の引数 '%s' です"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "不正な接尾辞が %s%s の引数 `%s' にあります"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s の引数 `%s' は大きすぎます"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "ディスクイメージ"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "%s をオープン中にエラー: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -399,47 +381,47 @@ msgstr ""
 "%s を読み書き可能な状態にオープンできません(%s)。%s は読み込みのみ可能な状態"
 "でオープンされました。"
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s: %s から読み込み中のシークでエラーが発生しました。"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s: %s から読み込み中にエラーが発生しました。"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "読み込みのみが可能なようにオープンされているので、%sに書きこめません。"
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s: %s に書きこみ中のシークでエラーが発生しました。"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s: %s に書きこみ中にエラーが発生しました。"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "より詳しく知るには `%s --help' を使ってみてください。\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "使い方: %s [オプション] [デバイス]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -455,7 +437,7 @@ msgstr ""
 "  -h, --help       このヘルプを表示して終了\n"
 "  -v, --version    バージョン情報を表示して終了\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -463,7 +445,7 @@ msgstr ""
 "\n"
 "デバイスの指定がない場合は、全パーティションを調べます。\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -481,42 +463,7 @@ msgstr "%s を開けません。"
 msgid "Unable to probe store."
 msgstr "デバイスのプローブに失敗しました。"
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"カーネルはパーティションテーブルの再読み込みができませんでしたので、変更を加"
-"えたパーティションを mount する前に再起動する必要があります。また、再起動する"
-"前にブートローダを再インストールする必要があります(このことは、変更したパー"
-"ティションの mount が必要となるかもしれません)。でもそれらを両方同時にはでき"
-"ません! レスキューディスクを使ってブートして、ブートローダをいれなおしてくだ"
-"さい。より詳しいことは Parted のユーザドキュメントの4章を読んでください。"
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"カーネルは %s のパーティションテーブルの内容を再読み込みできません(%s)。これ"
-"は Hurd はあなたが行った変更を関知していないことを意味しています。%s に対して"
-"何か操作をする前にコンピュータを再起動するべきです。"
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"再起動する前にブートローダをいれなおすべきです。詳細は Parted ユーザドキュメ"
-"ントの4章を読んでください。"
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s: %s を同期中にエラーが発生しました。"
@@ -606,9 +553,8 @@ msgid "Generic SD/MMC Storage Card"
 msgstr "SD/MMC カード"
 
 #: libparted/arch/linux.c:1422
-#, fuzzy
 msgid "NVMe Device"
-msgstr "新しいデバイス?"
+msgstr "NVMeデバイス"
 
 #: libparted/arch/linux.c:1483
 msgid "DAC960 RAID controller"
@@ -636,7 +582,7 @@ msgstr "Compaq Smart Array"
 
 #: libparted/arch/linux.c:1520
 msgid "NVDIMM Device"
-msgstr ""
+msgstr "NVDIMMデバイス"
 
 #: libparted/arch/linux.c:1525
 msgid "ATARAID Controller"
@@ -677,7 +623,7 @@ msgstr "Linux Software RAID Array"
 
 #: libparted/arch/linux.c:1588
 msgid "RAM Drive"
-msgstr ""
+msgstr "RAMドライブ"
 
 #: libparted/arch/linux.c:1595
 msgid "ped_device_new()  Unsupported device type"
@@ -835,15 +781,15 @@ msgstr "メタ情報"
 msgid "free"
 msgstr "空き"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "拡張"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "論理"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "プライマリ"
 
@@ -919,64 +865,72 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr "chromeos_kernel"
+
+#: libparted/disk.c:2413
+msgid "bls_boot"
+msgstr "bls_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "%d は不明なパーティションフラグです。"
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "通知"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "警告"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "エラー"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "致命的エラー"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "バグ"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "未実装"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "修正"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "はい(Y)"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "いいえ(N)"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "やりなおし(R)"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "無視(I)"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "取消(C)"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -989,64 +943,67 @@ msgstr ""
 "あります。%s に最低限どのバージョンか (%s) と以下のメッセージを含めてメールで"
 "送ってください: "
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "AIX ディスクラベルの読み込みは未実装です。"
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "AIX ディスクラベルの書き込みは未実装です。"
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr "AIX ディスクラベルへのパーティションの追加は未実装です。"
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr "AIX ディスクラベルでのパーティションの複製は未実装です。"
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
 msgstr "AIX ディスクラベルのパーティションのシステムタイプの設定は未実装です。"
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr "AIX ディスクラベルのフラグの設定は未実装です。"
 
 #: libparted/labels/atari.c:273
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Can't use Atari partition tables on disks with a sector size not equal to %d "
 "bytes."
 msgstr ""
-"Parted は、セクタサイズが %d バイトでないディスクでは HFS ファイルシステムを"
-"使えません。"
+"セクタサイズが %d バイトでないディスクでは Atari パーティションテーブルは使え"
+"ません。"
 
 #: libparted/labels/atari.c:285
 #, c-format
 msgid "Can't use Atari partition tables on disks with more than %d sectors."
 msgstr ""
+"セクタ数が %d より多いディスクでは Atari パーティションテーブルは使えません。"
 
 #: libparted/labels/atari.c:398
 msgid ""
 "Too many Atari partitions detected.  Maybe there is a loop in the XGM linked "
 "list.  Aborting."
 msgstr ""
+"多すぎる Atari パーティションが検出されました。もしかしたら XGM リンクリスト"
+"にループがあるのかもしれません。中止します。"
 
 #: libparted/labels/atari.c:596
 #, c-format
 msgid "No data partition found in the ARS at sector %lli."
-msgstr ""
+msgstr "データパーティションがセクタ %lli にある ARS に見つかりませんでした。"
 
 #: libparted/labels/atari.c:617
 #, c-format
 msgid ""
 "The entry of the next logical ARS is not of type XGM in ARS at sector %lli."
-msgstr ""
+msgstr "セクタ %lli にある ARS の中の次の論理ARSエントリがXGMではありません。"
 
 #: libparted/labels/atari.c:648
 #, c-format
@@ -1054,31 +1011,35 @@ msgid ""
 "There doesn't seem to be an Atari partition table on this disk (%s), or it "
 "is corrupted."
 msgstr ""
+"このディスク (%s) に Atari パーティションテーブルがないか破損しています。"
 
 #: libparted/labels/atari.c:878
 #, c-format
 msgid "No room at sector %lli to store ARS of logical partition %d."
 msgstr ""
+"セクタ %lli に論理パーティション %d の ARS を保存する領域がありません。"
 
 #: libparted/labels/atari.c:885
 #, c-format
 msgid "No room at sector %lli to store ARS."
-msgstr ""
+msgstr "セクタ %lli に ARS を保存する領域がありません。"
 
 #: libparted/labels/atari.c:962
 msgid ""
 "The sector count that is stored in the partition table does not correspond "
 "to the size of your device.  Do you want to fix the partition table?"
 msgstr ""
+"パーティションテーブルに保存されているセクタ数がデバイスのサイズに合致しませ"
+"ん。パーティションテーブルを修正しますか?"
 
 #: libparted/labels/atari.c:1003
 #, c-format
 msgid "No room at sector %lli to store BSL."
-msgstr ""
+msgstr "セクタ %lli に BSL を保存する領域がありません。"
 
 #: libparted/labels/atari.c:1111
 msgid "There were remaining partitions after filling the main AHDI table."
-msgstr ""
+msgstr "メイン AHDI テーブルを埋めた後に残っているパーティションがあります。"
 
 #: libparted/labels/atari.c:1130
 msgid ""
@@ -1086,14 +1047,18 @@ msgid ""
 "not empty so more partitions of unknown size and position will be detected "
 "by ICD compatible software.  Do you want to invalidate the ICD table?"
 msgstr ""
+"メイン AHDI テーブルは全てのパーティションで埋まりましたが ICD テーブルが空で"
+"ないため、余分に不明なサイズと位置のパーティションが ICD 互換ソフトウェアに"
+"よって検出されます。ICD テーブルを無効にしますか?"
 
 #: libparted/labels/atari.c:1164
 msgid "ICD entries can't contain extended or logical partitions."
 msgstr ""
+"ICD エントリは拡張パーティションや論理パーティションを含むことができません。"
 
 #: libparted/labels/atari.c:1186
 msgid "There were remaining partitions after filling the tables."
-msgstr ""
+msgstr "テーブルを埋めてもパーティションに余りがあります。"
 
 #: libparted/labels/atari.c:1226
 #, c-format
@@ -1101,12 +1066,14 @@ msgid ""
 "You can't use an extended XGM partition in ICD mode (more than %d primary "
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
+"拡張 XGM パーティションは ICD モードでは使えません (XGM が最初のパーティショ"
+"ンの場合は2つとして数えられ、%d 以上のプライマリパーティションとなります)。"
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "このパーティションで全ての制約を満たせません。"
@@ -1117,51 +1084,55 @@ msgid ""
 "You can't use more than %d primary partitions (ICD mode) if you use an "
 "extended XGM partition.  If XGM is the first partition it counts for two."
 msgstr ""
+"拡張 XGM パーティションを使う場合、%d 個以上のプライマリパーティションを ICD "
+"モードで使うことができません。XGM が最初のパーティションの場合はそれは2つとし"
+"て数えられます。"
 
 #: libparted/labels/atari.c:1823 libparted/labels/rdb.c:1082
 msgid "Unable to allocate a partition number."
 msgstr "パーティション番号を割り当てられません。"
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "BSDディスクラベルのスロットを確保できません。"
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
-msgstr ""
+msgstr "DASD-LDL パーティションテーブルのデバイスは変更できません。\n"
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "dasd ディスクラベルのスロットを確保できません。"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr ""
 "%s のパーティションテーブルが不正です。%x というシグネチャはあやまりです。"
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr ""
 "パーティションテーブルが不正です。再帰的なパーティションが %s にあります。"
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "MSDOS ディスクラベルで拡張パーティションは隠せません。"
 
-#: libparted/labels/dos.c:1572
-#, fuzzy
+#: libparted/labels/dos.c:1569
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
-msgstr "MSDOS ディスクラベルで拡張パーティションは隠せません。"
+msgstr ""
+"MSDOS ディスクラベルで拡張パーティションはリカバリパーティションにできませ"
+"ん。"
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "ダイナミックディスクに使われているパーティションは Parted ではリサイズできま"
 "せん。"
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "パーティションを追加できません。"
 
@@ -1259,7 +1230,7 @@ msgstr "指定されたデバイスは有効な DASD デバイスではありま
 
 #: libparted/labels/fdasd.c:188
 msgid "VOLSER not found on device"
-msgstr ""
+msgstr "VOLSER がデバイスに見つかりませんでした"
 
 #: libparted/labels/fdasd.c:191 libparted/labels/vtoc.c:179
 msgid "Fatal error"
@@ -1290,9 +1261,8 @@ msgstr ""
 "しません!"
 
 #: libparted/labels/fdasd.c:1020
-#, fuzzy
 msgid "Could not retrieve disk size."
-msgstr "ディスク情報が取得できません。"
+msgstr "ディスクサイズが取得できません。"
 
 #: libparted/labels/fdasd.c:1029
 msgid "Could not retrieve disk geometry information."
@@ -1304,13 +1274,13 @@ msgstr "ブロックサイズ情報が取得できません。"
 
 #: libparted/labels/fdasd.c:1045
 msgid "Disk geometry does not match a DASD device of type 3390."
-msgstr ""
+msgstr "Disk ジオメトリがタイプ 3390 の DASDデバイスと一致しません。"
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "デバイスは GPT を使うには小さすぎます"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1319,7 +1289,7 @@ msgstr ""
 "GPT パーティションテーブルのフォーマットのバージョンが %x で parted の理解で"
 "きるものより新しいです。報告してください。"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1330,7 +1300,7 @@ msgstr ""
 "可能にするか(%llu ブロック増えます)、このままで続行することができますが、どう"
 "しますか?"
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1338,7 +1308,7 @@ msgstr ""
 "あるべき GPT テーブルのバックアップがディスクの最後にありません。バックアップ"
 "を最後に持ってきて(古いバックアップを削除して)修復しますか?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1346,7 +1316,7 @@ msgstr ""
 "プライマリ GPT テーブルとバックアップの両方が壊れています。新たにテーブルを作"
 "りなおして、Parted の修復機能を用いてパーティションの修復を試みます。"
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1354,7 +1324,7 @@ msgstr ""
 "バックアップ GPT テーブルは壊れていますが、プライマリは問題ないようなので、そ"
 "ちらを使います。"
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1362,11 +1332,11 @@ msgstr ""
 "プライマリ GPT テーブルは壊れていますが、バックアップは問題ないようなので、そ"
 "ちらを使います。"
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "プライマリパーティションテーブルの CRC が一致しません"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "パーティション名を変換できません"
 
@@ -1399,18 +1369,14 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "データ領域がパーティションの開始位置から始まってません。"
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "ブート領域がパーティションの開始位置から始まってません。"
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "パーティションのブート領域が、パーティション全体を占有してません。"
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "パーティションのデータ領域が、パーティション全体を占有してません。"
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
@@ -1418,7 +1384,7 @@ msgstr ""
 "デバイスディスクリプタに書いてあるブロックサイズはおかしいです。%d バイトは "
 "512 で割り切れません。"
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1427,11 +1393,11 @@ msgstr ""
 "ドライバは物理ブロックサイズが %d バイトであると言っていますが、Linux は %d "
 "バイトだと言っています。"
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "正しいパーティションマップが見つかりません。"
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1440,11 +1406,11 @@ msgstr ""
 "パーティションマップのエントリのサイズが一致しません。エントリ 1 によれば %d "
 "ですが、エントリ %d によれば %d です。"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "おかしいです。パーティションマップエントリが2つあります。"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1452,16 +1418,16 @@ msgstr ""
 "root に使われているパーティションや swap パーティションの名前を変更すると "
 "Linux がそれらをそうと認識できなくなります。"
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "パーティションを追加できません。パーティションマップが小さすぎます。"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "%s のパーティションテーブルが不正です。"
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1470,7 +1436,7 @@ msgstr ""
 "パーティション %d はシリンダ境界上にありません。これはまだサポートされていま"
 "せん。"
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "パーティションを追加できません。"
 
@@ -1646,39 +1612,39 @@ msgstr "VTOC FMT7 DSCB が書けません。"
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "VTOC FMT9 DSCB が書けません。"
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "メモリ不足です。"
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "特別な単位である 'COMPACT' の単位あたりのサイズを得られません。"
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "\"%s\" には位置について誤りがあります。"
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "最大ヘッド値は %d です。"
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "最大セクタ値は %d です。"
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "%s は、デバイス %s の外です。"
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "不正な値です。"
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "1未満の値の変わりに、より小さなユニットを使ってください"
 
@@ -1688,18 +1654,18 @@ msgstr "1未満の値の変わりに、より小さなユニットを使って
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : パーティションブロックの確保に失敗しました。\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : ブロックの確保に失敗しました。\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : ブートブロック %llu が読めません\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1725,22 +1691,22 @@ msgstr "%s : ブロック %llu (タイプ %s) のチェックサムが不正で
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : ブロック %d に書きこめません\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s : disk_specific rdb ブロックが確保できません\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s : rdb ブロックが見つかりません。起こるはずのないことです。\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : パーティションブロック %llu が読めません\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1840,7 +1806,7 @@ msgstr ""
 "ムの CHS geometry はそのままになります。修正(F)を選べば、ファイルシステムの "
 "CHS geometry は、パーティションの CHS geometry と合うよう修正されます。"
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1865,14 +1831,14 @@ msgid ""
 "Cluster start delta = %d, which is not a multiple of the cluster size %d."
 msgstr "クラスタ開始デルタが %d で、クラスタサイズ %d の倍数ではありません。"
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "%s のディレクトリエントリは不正です: 最初のクラスタがファイルの終端を示してい"
 "ます。"
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1880,7 +1846,7 @@ msgstr ""
 "不正な FAT: %s のチェインが終端していません。dosfsck や scandisk を走らせるべ"
 "きです。"
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1889,7 +1855,7 @@ msgstr ""
 "不正な FAT: クラスタ %d は %s のチェインにありますが、ファイルシステムの外に"
 "あります。dosfsck や scandisk を走らせるべきです。"
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1898,27 +1864,18 @@ msgstr ""
 "不正な FAT: クラスタ %d は %s でクロスリンクしています。dosfsck や scandisk "
 "を走らせるべきです。"
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s は %dk ですが、%d クラスタ (%dk 分) あります。"
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"ファイル %s はシステムファイルです。このファイルを移動させると動かなくなるプ"
-"ログラムがあるかもしれません。"
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr ""
 "パーティションがファイルシステム %s に対して大きすぎ、あるいは小さすぎます。"
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1927,11 +1884,11 @@ msgstr ""
 "ンセルして scandisk をこのファイルシステムに対して実行して、もう一度実行して"
 "ください。"
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "この FAT タイプに対する可能な設定がありません。"
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1942,7 +1899,7 @@ msgstr ""
 "タサイズは %dk (想定 %dk)で、クラスタ数は %d (想定 %d)、FAT のサイズは %d セ"
 "クタ (想定 %d)です。"
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
@@ -1950,7 +1907,7 @@ msgstr ""
 "ファイルシステムの情報によれば空き容量は %d クラスタで、 %d クラスタではあり"
 "ません。"
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1958,15 +1915,15 @@ msgstr ""
 "全てのファイルを置くだけの空きがルートディレクトリにありません。キャンセルす"
 "るか、ファイルを失ってもいい場合は無視してください。"
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "ルートディレクトリへの書きこみ中にエラーが発生しました。"
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "ファイルシステムを FAT16 のままにしておくなら、問題ありません。"
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1977,13 +1934,13 @@ msgstr ""
 "場合は、 Parted のマニュアルかディトリビューションのマニュアルを参照してくだ"
 "さい。"
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
 msgstr "ファイルシステムを FAT32 のままにすれば、問題は発生しません。"
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1997,40 +1954,40 @@ msgstr ""
 "さい。また、FAT32 に変換すると、そのファイルシステムは MS DOS、MS Windows "
 "95a、MS Windows NT で読めなくなります。"
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "FAT32 にしたいですか?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "ファイルシステムをこのサイズに変換するには FAT16 にしなければなりません。"
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "ファイルシステムをこのサイズに変換するには FAT32 にしなければなりません。"
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted ではこのパーティションをこのサイズにリサイズできません。現在開発中"
 "です。"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2039,41 +1996,41 @@ msgstr ""
 "FAT %d メディア %x はブートセクタのメディア %x と一致しません。scandisk を走"
 "らせるべきです。"
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: クラスタ %ld はファイルシステムの外にあります"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: クラスタ %ld はファイルシステムの外にあります"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: 空きクラスタがありません"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "ファイルシステムが見つけられません。"
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "ファイルシステム %s のリサイズはサポートしていません"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "ファイルシステムがボリュームより大きいです!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "ファイルシステムにエラーがあります。"
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "バッドブロックが読みだせません。"
 
@@ -2087,7 +2044,7 @@ msgstr ""
 "のがあります。ファイルシステムのチェックを実行すべきです!"
 
 #: libparted/fs/r/hfs/cache.c:214
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Trying to move an extent from block 0x%X to block 0x%X, but another one "
 "already exists at this position.  This should not happen!"
@@ -2135,61 +2092,61 @@ msgstr "CNID %2$X の HFS+ ファイルに含まれるセクタ %1$lli が見つ
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "CNID %X の HFS+ ファイルを EOF を越えて書きこもうとしました。"
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "残念ながら、まだ HFS はそのようにリサイズすることはできません。"
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "縮小中"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "データの再配置に失敗しました。"
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr "データを再配置してもボリュームの最後にデータが残りました。"
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "HFS マスターディレクトリブロックを書込中"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "オープン中に正しい HFS[+X] のシグネチャが見つかりませんでした。"
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "Version %d の HFS+ はサポートしていません。"
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "Version %d の HFSX はサポートしていません。"
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "データを再配置してもボリュームの最後にデータが残りました。"
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "allocation ファイルの書込中にエラーが発生しました。"
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "allocation ファイルの互換性部分に書込中にエラーが発生しました。"
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "HFS+ ボリュームヘッダの書込中"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "必須バッドブロックファイルを探している時にエラーが発生しました。"
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2197,27 +2154,27 @@ msgstr ""
 "HFS ラッパーにエラーがあるようです:バッドブロックファイルに埋めこみ HFS+ ボ"
 "リュームが含まれていません。"
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "残念ながら、まだ HFS+ はそのようにリサイズすることはできません。"
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "埋めこみ HFS+ ボリュームを縮小中"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "HFS+ ボリュームのリサイズに失敗しました。"
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "HFS ラッパーを縮小中"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "HFS ラッパーの更新に失敗しました。"
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2239,7 +2196,6 @@ msgstr ""
 "りました。"
 
 #: libparted/fs/r/hfs/journal.c:260
-#, fuzzy
 msgid ""
 "Journal stored outside of the volume are not supported.  Try to deactivate "
 "the journal and run Parted again."
@@ -2297,7 +2253,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "extent は再配置されませんでした。"
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2305,18 +2261,18 @@ msgstr ""
 "あるべきではないところから extent への参照があります。ファイルシステムの"
 "チェックを実行するべきです!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr ""
 "この HFS ボリュームにはカタログファイルがありません。滅多にないことです!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "この HFS ボリュームには extent オーバーフローファイルがありません。滅多にあり"
 "えないことです!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2324,54 +2280,54 @@ msgstr ""
 "extent オーバーフローファイルは、その extent 自身を含んではいけません!ファイ"
 "ルシステムのチェックを実行するべきです。"
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "ファイルシステムをメモリにキャッシュできません。"
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "バッドブロックリストを読みこめませんでした。"
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "extent の再配置中にエラーが発生しました。"
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr ""
 "この HFS+ ボリュームにはカタログファイルがありません。滅多にないことです!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "この HFS+ ボリュームには extent オーバーフローファイルがありません。滅多にあ"
 "りえないことです!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "このヘルプを表示する"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "全ブロックデバイスのパーティションレイアウトを表示"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "機械が解釈可能な出力をする"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "ユーザに介入させない"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "バージョンを表示する"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "新規パーティションのアライメント"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2380,32 +2336,32 @@ msgstr ""
 "ディスクラベルでは、基本パーティション番号は 1 から 4 までで、論理パーティ"
 "ションは 5 以降となります。\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "ラベルの種類は次のうちから選びます: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "フラグは次のうちから選びます: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "UNIT は次のうちから選びます: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "望ましいアライメント: minimum(最小) か optimal(最適)"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr ""
 "パーティションの種類は次のうちのどれかとなります: プライマリ、論理、拡張\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "ファイルシステムの種類は次のうちから選びます: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2414,7 +2370,7 @@ msgstr ""
 "START と END は、ディスク上の位置を 4GB や 10% などで表わします。負の値はディ"
 "スクの終わりからの値になります。例えば、-1s は、最後のセクタを指します。\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2422,19 +2378,19 @@ msgstr ""
 "END は、ディスク上の位置を 4GB や 10% などで表わします。負の値はディスクの終"
 "わりからの値になります。例えば、-1s は、最後のセクタを指します。\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "状態は on か off のどちらか\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "デバイスはたいてい /dev/hda か /dev/sda です。\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "名前の部分は任意の単語\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2454,22 +2410,22 @@ msgstr ""
 "いかなる保証も行ないません。詳細についてはGNU 一般公有使用許諾書をお読みくだ"
 "さい。\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(残り時間 %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "パーティション %s は使用中です。それでも実行しますか?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "%s のパーティションが使用中です。"
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2478,31 +2434,31 @@ msgstr ""
 "いま存在している %s のディスクラベルは破壊され、このディスクの全データが失わ"
 "れます。続行しますか?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "新しいディスクラベル?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "パーティションの種類?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "パーティションの名前?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "ファイルシステムの種類?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "開始?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "終了?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2511,7 +2467,7 @@ msgstr ""
 "%s から %s (%llu から %llu セクタ)までのパーティションを指定されました。\n"
 "可能な中で最も近いものは %s から %s (%llu から %llu セクタ)になります。%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2519,95 +2475,95 @@ msgstr ""
 "\n"
 "それでもかまいませんか?"
 
-#: parted/parted.c:798
-#, fuzzy, c-format
+#: parted/parted.c:799
+#, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 "操作の結果できるパーティションはアライメントが正しくないためにパフォーマンス"
-"がでません"
+"がでません: %s"
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
-msgstr ""
+msgstr "不明 (malloc 失敗)"
 
-#: parted/parted.c:876
-#, fuzzy, c-format
+#: parted/parted.c:877
+#, c-format
 msgid "%s disk labels do not support partition name."
-msgstr "%s のディスクラベルは拡張パーティションをサポートしていません。"
+msgstr "%s のディスクラベルはパーティション名をサポートしていません。"
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "パーティション番号?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr "BIOS シリンダ、ヘッド、セクタ geometry: %d,%d,%d.  1シリンダは %s。\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "モデル: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "ディスク %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "セクタサイズ (論理/物理): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "パーティションテーブル: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "ディスクフラグ: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "番号"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "開始"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "終了"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "サイズ"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "タイプ"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "ファイルシステム"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "名前"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "フラグ"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "空き容量"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2616,57 +2572,56 @@ msgstr ""
 "%s %s パーティションが %s → %s の場所に発見されました。このパーティションを"
 "パーティションテーブルに追加しますか?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "ファイルシステムを探しています"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "resize コマンドは parted 3.0 で削除されました"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "パーティションを縮小するとデータを失うかもしれませんが、それでも実行します"
 "か?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "新しいデバイス?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "アライメントタイプ(min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d アライメント済\n"
 
-#: parted/parted.c:1721
-#, fuzzy, c-format
+#: parted/parted.c:1737
+#, c-format
 msgid "%d not aligned: %s\n"
-msgstr "%d 未アライメント\n"
+msgstr "%d 未アライメント: %s\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "反転するフラグ?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "新しい状態?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "単位は?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
-#, fuzzy
+#: parted/parted.c:1988
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
@@ -2674,43 +2629,43 @@ msgstr ""
 "align-check TYPE N            パーティション N のアライメント(TYPE: min|opt)"
 "をチェックする"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
 msgstr ""
 "help [コマンド]               ヘルプ表示。コマンド指定でそのヘルプを表示"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
 msgstr ""
 "mklabel,mktable ラベルの種類  新しいラベル(パーティションテーブル)を作る"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr ""
-"mkpart パーティションの種類 [ファイルシステムの種類] 開始 終了\n"
-"            パーティションを作る"
+"このファイルシステムの論理セクタサイズは %d です.  セクタサイズが 512 バイト"
+"以外では GNU Parted はうまく動かないことが知られています。"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2718,19 +2673,19 @@ msgstr ""
 "mkpart はパーティションだけ作り、新しいファイルシステムは作りません。ファイル"
 "システムの種類を指定すると、正しいIDが設定されます。\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr "name NUMBER 名前              パーティションに名前をつける"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2742,7 +2697,7 @@ msgstr ""
 "             見つかった全てのパーティション、あるいは特定のパー"
 "ティションについて表示する"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2750,11 +2705,11 @@ msgstr ""
 "引数をつけない場合、'print' コマンドは、全パーティションテーブルを表示しま"
 "す。次の引数をつけることが可能です。\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : 全てのアクティブなブロックデバイスを表示\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2762,31 +2717,31 @@ msgstr ""
 "  free      : カレントブロックデバイスのパーティションに含まれていない空き領"
 "域情報を表示\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all : アクティブな全ブロックデバイスのパーティションテーブルを表示\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr "  NUMBER    : 指定したパーティションについてより詳しい情報を表示\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                          プログラムを終了する"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2794,127 +2749,135 @@ msgstr ""
 "rescue 開始 終了              開始、終了で指定した範囲付近にあるパーティショ"
 "ンを復活させる"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "resize コマンドは parted 3.0 で削除されました\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "resizepart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr ""
 "resizepart NUMBER END         パーティション NUMBER を END にリサイズする"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm NUMBER                     パーティションを削除する"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select デバイス               操作するデバイスを選択"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disk_set"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr "disk_set FLAG STATE           選択したデバイスの FLAG を変更"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
 msgstr "disk_toggle [FLAG]            選択したデバイスの FLAG の状態をトグル"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr "set NUMBER フラグ 状態        ファイルシステムのフラグと状態を設定する"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
 msgstr "toggle [NUMBER [FLAG]]        パーティションのフラグの状態を反転する"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr "unit UNIT                     デフォルトの単位を UNIT にする"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
 msgstr ""
 "version                       GNU Parted のバージョンと著作権情報を表示"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
 msgstr ""
 "version は、実行中の GNU Parted のバージョンと著作権情報を表示します。\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 "使い方: %s [-hlmsv] [-a<アライン>] [デバイス [コマンド [パラメータ]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "デバイスがみつかりません。"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "警告: 管理者権限がありません。パーミッションに注意してください。\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"再起動する前にブートローダをいれなおすべきです。詳細は Parted ユーザドキュメ"
+"ントの4章を読んでください。"
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "必要であれば /etc/fstab を更新するのを忘れないようにしてください。\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 "GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2925,7 +2888,7 @@ msgstr ""
 "デバイスに対してパラメータに従ってコマンドを実行します。もしコマンドが指定さ"
 "れなければ、対話モードに入ります。\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2989,7 +2952,7 @@ msgstr ""
 "その他重要と思う情報を記述してください。\n"
 "\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -2997,7 +2960,7 @@ msgstr ""
 "\n"
 "コマンド履歴:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -3005,7 +2968,7 @@ msgstr ""
 "\n"
 "エラー: SEGV_MAPERR (アドレスがオブジェクトに変換されませんでした)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3013,7 +2976,7 @@ msgstr ""
 "\n"
 "エラー: SEGV_ACCERR (マップされたオブジェクトのパーミッションが不正です)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3021,7 +2984,7 @@ msgstr ""
 "\n"
 "エラー: SIGSEGV シグナルを受けとりました。\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3029,7 +2992,7 @@ msgstr ""
 "\n"
 "エラー: FPE_INTDIV (整数: 0による除算)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3037,7 +3000,7 @@ msgstr ""
 "\n"
 "エラー: FPE_INTOVF (整数: オーバーフロー)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3045,7 +3008,7 @@ msgstr ""
 "\n"
 "エラー: FPE_FLTDIV (浮動小数点: 0による除算)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3053,7 +3016,7 @@ msgstr ""
 "\n"
 "エラー: FPE_FLTOVF (浮動小数点: オーバーフロー)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3061,7 +3024,7 @@ msgstr ""
 "\n"
 "エラー: FPE_FLTUND (浮動小数点: アンダーフロー)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3069,7 +3032,7 @@ msgstr ""
 "\n"
 "エラー: FPE_FLTRES (浮動小数点: 正しくない結果)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3078,7 +3041,7 @@ msgstr ""
 "\n"
 "エラー: FPE_FLTINV (浮動小数点: 不正な操作)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3086,7 +3049,7 @@ msgstr ""
 "\n"
 "エラー: FPE_FLTSUB (浮動小数点: 添字が範囲を越えました)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3094,7 +3057,7 @@ msgstr ""
 "\n"
 "エラー: SIGFPE シグナルを受けとりました。"
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3102,7 +3065,7 @@ msgstr ""
 "\n"
 "エラー: ILL_ILLOPC (不正なオペコード)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3110,7 +3073,7 @@ msgstr ""
 "\n"
 "エラー: ILL_ILLOPN (不正なオペランド)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3118,7 +3081,7 @@ msgstr ""
 "\n"
 "エラー: ILL_ILLADR (不正なアドレスモード)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3126,7 +3089,7 @@ msgstr ""
 "\n"
 "エラー: ILL_ILLTRP (不正なトラップ)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3134,7 +3097,7 @@ msgstr ""
 "\n"
 "エラー: ILL_PRVOPC (特権が必要なオペコード)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3142,7 +3105,7 @@ msgstr ""
 "\n"
 "エラー: ILL_PRVREG (特権が必要なレジスタ)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3150,7 +3113,7 @@ msgstr ""
 "\n"
 "エラー: ILL_COPROC (コプロセッサエラー)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3158,7 +3121,7 @@ msgstr ""
 "\n"
 "エラー: ILL_BADSTK (インターナルスタックエラー)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3166,69 +3129,69 @@ msgstr ""
 "\n"
 "エラー: SIGILL シグナルを受けとりました。"
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "不正なトークンです: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "パーティション番号を入力してください。"
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "パーティションがありません。"
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "ファイルシステムの種類を入力してください。"
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "ファイルシステムの種類 \"%s\" は不明です。"
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "ディスクラベルの種類を入力してください。"
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
-msgstr ""
+msgstr "フラグがサポートされていません"
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "パーティションを追加できません。"
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "パーティションの種類を入力してください。"
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "on"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "off"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "最適(optimal)"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "最小(minimal)"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "オプション"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "コマンド:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3237,33 +3200,11 @@ msgstr ""
 "\n"
 "バグレポートは %s へ。\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "%s を使用\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "このコマンドは対話操作モードでなければ意味がありません。\n"
-
-#~ msgid "%s: option '--%s' doesn't allow an argument\n"
-#~ msgstr "%s: オプション '--%s' は引数を受けとりません\n"
-
-#~ msgid "%s: unrecognized option '--%s'\n"
-#~ msgstr "%s: '--%s' は認識できないオプションです\n"
-
-#~ msgid "%s: option '-W %s' doesn't allow an argument\n"
-#~ msgstr "%s: オプション '-W %s' は引数を受けとりません\n"
-
-#~ msgid "%s: option '-W %s' requires an argument\n"
-#~ msgstr "%s: オプション '-W %s' には引数が必要です\n"
-
-#~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
-#~ msgstr "%s ホームページ: <http://www.gnu.org/software/%s/>\n"
-
-#~ msgid ""
-#~ "This file system has a logical sector size of %d.  GNU Parted is known "
-#~ "not to work properly with sector sizes other than 512 bytes."
-#~ msgstr ""
-#~ "このファイルシステムの論理セクタサイズは %d です.  セクタサイズが 512 バイ"
-#~ "ト以外では GNU Parted はうまく動かないことが知られています。"
index 53372e4f312406306b3aba8fce2dde313cf63323..67592b033651b784f12cbad3519e06f9d86efe35 100644 (file)
Binary files a/po/ko.gmo and b/po/ko.gmo differ
index ed536f32d8a8907872b0ce3d5f4cff92ae7d41d8..6c45dfe6b6270488b3f1d7d83f4a29b5b853c15b 100644 (file)
--- a/po/ko.po
+++ b/po/ko.po
@@ -1,13 +1,13 @@
 # Korean translation for the parted package.
 # This file is distributed under the same license as the parted package.
-# Seong-ho Cho <darkcircle.0426@gmail.com>, 2016.
+# Seong-ho Cho <darkcircle.0426@gmail.com>, 2016, 2021.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: parted 3.1.90\n"
+"Project-Id-Version: parted 3.3.52\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
-"PO-Revision-Date: 2016-03-20 22:41+0900\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
+"PO-Revision-Date: 2021-01-19 15:31+0900\n"
 "Last-Translator: Seong-ho Cho <darkcircle.0426@gmail.com>\n"
 "Language-Team: Korean <translation-team-ko@googlegroups.com>\n"
 "Language: ko\n"
@@ -15,7 +15,7 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "X-Bugs: Report translation errors to the Language-Team address.\n"
-"X-Generator: Gtranslator 2.91.7\n"
+"X-Generator: Poedit 2.2.1\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
 
 #: lib/argmatch.c:132
@@ -41,29 +41,29 @@ msgid "Unknown system error"
 msgstr "알 수 없는 시스템 오류"
 
 #: lib/getopt.c:278
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' is ambiguous\n"
-msgstr "%s: ‘-W %s’ 옵션은 애매합니다\n"
+msgstr "%s: '%s%s' 옵션은 애매합니다\n"
 
 #: lib/getopt.c:284
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' is ambiguous; possibilities:"
-msgstr "%s: ‘%s’ 옵션은 애매합니다. 대신 쓸 수 있는 옵션은 다음과 같습니다:"
+msgstr "%s: ‘%s%s’ 옵션은 애매합니다. 쓸 수 있는 옵션은 다음과 같습니다:"
 
 #: lib/getopt.c:319
-#, fuzzy, c-format
+#, c-format
 msgid "%s: unrecognized option '%s%s'\n"
-msgstr "%s: 인식할 수 없는 ‘%c%s’ 옵션\n"
+msgstr "%s: 인식할 수 없는 ‘%s%s’ 옵션\n"
 
 #: lib/getopt.c:345
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' doesn't allow an argument\n"
-msgstr "%s: ‘%c%s’ 옵션은 인자를 허용하지 않습니다\n"
+msgstr "%s: ‘%s%s’ 옵션은 인자를 허용하지 않습니다\n"
 
 #: lib/getopt.c:360
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' requires an argument\n"
-msgstr "%s: ‘--%s’ 옵션은 인자가 필요합니다\n"
+msgstr "%s: ‘%s%s’ 옵션은 인자가 필요합니다\n"
 
 #: lib/getopt.c:621
 #, c-format
@@ -96,11 +96,11 @@ msgstr "%s: 옵션에 인자가 필요합니다 -- ‘%c’\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "`"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "‘"
 
@@ -133,9 +133,8 @@ msgid "Invalid back reference"
 msgstr "잘못된 역 참조"
 
 #: lib/regcomp.c:156
-#, fuzzy
 msgid "Unmatched [, [^, [:, [., or [="
-msgstr "일치하지 않는 [ 또는 [^"
+msgstr "일치하지 않는 [ 또는 [^, [:, [., [="
 
 #: lib/regcomp.c:159
 msgid "Unmatched ( or \\("
@@ -216,18 +215,16 @@ msgstr "(C)"
 
 #. TRANSLATORS: The %s placeholder is the web address of the GPL license.
 #: lib/version-etc.c:88
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "License GPLv3+: GNU GPL version 3 or later <%s>.\n"
 "This is free software: you are free to change and redistribute it.\n"
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
-"\n"
-"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl."
-"html>.\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"
+"라이선스 GPLv3+: GNU GPL 버전 3 이상 <%s>.\n"
+"이 프로그램은 자유 소프트웨어입니다: 자유롭게 바꾸거나 재배포할 수 있습니"
+"다.\n"
+"법이 허용하는 한도까지 보증할 수 없습니다.\n"
 
 #. TRANSLATORS: %s denotes an author name.
 #: lib/version-etc.c:105
@@ -342,11 +339,9 @@ msgstr ""
 #. "Report translation bugs to <...>\n" with the address for translation
 #. bugs (typically your translation team's web or email address).
 #: lib/version-etc.c:249
-#, fuzzy, c-format
+#, c-format
 msgid "Report bugs to: %s\n"
-msgstr ""
-"\n"
-"버그 보고 주소: %s\n"
+msgstr "버그 보고 주소: %s\n"
 
 #: lib/version-etc.c:251
 #, c-format
@@ -359,40 +354,25 @@ msgid "%s home page: <%s>\n"
 msgstr "%s 홈페이지: <%s>\n"
 
 #: lib/version-etc.c:260
-#, fuzzy, c-format
+#, c-format
 msgid "General help using GNU software: <%s>\n"
-msgstr "GNU 프로그램 활용 일반 도움말: <http://www.gnu.org/gethelp/>\n"
+msgstr "GNU 프로그램 활용 일반 도움말: <%s>\n"
 
 #: lib/xalloc-die.c:34
 msgid "memory exhausted"
 msgstr "메모리가 부족합니다"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "잘못된 %s%s 인자 ‘%s’"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "%s%s 인자의 '%s'에 잘못된 접미부"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s 인자의 ‘%s’이(가) 너무 큽니다"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "디스크 이미지"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "%s 열기 오류: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -400,47 +380,47 @@ msgstr ""
 "%s을(를) 읽기/쓰기 용도로 열 수 없습니다(%s). %s을(를) 읽기 전용으로 열었습니"
 "다."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%2$s 읽기 용도로 탐색 중 %1$s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%2$s을(를) 읽는 중 %1$s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "읽기 전용으로 열어 %s에 쓸 수 없습니다."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%2$s에 기록 용도로 탐색 중 %1$s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%2$s에 기록 중 %1$s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "자세한 정보는 ‘%s --help’를 입력하십시오.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "사용법: %s [<옵션>] [<장치>]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -456,7 +436,7 @@ msgstr ""
 "  -h, —help       이 도움말을 나타낸 후 빠져나갑니다\n"
 "  -v, —version    버전 정보를 출력한 후 빠져나갑니다\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -464,7 +444,7 @@ msgstr ""
 "\n"
 "<장치> 값이 없으면, 모든 분할 영역을 찾습니다.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -482,40 +462,7 @@ msgstr "%s을(를) 열 수 없습니다."
 msgid "Unable to probe store."
 msgstr "저장 장치를 찾을 수 없습니다."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"분할 영역 테이블을 다시 읽을 수 없습니다. 수정한 분할 영역을 마운트하기 전에 "
-"다시 부팅해야 합니다. 다시 부팅하기 전에 부트 로더를 다시 설치해야 합니다(수"
-"정한 분할 영역을 마운트하려면 필요합니다). 두 가지를 다 처리할 수 없습니다. "
-"복구 디스크로 부팅하고 복구 디스크로 부트 로더를 다시 설치해야 합니다. 자세"
-"한 정보는 Parted 사용자 문서 4장을 살펴보십시오."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"%s의 분할 영역 테이블을 다시 읽을 수 없습니다(%s). Hurd에서 수정 내역을 파악"
-"하지 못합니다. %s(으)로 무언가를 진행하기 전에 컴퓨터를 다시 부팅해야 합니다."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"다시 부팅하기 전 부트 로더를 다시 설치해야 합니다. 자세한 정보는 Parted 사용"
-"자 문서 4장을 살펴보십시오."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s에서 디스크로 %s 동기화를 시도합니다"
@@ -603,9 +550,8 @@ msgid "Generic SD/MMC Storage Card"
 msgstr "일반 SD/MMC 저장소 카드"
 
 #: libparted/arch/linux.c:1422
-#, fuzzy
 msgid "NVMe Device"
-msgstr "새 장치?"
+msgstr "NVMe 장치"
 
 #: libparted/arch/linux.c:1483
 msgid "DAC960 RAID controller"
@@ -633,7 +579,7 @@ msgstr "컴팩 스마트 어레이"
 
 #: libparted/arch/linux.c:1520
 msgid "NVDIMM Device"
-msgstr ""
+msgstr "NVDIMM 장치"
 
 #: libparted/arch/linux.c:1525
 msgid "ATARAID Controller"
@@ -674,7 +620,7 @@ msgstr "리눅스 소프트웨어 RAID 어레이"
 
 #: libparted/arch/linux.c:1588
 msgid "RAM Drive"
-msgstr ""
+msgstr "RAM 드라이브"
 
 #: libparted/arch/linux.c:1595
 msgid "ped_device_new()  Unsupported device type"
@@ -829,15 +775,15 @@ msgstr "metadata"
 msgid "free"
 msgstr "free"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "extended"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logical"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primary"
 
@@ -913,64 +859,72 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr "chromeos_kernel"
+
+#: libparted/disk.c:2413
+msgid "bls_boot"
+msgstr "bls_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "알 수 없는 분할 영역의 %d 플래그입니다."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "정보"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "경고"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "오류"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "실패"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "버그"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "기능 없음"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "고침"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "예"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "아니요"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "확인"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "다시 시도"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "무시"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "취소"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -982,96 +936,100 @@ msgstr ""
 "html Parted 웹사이트에서 버그 제출에 유용한 정보를 찾아보십시오! %s에게 버전"
 "(%s) 정보와 다음 메시지를 넣어 버그 보고서를 메일로 보내주십시오:"
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "AIC 디스크 레이블의 읽기 지원 기능이 없습니다."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "AIX 디스크 레이블 기록 지원 기능이 없습니다."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr "AIX 디스크 레이블의 분할 영역 추가 지원 기능이 없습니다."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr "AIX 디스크 레이블의 분할 영역 복제 지원 기능이 없습니다."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
 msgstr "AIX 디스크 레이블의 시스템 분할 영역 형식 설정 지원 기능이 없습니다."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr "AIX 디스크 레이블의 설정 플래그 지원 기능이 없습니다."
 
 #: libparted/labels/atari.c:273
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Can't use Atari partition tables on disks with a sector size not equal to %d "
 "bytes."
 msgstr ""
-"Parted에서 섹터 크기가 %d 바이트가 아닌 HFS 파일 시스템 디스크를 사용할 수 없"
-"습니다."
+"Parted에서 섹터 크기가 %d 바이트가 아닌 아타리 분할 영역 테이블을 사용할 수 "
+"ì\97\86ì\8aµë\8b\88ë\8b¤."
 
 #: libparted/labels/atari.c:285
 #, c-format
 msgid "Can't use Atari partition tables on disks with more than %d sectors."
-msgstr ""
+msgstr "디스크의 아타리 분할 테이블에서는 %d 섹터 이상 사용할 수 없습니다."
 
 #: libparted/labels/atari.c:398
 msgid ""
 "Too many Atari partitions detected.  Maybe there is a loop in the XGM linked "
 "list.  Aborting."
 msgstr ""
+"아타리 분할 영역이 너무 많습니다.  아마도 XGM 연결 리스트에 루프가 있는 것 같"
+"습니다.  중단함."
 
 #: libparted/labels/atari.c:596
 #, c-format
 msgid "No data partition found in the ARS at sector %lli."
-msgstr ""
+msgstr "%lli번 섹터의 ARS에 데이터 분할 영역이 없습니다."
 
 #: libparted/labels/atari.c:617
 #, c-format
 msgid ""
 "The entry of the next logical ARS is not of type XGM in ARS at sector %lli."
-msgstr ""
+msgstr "다음 논리 ARS 항목은 %lli번 섹터 ARS의 XGM 형식이 아닙니다."
 
 #: libparted/labels/atari.c:648
 #, c-format
 msgid ""
 "There doesn't seem to be an Atari partition table on this disk (%s), or it "
 "is corrupted."
-msgstr ""
+msgstr "이 디스크(%s)에 아타리 분할 영역이 없거나 손상을 입은 것 같습니다."
 
 #: libparted/labels/atari.c:878
 #, c-format
 msgid "No room at sector %lli to store ARS of logical partition %d."
-msgstr ""
+msgstr "%lli번 섹터에 %d번 논리 분할 영역의 ARS를 저장할 공간이 없습니다."
 
 #: libparted/labels/atari.c:885
 #, c-format
 msgid "No room at sector %lli to store ARS."
-msgstr ""
+msgstr "%lli번 섹터에 ARS를 저장할 공간이 없습니다."
 
 #: libparted/labels/atari.c:962
 msgid ""
 "The sector count that is stored in the partition table does not correspond "
 "to the size of your device.  Do you want to fix the partition table?"
 msgstr ""
+"분할 영역에 저장한 섹터 수가 장치 크기에 맞지 않습니다.  분할 테이블을 수정하"
+"시겠습니까?"
 
 #: libparted/labels/atari.c:1003
 #, c-format
 msgid "No room at sector %lli to store BSL."
-msgstr ""
+msgstr "%lli번 섹터에 BSL을 저장할 공간이 없습니다."
 
 #: libparted/labels/atari.c:1111
 msgid "There were remaining partitions after filling the main AHDI table."
-msgstr ""
+msgstr "주 AHDI 케이블을 채운 후 분할 영역이 남아있습니다."
 
 #: libparted/labels/atari.c:1130
 msgid ""
@@ -1079,14 +1037,17 @@ msgid ""
 "not empty so more partitions of unknown size and position will be detected "
 "by ICD compatible software.  Do you want to invalidate the ICD table?"
 msgstr ""
+"주 AHDI 테이블을 모든 분할 영역으로 채웠지만 ICD 테이블이 비어있지 않아 알 "
+"수 없는 크기의 더 많은 분할 영역과 위치를 ICD 호환 프로그램에서 찾을 수 있습"
+"니다.  ICD 테이블을 갱신하시겠습니까?"
 
 #: libparted/labels/atari.c:1164
 msgid "ICD entries can't contain extended or logical partitions."
-msgstr ""
+msgstr "ICD 항목에 확장, 논리 분할 영역을 넣을 수 없습니다."
 
 #: libparted/labels/atari.c:1186
 msgid "There were remaining partitions after filling the tables."
-msgstr ""
+msgstr "테이블을 채운 다음 분할 영역이 남아있습니다."
 
 #: libparted/labels/atari.c:1226
 #, c-format
@@ -1094,12 +1055,14 @@ msgid ""
 "You can't use an extended XGM partition in ICD mode (more than %d primary "
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
+"ICD 모드에서 확장 XGM 분할 영역을 사용할 수 없습니다 (XGM 분할 영역이 처음에 "
+"둘 배치했을 때 주 분할 영역 %d개 이상)."
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "분할 영역의 모든 제약 조건을 만족할 수 없습니다."
@@ -1110,49 +1073,52 @@ msgid ""
 "You can't use more than %d primary partitions (ICD mode) if you use an "
 "extended XGM partition.  If XGM is the first partition it counts for two."
 msgstr ""
+"XGM 확장 분할 영역을 사용할 경우 (ICD 모드에서) 주 분할 영역 %d개 이상 사용"
+"할 수 없습니다.  XGM "
 
 #: libparted/labels/atari.c:1823 libparted/labels/rdb.c:1082
 msgid "Unable to allocate a partition number."
 msgstr "분할 영역 번호를 할당할 수 없습니다."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "BSD 디스크 레이블 슬롯을 할당할 수 없습니다."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
-msgstr ""
+msgstr "DASD-LDL 장치의 분할 테이블을 바꿀 수 없습니다.\n"
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "DASD 디스크 레이블 슬롯을 할당할 수 없습니다."
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "%s에 잘못된 분할 영역 테이블 -- 잘못된 %x 서명."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "잘못된 분할 영역 테이블 - %s에 재귀 분할 영역."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "확장 분할 영역은 MSDOS 디스크 레이블에서 숨길 수 없습니다."
 
-#: libparted/labels/dos.c:1572
-#, fuzzy
+#: libparted/labels/dos.c:1569
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
-msgstr "확장 분할 영역은 MSDOS 디스크 레이블에서 숨길 수 없습니다."
+msgstr ""
+"확장 분할 영역은 MSDOS 디스크 레이블에서 복구 분할 영역으로 지정할 수 없습니"
+"다."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted에서는 윈도우 동적 디스크에서 관리하는 분할 영역의 크기를 조절할 수 없"
 "습니다."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "분할 영역을 더 만들 수 없습니다."
 
@@ -1248,7 +1214,7 @@ msgstr "지정 장치는 유효한 DASD 장치가 아닙니다"
 
 #: libparted/labels/fdasd.c:188
 msgid "VOLSER not found on device"
-msgstr ""
+msgstr "장치에 VOLSER이 없습니다"
 
 #: libparted/labels/fdasd.c:191 libparted/labels/vtoc.c:179
 msgid "Fatal error"
@@ -1278,9 +1244,8 @@ msgstr ""
 "현재 API 버전 ‘%d’이(가) DASD 드라이버 API 버전 ‘%d’와(과) 일치하지 않습니다!"
 
 #: libparted/labels/fdasd.c:1020
-#, fuzzy
 msgid "Could not retrieve disk size."
-msgstr "디스크 정보를 가져올 수 없습니다."
+msgstr "디스크 크기 정보를 가져올 수 없습니다."
 
 #: libparted/labels/fdasd.c:1029
 msgid "Could not retrieve disk geometry information."
@@ -1292,13 +1257,13 @@ msgstr "블록 크기 정보를 가져올 수 없습니다."
 
 #: libparted/labels/fdasd.c:1045
 msgid "Disk geometry does not match a DASD device of type 3390."
-msgstr ""
+msgstr "디스크 구조 정보가 3390 형식의 DASD 장치에 맞지 않습니다."
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "GPT를 설정하기에는 장치 용량이 너무 작습니다"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1307,7 +1272,7 @@ msgstr ""
 "GPT 분할 영역 테이블 형식은 Parted에서 인식할 수 있는 버전보다 높은 %x 버전"
 "을 지니고 있습니다. 보고해주십시오!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1318,7 +1283,7 @@ msgstr ""
 "%llu 블록)을 사용할 수 있도록 GPT를 수정할 수 있습니다. 아니면 현재 설정 상태"
 "로 계속 진행하시겠습니까?"
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1327,7 +1292,7 @@ msgstr ""
 "다. 백업 영역을 마지막으로 이동하(고 이전 백업을 제거하)여 문제를 수정하시겠"
 "습니까?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1335,7 +1300,7 @@ msgstr ""
 "주 GPT 테이블과 백업 GPT 테이블이 깨졌습니다.  분할 영역을 복구하려면 테이블"
 "을 새로 만들고 Parted의 복구 기능을 사용하십시오."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1343,7 +1308,7 @@ msgstr ""
 "백업 GPT 테이블이 깨졌지만, 주 GPT 테이블은 문제가 없으므로 주 GPT 테이블을 "
 "사용하겠습니다."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1351,11 +1316,11 @@ msgstr ""
 "주 GPT 테이블이 깨졌지만, 백업 GPT 테이블은 문제가 없으므로 백업 GPT 테이블"
 "을 사용하겠습니다."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "주 분할 영역 테이블 어레이 CRC가 일치하지 않습니다"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "분할 영역 이름 해석에 실패했습니다."
 
@@ -1388,25 +1353,21 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "데이터 영역이 분할 영역 시작 지점에서 시작하지 않았습니다."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "부트 영역이 분할 영역 시작 지점에서 시작하지 않았습니다."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "분할 영역의 부트 영역이 전체 분할 영역을 차지하지 않았습니다."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "분할 영역의 데이터 영역이 전체 분할 영역을 차지하지 않았습니다."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr ""
 "장치 서술자의 블록 크기가 이상합니다: %d 바이트는 512의 배수가 아닙니다."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1415,11 +1376,11 @@ msgstr ""
 "드라이버 서술자에서 실제 블록 사이즈는 %d 바이트라고 하지만, 리눅스에서는 %d "
 "바이트라고 합니다."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "올바른 분할 영역 맵이 없습니다."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1428,11 +1389,11 @@ msgstr ""
 "분할 영역 맵 항목 크기가 맞지 않습니다! 1번 항목은 %d라고 하지만 %d번 항목은 "
 "%d라고 합니다!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "이상합니다! 분할 영역 맵 항목이 두 개 있습니다!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1440,16 +1401,16 @@ msgstr ""
 "루트 분할 영역 또는 스왑 분할 영역의 이름을 바꾸면, 리눅스에서 해당 분할 영역"
 "을 인식하지 못합니다."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "다른 분할 영역을 추가할 수 없습니다 -- 분할 영역 맵이 너무 작습니다!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "%s에 잘못된 분할 영역 테이블이 있습니다."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1458,7 +1419,7 @@ msgstr ""
 "%d번 분할 영역을 실린더 범위 내로 정렬하지 않았습니다.  여전히 지원하지 않습"
 "니다."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "다른 분할 영역을 추가할 수 없습니다."
 
@@ -1632,39 +1593,39 @@ msgstr "VTOC FMT7 DSCB를 쓸 수 없습니다."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "VTOC FMT9 DSCB를 쓸 수 없습니다."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "메모리가 부족합니다."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "'COMPACT' 특수 단위의 단위 크기를 가져올 수 없습니다."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "\"%s\"은(는) 잘못된 위치 문법입니다."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "최대 헤드 값은 %d입니다."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "최대 섹터 값은 %d입니다."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "%s위치는 %s 장치 이외의 영역에 있습니다."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "잘못된 숫자 값."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "1보다 작은 값을 사용하는 대신 작은 단위를 사용하십시오"
 
@@ -1674,18 +1635,18 @@ msgstr "1보다 작은 값을 사용하는 대신 작은 단위를 사용하십
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : 분할 영역 블록 할당에 실패했습니다\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : 블록 할당에 실패했습니다\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : %llu 부트 블록을 읽을 수 없습니다\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1711,22 +1672,22 @@ msgstr "%1$s : %3$s 형식의 %2$llu 블록에 잘못된 검사합 값이 있습
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : %d 블록을 쓸 수 없습니다\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s : disk_specific rdb 블록 할당에 실패했습니다\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s : rdb 블록을 찾을 수 없어 아무 일도 일어나지 않습니다\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : %llu 분할 영역 블록 읽기에 실패했습니다\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1818,7 +1779,7 @@ msgstr ""
 "일 시스템의 실린더, 헤드, 섹터 크기를 바꾸지 않습니다. 수정을 선택하면, 실린"
 "더, 헤드, 섹터 크기를 분할 영역 테이블의 실린더, 헤드, 섹터 크기에 맞춥니다."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1842,12 +1803,12 @@ msgid ""
 "Cluster start delta = %d, which is not a multiple of the cluster size %d."
 msgstr "클러스터 시작 델타 값 = %d은(는) 클러스터 크기 %d의 배수가 아닙니다."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr "%s의 잘못된 디렉터리 항목: 첫번째 클러스터는 파일 마커의 끝입니다."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1855,7 +1816,7 @@ msgstr ""
 "잘못된 FAT: %s에 끝나지 않은 체인이 있습니다.  dosfsck 또는 scandisk를 실행하"
 "십시오."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1864,7 +1825,7 @@ msgstr ""
 "잘못된 FAT: %d번 클러스터가 %s 체인의 파일 시스템 바깥 영역에 있습니다. "
 "dosfsck 또는 scandisk를 실행하십시오."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1873,26 +1834,17 @@ msgstr ""
 "잘못된 FAT: %d번 클러스터가 %s와(과) 교차 연결 상태입니다. dosfsck 또는 "
 "scandisk를 실행하십시오."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s은(는) %dk지만, 클러스터 %d개가 있습니다(%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"%s 파일은 시스템 파일입니다. 이 파일을 옮기면 일부 프로그램의 동작이 멈춥니"
-"다."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "%s 파일 시스템의 분할 영역이 너무 크거나 작습니다."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1900,11 +1852,11 @@ msgstr ""
 "FAT 정보가 일치하지 않습니다.  무슨 의미인지 모르겠다면, 취소를 선택하고 파"
 "일 시스템에서 scandisk를 실행한 후 다시 돌아오십시오."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "이 FAT 형식에 가능한 설정이 없습니다."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1915,14 +1867,14 @@ msgstr ""
 "하지만) %1$dk 입니다. 또한 클러스트 갯수는(%4$dk여야 하지만) %3$dk개 입니다. "
 "FAT의 섹터 갯수는(%6$d개여야 하지만) %5$d개입니다."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr ""
 "파일 시스템 여분 공간 클러스터 갯수가 %2$d개가 아닌 %1$d개로 나타납니다."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1930,15 +1882,15 @@ msgstr ""
 "모든 파일에 대한 루트 디렉터리 공간이 충분하지 않습니다.  취소를 누르십시오. "
 "또는 무시를 누르시면 파일이 없어집니다."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "루트 디렉터리 기록 중 오류."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "FAT16 파일 시스템으로 두면, 문제가 나타나지 않습니다."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1947,13 +1899,13 @@ msgstr ""
 "FAT16으로 변환하고 MS 윈도우를 설치하면 MS 윈도우 부트로더도 다시 설치해야합"
 "니다.  이렇게 하려면 Parted 설명서(또는 배포판 설명서)를 참고하십시오."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
 msgstr "파일 시스템을 FAT32로 두면, 새 문제가 나타나지 않습니다."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1966,38 +1918,38 @@ msgstr ""
 "고하십시오. 또한 FAT32로 변환하면 MS DOS, MS 윈도우, MS 윈도우 NT에서 파일 시"
 "스템을 인식할 수 없습니다."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "FAT32를 사용하시겠습니까?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr "FAT16으로 변환해야 파일 시스템 크기를 조절할 수 있습니다."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr "FAT32로 변환해야 파일 시스템 크기를 조절할 수 있습니다."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted에서 분할 영역을 이 크기로 조절할 수 없습니다.  이 문제를 처리중입"
 "니다!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2006,41 +1958,41 @@ msgstr ""
 "%d FAT의 %x 미디어는 부트 섹터의 %x 미디어와 일치하지 않습니다. scandisk를 실"
 "행하십시오."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: %ld 클러스터는 파일 시스템 밖에 있습니다"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: %ld 클러스터는 파일 시스템 밖에 있습니다"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: 여분의 클러스터가 없습니다"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "파일 시스템을 발견할 수 없습니다."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "%s 파일 시스템 크기 조절 기능을 지원하지 않습니다"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "파일 시스템은 이 볼륨보다 커야합니다!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "파일 시스템에 오류가 있습니다."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "불량 블록을 읽을 수 없습니다."
 
@@ -2054,13 +2006,13 @@ msgstr ""
 "가 있습니다.  파일 시스템을 검사하십시오!"
 
 #: libparted/fs/r/hfs/cache.c:214
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Trying to move an extent from block 0x%X to block 0x%X, but another one "
 "already exists at this position.  This should not happen!"
 msgstr ""
-"Ox%X번 블록에서 Ox%X번 블록으로 범위 정보 이동을 시도했지만, 현재 위치에 다"
-"른 ë²\94ì\9c\84 ì \95ë³´ê°\80 ì\9e\88ì\8aµë\8b\88ë\8b¤.  ì\9d´ ë\8f\99ì\9e\91ì\9d\84 ì\8b\9cë\8f\84í\95\98ë©´ ì\95\88ë\90©ë\8b\88ë\8b¤!"
+"0x%X번 블록에서 0x%X번 블록으로 범위 정보 이동을 시도했지만,  이 위치에 다른 "
+"범위 정보가 있습니다.  이 동작을 시도하면 안됩니다!"
 
 #: libparted/fs/r/hfs/file.c:143
 #, c-format
@@ -2102,61 +2054,61 @@ msgstr "%2$X CNID로 HFS+ 파일의 %1$lli 섹터를 찾을 수 없습니다."
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "EOF 이전의 %X CNID로 HFS+ 파일에 기록하려 합니다."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "죄송하지만, HFS 크기를 이 방식으로 조절할 수 없습니다."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "크기 줄이는 중"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "데이터 재배치에 실패했습니다."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr "데이터 재배치 중 볼륨 마지막 부분에 일부 데이터가 남았습니다."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "HFS 마스터 디렉터리 블록 기록 중"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "여는 중 유효한 HFS[+X] 서명을 찾지 못했습니다."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "HFS+ %d 버전은 지원하지 않습니다."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "HFSX %d 버전은 지원하지 않습니다."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "데이터 재배치 중 볼륨 마지막 부분에 일부 데이터가 남았습니다."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "할당 파일을 기록하는 중 오류가 발생했습니다."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "할당 파일의 호환성 부분을 기록하는 중 오류가 발생했습니다."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "HFS+ 볼륨 헤더 기록 중"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "필수 불량 블록 파일을 찾는 중 오류가 발생했습니다."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2164,27 +2116,27 @@ msgstr ""
 "HFS 래퍼에 오류가 있는 것 같습니다. 불량 블록 파일에 내장 HFS+ 볼륨 정보가 없"
 "습니다."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "죄송하지만, HFS+ 크기를 이 방식으로 조절할 수 없습니다."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "내장 HFS+ 볼륨 크기 줄이는 중"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "HFS+ 볼륨 크기 조절에 실패했습니다."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "HFS 래퍼 크기 줄이는 중"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "HFS 래퍼 업데이트에 실패했습니다."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2205,12 +2157,11 @@ msgstr ""
 "저널을 재현하는 동안 트랜잭션 블록 크기가 잘못됨을 발견했습니다(%i바이트)."
 
 #: libparted/fs/r/hfs/journal.c:260
-#, fuzzy
 msgid ""
 "Journal stored outside of the volume are not supported.  Try to deactivate "
 "the journal and run Parted again."
 msgstr ""
-"볼륨 외에 있는 저널을 지원하지 않습니다. 저널을 비활성화한 후 Parted를 다시 "
+"볼륨 밖에 있는 저널을 지원하지 않습니다.  저널을 비활성화한 후 Parted를 다시 "
 "실행하십시오."
 
 #: libparted/fs/r/hfs/journal.c:271
@@ -2261,22 +2212,22 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "범위 정보를 다시 배치하지 않았습니다."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
 msgstr ""
 "범위 정보 참조를 두지 말아야 할 곳에 두었습니다.  파일 시스템을 검사하십시오!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "HFS  볼륨에 카탈로그 파일이 없습니다. 상당히 드문 일입니다!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr "HFS 볼륨에 범위 정보 오버플로우 파일이 없습니다. 상당히 드문 일입니다!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2284,52 +2235,52 @@ msgstr ""
 "자체 범위 정보에 범위 정보 오버플로우 파일이 들어있으면 안됩니다! 파일 시스템"
 "을 검사하십시오."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "메모리에 파일 시스템을 캐싱할 수 없습니다."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "불량 블록 목록을 불러올 수 없습니다."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "범위 정보 재배치를 수행하는 동안 오류가 발생했습니다."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "HFS+ 볼륨에 카탈로그 파일이 없습니다. 상당히 드문 일입니다!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "HFS+ 볼륨에 범위 정보 오버플로우 파일이 없습니다. 상당히 드문 일입니다!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "도움말 메시지를 나타냅니다"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "모든 블록 장치의 분할 영역 배치를 나타냅니다"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "기계 해석 가능한 출력을 나타냅니다"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "사용자 개입 여부를 묻지 않음"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "버전 정보를 나타냅니다"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "새 분할 영역의 정렬 방식"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2337,31 +2288,31 @@ msgstr ""
 "<번호>는 리눅스에서 사용하는 분할 영역 번호입니다. MS-DOS 디스크 레이블에서, "
 "주 분할 영역 번호는 1부터 4까지, 논리 분할 영역은 5 이후입니다.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "<레이블 형식>은 다음 중 하나입니다:"
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "<플래그>는 다음 중 하나입니다:"
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "<단위>는 다음 중 하나입니다:"
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "적절한 정렬값: minimum 또는 optimal"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "<분할 영역 형식>은 다음 중 하나입니다: primary, logical, extended\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "<파일 시스템 형식> 은 다음 중 하나입니다:"
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2370,7 +2321,7 @@ msgstr ""
 "<시작>과 <끝>은 4GB 또는 10% 같은 디스크 위치입니다. 음수 값은 디스크 뒷부분"
 "부터 계산한 값입니다.  예를 들면, -1은 정확히 마지막 섹터를 가리킵니다.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2378,19 +2329,19 @@ msgstr ""
 "<끝>은 4GB 또는 10% 같은 디스크 위치입니다. 음수 값은 디스크 뒷부분부터 계산"
 "한 값입니다.  예를 들면, -1은 정확히 마지막 섹터를 가리킵니다.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "<상태>는 on, off 둘 중 하나입니다\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "<장치>는 보통 /dev/hda 또는 /dev/sda입니다\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "<이름>은 원하는 어떤 단어든 들어갑니다\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2410,22 +2361,22 @@ msgstr ""
 "GNU General Public License for more details.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(남은 시간: %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "%s 분할 영역을 사용중입니다. 정말 계속하시겠습니까?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "%s의 분할 공간을 사용 중입니다."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2434,31 +2385,31 @@ msgstr ""
 "%s의 기존 디스크 레이블을 없애며 디스크의 모든 데이터가 사라집니다. 계속하시"
 "겠습니까?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "새 디스크 레이블 형식?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "분할 영역 형식?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "분할 영역 이름?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "파일 시스템 형식?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "시작점?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "끝점?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2467,7 +2418,7 @@ msgstr ""
 "%s부터 %s까지(%llu..%llu 섹터) 영역 분할을 요청했습니다.\n"
 "관리할 수 있는 가까운 위치는 %s부터 %s까지(%llu..%llu 섹터)입니다.%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2475,94 +2426,94 @@ msgstr ""
 "\n"
 "여전히 만족합니까?"
 
-#: parted/parted.c:798
-#, fuzzy, c-format
+#: parted/parted.c:799
+#, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
-"최적 성능을 목적으로 분할 영역 배치 과정에서 제대로 정렬하지 않았습니다."
+"최적 성능을 목적으로 분할 영역 배치 과정에서 제대로 정렬하지 않았습니다: %s"
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
-msgstr ""
+msgstr "알 수 없음(malloc 실패)"
 
-#: parted/parted.c:876
-#, fuzzy, c-format
+#: parted/parted.c:877
+#, c-format
 msgid "%s disk labels do not support partition name."
-msgstr "%s 디스크 레이블은 확장 분할 영역을 지원하지 않습니다."
+msgstr "%s 디스크 레이블은 분할 영역 이름을 지원하지 않습니다."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "분할 영역 번호?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr "BIOS 실린더,헤드,섹터 크기: %d,%d,%d.  각 실린더는 %s 입니다.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "모델: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "%s 디스크: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "섹터 크기(논리/실제): %lld/B%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "분할 영역 테이블: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "디스크 플래그: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "번호"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "시작"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "끝"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "크기"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "형식"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "파일 시스템"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "이름"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "플래그"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "여분 공간"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2571,68 +2522,69 @@ msgstr ""
 "%s %s 분할 영역을 %s->%s에서 찾았습니다. 이 분할 영역을 분할 영역 테이블에 추"
 "가하시겠습니까?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "파일 시스템 검색 중"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "Parted 3.0에서 resize 명령을 제거했습니다"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "분할 영역 공간을 줄이면 데이터를 잃을 수 있습니다. 정말로 계속하시겠습니까?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "새 장치?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "정렬 형식(min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "분할 영역 %d은(는) 정렬 상태임\n"
 
-#: parted/parted.c:1721
-#, fuzzy, c-format
+#: parted/parted.c:1737
+#, c-format
 msgid "%d not aligned: %s\n"
-msgstr "분할 영역 %d은(는) 정렬 상태 아님\n"
+msgstr ""
+"%d번을 정렬하지 않음: %s\n"
+"\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "반전할 플래그?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "새 상태?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "단위?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
-#, fuzzy
+#: parted/parted.c:1988
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
 msgstr ""
-"align-check <형식> <번호>                        <번호> 분할 영역의 지정 <형"
-">(min|opt) 정렬 상태를 검사합니다"
+"align-check <형식> <번호>                       <번호> 분할 영역의 지정 <형식"
+">(min|opt) 정렬 상태를 검사합니다"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2640,15 +2592,15 @@ msgstr ""
 "help [<명령>]                           일반 도움말 또는 <명령> 도움말을 출력"
 "합니다"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2656,17 +2608,17 @@ msgstr ""
 "mklabel,mktable <레이블 형식>              새 디스크 레이블(분할 영역 테이블)"
 "을 만듭니다"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr ""
 "mkpart <분할 영역 형식> [<파일 시스템 형식>] <시작> <끝>     분할 영역을 만듭"
 "니다"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2674,21 +2626,21 @@ msgstr ""
 "‘mkpart’는 분할 영역에 새 파일 시스템을 만들지 않고 분할 영역을 만듭니다. <파"
 "일 시스템 형식>에 적당한 분할 영역 ID를 설정해야 합니다.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "name <번호> <이름>                         <번호> 분할 영역의 이름을 <이름>으"
 "로 지정합니다"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2697,7 +2649,7 @@ msgstr ""
 "print [devices|free|list,all|<번호>]     분할 영역 테이블, 존재 장치, 여분 공"
 "간, 발견한 모든 분할 영역 또는 지정 분할 영역을 나타냅니다"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2705,11 +2657,11 @@ msgstr ""
 "‘print’ 명령에 인자를 빼면 전체 분할 영역 테이블을 나타냅니다. 하지만 다음 인"
 "자 값을 넣으면 다양한 다른 동작을 수행합니다.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : 모든 활성 블록 장치를 나타냅니다\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2717,30 +2669,30 @@ msgstr ""
 "  free      : 현재 블록 장치에서 분할 영역으로 지정하지 않은 여분의 공간 정보"
 "를 나타냅니다\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr "  list, all : 모든 활성 블록 장치의 분할 영역 테이블을 나타냅니다\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr "  <번호>    : 이 분할 영역의 자세한 정보를 나타냅니다\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                     프로그램을 빠져 나갑니다"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2748,56 +2700,56 @@ msgstr ""
 "rescue <시작> <끝>                         <시작> 및 <끝> 영역 주변의 소실 분"
 "할 영역을 복원합니다"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "Parted 3.0에서 resize 명령을 제거했습니다\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "resizepart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr ""
 "resizepart <번호> <끝>                    <번호> 분할 영역의 크기를 조절합니"
 "다"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm <번호>                                <번호> 분할 영역을 삭제합니다"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select <장치>                            편집할 장치를 선택합니다"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disk_set"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 "disk_set <플래그> <상태>                      선택한 장치의 <플래그> 값을 바"
 "꿉니다"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
@@ -2805,22 +2757,22 @@ msgstr ""
 "disk_toggle [<플래그>]                       선택한 장치의 <플래그> 상태를 전"
 "환합니다"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "set <번호> <플래그> <상태>                    <번호> 분할 영역의 <플래그> 값"
 "을 바꿉니다"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2828,21 +2780,21 @@ msgstr ""
 "toggle [<번호> [<플래그>]]                   <번호> 분할 영역의 <플래그> 상태"
 "를 전환합니다"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "unit <단위>                                기본 단위를 <단위> 값으로 설정합니"
 "다"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2850,7 +2802,7 @@ msgstr ""
 "version                                  GNU Parted의 버전 번호와 저작 정보"
 "를 나타냅니다"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2858,29 +2810,37 @@ msgstr ""
 "‘version’ 명령은 GNU Parted 사본과 관련된 저작 정보와 버전 정보를 나타냅니"
 "다\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr "사용법: %s [-hlmsv] [-a<정렬방식>] [<장치> [<명령> [<매개변수>]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "장치가 없습니다"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "경고: 관리자가 아닙니다. 권한을 확인하십시오.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"다시 부팅하기 전 부트 로더를 다시 설치해야 합니다. 자세한 정보는 Parted 사용"
+"자 문서 4장을 살펴보십시오."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "/etc/fstab 정보를 업데이트해야 합니다.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 "GNU Parted 사용을 환영합니다! 명령 목록을 보려면 ‘help’를 입력하십시오.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2891,7 +2851,7 @@ msgstr ""
 "<매개변수>를 붙인 <명령>을 <장치>에 적용합니다.  <명령>이 없으면\n"
 "대화식 모드로 실행합니다.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2953,7 +2913,7 @@ msgstr ""
 "그리고 여러분이 입력한 다음 명령 기록을 넣으십시오.\n"
 "또한 중요하다고 생각하는 추가 설정 정보도 넣으십시오.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -2961,7 +2921,7 @@ msgstr ""
 "\n"
 "명령 기록:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -2969,7 +2929,7 @@ msgstr ""
 "\n"
 "오류: SEGV_MAPERR (객체에 주소를 매핑하지 않음)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -2977,7 +2937,7 @@ msgstr ""
 "\n"
 "오류: SEGV_ACCERR (매핑할 오브젝트에 접근할 권한 없음)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -2985,7 +2945,7 @@ msgstr ""
 "\n"
 "오류: 일반 SIGSEGV 시그널이 발생했습니다.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -2993,7 +2953,7 @@ msgstr ""
 "\n"
 "오류: FPE_INTDIV (정수: 0 나누기 오류)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3001,7 +2961,7 @@ msgstr ""
 "\n"
 "오류: FPE_INTOVF (정수: 오버플로우)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3009,7 +2969,7 @@ msgstr ""
 "\n"
 "오류: FPE_FLTDIV (실수: 0 나누기 오류)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3017,7 +2977,7 @@ msgstr ""
 "\n"
 "오류: FPE_FLTOVF (실수: 오버플로우)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3025,7 +2985,7 @@ msgstr ""
 "\n"
 "오류: FPE_FLTUND (실수: 언더플로우)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3033,7 +2993,7 @@ msgstr ""
 "\n"
 "오류: FPE_FLTRES (실수: 부정확한 결과)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3041,7 +3001,7 @@ msgstr ""
 "\n"
 "오류: FPE_FLTINV (실수: 잘못된 연산)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3049,7 +3009,7 @@ msgstr ""
 "\n"
 "오류: FPE_FLTSUB (실수: 아래 첨자 범위 벗어남)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3057,7 +3017,7 @@ msgstr ""
 "\n"
 "오류: 일반 SIGFPE 시그널이 발생했습니다."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3065,7 +3025,7 @@ msgstr ""
 "\n"
 "오류: ILL_ILLOPC (잘못된 기계어 코드)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3073,7 +3033,7 @@ msgstr ""
 "\n"
 "오류: ILL_ILLOPN (잘못된 기계어 인자)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3081,7 +3041,7 @@ msgstr ""
 "\n"
 "오류: ILL_ILLADR (잘못된 주소 모드)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3089,7 +3049,7 @@ msgstr ""
 "\n"
 "오류: ILL_ILLTRP (잘못된 트랩 처리)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3097,7 +3057,7 @@ msgstr ""
 "\n"
 "오류: ILL_PRVOPC (권한이 필요한 기계어 코드)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3105,7 +3065,7 @@ msgstr ""
 "\n"
 "오류: ILL_PRVREG (권한이 필요한 레지스터 접근)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3113,7 +3073,7 @@ msgstr ""
 "\n"
 "오류: ILL_COPROC (코프로세서 오류)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3121,7 +3081,7 @@ msgstr ""
 "\n"
 "오류: ILL_BADSTK (내부 스택 오류)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3129,69 +3089,69 @@ msgstr ""
 "\n"
 "오류: 일반 SIGILL 시그널이 발생했습니다."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "잘못된 토큰: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "분할 영역 번호가 필요합니다."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "분할 영역이 없습니다."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "파일 시스템 형식이 필요합니다."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "알 수 없는 파일 시스템 형식 “%s”."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "디스크 레이블 형식이 필요합니다."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
-msgstr ""
+msgstr "지원하는 플래그 없음"
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "더 이상의 분할 영역을 만들 수 없습니다."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "분할 영역 형식이 필요합니다."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "on"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "off"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "optimal"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "minimal"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "옵션:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "명령:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3200,12 +3160,12 @@ msgstr ""
 "\n"
 "%s에 버그를 보고하십시오\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "%s 사용법\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "이 명령은 비 대화식 모드에서 동작하지 않습니다.\n"
 
@@ -3224,9 +3184,51 @@ msgstr "이 명령은 비 대화식 모드에서 동작하지 않습니다.\n"
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "%s 홈페이지: <http://www.gnu.org/software/%s/>\n"
 
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "잘못된 %s%s 인자 ‘%s’"
+
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "%s%s 인자의 '%s'에 잘못된 접미부"
+
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "%s%s 인자의 ‘%s’이(가) 너무 큽니다"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "분할 영역 테이블을 다시 읽을 수 없습니다. 수정한 분할 영역을 마운트하기 전"
+#~ "에 다시 부팅해야 합니다. 다시 부팅하기 전에 부트 로더를 다시 설치해야 합니"
+#~ "다(수정한 분할 영역을 마운트하려면 필요합니다). 두 가지를 다 처리할 수 없"
+#~ "습니다. 복구 디스크로 부팅하고 복구 디스크로 부트 로더를 다시 설치해야 합"
+#~ "니다. 자세한 정보는 Parted 사용자 문서 4장을 살펴보십시오."
+
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "%s의 분할 영역 테이블을 다시 읽을 수 없습니다(%s). Hurd에서 수정 내역을 파"
+#~ "악하지 못합니다. %s(으)로 무언가를 진행하기 전에 컴퓨터를 다시 부팅해야 합"
+#~ "니다."
+
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "부트 영역이 분할 영역 시작 지점에서 시작하지 않았습니다."
+
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
 #~ msgstr ""
 #~ "이 파일 시스템의 논리 섹터 크기가 %d 바이트 입니다. GNU Parted에서는 섹터 "
 #~ "크기가 512 바이트 이상인 경우 제대로 동작하지 않습니다."
+
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "%s 파일은 시스템 파일입니다. 이 파일을 옮기면 일부 프로그램의 동작이 멈춥"
+#~ "니다."
index 4b459837d717ceb1f22cce9ed59d13cf9c75f699..5707c0eea880deebbbc0f458def784a278d19789 100644 (file)
Binary files a/po/nl.gmo and b/po/nl.gmo differ
index a66521faa5bf82686fba73301843935955cebc60..5fde5709a33f68b7e5210967c1498ab496b76fa9 100644 (file)
--- a/po/nl.po
+++ b/po/nl.po
@@ -1,26 +1,25 @@
 # Dutch translations for GNU parted.
-# Copyright (C) 2014 Free Software Foundation, Inc.
+# Copyright (C) 2021 Free Software Foundation, Inc.
 # This file is distributed under the same license as the parted package.
 #
-# Kerrie, kruidnagel, bonenkruid.
+# "Zeven collega's bleven stoïcijns backspacen dat het een lieve lust was."
 #
-# Benno Schulenberg <benno@vertaalt.nl>, 2005, 2006, 2007, 2010, 2011, 2012, 2014.
+# Benno Schulenberg <benno@vertaalt.nl>, 2005, 2006, 2007, 2010, 2011, 2012, 2014, 2021.
 # Erwin Poeze <erwin.poeze@gmail.com>, 2010.
 # Ivo Timmermans <ivo@o2w.nl>, 2000.
 msgid ""
 msgstr ""
-"Project-Id-Version: parted 3.1.90\n"
+"Project-Id-Version: parted 3.3.52\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
-"PO-Revision-Date: 2014-07-03 21:51+0200\n"
-"Last-Translator: Benno Schulenberg <benno@vertaalt.nl>\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
+"PO-Revision-Date: 2021-01-19 11:14+0100\n"
+"Last-Translator: Benno Schulenberg <vertaling@coevern.nl>\n"
 "Language-Team: Dutch <vertaling@vrijschrift.org>\n"
 "Language: nl\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "X-Bugs: Report translation errors to the Language-Team address.\n"
-"X-Generator: Lokalize 1.0\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: lib/argmatch.c:132
@@ -46,29 +45,29 @@ msgid "Unknown system error"
 msgstr "Onbekende systeemfout"
 
 #: lib/getopt.c:278
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' is ambiguous\n"
-msgstr "%s: optie '-W %s' is niet eenduidig\n"
+msgstr "%s: optie '%s%s' is niet eenduidig\n"
 
 #: lib/getopt.c:284
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' is ambiguous; possibilities:"
-msgstr "%s: optie '%s' is niet eenduidig; mogelijkheden zijn:"
+msgstr "%s: optie '%s%s' is niet eenduidig; mogelijkheden zijn:"
 
 #: lib/getopt.c:319
-#, fuzzy, c-format
+#, c-format
 msgid "%s: unrecognized option '%s%s'\n"
-msgstr "%s: onbekende optie '%c%s'\n"
+msgstr "%s: onbekende optie '%s%s'\n"
 
 #: lib/getopt.c:345
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' doesn't allow an argument\n"
-msgstr "%s: optie '%c%s' staat geen argument toe\n"
+msgstr "%s: optie '%s%s' staat geen argument toe\n"
 
 #: lib/getopt.c:360
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' requires an argument\n"
-msgstr "%s: optie '--%s' vereist een argument\n"
+msgstr "%s: optie '%s%s' vereist een argument\n"
 
 #: lib/getopt.c:621
 #, c-format
@@ -101,11 +100,11 @@ msgstr "%s: optie vereist een argument -- '%c'\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "‘"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "’"
 
@@ -138,9 +137,8 @@ msgid "Invalid back reference"
 msgstr "Ongeldige terugverwijzing"
 
 #: lib/regcomp.c:156
-#, fuzzy
 msgid "Unmatched [, [^, [:, [., or [="
-msgstr "Ongepaarde [ of [^"
+msgstr "Ongepaarde [, [^, [:, [., of [="
 
 #: lib/regcomp.c:159
 msgid "Unmatched ( or \\("
@@ -221,17 +219,17 @@ msgstr "©"
 
 #. TRANSLATORS: The %s placeholder is the web address of the GPL license.
 #: lib/version-etc.c:88
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "License GPLv3+: GNU GPL version 3 or later <%s>.\n"
 "This is free software: you are free to change and redistribute it.\n"
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
-"\n"
 "Dit is vrije software: u mag het vrijelijk wijzigen en verder verspreiden.\n"
-"De precieze licentie is GPLv3+: GNU GPL versie 3 of later;\n"
-"zie http://gnu.org/licenses/gpl.html voor de volledige tekst.\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 <%s> 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.
@@ -347,10 +345,9 @@ msgstr ""
 #. "Report translation bugs to <...>\n" with the address for translation
 #. bugs (typically your translation team's web or email address).
 #: lib/version-etc.c:249
-#, fuzzy, c-format
+#, c-format
 msgid "Report bugs to: %s\n"
 msgstr ""
-"\n"
 "Rapporteer gebreken in het programma aan <%s>;\n"
 "meld fouten in de vertaling aan <vertaling@vrijschrift.org>.\n"
 
@@ -367,41 +364,25 @@ msgid "%s home page: <%s>\n"
 msgstr "Webpagina van %s: <%s>\n"
 
 #: lib/version-etc.c:260
-#, fuzzy, c-format
+#, c-format
 msgid "General help using GNU software: <%s>\n"
-msgstr ""
-"Algemene hulp bij gebruik van GNU-software: <http://www.gnu.org/gethelp/>\n"
+msgstr "Algemene hulp bij gebruik van GNU-software: <%s>\n"
 
 #: lib/xalloc-die.c:34
 msgid "memory exhausted"
 msgstr "onvoldoende geheugen beschikbaar"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "ongeldig argument '%3$s' van %1$s%2$s"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "ongeldig achtervoegsel in argument '%3$s' van %1$s%2$s"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "argument '%3$s' van %1$s%2$s is te groot"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Schijfimage"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Fout tijdens openen van %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -409,47 +390,47 @@ msgstr ""
 "Kan %s niet openen voor lezen-en-schrijven (%s);  %s is geopend voor alleen-"
 "lezen."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s tijdens een 'seek' bij het lezen van %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s tijdens lezen van %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Kan niet naar %s schrijven, omdat het geopend is voor alleen-lezen."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s tijdens een 'seek' bij het schrijven naar %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s tijdens schrijven naar %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Typ '%s --help' voor meer informatie.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Gebruik:  %s [OPTIE] [APPARAAT]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -465,7 +446,7 @@ msgstr ""
 "  -h, --help       deze hulptekst tonen en stoppen\n"
 "  -v, --version    programmaversie tonen en stoppen\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -473,7 +454,7 @@ msgstr ""
 "\n"
 "Zonder APPARAAT worden alle beschikbare apparaten onderzocht.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -492,43 +473,7 @@ msgstr "Kan %s niet openen."
 msgid "Unable to probe store."
 msgstr "Kan de logische opbouw van het apparaat niet achterhalen."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"De kernel kan de partitietabel niet herinlezen.  Dit betekent dat u uw "
-"computer moet herstarten alvorens veranderde partities te gebruiken.  Maar "
-"voor het herstarten moet u ook uw opstartlader opnieuw installeren, wat "
-"mogelijk het aankoppelen van veranderde partitities vereist.  De twee dingen "
-"zijn niet samen mogelijk!  U zult dus van een reddingsdiskette of van een CD "
-"moeten herstarten, en vanaf daar uw opstartlader moeten herinstalleren.  "
-"Lees eventueel sectie 4 van de Parted-gebruikersdocumentatie."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"De kernel kan de partitietabel op %s niet herinlezen (%s).  Dit betekent dat "
-"de Hurd geen weet heeft van de veranderingen die u net hebt gemaakt.  U "
-"dient uw computer te herstarten alvorens iets met %s te doen."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Alvorens te herstarten dient u uw opstartlader opnieuw te installeren.  Lees "
-"sectie 4 van de Parted-gebruikersdocumentatie voor meer informatie."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s: bezig met synchroniseren van %s naar schijf"
@@ -617,9 +562,8 @@ msgid "Generic SD/MMC Storage Card"
 msgstr "Algemeen SD/MMC-geheugenkaart"
 
 #: libparted/arch/linux.c:1422
-#, fuzzy
 msgid "NVMe Device"
-msgstr "Nieuw apparaat?"
+msgstr "NVMe-apparaat"
 
 #: libparted/arch/linux.c:1483
 msgid "DAC960 RAID controller"
@@ -647,7 +591,7 @@ msgstr "Compaq Smart Array-stuurapparaat"
 
 #: libparted/arch/linux.c:1520
 msgid "NVDIMM Device"
-msgstr ""
+msgstr "NVDIMM-apparaat"
 
 #: libparted/arch/linux.c:1525
 msgid "ATARAID Controller"
@@ -688,7 +632,7 @@ msgstr "Linux-Software-RAID-array"
 
 #: libparted/arch/linux.c:1588
 msgid "RAM Drive"
-msgstr ""
+msgstr "RAM-schijf"
 
 #: libparted/arch/linux.c:1595
 msgid "ped_device_new()  Unsupported device type"
@@ -850,15 +794,15 @@ msgstr "metagegevens"
 msgid "free"
 msgstr "vrij"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "uitgebreid"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logisch"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primair"
 
@@ -934,64 +878,72 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr "chromeos_kernel"
+
+#: libparted/disk.c:2413
+msgid "bls_boot"
+msgstr "bls_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Onbekende partitievlag %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Opmerking"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Waarschuwing"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Fout"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Fataal"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Programmeerfout"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Niet-geïmplementeerd"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Repareren"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Ja"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Nee"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Opnieuw proberen"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Negeren"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Annuleren"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -1006,27 +958,27 @@ msgstr ""
 "Stuur een foutrapportage (naar %s) die in elk geval\n"
 "het versienummer (%s) noemt en de volgende boodschap:  "
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "Het lezen van AIX-schijflabels is nog niet geïmplementeerd."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "Het schrijven van AIX-schijflabels is nog niet geïmplementeerd."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "Het toevoegen van partities aan AIX-schijflabels is nog niet geïmplementeerd."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "Het klonen van partities in AIX-schijflabels is nog niet geïmplementeerd."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1034,19 +986,17 @@ msgstr ""
 "Het instellen van het systeemtype in AIX-schijflabels is nog niet "
 "geïmplementeerd."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 "Het zetten van vlaggen in AIX-schijflabels is nog niet geïmplementeerd."
 
 #: libparted/labels/atari.c:273
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Can't use Atari partition tables on disks with a sector size not equal to %d "
 "bytes."
 msgstr ""
-"Parted kan geen HFS-bestandssystemen bewerken op schijven met een andere "
-"sectorgrootte dan %d bytes."
 
 #: libparted/labels/atari.c:285
 #, c-format
@@ -1110,9 +1060,8 @@ msgid ""
 msgstr ""
 
 #: libparted/labels/atari.c:1164
-#, fuzzy
 msgid "ICD entries can't contain extended or logical partitions."
-msgstr "Kan een uitgebreide partitie niet kopiëren."
+msgstr ""
 
 #: libparted/labels/atari.c:1186
 msgid "There were remaining partitions after filling the tables."
@@ -1125,11 +1074,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Kan niet aan alle voorwaarden voor deze partitie voldoen."
@@ -1145,46 +1094,47 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Geen partitienummer meer beschikbaar."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Kan in het BSD-schijflabel geen plekje meer reserveren."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
+"De partitietabel van een DASD-LDL-apparaat kan niet gewijzigd worden.\n"
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Kan in het DASD-schijflabel geen plekje meer reserveren."
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Ongeldige partitietabel op %s -- onjuiste vingerafdruk %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Ongeldige partitietabel -- recursieve partitie op %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr ""
 "Uitgebreide partities kunnen op MSDOS-schijflabels niet verborgen zijn."
 
-#: libparted/labels/dos.c:1572
-#, fuzzy
+#: libparted/labels/dos.c:1569
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr ""
-"Uitgebreide partities kunnen op MSDOS-schijflabels niet verborgen zijn."
+"Uitgebreide partities kunnen op MSDOS-schijflabels geen herstelpartities "
+"zijn."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted kan partitities beheerd door Windows Dynamic Disk niet van grootte "
 "veranderen."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "kan geen nieuwe partities meer maken"
 
@@ -1280,7 +1230,7 @@ msgstr "Het opgegeven apparaat is geen geldig DASD-apparaat"
 
 #: libparted/labels/fdasd.c:188
 msgid "VOLSER not found on device"
-msgstr ""
+msgstr "VOLSER is niet gevonden op apparaat"
 
 #: libparted/labels/fdasd.c:191 libparted/labels/vtoc.c:179
 msgid "Fatal error"
@@ -1311,9 +1261,8 @@ msgstr ""
 "stuurprogramma!"
 
 #: libparted/labels/fdasd.c:1020
-#, fuzzy
 msgid "Could not retrieve disk size."
-msgstr "Kan geen schijfinformatie verkrijgen."
+msgstr "Kan schijfgrootte niet verkrijgen."
 
 #: libparted/labels/fdasd.c:1029
 msgid "Could not retrieve disk geometry information."
@@ -1325,13 +1274,13 @@ msgstr "Kan blokgrootte niet verkrijgen."
 
 #: libparted/labels/fdasd.c:1045
 msgid "Disk geometry does not match a DASD device of type 3390."
-msgstr ""
+msgstr "Schijfgeometrie komt niet overeen met een DASD-apparaat van type 3390."
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "Het apparaat is te klein voor GPT."
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1340,7 +1289,7 @@ msgstr ""
 "De indeling van de GPT-partitietabel is van versie %x.  Dit is nieuwer dan "
 "wat deze versie van Parted kent.  Rapporteer dit alstublieft aan ons."
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1351,7 +1300,7 @@ msgstr ""
 "De GPT bijwerken om alle ruimte te gebruiken (%llu extra blokken),\n"
 "of doorgaan en deze extra ruimte negeren? "
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1361,7 +1310,7 @@ msgstr ""
 "naar het einde te verplaatsen (en de oude reservekopie te verwijderen).  "
 "Reparatie uitvoeren?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1370,7 +1319,7 @@ msgstr ""
 "een nieuw schijflabel aan, en probeer dan met de 'red'-opdracht de "
 "kwijtgeraakte partities te herstellen."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1378,7 +1327,7 @@ msgstr ""
 "De reservekopie van de GPT-tabel is beschadigd, maar de primaire tabel lijkt "
 "goed.  Deze laatste zal worden gebruikt."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1386,11 +1335,11 @@ msgstr ""
 "De primaire GPT-tabel is beschadigd, maar de reservekopie lijkt goed.  Deze "
 "laatste zal worden gebruikt."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "CRC-verschil in hoofdpartitietabel-array"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "vertalen van partitienaam is mislukt"
 
@@ -1423,18 +1372,14 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Het gegevensgebied begint niet bij het begin van de partitie."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Het opstartgebied begint niet bij het begin van de partitie."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Het opstartgebied beslaat niet de gehele partitie."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Het gegevensgebied beslaat niet de gehele partitie."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
@@ -1442,7 +1387,7 @@ msgstr ""
 "Vreemde blokgrootte in apparaatbeschrijving: %d bytes is niet deelbaar door "
 "512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1451,11 +1396,11 @@ msgstr ""
 "De beschrijving van het stuurprogramma zegt dat de fysieke blokgrootte %d "
 "bytes is, maar Linux zegt dat het %d bytes is."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Geen geldige partitietabel gevonden."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1464,11 +1409,11 @@ msgstr ""
 "Tegenstrijdige groottes van partitietabelitems!\n"
 "Item 1 zegt dat het %d is, maar item %d zegt dat het %d is!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Vreemd: twee partitietabelitems!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1476,17 +1421,17 @@ msgstr ""
 "Het veranderen van de naam van een root- of swappartitie zal verhinderen dat "
 "Linux deze als zodanig herkent."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr ""
 "Kan geen nieuwe primaire partitie toevoegen: de partitietabel is te klein!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Ongeldige partitietabel op %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1495,7 +1440,7 @@ msgstr ""
 "Partitie %d is niet uitgelijnd op cilindergrenzen.  Dit wordt nog niet "
 "ondersteund."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Kan niet nog een partitie toevoegen."
 
@@ -1670,39 +1615,39 @@ msgstr "Kan een FMT7 DSCB niet schrijven."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Kan een FMT9 DSCB niet schrijven."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Onvoldoende geheugen beschikbaar."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Kan grootte van speciale eenheid 'COMPACT' niet achterhalen."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
-msgstr "\"%s\" heeft een voor locaties ongeldige syntaxis."
+msgstr "\"%s\" heeft een voor locaties ongeldige syntax."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "De maximum waarde voor de kop is %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "De maximum waarde voor de sector is %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "Locatie %s ligt buiten het apparaat %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Ongeldig nummer."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "Gebruik een kleinere eenheid in plaats van een waarde kleiner dan 1"
 
@@ -1712,18 +1657,18 @@ msgstr "Gebruik een kleinere eenheid in plaats van een waarde kleiner dan 1"
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : Geheugen reserveren voor partitieblok is mislukt\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : Geheugen reserveren voor blok is mislukt\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : Kan opstartblok %llu niet lezen\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1749,22 +1694,22 @@ msgstr "%s : Onjuiste controlesom op blok %llu van type %s\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : Kan blok %d niet schrijven\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s : Geheugen reserveren voor schijfspecifiek 'rdb'-blok is mislukt\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s : Geen 'rdb'-blok gevonden -- zou nooit mogen gebeuren\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : Kan partitieblok %llu niet lezen\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1866,7 +1811,7 @@ msgstr ""
 "bestandssysteem onveranderd gelaten.  Als u 'Repareren' kiest, wordt deze "
 "opbouw gelijkgemaakt aan die in de partitietabel."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1893,13 +1838,13 @@ msgid ""
 msgstr ""
 "Clusterbegin-delta = %d, en dat is geen veelvoud van de clustergrootte %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Foutief mapitem voor %s: de eerste cluster is een bestandseinde-markering."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1907,7 +1852,7 @@ msgstr ""
 "Onjuiste FAT: onbeëindigde keten voor %s.  Voer eerst 'dosfsck' of "
 "'scandisk' uit."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1916,7 +1861,7 @@ msgstr ""
 "Onjuiste FAT: cluster %d in de keten voor %s ligt buiten het "
 "bestandssysteem.  Voer eerst 'dosfsck' of 'scandisk' uit."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1925,26 +1870,17 @@ msgstr ""
 "Onjuiste FAT: cluster %d is voor %s kruiselings gekoppeld.  Voer eerst "
 "'dosfsck' of 'scandisk' uit."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s is %dk, maar heeft %d clusters (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"Het bestand %s is gemarkeerd als een systeembestand.  Als het verplaatst "
-"wordt, zullen sommige programma's misschien niet meer werken."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Partitie is te klein of te groot voor een %s-bestandssysteem."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1953,11 +1889,11 @@ msgstr ""
 "dan 'Annuleren', voer 'scandisk' uit op het bestandssysteem, en kom dan weer "
 "terug."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Er zijn geen mogelijke configuraties voor dit type FAT."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1968,7 +1904,7 @@ msgstr ""
 "clustergrootte is %dk (%dk verwacht); het aantal clusters is %d (%d "
 "verwacht); de grootte van de FAT's is %d sectoren (%d verwacht)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
@@ -1976,7 +1912,7 @@ msgstr ""
 "Het bestandssysteem geeft de beschikbare ruimte aan als %d clusters, niet %d "
 "clusters."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1984,16 +1920,16 @@ msgstr ""
 "Er is niet genoeg ruimte in de hoofdmap voor alle bestanden.  Kies 'Negeren' "
 "om de overtallige bestanden te verwijderen."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Fout tijdens schrijven naar de hoofdmap."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr ""
 "Als u het bestandssysteem als FAT16 laat, zult u geen problemen hebben."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2004,7 +1940,7 @@ msgstr ""
 "installeren.  Als u dit wilt doen, raadpleeg dan de Parted-documentatie (of "
 "de documentatie van uw distributie)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -2012,7 +1948,7 @@ msgstr ""
 "Als u het bestandssysteem als FAT32 laat, zult u geen nieuwe problemen "
 "introduceren."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2026,42 +1962,42 @@ msgstr ""
 "de documentatie van uw distributie).  Maar bedenk: converteren naar FAT32 "
 "maakt het bestandssysteem onleesbaar voor MSDOS, Windows 95a en Windows NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Wilt u FAT32 gebruiken?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "Het bestandssysteem kan alleen naar deze grootte veranderd worden door te "
 "converteren naar FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "Het bestandssysteem kan alleen naar deze grootte veranderd worden door te "
 "converteren naar FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted kan de partitiegrootte niet naar deze afmetingen veranderen.  We "
 "zijn er mee bezig!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2070,42 +2006,42 @@ msgstr ""
 "FAT %d medium %x komt niet overeen met medium %x uit de opstartsector.  U "
 "kunt beter eerst 'scandisk' uitvoeren."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set(): cluster %ld ligt buiten het bestandssysteem"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get(): cluster %ld ligt buiten het bestandssysteem"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster(): geen beschikbare clusters"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Kan geen bestandssysteem vinden."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr ""
 "het van grootte veranderen van %s-bestandssystemen wordt niet ondersteund"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "Het bestandssysteem is groter dan de partitie!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "Het bestandssysteem bevat fouten."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "Slechte blokken konden niet gelezen worden."
 
@@ -2120,12 +2056,12 @@ msgstr ""
 "uit!"
 
 #: libparted/fs/r/hfs/cache.c:214
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Trying to move an extent from block 0x%X to block 0x%X, but another one "
 "already exists at this position.  This should not happen!"
 msgstr ""
-"Poging tot het verplaatsen van een 'extent' van blok 0x%X naar blok Ox%X, "
+"Poging tot het verplaatsen van een 'extent' van blok 0x%X naar blok 0x%X, "
 "maar er bestaat al een 'extent' op die positie.  Dit hoort nooit te gebeuren!"
 
 #: libparted/fs/r/hfs/file.c:143
@@ -2172,67 +2108,67 @@ msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr ""
 "Poging tot schrijven van HFS+-bestand met CNID %X voorbij einde-van-bestand."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "Sorry, HFS kan nog niet op deze manier van grootte veranderd worden."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "bezig met verkleinen"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "De gegevensverplaatsing is mislukt."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 "De gegevensverplaatsing heeft enkele gegevens aan het einde van het volumen "
 "achtergelaten."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "bezig met schrijven van HFS-hoofdmapblok"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "Geen geldige HFS[+X]-vingerafdruk gevonden tijdens openen."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "Versie %d van HFS+ wordt niet ondersteund."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "Versie %d van HFSX wordt niet ondersteund."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr ""
 "De gegevensverplaatsing heeft enkele gegevens aan het einde van het volumen "
 "achtergelaten."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Fout tijdens schrijven van het reserveringsbestand."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr ""
 "Fout tijdens schrijven van het compatibiliteitsdeel van het "
 "reserveringsbestand."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "bezig met schrijven van HFS+-volumenkop"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "Fout tijdens zoeken naar het vereiste slechte-blokkenbestand."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2240,27 +2176,27 @@ msgstr ""
 "Er schijnt een fout in de HFS-wikkel te zitten: het slechte-blokkenbestand "
 "bevat geen ingebed HFS+-volumen."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "Sorry, HFS+ kan nog niet op deze manier van grootte veranderd worden."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "bezig met verkleinen van een ingebed HFS+-volumen"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Het van grootte veranderen van het HFS+-volumen is mislukt."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "bezig met verkleinen van HFS-wikkel"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "Het bijwerken van de HFS-wikkel is mislukt."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2282,7 +2218,6 @@ msgstr ""
 "het journal."
 
 #: libparted/fs/r/hfs/journal.c:260
-#, fuzzy
 msgid ""
 "Journal stored outside of the volume are not supported.  Try to deactivate "
 "the journal and run Parted again."
@@ -2341,7 +2276,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Een 'extent' is niet verplaatst."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2349,18 +2284,18 @@ msgstr ""
 "Er wordt gerefereerd aan een 'extent' vanuit een onmogelijke plaats.  Voer "
 "een bestandssyteemcontrole uit!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr ""
 "Dit HFS-volumen heeft geen catalogusbestand.  Dit is zeer ongebruikelijk!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Dit HFS-volumen heeft geen 'extents-overflow'-bestand.  Dit is zeer "
 "ongebruikelijk!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2368,54 +2303,54 @@ msgstr ""
 "Het 'extents-overflow'-bestand hoort niet zijn eigen 'extents' te bevatten.  "
 "Voer een bestandssyteemcontrole uit!"
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Kan het bestandssysteem niet tijdelijk opslaan in het geheugen."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "De lijst met slechte blokken kan niet geladen worden."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Er is een fout opgetreden tijdens het verplaatsen van een 'extent'."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr ""
 "Dit HFS+-volumen heeft geen catalogusbestand.  Dit is zeer ongebruikelijk!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Dit HFS+-volumen heeft geen 'extents-overflow'-bestand.  Dit is zeer "
 "ongebruikelijk!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "deze hulptekst tonen"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "de partietabellen van alle apparaten tonen"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "computerverwerkbare uitvoer produceren"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "nooit vragen stellen"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "de programmaversie tonen"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "uitlijning voor nieuwe partities"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2424,31 +2359,31 @@ msgstr ""
 "schijflabels zijn de primaire partities genummerd van 1 tot 4, de logische "
 "partities vanaf 5 en hoger.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "LABEL-TYPE is een van: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "VLAG is een van: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "EENHEID is een van: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "gewenste uitlijning: minimaal of optimaal"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "PART-TYPE is een van: primair, logisch, uitgebreid\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "BS-SOORT is een van: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2458,7 +2393,7 @@ msgstr ""
 "tellen vanaf het einde van de schijf.  Bijvoorbeeld, -1s geeft precies de "
 "laatste sector aan.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2467,19 +2402,19 @@ msgstr ""
 "vanaf het einde van de schijf.  Bijvoorbeeld, -1s geeft precies de laatste "
 "sector aan.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "TOESTAND is één van: aan, uit\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "APPARAAT is gewoonlijk /dev/hda of /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NAAM is elk woord dat u wilt\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2499,22 +2434,22 @@ msgstr ""
 "van VERKOOPBAARHEID of GESCHIKTHEID VOOR EEN BEPAALD DOEL.\n"
 "Zie de GNU General Public License voor meer details.\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(resterende tijd: %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "Partitie %s is in gebruik.  Weet u zeker dat u verder wilt gaan?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Partitie(s) op %s zijn in gebruik."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2523,31 +2458,31 @@ msgstr ""
 "Het bestaande label op %s zal worden vernietigd en alle gegevens op deze "
 "schijf zullen verloren gaan.  Wilt u doorgaan?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Type van nieuw schijflabel?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Partitietype?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Naam van partitie?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Bestandssysteemsoort?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Begin?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Einde?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2556,7 +2491,7 @@ msgstr ""
 "U verzocht om een partitie van %s tot %s (sectoren %llu..%llu).\n"
 "De dichtstbijzijnde mogelijkheid is van %s tot %s (sectoren %llu..%llu).%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2564,96 +2499,97 @@ msgstr ""
 "\n"
 "Is dit nog acceptabel?"
 
-#: parted/parted.c:798
-#, fuzzy, c-format
+#: parted/parted.c:799
+#, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
-"De resulterende partitie is niet correct uitgelijnd voor optimale prestaties."
+"De resulterende partitie is niet correct uitgelijnd voor optimale "
+"prestaties: %s"
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
-msgstr ""
+msgstr "onbekend (onvoldoende geheugen beschikbaar)"
 
-#: parted/parted.c:876
-#, fuzzy, c-format
+#: parted/parted.c:877
+#, c-format
 msgid "%s disk labels do not support partition name."
-msgstr "%s-schijflabels kennen geen uitgebreide partities."
+msgstr "%s-schijflabels kennen geen partitienamen."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Nummer van partitie?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 "Logische schijfopbouw volgens BIOS: %d,%d,%d (cilinders,koppen,sectoren).  "
 "Elke cilinder is %s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Model: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Schijf %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Sectorgrootte (logisch/fysiek): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Partitietabel: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Schijfvlaggen: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Nummer"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Begin"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Einde"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Grootte"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Type"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Bestandssysteem"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Naam"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Vlaggen"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Vrije ruimte"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2662,57 +2598,56 @@ msgstr ""
 "Er is een %s %s-partitie gevonden van %s tot %s.  Wilt u deze aan de "
 "partitietabel toevoegen?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "bezig met zoeken naar bestandssystemen"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "De 'grootte'-opdracht is verwijderd in Parted 3.0."
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "Het krimpen van een partitie kan gegevensverlies veroorzaken.\n"
 "Weet u zeker dat u verder wilt gaan?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Nieuw apparaat?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "uitlijningssoort (min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d is uitgelijnd\n"
 
-#: parted/parted.c:1721
-#, fuzzy, c-format
+#: parted/parted.c:1737
+#, c-format
 msgid "%d not aligned: %s\n"
-msgstr "%d is niet uitgelijnd\n"
+msgstr "%d is niet uitgelijnd: %s\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Om te zetten vlag?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Nieuwe toestand?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Eenheid?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "uitlijncontrole"
 
-#: parted/parted.c:1972
-#, fuzzy
+#: parted/parted.c:1988
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
@@ -2720,41 +2655,41 @@ msgstr ""
 "uitlijncontrole SOORT N     partitie N controleren op SOORT(min|opt)-"
 "uitlijning"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "hulp"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
 msgstr ""
 "help [OPDRACHT]             enige algemene hulp geven (of hulp bij OPDRACHT)"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "maaklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "maaktabel"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
 msgstr ""
 "maaklabel LABEL-TYPE        nieuw schijflabel maken (met lege partitietabel)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "maakpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "maakpart PART-TYPE [BS-SOORT] BEGIN EINDE   een partitie aanmaken"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2763,19 +2698,19 @@ msgstr ""
 "maken.  BS-SOORT mag gebruikt worden om het een geschikt partitiekenmerk te "
 "geven.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "noem"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr "noem NUMMER NAAM            partitie NUMMER deze NAAM geven"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "toon"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2785,7 +2720,7 @@ msgstr ""
 "beschikbare apparaten, of vrije ruimte, of tabellen van alle apparaten, of "
 "een specifieke partitie)"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2793,42 +2728,42 @@ msgstr ""
 "Zonder argumenten toont 'toon' de volledige partitietabel, maar met\n"
 "de volgende argumenten wordt meer specifieke informatie getoond:\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   :  alle actieve blokapparaten tonen\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
 msgstr ""
 "  free      :  informatie over vrije ruimte op huidige blokapparaat tonen\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all :  de partitietabellen van alle actieve blokapparaten tonen\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr "  NUMMER    :  meer details over partitie NUMMER tonen\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "einde"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "einde                       programma afsluiten"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "red"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2836,101 +2771,101 @@ msgstr ""
 "red BEGIN EINDE             een verloren partitie (met geschat begin en "
 "einde) proberen te herstellen"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "grootte"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "De 'grootte'-opdracht is verwijderd in Parted 3.0.\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "rekoptot"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr ""
 "rekoptot NUMMER EINDE       partitie NUMMER krimpen/oprekken tot nieuw EINDE"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "verwijder"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "verwijder NUMMER            partitie NUMMER verwijderen"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "kies"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr "kies APPARAAT               dit APPARAAT kiezen om te bewerken"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "schijf_zet"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 "schijf_zet VLAG TOESTAND    op gekozen apparaat deze VLAG in TOESTAND zetten"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "schijf_zetom"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
 msgstr ""
 "schijf_zetom [VLAG]         op gekozen apparaat de toestand van VLAG omzetten"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "zet"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "zet NUMMER VLAG TOESTAND    op partitie NUMMER deze VLAG in TOESTAND zetten"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "zetom"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
 msgstr ""
 "zetom [NUMMER [VLAG]]       op partitie NUMMER de toestand van VLAG omzetten"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "eenheid"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr "eenheid EENHEID             standaard deze EENHEID gebruiken"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "versie"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
 msgstr ""
 "versie                      versienummer en copyright van deze Parted tonen"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2938,31 +2873,39 @@ msgstr ""
 "'versie' toont informatie over het auteursrecht en de versie van deze GNU "
 "Parted\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 "Gebruik:  %s [-hlmsv] [-aUITLIJNING] [APPARAAT [OPDRACHT [PARAMETERS]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Geen apparaat gevonden"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr ""
 "WAARSCHUWING: u bent niet root.\n"
 "Houd rekening met ontbrekende toegangsrechten.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Alvorens te herstarten dient u uw opstartlader opnieuw te installeren.  Lees "
+"sectie 4 van de Parted-gebruikersdocumentatie voor meer informatie."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Het kan nodig zijn /etc/fstab bij te werken.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr "Welkom bij GNU Parted!  Typ 'help' voor een opdrachtenoverzicht.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2974,7 +2917,7 @@ msgstr ""
 "Dit voert OPDRACHT met ARGUMENTEN uit op APPARAAT.\n"
 "Als er geen OPDRACHT gegeven is, wordt interactieve modus gestart.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -3035,7 +2978,7 @@ msgstr ""
 "en de hierna volgende opdrachtengeschiedenis, plus verdere\n"
 "relevante informatie over de configuratie van uw systeem.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -3043,7 +2986,7 @@ msgstr ""
 "\n"
 "Opdrachtengeschiedenis:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -3051,7 +2994,7 @@ msgstr ""
 "\n"
 "Fout: SEGV_MAPERR (Adres niet verbonden met object)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3059,7 +3002,7 @@ msgstr ""
 "\n"
 "Fout: SEGV_ACCERR (Ongeldige toegangsrechten voor object)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3067,7 +3010,7 @@ msgstr ""
 "\n"
 "Fout: een niet-specifiek SIGSEGV-signaal werd ontvangen.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3075,7 +3018,7 @@ msgstr ""
 "\n"
 "Fout: FPE_INTDIV (Deling door nul)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3083,7 +3026,7 @@ msgstr ""
 "\n"
 "Fout: FPE_INTOVF (Overloop)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3091,7 +3034,7 @@ msgstr ""
 "\n"
 "Fout: FPE_FLTDIV (Deling door nul)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3099,7 +3042,7 @@ msgstr ""
 "\n"
 "Fout: FPE_FLTOVF (Overloop)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3107,7 +3050,7 @@ msgstr ""
 "\n"
 "Fout: FPE_FLTUND (Onderloop)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3115,7 +3058,7 @@ msgstr ""
 "\n"
 "Fout: FPE_FLTRES (Inexact resultaat)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3123,7 +3066,7 @@ msgstr ""
 "\n"
 "Fout: FPE_FLTINV (Ongeldige operatie)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3131,7 +3074,7 @@ msgstr ""
 "\n"
 "Fout: FPE_FLTSUB (Index buiten bereik)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3139,7 +3082,7 @@ msgstr ""
 "\n"
 "Fout: een niet-specifiek SIGFPE-signaal werd ontvangen."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3147,7 +3090,7 @@ msgstr ""
 "\n"
 "Fout: ILL_ILLOPC (Ongeldige opcode)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3155,7 +3098,7 @@ msgstr ""
 "\n"
 "Fout: ILL_ILLOPN (Ongeldige parameter)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3163,7 +3106,7 @@ msgstr ""
 "\n"
 "Fout: ILL_ILLADR (Ongeldige adresseringsmodus)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3171,7 +3114,7 @@ msgstr ""
 "\n"
 "Fout: ILL_ILLTRP (Ongeldige 'trap'-instructie)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3179,7 +3122,7 @@ msgstr ""
 "\n"
 "Fout: ILL_PRVOPC (Instructie alleen toegankelijk voor geprivilegieerden)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3187,7 +3130,7 @@ msgstr ""
 "\n"
 "Fout: ILL_PRVREG (Register alleen toegankelijk voor geprivilegieerden)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3195,7 +3138,7 @@ msgstr ""
 "\n"
 "Fout: ILL_COPROC (Coprocessorfout)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3203,7 +3146,7 @@ msgstr ""
 "\n"
 "Fout: ILL_BADSTK (Interne stack-fout)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3211,69 +3154,69 @@ msgstr ""
 "\n"
 "Fout: een niet-specifiek SIGILL-signaal werd ontvangen."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "ongeldig symbool: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Een partitienummer wordt verwacht."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Partitie bestaat niet."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Een bestandssysteemsoort wordt verwacht."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Onbekende bestandssysteemsoort '%s'."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Een schijflabeltype wordt verwacht."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
-msgstr ""
+msgstr "Vlaggen worden niet ondersteund."
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Kan geen nieuwe partities meer maken."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Een partitietype wordt verwacht."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "aan"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "uit"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "optimaal"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "minimaal"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "OPTIEs:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "OPDRACHTen:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3283,12 +3226,12 @@ msgstr ""
 "Rapporteer gebreken in het programma aan <%s>;\n"
 "meld fouten in de vertaling aan <vertaling@vrijschrift.org>.\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Apparaat %s wordt gebruikt.\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Deze opdracht is zonder betekenis in niet-interactieve modus.\n"
 
@@ -3307,6 +3250,44 @@ msgstr "Deze opdracht is zonder betekenis in niet-interactieve modus.\n"
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "Webpagina van %s: <http://www.gnu.org/software/%s/>\n"
 
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "ongeldig argument '%3$s' van %1$s%2$s"
+
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "ongeldig achtervoegsel in argument '%3$s' van %1$s%2$s"
+
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "argument '%3$s' van %1$s%2$s is te groot"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "De kernel kan de partitietabel niet herinlezen.  Dit betekent dat u uw "
+#~ "computer moet herstarten alvorens veranderde partities te gebruiken.  "
+#~ "Maar voor het herstarten moet u ook uw opstartlader opnieuw installeren, "
+#~ "wat mogelijk het aankoppelen van veranderde partitities vereist.  De twee "
+#~ "dingen zijn niet samen mogelijk!  U zult dus van een reddingsdiskette of "
+#~ "van een CD moeten herstarten, en vanaf daar uw opstartlader moeten "
+#~ "herinstalleren.  Lees eventueel sectie 4 van de Parted-"
+#~ "gebruikersdocumentatie."
+
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "De kernel kan de partitietabel op %s niet herinlezen (%s).  Dit betekent "
+#~ "dat de Hurd geen weet heeft van de veranderingen die u net hebt gemaakt.  "
+#~ "U dient uw computer te herstarten alvorens iets met %s te doen."
+
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "Het opstartgebied begint niet bij het begin van de partitie."
+
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3314,6 +3295,13 @@ msgstr "Deze opdracht is zonder betekenis in niet-interactieve modus.\n"
 #~ "Dit bestandssysteem heeft een logische sectorgrootte van %d.  GNU Parted "
 #~ "werkt niet goed met sectorgroottes anders dan 512 bytes."
 
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "Het bestand %s is gemarkeerd als een systeembestand.  Als het verplaatst "
+#~ "wordt, zullen sommige programma's misschien niet meer werken."
+
 #~ msgid "Failed to add partition %d (%s)"
 #~ msgstr "Toevoegen van partitie %d is mislukt (%s)"
 
index 0aa90dc042f8e6bfef9f8c77988f852f72ff08a3..597c9d582c260386e3635507fe92f4c0f89e0667 100644 (file)
Binary files a/po/nn.gmo and b/po/nn.gmo differ
index a498363775448b5aa607568c00d2d7c685644f0a..b8a36166a6af918aacc20466c8498d891a94ff90 100644 (file)
--- a/po/nn.po
+++ b/po/nn.po
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: GNU parted 1.6.6-pre2\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2003-07-04 19:03+0200\n"
 "Last-Translator: Kjetil Torgrim Homme <kjetilho@ifi.uio.no>\n"
 "Language-Team: Norwegian Nynorsk <i18n-nn@lister.ping.uio.no>\n"
@@ -95,11 +95,11 @@ msgstr ""
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr ""
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr ""
 
@@ -340,32 +340,17 @@ msgstr ""
 msgid "memory exhausted"
 msgstr ""
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr ""
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr ""
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr ""
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr ""
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Feil ved opning av %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -373,47 +358,47 @@ msgstr ""
 "Kunne ikkje opna %s for både lesing og skriving (%s).  %s er berre opna for "
 "lesing."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s under posisjonering før lesing av %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s under lesing av %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Kan ikkje skriva til %s, sidan han berre er opna for lesing."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s under posisjonering før skriving til %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s under skriving til %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr ""
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -423,13 +408,13 @@ msgid ""
 "  -v, --version    output version information and exit\n"
 msgstr ""
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
 msgstr ""
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -445,43 +430,7 @@ msgstr "Kunne ikkje opna %s."
 msgid "Unable to probe store."
 msgstr "Kunne ikkje undersøkja lagringsmediet."
 
-#: libparted/arch/gnu.c:368
-#, fuzzy
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Kjerna klarte ikkje å lesa partisjonstabellen på nytt, så du må starta om "
-"maskina før du kan montera endra partisjonar.  Du må også installera boot-"
-"lastaren på nytt før omstarten (som kanskje krever at du monterer "
-"partisjonane du har endra).  Det er umogleg å gjera båe delar!  Start frå "
-"ein redningsdiskett, og reinstallera boot-lastaren frå redningsmiljøet.  Les "
-"del 4 i brukarhandboka for meir informasjon."
-
-#: libparted/arch/gnu.c:385
-#, fuzzy, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Partisjonstabellen på %s (%s).  Det tyder at Hurd ikkje veit noko om "
-"endringar du har gjort.  Datamaskinen må startast på nytt før du gjer noko "
-"med %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Du må installera boot-lastaren på nytt før neste omstart.  Les del 4 i "
-"brukarhandboka for meir informasjon."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "Fekk feilmeldinga «%s» ved forsøk på å synkronisera %s til disk"
@@ -791,15 +740,15 @@ msgstr "metadata"
 msgid "free"
 msgstr "ledig"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "utviding"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logisk"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primær"
 
@@ -877,64 +826,73 @@ msgstr ""
 msgid "esp"
 msgstr "Ja"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "boot"
+
+#: libparted/disk.c:2419
 #, fuzzy, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Ukjent partisjonsflagg, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Informasjon"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Åtvaring"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Feil"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Kritisk"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Programfeil"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Ikkje laga"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Rett opp"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Ja"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Nei"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Prøv igjen"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Oversjå"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Avbryt"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -943,36 +901,36 @@ msgid ""
 "containing at least the version (%s) and the following message:  "
 msgstr ""
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 #, fuzzy
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "Støtte for å laga %s-filsystem er ikkje lagt inn enno."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 #, fuzzy
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "Støtte for å laga %s-filsystem er ikkje lagt inn enno."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 #, fuzzy
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr "Støtte for å laga %s-filsystem er ikkje lagt inn enno."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 #, fuzzy
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr "Støtte for å laga %s-filsystem er ikkje lagt inn enno."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 #, fuzzy
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
 msgstr "Støtte for å laga %s-filsystem er ikkje lagt inn enno."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 #, fuzzy
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr "Støtte for å laga %s-filsystem er ikkje lagt inn enno."
@@ -1061,11 +1019,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Kunne ikkje oppfylla alle dei tekniske krava til partisjonen."
@@ -1082,44 +1040,44 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Forventa eit partisjonsnummer."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 #, fuzzy
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Kunne ikkje tilordna plass i BSD-disklabel."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 #, fuzzy
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Kunne ikkje tilordna plass i BSD-disklabel."
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, fuzzy, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Ugyldig partisjonstabell på %s - feil signatur %x"
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Ugyldig partisjonstabell - rekursiv partisjon på %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr ""
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "Ugyldig partisjonstabell - rekursiv partisjon på %s."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 #, fuzzy
 msgid "cannot create any more partitions"
 msgstr "Kan ikkje laga fleire partisjonar."
@@ -1268,12 +1226,12 @@ msgstr ""
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 #, fuzzy
 msgid "device is too small for GPT"
 msgstr "Filsystemet er for lite for ext2."
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, fuzzy, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1283,7 +1241,7 @@ msgstr ""
 "Parted kan kjenna att.  Ver venleg å seia i frå med ein epost til <bug-"
 "parted@gnu.org> (skriv helst på engelsk)"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1291,7 +1249,7 @@ msgid ""
 "setting? "
 msgstr ""
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 #, fuzzy
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
@@ -1302,7 +1260,7 @@ msgstr ""
 "dette rettast ved å flytta kopien til slutten av disken (og sletta den gamle "
 "kopien)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 #, fuzzy
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
@@ -1311,7 +1269,7 @@ msgstr ""
 "Både originalen og kopien av GPT-tabellen er korrupt.  Prøv å laga ein ny "
 "tom tabell, og bruk Parteds redningsmodus til å finna partisjonane."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 #, fuzzy
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
@@ -1320,7 +1278,7 @@ msgstr ""
 "GPT-tabellen er korrupt, men sikringskopien ser frisk ut, så kopien vert "
 "brukt."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 #, fuzzy
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
@@ -1329,11 +1287,11 @@ msgstr ""
 "GPT-tabellen er korrupt, men sikringskopien ser frisk ut, så kopien vert "
 "brukt."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr ""
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 #, fuzzy
 msgid "failed to translate partition name"
 msgstr "Kva partisjonsnummer er målet?"
@@ -1368,19 +1326,14 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Dataregionen startar ikkje på starten av partisjonen"
 
 #: libparted/labels/mac.c:572
-#, fuzzy
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Bootregionen startar ikkje på starten av partisjonen"
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Bootregionen fyller ikkje heile partisjonen."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Dataregionen fyller ikkje heile partisjonen."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
@@ -1388,7 +1341,7 @@ msgstr ""
 "Merkeleg blokkstorleik på einingsdeskriptor: %d oktettar er ikkje deleleg på "
 "512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1397,11 +1350,11 @@ msgstr ""
 "Drivardeskriptoren seier at den fysiske blokkstorleiken er %d oktettar, men "
 "Linux seier at han er %d oktettar."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Fann ikkje noko gyldig partisjonskart."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, fuzzy, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1410,12 +1363,12 @@ msgstr ""
 "Motstridande storleikar i partisjonskartet!  Oppføring 1 seier at han er %d, "
 "men oppføring %d seier at han er %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 #, fuzzy
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Merkeleg - to partisjonskartoppføringar!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1423,17 +1376,17 @@ msgstr ""
 "Endrar du namnet på ein rot- eller swap-partisjon, vil ikkje Linux lenger "
 "kjenna han igjen."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 #, fuzzy
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "Kan ikkje leggja til ein partisjon til - partisjonskartet er for lite!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, fuzzy, c-format
 msgid "Invalid partition table on %s."
 msgstr "Ugyldig partisjonstabell på %s"
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, fuzzy, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1442,7 +1395,7 @@ msgstr ""
 "Partisjon %d ligg ikkje nøyaktig på grensa mellom to sylinderar.  Det "
 "manglar støtte for dette."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Kan ikkje leggja til ein partisjon til."
 
@@ -1615,39 +1568,39 @@ msgstr ""
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr ""
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Tom for minne."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr ""
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr ""
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr ""
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr ""
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr ""
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr ""
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr ""
 
@@ -1657,18 +1610,18 @@ msgstr ""
 msgid "%s : Failed to allocate partition block\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1694,22 +1647,22 @@ msgstr ""
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s under skriving til %s"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr ""
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 #, fuzzy
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
@@ -1805,7 +1758,7 @@ msgid ""
 "geometry."
 msgstr ""
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1832,21 +1785,21 @@ msgstr ""
 "Allokeringseininga sitt startdelta er %d, og det er ikkje eit multiplum av "
 "storleiken %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Feil i katalogoppføringa for %s: første allokeringseininga markerer slutt på "
 "fila."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
 msgstr ""
 "Feil på FAT: endelaus kjede for %s.  Du bør køyre dosfsck eller scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, fuzzy, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1855,7 +1808,7 @@ msgstr ""
 "Feil på FAT: allokeringseining %d er utanfor filsystemet i kjeda for %s.  Du "
 "bør køyra dosfsck eller scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1864,26 +1817,17 @@ msgstr ""
 "Feil på FAT: allokeringseining %d er krysslenka for %s.  Du bør køyre "
 "dosfsck eller scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s er %d KiB, men har %d allokeringseiningar (%d KiB)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"Fila %s er klassifisert som ei systemfil.  Å flytta denne fila kan føra til "
-"at nokon program sluttar å fungera."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, fuzzy, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Partisjonen er for liten eller stor for eit %s-filsystem"
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1891,11 +1835,11 @@ msgstr ""
 "FAT-ane stemmer ikkje overeins.  Viss du ikkje veit kva dette tyder, vel "
 "avbryt, køyr scandisk på filsystem, og kom attende."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Der er ingen moglege konfigurasjonar for denne FAT-typen."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1906,14 +1850,14 @@ msgstr ""
 "er %d KiB (%d KiB er forventa), talet på allokeringseiningar er %d (%d er "
 "forventa), FAT-ane er på %d sektorar (%d er forventa)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr ""
 "Filsystemet rapporterer %d allokeringseiningar med ledig plass, ikkje %d."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 #, fuzzy
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
@@ -1922,16 +1866,16 @@ msgstr ""
 "Der er ikkje plass i toppkatalogen til alle filene.  Vel anten avbryt, eller "
 "oversjå feilen for å misse alle filene."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Feil ved skriving til toppkatalogen."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 #, fuzzy
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "Viss du let filsystemet vera FAT16, vil du ikkje ha nokon problem."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1942,13 +1886,13 @@ msgstr ""
 "du vil gjera dette, bør du lesa Parted-manualen (eller manualen som høyrer "
 "til distribusjonen din)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
 msgstr "Viss du let filsystemet vera FAT32, vil du ikkje få nokon nye problem."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1962,38 +1906,38 @@ msgstr ""
 "til distribusjonen din).  FAT32 er også uleseleg for MS-DOS, MS Windows 95a "
 "og NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Ønskjer du å bruka FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr "Filsystemet kan kun få denne storleiken ved å konvertera til FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr "Filsystemet kan kun få denne storleiken ved å konvertera til FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 #, fuzzy
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted kan ikkje endra storleiken til dette.  Vi arbeider med saka!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2002,42 +1946,42 @@ msgstr ""
 "FAT %d media %x stemmer ikkje overeins med bootsektorens media %x.  Du bør "
 "sannsynlegvis køyra scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, fuzzy, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: allokeringseining %ld utanfor filsystemet"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, fuzzy, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: allokeringseining %ld utanfor filsystemet"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: ingen ledige allokeringseiningar"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Kan ikkje kjenna igjen noko filsystem."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, fuzzy, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "Støtte for å endra storleik på %s-filsystem er ikkje lagt inn enno."
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 #, fuzzy
 msgid "The file system is bigger than its volume!"
 msgstr "Filsystemet er større enn volumet det ligg på!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr ""
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr ""
 
@@ -2095,90 +2039,90 @@ msgstr ""
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "krympar"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 #, fuzzy
 msgid "writing HFS Master Directory Block"
 msgstr "Feil ved skriving til toppkatalogen."
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 #, fuzzy
 msgid "Error while writing the allocation file."
 msgstr "Feil ved skriving til toppkatalogen."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 #, fuzzy
 msgid "shrinking HFS wrapper"
 msgstr "krympar"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2249,73 +2193,73 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 #, fuzzy
 msgid "Could not cache the file system in memory."
 msgstr "Kan ikkje kjenna igjen noko filsystem."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "vis denne hjelpeteksten"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr ""
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr ""
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "spør aldri brukaren"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "vis programversjon"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 #, fuzzy
 msgid "alignment for new partitions"
 msgstr "Kan ikkje kopiera utvidingspartisjonar."
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 #, fuzzy
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
@@ -2325,32 +2269,32 @@ msgstr ""
 "primærpartisjonar nummerert 1-4, og logiske partisjonar går frå 5 og "
 "oppover.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "LABEL-TYPE er ein av: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "FLAGG er eitt av: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 #, fuzzy
 msgid "UNIT is one of: "
 msgstr "FLAGG er eitt av: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr ""
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "PART-TYPE er ein av: primær, logisk, utviding\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "FS-TYPE er ein av: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 #, fuzzy
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
@@ -2359,25 +2303,25 @@ msgid ""
 msgstr ""
 "START og SLUTT er i mebibytes.  Negative verdiar tel frå slutten av disken.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
 msgstr ""
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "STATUS er ein av: av, på\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "EINING er vanlegvis /dev/hda eller /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NAMN er eit valfritt ord\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 #, fuzzy
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
@@ -2400,155 +2344,155 @@ msgstr ""
 "eller BRUK TIL NOKO FORMÅL.  Sjå GNU General Public License for detaljar.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(tid att %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, fuzzy, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "Partisjonen %s er i bruk.  Endringar no kan føre til alvorleg datatap."
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Partisjon(ane) på %s er i bruk."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
 "will be lost. Do you want to continue?"
 msgstr ""
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Ny disklabel-type?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Partisjonstype?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Partisjonsnamn?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Filsystemtype?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Start?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Slutt?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
 "The closest location we can manage is %s to %s (sectors %llu..%llu).%s"
 msgstr ""
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
 msgstr ""
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "Ein %s-disklabel støttar ikkje utvidingspartisjonar."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Partisjonsnummer?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr ""
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, fuzzy, c-format
 msgid "Disk %s: %s\n"
 msgstr "Disklabel-type: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr ""
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, fuzzy, c-format
 msgid "Partition Table: %s\n"
 msgstr "Partisjonsnamn?"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, fuzzy, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Disklabel-type: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr ""
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 #, fuzzy
 msgid "Start"
 msgstr "Start?"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 #, fuzzy
 msgid "End"
 msgstr "Slutt?"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr ""
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr ""
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 #, fuzzy
 msgid "File system"
 msgstr "Filsystem?"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr ""
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Flagg"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr ""
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, fuzzy, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2557,66 +2501,66 @@ msgstr ""
 "Ein %s %s-partisjon vart funnen på %.3f MiB -> %.3f MiB.  Ønskjer du å "
 "leggja han til i partisjonstabellen?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "leitar etter filsystem"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr ""
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Ny eining?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr ""
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr ""
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, c-format
 msgid "%d not aligned: %s\n"
 msgstr ""
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 #, fuzzy
 msgid "Flag to Invert?"
 msgstr "Flagg som skal endrast?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Ny status?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr ""
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 #, fuzzy
 msgid "align-check"
 msgstr "check"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
 msgstr ""
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 #, fuzzy
 msgid ""
 "help [COMMAND]                           print general help, or help on "
@@ -2624,31 +2568,31 @@ msgid ""
 msgstr ""
 "help [KOMMANDO]               gjev generell hjelp, eller hjelp om KOMMANDO"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr ""
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 #, fuzzy
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
 msgstr "mklabel LABEL-TYPE            lag ny disklabel (partisjonstabell)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 #, fuzzy
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart PART-TYPE [FS-TYPE] START SLUTT    lag ein partisjon"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 #, fuzzy
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
@@ -2657,27 +2601,27 @@ msgstr ""
 "mkpart lagar ein partisjon utan å laga eit nytt filsystem der.  Du kan "
 "spesifisera FS-TYPE for å setja ein passande partisjons-id.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 #, fuzzy
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr "name NR NAMN                  gje partisjonen NR namnet NAMN"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
 "partition"
 msgstr ""
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 #, fuzzy
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
@@ -2687,41 +2631,41 @@ msgstr ""
 "partisjonsnummer er oppgjeve, vil meir detaljert informasjon om\n"
 "partisjonen verta vist.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
 msgstr ""
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 #, fuzzy
 msgid "quit                                     exit program"
 msgstr "quit                          avslutt programmet"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 #, fuzzy
 msgid ""
 "rescue START END                         rescue a lost partition near START "
@@ -2729,129 +2673,137 @@ msgid ""
 msgstr ""
 "rescue START SLUTT            redd tapte partisjonar nær START og SLUTT"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr ""
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 #, fuzzy
 msgid "resizepart"
 msgstr "resize"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 #, fuzzy
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "rm NR                         slett partisjonen NR"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 #, fuzzy
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm NR                         slett partisjonen NR"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 #, fuzzy
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select EINING                 vel eininga du vil gjera endringar på"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr ""
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr ""
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
 msgstr ""
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 #, fuzzy
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr "set NR FLAGG STATUS           endra eit flagg på partisjonen NR"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr ""
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
 msgstr ""
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr ""
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 #, fuzzy
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr "quit                          avslutt programmet"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr ""
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
 msgstr ""
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
 msgstr ""
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Ingen diskar funne"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr ""
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Du må installera boot-lastaren på nytt før neste omstart.  Les del 4 i "
+"brukarhandboka for meir informasjon."
+
+#: parted/parted.c:2341
 #, fuzzy
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Gløym ikkje å oppdatera /etc/fstab, om naudsynt.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 #, fuzzy
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
@@ -2863,7 +2815,7 @@ msgstr ""
 "Utfør KOMMANDO med PARAMETER på EINING.  Dersom ingen KOMMANDO er gjeven,\n"
 "køyrer GNU Parted i interaktiv modus.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2897,216 +2849,217 @@ msgid ""
 "consider important.\n"
 msgstr ""
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
 msgstr ""
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
 msgstr ""
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
 msgstr ""
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
 msgstr ""
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
 msgstr ""
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
 msgstr ""
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
 msgstr ""
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
 msgstr ""
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
 msgstr ""
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
 msgstr ""
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
 msgstr ""
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
 msgstr ""
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
 msgstr ""
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
 msgstr ""
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
 msgstr ""
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
 msgstr ""
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
 msgstr ""
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
 msgstr ""
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
 msgstr ""
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
 msgstr ""
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, fuzzy, c-format
 msgid "invalid token: %s"
 msgstr "Ugyldig partisjonstabell på %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Forventa eit partisjonsnummer."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Partisjonen finst ikkje."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Forventa ei filsystemtype."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Filsystemtypen «%s» er ukjend."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Forventa ein disklabel-type."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Kan ikkje laga fleire partisjonar."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Forventa ein partisjonstype."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "på"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "av"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr ""
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr ""
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "FLAGG:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "KOMMANDOar:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
 "Report bugs to %s\n"
 msgstr ""
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Brukar %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr ""
 
+#, c-format
 #~ msgid ""
 #~ "The sector size on %s is %d bytes.  Parted is known not to work properly "
 #~ "with drives with sector sizes other than %d bytes"
@@ -3114,6 +3067,7 @@ msgstr ""
 #~ "Sektorane på %s er %d oktettar store.  Parted fungerer berre skikkeleg på "
 #~ "diskar som har ein sektorstorleik på %d oktettar"
 
+#, c-format
 #~ msgid "Device %s has dodgey geometry."
 #~ msgstr "Eininga %s har tvilsam geometri."
 
@@ -3123,9 +3077,11 @@ msgstr ""
 #~ msgid "SCSI"
 #~ msgstr "SCSI"
 
+#, c-format
 #~ msgid "Device %s is neither a SCSI nor IDE drive."
 #~ msgstr "Eininga %s er korkje ein SCSI- eller IDE-disk."
 
+#, c-format
 #~ msgid "Error reading %s (%s) to determine if partition is mounted."
 #~ msgstr "Feil ved lesing av %s (%s) for å avgjera om partisjonen er montert."
 
@@ -3138,6 +3094,7 @@ msgstr ""
 #~ "etc/mtab.  Forsikra deg om at du ikkje prøver å endra på monterte "
 #~ "filsystem (sjølv om dei er montert med kun lesetilgang)"
 
+#, c-format
 #~ msgid ""
 #~ "The kernel was unable to re-read the partition table on %s (%s).  This "
 #~ "means Linux won't know anything nothing about the modifications you made "
@@ -3148,6 +3105,32 @@ msgstr ""
 #~ "tyder at Linux ikkje veit om endringane du har gjort.  Du må ta omstart "
 #~ "på maskinen din før du gjer noko med %s."
 
+#~ msgid ""
+#~ "The partition table was unable to be reread, as such, you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Kjerna klarte ikkje å lesa partisjonstabellen på nytt, så du må starta om "
+#~ "maskina før du kan montera endra partisjonar.  Du må også installera boot-"
+#~ "lastaren på nytt før omstarten (som kanskje krever at du monterer "
+#~ "partisjonane du har endra).  Det er umogleg å gjera båe delar!  Start frå "
+#~ "ein redningsdiskett, og reinstallera boot-lastaren frå redningsmiljøet.  "
+#~ "Les del 4 i brukarhandboka for meir informasjon."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s (%s).  This means the Hurd knows nothing about "
+#~ "any modifications you made.  You should reboot your computer before doing "
+#~ "anything with %s."
+#~ msgstr ""
+#~ "Partisjonstabellen på %s (%s).  Det tyder at Hurd ikkje veit noko om "
+#~ "endringar du har gjort.  Datamaskinen må startast på nytt før du gjer "
+#~ "noko med %s."
+
+#, c-format
 #~ msgid ""
 #~ "The partition table on %s is inconsistent.  There are many reasons why "
 #~ "this might be the case.  However, the most likely reason is that Linux "
@@ -3168,6 +3151,7 @@ msgstr ""
 #~ "foreslår er rett, kan du velja Ignorer for å halda fram (og fiksa Linux "
 #~ "seinare).  Viss ikkje, vel Avbryt (og fiks Linux og/eller BIOS-en no)."
 
+#, c-format
 #~ msgid ""
 #~ "The partition table on %s is inconsistent.  There are many reasons why "
 #~ "this might be the case.  Often, the reason is that Linux detected the "
@@ -3193,6 +3177,7 @@ msgstr ""
 #~ "feil BIOS-geometri.  Det er trygt å oversjå denne feilen, men du kan kome "
 #~ "bort i problem med boot-lastaren (som kan rettast opp)."
 
+#, c-format
 #~ msgid ""
 #~ "%s contains GPT signatures, indicating that it has a GPT table.  However, "
 #~ "it does not have a valid fake msdos partition table, as it should.  "
@@ -3206,9 +3191,14 @@ msgstr ""
 #~ "partisjonstabellar.  Eller kanskje du har sletta GPT-tabellen og brukar "
 #~ "no ein MSDOS-partisjonstabell.  Er dette ein GPT-partisjonstabell?"
 
+#~ msgid "The boot region doesn't start at the start of the partition"
+#~ msgstr "Bootregionen startar ikkje på starten av partisjonen"
+
+#, c-format
 #~ msgid "Support for opening %s file systems is not implemented yet."
 #~ msgstr "Støtte for å opna %s-filsystem er ikkje lagt inn enno."
 
+#, c-format
 #~ msgid "Support for checking %s file systems is not implemented yet."
 #~ msgstr "Støtte for å sjekka %s-filsystem for feil er ikkje lagt inn enno."
 
@@ -3221,6 +3211,7 @@ msgstr ""
 #~ msgid "Can't copy onto an overlapping partition."
 #~ msgstr "Kan ikkje kopiera inn i ein overlappande partisjon."
 
+#, c-format
 #~ msgid ""
 #~ "Direct support for copying file systems is not yet implemented for %s.  "
 #~ "However, support for resizing implemented.  Therefore, the file system "
@@ -3233,9 +3224,11 @@ msgstr ""
 #~ "partisjonen er minst like stor som den gamle.  Du må altså anten krympa "
 #~ "partisjonen du prøver å kopiera, eller kopiera til ein større partisjon."
 
+#, c-format
 #~ msgid "Support for copying %s file systems is not implemented yet."
 #~ msgstr "Støtte for å kopiera %s-filsystem er ikkje lagt inn enno."
 
+#, c-format
 #~ msgid ""
 #~ "A bug has been detected in GNU parted.  Please email a bug report to bug-"
 #~ "parted@gnu.org containing the version (%s) and the following message:"
@@ -3244,6 +3237,7 @@ msgstr ""
 #~ "til bug-parted@gnu.org der du oppgjev versjonsnummeret (%s) og fylgjande "
 #~ "melding:"
 
+#, c-format
 #~ msgid "Attempt to read sectors %ld-%ld outside of partition on %s"
 #~ msgstr "Prøvde å lesa sektorane %ld-%ld utanfor partisjonen på %s"
 
@@ -3297,11 +3291,13 @@ msgstr ""
 #~ msgid "adding groups"
 #~ msgstr "legg til grupper"
 
+#, c-format
 #~ msgid "Your filesystem is too occupied to resize it to %i blocks. Sorry."
 #~ msgstr ""
 #~ "Filsystemet er for fullt til at ein kan endra storleiken til %i blokker.  "
 #~ "Beklagar."
 
+#, c-format
 #~ msgid ""
 #~ "Your filesystem has too much occupied inodes to resize it to %i blocks. "
 #~ "Sorry."
@@ -3317,9 +3313,11 @@ msgstr ""
 #~ msgid "Cross-linked blocks found! better go run e2fsck first!"
 #~ msgstr "Krysslenka blokker funne!  Køyr e2fsck først!"
 
+#, c-format
 #~ msgid "Block %i has no reference?  Weird"
 #~ msgstr "Blokk %i har ingen referansar til seg?  Rart"
 
+#, c-format
 #~ msgid "Block %i shouldn't have been marked!"
 #~ msgstr "Blokk %i burde ikkje ha vore merka!"
 
@@ -3342,6 +3340,7 @@ msgstr ""
 #~ msgid "File system has an invalid signature for a FAT file systems."
 #~ msgstr "Filsystemet har ein ugyldig signatur til å vera eit FAT-filsystem."
 
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3349,6 +3348,14 @@ msgstr ""
 #~ "Dette filsystemet har ein logisk sektorstorleik på %d.  GNU Parted "
 #~ "fungerer berre skikkeleg når sektorstorleiken er 512 oktettar."
 
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "Fila %s er klassifisert som ei systemfil.  Å flytta denne fila kan føra "
+#~ "til at nokon program sluttar å fungera."
+
 #~ msgid "Too many bad pages."
 #~ msgstr "For mange dårlege sider."
 
@@ -3358,6 +3365,7 @@ msgstr ""
 #~ msgid "Source partition number?"
 #~ msgstr "Kva partisjonsnummer skal vera kjelda?"
 
+#, c-format
 #~ msgid ""
 #~ "You requested to create a partition at %.3f-%.3fMb. The closest Parted "
 #~ "can manage is %.3f-%.3fMb."
@@ -3376,6 +3384,7 @@ msgstr ""
 #~ "Kan ikkje flytta ein partisjon til seg sjølv.  Kanskje du vil prøva å "
 #~ "endra storleik?"
 
+#, c-format
 #~ msgid ""
 #~ "You requested to move the partition to %.3f-%.3fMb. The closest Parted "
 #~ "can manage is %.3f-%.3fMb."
@@ -3383,24 +3392,30 @@ msgstr ""
 #~ "Du bad om å flytta partisjonen til %.3f-%.3f MiB.  Det nærmaste Parted "
 #~ "kan klara er %.3f-%.3f MiB."
 
+#, c-format
 #~ msgid "Minor: %d\n"
 #~ msgstr "Nummer: %d\n"
 
 #~ msgid "Flags: "
 #~ msgstr "Flagg: "
 
+#, c-format
 #~ msgid "File System: %s\n"
 #~ msgstr "Filsystem: %s\n"
 
+#, c-format
 #~ msgid "Size:         %10.3fMb (%d%%)\n"
 #~ msgstr "Storleik:         %10.3fMiB (%d%%)\n"
 
+#, c-format
 #~ msgid "Minimum size: %10.3fMb (%d%%)\n"
 #~ msgstr "Minste storleik:  %10.3fMiB (%d%%)\n"
 
+#, c-format
 #~ msgid "Maximum size: %10.3fMb (%d%%)\n"
 #~ msgstr "Største storleik: %10.3fMiB (%d%%)\n"
 
+#, c-format
 #~ msgid "Disk geometry for %s: 0.000-%.3f megabytes\n"
 #~ msgstr "Diskgeometri for %s: 0.000-%.3f mebibytes\n"
 
@@ -3416,6 +3431,7 @@ msgstr ""
 #~ msgid "Name                  "
 #~ msgstr "Namn                  "
 
+#, c-format
 #~ msgid ""
 #~ "You requested to resize the partition to %.3f-%.3fMb. The closest Parted "
 #~ "can manage is %.3f-%.3fMb."
@@ -3472,6 +3488,7 @@ msgstr ""
 #~ "resize NR START SLUTT         endra storleik på filsystemet på "
 #~ "partisjonen NR"
 
+#, c-format
 #~ msgid ""
 #~ "You found a bug in GNU Parted.  Please email a bug report to bug-"
 #~ "parted@gnu.org containing the version (%s), and the following message:\n"
@@ -3492,6 +3509,7 @@ msgstr ""
 #~ "formeining om diskgeomtetri før du endrar storleik på nokon av FAT-"
 #~ "partisjonane."
 
+#, c-format
 #~ msgid ""
 #~ "The operating system thinks the geometry on %s is %d/%d/%d.  Therefore, "
 #~ "cylinder 1024 ends at %.3fM.%s"
@@ -3499,5 +3517,6 @@ msgstr ""
 #~ "Operativsystemet trur geometrien på %s er %d/%d/%d, altså endar sylinder "
 #~ "1024 på %.3f MiB.%s"
 
+#, c-format
 #~ msgid "The operating system thinks the geometry on %s is %d/%d/%d.%s"
 #~ msgstr "Operativsystemet meiner at geometrien til %s er %d/%d/%d.%s"
index 3983597c31491c9f90b15559fe0c131c5b3582e9..a12c0c306e5000f8963dd824dd7db9cb10c04845 100644 (file)
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: GNU parted 3.3\n"
+"Project-Id-Version: GNU parted 3.4\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -95,11 +95,11 @@ msgstr ""
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr ""
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr ""
 
@@ -340,78 +340,63 @@ msgstr ""
 msgid "memory exhausted"
 msgstr ""
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr ""
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr ""
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr ""
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr ""
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr ""
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
 msgstr ""
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr ""
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr ""
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr ""
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr ""
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr ""
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr ""
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -421,13 +406,13 @@ msgid ""
 "  -v, --version    output version information and exit\n"
 msgstr ""
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
 msgstr ""
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -443,31 +428,7 @@ msgstr ""
 msgid "Unable to probe store."
 msgstr ""
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr ""
@@ -759,15 +720,15 @@ msgstr ""
 msgid "free"
 msgstr ""
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr ""
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr ""
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr ""
 
@@ -843,64 +804,72 @@ msgstr ""
 msgid "esp"
 msgstr ""
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+msgid "bls_boot"
+msgstr ""
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr ""
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr ""
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr ""
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr ""
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr ""
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr ""
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr ""
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr ""
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr ""
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr ""
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr ""
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr ""
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr ""
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr ""
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -909,31 +878,31 @@ msgid ""
 "containing at least the version (%s) and the following message:  "
 msgstr ""
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr ""
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr ""
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
 msgstr ""
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 
@@ -1020,11 +989,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr ""
@@ -1040,41 +1009,41 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr ""
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr ""
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr ""
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr ""
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr ""
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr ""
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr ""
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr ""
 
@@ -1212,18 +1181,18 @@ msgstr ""
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr ""
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
 "what Parted can recognise.  Please report this!"
 msgstr ""
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1231,35 +1200,35 @@ msgid ""
 "setting? "
 msgstr ""
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
 msgstr ""
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
 msgstr ""
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
 msgstr ""
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
 msgstr ""
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr ""
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr ""
 
@@ -1292,68 +1261,64 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr ""
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr ""
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr ""
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr ""
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr ""
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
 "says it is %d bytes."
 msgstr ""
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr ""
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
 "says it is %d!"
 msgstr ""
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr ""
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
 msgstr ""
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr ""
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr ""
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
 "unsupported."
 msgstr ""
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr ""
 
@@ -1518,39 +1483,39 @@ msgstr ""
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr ""
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr ""
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr ""
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr ""
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr ""
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr ""
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr ""
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr ""
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr ""
 
@@ -1560,18 +1525,18 @@ msgstr ""
 msgid "%s : Failed to allocate partition block\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1597,22 +1562,22 @@ msgstr ""
 msgid "%s : Couldn't write block %d\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr ""
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1694,7 +1659,7 @@ msgid ""
 "geometry."
 msgstr ""
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1714,59 +1679,52 @@ msgid ""
 "Cluster start delta = %d, which is not a multiple of the cluster size %d."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
 "dosfsck or scandisk."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
 "scandisk."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr ""
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
 msgstr ""
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr ""
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1774,40 +1732,40 @@ msgid ""
 "FATs is %d sectors (%d expected)."
 msgstr ""
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
 "should consult the Parted manual (or your distribution's manual)."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1816,77 +1774,77 @@ msgid ""
 "Windows 95a, and MS Windows NT."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
 "probably run scandisk."
 msgstr ""
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr ""
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr ""
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr ""
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr ""
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr ""
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr ""
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr ""
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr ""
 
@@ -1944,87 +1902,87 @@ msgstr ""
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2089,126 +2047,126 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr ""
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr ""
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr ""
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr ""
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr ""
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr ""
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
 msgstr ""
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr ""
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr ""
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr ""
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr ""
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr ""
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr ""
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
 "sector.\n"
 msgstr ""
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
 msgstr ""
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr ""
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr ""
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr ""
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2220,429 +2178,435 @@ msgid ""
 "\n"
 msgstr ""
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr ""
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr ""
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
 "will be lost. Do you want to continue?"
 msgstr ""
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr ""
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr ""
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr ""
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr ""
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr ""
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr ""
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
 "The closest location we can manage is %s to %s (sectors %llu..%llu).%s"
 msgstr ""
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
 msgstr ""
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, c-format
 msgid "%s disk labels do not support partition name."
 msgstr ""
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr ""
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr ""
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr ""
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr ""
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr ""
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr ""
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr ""
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr ""
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr ""
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr ""
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr ""
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr ""
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr ""
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr ""
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr ""
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
 "partition table?"
 msgstr ""
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr ""
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr ""
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr ""
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr ""
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr ""
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, c-format
 msgid "%d not aligned: %s\n"
 msgstr ""
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr ""
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr ""
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr ""
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr ""
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
 msgstr ""
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr ""
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
 msgstr ""
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr ""
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr ""
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
 msgstr ""
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr ""
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr ""
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
 msgstr ""
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr ""
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr ""
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
 "partition"
 msgstr ""
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
 msgstr ""
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
 msgstr ""
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr ""
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr ""
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr ""
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
 msgstr ""
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr ""
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr ""
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr ""
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr ""
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr ""
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr ""
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr ""
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr ""
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr ""
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr ""
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
 msgstr ""
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr ""
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr ""
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
 msgstr ""
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr ""
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr ""
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
 msgstr ""
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
 msgstr ""
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr ""
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr ""
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr ""
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2650,7 +2614,7 @@ msgid ""
 "interactive mode.\n"
 msgstr ""
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2684,212 +2648,212 @@ msgid ""
 "consider important.\n"
 msgstr ""
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
 msgstr ""
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
 msgstr ""
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
 msgstr ""
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
 msgstr ""
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
 msgstr ""
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
 msgstr ""
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
 msgstr ""
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
 msgstr ""
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
 msgstr ""
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
 msgstr ""
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
 msgstr ""
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
 msgstr ""
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
 msgstr ""
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
 msgstr ""
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
 msgstr ""
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
 msgstr ""
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
 msgstr ""
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
 msgstr ""
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
 msgstr ""
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
 msgstr ""
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr ""
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr ""
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr ""
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr ""
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr ""
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr ""
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr ""
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr ""
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr ""
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr ""
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr ""
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr ""
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr ""
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr ""
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
 "Report bugs to %s\n"
 msgstr ""
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr ""
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr ""
index 655777568335193f4e7ea119364fd4bb3a4f48b7..ce6307f989006cbb02e47e888f29a7a4d2ded8bd 100644 (file)
Binary files a/po/pl.gmo and b/po/pl.gmo differ
index 7e50dfe38d620dae532fc984837858a001d9fa2c..a2ea90afed774777416419649acae06a8a320251 100644 (file)
--- a/po/pl.po
+++ b/po/pl.po
@@ -1,15 +1,15 @@
 # Polish translations for GNU Parted package.
-# Copyright (C) 2003, 2005, 2006, 2007, 2009, 2010, 2011, 2012, 2014 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2005, 2006, 2007, 2009, 2010, 2011, 2012, 2014, 2021 Free Software Foundation, Inc.
 # This file is distributed under the same license as the parted package.
 # Wojciech Polak <polak@gnu.org>, 2003, 2005, 2006.
-# Jakub Bogusz <qboosh@pld-linux.org>, 2006-2012.
+# Jakub Bogusz <qboosh@pld-linux.org>, 2006-2021.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: parted 3.1.90\n"
+"Project-Id-Version: parted 3.3.52\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
-"PO-Revision-Date: 2014-07-03 21:29+0200\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
+"PO-Revision-Date: 2021-01-20 20:40+0100\n"
 "Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
 "Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
 "Language: pl\n"
@@ -43,29 +43,29 @@ msgid "Unknown system error"
 msgstr "Nieznany błąd systemowy"
 
 #: lib/getopt.c:278
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' is ambiguous\n"
-msgstr "%s: opcja '-W %s' jest niejednoznaczna\n"
+msgstr "%s: opcja '%s%s' jest niejednoznaczna\n"
 
 #: lib/getopt.c:284
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' is ambiguous; possibilities:"
-msgstr "%s: opcja '%s' jest niejednoznaczna; możliwości:"
+msgstr "%s: opcja '%s%s' jest niejednoznaczna; możliwości:"
 
 #: lib/getopt.c:319
-#, fuzzy, c-format
+#, c-format
 msgid "%s: unrecognized option '%s%s'\n"
-msgstr "%s: nieznana opcja '%c%s'\n"
+msgstr "%s: nieznana opcja '%s%s'\n"
 
 #: lib/getopt.c:345
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' doesn't allow an argument\n"
-msgstr "%s: opcja '%c%s' nie może mieć argumentów\n"
+msgstr "%s: opcja '%s%s' nie może mieć argumentów\n"
 
 #: lib/getopt.c:360
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' requires an argument\n"
-msgstr "%s: opcja '--%s' musi mieć argument\n"
+msgstr "%s: opcja '%s%s' musi mieć argument\n"
 
 #: lib/getopt.c:621
 #, c-format
@@ -98,11 +98,11 @@ msgstr "%s: opcja musi mieć argument -- '%c'\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "`"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "'"
 
@@ -135,9 +135,8 @@ msgid "Invalid back reference"
 msgstr "Błędne odniesienie wstecz"
 
 #: lib/regcomp.c:156
-#, fuzzy
 msgid "Unmatched [, [^, [:, [., or [="
-msgstr "Niesparowane [ lub [^"
+msgstr "Niesparowane [, [^, [:, [. lub [="
 
 #: lib/regcomp.c:159
 msgid "Unmatched ( or \\("
@@ -218,18 +217,16 @@ msgstr "(C)"
 
 #. TRANSLATORS: The %s placeholder is the web address of the GPL license.
 #: lib/version-etc.c:88
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "License GPLv3+: GNU GPL version 3 or later <%s>.\n"
 "This is free software: you are free to change and redistribute it.\n"
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
-"\n"
 "Licencja GPLv3+: GNU GPL w wersji 3 lub późniejszej:\n"
-"<http://gnu.org/licenses/gpl.html>\n"
+"<%s>\n"
 "Ten program jest wolnodostępny: można go modyfikować i rozprowadzać.\n"
 "NIE MA ŻADNEJ GWARANCJI w zakresie dopuszczalnym przez prawo.\n"
-"\n"
 
 #. TRANSLATORS: %s denotes an author name.
 #: lib/version-etc.c:105
@@ -344,10 +341,9 @@ msgstr ""
 #. "Report translation bugs to <...>\n" with the address for translation
 #. bugs (typically your translation team's web or email address).
 #: lib/version-etc.c:249
-#, fuzzy, c-format
+#, c-format
 msgid "Report bugs to: %s\n"
 msgstr ""
-"\n"
 "Prosimy zgłaszać błędy na adres <%s>.\n"
 "Błędy w tłumaczeniu prosimy zgłaszać na adres: <translation-team-pl@lists."
 "sourceforge.net>.\n"
@@ -363,42 +359,25 @@ msgid "%s home page: <%s>\n"
 msgstr "Strona domowa projektu %s: <%s>\n"
 
 #: lib/version-etc.c:260
-#, fuzzy, c-format
+#, c-format
 msgid "General help using GNU software: <%s>\n"
-msgstr ""
-"Ogólna pomoc przy używaniu oprogramowania GNU: <http://www.gnu.org/gethelp/"
-">.\n"
+msgstr "Ogólna pomoc przy używaniu oprogramowania GNU: <%s>.\n"
 
 #: lib/xalloc-die.c:34
 msgid "memory exhausted"
 msgstr "pamięć wyczerpana"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "nieprawidłowy argument %s%s opcji '%s'"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "błędny przyrostek argumentu %s%s opcji '%s'"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "argument %s%s '%s' jest zbyt duży"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Obraz dysku"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Błąd podczas otwierania %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -406,47 +385,47 @@ msgstr ""
 "Nie można otworzyć %s jednocześnie w trybie do odczytu i zapisu (%s). %s "
 "został otwarty tylko w trybie do odczytu."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s podczas ustawiania do odczytu na %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s podczas czytania %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Nie można zapisać do %s, ponieważ otwarte jest tylko do czytania."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s podczas ustawiania do zapisu na %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s podczas zapisu %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Polecenie `%s --help' pozwoli uzyskać więcej informacji.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Składnia: %s [OPCJA] [URZĄDZENIE]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -462,7 +441,7 @@ msgstr ""
 "  -h, --help       wyświetlenie tego opisu i zakończenie\n"
 "  -v, --version    wyświetlenie informacji o wersji i zakończenie\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -470,7 +449,7 @@ msgstr ""
 "\n"
 "Jeśli nie podano URZĄDZENIA, sprawdzane są wszystkie partycje.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -490,45 +469,7 @@ msgstr "Nie można otworzyć %s."
 msgid "Unable to probe store."
 msgstr "Detekcja geometrii nie powiodła się."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Nie można ponownie odczytać tablicy partycji. Należy ponownie uruchomić "
-"komputer przed podłączeniem jakichkolwiek zmodyfikowanych partycji. Należy "
-"także przeinstalować program ładujący (boot loader) zanim uruchomisz "
-"ponownie komputer (co może wymagać podłączenia zmodyfikowanych partycji). "
-"Wykonanie dwóch powyższych rzeczy jest niemożliwe!  A więc pozostaje Ci "
-"uruchomienie dysku/płyty ratunkowej i przeinstalowanie programu ładującego "
-"prosto z dysku ratunkowego. Przeczytaj rozdział 4 dokumentacji programu GNU "
-"Parted, aby uzyskać więcej informacji na ten temat."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Nie można ponownie wczytać tablicy partycji na %s (%s). Oznacza to, że Hurd "
-"nie wie o żadnych zmianach jakie zostały wprowadzone. Należy ponownie "
-"uruchomić komputer zanim wykonasz jakąkolwiek operację na %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Należy przeinstalować program ładujący (boot loader) przed ponownym "
-"uruchomieniem komputera. Przeczytaj rozdział 4 dokumentacji użytkownika "
-"Parted, aby uzyskać więcej informacji."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "Błąd synchronizacji %s do dysku %s"
@@ -618,9 +559,8 @@ msgid "Generic SD/MMC Storage Card"
 msgstr "Karta pamięci SD/MMC"
 
 #: libparted/arch/linux.c:1422
-#, fuzzy
 msgid "NVMe Device"
-msgstr "Nowe urządzenie?"
+msgstr "Urządzenie NVMe"
 
 #: libparted/arch/linux.c:1483
 msgid "DAC960 RAID controller"
@@ -648,7 +588,7 @@ msgstr "Compaq Smart Array"
 
 #: libparted/arch/linux.c:1520
 msgid "NVDIMM Device"
-msgstr ""
+msgstr "Urządzenie NVDIMM"
 
 #: libparted/arch/linux.c:1525
 msgid "ATARAID Controller"
@@ -689,7 +629,7 @@ msgstr "Linuksowa programowa macierz RAID"
 
 #: libparted/arch/linux.c:1588
 msgid "RAM Drive"
-msgstr ""
+msgstr "Ramdysk"
 
 #: libparted/arch/linux.c:1595
 msgid "ped_device_new()  Unsupported device type"
@@ -847,15 +787,15 @@ msgstr "metadane"
 msgid "free"
 msgstr "wolna"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "rozszerzona"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logiczna"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "główna"
 
@@ -931,64 +871,72 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr "chromeos_kernel"
+
+#: libparted/disk.c:2413
+msgid "bls_boot"
+msgstr "bls_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Nieznana flaga partycji: %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Informacja"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Ostrzeżenie"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Błąd"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Fatalny błąd"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Błąd"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Brak implementacji"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Popraw"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Tak"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Nie"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Powtórz"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Zignoruj"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Poniechaj"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -1001,31 +949,31 @@ msgstr ""
 "zgłaszania błędów. Proszę wysłać raport na temat błędu na adres %s, "
 "dołączając przynajmniej numer wersji (%s) oraz następujący komunikat:  "
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr ""
 "Obsługa odczytu etykiet dyskowych AIX jeszcze nie została zaimplementowana."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr ""
 "Obsługa zapisu etykiet dyskowych AIX jeszcze nie została zaimplementowana."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "Obsługa dodawania partycji do etykiet dyskowych AIX jeszcze nie została "
 "zaimplementowana."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "Obsługa powielania partycji na etykietach dyskowych AIX jeszcze nie została "
 "zaimplementowana."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1033,42 +981,47 @@ msgstr ""
 "Obsługa ustawiania rodzaju systemu partycji na etykietach dyskowych AIX "
 "jeszcze nie została zaimplementowana."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 "Obsługa ustawiania flag na etykietach dyskowych AIX jeszcze nie została "
 "zaimplementowana."
 
 #: libparted/labels/atari.c:273
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Can't use Atari partition tables on disks with a sector size not equal to %d "
 "bytes."
 msgstr ""
-"Parted nie może używać systemów plików HFS na dyskach z rozmiarem sektora "
-"innym niż %d bajtów."
+"Nie można używać tablic partycji Atari na dyskach z rozmiarem sektora innym "
+"niż %d bajtów."
 
 #: libparted/labels/atari.c:285
 #, c-format
 msgid "Can't use Atari partition tables on disks with more than %d sectors."
 msgstr ""
+"Nie można używać tablic partycji Atari na dyskach o liczbie sektorów powyżej "
+"%d."
 
 #: libparted/labels/atari.c:398
 msgid ""
 "Too many Atari partitions detected.  Maybe there is a loop in the XGM linked "
 "list.  Aborting."
 msgstr ""
+"Wykryto zbyt dużo partycji Atari. Być może jest pętla w liście XGM. "
+"Przerwano."
 
 #: libparted/labels/atari.c:596
 #, c-format
 msgid "No data partition found in the ARS at sector %lli."
-msgstr ""
+msgstr "Nie znaleziono partycji danych w ARS w sektorze %lli."
 
 #: libparted/labels/atari.c:617
 #, c-format
 msgid ""
 "The entry of the next logical ARS is not of type XGM in ARS at sector %lli."
 msgstr ""
+"Wpis następnego logicznego ARS nie jest typu XGM w ARS w sektorze %lli."
 
 #: libparted/labels/atari.c:648
 #, c-format
@@ -1076,31 +1029,35 @@ msgid ""
 "There doesn't seem to be an Atari partition table on this disk (%s), or it "
 "is corrupted."
 msgstr ""
+"Wygląda na to, że na tym dysku (%s) nie ma tablicy partycji Atari lub jest "
+"uszkodzona."
 
 #: libparted/labels/atari.c:878
 #, c-format
 msgid "No room at sector %lli to store ARS of logical partition %d."
-msgstr ""
+msgstr "Brak miejsca w sektorze %lli, aby zapisać ARS partycji logicznej %d."
 
 #: libparted/labels/atari.c:885
 #, c-format
 msgid "No room at sector %lli to store ARS."
-msgstr ""
+msgstr "Brak miejsca w sektorze %lli, aby zapisać ARS."
 
 #: libparted/labels/atari.c:962
 msgid ""
 "The sector count that is stored in the partition table does not correspond "
 "to the size of your device.  Do you want to fix the partition table?"
 msgstr ""
+"Liczba sektorów zapisana w tablicy partycji nie odpowiada rozmiarowi "
+"urządzenia. Czy poprawić tablicę partycji?"
 
 #: libparted/labels/atari.c:1003
 #, c-format
 msgid "No room at sector %lli to store BSL."
-msgstr ""
+msgstr "Brak miejsca w sektorze %lli, aby zapisać BSL."
 
 #: libparted/labels/atari.c:1111
 msgid "There were remaining partitions after filling the main AHDI table."
-msgstr ""
+msgstr "Pozostały jeszcze partycje po wypełnieniu głównej tablicy AHDI."
 
 #: libparted/labels/atari.c:1130
 msgid ""
@@ -1108,14 +1065,17 @@ msgid ""
 "not empty so more partitions of unknown size and position will be detected "
 "by ICD compatible software.  Do you want to invalidate the ICD table?"
 msgstr ""
+"Główna tablica AHDI została wypełniona wszystkimi partycjami, ale tablica "
+"ICD nie jest pusta, więc oprogramowanie zgodne z ICD wykryje więcej partycji "
+"o nieznanym rozmiarze i położeniu. Czy unieważnić tablicę ICD?"
 
 #: libparted/labels/atari.c:1164
 msgid "ICD entries can't contain extended or logical partitions."
-msgstr ""
+msgstr "Wpisy ICD nie mogą zawierać partycji rozszerzonych ani logicznych."
 
 #: libparted/labels/atari.c:1186
 msgid "There were remaining partitions after filling the tables."
-msgstr ""
+msgstr "Po wypełnieniu tablic pozostały jeszcze partycje."
 
 #: libparted/labels/atari.c:1226
 #, c-format
@@ -1123,12 +1083,14 @@ msgid ""
 "You can't use an extended XGM partition in ICD mode (more than %d primary "
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
+"Nie można użyć partycji rozszerzonej XGM w trybie ICD (powyżej %d partycji "
+"głównych; jeśli XGM jest pierwszą, liczy się jako dwie)."
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Nie można zaspokoić wszystkich ograniczeń na partycji."
@@ -1139,49 +1101,52 @@ msgid ""
 "You can't use more than %d primary partitions (ICD mode) if you use an "
 "extended XGM partition.  If XGM is the first partition it counts for two."
 msgstr ""
+"Nie można użyć więcej niż %d partycji głównych (tryb ICD) w przypadku użycia "
+"partycji rozszerzonej XGM. Jeśli XGM jest pierwszą, liczy się jako dwie."
 
 #: libparted/labels/atari.c:1823 libparted/labels/rdb.c:1082
 msgid "Unable to allocate a partition number."
 msgstr "Nie można przydzielić numeru partycji."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Nie można przydzielić miejsca na etykietę dysku bsd."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
-msgstr ""
+msgstr "Tablica partycji urządzenia DASD-LDL nie może być zmieniona.\n"
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Nie można przydzielić miejsca na etykiecie dysku dasd."
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Nieprawidłowa tablica partycji na %s -- błędna sygnatura %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Nieprawidłowa tablica partycji - partycja rekursywna na %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
-msgstr "Rozszerzone partycje nie mogą być ukryte dla etykieta dysków msdos."
+msgstr "Rozszerzone partycje nie mogą być ukryte na etykietach dysków msdos."
 
-#: libparted/labels/dos.c:1572
-#, fuzzy
+#: libparted/labels/dos.c:1569
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
-msgstr "Rozszerzone partycje nie mogą być ukryte dla etykieta dysków msdos."
+msgstr ""
+"Rozszerzone partycje nie mogą być partycjami odzyskiwania na etykietach "
+"dysków msdos."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted nie może zmienić rozmiaru partycji zarządzanych przez Windows Dynamic "
 "Disk."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "nie można utworzyć więcej partycji"
 
@@ -1279,7 +1244,7 @@ msgstr "Podane urządzenie nie jest poprawnym urządzeniem DASD"
 
 #: libparted/labels/fdasd.c:188
 msgid "VOLSER not found on device"
-msgstr ""
+msgstr "Nie znaleziono VOLSER na urządzeniu"
 
 #: libparted/labels/fdasd.c:191 libparted/labels/vtoc.c:179
 msgid "Fatal error"
@@ -1309,9 +1274,8 @@ msgstr ""
 "Aktualna wersja API '%d' nie zgadza się z wersją API sterownika dasd '%d'!"
 
 #: libparted/labels/fdasd.c:1020
-#, fuzzy
 msgid "Could not retrieve disk size."
-msgstr "Nie udało się odczytać informacji o dysku."
+msgstr "Nie udało się odczytać rozmiaru dysku."
 
 #: libparted/labels/fdasd.c:1029
 msgid "Could not retrieve disk geometry information."
@@ -1323,13 +1287,13 @@ msgstr "Nie udało się odczytać informacji o rozmiarze bloku."
 
 #: libparted/labels/fdasd.c:1045
 msgid "Disk geometry does not match a DASD device of type 3390."
-msgstr ""
+msgstr "Geometria dysku nie pasuje do urządzenia DASD typu 3390."
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "urządzenie jest zbyt małe na GPT"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1338,7 +1302,7 @@ msgstr ""
 "Format tablicy partycji GPT (wersja %x) jest nowszy niż program Parted jest "
 "w stanie rozpoznać. Poinformuj nas o tym!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1349,7 +1313,7 @@ msgstr ""
 "użyte zostało całe miejsce (dodatkowe %llu bloków) czy kontynuować przy "
 "aktualnych ustawieniach? "
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1358,7 +1322,7 @@ msgstr ""
 "naprawić to poprzez przesunięcie kopii zapasowej na koniec (i usunięcie "
 "starej kopii)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1366,7 +1330,7 @@ msgstr ""
 "Obie tablice GPT, główna i jej kopia zapasowa, są uszkodzone. Spróbuj "
 "utworzyć nową tablicę oraz użyj opcję 'rescue', aby odzyskać partycje."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1374,7 +1338,7 @@ msgstr ""
 "Zapasowa tablica GPT jest uszkodzona, ale główna wydaje się być w porządku i "
 "zostanie ona użyta."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1382,11 +1346,11 @@ msgstr ""
 "Główna tablica GPT jest uszkodzona, ale jej kopia zapasowa wydaje się być w "
 "porządku i zostanie ona użyta."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "niezgodność sumy CRC głównej tablicy partycji"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "nie udało się przetłumaczyć nazwy partycji"
 
@@ -1419,18 +1383,14 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Obszar danych nie rozpoczyna się na początku partycji."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Obszar rozruchowy nie zaczyna się na początku partycji."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Obszar rozruchowy partycji nie okupuje całej partycji."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Obszar danych partycji nie okupuje całej partycji."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
@@ -1438,7 +1398,7 @@ msgstr ""
 "Dziwny rozmiar bloku w deskryptorze urządzenia: %d bajtów nie jest podzielne "
 "przez 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1447,11 +1407,11 @@ msgstr ""
 "Deskryptor napędu mówi, że fizyczny rozmiar bloku wynosi %d bajtów, ale "
 "Linux mówi, że wynosi %d bajtów."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Nie znaleziono prawidłowej mapy partycji."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1460,27 +1420,27 @@ msgstr ""
 "Wystąpił konflikt między rozmiarami wpisów mapy partycji!  Wpis 1 mówi, że "
 "jest %d, ale wpis %d mówi, że jest %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Dziwne!  Istnieją 2 wpisy map partycji!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
 msgstr ""
 "Zmiana nazwy partycji root lub wymiany spowoduje, że Linux jej nie rozpozna."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "Nie można dodać kolejnej partycji -- mapa partycji jest zbyt mała!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Nieprawidłowa tablica partycji na %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1489,7 +1449,7 @@ msgstr ""
 "Partycja %d nie jest wyrównana do granic cylindra. Nadal nie jest to "
 "wspierane."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Nie można dodać kolejnej partycji."
 
@@ -1664,40 +1624,40 @@ msgstr "Nie udało się zapisać VTOC FMT7 DSCB."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Nie udało się zapisać VTOC FMT9 DSCB."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Brak pamięci."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr ""
 "Nie można pobrać rozmiaru jednostki dla specjalnej jednostki 'COMPACT'."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "\"%s\" posiada nieprawidłową składnię dla lokacji."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Maksymalna wartość głowicy wynosi %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Maksymalna wartość sektora wynosi %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "Lokacja %s jest poza urządzeniem %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Nieprawidłowy numer."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "Użycie mniejszej jednostki zamiast wartości < 1"
 
@@ -1707,18 +1667,18 @@ msgstr "Użycie mniejszej jednostki zamiast wartości < 1"
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : Nie powiodło się przydzielanie bloku partycji\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : Nie powiodło się przydzielanie bloku\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : Nie udało się odczytać bloku startowego %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1744,22 +1704,22 @@ msgstr "%s : Nieprawidłowa suma kontrolna bloku %llu typu %s\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : Nie udało się zapisać bloku %d\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s : Nie powiodło się przydzielanie bloku rdb disk_specific\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s : Nie znaleziono bloku rdb, co nie powinno się zdarzyć\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : Nie powiódł się odczyt bloku partycji %llu\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1857,7 +1817,7 @@ msgstr ""
 "naprawić, geometria CHS systemu plików zostanie dopasowana do geometrii CHS "
 "tablicy partycji."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1884,13 +1844,13 @@ msgstr ""
 "Różnica początku klastra = %d, co nie jest wielokrotnością rozmiaru klastra "
 "%d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Błędny wpis katalogu dla %s: pierwszy klaster jest znacznikiem końca pliku."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1898,7 +1858,7 @@ msgstr ""
 "Błędny FAT: nie zakończony łańcuch dla pliku %s. Należy uruchomić program "
 "dosfsck lub scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1907,7 +1867,7 @@ msgstr ""
 "Błędny FAT: klaster %d poza systemem plików w łańcuchu dla pliku %s. Należy "
 "uruchomić program dosfsck lub scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1916,26 +1876,17 @@ msgstr ""
 "Błędny FAT: klaster %d dla pliku %s pokrywa się z innym plikiem. Należy "
 "uruchomić program dosfsck lub scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s ma %dk, ale ma klastrów: %d (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"Plik %s jest oznaczony jako plik systemowy. Oznacza to, że jego "
-"przeniesienie może spowodować, że niektóre programy przestaną działać."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Partycja za duża/za mała dla systemu plików %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1944,11 +1895,11 @@ msgstr ""
 "operację, uruchomić program scandisk na tym systemie plików i wtedy wrócić "
 "do Parteda"
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Brak możliwych konfiguracji dla tego rodzaju FAT-u."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1959,13 +1910,13 @@ msgstr ""
 "klastra to %dk (oczekiwano %dk); liczba klastrów to %d (oczekiwano %d); "
 "rozmiar FAT-ów w sektorach to %d (oczekiwano %d)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr "System plików zgłasza wolne miejsce w klastrach jako %d, a nie %d."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1973,15 +1924,15 @@ msgstr ""
 "Za mało miejsca w głównym katalogu na wszystkie pliki. Można anulować lub "
 "zignorować, co spowoduje utratę plików."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Błąd zapisu w katalogu głównym."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "Jeżeli system plików pozostanie jako FAT16, nie będzie problemów."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1991,14 +1942,14 @@ msgstr ""
 "Windows, trzeba przeinstalować rekord startowy MS Windows. W tym celu należy "
 "zasięgnąć rady w podręczniku Parteda (lub swojej dystrybucji)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
 msgstr ""
 "Jeżeli system plików pozostanie jako FAT32, nie powstaną żadne nowe problemy."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2012,42 +1963,42 @@ msgstr ""
 "konwersja do FAT32 uczyni system plików nieczytelnym dla systemów MS DOS, MS "
 "Windows 95a i MS Windows NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Czy użyć FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "System plików można powiększyć do tego rozmiaru tylko konwertując go do "
 "FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "System plików można powiększyć do tego rozmiaru tylko konwertując go do "
 "FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted nie jest w stanie zmienić rozmiaru partycji do tego rozmiaru. "
 "Pracujemy nad tym!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2056,41 +2007,41 @@ msgstr ""
 "FAT %d nośnik %x nie odpowiada nośnikowi %x w sektorze rozruchowym. Należy "
 "prawdopodobnie uruchomić program scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: klaster %ld poza systemem plików"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: klaster %ld poza systemem plików"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: brak wolnych klastrów"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Nie udało się wykryć systemu plików."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "zmiana rozmiaru systemów plików %s nie jest obsługiwana"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "System plików jest większy niż jego wolumen!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "System plików zawiera błędy."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "Nie można odczytać wadliwych bloków."
 
@@ -2104,7 +2055,7 @@ msgstr ""
 "istnieje w tym miejscu. Proszę sprawdzić system plików!"
 
 #: libparted/fs/r/hfs/cache.c:214
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Trying to move an extent from block 0x%X to block 0x%X, but another one "
 "already exists at this position.  This should not happen!"
@@ -2156,62 +2107,62 @@ msgstr "Nie udało się odnaleźć sektora %lli pliku HFS+ o CNID %X."
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "Próba zapisu pliku HFS+ o CNID %X za końcem pliku."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "Niestety nie można jeszcze zmienić rozmiaru HFS-a w ten sposób."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "zmniejszanie"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Relokacja danych nie powiodła się."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr "Po relokacji danych pozostała część danych na końcu wolumenu."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "zapis głównego bloku katalogu HFS (Master Directory Block)"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "Nie znaleziono poprawnej sygnatury HFS[+X] podczas otwierania."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "Wersja %d systemu plików HFS+ nie jest obsługiwana."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "Wersja %d systemu plików HFSX nie jest obsługiwana."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "Po relokacji danych pozostała część danych na końcu wolumenu."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Błąd podczas zapisu pliku alokacji."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr ""
 "Błąd podczas zapisu części pliku alokacji przeznaczonej dla kompatybilności."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "zapis nagłówka wolumenu HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "Podczas szukania obowiązkowego pliku wadliwych bloków wystąpił błąd."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2219,28 +2170,28 @@ msgstr ""
 "Prawdopodobnie jest błąd w obudowaniu HFS: plik wadliwych bloków nie zawiera "
 "osadzonego wolumenu HFS+."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr ""
 "Niestety nie można jeszcze zmienić rozmiaru systemu plików HFS+ w ten sposób."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "zmniejszanie osadzonego wolumenu HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Zmiana rozmiaru wolumenu HFS+ nie powiodła się."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "zmniejszanie obudowania HFS"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "Uaktualnianie obudowania HFS nie powiodło się."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2261,7 +2212,6 @@ msgstr ""
 "Błędny rozmiar bloku transakcji w trakcie odtwarzania kroniki (bajtów: %i)."
 
 #: libparted/fs/r/hfs/journal.c:260
-#, fuzzy
 msgid ""
 "Journal stored outside of the volume are not supported.  Try to deactivate "
 "the journal and run Parted again."
@@ -2320,7 +2270,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Ekstent nie został zrelokowany."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2328,15 +2278,15 @@ msgstr ""
 "Odwołanie do ekstentu pochodzi z niewłaściwego miejsca. Proszę sprawdzić "
 "system plików!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "Ten wolumen HFS nie ma pliku katalogu. To bardzo niezwykłe!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr "Ten wolumen HFS nie ma pliku przepełnień ekstenów. To dość niezwykłe!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2344,52 +2294,52 @@ msgstr ""
 "Plik przepełnień ekstentów nie powinien zawierać własnych ekstentów! Proszę "
 "sprawdzić system plików."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Nie udało się zbuforować systemu plików w pamięci."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "Nie udało się wczytać listy wadliwych bloków."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Wystąpił błąd w trakcie relokacji ekstentów."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "Ten wolumen HFS+ nie zawiera pliku katalogu. To bardzo niezwykłe!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Ten wolumen HFS+ nie zawiera pliku przepełnień ekstentów. To dość niezwykłe!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "wyświetla tę oto pomoc"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "wypisuje rozkład partycji na wszystkich wykrytych urządzeniach"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "wyświetla dane w formacie czytelnym dla maszyny"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "nigdy nie prosi użytkownika o interwencję"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "wyświetla numer wersji"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "wyrównanie dla nowych partycji"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2398,33 +2348,33 @@ msgstr ""
 "DOS liczba partycji głównych mieści się w przedziale 1-4, zaś partycje "
 "logiczne zajmują kolejne numery począwszy od 5.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "TYP-ETYKIETY stanowi jedną z następujących wartości: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "FLAGA stanowi jedną z następujących wartości: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "JEDNOSTKA stanowi jedną z następujących wartości: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "pożądane wyrównanie: minimalne lub optymalne"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr ""
 "TYP-PARTYCJI stanowi jedną z następujących wartości: główna, logiczna, "
 "rozszerzona\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "SYSTEM-PLIKÓW stanowi jedną z następujących wartości: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2434,7 +2384,7 @@ msgstr ""
 "wartości są liczone od końca dysku. Na przykład -1s oznacza dokładnie "
 "ostatni sektor.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2442,19 +2392,19 @@ msgstr ""
 "KONIEC to miejsce na dysku, np. 4GB lub 10%. Ujemne wartości są liczone od "
 "końca dysku. Na przykład -1s oznacza dokładnie ostatni sektor.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "STAN jest reprezentowany poprzez: włączony, wyłączony\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "URZĄDZENIEM jest zwykle /dev/hda lub /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NAZWA jest dowolnym słowem jakie chcesz\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2475,22 +2425,22 @@ msgstr ""
 "w Powszechnej Licencji Publicznej GNU.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(czas do końca %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "Partycja %s jest używana. Czy na pewno kontynuować?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Partycja (partycje) na %s są używane."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2499,31 +2449,31 @@ msgstr ""
 "Istniejąca etykieta dysku na %s zostanie zniszczona, a wszystkie dane na tym "
 "dysku zostaną utracone. Kontynuować?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Nowy typ etykiety dysku?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Typ partycji?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Nazwa partycji?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Typ systemu plików?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Początek?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Koniec?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2533,7 +2483,7 @@ msgstr ""
 "Najbliższa z jaką Parted może sobie poradzić jest od %s do %s (sektorów: "
 "%llu..%llu).%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2541,95 +2491,95 @@ msgstr ""
 "\n"
 "Czy jest to do przyjęcia?"
 
-#: parted/parted.c:798
-#, fuzzy, c-format
+#: parted/parted.c:799
+#, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
-"Partycja wynikowa nie jest wyrównana właściwie dla najlepszej wydajności."
+"Partycja wynikowa nie jest wyrównana właściwie dla najlepszej wydajności: %s"
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
-msgstr ""
+msgstr "nieznana (malloc nie powiódł się)"
 
-#: parted/parted.c:876
-#, fuzzy, c-format
+#: parted/parted.c:877
+#, c-format
 msgid "%s disk labels do not support partition name."
-msgstr "Etykiety dysku %s nie wspierają rozszerzonych partycji."
+msgstr "Etykiety dysku %s nie obsługują nazwy partycji."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Numer partycji?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 "Geometria BIOS cylinder,głowica,sektor: %d,%d,%d. Każdy cylinder ma %s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Model: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Dysk %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Rozmiar sektora (logiczny/fizyczny): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Tablica partycji: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Flagi dysku: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Numer"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Początek"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Koniec"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Rozmiar"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Typ"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "System plików"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Nazwa"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Flaga"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Wolne miejsce"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2638,99 +2588,98 @@ msgstr ""
 "Partycja %s %s została znaleziona na %s -> %s. Czy chcesz ją dodać do "
 "tablicy partycji?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "szukam systemów plików"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "Polecenie zmiany rozmiaru zostało usunięte w partedzie 3.0"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "Zmniejszenie rozmiaru partycji może spowodować utratę danych, czy na pewno "
 "kontynuować?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Nowe urządzenie?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "rodzaj wyrównania(min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d wyrównana\n"
 
-#: parted/parted.c:1721
-#, fuzzy, c-format
+#: parted/parted.c:1737
+#, c-format
 msgid "%d not aligned: %s\n"
-msgstr "%d niewyrównana\n"
+msgstr "%d nie wyrównana: %s\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Flaga do przestawienia?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Nowy stan?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Jednostka?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "sprawdź-wyrównanie"
 
-#: parted/parted.c:1972
-#, fuzzy
+#: parted/parted.c:1988
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
 msgstr ""
-"sprawdź-wyrównanie TYP N                  sprawdzenie wyrównania TYP(min|"
-"opt) partycji N"
+"sprawdź-wyrównanie TYP N                 sprawdzenie wyrównania TYP(min|opt) "
+"partycji N"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "pomoc"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
 msgstr ""
 "pomoc [POLECENIE]             wyświetla pomoc ogólną lub dotyczącą POLECENIA"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
 msgstr ""
 "mklabel,mktable TYP-ETYKIETY  tworzy nową etykietę dysku (tablicę partycji)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart TYP-PARTYCJI [SYSTEM-PLIKÓW] POCZĄTEK KONIEC   tworzy partycję"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2739,19 +2688,19 @@ msgstr ""
 "tej partycji. Opcjonalny SYSTEM-PLIKÓW może zostać podany do określenia "
 "właściwego identyfikatora partycji.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "nazwa"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr "name NUMER NAZWA              nadaje NAZWĘ partycji NUMER"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "drukuj"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2760,7 +2709,7 @@ msgstr ""
 "print [devices|free|list,all|NUMER]   wyświetla tablicę partycji, dostępne "
 "urządzenia, wolne miejsce, znalezione partycje lub określoną partycję"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2768,11 +2717,11 @@ msgstr ""
 "Bez argumentów 'print' wyświetla całą tablicę partycji. Jednak z "
 "następującymi parametrami wykonuje różne inne akcje:\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : wyświetla wszystkie aktywne urządzenia blokowe\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2780,14 +2729,14 @@ msgstr ""
 "  free      : wyświetla informacje o wolnym, niespartycjonowanym miejscu na "
 "aktualnym urządzeniu blokowym\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all : wyświetla tablice partycji wszystkich aktywnych urządzeń "
 "blokowych\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
@@ -2795,19 +2744,19 @@ msgstr ""
 "  NUMER     : wyświetla bardziej szczegółowe informacje o określonej "
 "partycji\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "koniec"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                          kończy pracę programu"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "uratuj"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2815,90 +2764,90 @@ msgstr ""
 "rescue POCZĄTEK KONIEC        odzyskuje utraconą partycję blisko POCZĄTKU i "
 "KOŃCA"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "zmień-rozmiar"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "Polecenie zmiany rozmiaru zostało usunięte w partedzie 3.0\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "resizepart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "resizepart NUMER KONIEC       zmienia rozmiar partycji NUMER"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "usuń"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm NUMER                      usuwa partycję NUMER"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "wybierz"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select URZĄDZENIE             wybiera urządzenie do edycji"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "ustaw_dysk"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr "disk_set FLAGA STAN           zmienia flagę na wybranym urządzeniu"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "przełącz_dysk"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
 msgstr ""
 "disk_toggle [FLAGA]           przestawia stan FLAGI na wybranym urządzeniu"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "ustaw"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr "set NUMER FLAGA STAN          zmienia flagę na partycji NUMER"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "przestaw"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
 msgstr "toggle [NUMER [FLAGA]]        przestawia stan FLAGI na partycji NUMER"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "jednostka"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr "unit JEDNOSTKA                ustawia domyślną jednostkę"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "wersja"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2906,7 +2855,7 @@ msgstr ""
 "version                       wyświetla numer wersji GNU Parteda i "
 "informacje o prawach autorskich"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2914,31 +2863,40 @@ msgstr ""
 "'version' wyświetla informacje o prawach autorskich i wersji dla tej kopii "
 "GNU Parteda\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 "Składnia: %s [-hlmsv] [-a<wyrównanie>] [URZĄDZENIE [POLECENIE "
 "[PARAMETRY]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Nie znaleziono urządzenia"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "UWAGA: Nie jesteś superużytkownikiem. Uważaj na uprawnienia.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Należy przeinstalować program ładujący (boot loader) przed ponownym "
+"uruchomieniem komputera. Przeczytaj rozdział 4 dokumentacji użytkownika "
+"Parted, aby uzyskać więcej informacji."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Może wystąpić potrzeba aktualizacji /etc/fstab.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 "Witamy w GNU Partedzie! Listę poleceń można zobaczyć po napisaniu 'help'.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2949,7 +2907,7 @@ msgstr ""
 "Wykonuje POLECENIA z PARAMETRAMI dla URZĄDZENIA. Jeśli nie podano POLECEŃ,\n"
 "program zostanie uruchomiony w trybie interaktywnym.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -3013,7 +2971,7 @@ msgstr ""
 "Dołącz także dodatkowe informacje o konfiguracji, które uważasz\n"
 "za istotne.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -3021,7 +2979,7 @@ msgstr ""
 "\n"
 "Historia poleceń:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -3029,7 +2987,7 @@ msgstr ""
 "\n"
 "Błąd: SEGV_MAPERR (Adres nie odwzorowany na obiekcie)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3037,7 +2995,7 @@ msgstr ""
 "\n"
 "Błąd: SEGV_ACCERR (Nieprawidłowe uprawnienia dla odwzorowanego obiektu)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3045,7 +3003,7 @@ msgstr ""
 "\n"
 "Błąd: Wystąpił ogólny sygnał SIGSEGV.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3053,7 +3011,7 @@ msgstr ""
 "\n"
 "Błąd: FPE_INTDIV (dzielenie przez zero na liczbach całkowitych)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3061,7 +3019,7 @@ msgstr ""
 "\n"
 "Błąd: FPE_INTOVF (przepełnienie dla liczby całkowitej)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3069,7 +3027,7 @@ msgstr ""
 "\n"
 "Błąd: FPE_FLTDIV (dzielenie przez zero na liczbach zmiennoprzecinkowych)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3077,7 +3035,7 @@ msgstr ""
 "\n"
 "Błąd: FPE_FLTOVF (przepełnienie dla liczby zmiennoprzecinkowej)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3085,7 +3043,7 @@ msgstr ""
 "\n"
 "Błąd: FPE_FLTUND (niedopełnienie dla liczby zmiennoprzecinkowej)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3093,7 +3051,7 @@ msgstr ""
 "\n"
 "Błąd: FPE_FLTRES (niedokładny wynik dla liczb zmiennoprzecinkowych)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3101,7 +3059,7 @@ msgstr ""
 "\n"
 "Błąd: FPE_FLTINV (nieprawidłowa operacja dla liczb zmiennoprzecinkowych)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3109,7 +3067,7 @@ msgstr ""
 "\n"
 "Błąd: FPE_FLTSUB (indeks spoza zakresu dla liczb zmiennoprzecinkowych)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3117,7 +3075,7 @@ msgstr ""
 "\n"
 "Błąd: Wystąpił ogólny sygnał SIGFPE."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3125,7 +3083,7 @@ msgstr ""
 "\n"
 "Błąd: ILL_ILLOPC (niedozwolony kod instrukcji)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3133,7 +3091,7 @@ msgstr ""
 "\n"
 "Błąd: ILL_ILLOPN (niedozwolony operand)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3141,7 +3099,7 @@ msgstr ""
 "\n"
 "Błąd: ILL_ILLADR (niedozwolony tryb adresowania)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3149,7 +3107,7 @@ msgstr ""
 "\n"
 "Błąd: ILL_ILLTRP (niedozwolona pułapka)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3157,7 +3115,7 @@ msgstr ""
 "\n"
 "Błąd: ILL_PRVOPC (uprzywilejowany kod instrukcji)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3165,7 +3123,7 @@ msgstr ""
 "\n"
 "Błąd: ILL_PRVREG (uprzywilejowany rejestr)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3173,7 +3131,7 @@ msgstr ""
 "\n"
 "Błąd: ILL_COPROC (błąd koprocesora)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3181,7 +3139,7 @@ msgstr ""
 "\n"
 "Błąd: ILL_BADSTK (wewnętrzny błąd stosu)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3189,69 +3147,69 @@ msgstr ""
 "\n"
 "Błąd: Wystąpił ogólny sygnał SIGILL."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "nieprawidłowy token: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Oczekiwany był numer partycji."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Partycja nie istnieje."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Oczekiwany był typ systemu plików."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Nieznany typ systemu plików \"%s\"."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Oczekiwany był typ etykiety dysku."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
-msgstr ""
+msgstr "Brak obsługiwanych flag"
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Nie można utworzyć więcej partycji."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Oczekiwany był typ partycji."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "włączone"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "wyłączone"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "optymalne"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "minimalne"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "OPCJE:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "POLECENIA:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3262,33 +3220,11 @@ msgstr ""
 "Błędy w tłumaczeniu prosimy zgłaszać na adres: <translation-team-pl@lists."
 "sourceforge.net>.\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Użycie %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "To polecenie nie ma sensu w trybie nieinteraktywnym.\n"
-
-#~ msgid "%s: option '--%s' doesn't allow an argument\n"
-#~ msgstr "%s: opcja '--%s' nie może mieć argumentów\n"
-
-#~ msgid "%s: unrecognized option '--%s'\n"
-#~ msgstr "%s: nieznana opcja '--%s'\n"
-
-#~ msgid "%s: option '-W %s' doesn't allow an argument\n"
-#~ msgstr "%s: opcja '-W %s' nie może mieć argumentów\n"
-
-#~ msgid "%s: option '-W %s' requires an argument\n"
-#~ msgstr "%s: opcja '-W %s' musi mieć argument\n"
-
-#~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
-#~ msgstr "Strona domowa projektu %s: <http://www.gnu.org/software/%s/>.\n"
-
-#~ msgid ""
-#~ "This file system has a logical sector size of %d.  GNU Parted is known "
-#~ "not to work properly with sector sizes other than 512 bytes."
-#~ msgstr ""
-#~ "Ten system plików posiada rozmiar logicznego sektora %d. GNU Parted nie "
-#~ "współpracuje prawidłowo z rozmiarami sektorów innymi niż 512 bajtów."
index e0ddaa830545be22b755c03f95e0fec530069362..ccb5d7a62bd9aad5b77b5b56458fdf4f2ff39a2e 100644 (file)
Binary files a/po/pt.gmo and b/po/pt.gmo differ
index b8d9326ff9cd7ac09bc36bd1a64b7a673ee2ee7e..d9b6a9252789868a96f7dff2ba107a691aa9fba1 100644 (file)
--- a/po/pt.po
+++ b/po/pt.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 1.4.20\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2001-10-16 20:16+02:00\n"
 "Last-Translator: Gonçalo Silva <goncalo.silva@caixamagica.org>\n"
 "Language-Team: Portuguese <pt@li.org>\n"
@@ -96,11 +96,11 @@ msgstr ""
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr ""
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr ""
 
@@ -341,79 +341,64 @@ msgstr ""
 msgid "memory exhausted"
 msgstr ""
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr ""
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr ""
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr ""
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr ""
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Erro abrindo %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
 msgstr ""
 "Não posso abrir %s para gravação (%s). %s foi aberto somente para leitura."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s durante procura para leitura em %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s durante leitura em %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Não posso gravar em %s, pois ela foi aberta como somente para leitura."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s durante procura para escrita em %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s durante escrita em %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr ""
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -423,13 +408,13 @@ msgid ""
 "  -v, --version    output version information and exit\n"
 msgstr ""
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
 msgstr ""
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -446,43 +431,7 @@ msgstr ""
 msgid "Unable to probe store."
 msgstr "Impossível alinhar a partição."
 
-#: libparted/arch/gnu.c:368
-#, fuzzy
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"O kernel não pôde reler sua tabela de partições, portanto precisa de "
-"reiniciar antes de montar qualquer partição modificada. Voce pode também "
-"precisar reinstalar seu gestor de boot antes de reinicializar (o que pode "
-"requerer a montagem das partições modificadas). É impossível fazer as duas "
-"coisas! Leia a secção 4 da documentação do usuário do Parted para mais "
-"informações."
-
-#: libparted/arch/gnu.c:385
-#, fuzzy, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"O kernel não conseguiu reler a tabela de partições de %s (%s). Isto "
-"significa que o Linux não sabe nada sobre as modificações que fez. Deverá "
-"reinicializar seu computador antes de fazer qualquer uso de %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Deverá reinstalar seu gestor de boot antes de reinicializar. Leia a secção 4 "
-"da documentação do utilizador do Parted para mais informações."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr ""
@@ -785,15 +734,15 @@ msgstr ""
 msgid "free"
 msgstr "livre"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "extendida"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "lógica"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primária"
 
@@ -870,64 +819,73 @@ msgstr ""
 msgid "esp"
 msgstr "Sim"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "boot"
+
+#: libparted/disk.c:2419
 #, fuzzy, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Sinalizador de partição desconhecido, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Informação"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Aviso"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Erro"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Fatal"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Bug"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Sem Implementação"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Arranjar"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Sim"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Não"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Repetir"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Ignorar"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Cancelar"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -936,33 +894,33 @@ msgid ""
 "containing at least the version (%s) and the following message:  "
 msgstr ""
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 #, fuzzy
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr ""
 "O suporte para criar sistema de ficheiros %s não foi implementado ainda."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 #, fuzzy
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr ""
 "O suporte para criar sistema de ficheiros %s não foi implementado ainda."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 #, fuzzy
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "O suporte para criar sistema de ficheiros %s não foi implementado ainda."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 #, fuzzy
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "O suporte para criar sistema de ficheiros %s não foi implementado ainda."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 #, fuzzy
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
@@ -970,7 +928,7 @@ msgid ""
 msgstr ""
 "O suporte para criar sistema de ficheiros %s não foi implementado ainda."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 #, fuzzy
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
@@ -1060,11 +1018,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 #, fuzzy
 msgid "Unable to satisfy all constraints on the partition."
@@ -1082,45 +1040,45 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Impossível alinhar a partição."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 #, fuzzy
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Impossível localizar um rotulo de disco bsd"
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 #, fuzzy
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Impossível localizar um rotulo de disco bsd"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, fuzzy, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Tabela de partições inválida em %s - assinatura errada %x"
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Tabela de partições inválida - partição recursiva em %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 #, fuzzy
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "Partições ext2 não podem ser escondidas em rótulos de disco msdos."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "Partições ext2 não podem ser escondidas em rótulos de disco msdos."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 #, fuzzy
 msgid "cannot create any more partitions"
 msgstr "Não posso copiar partições extendidas."
@@ -1269,18 +1227,18 @@ msgstr ""
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr ""
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
 "what Parted can recognise.  Please report this!"
 msgstr ""
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1288,35 +1246,35 @@ msgid ""
 "setting? "
 msgstr ""
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
 msgstr ""
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
 msgstr ""
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
 msgstr ""
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
 msgstr ""
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr ""
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 #, fuzzy
 msgid "failed to translate partition name"
 msgstr "Impossível alinhar a partição."
@@ -1351,19 +1309,14 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "A região de dados não começa no início da partição"
 
 #: libparted/labels/mac.c:572
-#, fuzzy
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "A região de inicialização não começa no início da partição"
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "A região de inicialização da partição não a ocupa inteiramente."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "A região de dados da partição não a ocupa inteiramente."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
@@ -1371,7 +1324,7 @@ msgstr ""
 "tamanho de bloco estranho no descritor de dispositivo: %d bytes não são "
 "divisíveis por 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1380,11 +1333,11 @@ msgstr ""
 "O descritor do driver informa que o tamanho físico de bloco é %d bytes, mas "
 "o Linux informa que é %d bytes."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Nenhum mapa de partições válido foi encontrado."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, fuzzy, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1393,12 +1346,12 @@ msgstr ""
 "Conflito nos tamanhos de mapa de partição! Entrada 1 informa que é %d, mas "
 "entrada %d informa que é %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 #, fuzzy
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Estranho - 2 entradas no mapa de partição"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1406,18 +1359,18 @@ msgstr ""
 "Mudar o nome de uma partição root ou swap irá impedir o Linux de reconhecê-"
 "la como tal."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 #, fuzzy
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr ""
 "Não posso adicionar outra partição - o mapa de partições é muito pequeno!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, fuzzy, c-format
 msgid "Invalid partition table on %s."
 msgstr "Tabela de partições inválida em %s"
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, fuzzy, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1426,7 +1379,7 @@ msgstr ""
 "A partição %d não está alinhada com o limite do cilindro. Preciso adicionar "
 "suporte para isso."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Não posso adicionar outra partição."
 
@@ -1593,39 +1546,39 @@ msgstr ""
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr ""
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Não há memória."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr ""
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr ""
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr ""
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr ""
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, fuzzy, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "Impossível criar partição fora do dispositivo."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr ""
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr ""
 
@@ -1635,18 +1588,18 @@ msgstr ""
 msgid "%s : Failed to allocate partition block\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1672,22 +1625,22 @@ msgstr ""
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s durante escrita em %s"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr ""
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 #, fuzzy
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
@@ -1778,7 +1731,7 @@ msgid ""
 "geometry."
 msgstr ""
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1805,14 +1758,14 @@ msgstr ""
 "O cluster inicia em delta = %d, que não é um múltiplo do tamanho de cluster "
 "%d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Entrada de diretório inválida para %s: o primeiro cluster é o fim do "
 "marcador de ficheiro."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1820,7 +1773,7 @@ msgstr ""
 "FAT estragada: cadeia não terminada para %s. Você deveria correr o dosfsck "
 "ou o scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, fuzzy, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1829,7 +1782,7 @@ msgstr ""
 "FAT estragada: cluster %d fora do sistema de ficheiros na cadeia para %s. "
 "Você deveria correr o dosfsck ou o scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1838,24 +1791,17 @@ msgstr ""
 "FAT estragada: o cluster %d tem uma referência cruzada para %s. Você deveria "
 "correr o dosfsck ou o scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, fuzzy, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s é %dk, mas tem %d clusters (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, fuzzy, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "A partição é muito pequena para um sistema de ficheiros FAT"
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1863,11 +1809,11 @@ msgstr ""
 "As FATs não estão iguais. Se não sabe o que isto significa, seleccione "
 "cancelar, execute o scandisk no sistema de ficheiros, depois volte."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Não há configurações possíveis para este tipo de FAT."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1878,7 +1824,7 @@ msgstr ""
 "utilize. O tamanho do cluster é %dk (%dk esperado); número de clusters é %d "
 "(%d esperado); tamanho da FAT é %d sectores (%d esperado)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
@@ -1886,7 +1832,7 @@ msgstr ""
 "O sistema de ficheiros reporta que o espaço livre é de %d clusters, não de "
 "%d clusters."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 #, fuzzy
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
@@ -1895,16 +1841,16 @@ msgstr ""
 "Não há espaço suficiente no diretório raiz para todos os ficheiros. Cancele, "
 "ou ignore para perder os ficheiros."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Erro escrevendo no diretório raiz."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 #, fuzzy
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "Se deixar seu sistema de ficheiros como FAT16, não haverá problemas."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1914,7 +1860,7 @@ msgstr ""
 "deverá reinstalar o gestor de boot do MS Windows. Se quiser fazer isso, "
 "consulte o manual do Parted (ou o manual de sua distribuição)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -1922,7 +1868,7 @@ msgstr ""
 "Se deixar seu sistema de ficheiros como FAT32, você não terá mais nenhum "
 "problema novo."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1936,35 +1882,35 @@ msgstr ""
 "convertendo para FAT32 fará com que o sistema de ficheiros não seja mais "
 "reconhecido pelo MS DOS, Windows 95a, e MS Windows NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Você gostaria de usar FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "O sistema de ficheiros só pode ser redimensionado para esse tamanho se "
 "convertido para FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "O sistema de ficheiros só pode ser redimensionado para esse tamanho se "
 "convertido para FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 #, fuzzy
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
@@ -1972,7 +1918,7 @@ msgstr ""
 "O GNU Parted não pode redimensionar esta partição para esse tamanho. Estamos "
 "a trabalhar nisso!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -1981,43 +1927,43 @@ msgstr ""
 "FAT %d média %x não coincide com o sector de boot médio %x. Você deveria "
 "executar o scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, fuzzy, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: cluster %ld fora do sistema de ficheiros"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, fuzzy, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: cluster %ld fora do sistema de ficheiros"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: não há clusters livres"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Não foi possível detectar o sistema de Ficheiros."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, fuzzy, c-format
 msgid "resizing %s file systems is not supported"
 msgstr ""
 "Suporte para redimensionar sistema de ficheiros não implementado para %s."
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 #, fuzzy
 msgid "The file system is bigger than its volume!"
 msgstr "O rotulo do disco afirma que o disco é maior que %s"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr ""
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr ""
 
@@ -2075,89 +2021,89 @@ msgstr ""
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 #, fuzzy
 msgid "writing HFS Master Directory Block"
 msgstr "Erro escrevendo no diretório raiz."
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 #, fuzzy
 msgid "Error while writing the allocation file."
 msgstr "Erro escrevendo no diretório raiz."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2228,73 +2174,73 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 #, fuzzy
 msgid "Could not cache the file system in memory."
 msgstr "Não foi possível detectar o sistema de Ficheiros."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "mostra esta mensagem de ajuda"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr ""
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr ""
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "nunca pede intervenção do utulizador"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "mostra a versão"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 #, fuzzy
 msgid "alignment for new partitions"
 msgstr "Não posso copiar partições extendidas."
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 #, fuzzy
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
@@ -2303,57 +2249,57 @@ msgstr ""
 "MINOR é o número da partição usado pelo linux. Em rótulos de disco msdos, as "
 "partições primárias são de 1-4, e partições lógicas de 5 adiante.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "TIPO_ROTULO é um de:"
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "FLAG é um de: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 #, fuzzy
 msgid "UNIT is one of: "
 msgstr "FLAG é um de: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr ""
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "TIPO-PART é um de: primary, logical, extended\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "TIPO-FS é um de: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
 "sector.\n"
 msgstr ""
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
 msgstr ""
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "ESTADO é um de: on, off\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "DISPOSITIVO é usualmente /dev/hda ou /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NAME é qualquer palavra que desejar\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2365,240 +2311,240 @@ msgid ""
 "\n"
 msgstr ""
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr ""
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Partição(ões) em %s está(ão) a ser utilizada(s)."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
 "will be lost. Do you want to continue?"
 msgstr ""
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 #, fuzzy
 msgid "New disk label type?"
 msgstr "Tipo de rótulo de disco: %s\n"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 #, fuzzy
 msgid "Partition type?"
 msgstr "A partição não existe."
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 #, fuzzy
 msgid "Partition name?"
 msgstr "A partição não existe."
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 #, fuzzy
 msgid "File system type?"
 msgstr "SistemaFich "
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr ""
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr ""
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
 "The closest location we can manage is %s to %s (sectors %llu..%llu).%s"
 msgstr ""
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
 msgstr ""
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "Rótulos de disco %s não suportam partições extendidas."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 #, fuzzy
 msgid "Partition number?"
 msgstr "A partição está a ser utilizada."
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr ""
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, fuzzy, c-format
 msgid "Disk %s: %s\n"
 msgstr "Tipo de rótulo de disco: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr ""
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, fuzzy, c-format
 msgid "Partition Table: %s\n"
 msgstr "Tabela de partições inválida em %s"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, fuzzy, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Tipo de rótulo de disco: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr ""
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr ""
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr ""
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr ""
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr ""
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 #, fuzzy
 msgid "File system"
 msgstr "SistemaFich "
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr ""
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Sinalizador"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr ""
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
 "partition table?"
 msgstr ""
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr ""
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr ""
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 #, fuzzy
 msgid "New device?"
 msgstr "Nenhum dispositivo encontrado"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr ""
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr ""
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, c-format
 msgid "%d not aligned: %s\n"
 msgstr ""
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr ""
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr ""
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr ""
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 #, fuzzy
 msgid "align-check"
 msgstr "check"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
 msgstr "print                         mostra a tabela de partições"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 #, fuzzy
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
 msgstr "help [COMANDO]                mostra ajuda geral, ou ajuda a COMANDO"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr ""
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 #, fuzzy
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
@@ -2606,16 +2552,16 @@ msgid ""
 msgstr ""
 "mklabel TIPO-ROTULO           cria um novo rótulo (na tabela de partição)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 #, fuzzy
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart TIPO-PART [FS-TYPE] INICIO FIM     cria uma partição"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 #, fuzzy
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
@@ -2626,196 +2572,204 @@ msgstr ""
 "partição extendida). Este comando é útil se apagou acidentalmente uma "
 "partição.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 #, fuzzy
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr "name MINOR NAME               renomeia a partição MINOR para NAME"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
 "partition"
 msgstr ""
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
 msgstr ""
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
 msgstr ""
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 #, fuzzy
 msgid "quit                                     exit program"
 msgstr "quit                          sair do programa"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr ""
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 #, fuzzy
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
 msgstr "print                         mostra a tabela de partições"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr ""
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 #, fuzzy
 msgid "resizepart"
 msgstr "resize"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 #, fuzzy
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "rm MINOR                      apaga a partição MINOR"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 #, fuzzy
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm MINOR                      apaga a partição MINOR"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 #, fuzzy
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select DEVICE                 selecciona o dispositivo a editar"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr ""
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr ""
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
 msgstr ""
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 #, fuzzy
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr "set MINOR FLAG ESTADO         muda o sinalizador na partição MINOR"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr ""
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
 msgstr ""
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr ""
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 #, fuzzy
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr "print                         mostra a tabela de partições"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr ""
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 #, fuzzy
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
 msgstr "print                         mostra a tabela de partições"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
 msgstr ""
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Nenhum dispositivo encontrado"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr ""
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Deverá reinstalar seu gestor de boot antes de reinicializar. Leia a secção 4 "
+"da documentação do utilizador do Parted para mais informações."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr ""
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 #, fuzzy
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
@@ -2827,7 +2781,7 @@ msgstr ""
 "Aplica COMANDO com os PARAMETROS no DISPOSITIVO. Se não for dado nenhum\n"
 "COMANDO, executa em modo interactivo.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2861,222 +2815,223 @@ msgid ""
 "consider important.\n"
 msgstr ""
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
 msgstr ""
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
 msgstr ""
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
 msgstr ""
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
 msgstr ""
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
 msgstr ""
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
 msgstr ""
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
 msgstr ""
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
 msgstr ""
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
 msgstr ""
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
 msgstr ""
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
 msgstr ""
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
 msgstr ""
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
 msgstr ""
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
 msgstr ""
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
 msgstr ""
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
 msgstr ""
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
 msgstr ""
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
 msgstr ""
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
 msgstr ""
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
 msgstr ""
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, fuzzy, c-format
 msgid "invalid token: %s"
 msgstr "Tabela de partições inválida em %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 #, fuzzy
 msgid "Expecting a partition number."
 msgstr "A partição destino está a ser utilizada."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "A partição não existe."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 #, fuzzy
 msgid "Expecting a file system type."
 msgstr "Tipo de sistema de ficheiros desconhecido."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, fuzzy, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Tipo de sistema de ficheiros desconhecido."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr ""
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 #, fuzzy
 msgid "Can't create any more partitions."
 msgstr "Não posso adicionar outra partição."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 #, fuzzy
 msgid "Expecting a partition type."
 msgstr "A partição destino não existe."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "on"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr ""
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr ""
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr ""
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "OPÇÕES:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "COMANDOs:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
 "Report bugs to %s\n"
 msgstr ""
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, fuzzy, c-format
 msgid "Using %s\n"
 msgstr ""
 "\n"
 "Usando %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr ""
 
+#, c-format
 #~ msgid ""
 #~ "The sector size on %s is %d bytes.  Parted is known not to work properly "
 #~ "with drives with sector sizes other than 512 bytes"
@@ -3084,6 +3039,7 @@ msgstr ""
 #~ "O tamanho do sector em %s é %d bytes. O Parted é conhecido por não "
 #~ "funcionar perfeitamente com discos com sectores diferentes de 512 bytes"
 
+#, c-format
 #~ msgid "Device %s has dodgey geometry."
 #~ msgstr "Dispositivo %s tem geometria estranha."
 
@@ -3093,9 +3049,37 @@ msgstr ""
 #~ msgid "Unknown SCSI"
 #~ msgstr "SCSI desconhecido"
 
+#, c-format
 #~ msgid "Device %s is neither a SCSI nor IDE drive."
 #~ msgstr "O dispositivo %s não é um drive SCSI ou IDE."
 
+#~ msgid ""
+#~ "The kernel was unable to re-read your partition table, so you need to "
+#~ "reboot before mounting any modified partitions.  You also need to "
+#~ "reinstall your boot loader before you reboot (which may require mounting "
+#~ "modified partitions).  It is impossible do both things!  So you'll need "
+#~ "to boot off a rescue disk, and reinstall your boot loader from the rescue "
+#~ "disk.  Read section 4 of the Parted User documentation for more "
+#~ "information."
+#~ msgstr ""
+#~ "O kernel não pôde reler sua tabela de partições, portanto precisa de "
+#~ "reiniciar antes de montar qualquer partição modificada. Voce pode também "
+#~ "precisar reinstalar seu gestor de boot antes de reinicializar (o que pode "
+#~ "requerer a montagem das partições modificadas). É impossível fazer as "
+#~ "duas coisas! Leia a secção 4 da documentação do usuário do Parted para "
+#~ "mais informações."
+
+#, c-format
+#~ msgid ""
+#~ "The kernel was unable to re-read the partition table on %s (%s).  This "
+#~ "means Linux knows nothing about any modifications you made.  You should "
+#~ "reboot your computer before doing anything with %s."
+#~ msgstr ""
+#~ "O kernel não conseguiu reler a tabela de partições de %s (%s). Isto "
+#~ "significa que o Linux não sabe nada sobre as modificações que fez. Deverá "
+#~ "reinicializar seu computador antes de fazer qualquer uso de %s."
+
+#, c-format
 #~ msgid ""
 #~ "The partition table on %s is inconsistent.  There are many reasons why "
 #~ "this might be the case.  However, the most likely reason is that Linux "
@@ -3153,6 +3137,9 @@ msgstr ""
 #~ msgid "The new partition overlaps with another partition."
 #~ msgstr "A nova partição sobrepõe alguma outra partição"
 
+#~ msgid "The boot region doesn't start at the start of the partition"
+#~ msgstr "A região de inicialização não começa no início da partição"
+
 #~ msgid "Can't set non-Linux partitions as a root device."
 #~ msgstr "Não posso configurar partições não Linux como uma partição root."
 
@@ -3160,14 +3147,17 @@ msgstr ""
 #~ msgstr ""
 #~ "Não posso configurar partições não nao sejam Linux como uma partição swap."
 
+#, c-format
 #~ msgid "Support for opening %s file systems is not implemented yet."
 #~ msgstr ""
 #~ "O suporte para abrir sistema de ficheiros %s não foi implementado ainda."
 
+#, c-format
 #~ msgid "Support for checking %s file systems is not implemented yet."
 #~ msgstr ""
 #~ "Suporte para verificar sistema de ficheiros não implementado para %s."
 
+#, c-format
 #~ msgid ""
 #~ "Direct support for copying file systems is not yet implemented for %s.  "
 #~ "However, support for resizing implemented.  Therefore, the file system "
@@ -3181,30 +3171,37 @@ msgstr ""
 #~ "pelo menos tão grande quanto a antiga. Então, diminua a partição que você "
 #~ "está a tentar copiar, ou copie para uma partição maior."
 
+#, c-format
 #~ msgid "Support for copying %s file systems is not implemented yet."
 #~ msgstr "Suporte para copiar sistema de ficheiros não implementado para %s."
 
+#, c-format
 #~ msgid "No get_resize_constraint for %s!"
 #~ msgstr "Não há get_resize_constraint para %s!"
 
+#, c-format
 #~ msgid "The %s file system code doesn't support %s disk labels."
 #~ msgstr ""
 #~ "O código do sistema de ficheiros %s não suporta rótulos de disco %s."
 
+#, c-format
 #~ msgid "Creating new %s disklabels is not implemented yet."
 #~ msgstr "Criação de novos rótulos %s não está implementado ainda."
 
+#, c-format
 #~ msgid "The code to write the partition table hasn't been written for %s yet"
 #~ msgstr ""
 #~ "O código para escrever a tabela de partições ainda não foi escrito para "
 #~ "%s."
 
+#, c-format
 #~ msgid "Error reading %s (%s) to determine if partition is mounted."
 #~ msgstr "Erro lendo %s (%s) para determinar se a partição está montada."
 
 #~ msgid "Can't grow a partition onto used space."
 #~ msgstr "Não posso aumentar a partição acima de espaço já utilizado."
 
+#, c-format
 #~ msgid ""
 #~ "A bug has been detected in GNU parted.  Please email a bug report to bug-"
 #~ "parted@gnu.org containing the version (%s) and the following message:"
@@ -3212,6 +3209,7 @@ msgstr ""
 #~ "Um bug foi detectado no GNU parted. Por favor, envie um relatório do bug "
 #~ "para bug-parted@gnu.org contendo a versão (%s) e a mensagem abaixo:"
 
+#, c-format
 #~ msgid "Attempt to read sectors %ld-%ld outside of partition on %s"
 #~ msgstr "Tentativa de ler sectores %ld-%ld fora da partição em %s"
 
@@ -3263,11 +3261,13 @@ msgstr ""
 #~ msgstr ""
 #~ "Sistema de ficheiros tem muitos inodes utilizados para remover um grupo!"
 
+#, c-format
 #~ msgid "Your filesystem is too occupied to resize it to %i blocks. Sorry."
 #~ msgstr ""
 #~ "Seu sistema de ficheiros está muito ocupado para redimensioná-lo para %i "
 #~ "blocos. Desculpe."
 
+#, c-format
 #~ msgid ""
 #~ "Your filesystem has too much occupied inodes to resize it to %i blocks. "
 #~ "Sorry."
@@ -3280,9 +3280,11 @@ msgstr ""
 #~ "Encontrados blocos com referência cruzada! Melhor executar e2fsck "
 #~ "primeiro."
 
+#, c-format
 #~ msgid "Block %i has no reference?  Weird"
 #~ msgstr "Bloco %i não tem referência? Estranho"
 
+#, c-format
 #~ msgid "Block %i shouldn't have been marked!"
 #~ msgstr "Bloco %i não deveria ter sido marcado!"
 
@@ -3299,6 +3301,7 @@ msgstr ""
 #~ msgid "Couldn't flush buffer cache!"
 #~ msgstr "Não foi possível esvaziar a cache temporária!"
 
+#, c-format
 #~ msgid "Insane!  %d clusters!"
 #~ msgstr "Estranho! %d clusters!"
 
@@ -3329,6 +3332,7 @@ msgstr ""
 #~ "antigas do Windows 95 e Windows NT. Seleccione SIM se você só utilizar "
 #~ "Linux, BSD, MS-Windows 98 e/ou MS-Windows 95 B."
 
+#, c-format
 #~ msgid ""
 #~ "File system doesn't have expected sizes for Windows to like it.  Number "
 #~ "of clusters is %d (%d expected); size of FATs is %d sectors (%d expected)."
@@ -3340,6 +3344,7 @@ msgstr ""
 #~ msgid "File system has an invalid signature for a FAT file systems."
 #~ msgstr "Sistema de ficheiros tem uma assinatura inválida para um FAT."
 
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3348,6 +3353,7 @@ msgstr ""
 #~ "Parted é conhecido por não funcionar corretamente com sectores diferentes "
 #~ "de 512 bytes."
 
+#, c-format
 #~ msgid ""
 #~ "Partition size (%ld sectors) and filesystem size (%ld sectors) do not "
 #~ "match."
@@ -3355,6 +3361,7 @@ msgstr ""
 #~ "Tamanho da partição (%ld sectores) e tamanho do sistema de ficheiros (%ld "
 #~ "sectores) não coincidem."
 
+#, c-format
 #~ msgid ""
 #~ "The FATs aren't big enough to describe all clusters!  Each FAT is %d "
 #~ "sectors.  There are %d clusters, which would require each FAT to be %d "
@@ -3410,6 +3417,7 @@ msgstr ""
 #~ msgid "Source partition doesn't exist."
 #~ msgstr "A partição origem não existe."
 
+#, c-format
 #~ msgid ""
 #~ "You requested to create a partition at %.3f-%.3fMb. The closest Parted "
 #~ "can manage is %.3f-%.3fMb."
@@ -3424,6 +3432,7 @@ msgstr ""
 #~ msgstr ""
 #~ "Não posso mover a partição sobre ela mesma. Talvez queira redimensionar?"
 
+#, c-format
 #~ msgid ""
 #~ "You requested to move the partition to %.3f-%.3fMb. The closest Parted "
 #~ "can manage is %.3f-%.3fMb."
@@ -3431,6 +3440,7 @@ msgstr ""
 #~ "Pretende mover a partiçao para %.3f-%.3fMb. O mais perto que se consegue "
 #~ "será %3f-%.3fMb"
 
+#, c-format
 #~ msgid "Disk geometry for %s: 0.000-%.3f megabytes\n"
 #~ msgstr "Geometria de disco para %s: 0.000-%.3f megabytes\n"
 
@@ -3443,6 +3453,7 @@ msgstr ""
 #~ msgid "Name                  "
 #~ msgstr "Nome                  "
 
+#, c-format
 #~ msgid ""
 #~ "You requested to resize the partition to %.3f-%.3fMb. The closest Parted "
 #~ "can manage is %.3f-%.3fMb."
@@ -3490,6 +3501,7 @@ msgstr ""
 #~ msgid "resize MINOR START END        resize filesystem on partition MINOR"
 #~ msgstr "resize MINOR INICIO FIM       redimensiona a partição MINOR"
 
+#, c-format
 #~ msgid ""
 #~ "You found a bug in GNU Parted.  Please email a bug report to bug-"
 #~ "parted@gnu.org containing the version (%s), and the following message:\n"
@@ -3509,6 +3521,7 @@ msgstr ""
 #~ "contrário, certifique-se que o sistema operativo e a BIOS têm a mesma "
 #~ "geometria antes de fazer o redimensionamento de qualquer partiçao FAT"
 
+#, c-format
 #~ msgid ""
 #~ "The operating system thinks the geometry on %s is %d/%d/%d.  Therefore, "
 #~ "cylinder 1024 ends at %.3fM.%s"
@@ -3517,5 +3530,6 @@ msgstr ""
 #~ "cilindro 1024 termina em %.3fM%s. Você devia verificar se isto está "
 #~ "correto com sua \"\"BIOS, antes de usar este programa."
 
+#, c-format
 #~ msgid "The operating system thinks the geometry on %s is %d/%d/%d.%s"
 #~ msgstr "O Sistema Operativo detectou que a gemotria em %s é %d/%d/%d.%s"
index 409028e3d2381c665b37022e26aa82f4dc360d42..46ccf0537c7fff55aebe0486c70b9fa023f49954 100644 (file)
Binary files a/po/pt_BR.gmo and b/po/pt_BR.gmo differ
index 4244ab0b59f8de2a3258246d60315b46d400f4a0..235d8c48d492c170a076b10bef2d5b5d97616352 100644 (file)
@@ -1,16 +1,17 @@
 # Brazilian Portuguese translations for parted package
 # Traduções em português brasileiro para o pacote parted
-# Copyright (C) 2019 Free Software Foundation, Inc.
+# Copyright (C) 2020 Free Software Foundation, Inc.
 # This file is distributed under the same license as the parted package.
 # Eliphas Levy Theodoro <eliphas@conectiva.com>, 1999.
 # Enrico Nicoletto <liverig@gmail.com>, 2013.
-# Rafael Fontenelle <rafaelff@gnome.org>, 2014, 2017, 2019.
+# Rafael Fontenelle <rafaelff@gnome.org>, 2014-2020.
+#
 msgid ""
 msgstr ""
 "Project-Id-Version: parted 3.1.90\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
-"PO-Revision-Date: 2019-08-28 15:29-0300\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
+"PO-Revision-Date: 2020-09-13 20:22-0300\n"
 "Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
 "Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge."
 "net>\n"
@@ -18,8 +19,8 @@ msgstr ""
 "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: Virtaal 1.0.0-beta1\n"
+"Plural-Forms: nplurals=2; plural=(n > 1)\n"
+"X-Generator: Gtranslator 3.38.0\n"
 "X-Bugs: Report translation errors to the Language-Team address.\n"
 
 #: lib/argmatch.c:132
@@ -100,11 +101,11 @@ msgstr "%s: a opção exige um argumento -- \"%c\"\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "“"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "”"
 
@@ -373,32 +374,17 @@ msgstr "Ajuda geral no uso de softwares GNU: <http://www.gnu.org/gethelp/>\n"
 msgid "memory exhausted"
 msgstr "memória esgotada"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "argumento inválido para %s%s: \"%s\""
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "sufixo inválido no argumento para %s%s: \"%s\""
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "argumento grande demais para %s%s: \"%s\""
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Imagem de disco"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Erro ao abrir %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -406,47 +392,47 @@ msgstr ""
 "Não foi possível abrir %s para leitura e escrita (%s). %s foi aberto somente-"
 "leitura."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s durante busca para leitura em %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s durante leitura em %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Não é possível escrever em %s, pois foi aberto como somente-leitura."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s durante busca para escrita em %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s durante escrita em %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Tente \"%s --help\" para mais informações.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Uso: %s [OPÇÃO] [DISPOSITIVO]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -457,12 +443,12 @@ msgid ""
 msgstr ""
 "Informa ao sistema operacional sobre alterações na tabela de partição.\n"
 "\n"
-"  -d, --dry-run    não chega a informar o sistema operacional\n"
+"  -d, --dry-run    não chega a informar ao sistema operacional\n"
 "  -s, --summary    exibe um resumo do conteúdo\n"
 "  -h, --help       exibe esta ajuda e sai\n"
 "  -v, --version    mostra informações da versão e sai\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -470,7 +456,7 @@ msgstr ""
 "\n"
 "Quando nenhum DISPOSITIVO é informado, investiga todas as partições.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -488,43 +474,7 @@ msgstr "Não foi possível abrir %s."
 msgid "Unable to probe store."
 msgstr "Não foi possível investigar armazenamento."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"A tabela de partições não pde ser lida novamente. Isto significa que você "
-"precisa reiniciar antes de montar qualquer partição modificada. Você também "
-"precisa reinstalar seu carregador de inicialização antes de reinicializar (o "
-"que pode exigir a montagem das partições modificadas). É impossível fazer as "
-"duas coisas! Então você irá precisar inicializar por um disco de resgate, e "
-"reinstalar seu gerenciador de boot a partir deste disco.  Leia a seção 4 da "
-"documentação do usuário do Parted para maiores informações."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"A tabela de partições em %s não pode ser lida novamente (%s).  Isto "
-"significa que o GNU Hurd não sabe nada sobre as modificações que você fez. "
-"Você deve reinicializar seu computador antes de fazer qualquer coisa em %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Você deve reinstalar seu carregador de inicialização antes de reinicializar. "
-"Leia a seção 4 da documentação do usuário do Parted para mais informações."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s tentando sincronizar %s ao disco"
@@ -726,17 +676,16 @@ msgid ""
 "the old partition(s) will remain in use.  You should reboot now before "
 "making further changes."
 msgstr ""
-"Partição(ões) %s em %s foram escritas, mas não foi impossível informar o "
-"kernel sobre as alterações, provavelmente esta/estas está(ão) em uso.  Como "
-"resultado, a(s) partição(ões) antiga(s) permanecerá(ão) em uso.  Você deve "
+"As partição(ões) %s em %s foram escritas, mas não foi possível informar ao "
+"kernel sobre as alterações, provavelmente está(ão) em uso. Como resultado, "
+"a(s) partição(ões) antiga(s) permanecerá(ão) em uso.  Você deve "
 "reinicializar agora antes de realizar alterações posteriores."
 
 #: libparted/cs/geom.c:163
 #, c-format
 msgid "Can't have the end before the start! (start sector=%jd length=%jd)"
 msgstr ""
-"Não é possível possuir o fim antes do início! (setor inicial=%jd comprimento="
-"%jd)"
+"Não é possível ter o fim antes do início! (setor inicial=%jd comprimento=%jd)"
 
 #: libparted/cs/geom.c:379
 #, c-format
@@ -745,7 +694,7 @@ msgstr "Tentativa de escrever setores %ld-%ld fora da partição em %s."
 
 #: libparted/cs/geom.c:419
 msgid "checking for bad blocks"
-msgstr "verificando por blocos ruins"
+msgstr "verificando por blocos defeituosos"
 
 #: libparted/debug.c:97
 #, c-format
@@ -846,15 +795,15 @@ msgstr "metadados"
 msgid "free"
 msgstr "livre"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "estendida"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "lógica"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primária"
 
@@ -930,64 +879,73 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "pmbr_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Opção de partição desconhecida, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Informação"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Atenção"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Erro"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Fatal"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Erro"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Sem implementação"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Arrumar"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Sim"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Não"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Repetir"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Ignorar"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Cancelar"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -1001,43 +959,43 @@ msgstr ""
 "relatório de erro para %s contendo ao menos a versão (%s) e a seguinte "
 "mensagem:  "
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr ""
-"Suporte para leitura de rótulos de disco AIX não foi implementado ainda."
+"O suporte para leitura de rótulos de disco AIX ainda não foi implementado."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr ""
-"Suporte para escrita de rótulos de disco AIX não foi implementado ainda."
+"O suporte para escrita de rótulos de disco AIX ainda não foi implementado."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
-"Suporte para adicionar partições em rótulos de disco AIX não foi "
-"implementado ainda."
+"O suporte para adicionar partições em rótulos de disco AIX ainda não foi "
+"implementado."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
-"Suporte para duplicar partições em rótulos de disco AIX não foi implementado "
-"ainda."
+"O suporte para duplicar partições em rótulos de disco AIX ainda não foi "
+"implementado."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
 msgstr ""
-"Suporte para ajustar o tipo de sistema de partições em rótulos de disco AIX "
-"não foi implementado ainda."
+"O suporte para definir o tipo de sistema de partições em rótulos de disco "
+"AIX ainda não foi implementado."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
-"O suporte para definir opções em rótulos de disco AIX não foi implementado "
-"ainda."
+"O suporte para definir as opções em rótulos de disco AIX não foi "
+"implementado ainda."
 
 #: libparted/labels/atari.c:273
 #, fuzzy, c-format
@@ -1125,11 +1083,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Não foi possível satisfazer todos as restrições na partição."
@@ -1145,47 +1103,47 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Não é possível alocar um número de partição."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Não foi possível alocar uma posição para rótulo de disco bsd."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
 # Ponto final acrescentado para seguir as demais frases em volta desta
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Não foi possível alocar uma posição para rótulo de disco dasd."
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Tabela de partições inválida em %s -- assinatura errada %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Tabela de partições inválida - partição recursiva em %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr ""
 "Partições estendidas não podem ser escondidas em rótulos de disco msdos."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr ""
 "Partições estendidas não podem ser escondidas em rótulos de disco msdos."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "O Parted não pode redimensionar partições gerenciadas com o Disco Dinâmico "
 "do Windows."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "não é possível criar mais nenhuma partição"
 
@@ -1239,7 +1197,7 @@ msgstr "erro de leitura"
 
 #: libparted/labels/fdasd.c:148
 msgid "ioctl() error"
-msgstr "erro em ioctl()"
+msgstr "erro de ioctl()"
 
 #: libparted/labels/fdasd.c:152
 msgid "API version mismatch"
@@ -1330,11 +1288,11 @@ msgstr "Não foi possível recuperar informações de tamanho do bloco."
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "dispositivo é muito pequeno para GPT"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1343,7 +1301,7 @@ msgstr ""
 "A versão do formato da tabela de partição GPT é %x, que é mais recente do "
 "que o Parted pode reconhecer. Por favor, nos relate isso!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1354,7 +1312,7 @@ msgstr ""
 "corrigir a GPT para usar todo seu espaço (uns %llu blocos adicionais) ou "
 "continuar com a configuração atual? "
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1362,7 +1320,7 @@ msgstr ""
 "A cópia da tabela GPT não está no fim do disco, como deveria estar. Corrija-"
 "a, movendo a cópia para o fim do disco (e removendo a cópia antiga)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1371,7 +1329,7 @@ msgstr ""
 "fazer uma nova tabela, usando os recursos de recuperação do Parted para "
 "recuperar partições."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1379,7 +1337,7 @@ msgstr ""
 "A cópia da tabela GPT está corrompida, mas a tabela primária aparece estar "
 "OK, então esta será usada."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1387,11 +1345,11 @@ msgstr ""
 "A tabela GPT primária está corrompida, mas a cópia da tabela aparece estar "
 "OK, então esta será usada."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "CRC do conjunto de tabela de partição primária não coincide"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "falha ao traduzir nome de partição"
 
@@ -1402,7 +1360,7 @@ msgstr "Assinatura inválida %x para rótulos de disco Mac."
 
 #: libparted/labels/mac.c:232
 msgid "Partition map has no partition map entry!"
-msgstr "Mapa de partições não tem nenhuma entrada!"
+msgstr "O mapa de partições não tem nenhuma entrada!"
 
 #: libparted/labels/mac.c:280
 #, c-format
@@ -1424,18 +1382,14 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "A região de dados não começa no início da partição."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "A região de inicialização não começa no início da partição."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "A região de inicialização da partição não a ocupa inteiramente."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "A região de dados da partição não a ocupa inteiramente."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
@@ -1443,7 +1397,7 @@ msgstr ""
 "tamanho de bloco estranho no descritor de dispositivo: %d bytes não são "
 "divisíveis por 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1452,11 +1406,11 @@ msgstr ""
 "O descritor da controladora (driver) informa que o tamanho físico de bloco é "
 "%d bytes, mas o Linux informa que é %d bytes."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Nenhum mapa de partições válido foi encontrado."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1465,11 +1419,11 @@ msgstr ""
 "Conflito nos tamanhos de entrada do mapa de partições!  A entrada 1 diz que "
 "é %d, mas a entrada %d diz que é %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Que estranho! Há 2 entradas no mapa de partições!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1477,18 +1431,18 @@ msgstr ""
 "Mudar o nome de uma partição root ou swap irá impedir o Linux de reconhecê-"
 "la como tal."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr ""
 "Não é possível adicionar outra partição -- o mapa de partições é muito "
 "pequeno!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Tabela de partições inválida em %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1497,7 +1451,7 @@ msgstr ""
 "A partição %d não está alinhada aos limites do cilindro.  Isto ainda não é "
 "suportado."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Não posso adicionar outra partição."
 
@@ -1542,7 +1496,7 @@ msgstr "%s : A lista %s parece ruim no bloco %s."
 #: libparted/labels/rdb.c:693
 #, c-format
 msgid "%s : Failed to list bad blocks."
-msgstr "%s : Falha ao listar blocos ruins."
+msgstr "%s : Falha ao listar blocos defeituosos."
 
 #: libparted/labels/rdb.c:701
 #, c-format
@@ -1672,41 +1626,41 @@ msgstr "Não foi possível escrever VTOC FMT7 DSCB."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Não foi possível escrever VTOC FMT9 DSCB."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Memória insuficiente."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr ""
 "Não foi possível obter o tamanho da unidade para a unidade especial \"COMPACT"
 "\"."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "\"%s\" possui sintaxe inválida para localizações."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "O valor máximo do cabeçalho é %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "O valor máximo do setor é %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "A localização %s está para fora do dispositivo %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Número inválido."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "Use uma unidade menor ao invés de usar um valor < 1"
 
@@ -1716,18 +1670,18 @@ msgstr "Use uma unidade menor ao invés de usar um valor < 1"
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : Falha ao alocar bloco de partição\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : Falha ao alocar bloco\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : Não foi possível ler o bloco de inicialização %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1753,22 +1707,22 @@ msgstr "%s : Soma de verificação ruim no bloco %llu do tipo %s\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : Não foi possível escrever bloco %d\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s : Falha ao alocar bloco rdb de disco_específico\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s : Não foi encontrado bloco rdb, isto nunca deveria acontecer\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : Falha ao ler bloco de partição %llu\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1778,27 +1732,26 @@ msgstr ""
 
 #: libparted/fs/fat/bootsector.c:50 libparted/fs/r/fat/bootsector.c:49
 msgid "File system has an invalid signature for a FAT file system."
-msgstr "Sistema de arquivos tem uma assinatura inválida para um FAT."
+msgstr "O sistema de arquivos tem uma assinatura inválida para um FAT."
 
 #: libparted/fs/fat/bootsector.c:58 libparted/fs/r/fat/bootsector.c:57
 msgid "File system has an invalid sector size for a FAT file system."
-msgstr "Sistema de arquivos tem um tamanho de setor inválido para um FAT."
+msgstr "O sistema de arquivos tem um tamanho de setor inválido para um FAT."
 
 #: libparted/fs/fat/bootsector.c:65 libparted/fs/r/fat/bootsector.c:64
 msgid "File system has an invalid cluster size for a FAT file system."
-msgstr ""
-"O sistema de arquivos possui um tamanho de cluster inválido para um FAT."
+msgstr "O sistema de arquivos tem um tamanho de cluster inválido para um FAT."
 
 #: libparted/fs/fat/bootsector.c:72 libparted/fs/r/fat/bootsector.c:71
 msgid ""
 "File system has an invalid number of reserved sectors for a FAT file system."
 msgstr ""
-"O sistema de arquivos possui um número inválido de setores reservados à "
+"O sistema de arquivos tem um número inválido de setores reservados à "
 "sistemas de arquivo FAT."
 
 #: libparted/fs/fat/bootsector.c:79 libparted/fs/r/fat/bootsector.c:78
 msgid "File system has an invalid number of FATs."
-msgstr "O sistema de arquivos possui um número inválido de FATs."
+msgstr "O sistema de arquivos tem um número inválido de FATs."
 
 #: libparted/fs/fat/bootsector.c:162
 #, c-format
@@ -1811,15 +1764,18 @@ msgstr ""
 
 #: libparted/fs/fat/bootsector.c:197 libparted/fs/r/fat/bootsector.c:194
 msgid "FAT boot sector says logical sector size is 0.  This is weird. "
-msgstr "Setor de boot FAT diz que o tamanho lógico do setor é 0. Estranho. "
+msgstr ""
+"O setor de inicialização FAT diz que o tamanho lógico do setor é 0. "
+"Estranho. "
 
 #: libparted/fs/fat/bootsector.c:203 libparted/fs/r/fat/bootsector.c:200
 msgid "FAT boot sector says there are no FAT tables.  This is weird. "
-msgstr "Setor de boot FAT diz que não há tabelas FAT. Estranho. "
+msgstr "O setor de inicialização FAT diz que não há tabelas FAT. Estranho. "
 
 #: libparted/fs/fat/bootsector.c:209 libparted/fs/r/fat/bootsector.c:206
 msgid "FAT boot sector says clusters are 0 sectors.  This is weird. "
-msgstr "Setor de boot FAT diz que os clusters têm 0 setores. Estranho. "
+msgstr ""
+"O setor de inicialização FAT diz que os clusters têm 0 setores. Estranho. "
 
 #: libparted/fs/fat/bootsector.c:219 libparted/fs/r/fat/bootsector.c:216
 msgid "File system is FAT12, which is unsupported."
@@ -1864,7 +1820,7 @@ msgstr ""
 "você selecionar Arrumar, a geometria CHS do sistema de arquivos será "
 "definida para coincidir com a geometria CHS da tabela de partições."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1891,14 +1847,14 @@ msgstr ""
 "O cluster inicia em delta = %d, que não é um múltiplo do tamanho de cluster "
 "%d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Entrada de diretório inválida para %s: o primeiro cluster é o fim do "
 "marcador de arquivo."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1906,7 +1862,7 @@ msgstr ""
 "FAT ruim: cadeia não terminada para %s. Você deveria rodar o dosfsck ou o "
 "scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1915,7 +1871,7 @@ msgstr ""
 "FAT ruim: cluster %d fora do sistema de arquivos na cadeia para %s.  Você "
 "deveria rodar o dosfsck ou o scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1924,26 +1880,17 @@ msgstr ""
 "FAT ruim: o cluster %d tem uma referência cruzada para %s. Você deveria "
 "rodar o dosfsck ou o scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s é %dk, mas ele tem %d clusters (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"O arquivo %s está marcado como um arquivo de sistema.  Isto significa que "
-"movê-lo pode fazer com que alguns programas parem de funcionar."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Partição muito grande/pequena para um sistema de arquivos %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1951,11 +1898,11 @@ msgstr ""
 "As FATs não estão iguais. Se você não sabe o que isto significa, selecione "
 "cancelar, execute o scandisk no sistema de arquivos, depois volte."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Não há configurações possíveis para este tipo de FAT."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1966,7 +1913,7 @@ msgstr ""
 "O tamanho do cluster é %dk (%dk esperado); número de clusters é %d (%d "
 "esperado); tamanho da FAT é %d setores (%d esperado)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
@@ -1974,7 +1921,7 @@ msgstr ""
 "O sistema de arquivos está reportando que o espaço livre é %d clusters, não "
 "%d clusters."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1982,17 +1929,17 @@ msgstr ""
 "Não há espaço suficiente no diretório raiz para todos os arquivos.  Cancele, "
 "ou ignore para perder os arquivos."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Erro ao escrever no diretório raiz."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr ""
 "Se você deixar seu sistema de arquivos como FAT16, não haverá nenhum "
 "problema."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2002,7 +1949,7 @@ msgstr ""
 "você deverá reinstalar o gerenciador de boot do MS Windows. Se quiser fazer "
 "isso, consulte o manual do Parted (ou o manual de sua distribuição)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -2010,7 +1957,7 @@ msgstr ""
 "Se deixar seu sistema de arquivos como FAT32, você não criará mais nenhum "
 "problema novo."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2024,42 +1971,42 @@ msgstr ""
 "convertendo para FAT32 fará com que o sistema de arquivos não seja mais "
 "reconhecido pelo MS DOS, Windows 95a, e MS Windows NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Você gostaria de usar FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "O sistema de arquivos só pode ser redimensionado para este tamanho sendo "
 "convertido para FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "O sistema de arquivos só pode ser redimensionado para este tamanho sendo "
 "convertido para FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "O GNU Parted não pode redimensionar esta partição a este tamanho.  Estamos "
 "trabalhando nisto!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2068,43 +2015,43 @@ msgstr ""
 "FAT %d mídia %x não bate com o setor de boot mídia %x. Você deveria executar "
 "o scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: cluster %ld fora do sistema de arquivos"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: cluster %ld fora do sistema de arquivos"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: não há clusters livres"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Não foi possível detectar o sistema de arquivos."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "não é suportado redimensionar sistemas de arquivos %s"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "O sistema de arquivos é maior que seu volume!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "O sistema de arquivos contém erros."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
-msgstr "Blocos ruins não podem ser lidos."
+msgstr "Blocos defeituosos não podem ser lidos."
 
 #: libparted/fs/r/hfs/cache.c:137
 #, c-format
@@ -2166,90 +2113,91 @@ msgstr "Não foi possível encontrar setor %lli de arquivo HFS+ com CNID %X."
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "Tentando escrever arquivo HFS+ com CNID %X atrás do fim do arquivo."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "Desculpe, HFS não pode ser redimensionada deste modo ainda."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "encolhendo"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Realocação de dados falhou."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr "A realocação de dados deixou alguns dados no final do volume."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "escrevendo bloco de diretório mestre HFS"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "Nenhuma assinatura HFS[+X] válida foi encontrada ao abrir."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "Não há suporte para a versão %d do HFS+."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "Não há suporte para a versão %d do HFSX."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "A realocação de dados deixou alguns dados no final do volume."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Erro ao escrever o arquivo de alocação."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "Erro ao escrever a parte de compatibilidade do arquivo de alocação."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "escrevendo cabeçalho de volume HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr ""
-"Ocorreu um erro enquanto era visto o arquivo obrigatório de blocos ruins."
+"Ocorreu um erro enquanto era visto o arquivo obrigatório de blocos "
+"defeituosos."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
 msgstr ""
-"Parece que há um erro no empacotador HFS: o arquivo de blocos ruins não "
-"contém um volume HFS+ embutido."
+"Parece que há um erro no empacotador HFS: o arquivo de blocos defeituosos "
+"não contém um volume HFS+ embutido."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "Desculpe, HFS+ não pode ser redimensionada deste modo ainda."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "encolhendo volume HFS+ embutido"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Redimensionamento de volume HFS+ falhou."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "reduzindo empacotador HFS"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "Falha na atualização do empacotador HFS."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2260,7 +2208,7 @@ msgstr ""
 
 #: libparted/fs/r/hfs/journal.c:155
 msgid "Bad block list header checksum."
-msgstr "Soma de verificação do cabeçalho de lista de blocos ruins."
+msgstr "Soma de verificação do cabeçalho de lista de blocos defeituosos."
 
 #: libparted/fs/r/hfs/journal.c:168
 #, c-format
@@ -2329,7 +2277,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Uma extensão não foi realocada."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2337,17 +2285,17 @@ msgstr ""
 "Uma referência para uma extensão vem de um local indevido.  Você deve "
 "verificar o sistema de arquivos!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "Este volume HFS não possui arquivo de catálogo.  Isto é muito incomum!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Este volume HFS não possui nenhum arquivo de estouro de extensão.  Isto é "
 "bastante incomum!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2355,55 +2303,55 @@ msgstr ""
 "O arquivo de estouro de extensões não deve conter suas próprias extensões!  "
 "Você deve verificar o sistema de arquivos."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Não foi possível armazenar em cache o sistema de arquivos em memória."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
-msgstr "A lista de blocos ruins não pôde ser carregada."
+msgstr "A lista de blocos defeituosos não pôde ser carregada."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Ocorreu um erro durante a realocação da extensão."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr ""
 "Este volume HFS+ não possui nenhum arquivo de catálogo.  Isto é muito "
 "incomum!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Este volume HFS+ não possui nenhum arquivo de estouro de extensões.  Isto é "
 "bastante incomum!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "mostra esta mensagem de ajuda"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "lista modelos de partições em todos os dispositivos de bloco"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "exibe saída analisável por máquina"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "nunca pede intervenção do usuário"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "mostra a versão"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "alinhamento para novas partições"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2411,31 +2359,31 @@ msgstr ""
 "NÚMERO é o número da partição usado pelo Linux.  Em rótulos de disco MS-DOS, "
 "as partições primárias são de 1 a 4 e partições lógicas de 5 adiante.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "TIPO_RÓTULO é um de:"
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "OPÇÃO é um de: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "UNIDADE é um de: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "alinhamento desejado: mínimo ou ideal"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "TIPO-PART é uma: primária, lógica, estendida\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "SISTARQ é um de: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2445,7 +2393,7 @@ msgstr ""
 "negativos contam a partir do final do disco.  Por exemplo, -1s especifica "
 "exatamente o último setor.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2454,19 +2402,19 @@ msgstr ""
 "a partir do final do disco.  Por exemplo, -1s especifica exatamente o último "
 "setor.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "ESTADO é um de: on, off\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "DISPOSITIVO é usualmente /dev/hda ou /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NOME é qualquer palavra que desejar\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2487,22 +2435,22 @@ msgstr ""
 "mais detalhes.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(tempo restante %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "A partição %s está em uso. Você tem certeza que deseja continuar?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Partição(ões) em %s está(ão) sendo utilizada(s)."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2511,31 +2459,31 @@ msgstr ""
 "O rótulo de disco existente em %s será destruído e todos os dados neste "
 "disco serão perdidos. Você deseja continuar?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Novo tipo de rótulo de disco?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Tipo da partição?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Nome da partição?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Tipo do sistema de arquivos?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Iniciar?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Terminar?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2545,7 +2493,7 @@ msgstr ""
 "A localização mais próxima que podemos gerenciar é de %s até %s (setores "
 "%llu..%llu).%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2553,96 +2501,96 @@ msgstr ""
 "\n"
 "Isto é ainda aceitável para você?"
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, fuzzy, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 "A partição resultante não é propriamente alinhada para melhor performance."
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "Rótulos de disco %s não suportam partições estendidas."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Número da partição?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 "cilindro pela BIOS,cabeça,geometria do setor: %d,%d,%d.  Cada cilindro é "
 "%s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Modelo: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Disco %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Tamanho do setor (lógico/físico): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Tabela de partições: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Opções de disco: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Número"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Início"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Fim"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Tamanho"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Tipo"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Sistema de arquivos"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Nome"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Opções"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Espaço livre"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2651,56 +2599,56 @@ msgstr ""
 "Uma partição %s %s foi encontrada em %s -> %s.  Você deseja adicioná-la a "
 "tabela de partições?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "pesquisando por sistemas de arquivo"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "O comando resize foi removido no parted 3.0"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "Reduzir uma partição pode causar perda de dados, você tem certeza que deseja "
 "continuar?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Novo dispositivo?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "tipo de alinhamento(min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d alinhado(s)\n"
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, fuzzy, c-format
 msgid "%d not aligned: %s\n"
 msgstr "%d não alinhado(s)\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Opção para inverter?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Novo estado?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Unidade?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
@@ -2709,11 +2657,11 @@ msgstr ""
 "align-check TIPO N                        verifica a partição N para "
 "alinhamento de TIPO(mínimo|ideal)"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2721,15 +2669,15 @@ msgstr ""
 "help [COMANDO]                            exibe a ajuda geral, ou ajuda para "
 "o COMANDO"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2737,15 +2685,15 @@ msgstr ""
 "mklabel,mktable TIPO-RÓTULO               cria um novo rótulo de disco (na "
 "tabela de partição)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart TIPO-PART [TIPO-SISTARQ] INÍCIO FIM     cria uma partição"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2755,21 +2703,21 @@ msgstr ""
 "partição estendida). Este comando é útil se você apagou acidentalmente uma "
 "partição.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "name NÚMERO NOME                          renomeia a partição NÚMERO para "
 "NOME"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2779,7 +2727,7 @@ msgstr ""
 "dispositivos disponíveis, espaço livre, todas as partições encontradas ou "
 "uma partição específica"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2787,11 +2735,11 @@ msgstr ""
 "Sem argumentos, \"print\" exibe a tabela de partições inteira. Entretanto, "
 "com os argumentos a seguir, ele executa várias outras ações.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : exibe todos os dispositivos de bloco ativos\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2799,14 +2747,14 @@ msgstr ""
 "  free      : exibe informações sobre espaço livre não particionado no "
 "dispositivo de bloco atual\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all : exibe as tabelas de partições de todos os dispositivos de "
 "bloco ativos\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
@@ -2814,19 +2762,19 @@ msgstr ""
 "  NÚMERO    : exibe informações mais detalhadas sobre esta partição "
 "específica\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                     sai do programa"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2834,56 +2782,56 @@ msgstr ""
 "rescue INÍCIO FIM                        recupera uma partição perdida "
 "próxima do INÍCIO e FIM"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "O comando resize foi removido no parted 3.0\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "resizepart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr ""
 "resizepart NÚMERO FIM                    redimensiona a partição NÚMERO"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm NÚMERO                                apaga a partição NÚMERO"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr ""
 "select DISPOSITIVO                       escolhe o dispositivo para editar"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disk_set"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 "disk_set OPÇÃO ESTADO                    muda o estado de OPÇÃO no "
 "dispositivo selecionado"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
@@ -2891,21 +2839,21 @@ msgstr ""
 "disk_toggle [OPÇÃO]                      alterna o estado de OPÇÃO no "
 "dispositivo selecionado"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "set NÚMERO OPÇÃO ESTADO                  muda a OPÇÃO na partição NÚMERO"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2913,20 +2861,20 @@ msgstr ""
 "toggle [NÚMERO [OPÇÃO]]                  alterna o estado de OPÇÃO no NÚMERO "
 "da partição"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "unit UNIDADE                             define como unidade padrão UNIDADE"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2934,7 +2882,7 @@ msgstr ""
 "version                                  exibe o número da versão e "
 "informações de direitos autorais do GNU Parted"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2942,30 +2890,38 @@ msgstr ""
 "'version' exibe informações de versão e direitos autorais correspondentes a "
 "esta cópia do GNU Parted\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 "Uso: %s [-hlmsv] [-a<alinhamento>] [DISPOSITIVO [COMANDO [PARÂMETROS]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Nenhum dispositivo encontrado"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "ATENÇÃO: Você não é super usuário.  Tome cuidado com permissões.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Você deve reinstalar seu carregador de inicialização antes de reinicializar. "
+"Leia a seção 4 da documentação do usuário do Parted para mais informações."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Você pode precisar atualizar /etc/fstab.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 "Bem vindo ao GNU Parted! Digite 'help' para ver uma lista de comandos.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2976,7 +2932,7 @@ msgstr ""
 "Aplica COMANDOs com PARÂMETROS para DISPOSITIVO. Se nenhum COMANDO(s) forem\n"
 "informados, executa-se em modo interativo.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -3039,7 +2995,7 @@ msgstr ""
 "Isto também inclui quaisquer informações adicionais sobre seu sistema\n"
 "que você considerar relevantes.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -3047,7 +3003,7 @@ msgstr ""
 "\n"
 "Histórico de comandos:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -3055,7 +3011,7 @@ msgstr ""
 "\n"
 "Erro: SEGV_MAPERR (Endereço não mapeado ao objeto)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3063,7 +3019,7 @@ msgstr ""
 "\n"
 "Erro: SEGV_ACCERR (Permissões inválidas para o objeto mapeado)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3071,7 +3027,7 @@ msgstr ""
 "\n"
 "Erro: Um sinal geral SIGSEGV foi encontrado.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3079,7 +3035,7 @@ msgstr ""
 "\n"
 "Error: FPE_INTDIV (Inteiro: divisão por zero)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3087,7 +3043,7 @@ msgstr ""
 "\n"
 "Erro: FPE_INTOVF (Inteiro: estouro)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3095,7 +3051,7 @@ msgstr ""
 "\n"
 "Erro: FPE_FLTDIV (Real: divisão por zero)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3103,7 +3059,7 @@ msgstr ""
 "\n"
 "Erro: FPE_FLTOVF (Real: estouro)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3111,7 +3067,7 @@ msgstr ""
 "\n"
 "Erro: FPE_FLTUND (Real: estouro negativo)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3119,7 +3075,7 @@ msgstr ""
 "\n"
 "Erro: FPE_FLTRES (Real: resultado não exato)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3127,7 +3083,7 @@ msgstr ""
 "\n"
 "Erro: FPE_FLTINV (Real: operação inválida)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3135,7 +3091,7 @@ msgstr ""
 "\n"
 "Erro: FPE_FLTSUB (Real: subscrito fora de alcance)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3143,7 +3099,7 @@ msgstr ""
 "\n"
 "Erro: Um sinal geral SIGFPE foi encontrado."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3151,7 +3107,7 @@ msgstr ""
 "\n"
 "Erro: ILL_ILLOPC (Código de operação privilegiado)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3159,7 +3115,7 @@ msgstr ""
 "\n"
 "Erro: ILL_ILLOPN (Operando ilegal)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3167,7 +3123,7 @@ msgstr ""
 "\n"
 "Erro: ILL_ILLADR (Modo de endereçamento ilegal)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3175,7 +3131,7 @@ msgstr ""
 "\n"
 "Erro: ILL_ILLTRP (Interrupção ilegal)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3183,7 +3139,7 @@ msgstr ""
 "\n"
 "Erro: ILL_PRVOPC (Código de operação privilegiado)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3191,7 +3147,7 @@ msgstr ""
 "\n"
 "Erro: ILL_PRVREG (Registrador privilegiado)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3199,7 +3155,7 @@ msgstr ""
 "\n"
 "Erro: ILL_COPROC (Erro do coprocessador)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3207,7 +3163,7 @@ msgstr ""
 "\n"
 "Erro: ILL_BADSTK (Erro interno da pilha)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3215,69 +3171,69 @@ msgstr ""
 "\n"
 "Erro: Um sinal geral SIGILL foi encontrado."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "token inválido: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Espera-se um número de partição."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "A partição não existe."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Espera-se um tipo de sistema de arquivos."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Tipo de sistema de arquivos \"%s\" desconhecido."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Espera-se um tipo de rótulo de disco."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Não é possível criar mais nenhuma partição."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Espera-se um tipo de partição."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "ligado"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "desligado"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "ideal"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "mínimo"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "OPÇÕEs:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "COMANDOs:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3286,30 +3242,79 @@ msgstr ""
 "\n"
 "Informe erros para %s\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Usando %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Este comando não faz sentido em modo não interativo.\n"
 
+#, c-format
 #~ msgid "%s: option '--%s' doesn't allow an argument\n"
 #~ msgstr "%s: a opção \"--%s\" não permite um argumento\n"
 
+#, c-format
 #~ msgid "%s: unrecognized option '--%s'\n"
 #~ msgstr "%s: opção desconhecido \"--%s\"\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' doesn't allow an argument\n"
 #~ msgstr "%s: a opção \"-W %s\" não permite um argumento\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' requires an argument\n"
 #~ msgstr "%s: a opção \"-W %s\" exige um argumento\n"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "Página do %s: <http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "argumento inválido para %s%s: \"%s\""
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "sufixo inválido no argumento para %s%s: \"%s\""
+
+#, c-format
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "argumento grande demais para %s%s: \"%s\""
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "A tabela de partições não pde ser lida novamente. Isto significa que você "
+#~ "precisa reiniciar antes de montar qualquer partição modificada. Você "
+#~ "também precisa reinstalar seu carregador de inicialização antes de "
+#~ "reinicializar (o que pode exigir a montagem das partições modificadas). É "
+#~ "impossível fazer as duas coisas! Então você irá precisar inicializar por "
+#~ "um disco de resgate, e reinstalar seu gerenciador de boot a partir deste "
+#~ "disco.  Leia a seção 4 da documentação do usuário do Parted para maiores "
+#~ "informações."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "A tabela de partições em %s não pode ser lida novamente (%s).  Isto "
+#~ "significa que o GNU Hurd não sabe nada sobre as modificações que você "
+#~ "fez. Você deve reinicializar seu computador antes de fazer qualquer coisa "
+#~ "em %s."
+
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "A região de inicialização não começa no início da partição."
+
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3318,6 +3323,14 @@ msgstr "Este comando não faz sentido em modo não interativo.\n"
 #~ "Parted é conhecido por não funcionar corretamente com setores diferentes "
 #~ "de 512 bytes."
 
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "O arquivo %s está marcado como um arquivo de sistema.  Isto significa que "
+#~ "movê-lo pode fazer com que alguns programas parem de funcionar."
+
 #~ msgid "Failed to add partition %d (%s)"
 #~ msgstr "Ocorreu falha ao adicionar partição %d (%s)"
 
index 175be08f525f8732013198aebe96abc8e10d3b31..92b8f9a6836c6f9f5398706083dcd3832b9385ff 100644 (file)
Binary files a/po/ro.gmo and b/po/ro.gmo differ
index 16b250fde4f015b9e06c6fe27dcf1c08bda4ff2a..e83d2021b286ee0580f0b5f045bf172b6ee6b401 100644 (file)
--- a/po/ro.po
+++ b/po/ro.po
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 1.6.23\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2005-08-08 12:00-05\n"
 "Last-Translator: Laurentiu Buzdugan <lbuz@rolix.org>\n"
 "Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
@@ -96,11 +96,11 @@ msgstr ""
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr ""
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr ""
 
@@ -341,79 +341,64 @@ msgstr ""
 msgid "memory exhausted"
 msgstr ""
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr ""
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr ""
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr ""
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr ""
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Eroare la deschiderea %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
 msgstr ""
 "Nu pot deschide %s citire-scriere (%s). %s a fost deschis numai-citire."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s în timpul cãutãrii pentru citire pe %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s în timpul citirii pe %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Nu pot scrie pe %s, pentru cã este deschis numai-citire."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s în timpul cãutãrii pentru scriere pe %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s în timpul scrierii pe %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr ""
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -423,13 +408,13 @@ msgid ""
 "  -v, --version    output version information and exit\n"
 msgstr ""
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
 msgstr ""
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -445,45 +430,7 @@ msgstr "Nu pot deschide %s."
 msgid "Unable to probe store."
 msgstr "Nu pot proba `store'."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Tabela de partiþii nu poate fi recititã.  Aceasta înseamnã cã trebuie sã "
-"reboot-aþi înainte  de a monta orice partiþii modificate.  Deasemenea, ar "
-"trebui sã reinstalaþi boot loader-ul înainte de a reboot-a (ceea ce ar putea "
-"sã necesite montarea partiþiilor modificate).  Este imposibil sã faceþi "
-"ambele lucruri!  Aºa cã trebuie sã boot-aþi de pe un disc de salvare ºi "
-"reinstalaþi boot loader-ul d-voastrã de pe discul de salvare.  Citiþi "
-"secþiunea 4 din documentaþia utilizatorului de Parted pentru informaþii "
-"suplimentare."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Tabela de partiþii pe %s nu poate fi re-cititã (%s).  Aceasta înseamnã cã "
-"Hurd nu ºtie nimic despre nici o modificare pe care aþi fãcut-o.  Ar trebui "
-"sã reboot-aþi computerul înainte de a face ceva cu %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Ar trebui sã reinstalaþi boot loader-ul d-voastrã înainte de reboot-are.  "
-"Citiþi secþiunea 4 din documentaþia utilizatorului Parted pentru informaþii "
-"suplimentare."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s încearcã sã sincronizeze %s pe disc"
@@ -789,15 +736,15 @@ msgstr "metadata"
 msgid "free"
 msgstr "liber"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "extinsã"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logicã"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primarã"
 
@@ -874,64 +821,73 @@ msgstr ""
 msgid "esp"
 msgstr ""
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Flag de partiþie necunoscut, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Informaþii"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Avertisment"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Eroare"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Fatalã"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Bug"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr ""
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr ""
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr ""
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr ""
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr ""
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr ""
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr ""
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr ""
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -940,31 +896,31 @@ msgid ""
 "containing at least the version (%s) and the following message:  "
 msgstr ""
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr ""
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr ""
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
 msgstr ""
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 
@@ -1052,11 +1008,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Nu pot satisface toate constrângerile pe partiþie."
@@ -1072,43 +1028,43 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Nu pot aloca un numãr de partiþie."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Nu pot aloca loc pentru eticheta de disc bsd."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 #, fuzzy
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Nu pot aloca loc pentru eticheta de disc bsd."
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Tabela de partiþii invalidã pe %s -- semnãturã greºitã %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Tabela de partiþii invalidã - partiþie recursivã pe %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr ""
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "Tabela de partiþii invalidã - partiþie recursivã pe %s."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 #, fuzzy
 msgid "cannot create any more partitions"
 msgstr "Nu mai pot crea nici o partiþie"
@@ -1251,11 +1207,11 @@ msgstr ""
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr ""
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, fuzzy, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1264,7 +1220,7 @@ msgstr ""
 "Formatul tabelei de partiþii GPT este versiunea %x, care este mai nou decât "
 "ceea ce Parted poate recunoaºte.  Vã rugãm spuneþi-ne!  bug-parted@gnu.org"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1272,7 +1228,7 @@ msgid ""
 "setting? "
 msgstr ""
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 #, fuzzy
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
@@ -1283,7 +1239,7 @@ msgstr ""
 "mai mic.  Reparã, mutând rezerva (backup) la sfârºit (ºi ºterge vechea "
 "rezervã?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1292,7 +1248,7 @@ msgstr ""
 "o tabelã nouã ºi sã folosiþi capabilitatea de salvare lui Parted pentru a "
 "recupera partiþiile."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 #, fuzzy
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
@@ -1301,7 +1257,7 @@ msgstr ""
 "Tabela primarã GPT este coruptã, dar rezerva pare OK, aºa cã va fi folositã "
 "rezerva."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1309,11 +1265,11 @@ msgstr ""
 "Tabela primarã GPT este coruptã, dar rezerva pare OK, aºa cã va fi folositã "
 "rezerva."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr ""
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 #, fuzzy
 msgid "failed to translate partition name"
 msgstr "Nu pot aloca un numãr de partiþie."
@@ -1347,18 +1303,14 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Regiunea de date nu începe la începutul partiþiei."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Regiunea de boot nu începe la începutul partiþiei."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Regiunea de boot a partiþiei nu ocupã întreaga partiþie."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Regiunea de date a partiþiei nu ocupã întreaga partiþie."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
@@ -1366,7 +1318,7 @@ msgstr ""
 "Dimensiune de bloc ciudatã pe descriptorul dispozitivului: %d octeþi nu este "
 "divizibil cu 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1375,44 +1327,44 @@ msgstr ""
 "Descriptorul de driver spune cã dimensiunea fizicã a blocului este %d octeþi "
 "dar Linux spune cã este %d octeþi."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Nu a fost gãsitã nici o hartã de partiþie validã."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
 "says it is %d!"
 msgstr ""
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Ciudat!  Existã 2 intrãri în harta partiþiei"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
 msgstr ""
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr ""
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Tabela de partiþii invalidã pe %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
 "unsupported."
 msgstr ""
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr ""
 
@@ -1577,39 +1529,39 @@ msgstr ""
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr ""
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr ""
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr ""
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr ""
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr ""
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr ""
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr ""
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr ""
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr ""
 
@@ -1619,18 +1571,18 @@ msgstr ""
 msgid "%s : Failed to allocate partition block\n"
 msgstr "Nu pot aloca un numãr de partiþie."
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1656,22 +1608,22 @@ msgstr ""
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s în timpul scrierii pe %s"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr ""
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1753,7 +1705,7 @@ msgid ""
 "geometry."
 msgstr ""
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1773,59 +1725,52 @@ msgid ""
 "Cluster start delta = %d, which is not a multiple of the cluster size %d."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
 "dosfsck or scandisk."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
 "scandisk."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr ""
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Partiþie prea mare/micã pentru un sistem de fiºiere %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
 msgstr ""
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr ""
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1833,40 +1778,40 @@ msgid ""
 "FATs is %d sectors (%d expected)."
 msgstr ""
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
 "should consult the Parted manual (or your distribution's manual)."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1875,77 +1820,77 @@ msgid ""
 "Windows 95a, and MS Windows NT."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
 "probably run scandisk."
 msgstr ""
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr ""
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr ""
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr ""
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr ""
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, fuzzy, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "Aºtept un tip de sistem de fiºiere."
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr ""
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr ""
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr ""
 
@@ -2003,87 +1948,87 @@ msgstr ""
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2148,127 +2093,127 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr ""
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr ""
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr ""
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr ""
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr ""
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 #, fuzzy
 msgid "alignment for new partitions"
 msgstr "Nu mai pot crea nici o partiþie"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
 msgstr ""
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr ""
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr ""
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr ""
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr ""
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr ""
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr ""
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
 "sector.\n"
 msgstr ""
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
 msgstr ""
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr ""
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr ""
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr ""
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 #, fuzzy
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
@@ -2288,216 +2233,216 @@ msgstr ""
 "PENTRU UN SCOP ANUME.  Vedeþi Licenþa Publicã Generalã GNU (GNU GPL) pentru\n"
 "detalii suplimentare.\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr ""
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr ""
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
 "will be lost. Do you want to continue?"
 msgstr ""
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Tip de etichetã pentru discul nou?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr ""
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr ""
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr ""
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr ""
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr ""
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
 "The closest location we can manage is %s to %s (sectors %llu..%llu).%s"
 msgstr ""
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
 msgstr ""
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "Etichetele de disc %s nu suportã partiþii extinse."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr ""
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr ""
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr ""
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr ""
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, fuzzy, c-format
 msgid "Partition Table: %s\n"
 msgstr "Tabela de partiþii invalidã pe %s."
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr ""
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Numãr"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Start"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Sfârºit"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Dimensiune"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Tip"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Sistem de fiºiere"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Nume"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr ""
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr ""
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
 "partition table?"
 msgstr ""
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr ""
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr ""
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr ""
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr ""
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr ""
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, c-format
 msgid "%d not aligned: %s\n"
 msgstr ""
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr ""
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr ""
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr ""
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr ""
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
 msgstr ""
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 #, fuzzy
 msgid ""
 "help [COMMAND]                           print general help, or help on "
@@ -2506,15 +2451,15 @@ msgstr ""
 "help [COMANDA]                afiºeazã informaþii generale, sau\n"
 "                                depre COMANDA"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr ""
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 #, fuzzy
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
@@ -2523,15 +2468,15 @@ msgstr ""
 "mklabel TIP_ETICHETA          creazã o nouã etichetã de disc\n"
 "                                       (tabela de partiþii)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart TIP-PART [TIP-SF] START SFÂRªIT    creazã o partiþie"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 #, fuzzy
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
@@ -2541,27 +2486,27 @@ msgstr ""
 "partiþie. TIP-SF poate fi specificat pentru a seta un anumit ID de "
 "partiþie.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 #, fuzzy
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr "name NUMÃR NUME               numeºte patiþia NUMÃR ca NUME"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
 "partition"
 msgstr ""
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 #, fuzzy
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
@@ -2571,41 +2516,41 @@ msgstr ""
 "un numãr de partiþie, atunci este afiºatã informaþii detaliate despre acea\n"
 "partiþie.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
 msgstr ""
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 #, fuzzy
 msgid "quit                                     exit program"
 msgstr "quit                          ieºire din program"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 #, fuzzy
 msgid ""
 "rescue START END                         rescue a lost partition near START "
@@ -2614,130 +2559,139 @@ msgstr ""
 "rescue START SFARSIT           salveazã o partiþie pierdutã lingã START ºi\n"
 "                                 SFARSIT"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr ""
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 #, fuzzy
 msgid "resizepart"
 msgstr "resize"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 #, fuzzy
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "rm NUMÃR                      ºterge partiþia NUMÃR"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 #, fuzzy
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm NUMÃR                      ºterge partiþia NUMÃR"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 #, fuzzy
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select UNITATE                 alege unitatea de editat"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr ""
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr ""
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
 msgstr ""
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 #, fuzzy
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr "set NUMÃR FLAG STARE          schimbã un flag pe partiþia NUMÃR"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr ""
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 #, fuzzy
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
 msgstr "rm NUMÃR                      ºterge partiþia NUMÃR"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unitate"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 #, fuzzy
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr "quit UNITATE                  seteazã unitatea implicitã ca UNITATE"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr ""
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
 msgstr ""
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
 msgstr ""
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Nu a fost gãsitã nici o unitate"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr ""
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Ar trebui sã reinstalaþi boot loader-ul d-voastrã înainte de reboot-are.  "
+"Citiþi secþiunea 4 din documentaþia utilizatorului Parted pentru informaþii "
+"suplimentare."
+
+#: parted/parted.c:2341
 #, fuzzy
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Nu uitaþi sã actualizaþi /etc/fstab, dacã e necesar.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 #, fuzzy
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
@@ -2749,7 +2703,7 @@ msgstr ""
 "Aplicã COMANDA cu PARAMETII la UNITATE.  Dacã nu este datã nici o COMANDÃ,\n"
 "ruleazã în mod interactiv.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2783,216 +2737,217 @@ msgid ""
 "consider important.\n"
 msgstr ""
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
 msgstr ""
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
 msgstr ""
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
 msgstr ""
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
 msgstr ""
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
 msgstr ""
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
 msgstr ""
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
 msgstr ""
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
 msgstr ""
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
 msgstr ""
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
 msgstr ""
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
 msgstr ""
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
 msgstr ""
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
 msgstr ""
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
 msgstr ""
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
 msgstr ""
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
 msgstr ""
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
 msgstr ""
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
 msgstr ""
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
 msgstr ""
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
 msgstr ""
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr ""
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Aºtept un numãr de partiþie."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Partiþia nu existã."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Aºtept un tip de sistem de fiºiere."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Tip de sistem de fiºiere necunoscut \"%s\"."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Aºtept un tip de etichetã de disc."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Nu mai pot crea nici o partiþie"
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Aºtept un tip de partiþie."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "pornit"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "oprit"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr ""
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr ""
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "OPÞIUNI:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "COMMENZI:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
 "Report bugs to %s\n"
 msgstr ""
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Folosesc %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr ""
 
+#, c-format
 #~ msgid ""
 #~ "The sector size on %s is %d bytes.  Parted is known not to work properly "
 #~ "with drives with sector sizes other than %d bytes."
@@ -3004,6 +2959,7 @@ msgstr ""
 #~ msgid "IDE"
 #~ msgstr "IDE"
 
+#, c-format
 #~ msgid ""
 #~ "The kernel was unable to re-read the partition table on %s (%s).  This "
 #~ "means Linux won't know anything about the modifications you made until "
@@ -3015,6 +2971,34 @@ msgstr ""
 #~ "pânã când nu reboot-aþi.  Ar trebui sã reboot-aþi computerul înainte de a "
 #~ "face ceva cu %s."
 
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Tabela de partiþii nu poate fi recititã.  Aceasta înseamnã cã trebuie sã "
+#~ "reboot-aþi înainte  de a monta orice partiþii modificate.  Deasemenea, ar "
+#~ "trebui sã reinstalaþi boot loader-ul înainte de a reboot-a (ceea ce ar "
+#~ "putea sã necesite montarea partiþiilor modificate).  Este imposibil sã "
+#~ "faceþi ambele lucruri!  Aºa cã trebuie sã boot-aþi de pe un disc de "
+#~ "salvare ºi reinstalaþi boot loader-ul d-voastrã de pe discul de salvare.  "
+#~ "Citiþi secþiunea 4 din documentaþia utilizatorului de Parted pentru "
+#~ "informaþii suplimentare."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "Tabela de partiþii pe %s nu poate fi re-cititã (%s).  Aceasta înseamnã cã "
+#~ "Hurd nu ºtie nimic despre nici o modificare pe care aþi fãcut-o.  Ar "
+#~ "trebui sã reboot-aþi computerul înainte de a face ceva cu %s."
+
+#, c-format
 #~ msgid ""
 #~ "%s contains GPT signatures, indicating that it has a GPT table.  However, "
 #~ "it does not have a valid fake msdos partition table, as it should.  "
@@ -3028,6 +3012,9 @@ msgstr ""
 #~ "partiþii GPT.  Sau probabil cã aþi ºters tabela GPT ºi folosiþi acum o "
 #~ "tabelã de partiþii msdos.  Este aceasta o tabelã de partiþii GPT?"
 
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "Regiunea de boot nu începe la începutul partiþiei."
+
 #~ msgid "Destination partition number?"
 #~ msgstr "Numãrul partiþiei destinaþie?"
 
@@ -3082,6 +3069,7 @@ msgstr ""
 #~ "resize NUMÃR START SFÂRªIT    redimensioneazã partiþia NUMÃR ºi sistemul "
 #~ "sãu de fiºiere"
 
+#, c-format
 #~ msgid ""
 #~ "You found a bug in GNU Parted.  Please email a bug report to bug-"
 #~ "parted@gnu.org containing the version (%s), and the following message:\n"
index 53de101607562ed2181add459d7adb4e6abd2383..7900fb75a855c7e31e044d5639d59bf0987c5e25 100644 (file)
Binary files a/po/ru.gmo and b/po/ru.gmo differ
index b39a68cdfe72751a7c2ab8ed2303fc07ede750ff..ace519c0414d58660f2e7a95d66f7ed9c9f0af37 100644 (file)
--- a/po/ru.po
+++ b/po/ru.po
@@ -5,14 +5,14 @@
 # Dmitry S. Sivachenko <dima@Chg.RU>, 1999.
 # Dimitriy Ryazantcev <DJm00n@mail.ru>, 2007, 2008.
 # Pavel Maryanov <acid@jack.kiev.ua>, 2014.
-# Yuri Kozlov <yuray@komyakino.ru>, 2014, 2018.
+# Yuri Kozlov <yuray@komyakino.ru>, 2014, 2018, 2021.
 # Galina Anikina <merilaga@yandex.ru>, 2018.
 msgid ""
 msgstr ""
-"Project-Id-Version: parted 3.1.90\n"
+"Project-Id-Version: parted 3.3.52\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
-"PO-Revision-Date: 2018-11-10 11:53+0300\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
+"PO-Revision-Date: 2021-01-22 08:15+0300\n"
 "Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
 "Language-Team: Russian <gnu@d07.ru>\n"
 "Language: ru\n"
@@ -20,7 +20,7 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "X-Bugs: Report translation errors to the Language-Team address.\n"
-"X-Generator: Lokalize 2.0\n"
+"X-Generator: Lokalize 20.12.0\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"
 
@@ -47,29 +47,29 @@ msgid "Unknown system error"
 msgstr "Неизвестная системная ошибка"
 
 #: lib/getopt.c:278
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' is ambiguous\n"
-msgstr "%s: Ð½ÐµÐ¾Ð´Ð½Ð¾Ð·Ð½Ð°Ñ\87нÑ\8bй Ð¿Ð°Ñ\80амеÑ\82Ñ\80 Â«-W %s»\n"
+msgstr "%s: Ð´Ð²Ñ\83Ñ\81мÑ\8bÑ\81леннÑ\8bй Ð¿Ð°Ñ\80амеÑ\82Ñ\80 Â«%s%s»\n"
 
 #: lib/getopt.c:284
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' is ambiguous; possibilities:"
-msgstr "%s: Ð½ÐµÐ¾Ð´Ð½Ð¾Ð·Ð½Ð°Ñ\87нÑ\8bй Ð¿Ð°Ñ\80амеÑ\82Ñ\80 '%s'; Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ñ\8bе Ð·Ð½Ð°Ñ\87ениÑ\8f:"
+msgstr "%s: Ð´Ð²Ñ\83Ñ\81мÑ\8bÑ\81леннÑ\8bй Ð¿Ð°Ñ\80амеÑ\82Ñ\80 Â«%s%s»; Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ñ\8bе Ð²Ð°Ñ\80ианÑ\82Ñ\8b:"
 
 #: lib/getopt.c:319
-#, fuzzy, c-format
+#, c-format
 msgid "%s: unrecognized option '%s%s'\n"
-msgstr "%s: нераспознанный параметр '%c%s'\n"
+msgstr "%s: нераспознанный параметр «%s%s»\n"
 
 #: lib/getopt.c:345
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' doesn't allow an argument\n"
-msgstr "%s: параметр '%c%s' не может иметь аргументы\n"
+msgstr "%s: у параметра «%s%s» не может быть аргумента\n"
 
 #: lib/getopt.c:360
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' requires an argument\n"
-msgstr "%s: для параметра «--%s» требуется аргумент\n"
+msgstr "%s: для параметра «%s%s» требуется аргумент\n"
 
 #: lib/getopt.c:621
 #, c-format
@@ -102,11 +102,11 @@ msgstr "%s: для параметра нужен аргумент — «%c»\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "«"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "»"
 
@@ -139,9 +139,8 @@ msgid "Invalid back reference"
 msgstr "Неправильная обратная ссылка"
 
 #: lib/regcomp.c:156
-#, fuzzy
 msgid "Unmatched [, [^, [:, [., or [="
-msgstr "Нет соответствия [ или [^"
+msgstr "Непарная [, [^, [:, [. или [="
 
 #: lib/regcomp.c:159
 msgid "Unmatched ( or \\("
@@ -222,18 +221,15 @@ msgstr "©"
 
 #. TRANSLATORS: The %s placeholder is the web address of the GPL license.
 #: lib/version-etc.c:88
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "License GPLv3+: GNU GPL version 3 or later <%s>.\n"
 "This is free software: you are free to change and redistribute it.\n"
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
-"\n"
-"Лицензия GPLv3+: GNU GPL версии 3 или новее <http://gnu.org/licenses/gpl."
-"html>\n"
-"Это свободное ПО: вы можете продавать и распространять его.\n"
-"Нет НИКАКИХ ГАРАНТИЙ до степени, разрешённой законом.\n"
-"\n"
+"Лицензия GPLv3+: GNU GPL версии 3 или новее <%s>.\n"
+"Это свободное ПО: вы можете изменять и распространять его.\n"
+"Нет НИКАКИХ ГАРАНТИЙ в пределах действующего законодательства.\n"
 
 #. TRANSLATORS: %s denotes an author name.
 #: lib/version-etc.c:105
@@ -348,11 +344,9 @@ msgstr ""
 #. "Report translation bugs to <...>\n" with the address for translation
 #. bugs (typically your translation team's web or email address).
 #: lib/version-etc.c:249
-#, fuzzy, c-format
+#, c-format
 msgid "Report bugs to: %s\n"
-msgstr ""
-"\n"
-"Об ошибках сообщайте по адресу: %s.\n"
+msgstr "Об ошибках сообщайте по адресу: %s\n"
 
 #: lib/version-etc.c:251
 #, c-format
@@ -365,89 +359,72 @@ msgid "%s home page: <%s>\n"
 msgstr "Домашняя страница %s: <%s>\n"
 
 #: lib/version-etc.c:260
-#, fuzzy, c-format
+#, c-format
 msgid "General help using GNU software: <%s>\n"
-msgstr ""
-"Общая справка по программному обеспечению GNU: <http://www.gnu.org/gethelp/"
-">\n"
+msgstr "Справка по работе с программами GNU: <%s>\n"
 
 #: lib/xalloc-die.c:34
 msgid "memory exhausted"
 msgstr "закончилась память"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "недопустимый аргумент %s%s '%s'"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "недопустимый суффикс в аргументе %s%s '%s'"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "слишком большой аргумент %s%s '%s'"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Образ диска"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Ошибка открытия %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
 msgstr ""
 "Не удалось открыть %s на чтение-запись (%s).  %s открыт только для чтения."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s во время позиционирования для чтения на %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s во время чтения на %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Нельзя записать на %s, так как он открыт только для чтения."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s во время позиционирования для записи на %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s во время записи на %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Попробуйте `%s --help' для дополнительной информации.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Использование: %s [ПАРАМЕТР] [УСТРОЙСТВО]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -463,7 +440,7 @@ msgstr ""
 "  -h, --help       отобразить справку и выйти\n"
 "  -v, --version    вывести информацию о версии и выйти\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -471,7 +448,7 @@ msgstr ""
 "\n"
 "Если УСТРОЙСТВО не указано, проверять все разделы.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -489,43 +466,7 @@ msgstr "Не удалось открыть %s."
 msgid "Unable to probe store."
 msgstr "Не удалось обследовать хранилище."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Невозможно перечитать таблицу разделов. Это означает, что для монтирования "
-"любого из изменённых разделов требуется перезагрузка компьютера. Но до "
-"перезагрузки ещё требуется переустановить загрузчик (на что может "
-"потребоваться монтирование изменённых разделов). Обе эти вещи невозможно "
-"сделать одновременно! Поэтому необходимо загрузиться с диска восстановления "
-"и переустановить загрузчик с его помощью. Дополнительную информацию можно "
-"найти в разделе 4 из руководства пользователя Parted."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Таблица разделов %s не может быть перечитана (%s). Это означает, что "
-"сделанные изменения пока недоступны для Hurd. Требуется перезагрузить "
-"компьютер перед тем, как что-либо делать с %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Нужно переустановить загрузчик перед  перезагрузкой. Прочтите раздел 4 "
-"Руководства пользователя Parted для дополнительной информации."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s пытается записать %s на диск"
@@ -614,9 +555,8 @@ msgid "Generic SD/MMC Storage Card"
 msgstr "Универсальная карта памяти SD/MMC"
 
 #: libparted/arch/linux.c:1422
-#, fuzzy
 msgid "NVMe Device"
-msgstr "Ð\9dовое Ñ\83Ñ\81Ñ\82Ñ\80ойÑ\81Ñ\82во?"
+msgstr "УÑ\81Ñ\82Ñ\80ойÑ\81Ñ\82во NVMe"
 
 #: libparted/arch/linux.c:1483
 msgid "DAC960 RAID controller"
@@ -644,7 +584,7 @@ msgstr "Compaq Smart Array"
 
 #: libparted/arch/linux.c:1520
 msgid "NVDIMM Device"
-msgstr ""
+msgstr "Устройство NVDIMM"
 
 #: libparted/arch/linux.c:1525
 msgid "ATARAID Controller"
@@ -685,7 +625,7 @@ msgstr "Программный RAID-массив Linux"
 
 #: libparted/arch/linux.c:1588
 msgid "RAM Drive"
-msgstr ""
+msgstr "RAM-диск"
 
 #: libparted/arch/linux.c:1595
 msgid "ped_device_new()  Unsupported device type"
@@ -846,15 +786,15 @@ msgstr "метаданные"
 msgid "free"
 msgstr "свободно"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "расширенный"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "логический"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "основной"
 
@@ -930,64 +870,72 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr "chromeos_kernel"
+
+#: libparted/disk.c:2413
+msgid "bls_boot"
+msgstr "bls_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Неизвестный флаг раздела, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Информация"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Предупреждение"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Ошибка"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Фатальная ошибка"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Ошибка"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Нет реализации"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Исправить"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Да"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Нет"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Повторить"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Игнорировать"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Отменить"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -1000,98 +948,105 @@ msgstr ""
 "информацией относительно отправки сообщение об ошибке! Пошлите по адресу %s "
 "сообщение об ошибке, содержащее хотя бы версию (%s) и следующую информацию:"
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "Поддержка чтения меток диска AIX пока не реализована."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "Поддержка записи меток диска AIX пока не реализована."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr "Поддержка добавления разделов к меткам диска AIX пока не реализована."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "Поддержка дублирования разделов в метках диска AIX пока не реализована."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
 msgstr ""
 "Поддержка задания типа системы на метках диска AIX пока не реализована."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr "Поддержка записи флагов на метках диска AIX пока не реализована."
 
 #: libparted/labels/atari.c:273
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Can't use Atari partition tables on disks with a sector size not equal to %d "
 "bytes."
 msgstr ""
-"Parted не может работать с файловыми системами HFS, на дисках с размером "
-"сектора не равным %d байт."
+"Невозможно использовать таблицы разделов Atari на дисках с размером сектора "
+"не равным %d байт."
 
 #: libparted/labels/atari.c:285
 #, c-format
 msgid "Can't use Atari partition tables on disks with more than %d sectors."
 msgstr ""
+"Невозможно использовать таблицы разделов Atari на дисках с более чем %d "
+"секторами."
 
 #: libparted/labels/atari.c:398
 msgid ""
 "Too many Atari partitions detected.  Maybe there is a loop in the XGM linked "
 "list.  Aborting."
 msgstr ""
+"Найдено слишком много разделов Atari. Возможно зацикливание в связном списке "
+"XGM. Прекращение работы."
 
 #: libparted/labels/atari.c:596
 #, c-format
 msgid "No data partition found in the ARS at sector %lli."
-msgstr ""
+msgstr "Нет раздела данных в ARS в секторе %lli."
 
 #: libparted/labels/atari.c:617
 #, c-format
 msgid ""
 "The entry of the next logical ARS is not of type XGM in ARS at sector %lli."
 msgstr ""
+"Тип элемента следующего логического ARS не равен XGM в ARS в секторе %lli."
 
 #: libparted/labels/atari.c:648
 #, c-format
 msgid ""
 "There doesn't seem to be an Atari partition table on this disk (%s), or it "
 "is corrupted."
-msgstr ""
+msgstr "На этом диске (%s) таблица разделов не похожа на Atari или повреждена."
 
 #: libparted/labels/atari.c:878
 #, c-format
 msgid "No room at sector %lli to store ARS of logical partition %d."
-msgstr ""
+msgstr "Нет места в секторе %lli для сохранения ARS логического раздела %d."
 
 #: libparted/labels/atari.c:885
 #, c-format
 msgid "No room at sector %lli to store ARS."
-msgstr ""
+msgstr "Нет места в секторе %lli для сохранения ARS."
 
 #: libparted/labels/atari.c:962
 msgid ""
 "The sector count that is stored in the partition table does not correspond "
 "to the size of your device.  Do you want to fix the partition table?"
 msgstr ""
+"Счётчик секторов из таблицы разделов не соответствует размеру устройства. "
+"Исправить таблицу разделов?"
 
 #: libparted/labels/atari.c:1003
 #, c-format
 msgid "No room at sector %lli to store BSL."
-msgstr ""
+msgstr "Нет места в секторе %lli для сохранения BSL."
 
 #: libparted/labels/atari.c:1111
 msgid "There were remaining partitions after filling the main AHDI table."
-msgstr ""
+msgstr "После заполнения главной таблицы AHDI остались ещё разделы."
 
 #: libparted/labels/atari.c:1130
 msgid ""
@@ -1099,14 +1054,17 @@ msgid ""
 "not empty so more partitions of unknown size and position will be detected "
 "by ICD compatible software.  Do you want to invalidate the ICD table?"
 msgstr ""
+"Главная таблица AHDI заполнена всеми разделами, но таблица ICD не пуста, "
+"поэтому совместимое с ICD ПО будет находить дополнительные разделы "
+"неизвестного размера и расположения. Аннулировать таблицу ICD?"
 
 #: libparted/labels/atari.c:1164
 msgid "ICD entries can't contain extended or logical partitions."
-msgstr ""
+msgstr "Элементы ICD не могут содержать расширенные или логические разделы."
 
 #: libparted/labels/atari.c:1186
 msgid "There were remaining partitions after filling the tables."
-msgstr ""
+msgstr "После заполнения таблиц остались разделы."
 
 #: libparted/labels/atari.c:1226
 #, c-format
@@ -1114,15 +1072,17 @@ msgid ""
 "You can't use an extended XGM partition in ICD mode (more than %d primary "
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
+"Вы не можете использовать расширенный раздел XGM в режиме ICD (больше %d "
+"первичных разделов, если XGM стоит первым, то считается за два)."
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
-msgstr "Ð\9dе Ñ\83далоÑ\81Ñ\8c Ñ\83довлеÑ\82воÑ\80иÑ\82Ñ\8c Ð²Ñ\81е Ð¾Ð³Ñ\80аниÑ\87ениÑ\8f Ñ\86елоÑ\81Ñ\82ноÑ\81Ñ\82и Ñ\80аздела."
+msgstr "Не удалось удовлетворить все ограничения раздела."
 
 #: libparted/labels/atari.c:1757
 #, c-format
@@ -1130,48 +1090,52 @@ msgid ""
 "You can't use more than %d primary partitions (ICD mode) if you use an "
 "extended XGM partition.  If XGM is the first partition it counts for two."
 msgstr ""
+"Вы не можете использовать более %d первичных разделов (режим ICD), если "
+"используете расширенный раздел XGM. Если XGM стоит первым, то считается за "
+"два."
 
 #: libparted/labels/atari.c:1823 libparted/labels/rdb.c:1082
 msgid "Unable to allocate a partition number."
 msgstr "Не удалось назначить номер раздела."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Не удалось назначить слот подписи к диску bsd."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
-msgstr ""
+msgstr "Таблицу разделов устройства DASD-LDL нельзя изменить.\n"
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Не удалось назначить слот подписи к диску dasd"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Некорректная таблица разделов на %s: неправильный идентификатор %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Неверная таблица разделов - рекурсивный раздел на %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "Расширенные разделы не могут быть скрыты при msdos метках диска."
 
-#: libparted/labels/dos.c:1572
-#, fuzzy
+#: libparted/labels/dos.c:1569
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
-msgstr "Расширенные разделы не могут быть скрыты при msdos метках диска."
+msgstr ""
+"Расширенные разделы не могут быть разделами восстановления при msdos метках "
+"диска."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted не может изменять размер разделов управляемых Windows Dynamic Disk."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "не удаётся создать дополнительные разделы"
 
@@ -1267,7 +1231,7 @@ msgstr "Указанное устройство не является прави
 
 #: libparted/labels/fdasd.c:188
 msgid "VOLSER not found on device"
-msgstr ""
+msgstr "На устройстве не найден VOLSER"
 
 #: libparted/labels/fdasd.c:191 libparted/labels/vtoc.c:179
 msgid "Fatal error"
@@ -1297,9 +1261,8 @@ msgstr ""
 "Текущая версия API '%d' не соответствует версии API dasd драйвера '%d'!"
 
 #: libparted/labels/fdasd.c:1020
-#, fuzzy
 msgid "Could not retrieve disk size."
-msgstr "Не удалось получить информацию о диске."
+msgstr "Не удалось получить размер диска."
 
 #: libparted/labels/fdasd.c:1029
 msgid "Could not retrieve disk geometry information."
@@ -1311,13 +1274,13 @@ msgstr "Не удалось получить информацию о разме
 
 #: libparted/labels/fdasd.c:1045
 msgid "Disk geometry does not match a DASD device of type 3390."
-msgstr ""
+msgstr "Геометрия диска не соответствует устройству DASD с типом 3390."
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "устройство слишком маленькое для GPT"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1326,7 +1289,7 @@ msgstr ""
 "Формат таблицы разделов GPT версии %x новее, чем Parted может распознать. "
 "Сообщите об этом!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1337,7 +1300,7 @@ msgstr ""
 "таблицу GPT для использования всего места (дополнительно %llu блоков) или "
 "продолжить с текущими настройками? "
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1345,7 +1308,7 @@ msgstr ""
 "Резервная копия таблицы GPT находится не в конце диска, как должно быть. "
 "Исправить это, передвинув резервную копию в конец диска (и удалив старую)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1353,7 +1316,7 @@ msgstr ""
 "Обе — и главная, и резервная таблицы GPT — повреждены. Попробуйте создать "
 "новую и используя Parted для восстановления разделов."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1361,7 +1324,7 @@ msgstr ""
 "Резервная таблица GPT повреждена, но главная кажется корректной, поэтому она "
 "и будет использоваться."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1369,11 +1332,11 @@ msgstr ""
 "Главная таблица GPT повреждена, но резервная копия кажется корректной, "
 "поэтому она и будет использоваться."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "ошибка CRC массива таблицы основных разделов"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "ошибка при трансляции имени раздела"
 
@@ -1406,24 +1369,20 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Область данных не начинается в начале раздела."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Область загрузки не начинается в начале раздела."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Область загрузки раздела занимает не целый раздел."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Область данных раздела занимает не целый раздел."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr "Неправильный размер блока на устройстве: %d байт не делится на 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1432,11 +1391,11 @@ msgstr ""
 "Драйвер говорит,что размер физического блока равен %d байт, но Linux "
 "говорит, что он %d байт."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Не найдено правильной карты разделов."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1445,11 +1404,11 @@ msgstr ""
 "Конфликт размеров записей карты разделов! В записи 1 указан %d, но в %d "
 "указано %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Ужас! Существует 2 записи таблицы разделов!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1457,23 +1416,23 @@ msgstr ""
 "Изменение имени корневого раздела или раздела подкачки создаст проблемы с их "
 "распознаванием в Linux."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "Не удалось создать другой раздел -- слишком маленькая карта разделов!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Неверная таблица разделов на %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
 "unsupported."
 msgstr "Раздел %d не выровнен к краю цилиндра.  Это всё ещё не поддерживается."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Невозможно добавить другой раздел."
 
@@ -1647,39 +1606,39 @@ msgstr "Не удалось записать VTOC FMT7 DSCB."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Не удалось записать VTOC FMT9 DSCB."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Недостаточно памяти."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Не удаётся определить размер специальной единицы измерения 'COMPACT'."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "\"%s\" содержит неправильный синтаксис расположений."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Максимальное количество головок %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Максимальное количество секторов %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "Расположение %s вне устройства %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Неправильный номер."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "Используйте меньшую единицу измерения вместо значений < 1"
 
@@ -1689,18 +1648,18 @@ msgstr "Используйте меньшую единицу измерения
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : Не удалось выделить блок раздела\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : Не удалось выделить блок\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : Не удалось прочесть загрузочный блок %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1726,22 +1685,22 @@ msgstr "%s : Неправильная контрольная сумма блок
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : Не удалось записать блок %d.\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s : Не удалось выделить специфичный_для_диска блок rdb\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s : Не найден rdb блок, такого не должно было случиться\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : Не удалось прочесть блок раздела %llu\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1841,7 +1800,7 @@ msgstr ""
 "Исправить, CHS геометрия файловой системы будет изменена для согласования с "
 "CHS геометрией таблицы раздела."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1868,13 +1827,13 @@ msgstr ""
 "Кластер начинается со смещением %d, что не является целым числом кластеров "
 "размера %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Плохой элемент каталога для %s: первый кластер является концом маркера файла."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1882,7 +1841,7 @@ msgstr ""
 "Ошибка в FAT: незавершённая цепочка для %s.  Вы должны запустить dosfsck или "
 "scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1891,7 +1850,7 @@ msgstr ""
 "Ошибка в FAT: кластер %d находится вне файловой системы в цепочке для %s.  "
 "Вы должны запустить dosfsck или scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1900,26 +1859,17 @@ msgstr ""
 "Ошибка в FAT: кластер %d имеет ссылку на %s.  Вы должны запустить dosfsck "
 "или scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s является %dk, но он содержит %d кластеров (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"Файл %s помечен как системный.  Это значит, что его перемещение может "
-"привести к прекращению работы некоторых программ."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Раздел слишком большой/маленький для файловой системы %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1928,11 +1878,11 @@ msgstr ""
 "означает, выберите отмену, запустите scandisk для файловой системы, и затем "
 "возвращайтесь."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Для этого типа FAT допустимых конфигураций нет."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1943,7 +1893,7 @@ msgstr ""
 "Размер кластера %dk (ожидаемый %dk); число кластеров %d (ожидаемое %d); "
 "размер FAT %d секторов (ожидаемый %d)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
@@ -1951,7 +1901,7 @@ msgstr ""
 "Файловая система сообщает о свободном пространстве в %d кластеров, а не в %d "
 "кластеров."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1959,15 +1909,15 @@ msgstr ""
 "Для всех файлов не хватает места в корневом каталоге. Либо отмените, либо "
 "игнорируйте и потеряете файлы."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Ошибка записи в корневой каталог."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "Если вы оставите файловую систему как FAT16, проблем не будет."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1977,7 +1927,7 @@ msgstr ""
 "нужно будет переустановить загрузчик MS Windows. Если вы хотите это сделать, "
 "обратитесь к руководству Parted (или руководству вашего дистрибутива)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -1985,7 +1935,7 @@ msgstr ""
 "Если вы оставите файловую систему как FAT32, то никаких новых проблем не "
 "возникнет."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1999,42 +1949,42 @@ msgstr ""
 "Также, преобразование в FAT32 сделает файловую систему нечитаемой из MS DOS, "
 "MS Windows 95a и MS Windows NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Вы хотите использовать FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "Изменение размера файловой системы до этого размера возможно только после "
 "преобразования её в FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "Изменение размера файловой системы до этого размера возможно только после "
 "преобразования её в FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted не может изменить размер раздела до этой величины.  Мы работаем "
 "над этим!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2043,41 +1993,41 @@ msgstr ""
 "FAT %d носитель %x не совпадает с носителем загрузочного сектора %x.  "
 "Возможно, вам следует запустить scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: кластер %ld находится вне файловой системы"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: кластер %ld находится вне файловой системы"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: нет свободных кластеров"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Не удаётся определить файловую систему."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "изменение размера файловой системы %s не реализовано"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "Файловая система больше раздела, на котором расположена!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "Файловая система содержит ошибки."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "Плохие блоки не могут быть прочитаны."
 
@@ -2091,12 +2041,12 @@ msgstr ""
 "другой блок в этой позиции. Проверьте файловую систему на ошибки!"
 
 #: libparted/fs/r/hfs/cache.c:214
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Trying to move an extent from block 0x%X to block 0x%X, but another one "
 "already exists at this position.  This should not happen!"
 msgstr ""
-"При попытке переместить extent из блока Ox%X в блок Ox%X, обнаружен другой "
+"При попытке переместить extent из блока 0x%X в блок 0x%X, обнаружен другой "
 "блок в этой позиции. Этого не должно было случиться!"
 
 #: libparted/fs/r/hfs/file.c:143
@@ -2139,65 +2089,65 @@ msgstr "Не удалось найти сектор %lli для HFS+ файла
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "Выполняется попытка записи HFS+ файла с CNID %X за EOF."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr ""
 "Извините, но в настоящее время размер HFS не может быть изменён таким "
 "образом."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "уменьшение"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Ошибка перераспределения данных."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 "При перераспределении данных некоторые данные остались в конце раздела."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "запись HFS Master Directory Block (главный блок каталога)"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "При открытии не найден правильный идентификатор HFS[+X]."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "Файловая система HFS+ версии %d не поддерживается."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "Файловая система HFSX версии %d не поддерживается."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr ""
 "При перераспределении данных некоторые данные остались у конца раздела."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Ошибка записи в выделенный файл."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "Ошибка записи совместимой части в выделенный файл."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "запись HFS+ Volume Header (заголовок раздела)"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "Ошибка при поиске обязательного файла плохих блоков."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2205,29 +2155,29 @@ msgstr ""
 "Похоже, ошибка в оболочке HFS: файл плохих блоков не содержит встроенный HFS"
 "+ раздел."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr ""
 "Извините, но в настоящее время размер HFS+ не может быть изменён таким "
 "образом."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "выполняется уменьшение размера встроенного HFS+ раздела"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Ошибка при изменении размера раздела HFS+."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "выполняется уменьшение размера оболочки HFS"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "Ошибка при обновлении оболочки HFS+."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2248,13 +2198,12 @@ msgstr ""
 "Неправильный размер блока транзакций при проигрывании журнала (%i байт)."
 
 #: libparted/fs/r/hfs/journal.c:260
-#, fuzzy
 msgid ""
 "Journal stored outside of the volume are not supported.  Try to deactivate "
 "the journal and run Parted again."
 msgstr ""
-"Ð¥Ñ\80анение Ð¶Ñ\83Ñ\80нала Ð²Ð½Ðµ Ñ\80аздела Ð½Ðµ Ð¿Ð¾Ð´Ð´ÐµÑ\80живаеÑ\82Ñ\81Ñ\8f. Ð\9fопÑ\80обÑ\83йÑ\82е Ð¾Ñ\82клÑ\8eÑ\87иÑ\82Ñ\8c Ð¶Ñ\83Ñ\80нал "
-"и Ð·Ð°Ð¿Ñ\83Ñ\81Ñ\82иÑ\82Ñ\8c Parted Ñ\81нова."
+"Ð¥Ñ\80анение Ð¶Ñ\83Ñ\80нала Ð²Ð½Ðµ Ñ\82ома Ð½Ðµ Ð¿Ð¾Ð´Ð´ÐµÑ\80живаеÑ\82Ñ\81Ñ\8f. Ð\9fопÑ\80обÑ\83йÑ\82е Ð¾Ñ\82клÑ\8eÑ\87иÑ\82Ñ\8c Ð¶Ñ\83Ñ\80нал Ð¸ "
+"запустить Parted снова."
 
 #: libparted/fs/r/hfs/journal.c:271
 msgid "Journal offset or size is not multiple of the sector size."
@@ -2305,7 +2254,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "extent не был перемещён."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2313,16 +2262,16 @@ msgstr ""
 "Ссылка на extent указывает на место, где его быть не должно. Проверьте "
 "файловую систему!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "Этот раздел HFS не содержит файла каталога. Очень необычно!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Этот раздел HFS не содержит файла размеров перегрузки. Достаточно необычно!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2330,52 +2279,52 @@ msgstr ""
 "Файл размеров перегрузки не должен содержать свои размеры! Проверьте "
 "файловую систему."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Не удалось кэшировать файловую систему в памяти."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "Не удалось загрузить список плохих блоков."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Возникла ошибка при перемещении extent."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "Этот раздел HFS+ не содержит файла каталога. Очень необычно!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Этот раздел HFS+ не содержит файла размеров перегрузки. Достаточно необычно!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "отображает это справочное сообщение"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "выводит раскладку разделов всех блочных устройств"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "отображает вывод для обработки компьютером"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "никогда не запрашивает вмешательство пользователя"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "отображает версию"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "выравнивание новых разделов"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2384,31 +2333,31 @@ msgstr ""
 "помечаются так: номерами первичных разделов могут быть с 1 по 4, с 5 и далее "
 "следуют номера логических разделов.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "ТИП_МЕТКИ один из: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "ФЛАГ один из: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "ЕДИНИЦА одна из: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "предпочитаемое выравнивание: минимальное или оптимальное"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "ТИП_РАЗД один из: основной, логический, расширенный\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "ТИП_ФС один из: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2418,7 +2367,7 @@ msgstr ""
 "Отрицательные значения отсчитываются от конца диска. Например, -1s "
 "обозначает последний сектор.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2427,19 +2376,19 @@ msgstr ""
 "значения отсчитываются от конца диска. Например, -1s обозначает последний "
 "сектор.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "СОСТОЯНИЕ одно из двух: on, off (активно, неактивно)\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "УСТРОЙСТВОМ обычно является /dev/hda или /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "ИМЯ — любое слово, какое захотите\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2459,22 +2408,22 @@ msgstr ""
 "или ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ.  Для получения более подробной "
 "информации смотрите Универсальную Общественную Лицензию GNU.\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(времени прошло %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "Раздел %s используется. Вы уверены что хотите продолжить?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Разделы на %s используются."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2483,31 +2432,31 @@ msgstr ""
 "Существующая метка диска на  %s будет уничтожена и все данные на этом диске "
 "будут потеряны. Действительно продолжить?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Новый тип метки диска?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Тип раздела?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Имя раздела?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Тип файловой системы?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Начало?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Конец?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2517,7 +2466,7 @@ msgstr ""
 "Ближайшие точки, с которыми мы можем работать, от %s до %s (сектора %llu.."
 "%llu).%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2525,152 +2474,151 @@ msgstr ""
 "\n"
 "Это вас устраивает?"
 
-#: parted/parted.c:798
-#, fuzzy, c-format
+#: parted/parted.c:799
+#, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
-"Полученный раздел не выровнен для обеспечения лучшей производительности."
+"Полученный раздел не выровнен для обеспечения лучшей производительности: %s"
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
-msgstr ""
+msgstr "неизвестно (ошибка malloc)"
 
-#: parted/parted.c:876
-#, fuzzy, c-format
+#: parted/parted.c:877
+#, c-format
 msgid "%s disk labels do not support partition name."
-msgstr "Ð\9fодпиÑ\81и Ðº Ð´Ð¸Ñ\81кам %s Ð½Ðµ Ð¿Ð¾Ð´Ð´ÐµÑ\80живаÑ\8eÑ\82 Ñ\80аÑ\81Ñ\88иÑ\80еннÑ\8bе Ñ\80азделÑ\8b."
+msgstr "Ð\9cеÑ\82ки Ð´Ð¸Ñ\81ков %s Ð½Ðµ Ð¿Ð¾Ð´Ð´ÐµÑ\80живаÑ\8eÑ\82 Ð¸Ð¼Ñ\8f Ñ\80аздела."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Номер раздела?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 "Геометрия цилиндров, головок, секторов BIOS: %d,%d,%d. Каждый цилиндр %s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Модель: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Диск %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Размер сектора (логич./физич.): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Таблица разделов: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Флаги диска: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Номер"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Начало"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Конец"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Размер"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Тип"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Файловая система"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Имя"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Флаги"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Свободное место"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
 "partition table?"
 msgstr "Раздел %s %s найден на %s -> %s. Добавить его в таблицу разделов?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "поиск файловых систем"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "Команда resize была удалена в parted 3.0"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "Уменьшение раздела может привести к потере данных, вы действительно хотите "
 "продолжить?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Новое устройство?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "тип выравнивания (min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d выровнен\n"
 
-#: parted/parted.c:1721
-#, fuzzy, c-format
+#: parted/parted.c:1737
+#, c-format
 msgid "%d not aligned: %s\n"
-msgstr "%d не выровнен\n"
+msgstr "%d не выровнен: %s\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Флаг для инвертации?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Новое состояние?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Единица?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
-#, fuzzy
+#: parted/parted.c:1988
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
@@ -2678,11 +2626,11 @@ msgstr ""
 "align-check ТИП N                проверить, что раздел N выровнен согласно "
 "ТИПУ(min|opt)"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2690,30 +2638,30 @@ msgstr ""
 "help [КОМАНДА]                   распечатать общую справку или справку по "
 "КОМАНДЕ"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
 msgstr ""
 "mklabel,mktable ТИП_МЕТКИ        создать новую метку диска (таблицу раздела)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart ТИП_РАЗД [ТИП_ФС] НАЧ КОН создать раздел"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2721,19 +2669,19 @@ msgstr ""
 "mkpart делает раздел без создания на нём новой файловой системы. ТИП_ФС "
 "должен быть указан для записи идентификатора раздела\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr "name НОМЕР ИМЯ                   назначить ИМЯ разделу с НОМЕРом"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2743,7 +2691,7 @@ msgstr ""
 "доступные устройства, свободное место, все найденные разделы или "
 "определённый раздел"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2751,11 +2699,11 @@ msgstr ""
 "Без параметров, «print» отображает всю таблицу разделов. Но с параметрами "
 "могут выполняться и некоторые другие действия.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : отобразить все активные блочные устройства\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2763,33 +2711,33 @@ msgstr ""
 "  free      : отображает информацию о свободном, не разбитом пространстве на "
 "текущем блочном устройстве\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all : отображает таблицы разделов на всех активных блочных "
 "устройствах\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 "  НОМЕР    : отображает более детальную информацию о требуемом разделе\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                             выйти из программы"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "resize"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2797,52 +2745,52 @@ msgstr ""
 "rescue НАЧАЛО КОНЕЦ              восстановить потерянный раздел в промежутке "
 "от НАЧАЛА до КОНЦА"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "Команда resize была удалена в parted 3.0\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "resizepart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "resizepart НОМЕР КОНЕЦ           изменить размер раздела НОМЕР"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm НОМЕР                         удалить раздел НОМЕР"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select УСТРОЙСТВО                выбор устройства для редактирования"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disk_set"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr "disk_set ФЛАГ СОСТОЯНИЕ          изменить ФЛАГ на выбранном устройстве"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
@@ -2850,40 +2798,40 @@ msgstr ""
 "disk_toggle [ФЛАГ]               переключить состояние ФЛАГА на выбранном "
 "устройстве"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr "set НОМЕР ФЛАГ СОСТОЯНИЕ         изменить ФЛАГ на разделе НОМЕР"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
 msgstr ""
 "toggle [НОМЕР [ФЛАГ]]            переключить состояние ФЛАГА на разделе НОМЕР"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "unit ЕДИНИЦА                     использовать для измерений данную ЕДИНИЦУ"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2891,37 +2839,45 @@ msgstr ""
 "version                                  отображает текущую версию GNU "
 "Parted и информацию о лицензии"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
 msgstr ""
 "version отображает информацию о лицензии и версии этой копии GNU Parted\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 "Использование: %s [-hlmsv] [-a<align>] [УСТРОЙСТВО [КОМАНДА [ПАРАМЕТРЫ]]…]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Устройство не найдено"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "ВНИМАНИЕ: у вас нет прав администратора. Могут возникнуть проблемы.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Нужно переустановить загрузчик перед  перезагрузкой. Прочтите раздел 4 "
+"Руководства пользователя Parted для дополнительной информации."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Не забудьте обновить /etc/fstab.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 "Добро пожаловать в GNU Parted! Наберите 'help' для просмотра списка команд.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2933,7 +2889,7 @@ msgstr ""
 "задано,\n"
 "программа работает в интерактивном режиме.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2997,7 +2953,7 @@ msgstr ""
 "А также любую дополнительную информацию о вашей конфигурации,\n"
 "если вы посчитаете это важным.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -3005,7 +2961,7 @@ msgstr ""
 "\n"
 "История команд:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -3013,7 +2969,7 @@ msgstr ""
 "\n"
 "Ошибка: SEGV_MAPERR (адрес не назначен объекту)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3021,7 +2977,7 @@ msgstr ""
 "\n"
 "Ошибка: SEGV_ACCERR (недопустимые права для назначенного объекта)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3029,7 +2985,7 @@ msgstr ""
 "\n"
 "Ошибка: получен обычный сигнал SIGSEGV.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3037,7 +2993,7 @@ msgstr ""
 "\n"
 "Ошибка: FPE_INTDIV (Integer: деление на ноль)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3045,7 +3001,7 @@ msgstr ""
 "\n"
 "Ошибка: FPE_INTOVF (Integer: переполнение)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3053,7 +3009,7 @@ msgstr ""
 "\n"
 "Ошибка: FPE_FLTDIV (Float: деление на ноль)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3061,7 +3017,7 @@ msgstr ""
 "\n"
 "Ошибка: FPE_FLTOVF (Float: переполнение)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3069,7 +3025,7 @@ msgstr ""
 "\n"
 "Ошибка: FPE_FLTUND (Float: потеря значимости)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3077,7 +3033,7 @@ msgstr ""
 "\n"
 "Ошибка: FPE_FLTRES (Float: неточный ответ)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3085,7 +3041,7 @@ msgstr ""
 "\n"
 "Ошибка: FPE_FLTINV (Float: неправильная операция)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3093,7 +3049,7 @@ msgstr ""
 "\n"
 "Ошибка: FPE_FLTSUB (Float: выражение вне области)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3101,7 +3057,7 @@ msgstr ""
 "\n"
 "Ошибка: получен обычный сигнал SIGFPE."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3109,7 +3065,7 @@ msgstr ""
 "\n"
 "Ошибка: ILL_ILLOPC (неправильный Opcode)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3117,7 +3073,7 @@ msgstr ""
 "\n"
 "Ошибка: ILL_ILLOPN (неправильный операнд)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3125,7 +3081,7 @@ msgstr ""
 "\n"
 "Ошибка:  ILL_ILLADR (неправильный режим адресации)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3133,7 +3089,7 @@ msgstr ""
 "\n"
 "Ошибка: ILL_ILLTRP (неправильная ловушка)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3141,7 +3097,7 @@ msgstr ""
 "\n"
 "Ошибка: ILL_PRVOPC (привилегированный Opcode)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3149,7 +3105,7 @@ msgstr ""
 "\n"
 "Ошибка: ILL_PRVREG (привилегированный регистр)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3157,7 +3113,7 @@ msgstr ""
 "\n"
 "Ошибка: ILL_COPROC (ошибка сопроцессора)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3165,7 +3121,7 @@ msgstr ""
 "\n"
 "Ошибка: ILL_BADSTK (ошибка внутреннего стека)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3173,69 +3129,69 @@ msgstr ""
 "\n"
 "Ошибка: получен обычный сигнал SIGILL."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "недопустимый ключ: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Ожидается номер раздела."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Раздел не существует."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Ожидается тип файловой системы."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Неизвестный тип файловой системы «%s»."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Ожидается тип метки диска."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
-msgstr ""
+msgstr "Флаги не поддерживаются"
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Больше разделов создать нельзя."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Ожидается тип раздела."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "вкл"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "выкл"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "оптимальный"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "минимальный"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "КЛЮЧИ:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "КОМАНДЫ:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3244,12 +3200,12 @@ msgstr ""
 "\n"
 "Об ошибках сообщайте по адресу: %s\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Используется %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Эта команда ничего не делает в не-интерактивном режиме.\n"
 
@@ -3268,6 +3224,43 @@ msgstr "Эта команда ничего не делает в не-интер
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "Домашняя страница %s: <http://www.gnu.org/software/%s/>\n"
 
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "недопустимый аргумент %s%s '%s'"
+
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "недопустимый суффикс в аргументе %s%s '%s'"
+
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "слишком большой аргумент %s%s '%s'"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Невозможно перечитать таблицу разделов. Это означает, что для "
+#~ "монтирования любого из изменённых разделов требуется перезагрузка "
+#~ "компьютера. Но до перезагрузки ещё требуется переустановить загрузчик (на "
+#~ "что может потребоваться монтирование изменённых разделов). Обе эти вещи "
+#~ "невозможно сделать одновременно! Поэтому необходимо загрузиться с диска "
+#~ "восстановления и переустановить загрузчик с его помощью. Дополнительную "
+#~ "информацию можно найти в разделе 4 из руководства пользователя Parted."
+
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "Таблица разделов %s не может быть перечитана (%s). Это означает, что "
+#~ "сделанные изменения пока недоступны для Hurd. Требуется перезагрузить "
+#~ "компьютер перед тем, как что-либо делать с %s."
+
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "Область загрузки не начинается в начале раздела."
+
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3275,3 +3268,10 @@ msgstr "Эта команда ничего не делает в не-интер
 #~ "Эта файловая система имеет размер логического сектора %d.  Считается, что "
 #~ "GNU Parted работает неправильно с секторами, размер которых отличен от "
 #~ "512 байт."
+
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "Файл %s помечен как системный.  Это значит, что его перемещение может "
+#~ "привести к прекращению работы некоторых программ."
index 8c801434177676c3c333cdb812bba117790a75f7..f64056b92799050321dd4c41c9b2efa087dd4e95 100644 (file)
Binary files a/po/rw.gmo and b/po/rw.gmo differ
index 350615b3e042720d6b9df27b08c0b1ae0d00fc55..a0dcc55d83a9f560bf4e9909af5e1fc132072e49 100644 (file)
--- a/po/rw.po
+++ b/po/rw.po
@@ -15,7 +15,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 1.6.6\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2005-04-04 10:55-0700\n"
 "Last-Translator: Steven Michael Murphy <murf@e-tools.com>\n"
 "Language-Team: Kinyarwanda <translation-team-rw@lists.sourceforge.net>\n"
@@ -104,11 +104,11 @@ msgstr ""
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr ""
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr ""
 
@@ -349,78 +349,63 @@ msgstr ""
 msgid "memory exhausted"
 msgstr ""
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr ""
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr ""
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr ""
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr ""
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, fuzzy, c-format
 msgid "Error opening %s: %s"
 msgstr "Hari ikibazo mu gufungura %s%S"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, fuzzy, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
 msgstr "Kuri Gufungura Gusoma Kwandika Gusoma"
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, fuzzy, c-format
 msgid "%s during seek for read on %s"
 msgstr "%skugirango Gusoma ku"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, fuzzy, c-format
 msgid "%s during read on %s"
 msgstr "%sGusoma ku"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, fuzzy, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Kwandika Kuri ni Gusoma"
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, fuzzy, c-format
 msgid "%s during seek for write on %s"
 msgstr "%skugirango Kwandika ku"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, fuzzy, c-format
 msgid "%s during write on %s"
 msgstr "%sKwandika ku"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr ""
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -430,13 +415,13 @@ msgid ""
 "  -v, --version    output version information and exit\n"
 msgstr ""
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
 msgstr ""
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -453,36 +438,7 @@ msgstr "Kuri Gufungura"
 msgid "Unable to probe store."
 msgstr "Kuri"
 
-#: libparted/arch/gnu.c:368
-#, fuzzy
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"imbonerahamwe# Kuri Nka Kuri Mbere Byahinduwe Kuri Mbere Gicurasi Byahinduwe "
-"ni Byombi Kuri Bidakora a Na Bivuye i Icyiciro 4. Bya i kugirango Birenzeho "
-"Ibisobanuro"
-
-#: libparted/arch/gnu.c:385
-#, fuzzy, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr "imbonerahamwe# ku i Ibyerekeye Mbere Na:"
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-#, fuzzy
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr "Mbere Icyiciro 4. Bya i kugirango Birenzeho Ibisobanuro"
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, fuzzy, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%sKuri Kuri"
@@ -791,7 +747,7 @@ msgid "free"
 msgstr "Kigenga"
 
 # 2175
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 #, fuzzy
 msgid "extended"
 msgstr "cya/ byagutse"
@@ -800,12 +756,12 @@ msgstr "cya/ byagutse"
 # sc/source\ui\formdlg\dwfunctr.src:FID_FUNCTION_BOX.CB_CAT.7.text
 # #-#-#-#-#  sc.pot (PACKAGE VERSION)  #-#-#-#-#
 # sc/source\ui\formdlg\formdlgs.src:RID_SCTAB_FUNCTION.LB_CATEGORY.7.text
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 #, fuzzy
 msgid "logical"
 msgstr "Bijyanye n'inyurabwenge"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr ""
 
@@ -886,64 +842,72 @@ msgstr ""
 msgid "esp"
 msgstr "Yego"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+msgid "bls_boot"
+msgstr ""
+
+#: libparted/disk.c:2419
 #, fuzzy, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Ibendera Ibendera"
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Ibisobanuro"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Iburira"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Ikosa"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr ""
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr ""
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr ""
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr ""
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Yego"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Oya"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OKE"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Ongera ugerageze"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Kureka"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Kureka"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -952,36 +916,36 @@ msgid ""
 "containing at least the version (%s) and the following message:  "
 msgstr ""
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 #, fuzzy
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "kugirango IDOSIYE ni OYA"
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 #, fuzzy
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "kugirango IDOSIYE ni OYA"
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 #, fuzzy
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr "kugirango IDOSIYE ni OYA"
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 #, fuzzy
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr "kugirango IDOSIYE ni OYA"
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 #, fuzzy
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
 msgstr "kugirango IDOSIYE ni OYA"
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 #, fuzzy
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr "kugirango IDOSIYE ni OYA"
@@ -1070,11 +1034,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 #, fuzzy
 msgid "Unable to satisfy all constraints on the partition."
@@ -1092,44 +1056,44 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "a Umubare"
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 #, fuzzy
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Kuri a"
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 #, fuzzy
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Kuri a"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, fuzzy, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "imbonerahamwe# ku Isinya"
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, fuzzy, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "imbonerahamwe# ku"
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr ""
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "imbonerahamwe# ku"
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 #, fuzzy
 msgid "cannot create any more partitions"
 msgstr "Kurema Birenzeho"
@@ -1275,19 +1239,19 @@ msgstr ""
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 #, fuzzy
 msgid "device is too small for GPT"
 msgstr "Idosiye Sisitemu Gitoya kugirango"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, fuzzy, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
 "what Parted can recognise.  Please report this!"
 msgstr "Imiterere Bya i imbonerahamwe# ni Verisiyo ni RW org"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1295,7 +1259,7 @@ msgid ""
 "setting? "
 msgstr ""
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 #, fuzzy
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
@@ -1304,32 +1268,32 @@ msgstr ""
 "Inyibutsa imbonerahamwe# ni OYA ku i Impera Bya i Nka Impuzandengo- Sisitemu "
 "i ni Gitoya ku i Inyibutsa Kuri i Impera Na i ki/ bishaje Inyibutsa"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 #, fuzzy
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
 msgstr "i Na Inyibutsa Imbonerahamwe a imbonerahamwe# Na ikoresha Kuri"
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 #, fuzzy
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
 msgstr "imbonerahamwe# ni i Inyibutsa YEGO"
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 #, fuzzy
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
 msgstr "imbonerahamwe# ni i Inyibutsa YEGO"
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr ""
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 #, fuzzy
 msgid "failed to translate partition name"
 msgstr "Umubare"
@@ -1366,74 +1330,69 @@ msgstr "Ibyatanzwe Gutangira ku i Gutangira Bya i"
 
 #: libparted/labels/mac.c:572
 #, fuzzy
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Gutangira ku i Gutangira Bya i"
-
-#: libparted/labels/mac.c:586
-#, fuzzy
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "i"
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 #, fuzzy
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Ibyatanzwe i"
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, fuzzy, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr "Funga Ingano ku APAREYE Bayite ni OYA ku"
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, fuzzy, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
 "says it is %d bytes."
 msgstr "Musomyi: i Ifatika Funga Ingano ni Bayite ni Bayite"
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 #, fuzzy
 msgid "No valid partition map found."
 msgstr "Byemewe Byabonetse"
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, fuzzy, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
 "says it is %d!"
 msgstr "Icyinjijwe 1. Icyinjijwe"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 #, fuzzy
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "2. Ibyinjijwe"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 #, fuzzy
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
 msgstr "i Izina: Bya a Imizi Cyangwa Bivuye Nka"
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 #, fuzzy
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "Kongeramo ni Gitoya"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, fuzzy, c-format
 msgid "Invalid partition table on %s."
 msgstr "imbonerahamwe# ku"
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, fuzzy, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
 "unsupported."
 msgstr "si Kuri Umwiburungushure Kuri Kongeramo Gushigikira kugirango iyi"
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 #, fuzzy
 msgid "Can't add another partition."
 msgstr "Kongeramo"
@@ -1606,40 +1565,40 @@ msgstr ""
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr ""
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 #, fuzzy
 msgid "Out of memory."
 msgstr "Ububiko bwarenzwe"
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr ""
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr ""
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr ""
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr ""
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr ""
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr ""
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr ""
 
@@ -1649,18 +1608,18 @@ msgstr ""
 msgid "%s : Failed to allocate partition block\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr ""
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1686,22 +1645,22 @@ msgstr ""
 msgid "%s : Couldn't write block %d\n"
 msgstr "%sKwandika ku"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr ""
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr ""
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 #, fuzzy
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
@@ -1793,7 +1752,7 @@ msgid ""
 "geometry."
 msgstr ""
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, fuzzy, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1815,50 +1774,42 @@ msgid ""
 "Cluster start delta = %d, which is not a multiple of the cluster size %d."
 msgstr "Gutangira DELTA ni OYA a Igikubo Bya i Ingano"
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, fuzzy, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr "bushyinguro Icyinjijwe kugirango Itangira ni i Impera Bya IDOSIYE"
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, fuzzy, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
 msgstr "kugirango Gukoresha Cyangwa"
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, fuzzy, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
 "dosfsck or scandisk."
 msgstr "Hanze in kugirango Gukoresha Cyangwa"
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, fuzzy, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
 "scandisk."
 msgstr "ni Kwambukiranya kugirango Gukoresha Cyangwa"
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, fuzzy, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%sni"
 
-#: libparted/fs/r/fat/count.c:258
-#, fuzzy, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"IDOSIYE ni cy/ byagarajwe Nka a Sisitemu IDOSIYE Porogaramu Kuri Guhagarara"
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, fuzzy, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Gitoya kugirango a IDOSIYE Sisitemu"
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 #, fuzzy
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
@@ -1867,12 +1818,12 @@ msgstr ""
 "BIHUYE iyi Hanyuma Guhitamo Kureka Gukoresha ku i IDOSIYE Sisitemu Na "
 "Hanyuma Inyuma"
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 #, fuzzy
 msgid "There are no possible configurations for this FAT type."
 msgstr "Oya Amaboneza kugirango iyi Ubwoko"
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, fuzzy, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1882,13 +1833,13 @@ msgstr ""
 "Idosiye Sisitemu Ikitezwe: kugirango Kuri nka Ingano ni Ikitezwe: Umubare "
 "Bya ni Ikitezwe: Ingano Bya ni Ikitezwe:"
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, fuzzy, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr "Idosiye Sisitemu ni i Kigenga Umwanya Nka OYA"
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 #, fuzzy
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
@@ -1897,17 +1848,17 @@ msgstr ""
 "OYA in i Imizi bushyinguro kugirango Byose Bya i Idosiye Kureka Cyangwa "
 "Kwirengagiza Kuri i Idosiye"
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 #, fuzzy
 msgid "Error writing to the root directory."
 msgstr "Kuri i Imizi bushyinguro"
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 #, fuzzy
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "IDOSIYE Sisitemu Nka Hanyuma Oya"
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 #, fuzzy
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
@@ -1917,14 +1868,14 @@ msgstr ""
 "GUHINDURA Kuri Na ni ku iyi Hanyuma Kwinjiza porogaramu i Kuri iyi i Bikorwa "
 "Cyangwa Bikorwa"
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 #, fuzzy
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
 msgstr "IDOSIYE Sisitemu Nka Hanyuma OYA Gishya"
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 #, fuzzy
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
@@ -1937,12 +1888,12 @@ msgstr ""
 "Cyangwa Bikorwa Guhindura.... Kuri Ubwoko i IDOSIYE Sisitemu ku Na"
 
 # desktop/source\app\ssodlg.src:DLG_SSOLOGIN.text
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, fuzzy, c-format
 msgid "%s  %s  %s"
 msgstr "%s%s%s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 #, fuzzy
 msgid "Would you like to use FAT32?"
 msgstr "nka Kuri Gukoresha"
@@ -1950,74 +1901,74 @@ msgstr "nka Kuri Gukoresha"
 # #-#-#-#-#  dbaccess.pot (PACKAGE VERSION)  #-#-#-#-#
 # #-#-#-#-#  dbaccess.pot (PACKAGE VERSION)  #-#-#-#-#
 # #-#-#-#-#  dbaccess.pot (PACKAGE VERSION)  #-#-#-#-#
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, fuzzy, c-format
 msgid "%s  %s"
 msgstr "%s%s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 #, fuzzy
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr "IDOSIYE Sisitemu Kuri iyi Ingano ku Guhindura.... Kuri"
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 #, fuzzy
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr "IDOSIYE Sisitemu Kuri iyi Ingano ku Guhindura.... Kuri"
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 #, fuzzy
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr "OYA Ihindurangero iyi Kuri iyi Ingano ku"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, fuzzy, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
 "probably run scandisk."
 msgstr "Ibitangazamakuru BIHUYE i Ibitangazamakuru Gukoresha"
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, fuzzy, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "Hanze"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, fuzzy, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "Hanze"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 #, fuzzy
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "Oya Kigenga"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 #, fuzzy
 msgid "Could not detect file system."
 msgstr "OYA IDOSIYE Sisitemu"
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, fuzzy, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "kugirango IDOSIYE ni OYA"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 #, fuzzy
 msgid "The file system is bigger than its volume!"
 msgstr "IDOSIYE Sisitemu ni Igice"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr ""
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr ""
 
@@ -2075,89 +2026,89 @@ msgstr ""
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 #, fuzzy
 msgid "writing HFS Master Directory Block"
 msgstr "Kuri i Imizi bushyinguro"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 #, fuzzy
 msgid "Error while writing the allocation file."
 msgstr "Kuri i Imizi bushyinguro"
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr ""
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2224,76 +2175,76 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 #, fuzzy
 msgid "Could not cache the file system in memory."
 msgstr "OYA IDOSIYE Sisitemu"
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr ""
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 #, fuzzy
 msgid "displays this help message"
 msgstr "iyi Ifashayobora Ubutumwa"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr ""
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr ""
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 #, fuzzy
 msgid "never prompts for user intervention"
 msgstr "Nta narimwe kugirango Ukoresha:"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 #, fuzzy
 msgid "displays the version"
 msgstr "i Verisiyo"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 #, fuzzy
 msgid "alignment for new partitions"
 msgstr "Gukoporora Byongerewe..."
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 #, fuzzy
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
@@ -2302,36 +2253,36 @@ msgstr ""
 "ni i Umubare ku Uturango... i Umubare Bivuye 1. 4. Na Bijyanye "
 "n'inyurabwenge 5"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 #, fuzzy
 msgid "LABEL-TYPE is one of: "
 msgstr "ni Bya"
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 #, fuzzy
 msgid "FLAG is one of: "
 msgstr "ni Bya"
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 #, fuzzy
 msgid "UNIT is one of: "
 msgstr "ni Bya"
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr ""
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 #, fuzzy
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "ni Bya Bijyanye n'inyurabwenge"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 #, fuzzy
 msgid "FS-TYPE is one of: "
 msgstr "ni Bya"
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 #, fuzzy
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
@@ -2339,28 +2290,28 @@ msgid ""
 "sector.\n"
 msgstr "Na in Uduciro IBARA Bivuye i Impera Bya i"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
 msgstr ""
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 #, fuzzy
 msgid "STATE is one of: on, off\n"
 msgstr "ni Bya ku"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 #, fuzzy
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "ni Cyangwa"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 #, fuzzy
 msgid "NAME is any word you want\n"
 msgstr "ni ijambo"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 #, fuzzy
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
@@ -2375,7 +2326,7 @@ msgstr ""
 "C Porogaramu ni Kigenga ku i Porogaramu ni in i ATARIIGIHARWE i Bya Cyangwa "
 "A i kugirango Birenzeho Birambuye"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, fuzzy, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr ""
@@ -2388,39 +2339,39 @@ msgstr ""
 "X- Generator: KBabel 1. 0\n"
 ". 2D."
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, fuzzy, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "ni ni in Gukoresha"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, fuzzy, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "S ku"
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
 "will be lost. Do you want to continue?"
 msgstr ""
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 #, fuzzy
 msgid "New disk label type?"
 msgstr "Akarango Ubwoko"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 #, fuzzy
 msgid "Partition type?"
 msgstr "Ubwoko"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 #, fuzzy
 msgid "Partition name?"
 msgstr "Izina:"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 #, fuzzy
 msgid "File system type?"
 msgstr "Idosiye Sisitemu Ubwoko"
@@ -2433,82 +2384,82 @@ msgstr "Idosiye Sisitemu Ubwoko"
 # sc/source\ui\src\scfuncs.src:RID_SC_FUNCTION_DESCRIPTIONS2.SC_OPCODE_BETA_DIST.8.text
 # #-#-#-#-#  sc.pot (PACKAGE VERSION)  #-#-#-#-#
 # sc/source\ui\src\scfuncs.src:RID_SC_FUNCTION_DESCRIPTIONS2.SC_OPCODE_BETA_INV.8.text
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 #, fuzzy
 msgid "Start?"
 msgstr "Gutangira"
 
 # officecfg/registry\schema\org\openoffice\Office\DataAccess.xcs:....FormSearchOptions.SearchPosition..end-of-field.text
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 #, fuzzy
 msgid "End?"
 msgstr "Impera"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
 "The closest location we can manage is %s to %s (sectors %llu..%llu).%s"
 msgstr ""
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
 msgstr ""
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "%sUturango... OYA Gushigikira Byongerewe..."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 #, fuzzy
 msgid "Partition number?"
 msgstr "Umubare"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr ""
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, fuzzy, c-format
 msgid "Disk %s: %s\n"
 msgstr "Akarango Ubwoko"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr ""
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, fuzzy, c-format
 msgid "Partition Table: %s\n"
 msgstr "Izina:"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, fuzzy, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Akarango Ubwoko"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr ""
 
@@ -2520,175 +2471,175 @@ msgstr ""
 # sc/source\ui\src\scfuncs.src:RID_SC_FUNCTION_DESCRIPTIONS2.SC_OPCODE_BETA_DIST.8.text
 # #-#-#-#-#  sc.pot (PACKAGE VERSION)  #-#-#-#-#
 # sc/source\ui\src\scfuncs.src:RID_SC_FUNCTION_DESCRIPTIONS2.SC_OPCODE_BETA_INV.8.text
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 #, fuzzy
 msgid "Start"
 msgstr "Gutangira"
 
 # officecfg/registry\schema\org\openoffice\Office\DataAccess.xcs:....FormSearchOptions.SearchPosition..end-of-field.text
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 #, fuzzy
 msgid "End"
 msgstr "Impera"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr ""
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr ""
 
 # officecfg/registry\schema\org\openoffice\Office\Common.xcs:....Save.URL.FileSystem.text
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 #, fuzzy
 msgid "File system"
 msgstr "Idosiye ya sisitemu"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr ""
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Amabendera"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr ""
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, fuzzy, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
 "partition table?"
 msgstr "A Byabonetse ku Kuri Kongeramo Kuri i imbonerahamwe#"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 #, fuzzy
 msgid "searching for file systems"
 msgstr "Ishakisha kugirango IDOSIYE"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr ""
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 #, fuzzy
 msgid "New device?"
 msgstr "APAREYE"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr ""
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr ""
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, c-format
 msgid "%d not aligned: %s\n"
 msgstr ""
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 #, fuzzy
 msgid "Flag to Invert?"
 msgstr "Kuri Guhindura>>"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 #, fuzzy
 msgid "New state?"
 msgstr "Leta"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr ""
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 #, fuzzy
 msgid "align-check"
 msgstr "genzura"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
 msgstr ""
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 #, fuzzy
 msgid "help"
 msgstr "Ifashayobora"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 #, fuzzy
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
 msgstr "Ifashayobora Rusange Ifashayobora Cyangwa Ifashayobora ku"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr ""
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr ""
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 #, fuzzy
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
 msgstr "Kurema a Gishya imbonerahamwe#"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr ""
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 #, fuzzy
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "Ubwoko a"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 #, fuzzy
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
 msgstr "a a Gishya IDOSIYE Sisitemu ku i Gicurasi Kuri Gushyiraho"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "izina"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 #, fuzzy
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr "Izina: Izina:"
 
 # #-#-#-#-#  dbaccess.pot (PACKAGE VERSION)  #-#-#-#-#
 # #-#-#-#-#  dbaccess.pot (PACKAGE VERSION)  #-#-#-#-#
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 #, fuzzy
 msgid "print"
 msgstr "Gucapa"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
 "partition"
 msgstr ""
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 #, fuzzy
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
@@ -2696,42 +2647,42 @@ msgid ""
 msgstr ""
 "ingingo Gucapa i imbonerahamwe# Umubare ni Hanyuma Birenzeho Ibisobanuro ni"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
 msgstr ""
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 #, fuzzy
 msgid "quit"
 msgstr "Kuvamo"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 #, fuzzy
 msgid "quit                                     exit program"
 msgstr "Kuvamo Gusohoka Porogaramu"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr ""
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 #, fuzzy
 msgid ""
 "rescue START END                         rescue a lost partition near START "
@@ -2739,133 +2690,140 @@ msgid ""
 msgstr "a Na"
 
 # starmath/source\smres.src:RID_TOOLBOXWINDOW.6.RID_SIZEXY.text
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 #, fuzzy
 msgid "resize"
 msgstr "Kuringaniza"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr ""
 
 # starmath/source\smres.src:RID_TOOLBOXWINDOW.6.RID_SIZEXY.text
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 #, fuzzy
 msgid "resizepart"
 msgstr "Kuringaniza"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 #, fuzzy
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "Gusiba"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr ""
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 #, fuzzy
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "Gusiba"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "guhitamo"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 #, fuzzy
 msgid "select DEVICE                            choose the device to edit"
 msgstr "Guhitamo Guhitamo i APAREYE Kuri Guhindura"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr ""
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr ""
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
 msgstr ""
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 #, fuzzy
 msgid "set"
 msgstr "Gushyiraho"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 #, fuzzy
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr "Gushyiraho Guhindura>> a Ibendera ku"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr ""
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
 msgstr ""
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr ""
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 #, fuzzy
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr "Kuvamo Gusohoka Porogaramu"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr ""
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
 msgstr ""
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
 msgstr ""
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 #, fuzzy
 msgid "No device found"
 msgstr "APAREYE Byabonetse"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr ""
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+#, fuzzy
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr "Mbere Icyiciro 4. Bya i kugirango Birenzeho Ibisobanuro"
+
+#: parted/parted.c:2341
 #, fuzzy
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Kuri Kuvugurura NIBA"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 #, fuzzy
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
@@ -2874,7 +2832,7 @@ msgid ""
 "interactive mode.\n"
 msgstr "Na: Kuri Oya S Ubwoko"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2908,182 +2866,182 @@ msgid ""
 "consider important.\n"
 msgstr ""
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
 msgstr ""
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
 msgstr ""
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
 msgstr ""
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
 msgstr ""
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
 msgstr ""
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
 msgstr ""
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
 msgstr ""
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
 msgstr ""
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
 msgstr ""
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
 msgstr ""
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
 msgstr ""
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
 msgstr ""
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
 msgstr ""
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
 msgstr ""
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
 msgstr ""
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
 msgstr ""
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
 msgstr ""
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
 msgstr ""
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
 msgstr ""
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
 msgstr ""
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
 msgstr ""
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, fuzzy, c-format
 msgid "invalid token: %s"
 msgstr "imbonerahamwe# ku"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 #, fuzzy
 msgid "Expecting a partition number."
 msgstr "a Umubare"
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr ""
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 #, fuzzy
 msgid "Expecting a file system type."
 msgstr "a IDOSIYE Sisitemu Ubwoko"
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, fuzzy, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "IDOSIYE Sisitemu Ubwoko"
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 #, fuzzy
 msgid "Expecting a disk label type."
 msgstr "a Akarango Ubwoko"
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 #, fuzzy
 msgid "Can't create any more partitions."
 msgstr "Kurema Birenzeho"
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 #, fuzzy
 msgid "Expecting a partition type."
 msgstr "a Ubwoko"
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "kuri"
 
@@ -3091,61 +3049,61 @@ msgstr "kuri"
 # svx/source\svdraw\svdstr.src:STR_ItemValOFF.text
 # #-#-#-#-#  svx.pot (PACKAGE VERSION)  #-#-#-#-#
 # svx/source\svdraw\svdstr.src:STR_ItemValTEXTANI_NONE.text
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "bidakora"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr ""
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr ""
 
 # crashrep/source\all\crashrep.lng:%OPTIONS_BUTTON%.text
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 #, fuzzy
 msgid "OPTIONs:"
 msgstr "Amahitamo..."
 
 # sfx2/source\doc\docvor.src:DLG_ORGANIZE.BTN_EDIT.text
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 #, fuzzy
 msgid "COMMANDs:"
 msgstr "Amabwiriza"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
 "Report bugs to %s\n"
 msgstr ""
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, fuzzy, c-format
 msgid "Using %s\n"
 msgstr "ikoresha"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr ""
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid ""
 #~ "The sector size on %s is %d bytes.  Parted is known not to work properly "
 #~ "with drives with sector sizes other than %d bytes"
 #~ msgstr "Ingano ku ni Bayite ni OYA Kuri Akazi Na: Na: Ikindi Bayite"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid "Device %s has dodgey geometry."
 #~ msgstr "Iyigamashusho"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid "Device %s is neither a SCSI nor IDE drive."
 #~ msgstr "ni a Porogaramu- shoboza"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid "Error reading %s (%s) to determine if partition is mounted."
 #~ msgstr "Kuri NIBA ni"
 
@@ -3158,7 +3116,7 @@ msgstr ""
 #~ "Kuri NIBA Biturutse Cyangwa Kuri Ihindurangero Cyangwa Guhindura IDOSIYE "
 #~ "Gusoma"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid ""
 #~ "The kernel was unable to re-read the partition table on %s (%s).  This "
 #~ "means Linux won't know anything nothing about the modifications you made "
@@ -3168,6 +3126,26 @@ msgstr ""
 
 #, fuzzy
 #~ msgid ""
+#~ "The partition table was unable to be reread, as such, you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "imbonerahamwe# Kuri Nka Kuri Mbere Byahinduwe Kuri Mbere Gicurasi "
+#~ "Byahinduwe ni Byombi Kuri Bidakora a Na Bivuye i Icyiciro 4. Bya i "
+#~ "kugirango Birenzeho Ibisobanuro"
+
+#, fuzzy, c-format
+#~ msgid ""
+#~ "The partition table on %s (%s).  This means the Hurd knows nothing about "
+#~ "any modifications you made.  You should reboot your computer before doing "
+#~ "anything with %s."
+#~ msgstr "imbonerahamwe# ku i Ibyerekeye Mbere Na:"
+
+#, fuzzy, c-format
+#~ msgid ""
 #~ "The partition table on %s is inconsistent.  There are many reasons why "
 #~ "this might be the case.  However, the most likely reason is that Linux "
 #~ "detected the BIOS geometry for %s incorrectly.  GNU Parted suspects the "
@@ -3184,7 +3162,7 @@ msgstr ""
 #~ "ni Gicurasi Guhitamo Kuri urifuzagukomeza Na Guhitamo Na Na Cyangwa i "
 #~ "NONEAHA"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid ""
 #~ "The partition table on %s is inconsistent.  There are many reasons why "
 #~ "this might be the case.  Often, the reason is that Linux detected the "
@@ -3206,7 +3184,7 @@ msgstr ""
 #~ "Kuri Gutondeka imbonerahamwe# i Iyigamashusho ni Kuri Kwirengagiza "
 #~ "Gicurasi Na:"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid ""
 #~ "%s contains GPT signatures, indicating that it has a GPT table.  However, "
 #~ "it does not have a valid fake msdos partition table, as it should.  "
@@ -3219,10 +3197,14 @@ msgstr ""
 #~ "imbonerahamwe# iyi a imbonerahamwe#"
 
 #, fuzzy
+#~ msgid "The boot region doesn't start at the start of the partition"
+#~ msgstr "Gutangira ku i Gutangira Bya i"
+
+#, fuzzy, c-format
 #~ msgid "Support for opening %s file systems is not implemented yet."
 #~ msgstr "kugirango Gufungura %s%S IDOSIYE ni OYA"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid "Support for checking %s file systems is not implemented yet."
 #~ msgstr "kugirango IDOSIYE ni OYA"
 
@@ -3238,7 +3220,7 @@ msgstr ""
 #~ msgid "Can't copy onto an overlapping partition."
 #~ msgstr "Gukoporora iyorosa"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid ""
 #~ "Direct support for copying file systems is not yet implemented for %s.  "
 #~ "However, support for resizing implemented.  Therefore, the file system "
@@ -3250,17 +3232,17 @@ msgstr ""
 #~ "IDOSIYE Sisitemu NIBA i Gishya ni ku Nka Nka i ki/ bishaje Kugabanuka i "
 #~ "Kuri Gukoporora Cyangwa Gukoporora Kuri a"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid "Support for copying %s file systems is not implemented yet."
 #~ msgstr "kugirango IDOSIYE ni OYA"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid ""
 #~ "A bug has been detected in GNU parted.  Please email a bug report to bug-"
 #~ "parted@gnu.org containing the version (%s) and the following message:"
 #~ msgstr "A in imeli a Icyegeranyo Kuri org i Verisiyo Na i Ubutumwa"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid "Attempt to read sectors %ld-%ld outside of partition on %s"
 #~ msgstr "Kuri Gusoma Hanze Bya ku"
 
@@ -3317,11 +3299,11 @@ msgstr ""
 #~ msgid "adding groups"
 #~ msgstr "Wongera Amatsinda"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid "Your filesystem is too occupied to resize it to %i blocks. Sorry."
 #~ msgstr "ni Kuri Ihindurangero Kuri"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid ""
 #~ "Your filesystem has too much occupied inodes to resize it to %i blocks. "
 #~ "Sorry."
@@ -3345,11 +3327,11 @@ msgstr ""
 #~ msgid "Cross-linked blocks found! better go run e2fsck first!"
 #~ msgstr "Byabonetse Gyayo Gukoresha Itangira"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid "Block %i has no reference?  Weird"
 #~ msgstr "Oya Indango"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid "Block %i shouldn't have been marked!"
 #~ msgstr "cy/ byagarajwe"
 
@@ -3376,7 +3358,7 @@ msgstr ""
 #~ msgid "File system has an invalid signature for a FAT file systems."
 #~ msgstr "Idosiye Sisitemu Sibyo Isinya kugirango a IDOSIYE"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3384,6 +3366,14 @@ msgstr ""
 #~ "IDOSIYE Sisitemu a Bijyanye n'inyurabwenge Ingano Bya ni OYA Kuri Akazi "
 #~ "Na: Ikindi Bayite"
 
+#, fuzzy, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "IDOSIYE ni cy/ byagarajwe Nka a Sisitemu IDOSIYE Porogaramu Kuri "
+#~ "Guhagarara"
+
 #, fuzzy
 #~ msgid "where necessary, prompts for user intervention"
 #~ msgstr "kugirango Ukoresha:"
@@ -3392,7 +3382,7 @@ msgstr ""
 #~ msgid "Source partition number?"
 #~ msgstr "Umubare"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid ""
 #~ "You requested to create a partition at %.3f-%.3fMb. The closest Parted "
 #~ "can manage is %.3f-%.3fMb."
@@ -3410,7 +3400,7 @@ msgstr ""
 #~ msgid "Can't move a partition onto itself.  Try using resize, perhaps?"
 #~ msgstr "Kwimura a ikoresha Ihindurangero"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid ""
 #~ "You requested to move the partition to %.3f-%.3fMb. The closest Parted "
 #~ "can manage is %.3f-%.3fMb."
@@ -3422,19 +3412,19 @@ msgstr ""
 #~ msgstr "Amabendera"
 
 # officecfg/registry\schema\org\openoffice\Office\Common.xcs:....Save.URL.FileSystem.text
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid "File System: %s\n"
 #~ msgstr "Idosiye ya sisitemu"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid "Minimum size: %10.3fMb (%d%%)\n"
 #~ msgstr "Ingano"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid "Maximum size: %10.3fMb (%d%%)\n"
 #~ msgstr "Ingano"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid "Disk geometry for %s: 0.000-%.3f megabytes\n"
 #~ msgstr "000."
 
@@ -3452,7 +3442,7 @@ msgstr ""
 #~ msgid "Name                  "
 #~ msgstr "Izina"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid ""
 #~ "You requested to resize the partition to %.3f-%.3fMb. The closest Parted "
 #~ "can manage is %.3f-%.3fMb."
@@ -3498,7 +3488,7 @@ msgstr ""
 #~ msgid "resize MINOR START END        resize filesystem on partition MINOR"
 #~ msgstr "Ihindurangero Ihindurangero ku"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid ""
 #~ "You found a bug in GNU Parted.  Please email a bug report to bug-"
 #~ "parted@gnu.org containing the version (%s), and the following message:\n"
@@ -3515,12 +3505,12 @@ msgstr ""
 #~ "S OYA ikoresha Hanyuma Hindura Kuri ku Igenamiterere i Ibendera ku Byose "
 #~ "Ubwoko i Sisitemu Na i i Iyigamashusho Mbere"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid ""
 #~ "The operating system thinks the geometry on %s is %d/%d/%d.  Therefore, "
 #~ "cylinder 1024 ends at %.3fM.%s"
 #~ msgstr "Sisitemu i Iyigamashusho ku ni Umwiburungushure ku"
 
-#, fuzzy
+#, fuzzy, c-format
 #~ msgid "The operating system thinks the geometry on %s is %d/%d/%d.%s"
 #~ msgstr "Sisitemu i Iyigamashusho ku ni"
index 97dc528f9f5fe884a99c272dd0c747a945d8cddb..b9586036c7469e65940314785e9f7d12cc29de08 100644 (file)
Binary files a/po/sk.gmo and b/po/sk.gmo differ
index 587b2e64e22dc8a549e69c3cc37f3562a6197319..6408141b46156733ef71c936589a247ec5680a28 100644 (file)
--- a/po/sk.po
+++ b/po/sk.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 3.0.136\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2012-02-19 16:31+0100\n"
 "Last-Translator: Ivan Masár <helix84@centrum.sk>\n"
 "Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
@@ -95,11 +95,11 @@ msgstr "%s: voľba vyžaduje argument -- %c\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "„"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "“"
 
@@ -367,79 +367,64 @@ msgstr ""
 msgid "memory exhausted"
 msgstr "pamäť je vyčerpaná"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "neplatný %s%s argument „%s“"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "neplatná prípona v %s%s argument „%s“"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s argument „%s“ príliš veľký"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Obraz disku"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Chyba pri otváraní %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
 msgstr ""
 "Nemôžem otvoriť %s na čítanie/zápis (%s). %s bol otvorený len na čítanie."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s pri vyhľadávaní pre čítanie na %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s pri čítaní %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Nemôžem zapisovať na %s, pretože je tvorený len na čítanie."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s pri pri vyhľadávaní pre zápis na %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s pri zápise na %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Viac informácií získate po napísaní „%s --help“.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Použitie: %s [VOĽBA] [ZARIADENIE]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -455,7 +440,7 @@ msgstr ""
 "  -h, --help       zobraziť tento návod a skončiť\n"
 "  -v, --version    vypísať info o verzii a skončiť\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -463,7 +448,7 @@ msgstr ""
 "\n"
 "Bez zadaného ZARIADENIA skúsi všetky oblasti.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -481,43 +466,7 @@ msgstr "Nemôžem otvoriť %s."
 msgid "Unable to probe store."
 msgstr "Nemôžem preskúmať úložný priestor."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Nebolo možné znovu načítať tabuľku oblastí, takže budete musieť pred "
-"pripojením zmenených oblastí reštartovať počítač. Tiež musíte pred reštartom "
-"znovu nainštalovať svoj zavádzač systému (čo môže vyžadovať pripojenie "
-"zmenených oblastí). Nie je možné vykonať oboje! Takže budete musieť zaviesť "
-"systém zo záchranného disku a znovu nainštalovať svoj zavádzač systému "
-"odtiaľ. Podrobnejšie informácie sa dočítate v kapitole 4 Používateľskej "
-"dokumentácie Parted."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Tabuľku oblastí na %s nie je možné znovu načítať (%s). To znamená, že Hurd "
-"nevie nič o zmenách, ktoré ste vykonali. Než budete čokoľvek robiť s %s, "
-"mali by ste reštartovať svoj počítač."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Pred reštartom by ste mali reinštalovať svoj zavádzač systému. Viac "
-"informáci nájdete v kapitole 4 Používateľskej dokumentácie Parted."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s pri pokuse o sync %s na disk"
@@ -833,15 +782,15 @@ msgstr "metadáta"
 msgid "free"
 msgstr "voľné"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "rozšírený"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logický"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primárny"
 
@@ -919,64 +868,73 @@ msgstr ""
 msgid "esp"
 msgstr "Áno"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "pmbr_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Neznámy príznak oblasti, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Informácia"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Upozornenie"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Chyba"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Fatálna chyba"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Chyba"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Neimplementované"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Oprava"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Áno"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Nie"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Znovu"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Ignorovať"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Zrušiť"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -989,27 +947,27 @@ msgstr ""
 "parted.html. Prosím, pošlite emailom hlásenie o chybe na %s obsahujúce "
 "minimálne číslo verzie (%s) a nasledujúcu správu:"
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "Podpora čítania menoviek disku AIX ešte nie je implementovaná."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "Podpora zápisu menoviek disku AIX ešte nie je implementovaná."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "Podpora pridávania oblastí do menoviek disku AIX ešte nie je implementovaná."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "Podpora kopírovania oblastí v menovkách disku AIX ešte nie je implementovaná."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1017,7 +975,7 @@ msgstr ""
 "Podpora nastavovania typu systému oblastí v menovkách disku AIX ešte nie je "
 "implementovaná."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 "Podpora nastavovania príznakov v menovkách disku AIX ešte nie je "
@@ -1109,11 +1067,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Nemožno splniť všetky obmedzenia na oddiel."
@@ -1129,43 +1087,43 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Nepodarilo sa alokovať číslo oblasti."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Nie je možné alokovať položku menovky disku BSD."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Nie je možné alokovať položku menovky disku dasd."
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Neplatná tabuľka oblastí na %s - nesprávny podpis %x"
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Neplatná tabuľka oblastí - rekurzívna oblasť na %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "Rozšírené oblasti nie je možné skryť na štítkoch diskov msdos."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "Rozšírené oblasti nie je možné skryť na štítkoch diskov msdos."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted nemôže zmeniť veľkosť oblastí, ktoré spravuje Windows Dynamic Disk."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "nie je možné vytvoriť žiadne ďalšie oblasti"
 
@@ -1306,12 +1264,12 @@ msgstr "Nebolo možné zistiť informácie o veľkosti bloku."
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 #, fuzzy
 msgid "device is too small for GPT"
 msgstr "Systém súborov je príliš malý na %lu blokov."
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1320,7 +1278,7 @@ msgstr ""
 "Formát tabuľky oblastí GPT je verzie %x, čo je novší, než ktorý dokáže "
 "rozpoznať Parted. Prosím, pošlite nám o tom hlásenie!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1331,7 +1289,7 @@ msgstr ""
 "aby využívalo všetok dostupný priestor (ďalších %llu blokov) alebo "
 "pokračovať s aktuálnym nastavením? "
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 #, fuzzy
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
@@ -1341,7 +1299,7 @@ msgstr ""
 "znamená, že iný operačný systém si myslí, že disk je menší. Mám to opraviť "
 "presunutím zálohy na koniec (a odstránením starej zálohy)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1349,7 +1307,7 @@ msgstr ""
 "Primárna aj záložná tabuľka GPT je poškodená. Skúste vytvoriť novú tabuľku a "
 "obnoviť oblasti pomocou možnosti Partedu rescue."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1357,7 +1315,7 @@ msgstr ""
 "Záložná tabuľka GPT je poškodená, ale primárna sa zdá byť v poriadku, takže "
 "sa použije primárna."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1365,11 +1323,11 @@ msgstr ""
 "Primárna tabuľka GPT je poškodená, ale záloha sa zdá byť v poriadku, takže "
 "sa použije záloha."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "nezodpovedá CRC poľa primárnej tabuľky oblastí"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 #, fuzzy
 msgid "failed to translate partition name"
 msgstr "Nepodarilo sa alokovať číslo oblasti."
@@ -1403,25 +1361,21 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Dátová časť nezačína na začiatku oblasti."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Štartovacia oblasť nezačína na začiatku oblasti."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Zavádzacia časť diskovej oblasti nezaberá celú oblasť."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Dátová časť oblasti nezaberá celú oblasť."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr ""
 "Čudná veľkosť bloku v deskriptore zariadenia: %d bajtov nie je deliteľné 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1430,11 +1384,11 @@ msgstr ""
 "Deskriptor ovládača vraví, že fyzická veľkosť bloku je %d bajtov, ale Linux "
 "vraví, že je to %d bajtov."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Nebola nájdená platná mapa oblastí."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1443,11 +1397,11 @@ msgstr ""
 "Kolidujúce veľkosti položek mapy oblastí! Položka 1 vraví, že je to %d, ale "
 "položka %d vraví, že je to %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Čudné! 2 položky mapy oblastí!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1455,16 +1409,16 @@ msgstr ""
 "Zmena názvu koreňového alebo odkladacej oblasti zabráni Linuxu v jej "
 "rozpoznaní."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "Nemôžem pridať ďalšiu oblasť - mapa oblastí je príliš malá!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Neplatná tabuľka oblastí na %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1473,7 +1427,7 @@ msgstr ""
 "Oblasť %d nie je zarovnaná na hranice cylindra. Toto zatiaľ nie je "
 "podporované."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Nemožno pridať ďalšiu oblasť."
 
@@ -1648,39 +1602,39 @@ msgstr "Nebolo možné zapísať VTOC FMT7 DSCB."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Nebolo možné zapísať VTOC FMT1 DSCB."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Nedostatok pamäte."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Nebolo možné získať veľkosť špeciálnej jednotky „COMPACT“."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "„%s“ má neplatnú syntax lokácií."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Maximálna hodnota hlavičiek je %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Maximálna hodnota sektorov je %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "Lokácia %s sa nachádza mimo zariadenia %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Neplatné číslo."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "Použiť menšiu jednotku namiesto hodnoty < 1"
 
@@ -1690,18 +1644,18 @@ msgstr "Použiť menšiu jednotku namiesto hodnoty < 1"
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : Nepodarilo sa alokovať blok oblasti\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : Nepodarilo sa alokovať blok\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : Nebolo možné prečítať štartovací blok %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1727,22 +1681,22 @@ msgstr "%s : Chybný kontrolný súčet bloku %llu typu %s\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : Nepodarilo sa zapísať blok %d\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s : Nepodarilo sa alokovať disk_specific rdb blok\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s : Nebol nájdený rdb blok, to by sa nikdy nemalo stať\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : Nepodarilo sa načítať blok oblasti %llu\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1838,7 +1792,7 @@ msgstr ""
 "geometria systému sa nezmení. Ak zvolíte Opraviť, CHS geometria systému sa "
 "zmení na CHS geometriu tabuľky oblastí."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1863,12 +1817,12 @@ msgid ""
 "Cluster start delta = %d, which is not a multiple of the cluster size %d."
 msgstr "Zmena začiatku klastra = %d, čo nie je násobok veľikosti klastra %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr "Chybná položka adresára pre %s: prvý klaster je značka konca súboru."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1876,7 +1830,7 @@ msgstr ""
 "Chybná FAT: neukončený reťazec pre %s. Mali by ste spustiť dosfsck alebo "
 "scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1885,7 +1839,7 @@ msgstr ""
 "Chybná FAT: klaster %d sa nachádza mimo systému súborov v reťezci pro %s. "
 "Mali by ste spustiť dosfsck alebo scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1894,26 +1848,17 @@ msgstr ""
 "Chybná FAT: klaster %d má vymenené odkazy s %s. Mali by ste spustiť dosfsck "
 "alebo scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s je %dk, ale má %d klastrov (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"súbor %s je označený ako systémový súbor. To znamená, že jeho presun môže "
-"zpôsobiť, že niektoré programy prestanú fungovať."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Oblasť je príliš veľká/malá pre súborový systém %s"
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1921,11 +1866,11 @@ msgstr ""
 "Tabuľky FAT si nezodpovedajú. Ak neviete, čo to znamená, zvoľte Zrušiť, "
 "spustite na systéme súborov scandisk a potom sa vráťte."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Pro tento typ FAT neexistuje možná konfigurácia."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1936,13 +1881,13 @@ msgstr ""
 "klastra je %dk (očakáva sa %dk); počet klastrov je %d (očakáva sa %d); "
 "veľkosť FAT je %d sektorov (očakáva sa %d)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr "Systém súborov oznamuje voľné miesto %d klastrov, nie %d klastrov."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1950,17 +1895,17 @@ msgstr ""
 "V koreňovom adresári nie je dostatok miesta na všetky súbory. Zvoľte buď "
 "Zrušiť, alebo Ignorovať, čím sa tieto súbory stratia."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Chyba pri zapisování do koreňového adresára."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr ""
 "Ak ponecháte svoj systém súborov vo formáte FAT16, nespôsobíte žiadné nové "
 "problémy."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1970,7 +1915,7 @@ msgstr ""
 "znova nainštalovať zavádzač systému MS Windows. Ak to chcete urobiť, mali by "
 "ste si prečítať príručku Parted (alebo príručku svojej distribúcie)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -1978,7 +1923,7 @@ msgstr ""
 "Ak ponecháte svoj systém súborov vo formáte FAT32, nespôsobíte žiadné nové "
 "problémy."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1992,40 +1937,40 @@ msgstr ""
 "Prevedenie na FAT32 tiež urobí systém súborov nečitateľný pre MS-DOS, MS "
 "Windows 95a a MS Windows NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Chcete použiť FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "Veľkosť systému súborov je možné túto hodnotu zmeniť iba prevodom na FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "Veľkosť systému súborov je možné túto hodnotu zmeniť iba prevodom na FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted nedokáže zmeniť veľkosť tejto oblasti na túto hodnotu. Pracujeme "
 "na tom!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2034,41 +1979,41 @@ msgstr ""
 "FAT %d media %x nezdpovedá media %x štartovacieho sektoru. Pravdepodobne by "
 "ste mali spustiť scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: klaster %ld sa nachádza mimo súborového systému"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: klaster %ld sa nachádza mimo súborového systému"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: nie sú voľné klastre"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Nebolo možné detekovať systém súborov."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "zmena veľkosti súborových systémov %s nie je podporovaná"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "Systém súborov je väčší než zväzok, na ktorom sa nachádza!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "Súborový systém obsahuje chyby."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "Nebolo možné prečítať chybné bloky."
 
@@ -2132,61 +2077,61 @@ msgstr "Nebol nájdený sektor %lli súboru HFS+ s CNID %X."
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "Pokus o zápis súboru HFS+ s CNID %X za znakom konca súboru."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "Prepáčte, veľkosť HFS nie je zatiaľ možné týmto spôsobom zmeniť."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "zmenšujem"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Relokácia údajov zlyhala."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr "Relokácia údajov zanechala na konci zväzku nejaké údaje."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "zapisuje sa HFS Master Directory Block"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "Počas otvárania nebol nájdený platný podpis HFS[+X]."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "Verzia %d HFS+ nie je podporovaná."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "Verzia %d HFSX nie je podporovaná."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "Relokácia údajov zanechala na konci zväzku nejaké údaje."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Chyba pri zapisování alokačného súboru."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "Chyba pri zápise do časti pre komaptibilitu alokačného súboru."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "zapisuje sa Hlavička zväzku HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "Vyskytla sa chyba pri hľadaní povinného súboru chybných blokov."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2194,27 +2139,27 @@ msgstr ""
 "Zdá sa, že sa vyskytla chyba v HFS wrapperi: súbor chybných blokov "
 "neobsahuje vnorený zväzok HFS+."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "Prepáčte, veľkosť HFS+ nie je zatiaľ možné týmto spôsobom zmeniť."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "zmenšuje sa vnorený zväzok HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Zmena veľkosti HFS+ zlyhala."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "zmenšuje sa HPS wrapper"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "Aktualizácia HFS wrappera zlyhala."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2292,7 +2237,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Rozsah nebol premiestnený."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2300,15 +2245,15 @@ msgstr ""
 "Odkaz na rozsah pochádza z miesta, odkiaľ by nemal. Mali by ste skontrolovať "
 "súborový systém!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "Tento zväzok HFS nemá katalógový súbor. To je veľmi nezvyčajné!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr "Tento zväzok HFS nemá súbor pretečení rozsahov. To je dosť nezvyčajné!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2316,52 +2261,52 @@ msgstr ""
 "Súbor pretečení rozsahov by nemal obsahovať svoje vlastné rozsahy! Mali by "
 "ste skontrolovať súborový systém!"
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Nebolo možné udržiavať kópiu systému súborov v pamäti."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "Zoznam chybných blokov nebolo možné načítať."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Vyskytla sa chyba pri premiestňovaní rozsahov."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "Tento zväzok HFS+ nemá katalógový súbor. To je veľmi nezvyčajné!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Tento zväzok HFS+ nemá súbor pretečení rozsahov. To je dosť nezvyčajné!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "zobrazí túto správu pomocníka"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "vypíše rozloženie oblastí na všetkých blokových zariadeniach"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "zobrazí strojovo čitateľný výstup"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "nikdy nežiada o zásah používateľa"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "zobrazí verziu"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "zarovnanie nových oblastí"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2369,31 +2314,31 @@ msgstr ""
 "ČÍSLO je číslo oblasti, ktorú používa Linux. Na menovkách disku msdos majú "
 "primárne oblasti čísla 1-4 a logické oblasti sú od 5 ďalej.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "TYP-JMENOVKY je jeden z: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "PREPÍNAČ je jeden z: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "JEDNOTKA je jedno z: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "požadovan zarovnanie: minimálne alebo optimálne"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "TYP-ODDIELU je jeden z: primary, logical, extended\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "TYP-FS je jeden z: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2402,7 +2347,7 @@ msgstr ""
 "ZAČIATOK a KONIEC sú pozície na disku, napr 4 GB alebo 10%. Záporné hodnoty "
 "sa počítajú od konca disku. Napríklad -1s znamená presne posledný sektor.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 #, fuzzy
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
@@ -2411,19 +2356,19 @@ msgstr ""
 "ZAČIATOK a KONIEC sú pozície na disku, napr 4 GB alebo 10%. Záporné hodnoty "
 "sa počítajú od konca disku. Napríklad -1s znamená presne posledný sektor.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "STAV je jeden z: on, off\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "zariadenie je obvykle /dev/hda alebo /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NÁZEV je ľubovoľné slovo\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2443,24 +2388,24 @@ msgstr ""
 "GNU General Public License.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(zostávajúci čas %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, fuzzy, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr ""
 "Oblasť %s sa používa. Predtým, než vykonáte zmeny pomocou Parted ju musíte "
 "odpojiť."
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Oblasti na %s sa používajú."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2469,31 +2414,31 @@ msgstr ""
 "Existujúca menovka disku na %s sa zničí a všetky dáta na oddiele sa stratia. "
 "Chcete pokračovať?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Typ novej menovky disku?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Typ oblasti?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Názov oblasti?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Typ súborového systému?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Začiatok?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Koniec?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2502,7 +2447,7 @@ msgstr ""
 "Vyžiadali ste oblasť od %s do %s (sektory %llu..%llu).\n"
 "Najbližšie možné miesto je od %s do %s (sektory %llu..%llu).%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2510,95 +2455,95 @@ msgstr ""
 "\n"
 "Je to pre vás ešte prijateľné?"
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, fuzzy, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 "Výsledná oblasť nie je správne zarovnaná, čo sa prejaví zhoršeným výkonom."
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "Menovky disku %s nepodporujú rozšírené oblasti."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Číslo oblasti?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 "BIOS geometria cylinder,hlava,sektor: %d,%d,%d. Každý cylinder má %s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Model: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Disk %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Veľkosť sektora (logická/fyzická): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Tabuľka oblastí: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Príznaky disku: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Číslo"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Začiatok"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Koniec"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Veľkosť"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Typ"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Súborový systém"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Názov"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Prepínače"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Voľné miesto"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2606,54 +2551,54 @@ msgid ""
 msgstr ""
 "Bola nájdená oblasť %s %s na %s -> %s. Chcete ju pridať do tabuľky oblastí?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "hľadám systémy súborov"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr ""
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Nové zariadenie?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "typ zarovnania(min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d zarovnané\n"
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, fuzzy, c-format
 msgid "%d not aligned: %s\n"
 msgstr "%d nezarovnané\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Prepínač, který sa má zmeniť?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Nový stav?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Jednotka?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "kontrola-zarovnania"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
@@ -2662,11 +2607,11 @@ msgstr ""
 "align-check TYP N                         skontrolovať zarovnanie TYP(min|"
 "opt) na oblasti N"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2674,15 +2619,15 @@ msgstr ""
 "help [PRÍKAZ]                            vypíše všeobecného pomocníka alebo "
 "pomocníka o PRÍKAZE"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2690,15 +2635,15 @@ msgstr ""
 "mklabel TYP-MENOVKY                      vytvorí novú menovku disku (tabuľku "
 "oblastí)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart TYP-ODDIELU [TYP-FS] ZAČIATOK KONIEC vytvorí oblasť"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2706,19 +2651,19 @@ msgstr ""
 "„mkpart“ vytvorí oblasť bez toho, aby vytvoril nový systém súborov na nej. "
 "TYP-FS môže špecifikovať zodpovedajúci ID oblasti.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr "name MINOR NÁZOV                         nazvať oblasť MINOR NÁZVOM"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2727,7 +2672,7 @@ msgstr ""
 "print [devices|free|list,all|ČÍSLO]      zobrazí tabuľku oblastí, dostupné "
 "zariadenia, voľné miesto, všetky nájdené oblasti alebo konkrétnu oblasť"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2735,11 +2680,11 @@ msgstr ""
 "„print“ bez argumentov zobrazí celú tabuľku oblastí. S nasledovnými "
 "argumentami však vykoná rôzne iné činnosti.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : zobrazí všetky aktívne blokové zariadenia\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2747,33 +2692,33 @@ msgstr ""
 "  free      : zobrazí informácie o voľnom mieste nerozdelenom medzi oblasti "
 "na aktuálnom blokovom zariadení\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all : zobrazí tabuľky oblastí všetkých aktívnych blokových "
 "zariadení\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 "  ČÍSLO     : zobrazí podrobnejšie informácie o tejto konkrétnej oblasti\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                     ukončiť program"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2781,97 +2726,97 @@ msgstr ""
 "rescue ZAČIATOK KONIEC                   zachrániť stratenú oblasť v "
 "blízkosti ZAČIATKU a KONCA"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr ""
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 #, fuzzy
 msgid "resizepart"
 msgstr "resize"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 #, fuzzy
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "move ČÍSLO ZAČIATOK KONIEC               presunúť oblasť ČÍSLO"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm MINOR                                 odstrániť oblasť MINOR"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr ""
 "select zariadenie                        zvoliť zariadenie, ktoré sa má "
 "upravovať"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "sada_diskov"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr "sada_diskov PREPÍNAČ STAV           zmeniť voľbu na oblasti MINOR"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
 msgstr ""
 "disk_toggle [PRÍZNAK]                  prepnúť PRÍZNAK na vybranom zariadení"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr "set MINOR PREPÍNAČ STAV                  zmeniť voľbu na oblasti MINOR"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
 msgstr ""
 "toggle [ČÍSLO [PRÍZNAK]]                 prepnúť PRÍZNAK na oblasti ČÍSLO"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "unit JEDNOTKA                            nastaviť predvolenú jednotku na "
 "JEDNOTKA"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2879,7 +2824,7 @@ msgstr ""
 "version                                  zobrazí verziu a informácie o "
 "autorských právach GNU Parted"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2887,29 +2832,37 @@ msgstr ""
 "„version“ zobrazí informácie o autorských právach a verzii tejto kópie GNU "
 "Parted\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 "Použitie: %s [-hlmsv] [-a<zarovnanie>] [ZARIADENIE [PRÍKAZ [PARAMETRE]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Nebolo nájdené žiadne zariadenie"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "UPOZORNENIE: Nie ste superpoužívateľ. Dávajte pozor na oprávnenia.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Pred reštartom by ste mali reinštalovať svoj zavádzač systému. Viac "
+"informáci nájdete v kapitole 4 Používateľskej dokumentácie Parted."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Môže byť potrebné aktualizovať /etc/fstab.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr "Vitajte v GNU Parted! Zoznam príkazov zobrazíte napísaním „help“.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2920,7 +2873,7 @@ msgstr ""
 "Vykonať PRÍKAZy s PARAMETRami na ZARIADENIE. Ak nie je zadaný PRÍKAZ, beží v "
 "interaktívnom režime.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2981,7 +2934,7 @@ msgstr ""
 "ďalšie informácie o vašom systéme, ktoré považujete za\n"
 "relevantné.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -2989,7 +2942,7 @@ msgstr ""
 "\n"
 "História príkazov:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -2997,7 +2950,7 @@ msgstr ""
 "\n"
 "Chyba: SEGV_MAPERR (Adresa nemá mapovanie na objekt)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3005,7 +2958,7 @@ msgstr ""
 "\n"
 "Chyba: SEGV_ACCERR (Neplatné oprávnenia mapovaného objektu)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3013,7 +2966,7 @@ msgstr ""
 "\n"
 "Chyba: Vyskytol sa všeobecný signál SIGSEGV.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3021,7 +2974,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_INTDIV (Celé číslo: delenie nulou)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3029,7 +2982,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_INTOVF (Celé číslo: pretečenie)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3037,7 +2990,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_FLTDIV (Desatinné číslo: delenie nulou)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3045,7 +2998,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_FLTOVF (Desatinné číslo: pretečenie)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3053,7 +3006,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_FLTUND (Desatinné číslo: podtečenie)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3061,7 +3014,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_FLTRES (Desatinné číslo: nepresný výsledok)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3069,7 +3022,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_FLTINV (Desatinné číslo: neplatná operácia)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3077,7 +3030,7 @@ msgstr ""
 "\n"
 "Chyba: FPE_FLTSUB (Desatinné číslo: dolný index mimo rozsahu)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3085,7 +3038,7 @@ msgstr ""
 "\n"
 "Chyba: Vyskytol sa všeobecný signál SIGFPE."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3093,7 +3046,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_ILLOPC (Neplatný opkód)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3101,7 +3054,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_ILLOPN (Neplatný operand)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3109,7 +3062,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_ILLADR (Neplatný režim adresácie)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3117,7 +3070,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_ILLTRP (Neplatné zachytenie)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3125,7 +3078,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_PRVOPC (Privilegovaný opkód)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3133,7 +3086,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_PRVREG (Privilegovaný register)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3141,7 +3094,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_COPROC (Chyba koprocesora)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3149,7 +3102,7 @@ msgstr ""
 "\n"
 "Chyba: ILL_BADSTK (Vnútorná chyba zásobníka)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3157,69 +3110,69 @@ msgstr ""
 "\n"
 "Chyba: Vyskytol sa všeobecný signál SIGILL."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "neplatný token: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Očakáva sa číslo oblasti."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Oblasť neexistuje."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Očakáva sa typ systému súborov."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Neznámy typ systému súborov „%s“."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Očakáva sa typ menovky disku."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Nie je možné vytvoriť ďalšie oblasti."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Očakáva sa typ oblasti."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "zap"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "vyp"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "optimálne"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "minimálne"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "VOĽBY:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "PRÍKAZy:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3228,33 +3181,78 @@ msgstr ""
 "\n"
 "Chyby hláste <%s>.\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Používa sa %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Príkaz nedáva zmysel v neinteraktívnom režime.\n"
 
+#, c-format
 #~ msgid "%s: option '--%s' doesn't allow an argument\n"
 #~ msgstr "%s: voľba „--%s“ nepovoľuje argument\n"
 
+#, c-format
 #~ msgid "%s: unrecognized option '--%s'\n"
 #~ msgstr "%s: nerozpoznaná voľba „--%s“\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' doesn't allow an argument\n"
 #~ msgstr "%s: voľba „-W %s“ nepovoľuje argument\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' requires an argument\n"
 #~ msgstr "%s: voľba „-W %s“ vyžaduje argument\n"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "Domovská stránka %s: <http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "neplatný %s%s argument „%s“"
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "neplatná prípona v %s%s argument „%s“"
+
+#, c-format
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "%s%s argument „%s“ príliš veľký"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Nebolo možné znovu načítať tabuľku oblastí, takže budete musieť pred "
+#~ "pripojením zmenených oblastí reštartovať počítač. Tiež musíte pred "
+#~ "reštartom znovu nainštalovať svoj zavádzač systému (čo môže vyžadovať "
+#~ "pripojenie zmenených oblastí). Nie je možné vykonať oboje! Takže budete "
+#~ "musieť zaviesť systém zo záchranného disku a znovu nainštalovať svoj "
+#~ "zavádzač systému odtiaľ. Podrobnejšie informácie sa dočítate v kapitole 4 "
+#~ "Používateľskej dokumentácie Parted."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "Tabuľku oblastí na %s nie je možné znovu načítať (%s). To znamená, že "
+#~ "Hurd nevie nič o zmenách, ktoré ste vykonali. Než budete čokoľvek robiť s "
+#~ "%s, mali by ste reštartovať svoj počítač."
+
+#, c-format
 #~ msgid "Failed to add partition %d (%s)"
 #~ msgstr "Nepodarilo sa pridať oblasť %d (%s)"
 
+#, c-format
 #~ msgid ""
 #~ "parted was unable to re-read the partition table on %s (%s).  This means "
 #~ "Linux won't know anything about the modifications you made. "
@@ -3262,6 +3260,7 @@ msgstr "Príkaz nedáva zmysel v neinteraktívnom režime.\n"
 #~ "Jádro nedokázalo znovu načítať tabuľku oblastí na %s (%s). To znamená, že "
 #~ "Linux vedieť o zmenách, ktoré ste vykonali."
 
+#, c-format
 #~ msgid ""
 #~ "%s contains GPT signatures, indicating that it has a GPT table.  However, "
 #~ "it does not have a valid fake msdos partition table, as it should.  "
@@ -3275,6 +3274,10 @@ msgstr "Príkaz nedáva zmysel v neinteraktívnom režime.\n"
 #~ "ste možno odstránili tabuľku oblastí GPT a teraz používate tabuľku "
 #~ "oblastí DOS. Je toto tabuľka oblastí GPT?"
 
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "Štartovacia oblasť nezačína na začiatku oblasti."
+
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3282,6 +3285,14 @@ msgstr "Príkaz nedáva zmysel v neinteraktívnom režime.\n"
 #~ "Systém súborov má logickú veľkost sektora %d. Je známe, že GNU Parted "
 #~ "nepracuje správne s veľkosťou sektora inou ako 512 bajtov."
 
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "súbor %s je označený ako systémový súbor. To znamená, že jeho presun môže "
+#~ "zpôsobiť, že niektoré programy prestanú fungovať."
+
 #~ msgid ""
 #~ "Usage: %s [OPTION]\n"
 #~ "  or:  %s DEVICE MINOR\n"
index 8806b59240999123c8c716ee95cff31cd616ecf1..ac914b2aa0761291c1fec8646fd9b2af982cc235 100644 (file)
Binary files a/po/sl.gmo and b/po/sl.gmo differ
index de52dc59a74ec767cf9fd285e3e6c589512f1af7..a1f6233f7967c23dd778608e6f388ccd80cacd70 100644 (file)
--- a/po/sl.po
+++ b/po/sl.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 2.3\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2010-11-11 19:44+0000\n"
 "Last-Translator: Andrej Žnidaršič <andrej.znidarsic@gmail.com>\n"
 "Language-Team: Slovenian <translation-team-sl@lists.sourceforge.net>\n"
@@ -100,11 +100,11 @@ msgstr "%s: možnost zahteva argument -- '%c'\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "\""
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "\""
 
@@ -372,79 +372,64 @@ msgstr ""
 msgid "memory exhausted"
 msgstr "pomnilnik je porabljen"
 
-#: lib/xstrtol-error.c:63
-#, fuzzy, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "neveljaven %s%s argument `%s'"
-
-#: lib/xstrtol-error.c:68
-#, fuzzy, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "neveljavna pripona v %s%s argument `%s'"
-
-#: lib/xstrtol-error.c:72
-#, fuzzy, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s: argument `%s' je prevelik"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Odtis diska"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Napaka med odpiranjem %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
 msgstr ""
 "%s ni mogoče odpreti za branje in pisanje (%s). %s je odprt samo za branje."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s med iskanjem za branje na %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s med branjem na %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Pisanje v %s ni mogoče, ker je odprt samo za branje."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s med iskanjem za pisanje na %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s med pisanjem na %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Poskusite `%s --help' za več podrobnosti.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Uporaba: %s [MOŽNOSTI] [NAPRAVE] ...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -460,7 +445,7 @@ msgstr ""
 "  -h, --help       prikaže to pomoč in konča\n"
 "  -v, --version    prikaže podrobnosti o različici in konča\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -468,7 +453,7 @@ msgstr ""
 "\n"
 "Ko NAPRAVA ni podana, preišče vse razdelke.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -486,44 +471,7 @@ msgstr "Ni bilo mogoče odpreti %s."
 msgid "Unable to probe store."
 msgstr "Zaloge ni mogoče preveriti."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Preglednice razdelkov ni bilo mogoče znova prebrati. To pomeni, da je "
-"potreben ponoven zagon pred priklapljanjem spremenjenih razdelkov. Pred "
-"ponovnim zagonom je treba tudi znova namestiti zagonski nalagalnik (kar "
-"morda zahteva priklapljanje spremenjenih razdelkov). Nemogoče je storiti "
-"oboje! Sistem boste morali zagnati z reševalnega diska in z njega znova "
-"namestiti zagonski nalagalnik. Za več podrobnosti si preberite poglavje 4 v "
-"uporabniškem priročniku Parted."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Preglednice razdelkov na %s ni mogoče znova prebrati (%s). To pomeni, da "
-"Hurd ne ve nič o vaših spremembah. Računalnik morate pred nadaljnjim delom "
-"znova zagnati z %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Pred ponovnim zagonom priporočamo ponovno namestitev zagonskega nalagalnika. "
-"Za več podrobnosti si preberite odstavek 4 v uporabniški dokumentaciji "
-"Parted."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s poizkus usklajevanja %s z diskom"
@@ -840,15 +788,15 @@ msgstr "metapodatki"
 msgid "free"
 msgstr "prosto"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "razširjen"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logični"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "osnovni"
 
@@ -926,64 +874,73 @@ msgstr ""
 msgid "esp"
 msgstr "Da"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "zagon"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Neznana zastavica razdelka, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Podrobnosti"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Opozorilo"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Napaka"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Usodno"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Hrošč"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Ni podprto"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Popravi"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Da"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Ne"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "V redu"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Poskusi znova"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Prezri"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Prekliči"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, fuzzy, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -997,25 +954,25 @@ msgstr ""
 "bug-parted@gnu.org vsaj s podatki o različici (%s) in naslednjim "
 "sporočilom:  "
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "Podpora za branje diskov oznake AIX še ni dodana."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "Podpora za pisanje diskov oznake AIX še ni dodana."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr "Podpora za dodajanje razdelkov diskom oznake AIX še ni dodana."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr "Podpora za podvajanje razdelkov diskov oznake AIX še ni dodana."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1023,7 +980,7 @@ msgstr ""
 "Podpora za nastavljanje vrste sistema razdelkov v  diskih oznake AIX še ni "
 "dodana."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr "Podpora za nastavljanje zastavic diskov oznake AIX še ni dodana."
 
@@ -1113,11 +1070,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Vsem omejitvam razdelka ni mogoče zadostiti."
@@ -1133,44 +1090,44 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Dodeljevanje številke razdelka ni uspelo."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Dodeljevanje reže bsd disklabel ni uspelo."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Dodeljevanje reže dasd disklabel ni uspelo."
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Neveljavna preglednica razdelka na %s -- napačen podpis %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Neveljavna preglednica razdelka - rekurzivni razdelek na %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "Razširjeni razdelki ne morejo biti skriti na msdos oznakah diska."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "Razširjeni razdelki ne morejo biti skriti na msdos oznakah diska."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted ne more spremeniti velikosti razdelka, ki ga upravlja Windows Dynamic "
 "Disk."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 #, fuzzy
 msgid "cannot create any more partitions"
 msgstr "Novih razdelkov ni mogoče ustvariti."
@@ -1313,12 +1270,12 @@ msgstr "Podrobnosti o velikosti bloka ni mogoče pridobiti."
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 #, fuzzy
 msgid "device is too small for GPT"
 msgstr "Naprava je premajhna za %lu blokov."
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, fuzzy, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1327,7 +1284,7 @@ msgstr ""
 "Oblika GTP preglednice razdelkov je različica %x, kar je novejše kot lahko "
 "Parted prepozna. Sporočite nam! bug-parted@gnu.org"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1338,7 +1295,7 @@ msgstr ""
 "uporabljal ves prostor (dodatnih %llu blokov) ali pa nadaljujte s trenutnimi "
 "nastavitvami. "
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 #, fuzzy
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
@@ -1349,7 +1306,7 @@ msgstr ""
 "diska manjša. Ali želite to popraviti s premikom varnostne kopije na konec "
 "diska (in izbrisom stare varnostne kopije)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1358,7 +1315,7 @@ msgstr ""
 "narediti svežo preglednico in z reševalno možnostjo programa Parted obnoviti "
 "razdelke."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1366,7 +1323,7 @@ msgstr ""
 "Varnostna kopija preglednice GPT je pokvarjena, vendar je osnovna videti v "
 "redu, zato bo uporabljena."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1374,11 +1331,11 @@ msgstr ""
 "Osnovna preglednica GPT je pokvarjena, vendar je varnostna kopija v redu, "
 "zato bo uporabljena."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "polje osnovne preglednice razdelka ima nujemajoč CRC"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 #, fuzzy
 msgid "failed to translate partition name"
 msgstr "Dodeljevanje številke razdelka ni uspelo."
@@ -1412,25 +1369,21 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Področje podatkov se ne začne na začetku razdelka."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Zagonsko področje se ne začne na začetku razdelka."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Zagonsko področje razdelka ne zaseda celotnega razdelka."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Podatkovno področje razdelka ne zaseda celotnega razdelka."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr ""
 "Čudna velikost bloka na opisovalniku naprave: %d bajtov ni deljivih z 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1439,11 +1392,11 @@ msgstr ""
 "Opisovalnik naprave pravi, da je fizični blok velik %d bajtov, vendar Linux "
 "pravi, da je %d bajtov."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Preslikave razdelka ni mogoče najti."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1452,11 +1405,11 @@ msgstr ""
 "Sporne velikosti vnosov preslikave razdelka! Vnos 1 pravi %d, vendar vnos %d "
 "pravi %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Čudno! Obstajata 2 vnosa preslikave particij!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1464,23 +1417,23 @@ msgstr ""
 "Spreminjanje imena korenskega ali izmenjevalnega razdelka bo sistemu Linux "
 "preprečilo prepoznavo the razdelkov."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "Dodatnega razdelka ni mogoče dodati - načrt razdelkov je premajhen!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Neveljavna preglednica razdelkov na %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
 "unsupported."
 msgstr "Razdelek %d ni poravnan z mejo cilindrov. To ni podprto."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Dodatnega razdelka ni mogoče dodati."
 
@@ -1655,39 +1608,39 @@ msgstr "VTOC FMT7 DSCB ni mogoče zapisati."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "VTOC FMT1 DSCB ni mogoče zapisati."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Zmanjkalo je pomnilnika."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Velikosti enote za posebno enoto 'COMPACT' ni mogoče dobiti."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "\"%s\" ima neveljavno skladnjo za mesto."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Največja vrednost glave je %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Največja vrednost sektorja je %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "Mesto %s je zunaj naprave %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Neveljavno število."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr ""
 
@@ -1697,18 +1650,18 @@ msgstr ""
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : Dodeljevanje bloka razdelka ni uspelo\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s: Dodeljevanje bloka ni uspelo\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s: Branje zagonskega bloka %llu ni uspelo\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1734,22 +1687,22 @@ msgstr "%s: Slaba nadzorna vsota na bloku %llu vrste %s\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s: Zapisovanje bloka %d ni uspelo\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s: Dodeljevanje bloka disk_specific rdb ni uspelo\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s : bloka rdb ni mogoče najti, kar se ne sme zgoditi\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s: Branje bloka razdelka %llu ni uspelo\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1848,7 +1801,7 @@ msgstr ""
 "datotečnega sistema ostala nespremenjena. Če izberete popravi, bo geometrija "
 "CHS datotečnega sistema nastavljena na vrednosti iz preglednice razdelkov."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1873,19 +1826,19 @@ msgid ""
 "Cluster start delta = %d, which is not a multiple of the cluster size %d."
 msgstr "Začetek gruče delta = %d, ki ni večkratnik velikosti gruče %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr "Slab vnos mape %s: prva gruča je konec datotečnega označevalnika."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
 msgstr ""
 "Slab FAT: nezaključena veriga %s: Treba je zagnati ukaz dosfsck ali scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1894,7 +1847,7 @@ msgstr ""
 "Slab FAT: gruča %d je zunaj datotečnega sistema v verigi %s. Treba je "
 "zagnati ukaz dosfsck ali scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1903,26 +1856,17 @@ msgstr ""
 "Slab FAT: gruča %d je navzkrižno povezana v %s. Treba je zagnati ukaz "
 "dosfsck ali scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s je %dk, vendar ima %d gruč (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"Datoteka %s je označena kot sistemska datoteka. To pomeni, da bi njen premik "
-"lahko povzročil nedelovanje nekaterih programov."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Razdelek je prevelik/premajhen za datotečni sistem %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1930,11 +1874,11 @@ msgstr ""
 "FAT-i se ne ujemajo. Če ne veste kaj to pomeni, izberite prekliči, zaženite "
 "ukaz scandisk na datotečnem sistemu in nato poskusite znova."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Za to vrsto FAT ni veljavnih nastavitev."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1945,14 +1889,14 @@ msgstr ""
 "Velikost gruče je %dk (pričakovana %dk); število gruč je %d (pričakovano "
 "%d); velikost FAT je %d sektorjev (pričakovana %d)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr ""
 "Datotečni sistem sporoča prosti prostor velikosti %d gruč in ne %d gruč."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1960,15 +1904,15 @@ msgstr ""
 "V korenski mapi ni dovolj prostora za vse datoteke. Prekličite ali pa "
 "prezrite in s tem izgubite datoteke."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Napaka med zapisovanjem v korensko mapo."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "Če pustite datotečni sistem FAT16, ne boste imeli težav."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1979,14 +1923,14 @@ msgstr ""
 "storiti, preverite podrobnosti v priročniku Parted (ali v priročniku svoje "
 "distribucije)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
 msgstr ""
 "Če pustite datotečni sistem FAT32, ne boste uvedli nobenih novih težav."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2000,42 +1944,42 @@ msgstr ""
 "distribucije). Pretvorba v FAT32 bo povzročila, da bo datotečni sistem "
 "nemogoče brati iz MS DOS, MS Windosw 95 in MS Windows NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Želite uporabiti FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "Datotečnemu sistemu je mogoče spremeniti velikost na to vrednost le, če bo "
 "pretvorjen v FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "Datotečnemu sistemu je mogoče spremeniti velikost na to vrednost le, če bo "
 "pretvorjen v FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted velikosti razdelka ne more spremeniti na to vrednost. Delamo na "
 "tem!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2044,41 +1988,41 @@ msgstr ""
 "FAT %d medij %x ne ustreza mediju %x zaganjalnega sektorja. Najverjetneje je "
 "treba zagnati scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: gruča %ld je zunaj datotečnega sistema"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: gruča %ld je zunaj datotečnega sistema"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: ni prostih gruč"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Datotečnega sistema ni mogoče zaznati."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, fuzzy, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "Podpora za spremembo velikosti datotečnega sistem %s še ni dodana."
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "Datotečni sistem je večji kot njegov nosilec!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "Datotečni sistem vsebuje napake."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "Slabega bloka ni mogoče prebrati."
 
@@ -2144,61 +2088,61 @@ msgstr "Sektorja %lli HFS+ datoteke s CNID %X ni bilo mogoče najti."
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "Poskus pisanja HFS+ datoteke s CNID %X za EOF."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "Oprostite, HFS-ju ni mogoče spremeniti velikosti na takšen način."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "krčenje"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Prestavljanje podatkov ni uspelo."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr "Prestavljanje podatkov je pustilo nekaj podatkov na koncu nosilca."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "pisanje bloka glavnege mape"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "Med odpiranjem ni bilo mogoče najti veljavnega podpisa HFS[+X]."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "HFS+ različica %d ni podprta."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "HFSX različica %d  ni podprta."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "Prestavljanje podatkov je pustilo nekaj podatkov na koncu nosilca."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Napaka med zapisovanjem dodelitvene datoteke."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "Napaka med zapisovanjem združljivostnega dela dodelitvene datoteke."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "zapisovanje glave nosilca HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "Napaka med iskanjem obvezne datoteke slabih blokov."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2206,27 +2150,27 @@ msgstr ""
 "Kot kaže je v ovijalniku HFS napaka: datoteka slabih blokov ne vsebuje "
 "vstavljenega nosilca HFS+."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "Oprostite, HFS+ ni mogoče spreminiti velikosti na ta način."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "krčenje vstavljenega nosilca HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Spreminjanje velikosti nosilca HFS+ ni uspelo."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "krčenje ovijalnika HFS"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "Posodabljanje ovijalnika HFS ni uspelo."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2305,7 +2249,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Segment extent ni bil prestavljen."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2313,16 +2257,16 @@ msgstr ""
 "Sklic za segment extent prihaja iz prostora kjer ne bi smel. Preverite "
 "datotečni sistem!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "Ta nosilec HFS nima datoteke kataloga. To je zelo nenavadno!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Ta nosilec HFS nima datoteke preliva segmentov extents. To je zelo nenavadno!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2330,53 +2274,53 @@ msgstr ""
 "Datoteka preliva segmentov extents ne sme vsebovati lastnih segmentov "
 "extents! Preverite datotečni sistem."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Datotečnega sistema ni bilo mogoče naložiti v pomnilnik."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "Seznama slabih blokov ni mogoče naložiti."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Napaka med prestavljanjem segmenta extent."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "Ta nosilec HFS+ nima datoteke kataloga. To je zelo nenavadno!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Ta nosilec HFS+ nima datoteke preliva segmentov extents. To je zelo "
 "nenavadno!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "prikaže to sporočilo pomoči"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "prikaže postavitev razdelkov na vseh blokovnih napravah"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "prikaže izhodne podatke, ki s računalniško razčlenjivi"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "nikoli ne pozovi za uporabniško posredovanje"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "prikaže različico"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "poravnava novih razdelkov"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2385,31 +2329,31 @@ msgstr ""
 "DOS so številke osnovnih razdelkov od 1 do 4, logičnih razdelkov pa od 5 "
 "naprej.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "VRSTA_OZNAKA je ena od: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "ZASTAVICA je ena od: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "ENOTA je ena od: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "zaželjena poravnava: najmanjša ali optimalna"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "VRSTA-RAZDELKA je ena od: osnovna, logična, razširjena\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "VRSTA-DS je ena od: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2419,7 +2363,7 @@ msgstr ""
 "vrednosti se štejejo od konca diska. Na primer, -1s določa natanko zadnji "
 "sektor.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 #, fuzzy
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
@@ -2429,19 +2373,19 @@ msgstr ""
 "vrednosti se štejejo od konca diska. Na primer, -1s določa natanko zadnji "
 "sektor.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "Stanje je eno od: on, off\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "NAPRAVA je ponavadi /dev/hda ali /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "IME je katerakoli beseda, ki jo hočete\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2462,23 +2406,23 @@ msgstr ""
 "Oglejte si licenco GNU General Public License za podrobnosti.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(čas do konca %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, fuzzy, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr ""
 "Razdelek %s je v uporabi. Pred spreminjanjem s Parted ga je treba odklopiti."
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Razdel-ek(ki) na %s so v uporabi."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2487,31 +2431,31 @@ msgstr ""
 "Obstoječa oznaka diska na %s bo uničena in vsi podatki na disku bodo "
 "izgubljeni. Želite nadaljevati?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Nova vrsta oznake diska?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Vrsta razdelka?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Ime razdelka?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Vrsta datotečnega sistema?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Začetek?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Konec?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, fuzzy, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2520,7 +2464,7 @@ msgstr ""
 "Zahtevali ste razdelek od %s do %s.\n"
 "Najbližje mogoče mesto je od %s do %s.%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2528,94 +2472,94 @@ msgstr ""
 "\n"
 "Je to za vas sprejemljivo?"
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, fuzzy, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr "Ciljni razdelek ni pravilno poravnan za najboljšo zmogljivost."
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "oznake diska %s ne podpirajo razširjenih razdelkov."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Številka razdelka?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 "cilinder BIOS,glava,geometrija sektorja: %d,%d,%d.  Vsak cilinder je %s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Model: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Disk %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Velikost sektorja (logična/fizična): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Preglednica razdelkov: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, fuzzy, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Disk %s: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Število"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Začetek"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Konec"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Velikost"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Vrsta"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Datotečni sistem"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Ime"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Zastavice"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Nezaseden prostor"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2624,54 +2568,54 @@ msgstr ""
 "razdelek %s %s je bil najden na %s -> %s.  Ga želite dodati k preglednici "
 "razdelkov?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "iskanje datotečnega sistema"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr ""
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Nova naprava?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "vrsta poravnave (min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d je poravnan\n"
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, fuzzy, c-format
 msgid "%d not aligned: %s\n"
 msgstr "%d ni poravnan\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Označi za obrat?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Novo stanje?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Enota?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
@@ -2680,11 +2624,11 @@ msgstr ""
 "align-check VRSTA ŠTEVILKA               preveri poravnanost vrste VRSTA "
 "(min|opt) razdelka ŠTEVILKA"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2692,15 +2636,15 @@ msgstr ""
 "help [UKAZ]                              izpiše splošno pomoč ali pomoč o "
 "ukazu UKAZ"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2708,15 +2652,15 @@ msgstr ""
 "mklabel,mktable OZNAKA-VRSTA             ustvari novo oznako diska "
 "(preglednica razdelkov)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart VRSTA-RAZDELKA [VRSTA-DS] ZAČETEK KONEC     naredi razdelek"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2725,20 +2669,20 @@ msgstr ""
 "razdelku. VRSTA-DS je lahko določena za nastavitev primernega ID-ja "
 "razdelka.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "name ŠTEVILKA IME                        razdelek ŠTEVILKA poimenuj z IME"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2748,7 +2692,7 @@ msgstr ""
 "naprave, ki so na voljo, nezaseden prostor, vse najdene razdelke ali določen "
 "razdelek"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2756,11 +2700,11 @@ msgstr ""
 "Brez argumentov, 'print' prikaže celotno preglednico razdelkov. Z "
 "naslednjimi argumenti pa izvede različna druga dejanja.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : prikaže vse dejavne blokovne naprave\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2768,31 +2712,31 @@ msgstr ""
 "  free      : prikaže podatke o nezasedenem nerazdeljenem prostoru na "
 "trenutni blokovni napravi\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all : prikaže preglednico razdelkov vseh dejavnih blokovnih naprav\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr "  ŠTEVILKA  : prikaže podrobne podatke o določenem razdelku\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                     konča program"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2800,45 +2744,45 @@ msgstr ""
 "rescue ZAČETEK KONEC                     reši izgubljen razdelek blizu "
 "ZAČETKA in KONCA"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr ""
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 #, fuzzy
 msgid "resizepart"
 msgstr "resize"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 #, fuzzy
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "move ŠTEVILKA ZAČETEK KONEC              premakne razdelek ŠTEVILKA"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm ŠTEVILKA                              izbriše razdelek ŠTEVILKA"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select NAPRAVA                           izbere napravo za urejanje"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr ""
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 #, fuzzy
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
@@ -2846,12 +2790,12 @@ msgstr ""
 "set ŠTEVILKA ZASTAVICA STANJE            spremeni ZASTAVICO na razdelku "
 "ŠTEVILKA"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 #, fuzzy
 msgid "disk_toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 #, fuzzy
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
@@ -2860,22 +2804,22 @@ msgstr ""
 "toggle [ŠTEVILKA [ZASTAVICA]]            preklopi stanje ZASTAVICE na "
 "razdelku ŠTEVILKA"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "set ŠTEVILKA ZASTAVICA STANJE            spremeni ZASTAVICO na razdelku "
 "ŠTEVILKA"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2883,20 +2827,20 @@ msgstr ""
 "toggle [ŠTEVILKA [ZASTAVICA]]            preklopi stanje ZASTAVICE na "
 "razdelku ŠTEVILKA"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "unit ENOTA                               nastavi privzeto enoto na ENOTA"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "različica"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2904,7 +2848,7 @@ msgstr ""
 "version                                  prikaže številko različice in "
 "podrobnosti o avtorskih pravicah programa GNU Parted"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2912,30 +2856,39 @@ msgstr ""
 "'version' prikaže avtorske pravice in podrobnosti o različici, ki ustrezajo "
 "tej kopiji programa GNU Parted\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 "Uporaba: %s [-hlmsv] [-a<poravnava>] [NAPRAVA [UKAZ [PARAMETRI]] ...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Naprave ni mogoče najti"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 #, fuzzy
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "OPOZORILO: Niste superuporabnik. Pazite na dovoljenja."
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Pred ponovnim zagonom priporočamo ponovno namestitev zagonskega nalagalnika. "
+"Za več podrobnosti si preberite odstavek 4 v uporabniški dokumentaciji "
+"Parted."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Morda boste morali posodobiti /etc/fstab.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr "Dobrodošli v GNU Parted! Vpišite 'help' za ogled seznama ukazov.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2946,7 +2899,7 @@ msgstr ""
 "Uveljavi UKAZE s PARAMETRI za NAPRAVO.  Če UKAZ ni podan poženi v vzajemnem "
 "načinu.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -3009,7 +2962,7 @@ msgstr ""
 "Ravno-tako vključite vse dodatne podrobnosti o svojih nastavitvah, \n"
 "ki se vam zdijo pomembne.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -3017,7 +2970,7 @@ msgstr ""
 "\n"
 "Zgodovina ukazov:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -3025,7 +2978,7 @@ msgstr ""
 "\n"
 "Napaka: SEGV_MAPERR (Naslov ni preslikan na predmet)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3033,7 +2986,7 @@ msgstr ""
 "\n"
 "Error: SEGV_ACCERR (neveljavne pravice preslikanega objekta)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3041,7 +2994,7 @@ msgstr ""
 "\n"
 "Napaka: Zaznan je bil splošni signal SIGSEGV.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3049,7 +3002,7 @@ msgstr ""
 "\n"
 "Napaka: FPE_INTDIV (Celo število: deljenje z 0)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3057,7 +3010,7 @@ msgstr ""
 "\n"
 "Napaka: FPE_INTOVF (Celo število: preliv)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3065,7 +3018,7 @@ msgstr ""
 "\n"
 "Napaka: FPE_FLTDIV (Decimalno število: deljenje z 0)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3073,7 +3026,7 @@ msgstr ""
 "\n"
 "Napaka: FPE_FLTOVF (Decimalno število: prekoračitev)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3081,7 +3034,7 @@ msgstr ""
 "\n"
 "Napaka: FPE_FLTUND (Decimalno število: prekoračitev spodnje meje)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3089,7 +3042,7 @@ msgstr ""
 "\n"
 "Napaka: FPE_FLTRES (Decimalno število: netočen rezultat)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3097,7 +3050,7 @@ msgstr ""
 "\n"
 "Napaka: FPE_FLTINV (Decimalno število: neveljavno opravilo)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3105,7 +3058,7 @@ msgstr ""
 "\n"
 "Napaka: FPE_FLTSUB (Decimalno število: indeks zunaj obsega)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3113,7 +3066,7 @@ msgstr ""
 "\n"
 "Napaka: Zaznan je bil splošni signal SIGFPE."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3121,7 +3074,7 @@ msgstr ""
 "\n"
 "Napaka: ILL_ILLOPC (Neveljavna koda opravila)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3129,7 +3082,7 @@ msgstr ""
 "\n"
 "Napaka: ILL_ILLOPN (Neveljaven operand)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3137,7 +3090,7 @@ msgstr ""
 "\n"
 "Napaka: ILL_ILLADR (Neveljaven način naslavljanja)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3145,7 +3098,7 @@ msgstr ""
 "\n"
 "Napaka: ILL_ILLTRP (Neveljavna past)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3153,7 +3106,7 @@ msgstr ""
 "\n"
 "Napaka: ILL_PRVOPC (Opcode s povišanimi pravicami)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3161,7 +3114,7 @@ msgstr ""
 "\n"
 "Napaka: ILL_PRVREG (Register s povišanimi pravicami)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3169,7 +3122,7 @@ msgstr ""
 "\n"
 "Napaka: ILL_COPROC (Napaka soopravilnika)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3177,7 +3130,7 @@ msgstr ""
 "\n"
 "Napaka: ILL_BADSTK (Napaka notranjega sklada)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3185,69 +3138,69 @@ msgstr ""
 "\n"
 "Napaka: Zaznan je bil splošni signal SIGILL."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "neveljaven žeton %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Pričakovana je številka razdelka."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Razdelek ne obstaja."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Pričakovana je vrsta datotečnega sistema."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Neznan datotečni sistem vrste \"%s\"."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Pričakuje se vrsta oznake diska."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Novih razdelkov ni mogoče ustvariti."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Pričakuje se vrsta razdelka."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "vključeno"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "izključeno"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "optimalno"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "najmanjše"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "MOŽNOSTI:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "UKAZI:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3256,33 +3209,52 @@ msgstr ""
 "\n"
 "Hrošče sporočite na %s\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Uporablja %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Ta ukaz nima smisla v ne-vzajemnem načinu.\n"
 
+#, c-format
 #~ msgid "%s: option '--%s' doesn't allow an argument\n"
 #~ msgstr "%s: možnost '--%s' ne dovoljuje argumenta\n"
 
+#, c-format
 #~ msgid "%s: unrecognized option '--%s'\n"
 #~ msgstr "%s: neprepoznana možnost '--%s'\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' is ambiguous\n"
 #~ msgstr "%s: možnost '-W %s' je dvoumna\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' doesn't allow an argument\n"
 #~ msgstr "%s: možnost '-W %s' ne dovoljuje argumenta\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' requires an argument\n"
 #~ msgstr "%s: možnost '-W %s' zahteva argument\n"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "Domača stran %s: <http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument `%s'"
+#~ msgstr "neveljaven %s%s argument `%s'"
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument `%s'"
+#~ msgstr "neveljavna pripona v %s%s argument `%s'"
+
+#, c-format
+#~ msgid "%s%s argument `%s' too large"
+#~ msgstr "%s%s: argument `%s' je prevelik"
+
+#, c-format
 #~ msgid ""
 #~ "Usage: %s [OPTION]\n"
 #~ "  or:  %s DEVICE MINOR\n"
@@ -3304,18 +3276,49 @@ msgstr "Ta ukaz nima smisla v ne-vzajemnem načinu.\n"
 #~ msgid "      --version  output version information and exit\n"
 #~ msgstr "      --version  izpiše podrobnosti o različici in konča\n"
 
+#, c-format
 #~ msgid "too few arguments"
 #~ msgstr "premalo argumentov"
 
+#, c-format
 #~ msgid "too many arguments"
 #~ msgstr "preveč argumentov"
 
+#, c-format
 #~ msgid "invalid minor device number: %s"
 #~ msgstr "napačno manjše število naprave: %s"
 
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Preglednice razdelkov ni bilo mogoče znova prebrati. To pomeni, da je "
+#~ "potreben ponoven zagon pred priklapljanjem spremenjenih razdelkov. Pred "
+#~ "ponovnim zagonom je treba tudi znova namestiti zagonski nalagalnik (kar "
+#~ "morda zahteva priklapljanje spremenjenih razdelkov). Nemogoče je storiti "
+#~ "oboje! Sistem boste morali zagnati z reševalnega diska in z njega znova "
+#~ "namestiti zagonski nalagalnik. Za več podrobnosti si preberite poglavje 4 "
+#~ "v uporabniškem priročniku Parted."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "Preglednice razdelkov na %s ni mogoče znova prebrati (%s). To pomeni, da "
+#~ "Hurd ne ve nič o vaših spremembah. Računalnik morate pred nadaljnjim "
+#~ "delom znova zagnati z %s."
+
+#, c-format
 #~ msgid "Failed to add partition %d (%s)"
 #~ msgstr "Dodajanje razdelka %d ni uspelo (%s)"
 
+#, c-format
 #~ msgid ""
 #~ "parted was unable to re-read the partition table on %s (%s).  This means "
 #~ "Linux won't know anything about the modifications you made. "
@@ -3323,12 +3326,15 @@ msgstr "Ta ukaz nima smisla v ne-vzajemnem načinu.\n"
 #~ "Ponovno branje preglednice razdelkov na %s ni uspelo (%s). Linux ne ve "
 #~ "ničesar o pravkar narejenih spremembah. "
 
+#, c-format
 #~ msgid "Support for opening %s file systems is not implemented yet."
 #~ msgstr "Podpora za odpiranje datotečnega sistem %s še ni dodana."
 
+#, c-format
 #~ msgid "Support for creating %s file systems is not implemented yet."
 #~ msgstr "Podpora za ustvarjanje datotečnega sistem %s še ni dodana."
 
+#, c-format
 #~ msgid "Support for checking %s file systems is not implemented yet."
 #~ msgstr "Podpora za preverjanje datotečnega sistem %s še ni dodana."
 
@@ -3341,6 +3347,7 @@ msgstr "Ta ukaz nima smisla v ne-vzajemnem načinu.\n"
 #~ msgid "Can't copy onto an overlapping partition."
 #~ msgstr "Kopiranje na prekrivajoč razdelek ni mogoče."
 
+#, c-format
 #~ msgid ""
 #~ "Direct support for copying file systems is not yet implemented for %s.  "
 #~ "However, support for resizing is implemented.  Therefore, the file system "
@@ -3354,6 +3361,7 @@ msgstr "Ta ukaz nima smisla v ne-vzajemnem načinu.\n"
 #~ "Torej zmanjšajte velikost razdelka, ki ga poskušate kopirati, ali pa ga "
 #~ "prekopirajte na večji razdelek."
 
+#, c-format
 #~ msgid "Support for copying %s file systems is not implemented yet."
 #~ msgstr "Podpora za kopiranje datotečnega sistem %s še ni dodana."
 
@@ -3402,12 +3410,14 @@ msgstr "Ta ukaz nima smisla v ne-vzajemnem načinu.\n"
 #~ msgid "copying"
 #~ msgstr "kopiranje"
 
+#, c-format
 #~ msgid "Couldn't resolve symbol %s.  Error: %s."
 #~ msgstr "Simbola %s ni mogoče razrešiti. Napaka: %s."
 
 #~ msgid "GNU Parted found an invalid libreiserfs library."
 #~ msgstr "GNU Parted je našel neveljavno knjižnico libreiserfs."
 
+#, c-format
 #~ msgid ""
 #~ "GNU Parted has detected libreiserfs interface version mismatch.  Found %d-"
 #~ "%d, required %d. ReiserFS support will be disabled."
@@ -3418,6 +3428,7 @@ msgstr "Ta ukaz nima smisla v ne-vzajemnem načinu.\n"
 #~ msgid "This is not an ECKD disk!  This disk type is not supported!"
 #~ msgstr "To ni disk EKCD! Ta vrsta diska ni podprta!"
 
+#, c-format
 #~ msgid ""
 #~ "%s contains GPT signatures, indicating that it has a GPT table.  However, "
 #~ "it does not have a valid fake msdos partition table, as it should.  "
@@ -3432,6 +3443,9 @@ msgstr "Ta ukaz nima smisla v ne-vzajemnem načinu.\n"
 #~ "uporabljate msdos preglednico razdelkov. Ali je to GPT preglednica "
 #~ "razdelkov?"
 
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "Zagonsko področje se ne začne na začetku razdelka."
+
 #~ msgid "Inconsistent group descriptors!"
 #~ msgstr "Nedosledni opisovalnik skupin!"
 
@@ -3484,11 +3498,13 @@ msgstr "Ta ukaz nima smisla v ne-vzajemnem načinu.\n"
 #~ msgid "adding groups"
 #~ msgstr "dodajanje skupin"
 
+#, c-format
 #~ msgid "Your file system is too full to resize it to %i blocks.  Sorry."
 #~ msgstr ""
 #~ "Datotečni sistem je prepoln za spremembo velikosti na %i blokov. "
 #~ "Oprostite."
 
+#, c-format
 #~ msgid ""
 #~ "Your file system has too many occupied inodes to resize it to %i blocks.  "
 #~ "Sorry."
@@ -3528,9 +3544,11 @@ msgstr "Ta ukaz nima smisla v ne-vzajemnem načinu.\n"
 #~ "Najdene so navzkrižne povezave blokov! Priporočamo vam, da najprej "
 #~ "zaženete ukaz e2fsck!"
 
+#, c-format
 #~ msgid "Block %i has no reference?  Weird."
 #~ msgstr "Blok %i nima sklica? Čudno."
 
+#, c-format
 #~ msgid "Block %i shouldn't have been marked (%d, %d)!"
 #~ msgstr "Blok %i bi moral biti označen (%d, %d)!"
 
@@ -3553,6 +3571,7 @@ msgstr "Ta ukaz nima smisla v ne-vzajemnem načinu.\n"
 #~ msgid "File system too small for ext2."
 #~ msgstr "Datotečni sistem je premajhen za ext2."
 
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3560,6 +3579,14 @@ msgstr "Ta ukaz nima smisla v ne-vzajemnem načinu.\n"
 #~ "Datotečni sistem ima logično velikost sektorja %d. Znano je, da GNU "
 #~ "Parted ne deluje pravilno z velikostjo sektorjev drugačno od 512 bajtov."
 
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "Datoteka %s je označena kot sistemska datoteka. To pomeni, da bi njen "
+#~ "premik lahko povzročil nedelovanje nekaterih programov."
+
 #~ msgid "Too many bad pages."
 #~ msgstr "Preveč slabih strani."
 
@@ -3574,6 +3601,7 @@ msgstr "Ta ukaz nima smisla v ne-vzajemnem načinu.\n"
 #~ "Obstoječi datotečni sistem bo uničen in vsi podatki na razdelku bodo "
 #~ "izgubljeni. Želite nadaljevati?"
 
+#, c-format
 #~ msgid ""
 #~ "WARNING: you are attempting to use %s to operate on (%s) a file system.\n"
 #~ "%s's file system manipulation code is not as robust as what you'll find "
@@ -3611,12 +3639,15 @@ msgstr "Ta ukaz nima smisla v ne-vzajemnem načinu.\n"
 #~ "Razdelka ni mogoče premakniti nase. Poskusite uporabiti spreminjanje "
 #~ "velikosti."
 
+#, c-format
 #~ msgid "Minor: %d\n"
 #~ msgstr "Manjše število: %d\n"
 
+#, c-format
 #~ msgid "Flags: %s\n"
 #~ msgstr "Zastavice: %s\n"
 
+#, c-format
 #~ msgid "File System: %s\n"
 #~ msgstr "Datotečni sistem: %s\n"
 
index a4cd8e2411a65fab480233484748fff05db3060e..0d9987b0a0f62d7f5fba52fd5f0d7e04e0bae046 100644 (file)
Binary files a/po/sr.gmo and b/po/sr.gmo differ
index 0784610493a0f58dad4649a5ea1cb92498e65d12..c25727670b07c6452331d9c54e4fe58b43957105 100644 (file)
--- a/po/sr.po
+++ b/po/sr.po
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted-3.1.90\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2014-09-14 07:58+0200\n"
 "Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
 "Language-Team: Serbian <(nothing)>\n"
@@ -96,11 +96,11 @@ msgstr "%s: опција захтева аргумент -- „%c“\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "„"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "“"
 
@@ -367,79 +367,64 @@ msgstr "Општа помоћ користећи ГНУ софтвер: <http://
 msgid "memory exhausted"
 msgstr "меморија је потрошена"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "неисправан %s%s аргумент „%s“"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "неисправан суфикс у %s%s аргументу „%s“"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s аргумент „%s“ је превелик"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Слика диска"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Грешка у отварању %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
 msgstr ""
 "Не могу да отворим %s само за читање (%s).  %s је отворен само за читање."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s за време претраге за читањем на %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s за време читања на %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Не могу да пишем у %s, зато што је отворен само за читање."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s за време претраге за писањем на %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s за време писања на %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Пробајте „%s --help“ за више информација.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Употреба: %s [ОПЦИЈА] [УРЕЂАЈ]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -455,7 +440,7 @@ msgstr ""
 "  -h, --help       приказује ову помоћ и излази\n"
 "  -v, --version    исписује податке о издању и излази\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -463,7 +448,7 @@ msgstr ""
 "\n"
 "Када није дат УРЕЂАЈ, испробава све партиције.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -481,44 +466,7 @@ msgstr "Не могу да отворим %s."
 msgid "Unable to probe store."
 msgstr "Не могу да испитам складиште."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Табела партиција не може бити прочитана. Ово значи да морате поново да "
-"учитате пре него што монтирате било коју измењену партицију. Морате такође "
-"поново да инсталирате покретачки програм пре него што поново покренете (који "
-"може затражити монтирање измењених партиција). Није могуће урадити обе "
-"ствари! Тако да морате да избаците диск за спашавање, и да поново "
-"инсталирате покретачки програм са диска за спашавање. Прочитајте одељак 4 из "
-"корисничке документације Партеда за више података."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Табела партиција на %s не може бити прочитана (%s).  Ово значи да Хурд не "
-"зна ништа о изменама које сте начинили. Треба да поново покренете ваш "
-"рачунар пре него што урадите било шта са %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Треба да поново инсталирате покретачки програм пре него што поново "
-"покренете. Прочитајте одељак 4 корисничке документације Партеда за више "
-"података."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s покушава да усагласи %s са диском"
@@ -835,15 +783,15 @@ msgstr "метаподаци"
 msgid "free"
 msgstr "слободно"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "проширена"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "логичка"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "примарна"
 
@@ -919,64 +867,73 @@ msgstr "ирст"
 msgid "esp"
 msgstr "есп"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "пмбр_подизна"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Непозната заставица партиције, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Подаци"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Упозорење"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Грешка"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Кобно"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Буба"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Без примене"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Исправи"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Yes"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "No"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "У реду"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Покушај поново"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Занемари"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Откажи"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -989,27 +946,27 @@ msgstr ""
 "грешке! Извештај о грешци пошаљите ел. поштом на „%s“ који ће садржати барем "
 "издање (%s) и следећу поруку:  "
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "Подршка за читање натписа АИКС диска није још примењена."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "Подршка за писање натписа АИКС диска није још примењена."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "Подршка за додавање партиција на натписе АИКС диска није још примењена."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "Подршка за дуплирање партиција у натписима АИКС диска није још примењена."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1017,7 +974,7 @@ msgstr ""
 "Подршка за подешавање врсте система партиција у натписима АИКС диска није "
 "још примењена."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 "Подршка за подешавање заставица у натписима АИКС диска није још примењена."
@@ -1107,11 +1064,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Не могу да задовољим сва ограничења на партицији."
@@ -1127,44 +1084,44 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Не могу да доделим број партиције."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Не могу да доделим бсд прикључак натписа диска."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Не могу да доделим дасд прикључак натписа диска"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Неисправна табела партиција на %s —— погрешан потпис %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Неисправна табела партиција — дубинска партиција на %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "Проширене партиције не могу бити скривене на натписима мсдос диска."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "Проширене партиције не могу бити скривене на натписима мсдос диска."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Партед не може да промени величину партиција којима управља Виндоузов "
 "динамички диск."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "не могу да направим више ни једну партицију"
 
@@ -1307,11 +1264,11 @@ msgstr "Не могу да добавим податке о величини д
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "уређај је премали за ГПТ"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1320,7 +1277,7 @@ msgstr ""
 "Облик ГПТ табеле партиција је издања %x које је новије од оног које Партед "
 "може да препозна. Молим пријавите ово!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1331,7 +1288,7 @@ msgstr ""
 "исправите ГПТ да користи сав простор (додатних %llu блокова) или да "
 "наставите са тренутним подешавањем? "
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1339,7 +1296,7 @@ msgstr ""
 "Резервна ГПТ табела није на крају диска, као што би требало. Да исправим, "
 "премештајући резерву на крај (и уклањајући стару резерву)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1348,7 +1305,7 @@ msgstr ""
 "свежу табелу, и користићу Партедову функцију спашавања да бих опоравио "
 "партиције."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1356,7 +1313,7 @@ msgstr ""
 "Резервна ГПТ табела је оштећена, али примарна изгледа у реду, тако да ће "
 "иста бити коришћена."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1364,11 +1321,11 @@ msgstr ""
 "Примарна ГПТ табела је оштећена, али резервна изгледа у реду, тако да ће "
 "иста бити коришћена."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "ЦРЦ низа табеле примарне партиције не одговара"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "нисам успео да преведем назив партиције"
 
@@ -1401,25 +1358,21 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Област података не почиње на почетку партиције."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Област учитавања не почиње на почетку партиције."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Област учитавања партиције не заузима целу партицију."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Област података партиције не заузима целу партицију."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr ""
 "Необична величина блока на описнику уређаја: %d бајта није дељиво са 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1428,11 +1381,11 @@ msgstr ""
 "Описник уређаја каже да је величина физичког блока %d бајта, али Линукс каже "
 "да је %d бајта."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Нисам пронашао исправну мапу партиције."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1441,11 +1394,11 @@ msgstr ""
 "Величине ставке мапе партиција су у сукобу! Ставка 1 каже да је %d, али "
 "ставка %d каже да је %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Необично! Постоје 2 ставке мапе партиција!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1453,16 +1406,16 @@ msgstr ""
 "Измена назива корене или партиције помоћне меморије ће спречити Линукс да "
 "исту препозна као такву."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "Не могу да додам још једну партицију —— мапа партиције је премала!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Неисправна табела партиција на %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1470,7 +1423,7 @@ msgid ""
 msgstr ""
 "Партиција %d није поравната на границе цилиндра. Ово још увек није подржано."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Не могу да додам још једну партицију."
 
@@ -1645,39 +1598,39 @@ msgstr "Не могу да запишем ВТОЦ ФМТ7 ДСЦБ."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Не могу да запишем ВТОЦ ФМТ9 ДСЦБ."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Понестало је меморије."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Не могу да добвим величину јединице за посебну јединицу „COMPACT“."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "„%s“ има неисправану синтаксу за места."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Највећа вредност глава је %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Највећа вредност сектора је %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "Место %s се налази ван уређаја %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Неисправан број."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "Користи мању јединицу уместо вредности < 1"
 
@@ -1687,18 +1640,18 @@ msgstr "Користи мању јединицу уместо вредности
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : Нисам успео да доделим блок партиције\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : Нисам успео да доделим блок\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : Не могу да прочитам блок учитавања %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1724,22 +1677,22 @@ msgstr "%s : Лоша сума провере на блоку %llu врсте %s
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : Не могу да запишем блок %d\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s : Нисам успео да доделим диска_посебан рдб блок\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s : Нисам пронашао рдб блок, ово није требало да се деси\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : Нисам успео да прочитам блок партиције %llu\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1837,7 +1790,7 @@ msgstr ""
 "„Поправи“, ЦХС геометрија система датотека ће бити подешена да одговара ЦХС "
 "геометрији табеле партиција."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1862,13 +1815,13 @@ msgid ""
 "Cluster start delta = %d, which is not a multiple of the cluster size %d."
 msgstr "Делта почетка кластера = %d, што није умножак величине кластера %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Лош унос директоријума за %s: први кластер јесте крај означивача датотеке."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1876,7 +1829,7 @@ msgstr ""
 "Лош ФАТ: бесконачан ланац за %s.  Треба да покренете „dosfsck“ или "
 "„scandisk“."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1885,7 +1838,7 @@ msgstr ""
 "Лош ФАТ: кластер %d је изван система датотека у ланцу за %s.  Треба да "
 "покренете „dosfsck“ или „scandisk“."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1894,26 +1847,17 @@ msgstr ""
 "Лош ФАТ: кластер %d је унакрсно повезан за %s.  Треба да покренете „dosfsck“ "
 "или „scandisk“."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s је %dk, али има %d кластера (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"Датотека „%s“ је означена као систем датотека.  Ово значи да њено премештање "
-"може да изазове престанак рада неких програма."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Партиција је превелика/премала за „%s“ систем датотека."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1922,11 +1866,11 @@ msgstr ""
 "отказивање, покрените „scandisk“ на систему датотека, и након тога се "
 "вратите."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Не постоје могућа подешавања за ову врсту ФАТ-а."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1937,14 +1881,14 @@ msgstr ""
 "Величина кластера је %dk (очекивано је %dk); број кластера је %d (очекивано "
 "је %d); величина ФАТ-ова је %d сектора (очекивано је %d)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr ""
 "Систем датотека обавештава о слободном простору од %d кластера, а не %d."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1952,16 +1896,16 @@ msgstr ""
 "Нема довољно простора у кореном директоријуму за све датотеке.  Или "
 "откажите, или занемарите да бисте изгубили датотеке."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Грешка писања у корени директоријум."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr ""
 "Ако оставите ваш систем датотека као ФАТ16, онда нећете имати проблема."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1972,7 +1916,7 @@ msgstr ""
 "желите ово да урадите, требало би да прочитате упутство Партеда (или "
 "упутство ваше дистрибуције)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -1980,7 +1924,7 @@ msgstr ""
 "Ако оставите ваш систем датотека као ФАТ32, онда нећете створити никаквих "
 "нових проблема."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1994,42 +1938,42 @@ msgstr ""
 "упутство ваше дистрибуције).  Такође, претварање у ФАТ32 ће учинити систем "
 "датотека нечитљивим за МС ДОС, МС Виндоуз 95а, и МС Виндоуз НТ."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Да ли бисте желели да користите ФАТ32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "Систему датотека може бити промењена величина само на ову величину "
 "претварањем у ФАТ16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "Систему датотека може бити промењена величина само на ову величину "
 "претварањем у ФАТ32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "ГНУ Партед не може да промени величину ове партиције на ову величину.  "
 "Радимо на томе! *_*"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2038,41 +1982,41 @@ msgstr ""
 "ФАТ %d медиј %x не одговара медију сектора учитавања %x.  Вероватно треба да "
 "покренете „scandisk“."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: кластер %ld је изван система датотека"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: кластер %ld је изван система датотека"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: нема слободних кластера"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Не могу да откријем систем датотека."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "промена величине „%s“ система датотека није подржана"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "Систем датотека је већи од свог волумена!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "Систем датотека садржи грешке."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "Лоши блокови не могу бити прочитани."
 
@@ -2135,61 +2079,61 @@ msgstr "Немогу да пронађем сектор %lli ХФС+ датот
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "Покушавам да упишем ХФС+ датотеку са ЦНИД-ом %X изван краја датотеке."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "Извините, ХФС-у не може бити промењена величина на тај начин још увек."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "скупљам"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Премештај датотека није успео."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr "Премештај датотека је оставио неке податке при крају волумена."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "записујем блок главног директоријума ХФС-а"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "Није пронађен исправан ХФС[+Икс] потпис приликом отварања."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "Издање ХФС+ %d није подржано."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "Издање ХФСИкс %d није подржано."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "Премештај датотека је оставио неке податке на крај волумена."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Грешка приликом записивања датотеке расподеле."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "Грешка приликом записивања дела сагласности датотеке расподеле."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "записујем заглавље ХФС+ волумена"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "Дошло је до грешке приликом тражења обавезне датотеке лоших блокова."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2197,28 +2141,28 @@ msgstr ""
 "Изгледа да постоји грешка у ХФС омотачу: датотека лоших блокова не садржи "
 "угнежђен ХФС+ волумен."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr ""
 "Извините, ХФС-у+ не може бити промењена величина на тај начин још увек."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "скупљам угнежђени ХФС+ волумен"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Промена величине ХФС+ волумена није успела."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "скупљам ХФС омотач"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "Освежавање ХФС омотача није успело."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2297,7 +2241,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Један опсег није премештен."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2305,17 +2249,17 @@ msgstr ""
 "Указивање на опсег долази са места које то није.  Треба да проверите систем "
 "датотека!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "Овај ХФС волумен нема датотеку каталога.  Ово је врло необично!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Овај ХФС волумен нема датотеку прекорачења опсега.  Ово је поприлично "
 "необично!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2323,53 +2267,53 @@ msgstr ""
 "Датотека прекорачења опсега не треба да садржи сопствене опсеге! Треба да "
 "проверите систем датотека."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Не могу да сместим систем датотека у меморију."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "Списак лоших блокова не може бити учитан."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Дошло је до грешке приликом премештања опсега."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "Овај ХФС+ волумен нема датотеку каталога.  Ово је врло необично!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Овај ХФС+ волумен нема датотеку прекорачења опсега.  Ово је поприлично "
 "необично!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "приказује ову поруку помоћи"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "исписује распоред партиције на свим уређајима блока"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "приказује машинама обрадив излаз"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "никада не поставља за корисничко деловање"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "приказује издање"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "поравнање за нове партиције"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2378,31 +2322,31 @@ msgstr ""
 "примарне партиције се користе бројеви од 1 до 4, за логичке партиције од 5 "
 "на даље.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "ВРСТА—НАТПИСА може бити: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "ЗАСТАВИЦА може бити: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "ЈЕДИНИЦА може бити: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "жељено поравнање: најмање или одговарајуће"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "ВРСТА—ПАРТИЦИЈЕ може бити: примарна, логичка, проширена\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "ВРСТА—С.ДАТ. може бити: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2412,7 +2356,7 @@ msgstr ""
 "вредности почињу од краја диска. На пример, -1 означава тачно последњи "
 "сектор.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2420,19 +2364,19 @@ msgstr ""
 "КРАЈ је место на диску, као што је 4GB или 10%. Негативне вредности почињу "
 "од краја диска. На пример, -1 означава тачно последњи сектор.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "СТАЊЕ може бити: укљ., искљ.\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "УРЕЂАЈ је обично „/dev/hda“ или „/dev/sda“\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "НАЗИВ је било која реч коју изаберете\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2452,23 +2396,23 @@ msgstr ""
 "Погледајте Гнуову општу јавну лиценцу за више детаља.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(преостало време %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr ""
 "Партиција „%s“ је била коришћена. Да ли сте сигурни да желите да наставите?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Партиције на „%s“ су биле коришћене."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2477,31 +2421,31 @@ msgstr ""
 "Постојећи натпис диска на %s ће бити уништен и сви подаци на диску ће бити "
 "изгубљени. Да ли желите да наставите?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Нова врста натписа диска?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Врста партиције?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Назив партиције?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Врста система датотека?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Почетак?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Крај?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2511,7 +2455,7 @@ msgstr ""
 "Најближе место којим можемо да управљамо је од %s до %s (сектори %llu..%llu)."
 "%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2519,94 +2463,94 @@ msgstr ""
 "\n"
 "Да ли вам је ово прихватљиво?"
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, fuzzy, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr "Резултирајућа партиција није исправно поравната за најбоље резултате."
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "%s натписи диска не подржавају проширене партиције."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Број партиције?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 "БИОС геометрија цилиндара,главе,сектора: %d,%d,%d.  Сваки цилиндар је %s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Модел: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Диск %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Величина сектора (логички/физички): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Табела партиција: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Опције диска: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Број"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Почетак"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Крај"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Величина"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Врста"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Систем датотека"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Назив"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Заставице"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Слободан простор"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2615,56 +2559,56 @@ msgstr ""
 "%s %s партиција је пронађена на %s —> %s.  Да ли желите да је додате у "
 "табелу партиција?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "тражим системе датотека"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "Наредба промене величине је уклоњена у партеду 3.0"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "Скупљање партиције може да доведе до губитка података, да ли сте сигурни да "
 "желите да наставите?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Нови уређај?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "врста поравнања(најм./опц.)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d је поравната\n"
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, fuzzy, c-format
 msgid "%d not aligned: %s\n"
 msgstr "%d није поравната\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Ознака за преокренути?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Ново стање?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Јединица?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
@@ -2673,11 +2617,11 @@ msgstr ""
 "align-check ВРСТА N                             врши проверу партиције N за "
 "ВРСТОМ(min|opt) поравнања"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2685,15 +2629,15 @@ msgstr ""
 "help [НАРЕДБА]                           штампа општу помоћ, или помоћ при "
 "НАРЕДБИ"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2701,15 +2645,15 @@ msgstr ""
 "mklabel,mktable ВРСТА-НАТПИСА            ствара нови натпис диска (табелу "
 "партиција)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart ВРСТА-ПАРТИЦ [ВРСТА-СИС.ДАТ.] ПОЧЕТАК КРАЈ     ствара партицију"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2718,21 +2662,21 @@ msgstr ""
 "ВРСТА—СИС.ДАТ. може бити наведена за подешавање одговарајућег ИБ-а "
 "партиције.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "name БРОЈ НАЗИВ                                 именује партицију БРОЈ као "
 "НАЗИВ"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2742,7 +2686,7 @@ msgstr ""
 "доступне уређаје, слободан простор, све пронађене партиције, или посебну "
 "партицију"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2750,11 +2694,11 @@ msgstr ""
 "Без аргумената, „print“ приказује читаву табелу партиција. Међутим са "
 "следећим аргументима обавља различите друге радње.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   :   приказује све активне блок уређаје\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2762,31 +2706,31 @@ msgstr ""
 "  free      :   приказује податке о слободном непартиционисаном простору на "
 "текућем блок уређају\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all :   приказује табеле партиција свих активних блок уређаја\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr "  БРОЈ    :     приказује детаљније податке о тој посебној партицији\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                     излази из програма"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2794,54 +2738,54 @@ msgstr ""
 "rescue ПОЧЕТАК КРАЈ                      спашава изгубљену партицију близу "
 "ПОЧЕТКА и КРАЈА"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "Наредба промене величине је уклоњена у партеду 3.0\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "resizepart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "resizepart БРОЈ КРАЈ                     мења величину партиције БРОЈ"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm БРОЈ                                  брише партицију БРОЈ"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select УРЕЂАЈ                            бира уређај за уређивање"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disk_set"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 "disk_set СТАЊЕ ОПЦИЈЕ                           мења ОПЦИЈУ на изабраном "
 "уређају"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
@@ -2849,21 +2793,21 @@ msgstr ""
 "disk_toggle [ОПЦИЈА]                            пребацује стање ОПЦИЈЕ на "
 "изабраном уређају"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "set БРОЈ ЗАСТАВИЦА СТАЊЕ                 мења ЗАСТАВИЦУ на партицији БРОЈ"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2871,21 +2815,21 @@ msgstr ""
 "toggle [БРОЈ [ЗАСТАВИЦА]]                пребацује стање ЗАСТАВИЦЕ на "
 "партицији БРОЈ"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "unit ЈЕДИНИЦА                            поставља основну јединицу на "
 "ЈЕДИНИЦУ"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2893,7 +2837,7 @@ msgstr ""
 "version                                  приказује број издања и податке о "
 "ауторским правима ГНУ Партеда"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2901,28 +2845,37 @@ msgstr ""
 "„version“ приказује ауторска права и податке о издању које одговара овом "
 "примерку ГНУ Партеда\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr "Коришћење: %s [-hlmsv] [-a<align>] [УРЕЂАЈ [НАРЕДБА [ПАРАМЕТРИ]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Нисам пронашао уређај"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "УПОЗОРЕЊЕ: Ви нисте администратор.  Затражите овлашћења.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Треба да поново инсталирате покретачки програм пре него што поново "
+"покренете. Прочитајте одељак 4 корисничке документације Партеда за више "
+"података."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Мораћете да освежите /etc/fstab.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr "Добродошли у ГНУ Партед! Упишите „help“ да видите списак наредби.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2934,7 +2887,7 @@ msgstr ""
 "у\n"
 "режиму међудејства.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2997,7 +2950,7 @@ msgstr ""
 "Такође укључите сваки додатни детаљ о вашем подешавању који\n"
 "сматрате важним.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -3005,7 +2958,7 @@ msgstr ""
 "\n"
 "Историјат наредби:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -3013,7 +2966,7 @@ msgstr ""
 "\n"
 "Грешка: SEGV_MAPERR (Адреса није мапирана у објекту)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3021,7 +2974,7 @@ msgstr ""
 "\n"
 "Грешка: SEGV_ACCERR (Неисправна овлашћења за мапирани објекат)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3029,7 +2982,7 @@ msgstr ""
 "\n"
 "Грешка: Наиђох на општи SIGSEGV сигнал.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3037,7 +2990,7 @@ msgstr ""
 "\n"
 "Грешка: FPE_INTDIV (Цео број: подели нулом)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3045,7 +2998,7 @@ msgstr ""
 "\n"
 "Грешка: FPE_INTOVF (Цео број: прекорачење)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3053,7 +3006,7 @@ msgstr ""
 "\n"
 "Грешка: FPE_FLTDIV (Цео број: подели нулом)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3061,7 +3014,7 @@ msgstr ""
 "\n"
 "Грешка: FPE_FLTOVF (Децимални број: прекорачење)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3069,7 +3022,7 @@ msgstr ""
 "\n"
 "Грешка: FPE_FLTUND (Децимални број: поткорачење)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3077,7 +3030,7 @@ msgstr ""
 "\n"
 "Грешка: FPE_FLTRES (Децимални број: нетачан резултат)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3085,7 +3038,7 @@ msgstr ""
 "\n"
 "Грешка: FPE_FLTINV (Децимални број: неисправна операција)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3093,7 +3046,7 @@ msgstr ""
 "\n"
 "Грешка: FPE_FLTSUB (Децимални број: индекс је изван опсега)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3101,7 +3054,7 @@ msgstr ""
 "\n"
 "Грешка: Наиђох на општи SIGFPE сигнал."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3109,7 +3062,7 @@ msgstr ""
 "\n"
 "Грешка: ILL_ILLOPC (Неисправан опкод)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3117,7 +3070,7 @@ msgstr ""
 "\n"
 "Грешка: ILL_ILLOPN (Неисправан операнд)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3125,7 +3078,7 @@ msgstr ""
 "\n"
 "Грешка: ILL_ILLADR (Неисправан режим адресирања)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3133,7 +3086,7 @@ msgstr ""
 "\n"
 "Грешка: ILL_ILLTRP (Неисправан прекид)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3141,7 +3094,7 @@ msgstr ""
 "\n"
 "Грешка: ILL_PRVOPC (Привилеговани опкод)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3149,7 +3102,7 @@ msgstr ""
 "\n"
 "Грешка: ILL_PRVREG (Привилеговани регистар)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3157,7 +3110,7 @@ msgstr ""
 "\n"
 "Грешка: ILL_COPROC (Грешка копроцесора)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3165,7 +3118,7 @@ msgstr ""
 "\n"
 "Грешка: ILL_BADSTK (Унутрашња грешка стека)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3173,69 +3126,69 @@ msgstr ""
 "\n"
 "Грешка: Наиђох на општи SIGILL сигнал."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "неисправан чин: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Очекујем број партиције."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Партиција не постоји."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Очекујем врсту система датотека."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Непозната врста система датотека „%s“."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Очекујем врсту натписа диска."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Не могу да направим више ни једну партицију."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Очекујем врсту партиције."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "укљ"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "искљ"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "најбоље"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "најмање"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "ОПЦИЈА/е:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "НАРЕДБА/е:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3244,30 +3197,77 @@ msgstr ""
 "\n"
 "Грешке пријавите на %s\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Користим %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Ова наредба нема смисла у немеђудејственом режиму.\n"
 
+#, c-format
 #~ msgid "%s: option '--%s' doesn't allow an argument\n"
 #~ msgstr "%s: опција „--%s“ не дозвољава аргумент\n"
 
+#, c-format
 #~ msgid "%s: unrecognized option '--%s'\n"
 #~ msgstr "%s: непозната опција „--%s“\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' doesn't allow an argument\n"
 #~ msgstr "%s: опција „-W %s“ не дозвољава аргумент\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' requires an argument\n"
 #~ msgstr "%s: опција „-W %s“ захтева аргумент\n"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "%s матична страница: <http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "неисправан %s%s аргумент „%s“"
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "неисправан суфикс у %s%s аргументу „%s“"
+
+#, c-format
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "%s%s аргумент „%s“ је превелик"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Табела партиција не може бити прочитана. Ово значи да морате поново да "
+#~ "учитате пре него што монтирате било коју измењену партицију. Морате "
+#~ "такође поново да инсталирате покретачки програм пре него што поново "
+#~ "покренете (који може затражити монтирање измењених партиција). Није "
+#~ "могуће урадити обе ствари! Тако да морате да избаците диск за спашавање, "
+#~ "и да поново инсталирате покретачки програм са диска за спашавање. "
+#~ "Прочитајте одељак 4 из корисничке документације Партеда за више података."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "Табела партиција на %s не може бити прочитана (%s).  Ово значи да Хурд не "
+#~ "зна ништа о изменама које сте начинили. Треба да поново покренете ваш "
+#~ "рачунар пре него што урадите било шта са %s."
+
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "Област учитавања не почиње на почетку партиције."
+
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3275,6 +3275,14 @@ msgstr "Ова наредба нема смисла у немеђудејств
 #~ "Овај систем датотека има величину логичког сектора од %d. Познато је да "
 #~ "ГНУ Партед не ради исправно са величинама сектора које нису 512 бајта."
 
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "Датотека „%s“ је означена као систем датотека.  Ово значи да њено "
+#~ "премештање може да изазове престанак рада неких програма."
+
 #~ msgid "Failed to add partition %d (%s)"
 #~ msgstr "Нисам успео да додам партицију %d (%s)"
 
index 0b31b4f078a8fdcdaff6cb206b905dafe4da0609..3acea8cc39621c29cce6d161cf3053c73d0c102f 100644 (file)
Binary files a/po/sv.gmo and b/po/sv.gmo differ
index dd7a767758c25b1ab1a757b3394604f7597418fd..cf6fd2d95a9473dbaf44ea7db1593c448bfa55df 100644 (file)
--- a/po/sv.po
+++ b/po/sv.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 3.1.90\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2017-01-19 23:33+0100\n"
 "Last-Translator: Sebastian Rasmussen <sebras@gmail.com>\n"
 "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
@@ -98,11 +98,11 @@ msgstr "%s: flaggan kräver ett argument -- \"%c\"\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "”"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "”"
 
@@ -372,32 +372,17 @@ msgstr ""
 msgid "memory exhausted"
 msgstr "slut på minne"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "ogiltigt %s%s-argument ”%s”"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "ogiltigt suffix i %s%s-argumentet ”%s”"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s-argumentet ”%s” är för stort"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Diskavbildning"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Ett fel uppstod när %s öppnades: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -405,47 +390,47 @@ msgstr ""
 "Kunde inte öppna %s för både läsning och skrivning (%s). %s öppnades i "
 "läsläge."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s under positionering för att läsa på %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s under läsning på %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Kan inte skriva till %s eftersom den är öppnad som skrivskyddad."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s under positionering för att skriva på %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s under skrivning på %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Prova \"%s --help\" för mer information.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Användning: %s [FLAGGA] [ENHET]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -461,7 +446,7 @@ msgstr ""
 "  -h, --help       visa denna hjälp och avsluta\n"
 "  -v, --version    skriv ut versionsinformation och avsluta\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -469,7 +454,7 @@ msgstr ""
 "\n"
 "När ingen ENHET har angivits, undersök alla partitioner.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -488,42 +473,7 @@ msgstr "Kunde inte öppna %s."
 msgid "Unable to probe store."
 msgstr "Kan inte avsöka lagring."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Partitionstabellen kunde inte läsas om. Det betyder att du behöver starta om "
-"datorn innan du kan montera några ändrade partitioner. Du måste också "
-"installera om starthanteraren innan du startar om (vilket kan innebära "
-"montering av ändrade partitioner). Det är omöjligt att göra båda! Du måste "
-"starta från en räddningsskiva och installera om starthanteraren från den. "
-"Läs kapitel fyra i Parteds användardokumentation för mer information."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Partitionstabellen på %s kan inte läsas om (%s). Det betyder att Hurd inte "
-"vet nånting om de ändringar du gjort. Du bör starta om datorn innan du gör "
-"nånting med %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Du bör installera om startprogrammet innan du startar om. Läs avsnitt fyra i "
-"Parteds användardokumentation för mer information."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s försöker att synkronisera %s till disk"
@@ -840,15 +790,15 @@ msgstr "metadata"
 msgid "free"
 msgstr "ledigt"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "utökad"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "logisk"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "primär"
 
@@ -924,64 +874,73 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "pmbr_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Okänd partitionsflagga, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Information"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Varning"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Fel"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Ödesdiger"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Programfel"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Inte implementerat"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Reparera"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Ja"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Nej"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Försök igen"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Ignorera"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Avbryt"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -995,29 +954,29 @@ msgstr ""
 "felrapporten till %s och inkludera åtminstone versionsnumret (%s) och "
 "följande meddelande:  "
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "Stöd för att läsa AIX-disketiketter är inte implementerat än."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "Stöd för att skriva AIX-disketiketter är inte implementerat än."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "Stöd för att lägga till partitioner till AIX-disketiketter är inte "
 "implementerat än."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "Stöd för att duplicera partitioner i AIX-disketiketter är inte implementerat "
 "än."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1025,7 +984,7 @@ msgstr ""
 "Stöd för att ställa in systemtyp för partitioner i AIX-disketiketter är inte "
 "implementerat än."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 "Stöd för att ställa in flaggor i AIX-disketiketter är inte implementerat än."
@@ -1116,11 +1075,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Kunde inte uppfylla alla begränsningar på partitionen."
@@ -1136,44 +1095,44 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Kunde inte allokera ett partitionsnummer."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Kunde inte allokera en plats i bsd-disketiketten."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Kunde inte allokera en plats i dasd-disketiketten"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Ogiltig partitionstabell på %s -- felaktig signatur %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Ogiltig partitionstabell - rekursiv partition på %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "Utökade partitioner kan inte gömmas i disketiketter av typen msdos."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "Utökade partitioner kan inte gömmas i disketiketter av typen msdos."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted kan inte ändra storlek på partitioner som hanteras av Windows Dynamic "
 "Disk."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "kan inte skapa några fler partitioner"
 
@@ -1318,11 +1277,11 @@ msgstr "Kunde inte läsa av information om blockstorlek."
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "enheten är för liten för GPT"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1331,7 +1290,7 @@ msgstr ""
 "Formatet på GPT-partitionstabellen är version %x vilket är nyare än vad "
 "Parted kan känna igen. Rapportera detta!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1342,7 +1301,7 @@ msgstr ""
 "så att allt utrymme används (%llu block extra) eller fortsätta med de "
 "aktuella inställningar? "
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1351,7 +1310,7 @@ msgstr ""
 "borde.  Fixa detta genom att flytta säkerhetskopia till slutet (och ta bort "
 "den gamla säkerhetskopian)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1360,7 +1319,7 @@ msgstr ""
 "en ny tabell och använd Parteds räddningsfunktion för att återskapa "
 "partitioner."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1368,7 +1327,7 @@ msgstr ""
 "Säkerhetskopian av GPT:n är korrupt, men den primära verkar vara OK, så den "
 "används."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1376,11 +1335,11 @@ msgstr ""
 "Den primära GPT:n är korrupt, men säkerhetskopian verkar vara OK, så den "
 "används."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "CRC-fel i primär partitionstabellsvektor"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "kunde inte översätta partitionsnamn"
 
@@ -1413,18 +1372,14 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Dataområdet börjar inte vid partitionens början."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Startområdet börjar inte vid partitionens början."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Partitionens startområde tar inte upp hela partitionens utrymme."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Partitionens dataområde tar inte upp hela partitionens utrymme."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
@@ -1432,7 +1387,7 @@ msgstr ""
 "Konstig blockstorlek på enhetens handtag: %d byte är inte jämnt delbart med "
 "512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1441,11 +1396,11 @@ msgstr ""
 "Enhetens handtag påstår att den fysiska blockstorleken är %d byte, men Linux "
 "påstår att den är %d byte."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Ingen giltig partitionstabell kunde hittas."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1454,11 +1409,11 @@ msgstr ""
 "Motsägelsefulla storleksdata i partitionstabellen! Post 1 påstår att den är "
 "%d, men post %d påstår att den är %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Konstigt! Det finns 2 poster i partitionstabellen!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1466,18 +1421,18 @@ msgstr ""
 "Att ändra namnet på en rot- eller växlingspartition gör att Linux inte kan "
 "känna igen dem."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr ""
 "Kan inte lägga till ytterligare en partition -- partitionstabellen är för "
 "liten!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Ogiltig partitionstabell på %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1486,7 +1441,7 @@ msgstr ""
 "Partition %d ligger inte på jämna cylindergränser. Detta stöds fortfarande "
 "inte."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Kan inte lägga till ännu en partition."
 
@@ -1661,39 +1616,39 @@ msgstr "Kunde inte skriva VTOC FMT7 DSCB."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Kunde inte skriva VTOC FMT9 DSCB."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Slut på minne."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Kan inte hämta enhetsstorlek för speciell enhet ”COMPACT”."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "\"%s\" innehåller en ogiltig syntax för platser."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Det maximala värdet för huvud är %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Det maximala värdet för sektorer är %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "Platsen %s är utanför enheten %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Ogiltigt nummer."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "Använd en mindre enhet istället för ett värde < 1"
 
@@ -1703,18 +1658,18 @@ msgstr "Använd en mindre enhet istället för ett värde < 1"
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : Misslyckades med att allokera partitionsblock\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : Misslyckades med att allokera block\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : Kunde inte läsa startblock %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1740,22 +1695,22 @@ msgstr "%s : Felaktig kontrollsumma på block %llu av typen %s\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : Kunde inte skriva block %d\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s: Misslyckades med att allokera disk_specific rdb-block\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s: Kunde inte hitta rdb-block, bör inte inträffa\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : Misslyckades med att läsa partitionsblock %llu\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1857,7 +1812,7 @@ msgstr ""
 "kommer filsystemets CHS-geometri att ställas in för att matcha "
 "partitionstabellens CHS-geometri."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1883,12 +1838,12 @@ msgstr ""
 "Klustrets startdifferens är %d, vilket inte är en multipel av "
 "klusterstorleken %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr "Felaktig katalogpost för %s: första klustret är en filslutsmarkering."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1896,7 +1851,7 @@ msgstr ""
 "Trasig filallokeringstabell: ej avslutad kedja för %s. Du bör köra dosfsck "
 "eller scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1905,7 +1860,7 @@ msgstr ""
 "Trasig filallokeringstabell: kluster %d ligger utanför filsystemet i kedja "
 "för %s. Du bör köra dosfsck eller scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1914,26 +1869,17 @@ msgstr ""
 "Trasig filallokeringstabell: kluster %d är korslänkad för %s. Du bör köra "
 "dosfsck eller scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s är %dk, men den har %d kluster (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"Filen %s är markerad som en systemfil.  Det betyder att om den flyttas så "
-"kan det orsaka att vissa program slutar att fungera."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Partitionen för stor/liten för ett filsystem av typen %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1941,11 +1887,11 @@ msgstr ""
 "Filallokeringstabellerna stämmer inte överens. Om du inte vet vad detta "
 "betyder, välj avbryt, kör scandisk på filsystemet och försök igen."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Det finns inga möjliga kombinationer för den här sortens FAT."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1956,13 +1902,13 @@ msgstr ""
 "(%dk förväntas); antalet kluster är %d (%d förväntas); storleken på FAT:arna "
 "är %d sektorer (%d förväntas)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr "Filsystemet menar att det fria utrymmet är %d kluster, inte %d."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1970,17 +1916,17 @@ msgstr ""
 "Det finns inte tillräckligt med utrymme för alla filer i rotkatalogen. Välj "
 "antingen att avbryta, eller ignorera och förlora filerna."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Ett fel uppstod vid skrivning till rotkatalogen."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr ""
 "Om du låter filsystemet fortsätta vara FAT16 så kommer du inte att få några "
 "problem."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1990,7 +1936,7 @@ msgstr ""
 "partitionen så måste du installera om MS Windows starthanterare. Om du gör "
 "det bör du studera Parteds manual (eller din distributions manual)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -1998,7 +1944,7 @@ msgstr ""
 "Om du låter filsystemet fortsätta vara FAT32 kommer du inte att introducera "
 "några nya problem."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2012,42 +1958,42 @@ msgstr ""
 "genom att konvertera filsystemet till FAT32 kommer det inte att kunna läsas "
 "av MS DOS, MS Windows 95a och MS Windows NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Vill du använda FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "Filsystemet kan bara ändras till den här storleken genom att konvertera till "
 "FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "Filsystemet kan bara ändras till den här storleken genom att konvertera till "
 "FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted kan inte ändra partitionen till den här storleken. Vi arbetar på "
 "en lösning!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2056,41 +2002,41 @@ msgstr ""
 "FAT %d media %x passar inte med startsektorns media %x. Du bör antagligen "
 "köra scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: kluster %ld ligger utanför filsystemet"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: kluster %ld ligger utanför filsystemet"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: inga lediga kluster"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Kunde inte hitta något filsystem."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "storleksändring av %s-filsystem stöds inte"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "Filsystemet är större än dess volym!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "Filsystemet innehåller fel."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "Felaktiga block kunde inte läsas."
 
@@ -2153,63 +2099,63 @@ msgstr "Kunde inte hitta sektor %lli för HFS+-fil med CNID %X."
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "Försöker att skriva HFS+-fil med CNID %X efter EOF."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "Det går inte att ändra storlek på HFS än."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "minskar"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Dataomplacering misslyckades."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr "Dataomplacering lämnade viss data på slutet av volymen."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "skriver HFS huvudkatalogblock"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "Ingen giltig HFS[+X]-signatur har hittats under öppningen."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "Version %d av HFS+ stöds inte."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "Version %d av HFSX stöds inte."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "Omplacering av data lämnade viss data i slutet på volymen."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Fel vid skrivning av allokeringsfilen."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "Fel vid skrivning av kompatibilitetsdelen av allokeringsfilen."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "skriver HFS+-volymhuvud"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr ""
 "Ett fel inträffade under sökning efter den obligatoriska filen med dåliga "
 "block."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2217,27 +2163,27 @@ msgstr ""
 "Det verkar som om det finns ett fel i HFS-omslaget: filen med dåliga block "
 "innehåller inte den inbäddade HFS+-volymen."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "Det går inte att ändra storlek på HFS+ på det sättet än."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "minskar inbäddad HFS+-volym"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Storleksändring av HFS+-volymen misslyckades."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "minskar HFS-omslut"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "Uppdatering av HFS-omslutet har misslyckats."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2317,7 +2263,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "En utsträckning har inte omplacerats."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2325,17 +2271,17 @@ msgstr ""
 "En referens till en utsträckning kommer från en plats den inte borde.  Du "
 "bör kontrollera filsystemet!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "Denna HFS-volym har ingen katalogfil.  Detta är väldigt ovanligt!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Denna HFS-volym har ingen överspillsfil för utsträckningar.  Detta är "
 "väldigt ovanligt!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2343,53 +2289,53 @@ msgstr ""
 "Överspillsfilen för utsträckningar bör inte innehålla sina egna "
 "utsträckningar!  Du bör kontrollera filsystemet."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Kunde inte mellanlagra filsystemet i minnet."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "Listan över felaktiga block kunde inte läsas in."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Ett fel inträffade under omplacering av utsträckningar."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "Denna HFS+-volym har ingen katalogfil.  Detta är väldigt ovanligt!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr ""
 "Denna HFS+-volym har ingen överspillsfil för utsträckningar.  Detta är "
 "väldigt ovanligt!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "visa den här hjälptexten"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "listar partitionslayout för alla blockenheter"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "visar utskriften som maskintolkningsbar"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "frågar aldrig användaren om alternativ"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "visar versionen"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "justering för nya partitioner"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2398,31 +2344,31 @@ msgstr ""
 "DOS är de primära partitionerna numrerade från 1 till 4, och de logiska "
 "partitionerna från 5 och uppåt.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "PART-TYP är en av: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "FLAGGA är en av: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "ENHET är en av: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "önskad justering: minimum eller optimal"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "PART-TYP är en av: primär, logisk, utökad\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "FS-TYP är en av: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2432,7 +2378,7 @@ msgstr ""
 "räknas från slutet på disken.  Till exempel, -1s anger exakt den sista "
 "sektorn.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2440,19 +2386,19 @@ msgstr ""
 "SLUT är en plats på disken, såsom 4GB eller 10%.  Negativa värden räknas "
 "från slutet på disken.  Till exempel, -1s anger exakt den sista sektorn.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "TILLSTÅND är ett av: på, av\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "ENHET är vanligen /dev/hda eller /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NAMN är vilket ord du vill\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2479,22 +2425,22 @@ msgstr ""
 "ytterligare information.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(tid kvar %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "Partitionen %s används. Är du säker på att du vill fortsätta?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Partitionen på %s är i bruk."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2503,31 +2449,31 @@ msgstr ""
 "Den befintliga disketiketten på %s kommer att förstöras och all data på "
 "denna disk kommer att gå förlorad. Vill du fortsätta?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Ny typ av disketikett?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Partitionstyp?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Partitionsnamn?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Filsystemstyp?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Början?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Slut?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2536,7 +2482,7 @@ msgstr ""
 "Du begärde en partition från %s till %s (sektorerna %llu..%llu).\n"
 "Den närmsta platsen vi kan hantera är %s till %s (sektorerna %llu..%llu).%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2544,95 +2490,95 @@ msgstr ""
 "\n"
 "Är detta fortfarande godtagbart för dig?"
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, fuzzy, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 "Den resulterande partitionen är inte korrekt justerad för bästa prestanda."
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "%s-disketiketter saknar stöd för utökade partitioner."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Partitionsnummer?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 "BIOS-geometri för cylinder,huvud,sektor: %d,%d,%d.  Varje cylinder är %s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Modell: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Disk %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Sektorstorlek (logisk/fysisk): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Partitionstabell: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Diskflaggor: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Nummer"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Början"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Slut"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Storlek"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Typ"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Filsystem"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Namn"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Flaggor"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Ledigt utrymme"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2641,56 +2587,56 @@ msgstr ""
 "En %s %s-partition hittades på %s -> %s.  Vill du lägga till den till "
 "partitionstabellen?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "söker efter filsystem"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "Kommandot ändra_storlek har tagits bort i parted 3.0"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "Att minska storlek för en partition kan orsaka dataförlust, är du säker på "
 "att du vill fortsätta?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Ny enhet?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "justeringstyp(min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d justerad\n"
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, fuzzy, c-format
 msgid "%d not aligned: %s\n"
 msgstr "%d inte justerad\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Flagga att invertera?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Nytt tillstånd?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Enhet?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "justeringskontroll"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
@@ -2699,11 +2645,11 @@ msgstr ""
 "justeringskontroll TYP N                  kontrollera TYP(min|opt)-justering "
 "för partition N"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "hjälp"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2711,15 +2657,15 @@ msgstr ""
 "hjälp [KOMMANDO]                         skriver ut allmän hjälp eller hjälp "
 "för KOMMANDO"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2727,15 +2673,15 @@ msgstr ""
 "mklabel,mktable ETIKETT-TYP              skapa en ny disketikett "
 "(partitionstabell)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart PART-TYP [FS-TYP] BÖRJAN SLUT     skapa en partition"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2744,20 +2690,20 @@ msgstr ""
 "partitionen. FS-TYP måste anges för att ställa in ett lämpligt partitions-"
 "id.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "namn"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "namn NUMMER NAMN                         ge namnet NAMN till partition NUMMER"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "visa"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2767,7 +2713,7 @@ msgstr ""
 "tillgängliga enheter, ledigt utrymme, alla partitioner som hittats, eller en "
 "specifik partition"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2775,11 +2721,11 @@ msgstr ""
 "Utan argument så skriver \"visa\" ut hela partitionstabellen. Dock kan "
 "diverse andra åtgärder genomföras med följande argument.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : visa alla aktiva blockenheter\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2787,31 +2733,31 @@ msgstr ""
 "  free      : visa information om ledigt, opartitionerat utrymme på den "
 "aktuella blockenheten\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr "  list, all : visa partitionstabellerna på alla aktiva blockenheter\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 "  NUMMER    : visa mer detaljerad information om denna specifika partition\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "avsluta"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "avsluta                                  avsluta programmet"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rädda"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2819,53 +2765,53 @@ msgstr ""
 "rädda BÖRJAN SLUT                        rädda en förlorad partition nära "
 "BÖRJAN och SLUT"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "ändra_storlek"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "Kommandot ändra_storlek har tagits bort i parted 3.0\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "ändra_partstorlek"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr ""
 "ändra_partstorlek NUMMER SLUT            ändra storlek för partition NUMMER"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "ta_bort"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "ta_bort NUMMER                           ta bort partition NUMMER"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "välj"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr "välj ENHET                               välj enheten att redigera"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disk_inställning"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr "disk_inställning FLAGGA TILLSTÅND        ändra FLAGGA för vald enhet"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_växla"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
@@ -2873,21 +2819,21 @@ msgstr ""
 "disk_växla [FLAGGA]                      växla tillståndet för FLAGGA på "
 "vald enhet"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "ställ_in"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "ställ_in NUMMER FLAGGA TILLSTÅND         ändra FLAGGAn på partition NUMMER"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "växla"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2895,20 +2841,20 @@ msgstr ""
 "växla [NUMMER [FLAGGA]]                  växla tillståndet för FLAGGA på "
 "partition NUMMER"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "enhet"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "enhet ENHET                              ställ in standardenheten till ENHET"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2916,7 +2862,7 @@ msgstr ""
 "version                                  visa versionsnumret och "
 "upphovsrättslig information om GNU Parted"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2924,31 +2870,39 @@ msgstr ""
 "\"version\" visar information om version och upphovsrätt för denna kopia av "
 "GNU Parted\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 "Användning: %s [-hlmsv] [-a<justering>] [ENHET [KOMMANDO [PARAMETRAR]]…]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Ingen enhet hittades"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "VARNING: Du är inte superanvändare.  Se upp för rättighetsproblem.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Du bör installera om startprogrammet innan du startar om. Läs avsnitt fyra i "
+"Parteds användardokumentation för mer information."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Du kan behöva att uppdatera /etc/fstab.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 "Välkommen till GNU Parted! Skriv \"hjälp\" för att visa en lista över "
 "kommandon.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2959,7 +2913,7 @@ msgstr ""
 "Tillämpa KOMMANDOn med PARAMETRAR på ENHET. Om inga KOMMANDO(n) anges\n"
 "körs programmet i interaktivt läge.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -3022,7 +2976,7 @@ msgstr ""
 "Inkludera även ytterligare information om din konfiguration som\n"
 "du anser vara viktigt att veta.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -3030,7 +2984,7 @@ msgstr ""
 "\n"
 "Kommandohistorik:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -3038,7 +2992,7 @@ msgstr ""
 "\n"
 "Fel: SEGV_MAPERR (Address not mapped to object)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3046,7 +3000,7 @@ msgstr ""
 "\n"
 "Fel: SEGV_ACCERR (Invalid permissions for mapped object)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3054,7 +3008,7 @@ msgstr ""
 "\n"
 "Fel: En allmän SIGSEGV-signal påträffades.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3062,7 +3016,7 @@ msgstr ""
 "\n"
 "Fel: FPE_INTDIV (Integer: divide by zero)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3070,7 +3024,7 @@ msgstr ""
 "\n"
 "Fel: FPE_INTOVF (Integer: overflow)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3078,7 +3032,7 @@ msgstr ""
 "\n"
 "Fel: FPE_FLTDIV (Float: divide by zero)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3086,7 +3040,7 @@ msgstr ""
 "\n"
 "Fel: FPE_FLTOVF (Float: overflow)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3094,7 +3048,7 @@ msgstr ""
 "\n"
 "Fel: FPE_FLTUND (Float: underflow)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3102,7 +3056,7 @@ msgstr ""
 "\n"
 "Fel: FPE_FLTRES (Float: inexact result)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3110,7 +3064,7 @@ msgstr ""
 "\n"
 "Fel: FPE_FLTINV (Float: invalid operation)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3118,7 +3072,7 @@ msgstr ""
 "\n"
 "Fel: FPE_FLTSUB (Float: subscript out of range)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3126,7 +3080,7 @@ msgstr ""
 "\n"
 "Fel: A general SIGFPE signal was encountered."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3134,7 +3088,7 @@ msgstr ""
 "\n"
 "Fel: ILL_ILLOPC (Illegal Opcode)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3142,7 +3096,7 @@ msgstr ""
 "\n"
 "Fel: ILL_ILLOPN (Illegal Operand)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3150,7 +3104,7 @@ msgstr ""
 "\n"
 "Fel: ILL_ILLADR (Illegal addressing mode)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3158,7 +3112,7 @@ msgstr ""
 "\n"
 "Fel: ILL_ILLTRP (Illegal Trap)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3166,7 +3120,7 @@ msgstr ""
 "\n"
 "Fel: ILL_PRVOPC (Privileged Opcode)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3174,7 +3128,7 @@ msgstr ""
 "\n"
 "Fel: ILL_PRVREG (Privileged Register)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3182,7 +3136,7 @@ msgstr ""
 "\n"
 "Fel: ILL_COPROC (Coprocessor Error)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3190,7 +3144,7 @@ msgstr ""
 "\n"
 "Fel: ILL_BADSTK (Internal Stack Error)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3198,69 +3152,69 @@ msgstr ""
 "\n"
 "Fel: En allmän SIGILL-signal påträffades."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "ogiltigt token: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Förväntade ett partitionsnummer."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Partitionen finns inte."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Förväntade en filsystemstyp."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Okänd filsystemstyp \"%s\"."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Förväntade en typ av disketikett."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Kan inte skapa några fler partitioner."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Förväntade en partitionstyp."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "på"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "av"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "optimal"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "minimal"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "FLAGGOR:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "KOMMANDON:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3270,30 +3224,77 @@ msgstr ""
 "Rapportera fel till: %s\n"
 "Skicka synpunkter på översättningen till <tp-sv@listor.tp-sv.se>\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Använder %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Detta kommando är meningslöst i icke-interaktivt läge.\n"
 
+#, c-format
 #~ msgid "%s: option '--%s' doesn't allow an argument\n"
 #~ msgstr "%s: flaggan \"--%s\" tillåter inget argument\n"
 
+#, c-format
 #~ msgid "%s: unrecognized option '--%s'\n"
 #~ msgstr "%s: okänd flagga \"--%s\"\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' doesn't allow an argument\n"
 #~ msgstr "%s: flaggan \"-W %s\" tillåter inget argument\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' requires an argument\n"
 #~ msgstr "%s: flaggan ”-W %s” kräver ett argument\n"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "Webbsida för %s: <http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "ogiltigt %s%s-argument ”%s”"
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "ogiltigt suffix i %s%s-argumentet ”%s”"
+
+#, c-format
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "%s%s-argumentet ”%s” är för stort"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Partitionstabellen kunde inte läsas om. Det betyder att du behöver starta "
+#~ "om datorn innan du kan montera några ändrade partitioner. Du måste också "
+#~ "installera om starthanteraren innan du startar om (vilket kan innebära "
+#~ "montering av ändrade partitioner). Det är omöjligt att göra båda! Du "
+#~ "måste starta från en räddningsskiva och installera om starthanteraren "
+#~ "från den. Läs kapitel fyra i Parteds användardokumentation för mer "
+#~ "information."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "Partitionstabellen på %s kan inte läsas om (%s). Det betyder att Hurd "
+#~ "inte vet nånting om de ändringar du gjort. Du bör starta om datorn innan "
+#~ "du gör nånting med %s."
+
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "Startområdet börjar inte vid partitionens början."
+
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3301,6 +3302,14 @@ msgstr "Detta kommando är meningslöst i icke-interaktivt läge.\n"
 #~ "Filsystemet har en logisk sektorstorlek på %d. Det är känt att GNU Parted "
 #~ "inte fungerar bra med andra sektorstorlekar än 512 byte."
 
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "Filen %s är markerad som en systemfil.  Det betyder att om den flyttas så "
+#~ "kan det orsaka att vissa program slutar att fungera."
+
 #~ msgid ""
 #~ "Usage: %s [OPTION]\n"
 #~ "  or:  %s DEVICE MINOR\n"
index 70b5b4dee39b1566c6d88f10f616af3907b43e82..a93eb3636822648ea4552d3b76455ae80c366372 100644 (file)
Binary files a/po/tr.gmo and b/po/tr.gmo differ
index 7a92501643ea5e077abb5d1ccfbbdf312f20b8b0..f9ff7919d7a976bd914a180a0712bddee7b87416 100644 (file)
--- a/po/tr.po
+++ b/po/tr.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted-3.1.90\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2017-04-03 15:08+0100\n"
 "Last-Translator: Volkan Gezer <volkangezer@gmail.com>\n"
 "Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
@@ -98,11 +98,11 @@ msgstr "%s: seçenek için bir argüman gerekli -- '%c'\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "`"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "'"
 
@@ -369,79 +369,64 @@ msgstr "GNU yazılımı kullanmada genel yardım: <http://www.gnu.org/gethelp/>\
 msgid "memory exhausted"
 msgstr "bellek tükendi"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "geçersiz %s%s argüman '%s'"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "%s%s argümanında geçersiz sonek '%s'"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s argümanı '%s' çok büyük"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Disk Görüntüsü"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "%1$s açarken hata: %2$s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
 msgstr ""
 "%1$s oku-yaz şeklinde açılamıyor (%2$s).  %3$s salt-okunur olarak açıldı."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%2$s'te okuma için arama sırasında %1$s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%2$s'i okuma sırasında %1$s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "%s'e yazılamıyor, çünkü salt-okunur olarak açılmış."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%2$s'e yazma için arama sırasında %1$s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%2$s'e yazma sırasında %1$s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Daha fazla bilgi için `%s --help' yazın.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Kullanım: %s [SEÇENEK] [AYGIT]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -457,7 +442,7 @@ msgstr ""
 "  -h, --help       bu yardımı görüntüler ve çıkar\n"
 "  -v, --version    sürüm bilgisini çıkartır ve çıkar\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -465,7 +450,7 @@ msgstr ""
 "\n"
 "AYGIT verilmediğinde, tüm disk bölümlerini yokla.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -483,43 +468,7 @@ msgstr "%s açılamadı."
 msgid "Unable to probe store."
 msgstr "Depo sondalanamadı."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Disk bölümleme tablosu yeniden okunamadı, bu nedenle değiştirilmiş herhangi "
-"bir disk bölümünü bağlamadan (bilgisayarı) yeniden açmalısınız.  Yeniden "
-"açmadan önce önyükleyicinizi de yeniden kurmalısınız (ki bu değiştirilmiş "
-"disk bölümlerini bağlamayı gerektirebilir).  İki şeyi birden yapmak "
-"olanaksız!  Dolayısıyla, bir kurtarma diskiyle açmanız ve önyükleyicinizi bu "
-"diskten yeniden kurmanız gerekecek.  Daha fazla bilgi için Parted Kullanıcı "
-"belgesinin 4. bölümünü okuyunuz."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"%1$s (%2$s) üzerindeki disk bölümleme tablosu.  Bu, sizin yaptığınız "
-"değişiklikleri Hurd bilmiyor anlamına gelir.  %3$s ile ilgili hiçbir şey "
-"yapmadan önce bilgisayarınızı yeniden açmalısınız."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Yeniden açmadan önce önyükleyicinizi yeniden kurmalısınız.  Daha fazla bilgi "
-"için Parted Kullanıcı belgesinin 4. bölümünü okuyunuz."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%1$s %2$s diske eşzamanlanmaya çalışılıyor"
@@ -836,15 +785,15 @@ msgstr "metaverisi"
 msgid "free"
 msgstr "kullanılmamış"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "ek"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "mantıksal"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "birincil"
 
@@ -920,64 +869,73 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "pmbr_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Bilinmeyen.disk bölümü bayrağı, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Bilgi"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Uyarı"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Hata"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Ölümcül"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Yazılım hatası"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Uyarlama yok"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Onar"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Evet"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Hayır"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "Tamam"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Yeniden dene"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Yoksay"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Vazgeç"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -990,26 +948,26 @@ msgstr ""
 "software/parted/parted.html!  Lütfen %s'e en azından sürüm (%s) ve aşağıdaki "
 "mesajı içeren bir yazılım hatası raporu gönderin:  "
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "AIX disk etiketlerini okuma desteği henüz sağlanmamıştır."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "AIX disk etiketlerini yazma desteği henüz sağlanmamıştır."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr "AIX disk etiketlerine disk bölümü ekleme desteği henüz sağlanmamıştır."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "AIX disk etiketlerinde disk bölümü çoğaltma desteği henüz sağlanmamıştır."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1017,7 +975,7 @@ msgstr ""
 "AIX disk etiketlerinde sistem türü disk bölümü kurma desteği henüz "
 "sağlanmamıştır."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr "AIX disk etiketlerinde bayrak kurma desteği henüz sağlanmamıştır."
 
@@ -1107,11 +1065,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Disk bölümü üzerindeki tüm koşullar karşılanamadı."
@@ -1127,45 +1085,45 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Bir disk bölümü numarası atanamadı."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Bir bsd disk etiketi yuvası tahsis edilemedi"
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Bir dasd disk etiketi yuvası tahsis edilemedi"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "%1$s üzerinde geçersiz disk bölümleme tablosu - yanlış imza %2$x"
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr ""
 "Geçersiz disk bölümleme tablosu - %s üzerinde özyinelemeli disk bölümü."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "Msdos disk etiketlerinde ek disk bölümleri gizli olamaz."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "Msdos disk etiketlerinde ek disk bölümleri gizli olamaz."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted, Windows Dinamik Disk tarafından yönetilen bölümleri yeniden "
 "boyutlayamaz."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "Başka disk bölümü oluşturulamıyor"
 
@@ -1308,11 +1266,11 @@ msgstr "Blok boyutu bilgisi alınamıyor."
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "GPT için aygıt çok küçük."
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1321,7 +1279,7 @@ msgstr ""
 "GPT disk bölümleme tablosu biçemi sürüm %x olup, Parted'ın "
 "tanıyabileceğinden daha yenidir.  Lütfen bize bildirin!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1332,7 +1290,7 @@ msgstr ""
 "ayarlayıp tüm mevcut boşluğu (%llu ek blok) kullanabilir ya da mevcut ayarla "
 "devam edebilirsiniz?"
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1340,7 +1298,7 @@ msgstr ""
 "GPT tablosunun yedeği, olması gerektiği gibi diskin sonunda değil.  Yedeği "
 "sona taşıyarak (ve eski yedeği silerek) onar?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1348,7 +1306,7 @@ msgstr ""
 "Hem birincil, hem de yedek GPT tablosu bozuk.  Yeni bir tablo oluşturmayı ve "
 "Parted'ın kurtarma özelliğini kullanarak disk bölümlerini kurtarmayı deneyin."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1356,7 +1314,7 @@ msgstr ""
 "Yedek GPT tablosu bozuk, ama birincil tamam görünüyor, dolayısıyla o "
 "kullanılacak."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1364,11 +1322,11 @@ msgstr ""
 "Birincil GPT tablosu bozuk, ama yedek tamam görünüyor, dolayısıyla yedek "
 "kullanılacak."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "birincil bölümleme tablosu dizisi CRC uyumsuzluğu"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "disk bölümü adı çevrilemedi"
 
@@ -1401,24 +1359,20 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Veri bölgesi, disk bölümünün başından başlamıyor"
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Önyükleme bölgesi, disk bölümünün başından başlamıyor"
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Disk bölümünün önyükleme bölgesi tüm disk bölümünü kaplamıyor."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Disk bölümünün veri bölgesi tüm disk bölümünü kaplamıyor."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr "Aygıt tanımlayıcısında tuhaf blok boyutu: %d bayt, 512'ye bölünemiyor."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1427,11 +1381,11 @@ msgstr ""
 "Sürücü tanımlayıcısı fiziksel blok boyutunun %d bayt olduğunu, Linux %d bayt "
 "olduğunu bildiriyor.."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Geçerli disk bölümü eşlemi bulunamadı."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1440,11 +1394,11 @@ msgstr ""
 "Çelişen disk bölümü eşlem girdi boyutları!  1. Girdi %1$d olduğunu, ancak "
 "%2$d. girdi %3$d olduğunu bildiriyor!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Tuhaf!-  2 disk bölümü eşlem girdisi mevcut!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1452,16 +1406,16 @@ msgstr ""
 "Bir kök ya da takas disk bölümünün adını değiştirmek, Linux'un onu olduğu "
 "gibi tanımasını engelleyecek."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "Bir başka disk bölümü eklenemiyor -- disk bölüm eşlemi çok küçük!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "%s üzerinde geçersiz disk bölümleme tablosu."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1469,7 +1423,7 @@ msgid ""
 msgstr ""
 "%d disk bölümü silindir sınırlarına hizalanmamış.  Bu hala desteklenmiyor."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Bir başka disk bölümü eklenemiyor."
 
@@ -1643,39 +1597,39 @@ msgstr "VTOC FMT7 DSCB yazılamıyor."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "VTOC FMT9 DSCB yazılamadı."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Yetersiz bellek"
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Özel birim 'COMPACT' için birim boyutu alınamıyor."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "\"%s\" yerleşimler için geçersiz yazıma sahip."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Maksimum kafa değeri %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Maksimum sektör değeri %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "%1$s yerleşimi %2$s aygıtının dışında."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Geçersiz numara."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "< 1 bir değer yerine daha küçük bir birim kullanın"
 
@@ -1685,18 +1639,18 @@ msgstr "< 1 bir değer yerine daha küçük bir birim kullanın"
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : Bölümleme bloğunu atama başarısız\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : Boluğu atama başarısız\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s: Önyükleme bloğu %llu okunamıyor\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1722,22 +1676,22 @@ msgstr "%s: %llu bloğunda yanlış sağlama toplamı türü %s\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s: %d bloğu yazılamıyor\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s: Diske özgün rdb bloğu atanamıyor\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s : rdb bloğu bulunamadı, asla olmamalı(ydı)\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : %llu bölümleme bloğunu okuma başarısız\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1837,7 +1791,7 @@ msgstr ""
 "sisteminin CHS geometrisi, bölümleme tablosunun CHS geometrisiyle uyuşacak "
 "şekilde ayarlanacak."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1861,12 +1815,12 @@ msgid ""
 "Cluster start delta = %d, which is not a multiple of the cluster size %d."
 msgstr "Küme başlangıcı delta = %d, küme boyutu olan %d'nin katsayısı değil."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr "%s için bozuk dizin girişi: ilk küme dosya belirtecinin sonunda."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1874,7 +1828,7 @@ msgstr ""
 "Bozuk FAT: %s için sonlandırılmamış zincir.  dosfsck ya da scandisk "
 "yürütmelisiniz."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1883,7 +1837,7 @@ msgstr ""
 "Bozuk FAT: %d kümesi %s için dosya sistemi zincirinin dışında.  dosfsck ya "
 "da scandisk yürütmelisiniz."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1892,26 +1846,17 @@ msgstr ""
 "Bozuk FAT: %d kümesi %s için çapraz bağlı.  dosfsck ya da scandisk "
 "yürütmelisiniz."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s %dkdır, fakat %d kümeye (%dk) sahip."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"%s dosyası bir sistem dosyası olarak işaretlenmiş.  Bu, onu taşımanın bazı "
-"programların çalışmasını durdurmaya yolaçacağı anlamına gelir."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Disk bölümü, bir %s dosya sistemi için çok büyük/küçük"
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1919,11 +1864,11 @@ msgstr ""
 "FAT'lar uyuşmuyor.  Eğer bunun ne demek olduğunu bilmiyorsanız, Vazgeç'i "
 "seçin, dosya sisteminde scandisk'i yürütün, ve buraya dönün."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Bu FAT türü için olası yapılandırma yok."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1934,13 +1879,13 @@ msgstr ""
 "boyutu %dk (%dk beklenirdi); küme sayısı %d (%d beklenirdi); FAT boyutları "
 "%d sektördür (%d beklenirdi)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr "Dosya sistemi boşluğun %d küme olduğunu bildiriyor, %d küme değil."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1948,15 +1893,15 @@ msgstr ""
 "Kök dizininde tüm dosyalara yetecek yer yok.  Ya iptal edin, ya da dosyaları "
 "yitirmek için yoksayın."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Kök dizinine yazmada hata."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "Eğer dosya sisteminizi FAT16 olarak bırakırsanız sorununuz olmaz."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1967,7 +1912,7 @@ msgstr ""
 "isterseniz, Parted el kitabına (ya da dağıtımınızın el kitabına) "
 "başvurmalısınız."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -1975,7 +1920,7 @@ msgstr ""
 "Eğer dosya sisteminizi FAT32 olarak bırakırsanız yeni bir sorunla "
 "karşılaşmayacaksınız."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1989,42 +1934,42 @@ msgstr ""
 "başvurmalısınız.  Ayrıca FAT32'ye dönüşüm, dosya sisteminin MS DOS, MS "
 "Windows 95a ve MS Windows NT tarafından okunamaz olmasına yol açacaktır."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "FAT32 kullanmak ister misiniz?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "Dosya sistemi, yalnızca FAT16'ya dönüştürülerek bu boyuta yeniden "
 "boyutlandırılabilir."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "Dosya sistemi, yalnızca FAT32'ye dönüştürülerek bu boyuta yeniden "
 "boyutlandırılabilir."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted bu disk bölümünü bu boyuta yeniden boyutlandıramaz.  Üzerinde "
 "çalışıyoruz!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2033,41 +1978,41 @@ msgstr ""
 "FAT %d ortam %x önyükleme sektörünün ortamı %x'le uyuşmamakta.  Muhtemelen "
 "scandisk yürütmelisiniz."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: %ld kümesi dosya sisteminin dışında"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: %ld kümesi dosya sisteminin dışında"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: boş küme yok"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Dosya sistemi saptanamıyor."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "%s dosya sistemlerini yeniden boyutlandırma desteklenmemektedir"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "Dosya sistemi oylumundan daha büyük!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "Dosya sistemi hatalar içeriyor."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "Hatalı bloklar okunamıyor."
 
@@ -2129,61 +2074,61 @@ msgstr "CNID %2$X li HFS+ dosyasının %1$lli sektörü bulunamadı."
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "EOF arkasında CNID %X'li HFS+ dosyası yazılmaya çalışılıyor."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "Üzgünüm, HFS henüz o şekilde yeniden boyutlandırılamıyor."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "küçültülüyor"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Veri yeniden konumlandırılması başarısız."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr "Veri yeniden konumladırılması oylumun sonunda bazı verileri bıraktı."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "HFS Ana Dizin Bloğu yazılıyor"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "Açarken, geçerli HFS[+X] imzası bulunamadı."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "HFS+'in %d sürümü desteklenmiyor."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "HFSX'in %d sürümü desteklenmiyor."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "Veri yeniden konumladırılması oylumun sonunda bazı verileri bıraktı."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Atama dosyasına yazmada hata."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "Atama dosyasının uyumluluk bölümüne yazmada hata."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "HFS+ Oylum Başlığı yazılıyor"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "Zorunlu hatalı bloklar dosyası aranırken bir hata oluştu."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2191,27 +2136,27 @@ msgstr ""
 "HFS sarmalayıcısında hata var gibi görünüyor: hatalı blok dosyası, gömülü HFS"
 "+ oylumunu içermiyor."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "Üzgünüm, HFS+ henüz o şekilde yeniden boyutlandırılamıyor."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "gömülü HFS+ oylumu küçültülüyor"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "HFS+ oylumunun yeniden boyutlandırılması başarısız."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "HFS sarmalayıcısı küçültülüyor"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "HFS sarmalayıcısının göncellenmesi başarısız."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2287,7 +2232,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Bir aralık yeniden konumlanmadı."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2295,15 +2240,15 @@ msgstr ""
 "Bir aralığın başvurusu gelmemesi gereken bir yerden geliyor.  Dosya "
 "sistemini kontrol etmelisiniz!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "Bu HFS oylumunun katalog dosyası yok.  Bu çok sıradışı!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr "Bu HFS oylumunun aralık taşması dosyası yok.  Bu oldukça sıradışı!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2311,51 +2256,51 @@ msgstr ""
 "Aralık taşması dosyası, kendi aralıklarını içermemeli!  Dosya sistemini "
 "kontrol etmelisiniz."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Dosya sistemi önbelleğe alınamıyor."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "Hatalı blok listesi yüklenemedi."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Aralık yeniden konumlandırılması sırasında bir hata oluştu."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "Bu HFS+ oylumunun katalog dosyası yok.  Bu çok sıradışı!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr "Bu HFS+ oylumunun aralık taşması dosyası yok.  Bu oldukça sıradışı!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "bu yardım mesajını görüntüler"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "tüm blok aygıtların bölümleme yerleşimlerini listeler"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "makinece ayrıştırılabilir çıktıyı gösterir"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "kullanıcı müdahalesi için asla istemde bulunmaz"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "sürümü görüntüler"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "yeni disk bölümleri için hizalama"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2364,31 +2309,31 @@ msgstr ""
 "etiketlerinde birincil disk bölümü numarası 1-4 arası, mantıksal disk "
 "bölümleri de 5 ve üstüdür.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "LABEL-TYPE şunlardan biridir: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "FLAG şunlardan biridir: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "UNIT şunlardan biridir: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "arzulanan hizalama: minimum ya da optimal"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "PART-TYPE şunlardan biridir: birincil, mantıksal, ek\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "FS-TYPE şunlardan biridir: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2397,7 +2342,7 @@ msgstr ""
 "START ve END disk konumlarıdır, 4GB ya da %10 gibi.  Eksi değerler, diskin "
 "sonuna uzaklığı belirtir.  Örneğin -1s tam olarak son sektörü belirtir.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2405,19 +2350,19 @@ msgstr ""
 "SON disk konumudur, 4GB ya da %10 gibi.  Eksi değerler, diskin sonuna "
 "uzaklığı belirtir.  Örneğin -1s tam olarak son sektörü belirtir.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "STATE şunlardan biridir: açık, kapalı\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "DEVICE sıklıkla /dev/hda ya da /dev/sda'dır\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NAME istediğiniz herhangi bir sözcüktür\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2437,22 +2382,22 @@ msgstr ""
 "GNU Genel Kamu Lisansı'na bakınız.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(kalan süre %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "%s disk bölümü kullanılıyor.  Devam etmek istediğinizden emin misiniz?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "%s üzerindeki disk bölümü(leri) kullanılıyor."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2461,31 +2406,31 @@ msgstr ""
 "%s üzerindeki mevcut disk etiketi silinecek ve bu disk üzerindeki tüm veri "
 "kaybolacak. Devam etmek istiyor musunuz?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Yeni disk etiketi türü?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Disk bölümü türü?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Disk bölümü adı?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Dosya sistemi türü?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Başlangıç?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Bitiş?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2495,7 +2440,7 @@ msgstr ""
 "Becerebildiğimiz buna en yakın konum %5$s'den %6$s'e (sektör %7$llu..%8$llu)."
 "%9$s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2503,95 +2448,95 @@ msgstr ""
 "\n"
 "Bu sizin için hala kabul edilebilir mi?"
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, fuzzy, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
 "Ortaya çıkan disk bölümü en iyi performansı elde etmek için ayarlanmamış."
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "%s disk etiketleri ek disk bölümlerini desteklemiyor."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Disk bölümü numarası?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr ""
 "BIOS silindiri, kafa, sektör geometrisi: %d,%d,%d.  Herbir silindir %s'tir.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Model: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Disk %1$s: %2$s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Sektör boyutu (mantıksal/fiziksel): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Disk bölümü Tablosu: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Disk Bayrakları: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Numara"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Başlangıç"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Son"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Boyut"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Tür"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Dosya sistemi"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "İsim"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Bayraklar"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Boş Alan"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2600,56 +2545,56 @@ msgstr ""
 "%3$s -> %4$s'de bir %1$s %2$s disk bölümü bulundu.  Bunu disk bölümü "
 "tablosuna eklemeyi ister misiniz?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "dosya"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "resize komutu parted 3.0'da kaldırıldı"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "Bir birimi sıkıştırmak veri kaybına yol açabilir, devam etmek istiyor "
 "musunuz?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Yeni aygıt?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "hizalama türü(min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d hizalandı\n"
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, fuzzy, c-format
 msgid "%d not aligned: %s\n"
 msgstr "%d hizalanmadı\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Tersine çevirmek üzere bayrakla?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Yeni durum?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Birim?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
@@ -2658,11 +2603,11 @@ msgstr ""
 "align-check TÜR N                        disk bölümü N'yi hiza TÜRü(min|opt) "
 "için kontrol et"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2670,15 +2615,15 @@ msgstr ""
 "help [COMMAND]                           genel yardımı ya da KOMUT yardımını "
 "yazdırır"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2686,15 +2631,15 @@ msgstr ""
 "mklabel,mktable LABEL-TYPE             yeni bir disk etiketi (disk bölümü "
 "tablosu) oluştur"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart PART-TYPE [FS-TYPE] START END          bir disk bölümü yap"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2704,20 +2649,20 @@ msgstr ""
 "belirtilebilir.\n"
 "\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "name NUMBER NAME                     NUMBER. disk bölümünü NAME'le adlandır"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2726,7 +2671,7 @@ msgstr ""
 "print [aygıtlar|boşluk|liste,tümü|NUMARA]     bölümleme tablosu, mevcut "
 "aygıtlar, boşluk, tüm bulunan bölümler ya da belli bir bölümü gösterir"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2734,11 +2679,11 @@ msgstr ""
 "Argümansız olduğunda print tüm bölümleme tablosunnu gösterir. Aşağıdaki "
 "argümanlarla kullanıldığında diğer çeşitli eylemleri uygular.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : tüm aktif blok aygıtları gösterir\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2746,32 +2691,32 @@ msgstr ""
 "  free      : mevcut blok aygıt üzerindeki boş bölümlenmemiş alan bilgisini "
 "gösterir\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all : tüm aktif blok aygıtların bölümleme tablolarını gösterir\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr ""
 "  NUMBER    : bu belirtilmiş bölüm hakkında daha ayrıntılı bilgi gösterir\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                     programdan çık"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2779,54 +2724,54 @@ msgstr ""
 "rescue START END                 START ve END arasındaki kayıp disk "
 "bölümlerini kurtar"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "resize komutu parted 3.0'da kaldırıldı\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "resizepart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "resizepart SAYI SON                    SAYI disk bölümünü taşı"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm NUMBER                        NUMBER. disk bölümünü sil"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select DEVICE                  düzenlenecek aygıtı seç"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disk_set"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 "disk_set FLAG STATE                     seçili aygıt üzerindeki bayrağı "
 "değiştir"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
@@ -2834,22 +2779,22 @@ msgstr ""
 "disk_toggle [FLAG]                       seçili aygıt üzerindeki BAYRAK "
 "durumunu değiştir"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr ""
 "set NUMBER FLAG STATE             NUMBER. disk bölümü üzerindeki bayrağı "
 "değiştir"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "seçmece / değiştir"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2857,19 +2802,19 @@ msgstr ""
 "toggle [NUMBER [FLAG]                       NUMBER. disk bölümü üzerindeki "
 "BAYRAK durumunu değiştir"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "birim"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr "birim UNIT                        öntanımlı birimi UNIT'e ayarla"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "sürüm"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2877,7 +2822,7 @@ msgstr ""
 "version                               GNU Parted'in sürüm numarasını ve "
 "telif hakkı bilgisini görüntüler"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2885,30 +2830,38 @@ msgstr ""
 "sürüm, GNU Parted'in bu kopyasının telif hakkı ve sürüm bilgisini "
 "görüntüler\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr "Kullanım: %s [-hlmsv] [-a<align>] [AYGIT [KOMUT [PARAMETRELER]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Aygıt bulunamadı"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "UYARI: Süper kullanıcı değilsiniz.  İzinlere dikkat edin.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Yeniden açmadan önce önyükleyicinizi yeniden kurmalısınız.  Daha fazla bilgi "
+"için Parted Kullanıcı belgesinin 4. bölümünü okuyunuz."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "/etc/fstab'i güncellemeniz gerekebilir.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 "GNU Parted'a hoşgeldiniz! Komutların bir listesini görmek için 'help' "
 "yazınız.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2919,7 +2872,7 @@ msgstr ""
 "KOMUTLARI PARAMETRELERle AYGITa uygular.  Eğer KOMUT(lar) verilmezse,\n"
 "etkileşimli kipte çalışır.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2980,7 +2933,7 @@ msgstr ""
 "Ayrıca kurulumunuz hakkında önemli olduğunu düşündüğünüz ek bilgileri\n"
 "ekleyiniz.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -2988,7 +2941,7 @@ msgstr ""
 "\n"
 "Komut Tarihçesi:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -2996,7 +2949,7 @@ msgstr ""
 "\n"
 "Hata: SEGV_MAPERR (Adres nesneye eşlenmedi)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3004,7 +2957,7 @@ msgstr ""
 "\n"
 "Hata: SEGV_ACCERR (Eşlenmiş nesne için geçersiz izinler)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3012,7 +2965,7 @@ msgstr ""
 "\n"
 "Hata: Genel bir SIGSEGV sinyaliyle karşılaşıldı.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3020,7 +2973,7 @@ msgstr ""
 "\n"
 "Hata: FPE_INTDIV (Tamsayı: sıfırla bölünme)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3028,7 +2981,7 @@ msgstr ""
 "\n"
 "Hata: FPE_INTOVF (Tamsayı: taşma)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3036,7 +2989,7 @@ msgstr ""
 "\n"
 "Hata: FPE_FLTDIV (Kayan: sıfırla bölünme)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3044,7 +2997,7 @@ msgstr ""
 "\n"
 "Hata: FPE_FLTOVF (Kayan: taşma)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3052,7 +3005,7 @@ msgstr ""
 "\n"
 "Hata: FPE_FLTUND (Kayan: boşalma)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3060,7 +3013,7 @@ msgstr ""
 "\n"
 "Hata: FPE_FLTRES (Kayan: kesin olmayan sonuç)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3068,7 +3021,7 @@ msgstr ""
 "\n"
 "Hata: FPE_FLTINV (Kayan: geçersiz işlem)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3076,7 +3029,7 @@ msgstr ""
 "\n"
 "Hata: FPE_FLTSUB (Kayan: altsimge erim dışı)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3084,7 +3037,7 @@ msgstr ""
 "\n"
 "Hata: Genel bir SIGFPE sinyaliyle karşılaşıldı."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3092,7 +3045,7 @@ msgstr ""
 "\n"
 "Hata: ILL_ILLOPC (Kuraldışı Opcode)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3100,7 +3053,7 @@ msgstr ""
 "\n"
 "Hata: ILL_ILLOPN (Kuraldışı İşlenen)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3108,7 +3061,7 @@ msgstr ""
 "\n"
 "Hata: ILL_ILLADR (Kuraldışı adresleme kipi)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3116,7 +3069,7 @@ msgstr ""
 "\n"
 "Hata: ILL_ILLTRP (Kuraldışı Tuzak)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3124,7 +3077,7 @@ msgstr ""
 "\n"
 "Hata: ILL_PRVOPC (Ayrıcalıklı Opcode)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3132,7 +3085,7 @@ msgstr ""
 "\n"
 "Hata: ILL_PRVREG (Ayrıcalıklı Yazmaç)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3140,7 +3093,7 @@ msgstr ""
 "\n"
 "Hata: ILL_COPROC (Eşişlemci Hatası)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3148,7 +3101,7 @@ msgstr ""
 "\n"
 "Hata: ILL_BADSTK (Dahili Yığın Hatası)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3156,69 +3109,69 @@ msgstr ""
 "\n"
 "Hata: Genel bir SIGILL sinyaliyle karşılaşıldı."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "geçersiz andaç: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Bir disk bölümü numarası bekleniyor."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Disk bölümü yok."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Bir dosya sistemi türü bekleniyor."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Bilinmeyen dosya sistemi türü \"%s\"."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Bir disk etiketi türü bekleniyor."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Başka disk bölümü oluşturulamıyor."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Bir disk bölümü türü bekleniyor."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "açık"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "kapalı"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "optimal"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "minimal"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "SEÇENEKler:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "KOMUTlar:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3227,30 +3180,77 @@ msgstr ""
 "\n"
 "Yazılım hatalarını %s'e bildirin\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "%s kullanılıyor\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Bu komut etkileşimsiz kipte anlamsız.\n"
 
+#, 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"
 
+#, c-format
 #~ msgid "%s: unrecognized option '--%s'\n"
 #~ msgstr "%s: '--%s' seçeneği bilinmiyor\n"
 
+#, 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"
 
+#, c-format
 #~ msgid "%s: option '-W %s' requires an argument\n"
 #~ msgstr "%s: '-W %s' seçeneği için bir argüman gerekli\n"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "%s başlangıç sayfası: <http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "geçersiz %s%s argüman '%s'"
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "%s%s argümanında geçersiz sonek '%s'"
+
+#, c-format
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "%s%s argümanı '%s' çok büyük"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Disk bölümleme tablosu yeniden okunamadı, bu nedenle değiştirilmiş "
+#~ "herhangi bir disk bölümünü bağlamadan (bilgisayarı) yeniden açmalısınız.  "
+#~ "Yeniden açmadan önce önyükleyicinizi de yeniden kurmalısınız (ki bu "
+#~ "değiştirilmiş disk bölümlerini bağlamayı gerektirebilir).  İki şeyi "
+#~ "birden yapmak olanaksız!  Dolayısıyla, bir kurtarma diskiyle açmanız ve "
+#~ "önyükleyicinizi bu diskten yeniden kurmanız gerekecek.  Daha fazla bilgi "
+#~ "için Parted Kullanıcı belgesinin 4. bölümünü okuyunuz."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "%1$s (%2$s) üzerindeki disk bölümleme tablosu.  Bu, sizin yaptığınız "
+#~ "değişiklikleri Hurd bilmiyor anlamına gelir.  %3$s ile ilgili hiçbir şey "
+#~ "yapmadan önce bilgisayarınızı yeniden açmalısınız."
+
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "Önyükleme bölgesi, disk bölümünün başından başlamıyor"
+
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3258,6 +3258,14 @@ msgstr "Bu komut etkileşimsiz kipte anlamsız.\n"
 #~ "Bu dosya sistemi %d mantıksal sektör boyutuna sahip.  GNU Parted'in 512 "
 #~ "bayttan farklı sektör boyutlarıyla düzgün çalışmadığı bilinmektedir."
 
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "%s dosyası bir sistem dosyası olarak işaretlenmiş.  Bu, onu taşımanın "
+#~ "bazı programların çalışmasını durdurmaya yolaçacağı anlamına gelir."
+
 #~ msgid "Failed to add partition %d (%s)"
 #~ msgstr "%d (%s) disk bölümü eklenemedi"
 
index 729b8696b362250ced3e90b68c23ac50ff6bc6bf..8458cffb4efe34c6215e22769b2134344c7980a8 100644 (file)
Binary files a/po/uk.gmo and b/po/uk.gmo differ
index b608db1d940b0a184b7e2df60c714d33dbec2c18..24a9d9949e9b0ccba91daadd30ae7b606d3d6111 100644 (file)
--- a/po/uk.po
+++ b/po/uk.po
@@ -3,21 +3,21 @@
 # This file is distributed under the same license as the parted package.
 #
 # Maxim V. Dziumanenko <dziumanenko@gmail.com>, 2004-2007.
-# Yuri Chornoivan <yurchor@ukr.net>, 2012, 2014.
+# Yuri Chornoivan <yurchor@ukr.net>, 2012, 2014, 2021.
 msgid ""
 msgstr ""
-"Project-Id-Version: parted 3.1.90\n"
+"Project-Id-Version: parted 3.3.52\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
-"PO-Revision-Date: 2014-07-04 08:03+0300\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
+"PO-Revision-Date: 2021-01-18 20:32+0200\n"
 "Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
-"Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n"
+"Language-Team: Ukrainian <trans-uk@lists.fedoraproject.org>\n"
 "Language: uk\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "X-Bugs: Report translation errors to the Language-Team address.\n"
-"X-Generator: Lokalize 1.5\n"
+"X-Generator: Lokalize 20.11.70\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
 
 #: lib/argmatch.c:132
@@ -43,29 +43,29 @@ msgid "Unknown system error"
 msgstr "Невідома системна помилка"
 
 #: lib/getopt.c:278
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' is ambiguous\n"
-msgstr "%s: параметр «-W %s» не є однозначним\n"
+msgstr "%s: параметр «%s%s» не є однозначним\n"
 
 #: lib/getopt.c:284
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' is ambiguous; possibilities:"
-msgstr "%s: неоднозначний параметр «%s»; можливі варіанти:"
+msgstr "%s: неоднозначний параметр «%s%s»; можливі варіанти:"
 
 #: lib/getopt.c:319
-#, fuzzy, c-format
+#, c-format
 msgid "%s: unrecognized option '%s%s'\n"
-msgstr "%s: невідомий параметр «%c%s»\n"
+msgstr "%s: невідомий параметр «%s%s»\n"
 
 #: lib/getopt.c:345
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' doesn't allow an argument\n"
-msgstr "%s: додавання аргументів до параметра «%c%s» не передбачено\n"
+msgstr "%s: додавання аргументів до параметра «%s%s» не передбачено\n"
 
 #: lib/getopt.c:360
-#, fuzzy, c-format
+#, c-format
 msgid "%s: option '%s%s' requires an argument\n"
-msgstr "%s: до параметра «--%s» слід додати аргумент\n"
+msgstr "%s: до параметра «%s%s» слід додати аргумент\n"
 
 #: lib/getopt.c:621
 #, c-format
@@ -98,11 +98,11 @@ msgstr "%s: до параметра слід додати аргумент — 
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "`"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "'"
 
@@ -135,9 +135,8 @@ msgid "Invalid back reference"
 msgstr "Неприпустиме зворотне посилання"
 
 #: lib/regcomp.c:156
-#, fuzzy
 msgid "Unmatched [, [^, [:, [., or [="
-msgstr "Ð\9dевÑ\96дповÑ\96днÑ\96 Ð´Ñ\83жки [ Ñ\87и [^"
+msgstr "Ð\92иÑ\80аз Ð±ÐµÐ· Ð¿Ð°Ñ\80ниÑ\85 [, [^, [:, [. Ð°Ð±Ð¾ [="
 
 #: lib/regcomp.c:159
 msgid "Unmatched ( or \\("
@@ -218,15 +217,13 @@ msgstr "(C)"
 
 #. TRANSLATORS: The %s placeholder is the web address of the GPL license.
 #: lib/version-etc.c:88
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "License GPLv3+: GNU GPL version 3 or later <%s>.\n"
 "This is free software: you are free to change and redistribute it.\n"
 "There is NO WARRANTY, to the extent permitted by law.\n"
 msgstr ""
-"\n"
-"Умови ліцензування викладено у GPLv3+: GNU GPL версії 3 або новішій, <http://"
-"gnu.org/licenses/gpl.html>\n"
+"Умови ліцензування викладено у GPLv3+: GNU GPL версії 3 або новішій, <%s>\n"
 "Це вільне програмне забезпечення: ви можете вільно змінювати і поширювати "
 "його.\n"
 "Вам не надається ЖОДНИХ ГАРАНТІЙ, окрім гарантій передбачених "
@@ -345,11 +342,9 @@ msgstr ""
 #. "Report translation bugs to <...>\n" with the address for translation
 #. bugs (typically your translation team's web or email address).
 #: lib/version-etc.c:249
-#, fuzzy, c-format
+#, c-format
 msgid "Report bugs to: %s\n"
-msgstr ""
-"\n"
-"Про вади повідомляйте за такою адресою: %s\n"
+msgstr "Повідомляйте про вади на адресу: %s\n"
 
 #: lib/version-etc.c:251
 #, c-format
@@ -362,40 +357,27 @@ msgid "%s home page: <%s>\n"
 msgstr "Домашня сторінка %s: <%s>\n"
 
 #: lib/version-etc.c:260
-#, fuzzy, c-format
+#, c-format
 msgid "General help using GNU software: <%s>\n"
-msgstr "Загальна довідка з ПЗ GNU: <http://www.gnu.org/gethelp/>\n"
+msgstr ""
+"Загальна довідкова інформація щодо використання програмного забезпечення "
+"GNU: <%s>\n"
 
 #: lib/xalloc-die.c:34
 msgid "memory exhausted"
 msgstr "пам'ять вичерпано"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "некоректний аргумент %s%s — '%s'"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "некоректний суфікс у аргументі %s%s: '%s'"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s, аргумент «%s» є занадто об’ємним"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Образ диска"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Помилка відкривання %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
@@ -403,47 +385,47 @@ msgstr ""
 "Не вдається відкрити %s для читання-запису (%s). %s відкрито у режимі лише-"
 "читання."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s при встановленні позиції для читання на %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s при читанні з %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Не вдається записати на %s, тому що він відкритий лише для читання."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s при встановленні позиції для запису на %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s при записі на %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Спробуйте `%s --help' для одержання додаткової інформації.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Використання: %s [КЛЮЧ] [ПРИСТРІЙ]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -459,7 +441,7 @@ msgstr ""
 "  -h, --help       показати це довідкове повідомлення і вийти\n"
 "  -v, --version    показати дані щодо версії і вийти\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -467,7 +449,7 @@ msgstr ""
 "\n"
 "Якщо не вказано ПРИСТРІЙ, виконується зондування всіх розділів.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -485,42 +467,7 @@ msgstr "Не вдається відкрити %s."
 msgid "Unable to probe store."
 msgstr "Не вдається визначити сховище."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Не вдається перечитати таблицю розділів, слід перезавантажитись перш ніж "
-"підключати змінені розділи. Також перед перезавантаженням необхідно "
-"перевстановити завантажувач (що вимагає підключення змінених розділів). "
-"Неможливо виконати одночасно обидві дії! Тому слід завантажитись з "
-"завантажувального диска, та перевстановити завантажувач. Додаткову "
-"інформацію знайдете у розділі 4 документації з Parted."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Таблицю розділів на %s не вдається перечитати (%s). Це означає, що Hurd "
-"нічого не знає про внесені вами зміни. Необхідно перезавантажити ваш "
-"комп'ютер перед виконанням будь-яких дій з %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Необхідно перевстановити ваш завантажувач перед перезавантаженням. Додаткову "
-"інформацію знайдете у розділі 4 документації з Parted."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s при спробі синхронізації %s на диск"
@@ -608,9 +555,8 @@ msgid "Generic SD/MMC Storage Card"
 msgstr "Типова картка зберігання даних SD/MMC"
 
 #: libparted/arch/linux.c:1422
-#, fuzzy
 msgid "NVMe Device"
-msgstr "Ð\9dовий Ð¿Ñ\80иÑ\81Ñ\82Ñ\80Ñ\96й?"
+msgstr "Ð\9fÑ\80иÑ\81Ñ\82Ñ\80Ñ\96й NVMe"
 
 #: libparted/arch/linux.c:1483
 msgid "DAC960 RAID controller"
@@ -638,7 +584,7 @@ msgstr "Compaq Smart Array"
 
 #: libparted/arch/linux.c:1520
 msgid "NVDIMM Device"
-msgstr ""
+msgstr "Пристрій NVDIMM"
 
 #: libparted/arch/linux.c:1525
 msgid "ATARAID Controller"
@@ -679,7 +625,7 @@ msgstr "Програмний масив RAID Linux"
 
 #: libparted/arch/linux.c:1588
 msgid "RAM Drive"
-msgstr ""
+msgstr "Диск у RAM"
 
 #: libparted/arch/linux.c:1595
 msgid "ped_device_new()  Unsupported device type"
@@ -840,15 +786,15 @@ msgstr "метадані"
 msgid "free"
 msgstr "вільно"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "розширений"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "логічний"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "основний"
 
@@ -924,64 +870,72 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr "chromeos_kernel"
+
+#: libparted/disk.c:2413
+msgid "bls_boot"
+msgstr "bls_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Невідома ознака розділу, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Інформація"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Попередження"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Помилка"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Критична помилка"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Помилка"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Не реалізовано"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Виправити"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Так"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Ні"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "Гаразд"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Повторити"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Ігнорувати"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Скасувати"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -995,29 +949,29 @@ msgstr ""
 "надішліть звіт щодо помилки електронною поштою на адресу %s, не забудьте "
 "вказати версію (%s) та додати таке повідомлення:"
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "Підтримка читання позначок дисків у стилі AIX ще не реалізована."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "Підтримка запису позначок дисків у стилі AIX ще не реалізована."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr ""
 "Підтримка додавання розділів для позначок дисків у стилі AIX ще не "
 "реалізована."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr ""
 "Підтримка дублювання розділів для позначок дисків у стилі AIX ще не "
 "реалізована."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
@@ -1025,42 +979,47 @@ msgstr ""
 "Підтримка встановлення типу розділів для позначок дисків у стилі AIX ще не "
 "реалізована."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr ""
 "Підтримка встановлення ознак для позначок дисків у стилі AIX ще не "
 "реалізована."
 
 #: libparted/labels/atari.c:273
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Can't use Atari partition tables on disks with a sector size not equal to %d "
 "bytes."
 msgstr ""
-"Parted не може використовувати файлові системи HFS на дисках з розміром "
-"сектора, що некратний %d байтів."
+"Не можна використовувати таблиці розділів Atari на дисках, де розмір сектора "
+"не дорівнює %d байтів."
 
 #: libparted/labels/atari.c:285
 #, c-format
 msgid "Can't use Atari partition tables on disks with more than %d sectors."
 msgstr ""
+"Не можна використовувати таблиці розділів Atari на дисках, де кількість "
+"секторів перевищує %d."
 
 #: libparted/labels/atari.c:398
 msgid ""
 "Too many Atari partitions detected.  Maybe there is a loop in the XGM linked "
 "list.  Aborting."
 msgstr ""
+"Виявлено надто багато розділів Atari. Ймовірно, список XGM зациклено. "
+"Перериваємо обробку."
 
 #: libparted/labels/atari.c:596
 #, c-format
 msgid "No data partition found in the ARS at sector %lli."
-msgstr ""
+msgstr "Не знайдено розділу даних у ARS, сектор %lli."
 
 #: libparted/labels/atari.c:617
 #, c-format
 msgid ""
 "The entry of the next logical ARS is not of type XGM in ARS at sector %lli."
 msgstr ""
+"Запис наступного логічного ARS не належить до типу XGM в ARS, сектор %lli."
 
 #: libparted/labels/atari.c:648
 #, c-format
@@ -1068,31 +1027,35 @@ msgid ""
 "There doesn't seem to be an Atari partition table on this disk (%s), or it "
 "is corrupted."
 msgstr ""
+"Здається на цьому диску (%s) немає таблиці розділів Atari або цю таблицю "
+"розділів пошкоджено."
 
 #: libparted/labels/atari.c:878
 #, c-format
 msgid "No room at sector %lli to store ARS of logical partition %d."
-msgstr ""
+msgstr "У секторі %lli немає місця для зберігання ARS логічного розділу %d."
 
 #: libparted/labels/atari.c:885
 #, c-format
 msgid "No room at sector %lli to store ARS."
-msgstr ""
+msgstr "У секторі %lli немає місця для зберігання ARS."
 
 #: libparted/labels/atari.c:962
 msgid ""
 "The sector count that is stored in the partition table does not correspond "
 "to the size of your device.  Do you want to fix the partition table?"
 msgstr ""
+"Значення лічильника секторів, яке зберігається у таблиці розділів, не "
+"відповідає розміру вашого пристрою. Хочете виправити таблицю розділів?"
 
 #: libparted/labels/atari.c:1003
 #, c-format
 msgid "No room at sector %lli to store BSL."
-msgstr ""
+msgstr "У секторі %lli немає місця для зберігання BSL."
 
 #: libparted/labels/atari.c:1111
 msgid "There were remaining partitions after filling the main AHDI table."
-msgstr ""
+msgstr "Виявлено залишкові розділи після заповнення основної таблиці AHDI."
 
 #: libparted/labels/atari.c:1130
 msgid ""
@@ -1100,15 +1063,18 @@ msgid ""
 "not empty so more partitions of unknown size and position will be detected "
 "by ICD compatible software.  Do you want to invalidate the ICD table?"
 msgstr ""
+"Основну таблицю AHDI заповнено усіма розділами, але таблиця ICD не є "
+"порожньою. Через це сумісним із ICD програмним забезпеченням буде виявлено "
+"додаткові розділи невідомого розміру та розташування. Хочете скасувати "
+"чинність таблиці ICD?"
 
 #: libparted/labels/atari.c:1164
-#, fuzzy
 msgid "ICD entries can't contain extended or logical partitions."
-msgstr "Ð\9dе Ð¼Ð¾Ð¶Ð½Ð° ÐºÐ¾Ð¿Ñ\96Ñ\8eваÑ\82и Ñ\80озÑ\88иÑ\80енÑ\96 Ñ\80оздÑ\96ли."
+msgstr "Ð\97апиÑ\81и ICD Ð½Ðµ Ð¼Ð¾Ð¶Ñ\83Ñ\82Ñ\8c Ð¼Ñ\96Ñ\81Ñ\82иÑ\82и Ñ\80озÑ\88иÑ\80ениÑ\85 Ñ\96 Ð»Ð¾Ð³Ñ\96Ñ\87ниÑ\85 Ñ\80оздÑ\96лÑ\96в."
 
 #: libparted/labels/atari.c:1186
 msgid "There were remaining partitions after filling the tables."
-msgstr ""
+msgstr "Після заповнення таблиць лишилися залишкові розділи."
 
 #: libparted/labels/atari.c:1226
 #, c-format
@@ -1116,12 +1082,14 @@ msgid ""
 "You can't use an extended XGM partition in ICD mode (more than %d primary "
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
+"Не можна використовувати розширений розділ XGM у режимі ICD (понад %d "
+"основних розділів; якщо XGM є першим, його буде пораховано як два)."
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Не вдається задовольнити всі обмеження на розділ."
@@ -1132,47 +1100,51 @@ msgid ""
 "You can't use more than %d primary partitions (ICD mode) if you use an "
 "extended XGM partition.  If XGM is the first partition it counts for two."
 msgstr ""
+"Не можна використовувати понад %d основних розділів (режим ICD), якщо ви "
+"використовуєте розділ XGM. Якщо розділ XGM є першим, його буде пораховано як "
+"два розділи."
 
 #: libparted/labels/atari.c:1823 libparted/labels/rdb.c:1082
 msgid "Unable to allocate a partition number."
 msgstr "Очікується номер розділу."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Не вдається розподілити слот bsd етикетки диска."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
-msgstr ""
+msgstr "Не можна змінювати таблицю розділів пристрою DASD-LDL.\n"
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Не вдається розподілити слот етикетки диска dasd"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Неправильна таблиця розділів на %s - неправильна сигнатура %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Неправильна таблиця розділів - рекурсивні розділи на %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "Розширені розділи не можуть бути на дискових етикетках msdos."
 
-#: libparted/labels/dos.c:1572
-#, fuzzy
+#: libparted/labels/dos.c:1569
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
-msgstr "Розширені розділи не можуть бути на дискових етикетках msdos."
+msgstr ""
+"Розширені розділи не можуть бути розділами відновлення на дискових мітках "
+"msdos."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr "Parted не може змінювати розділи, які створені Windows Dynamic Disk."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "створити додаткові розділи неможливо"
 
@@ -1269,7 +1241,7 @@ msgstr "Вказаний пристрій не є коректним прист
 
 #: libparted/labels/fdasd.c:188
 msgid "VOLSER not found on device"
-msgstr ""
+msgstr "на пристрої не знайдено VOLSER"
 
 #: libparted/labels/fdasd.c:191 libparted/labels/vtoc.c:179
 msgid "Fatal error"
@@ -1300,9 +1272,8 @@ msgstr ""
 "програмного інтерфейсу драйвера dasd, «%d»!"
 
 #: libparted/labels/fdasd.c:1020
-#, fuzzy
 msgid "Could not retrieve disk size."
-msgstr "Не вдалося отримати дані щодо диска."
+msgstr "Не вдалося отримати дані щодо розміру диска."
 
 #: libparted/labels/fdasd.c:1029
 msgid "Could not retrieve disk geometry information."
@@ -1314,13 +1285,13 @@ msgstr "Не вдалося отримати дані щодо розміру б
 
 #: libparted/labels/fdasd.c:1045
 msgid "Disk geometry does not match a DASD device of type 3390."
-msgstr ""
+msgstr "Геометрія диска не відповідає пристрою DASD типу 3390."
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "пристрій є замалим для GPT"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1330,7 +1301,7 @@ msgstr ""
 "підтримку якої передбачено у Parted. Будь ласка, повідомте нам про цю "
 "помилку!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1341,7 +1312,7 @@ msgstr ""
 "використовувався весь простір (додатково %llu блоків) або продовжити з "
 "вказаними параметрами?."
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1350,7 +1321,7 @@ msgstr ""
 "знаходитись. Виправити це шляхом переміщення копії таблиці у кінець (та "
 "видалити стару копію)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1359,7 +1330,7 @@ msgstr ""
 "таблицю, та використовуйте функцію відновлення програми Parted, щоб "
 "повернути розділи."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1367,7 +1338,7 @@ msgstr ""
 "Резервну таблицю GPT пошкоджено, основна, здається є правильною, тому буде "
 "використано основну таблицю."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1375,11 +1346,11 @@ msgstr ""
 "Основна GPT-таблиця пошкоджена, але резервна виглядає правильною, тому буде "
 "використовуватись саме вона."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "невідповідність контрольних сум (CRC) масивів основної таблиці"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "не вдалося перенести назву розділу"
 
@@ -1412,25 +1383,21 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Область даних не починається з початку розділу."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Область завантаження не починається з початку розділу."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Область завантаження розділу не займає весь розділ."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Область даних розділу не займає весь розділ."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr ""
 "Дивний розмір блоку у дескрипторі пристрою: %d байт не ділиться на 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1439,11 +1406,11 @@ msgstr ""
 "У дескрипторі драйвера зазначено, що розмір фізичного блоку дорівнює %d "
 "байтів, але Linux вважає, що він %d байтів."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Не знайдено правильної карти розділів."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1452,11 +1419,11 @@ msgstr ""
 "Конфлікт розмірів у елементах карти розділів! У елементі 1 вказано %d, але у "
 "елементі %d вказано %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Фатально! Дивна помилка - 2 елементи карти розділів!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1464,16 +1431,16 @@ msgstr ""
 "Зміна назви кореневого розділу чи розділу підкачки заважатиме Linux "
 "розпізнати їх."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "Не вдається додати інший розділ - карта розділів надто маленька!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Неправильна таблиця розділів у %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1482,7 +1449,7 @@ msgstr ""
 "Розділ %d не вирівняний на межі циліндру. Необхідно додати підтримку для "
 "цього випадку."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Не вдається додати інший розділ."
 
@@ -1656,39 +1623,39 @@ msgstr "Не вдається записати VTOC FMT7 DSCB."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Не вдалося записати VTOC FMT9 DSCB."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Недостатньо пам'яті."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Не вдається отримати одиницю розміру для спеціального блоку 'COMPACT'."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "\"%s\" має неправильний синтаксис адрес."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Максимальний номер головки - %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Максимальний номер сектора - %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "Адреса %s поза межами пристрою %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Неправильне число."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "Скористайтеся меншою одиницею виміру замість значень < 1"
 
@@ -1698,18 +1665,18 @@ msgstr "Скористайтеся меншою одиницею виміру з
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s : Помилка при виділенні блоку розділу\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s : Помилка при виділенні блоку\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s : Не вдається прочитати завантажувальний блок %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1735,22 +1702,22 @@ msgstr "%s : Неправильна контрольна сума у блоці
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s : Не вдається записати блок %d\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s : не вдається отримати disk_specific блок rdb\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s : Не вдається знайти блок rdb, цього не повинно було статися\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s : Не вдається прочитати блок розділу %llu\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1850,7 +1817,7 @@ msgstr ""
 "виберете «Виправити» (Fix), геометрію CHS файлової системи буде приведено у "
 "відповідність до геометрії таблиці розділів CHS."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1876,13 +1843,13 @@ msgid ""
 msgstr ""
 "Кластер починається зі зсувом %d, що не є цілим числом кластерів розміру %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Неправильний елемент каталогу %s: перший кластер є кінцем маркера файла."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
@@ -1890,7 +1857,7 @@ msgstr ""
 "Помилка у FAT: незавершений ланцюг для %s. Потрібно запустити dosfsck або "
 "scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1899,7 +1866,7 @@ msgstr ""
 "Помилка у FAT: кластер %d знаходиться поза межами файлової системи у ланцюгу "
 "для %s. Потрібно запустити dosfsck або scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1908,26 +1875,17 @@ msgstr ""
 "Помилка у FAT: перехресне посилання у кластері %d для %s. Потрібно запустити "
 "dosfsck або scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s дорівнює %dk, але має %d кластерів (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"Файл %s позначений як системний файл. Це означає, що його переміщення може "
-"призвести до припинення роботи деяких програм."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Розділ надто великий/малий для файлової системи типу %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1936,11 +1894,11 @@ msgstr ""
 "\"Скасувати\", запустіть scandisk для файлової системи, а потім повторіть цю "
 "команду."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Для цього типу FAT немає допустимих конфігурацій."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1951,7 +1909,7 @@ msgstr ""
 "%dk (очікувалось %dk); кількість кластерів %d (очікувалось %d); розмір FAT "
 "%d секторів (очікувалось %d)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
@@ -1959,7 +1917,7 @@ msgstr ""
 "Файлова система повідомляє про вільний простір %d кластерів, а не %d "
 "кластерів."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1967,16 +1925,16 @@ msgstr ""
 "Не вистачає простору для всіх файлів в кореневому каталозі. Виберіть "
 "\"Скасувати\", якщо проігноруєте, це призведе до втрати  файлів."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Помилка записування у кореневий каталог."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr ""
 "Якщо залишити файлову систему як FAT16, тоді у вас не виникатиме проблем."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1986,7 +1944,7 @@ msgstr ""
 "потрібно перевстановити завантажувач MS Windows. Для цього слід переглянути "
 "довідку з Parted (або посібник з вашого дистрибутиву)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
@@ -1994,7 +1952,7 @@ msgstr ""
 "Якщо ви залишаєте файлову систему як FAT32, тоді не виникне ніяких нових "
 "проблем."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -2008,42 +1966,42 @@ msgstr ""
 "унеможливить читання файлової системи під MS DOS, MS Windows 95a, та MS "
 "Windows NT."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Бажаєте використовувати FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "Змінити розмір файлової системи на вказаний розмір можна лише при "
 "перетворенні на FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "Змінити розмір файлової системи на вказаний розмір можна лише при "
 "перетворенні на FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted нездатний змінити розмір розділу на вказане значення. Ми над цим "
 "працюємо!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2052,41 +2010,41 @@ msgstr ""
 "FAT %d носій %x не відповідає завантажувальним секторам носія %x. Потрібно "
 "запустити dosfsck або scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: кластер %ld знаходиться поза межами файлової системи"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: кластер %ld знаходиться поза межами файлової системи"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: немає вільних кластерів"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Не вдається виявити файлову систему."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "підтримки зміни розмірів файлових систем %s не передбачено"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "Файлова система більша ніж том!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "Файлова система містить помилки."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "Пошкоджені блоки не вдається прочитати."
 
@@ -2100,13 +2058,13 @@ msgstr ""
 "вже існує інший. Слід перевірити файлову систему!"
 
 #: libparted/fs/r/hfs/cache.c:214
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Trying to move an extent from block 0x%X to block 0x%X, but another one "
 "already exists at this position.  This should not happen!"
 msgstr ""
-"Спроба перемістити екстент з блоку Ox%X у блок Ox%X, але в цій позиції вже "
-"існує інший.  Цього не повинно бути!"
+"Спроба перемістити розширення з блоку 0x%X у блок 0x%X, але в цій позиції "
+"вже існує інший блок. Цього не повинно бути!"
 
 #: libparted/fs/r/hfs/file.c:143
 #, c-format
@@ -2148,61 +2106,61 @@ msgstr "Не вдається знайти сектор %lli з файлу HFS+
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "Спроба записати файл HFS+ з CNID %X перед EOF."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "Розмір HFS не можна змінювати таким способом."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "скорочення"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Помилка переносу даних."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr "При переносі даних частина даних залишилась наприкінці тому."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "записується головний блок каталогу"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "При відкриванні не виявлено правильну сигнатуру HFS[+X]."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "Версія %d системи HFS+ не підтримується."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "Версія %d системи HFSX не підтримується."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "При переносі даних наприкінці розділу залишились деякі дані."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Помилка запису виділеного файлу."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "Помилка запису частини сумісності виділеного файлу."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "запис заголовку тому HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "Помилка пошуку файлу відомих пошкоджених блоків."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2210,27 +2168,27 @@ msgstr ""
 "Помилка у обробнику HFS: файл пошкоджених блоків не містить вбудований том "
 "HFS+."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "Розмір HFS+ не можна змінювати таким способом."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "зменшення вбудованого тому HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Помилка зміни розміру тому HFS+."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "оболонка скорочення HFS"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "оновлення помилка оболонки HFS."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2252,7 +2210,6 @@ msgstr ""
 "байтів)."
 
 #: libparted/fs/r/hfs/journal.c:260
-#, fuzzy
 msgid ""
 "Journal stored outside of the volume are not supported.  Try to deactivate "
 "the journal and run Parted again."
@@ -2310,7 +2267,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Екстент не був переміщений."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2318,15 +2275,15 @@ msgstr ""
 "Посилання на екстент з місця, з якого не має бути посилання. Слід перевірити "
 "файлову систему!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "Цей том HFS не містить файл каталогу. Досить дивно!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr "Цей том HFS не містить файлу перекривання екстентів. Досить дивно!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2334,51 +2291,51 @@ msgstr ""
 "Файл перекривання екстентів не має містить власних екстентів! Слід "
 "перевірити файлову систему."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Не вдається занести у кеш файлову систему у пам'яті."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "Список неправильних блоків не було завантажено."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Помилка при переміщенні екстенту."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "Цей том HFS+ не містить файлу каталогу.  Досить дивно!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr "Цей том HFS+ не містить файлу перекривання екстентів. Досить дивно!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "відображає це повідомлення"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "вивести список таблиць розділів на усіх пристроях"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "відображає вивід у форматі для машинного розбору"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "ніколи не запитувати втручання користувача"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "відображає версію"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "вирівнювання для нових розділів"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2386,31 +2343,31 @@ msgstr ""
 "НОМЕР - це номер розділу, що використовується Linux.  У етикетках диска MS-"
 "DOS, основні розділи мають номери 1-4, а логічні - 5 та далі.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "ТИП-ЕТИКЕТКИ один з: "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "ОЗНАКА одне з: "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "БЛОК одне з: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "бажане вирівнювання: minimum або optimal"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "ТИП-РОЗДІЛУ один з: основний, логічний, розширений\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "ТИП-ФС один з: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2420,7 +2377,7 @@ msgstr ""
 "значення відраховуються від кінця диска. Наприклад, -1s вказує на останній "
 "сектор диска.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2429,19 +2386,19 @@ msgstr ""
 "відраховуються від кінця диска. Наприклад, -1s вказує на останній сектор "
 "диска.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "СТАН один з: on, off\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "ПРИСТРІЙ - зазвичай /dev/hda чи /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "НАЗВА - будь-яке слово на ваш вибір\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2460,22 +2417,22 @@ msgstr ""
 "ЦІННОСТІ чи ПРИДАТНОСТІ ДЛЯ ПЕВНОЇ МЕТИ. Докладнішу інформацію про це\n"
 "дивіться у Універсальній Публічній Ліцензії GNU.\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(залишилось часу %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "Розділ %s наразі використовується. Ви справді хочете виконати цю дію?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Розділи на %s наразі зайняті."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2484,31 +2441,31 @@ msgstr ""
 "Існуюча позначка диска на %s буде знищена разом з усіма даними на ній. "
 "Продовжити?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Нова етикетка диска?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Тип розділу?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Назва розділу?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Тип файлової системи?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Початок?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Кінець?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2518,7 +2475,7 @@ msgstr ""
 "Найближчим придатним відповідником вказаних значень можуть бути межі від %s "
 "до %s (сектори від %llu до %llu).%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2526,94 +2483,95 @@ msgstr ""
 "\n"
 "Чи є це для вас прийнятним?"
 
-#: parted/parted.c:798
-#, fuzzy, c-format
+#: parted/parted.c:799
+#, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr ""
-"Отриманий у результаті розділ не буде вирівняно з метою підвищення швидкодії."
+"Отриманий у результаті розділ не буде вирівняно з метою підвищення "
+"швидкодії: %s"
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
-msgstr ""
+msgstr "невідомий (помилка malloc)"
 
-#: parted/parted.c:876
-#, fuzzy, c-format
+#: parted/parted.c:877
+#, c-format
 msgid "%s disk labels do not support partition name."
-msgstr "%s етикетки дисків для розширених розділів не підтримуються."
+msgstr "У мітках дисків %s не передбачено підтримки назв розділів."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Номер розділу?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr "BIOS циліндр,головка,сектор геометрія: %d,%d,%d.  Кожен циліндр %s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Модель: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Диск %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Розмір сектора (логічний/фізичний): %lldБ/%lldБ\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "таблиця розділів: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Прапорці диска: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Номер"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Початок"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Кінець"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Розмір"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Тип"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Файлова система"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Назва"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Ознаки"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Вільний простір"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2622,57 +2580,56 @@ msgstr ""
 "Знайдено розділ %s %s у межах від %s -> %s. Бажаєте додати його до таблиці "
 "розділів?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "пошук файлових систем"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "Команду resize було усунуто починаючи з версії parted 3.0"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "Зменшення розмірів розділу може призвести до втрат даних. Ви справді хочете "
 "виконати цю дію?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Новий пристрій?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "тип вирівнювання type(min/opt)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d вирівняно\n"
 
-#: parted/parted.c:1721
-#, fuzzy, c-format
+#: parted/parted.c:1737
+#, c-format
 msgid "%d not aligned: %s\n"
-msgstr "%d не вирівняно\n"
+msgstr "%d не вирівняно: %s\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Ознака, яку інвертувати?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Нове значення?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Блок?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
-#, fuzzy
+#: parted/parted.c:1988
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
 "alignment"
@@ -2680,11 +2637,11 @@ msgstr ""
 "align-check ТИП N                         перевірити розділ N щодо ТИПу(min|"
 "opt) вирівнювання"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2692,30 +2649,30 @@ msgstr ""
 "help [КОМАНДА]                вивести загальну довідку, або довідку про "
 "КОМАНДА"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
 msgstr ""
 "mklabel,mktable ТИП_ЕТИКЕТКИ  створити нову позначку диска (таблицю розділів)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart ТИП-РОЗДІЛУ [ТИП-ФС] ПОЧАТОК КІНЕЦЬ    створити розділ"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2723,19 +2680,19 @@ msgstr ""
 "'mkpart' створити розділ без створення нової файлової системи у ньому. Можна "
 "вказати ТИП-ФС для встановлення відповідного ідентифікатора розділу.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr "name НОМЕР НАЗВА              призначити назву НАЗВА розділу НОМЕР"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2744,7 +2701,7 @@ msgstr ""
 "print [devices|free|list,all|ЧИСЛО]     відображає таблицю розділів, наявні "
 "пристрої, вільний простір, всі знайдені розділи, або певний розділ"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2752,11 +2709,11 @@ msgstr ""
 "Без аргументів, 'print' відображає всю таблицю розділів. Проте, з наступними "
 "аргументами виконуються інші дії.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : відображаються всі активні блочні пристрої\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2764,14 +2721,14 @@ msgstr ""
 "  free      : відображається інформація про нерозподілений простір на "
 "поточному блочному пристрої\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all : відображаються таблиці розділів на всіх активних блочних "
 "пристроях\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
@@ -2779,75 +2736,75 @@ msgstr ""
 "  ЧИСЛО     : відображається докладна інформація про розділ з вказаним "
 "номером\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                          вихід з програми"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
 msgstr ""
 "rescue ПОЧАТОК КІНЕЦЬ         знайти втрачені розділи між ПОЧАТОК та КІНЕЦЬ"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "Команду resize було усунуто починаючи з версії parted 3.0\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "resizepart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr ""
 "resizepart НОМЕР КІНЕЦЬ                  змінити розмір розділу з номером "
 "НОМЕР"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm НОМЕР                      видалити розділ з номером НОМЕР"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select ПРИСТРІЙ               вибирати пристрій для роботи"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "набір_дисків"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 "disk_set ПРАПОРЕЦЬ СТАН                  змінити значення ПРАПОРЦЯ для "
 "вибраного пристрою"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
@@ -2855,20 +2812,20 @@ msgstr ""
 "disk_toggle [ПРАПОРЕЦЬ]                  перемкнути стан ПРАПОРЦЯ на "
 "вибраному пристрої"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr "set НОМЕР ОЗНАКА СТАН         змінити ознаку розділу з номером НОМЕР"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2876,20 +2833,20 @@ msgstr ""
 "toggle [НОМЕР [ОЗНАКА]]       перемикнути ознаку ОЗНАКА розділу з номером "
 "НОМЕР"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "unit БЛОК                     встановити для типового блоку значення БЛОК"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2897,40 +2854,48 @@ msgstr ""
 "version                       вивести поточну версію GNU Parted та "
 "інформацію про авторське право"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
 msgstr ""
 "команда version виводить інформацію про версію цієї програми GNU Parted\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr ""
 "Користування: %s [-hlmsv] [-a<вирівнювання>] [ПРИСТРІЙ [КОМАНДА "
 "[ПАРАМЕТРИ]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Пристрій не знайдено"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr ""
 "ПОПЕРЕДЖЕННЯ: у вас немає адміністративних прав доступу. Спочатку вам слід "
 "отримати ці права.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Необхідно перевстановити ваш завантажувач перед перезавантаженням. Додаткову "
+"інформацію знайдете у розділі 4 документації з Parted."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Не забудьте оновити /etc/fstab, якщо це необхідно.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 "Ласкаво просимо до GNU Parted! Перелік команд виводиться командою 'help'.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2941,7 +2906,7 @@ msgstr ""
 "Виконати КОМАНДА з параметрами ПАРАМЕТРИ для пристрою ПРИСТРІЙ.  Якщо\n"
 "КОМАНДА не вказана, запускається у інтерактивному режимі.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -3001,7 +2966,7 @@ msgstr ""
 "та наступний список команд, які ви вводили.\n"
 "Також включіть додаткову інформацію про параметри, які вважаєте важливими.\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -3009,7 +2974,7 @@ msgstr ""
 "\n"
 "Історія команд:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -3017,7 +2982,7 @@ msgstr ""
 "\n"
 "Помилка: SEGV_MAPERR (Адреса не прив'язана до об'єкту)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3025,7 +2990,7 @@ msgstr ""
 "\n"
 "Помилка: SEGV_ACCERR (Неправильні права доступу для прив'язаного об'єкту)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3033,7 +2998,7 @@ msgstr ""
 "\n"
 "Помилка: Виявлено загальний сигнал SIGSEGV.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3041,7 +3006,7 @@ msgstr ""
 "\n"
 "Помилка: FPE_INTDIV (Ціле: ділення на нуль)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3049,7 +3014,7 @@ msgstr ""
 "\n"
 "Помилка: FPE_INTOVF (Ціле число: переповнення)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3057,7 +3022,7 @@ msgstr ""
 "\n"
 "Помилка: FPE_INTDIV (Число з рухомою комою: ділення на нуль)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3065,7 +3030,7 @@ msgstr ""
 "\n"
 "Помилка: FPE_FLTOVF (Число з рухомою комою: переповнення)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3073,7 +3038,7 @@ msgstr ""
 "\n"
 "Помилка: FPE_FLTUND (Число з рухомою комою: дуже мале значення)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3081,7 +3046,7 @@ msgstr ""
 "\n"
 "Помилка: FPE_FLTRES (Число з рухомою комою: неточний результат)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3089,7 +3054,7 @@ msgstr ""
 "\n"
 "Помилка: FPE_FLTINV (Число з рухомою комою: неправильна операція)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3097,7 +3062,7 @@ msgstr ""
 "\n"
 "Помилка: FPE_FLTSUB (Число з рухомою комою: підпис поза межами)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3105,7 +3070,7 @@ msgstr ""
 "\n"
 "Помилка: Виявлено загальний сигнал SIGFPE."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3113,7 +3078,7 @@ msgstr ""
 "\n"
 "Помилка: ILL_ILLOPC (Недопустимий код операцій)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3121,7 +3086,7 @@ msgstr ""
 "\n"
 "Помилка: ILL_ILLOPN (Неправильний операнд)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3129,7 +3094,7 @@ msgstr ""
 "\n"
 "Помилка: ILL_ILLADR (Неправильний режим адресації)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3137,7 +3102,7 @@ msgstr ""
 "\n"
 "Помилка: ILL_ILLTRP (Неправильна пастка)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3145,7 +3110,7 @@ msgstr ""
 "\n"
 "Помилка: ILL_PRVOPC (Код привілейованої операції)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3153,7 +3118,7 @@ msgstr ""
 "\n"
 "Помилка: ILL_PRVREG (Привілейований регістр)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3161,7 +3126,7 @@ msgstr ""
 "\n"
 "Помилка: ILL_COPROC (Помилка співпроцесора)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3169,7 +3134,7 @@ msgstr ""
 "\n"
 "Помилка: ILL_BADSTK (Внутрішня помилка стеку)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3177,69 +3142,69 @@ msgstr ""
 "\n"
 "Помилка: Виявлено загальний сигнал SIGILL."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "некоректний елемент: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Очікується номер розділу."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Розділ не існує."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Очікується тип файлова система."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Невідомий тип файлової системи \"%s\"."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Очікується тип дискової етикетки."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
-msgstr ""
+msgstr "Підтримки прапорців не передбачено"
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Не вдається додатково створити розділи."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Очікується тип розділу."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "on"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "off"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "optimal"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "minimal"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "КЛЮЧІ:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "КОМАНДИ:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3248,12 +3213,12 @@ msgstr ""
 "\n"
 "Про вади повідомляйте на цю адресу: %s\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Використовується %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Ця команда не має сенсу у неінтерактивному режимі.\n"
 
@@ -3272,6 +3237,42 @@ msgstr "Ця команда не має сенсу у неінтерактивн
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "Домашня сторінка %s: <http://www.gnu.org/software/%s/>\n"
 
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "некоректний аргумент %s%s — '%s'"
+
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "некоректний суфікс у аргументі %s%s: '%s'"
+
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "%s%s, аргумент «%s» є занадто об’ємним"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Не вдається перечитати таблицю розділів, слід перезавантажитись перш ніж "
+#~ "підключати змінені розділи. Також перед перезавантаженням необхідно "
+#~ "перевстановити завантажувач (що вимагає підключення змінених розділів). "
+#~ "Неможливо виконати одночасно обидві дії! Тому слід завантажитись з "
+#~ "завантажувального диска, та перевстановити завантажувач. Додаткову "
+#~ "інформацію знайдете у розділі 4 документації з Parted."
+
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "Таблицю розділів на %s не вдається перечитати (%s). Це означає, що Hurd "
+#~ "нічого не знає про внесені вами зміни. Необхідно перезавантажити ваш "
+#~ "комп'ютер перед виконанням будь-яких дій з %s."
+
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "Область завантаження не починається з початку розділу."
+
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3279,6 +3280,13 @@ msgstr "Ця команда не має сенсу у неінтерактивн
 #~ "Файлова система має логічний розмір сектора %d. Вважається, що GNU Parted "
 #~ "працює неправильно з секторами, розмір яких не дорівнює 512 байт."
 
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "Файл %s позначений як системний файл. Це означає, що його переміщення "
+#~ "може призвести до припинення роботи деяких програм."
+
 #~ msgid "Failed to add partition %d (%s)"
 #~ msgstr "Не вдалося додати розділ %d (%s)"
 
index 45394d7f16edfeb49ed3c4c0da3c64d4ea7c3b14..214c612b13c28501b897cb8f61e6c8f731da5f3e 100644 (file)
Binary files a/po/vi.gmo and b/po/vi.gmo differ
index 5467235d483a3f333d48e3fce4907fd7a7ce4bb8..1efd01231218f7d10b89c7320ebfa8e0d44ba0a8 100644 (file)
--- a/po/vi.po
+++ b/po/vi.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 3.1.90\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2014-07-04 14:20+0700\n"
 "Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
 "Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
@@ -101,11 +101,11 @@ msgstr "%s: tùy chọn yêu cầu một đối số -- “%c”\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "“"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "”"
 
@@ -374,78 +374,63 @@ msgstr ""
 msgid "memory exhausted"
 msgstr "hết bộ nhớ"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "đối số %s%s không hợp lệ “%s”"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "gặp hậu tố không hợp lệ trong %s%s đối số “%s”"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s đối số  “%s” quá lớn"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "Ảnh Đĩa"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "Lỗi mở %s: %s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
 msgstr "Không mở được %s đọc-ghi (%s).  %s đã được mở ở tình trạng chỉ đọc."
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "%s trong khi tìm nơi để đọc trên %s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "%s trong khi đọc trên %s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "Không thể ghi nhớ vào %s, vì nó đã được mở ở tình trạng chỉ đọc."
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "%s trong khi tìm nơi để ghi trên %s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "%s trong khi ghi trên %s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Hãy thử chạy câu lệnh trợ giúp “%s --help” để biết thêm thông tin.\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "Cách dùng: %s [TÙY_CHỌN] [THIẾT_BỊ]...\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -461,7 +446,7 @@ msgstr ""
 "  -h, --help       hiển thị trợ giúp này, sau đó thoát\n"
 "  -v, --version    xuất thông tin về phiên bản, sau đó thoát\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -469,7 +454,7 @@ msgstr ""
 "\n"
 "Không đưa ra THIẾT_BỊ thì thăm dò mọi phân vùng.\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -488,43 +473,7 @@ msgstr "Không thể mở %s."
 msgid "Unable to probe store."
 msgstr "Không thể thăm dò kho lưu trữ."
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"Không đọc lại được bảng phân vùng, vì thế, cần khởi động lại trước khi gắn "
-"bất ký phân vùng đã sửa đổi nào.  Người dùng cũng cần cài đặt lại trình khởi "
-"động của mình trước khi khởi động lại (thao tác này có thể yêu cầu gắn phân "
-"vùng đã sửa đổi).  Không thể thực hiện cả hai thao tác!  Vì thế người dùng "
-"sẽ cần khởi động bẳng đĩa dự phòng, và cài đặt lại trình khởi động từ đó. "
-"Hãy đọc phần 4 của tài liệu hướng dẫn Người dùng Parted để biết thêm chi "
-"tiết."
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"Bảng phân vùng trên %s không đọc lại được (%s).  Có nghĩa là Hurd không biết "
-"gì về những thay đổi đã tạo ra.  Người dùng cần khởi động lại máy tính trước "
-"khi thực hiện bất kỳ thao tác nào với %s."
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"Cần cài đặt lại trình khởi động trước khi khởi động lại. Hãy đọc phần 4 của "
-"tài liệu hướng dẫn Người dùng Parted để biết thêm chi tiết."
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s đang thử đồng bộ hoá %s với đĩa"
@@ -842,15 +791,15 @@ msgstr "siêu dữ liệu"
 msgid "free"
 msgstr "trống"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "mở rộng"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "lô-g"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "chính"
 
@@ -926,64 +875,73 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "pmbr_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "Không nhận ra cờ phân vùng, %d."
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "Thông tin"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "Cảnh báo"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "Lỗi"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "Nghiêm trọng"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Lỗi"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "Không thi hành"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "Sửa"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "Có"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "Không"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "OK"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "Thử lại"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "Bỏ qua"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "Thôi"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -996,32 +954,32 @@ msgstr ""
 "thích hợp với báo cáo lỗi! Xin hãy gửi thư thông báo tới  %s kèm theo ít "
 "nhất là số phiên bản (%s) và thông tin sau đây:"
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "Chưa thực hiện hỗ trợ đọc nhãn đĩa AIX."
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "Chưa thực hiện hỗ trợ ghi nhãn đĩa AIX."
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr "Chưa thực hiện hỗ trợ thêm phân vùng vào nhãn đĩa AIX."
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr "Chưa thực hiện hỗ trợ nhân đôi phân vùng trong nhãn đĩa AIX."
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
 msgstr ""
 "Chưa thực hiện hỗ trợ đặt loại hệ thống của phân vùng trong nhãn đĩa AIX."
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr "Chưa thực hiện hỗ trợ đặt cờ trong nhãn đĩa AIX."
 
@@ -1111,11 +1069,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "Không thể thoả mọi ràng buộc trên phân vùng."
@@ -1131,44 +1089,44 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "Không thể cấp phát một số thứ tự phân vùng."
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "Không thể cấp phát một khe nhãn đĩa sai."
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "Không thể cấp phát một khe nhãn đĩa DASD"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "Gặp bảng phân vùng sai trên %s -- chữ ký không đúng %x."
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "Bảng phân vùng sai -- phiên bản đệ quy trên %s."
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "Phân vùng mở rộng không thể bị ẩn trên nhãn đĩa MSDOS."
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "Phân vùng mở rộng không thể bị ẩn trên nhãn đĩa MSDOS."
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr ""
 "Parted không thể thay đổi kích cỡ của phân vùng bị Windows Dynamic Disk quản "
 "lý."
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "không thể tạo phân vùng thêm nữa."
 
@@ -1311,11 +1269,11 @@ msgstr "Không thể lấy thông tin về kích cỡ khối."
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "thiết bị quá nhỏ cho GPT"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1324,7 +1282,7 @@ msgstr ""
 "Định dạng của bảng phân vùng GPT có phiên bản %x, mới hơn so với phiên bản "
 "Parted có thể nhận ra.  Xin hãy báo cáo điều này cho chúng tôi biết!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1335,7 +1293,7 @@ msgstr ""
 "dùng có thể sửa GPT để sử dụng toàn bộ sức chứa (%llu khối bổ sung) hoặc "
 "tiếp tục với thiết lập hiện thời."
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1343,7 +1301,7 @@ msgstr ""
 "Bảng GPT sao lưu không nằm tại cuối đĩa như yêu cầu. Sửa bằng cách di chuyển "
 "phần sao lưu tới cuối (và xóa bỏ sao lưu cũ)?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1351,7 +1309,7 @@ msgstr ""
 "Cả bảng GPT chính và sao lưu đều hỏng.  Hãy thử tạo một bảng mới, và sử dụng "
 "tính năng cứu nguy của Parted để phục hồi các phân vùng."
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
@@ -1359,7 +1317,7 @@ msgstr ""
 "Bảng GPT sao lưu bị hỏng, nhưng bảng chính hình như vẫn tốt, vì thế sẽ sử "
 "dụng bảng chính."
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
@@ -1367,11 +1325,11 @@ msgstr ""
 "Bảng GPT chính bị hỏng, nhưng sao lưu hình như vẫn tốt, vì thế sẽ sử dụng "
 "sao lưu."
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "sai khớp CRC mảng bảng phân vùng chính"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "gặp lỗi khi dịch tên phân vùng"
 
@@ -1404,25 +1362,21 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "Vùng dữ liệu không bắt đầu ở đầu của phân vùng."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "Vùng khởi động không bắt đầu ở đầu của phân vùng."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "Vùng khởi động của phân vùng không chiếm toàn bộ phân vùng."
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "Vùng dữ liệu của phân vùng không chiếm toàn bộ phân vùng."
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr ""
 "Kích thước khối kỳ lạ trên mô tả thiết bị: %d byte không chia hết cho 512."
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
@@ -1431,11 +1385,11 @@ msgstr ""
 "Mô tả của trình điều khiển cho biết kích thước khối là %d byte, nhưng Linux "
 "nói nó %d byte."
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "Không tìm thấy sơ đồ phân vùng hợp lệ."
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
@@ -1444,11 +1398,11 @@ msgstr ""
 "Xung đột kích thước mục sơ đồ phân vùng!  Mục 1 nói là %d, nhưng mục %d nói "
 "là %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "Kỳ lạ - có hai mục sơ đồ phân vùng!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
@@ -1456,16 +1410,16 @@ msgstr ""
 "Thay đổi tên của một phân vùng gốc hay trao đổi sẽ khiến Linux không nhận ra "
 "chúng như trước."
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "Không thêm được phân vùng bổ sung - sơ đồ phân vùng quá nhỏ!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "Bảng phân vùng sai trên %s."
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
@@ -1474,7 +1428,7 @@ msgstr ""
 "Phân vùng %d không sắp hàng với biên trụ. Trường hợp này vẫn còn không được "
 "hỗ trợ."
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "Không thêm được phân vùng bổ sung."
 
@@ -1649,39 +1603,39 @@ msgstr "Không thể ghi VTOC FMT7 DSCB."
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "Không thể ghi VTOC FMT9 DSCB."
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "Không đủ bộ nhớ."
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "Không thể lấy kích cỡ đơn vị cho đơn vị đặc biệt “COMPACT”."
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "“%s” sai cú pháp đối với vị trí."
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "Giá trị đầu tối đa là %d."
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "Giá trị rãnh ghi tối đa là %d."
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "Vị trí %s nằm ngoài thiết bị %s."
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "Con số không hợp lệ."
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "Sử dụng một đơn vị nhỏ hơn thay vì giá trị < 1"
 
@@ -1691,18 +1645,18 @@ msgstr "Sử dụng một đơn vị nhỏ hơn thay vì giá trị < 1"
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s: Lỗi cấp phát khối phân vùng\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s: Lỗi cấp phát khối\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s: Không thể đọc khối khởi động %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1728,22 +1682,22 @@ msgstr "%s: Sai kiểm tổng (checksum) trên khối %llu có loại %s\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s: Không thể ghi khối %d\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s: Lỗi cấp phát khối rdb disk_specific (đặc trưng cho đĩa)\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s: Không tìm thấy khối rdb, không bao giờ nên xảy ra\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s: Lỗi đọc khối phân vùng %llu\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1839,7 +1793,7 @@ msgstr ""
 "“Sửa” thì cấu trúc hình học CHS của hệ thống tập tin được đặt để tương ứng "
 "với cấu trúc hình học CHS của bảng phân vùng."
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1865,19 +1819,19 @@ msgstr ""
 "Delta bắt đầu liên cung = %d, mà không phải là bội số của kích thước liên "
 "cung %d."
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr ""
 "Mục thư mục xấu cho %s: liên cung đầu tiên là cuối của đánh dấu tập tin."
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
 msgstr "FAT xấu: chuỗi không kết thúc cho %s.  Cần chạy dosfsck hoặc scandisk."
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1886,7 +1840,7 @@ msgstr ""
 "FAT xấu: liên cung %d ngoài hệ thống tập tin trong chuỗi cho %s.  Cần chạy "
 "dosfsck hoặc scandisk."
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1895,26 +1849,17 @@ msgstr ""
 "FAT xấu: liên cung %d là liên kết chồng chéo cho %s.  Cần chạy dosfsck hoặc "
 "scandisk."
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s là %dk, nhưng nó có %d liên cung (%dk)."
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr ""
-"Tập tin %s có dấu hiệu của tập tin hệ thống.  Có nghĩa di chuyển tập tin này "
-"có thể khiến một số chương trình dừng làm việc."
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "Phân vùng quá lớn/nhỏ đối với hệ thống tập tin %s."
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1922,11 +1867,11 @@ msgstr ""
 "Các FAT không tương ứng.  Nếu không biết ý nghĩa của nó, thì hãy chọn cancel "
 "(Thôi), chạy scandisk trên hệ thống tập tin, sau đó quay lại."
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "Không có cấu hình có thể làm cho kiểu FAT này."
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1937,14 +1882,14 @@ msgstr ""
 "là %dk (mong đợi %dk); số liên cung là %d (mong đợi %d); kích thước FAT là "
 "%d rãnh ghi (mong đợi %d)."
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr ""
 "Hệ thống tập tin cho biết không gian trống là %d liên cung, không phải %d."
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
@@ -1952,15 +1897,15 @@ msgstr ""
 "Không đủ chỗ trống trong thư mục gốc để chứa tất cả các tập tin.  Hoặc Thôi "
 "(cancel), hoặc Bỏ qua (ignore) và sẽ mất các tập tin."
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "Gặp lỗi khi ghi vào thư mục gốc."
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "Nếu để hệ thống tập tin là FAT16, thì sẽ không có vấn đề gì."
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1970,13 +1915,13 @@ msgstr ""
 "phải cài đặt lại trình khởi động của MS Windows.  Nếu muốn thực hiện, thì "
 "cần xem tài liệu người dùng của Parted (hoặc tài liệu của nhà phân phối)."
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
 msgstr "Nếu dể hệ thống là FAT32, thì sẽ không có vấn đề mới nào xảy ra."
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1990,42 +1935,42 @@ msgstr ""
 "Đồng thời, chuyển thành FAT32 sẽ khiến MS DOS, MS Windows 95a, và MS Windows "
 "NT không đọc được chúng."
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "Bạn có muốn dùng FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr ""
 "Chỉ thay đổi được kích thước của hệ thống tập tin thành kích thước này khi "
 "chuyển thành FAT16."
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr ""
 "Chỉ thay đổi được kích thước của hệ thống tập tin thành kích thước này khi "
 "chuyển thành FAT32."
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr ""
 "GNU Parted không thay đổi được kích thước của phân vùng này thành kích thước "
 "chỉ ra.  Chúng tôi đang thực hiện việc đó!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -2034,42 +1979,42 @@ msgstr ""
 "FAT %d vật chứa %x không tương ứng vật chứa rãnh ghi khởi động %x.  Có thể "
 "cần chạy scandisk."
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set: liên cung %ld ngoài hệ thống tập tin"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get: liên cung %ld nằm ở ngoài hệ thống tập tin"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster: không còn liên cung trống"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "Không thể phát hiện hệ thống tập tin."
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr ""
 "đưa trở lại kích thước yêu cầu %s hệ thống tệp tin là không được hỗ trợ"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "Hệ thống tập tin lớn hơn khối tin!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "Hệ thống tập tin chứa lỗi."
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "Không thể đọc khối xấu."
 
@@ -2131,63 +2076,63 @@ msgstr "Không tìm thấy rãnh ghi %lli của tập tin HFS+ với CNID %X."
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "Đang thử ghi tập tin HFS+ với CNID %X đằng sau EOF."
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "Tiếc là chưa có thể thay đổi kích cỡ HFS bằng cách đó."
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "đang co lại"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "Lỗi định vị lại dữ liệu."
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr ""
 "Tiến trình định vị lại dữ liệu đã để lại một số dữ liệu ở cuối khối tin."
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "đang ghi Khối Thư mục Chủ HFS"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "Không tìm thấy chữ ký HFS[+X] đúng trong khi mở."
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "Phiên bản %d của HFS+ vẫn không được hỗ trợ."
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "Phiên bản %d của HFSX vẫn không được hỗ trợ."
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr ""
 "Tiến trình định vị lại dữ liệu đã để lại một số dữ liệu ở cuối khối tin."
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "Gặp lỗi khi ghi tập tin phân phối."
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "Gặp lỗi khi ghi phần tính tương thích của tập tin phân phối."
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "đang ghi Phần đầu Khối tin HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "Gặp lỗi trong khi tìm tập tin khối xấu bắt buộc phải có."
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
@@ -2195,27 +2140,27 @@ msgstr ""
 "Có vẻ là gặp lỗi trong bộ bao bọc HFS: tập tin khối xấu không chứa khối tin "
 "HFS+ nhúng."
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "Tiếc là chưa có thể thay đổi kích cỡ HFS bằng cách đó."
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "đang rút ngắn khối tin HFS+"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "Lỗi thay đổi kích cỡ của khối tin HFS+."
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "đang rút ngắn bộ bao bọc HFS"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "Lỗi cập nhật bộ bao bọc HFS."
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2295,7 +2240,7 @@ msgstr ""
 msgid "An extent has not been relocated."
 msgstr "Một tầm chưa được định vị lại."
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
@@ -2303,15 +2248,15 @@ msgstr ""
 "Tham chiếu đến một tầm đến từ vị trí không đúng. Cần kiểm tra hệ thống tập "
 "tin!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "Khối tin HFS không có tập tin phân loại. Rất lạ!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr "Khối tin HFS không có tập tin tràn tầm. Hơi lạ."
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
@@ -2319,51 +2264,51 @@ msgstr ""
 "Tập tin trản tầm không nên chứa các tầm của mình. Cần kiểm tra hệ thống tập "
 "tin."
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "Không thể nhớ tạm hệ thống tập tin trong bộ nhớ."
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "Không thể nạp danh sách khối xấu."
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "Gặp lỗi trong khi định vị lại tầm."
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "Khối tin HFS+ không có tập tin phần loại. Rất lạ!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr "Khối tin HFS+ không có tập tin tràn tầm. Hơi lạ."
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "hiển thị trợ giúp này"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "liệt kê bố trí phân vùng trên mọi thiết bị khối"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "hiển thị kết xuất cho máy phân tích được"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "không bao giờ nhắc người dùng làm gì"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "hiển thị phiên bản"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "sắp hàng các phân vùng mới"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2371,23 +2316,23 @@ msgstr ""
 "SỐ là số thứ tự phân vùng sử dụng bởi Linux.  Trên nhãn đĩa MS-DOS, các phân "
 "vùng chính có số từ 1 đến 4, và phân vùng lô-gíc từ 5 trở đi.\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "KIỂU_NHÃN là một trong số : "
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "CỜ là một trong số : "
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "ĐƠN_VỊ là một trong số: "
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "sắp hàng đã muốn: tối thiểu hay quang"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr ""
 "KIỂU_PHẦN là một trong số:\n"
@@ -2395,11 +2340,11 @@ msgstr ""
 " • logical\t\tlô-gíc\n"
 " • extended\tmở rộng\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "KIỂU_HTTT là một trong số: "
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2408,7 +2353,7 @@ msgstr ""
 "ĐẦU và CUỐI là vị trí trên đĩa, v.d. 4GB hay 10%.  Giá trị âm đếm từ cuối "
 "đĩa. Ví dụ, “-1s” chỉ ra chính xác rãnh ghi cuối cùng.\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2416,22 +2361,22 @@ msgstr ""
 "CUỐI là vị trí trên đĩa, v.d. 4GB hay 10%.  Giá trị âm đếm từ cuối đĩa. Ví "
 "dụ, “-1s” chỉ ra chính xác rãnh ghi cuối cùng.\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr ""
 "TÌNH_TRẠNG là một trong số:\n"
 " • on\t\tbật\n"
 " • off\t\ttắt\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "THIẾT_BỊ thường là /dev/hda hoặc /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "TÊN là bất kỳ từ gì theo ý muốn\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2452,22 +2397,22 @@ msgstr ""
 "Xem Giấy Phép Công Cộng GNU để biết thêm chi tiết.\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(còn lại %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "Phân vùng %s đang được dùng. Bạn có thực sự muốn tiếp tục không?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "Phân vùng trên %s đang được dùng."
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2476,31 +2421,31 @@ msgstr ""
 "Nhãn đĩa đã tồn tại trên %s sẽ bị hủy và tắt cả các dữ liệu trên đĩa này sẽ "
 "bị mất hoàn toàn. Bạn vẫn còn muốn tiếp tục không?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "Kiểu nhãn đĩa mới?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "Kiểu phân vùng?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "Tên phân vùng?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "Kiểu hệ thống tập tin?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "Đầu?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "Cuối?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2509,7 +2454,7 @@ msgstr ""
 "Người dùng đã yêu cầu một phân vùng từ %s đến %s (rãnh ghi %llu..%llu).\n"
 "Vùng gần nhất có thể quản lý là %s đến %s (rãnh ghi %llu..%llu).%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2517,93 +2462,93 @@ msgstr ""
 "\n"
 "Vẫn tốt?"
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, fuzzy, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr "Phân vùng kết quả chưa được sắp hàng cho hiệu suất tốt nhất."
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "Nhãn đĩa %s không hỗ trợ phiên bản mở rộng."
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "Số thứ tự phân vùng?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr "Dạng hình trụ,đầu,rãnh ghi BIOS: %d,%d,%d. Mỗi trụ là %s.\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "Mô hình: %s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "Đĩa %s: %s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "Kích cỡ rãnh ghi (lô-gíc/vật lý): %lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "Bảng Phân Vùng: %s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "Các cờ của đĩa: %s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "Số"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "Đầu"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "Cuối"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "Kích cỡ"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "Kiểu"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "Hê thống tập tin"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "Tên"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "Cờ"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "Chỗ trống"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2611,56 +2556,56 @@ msgid ""
 msgstr ""
 "Tìm thấy một phân vùng %s %s tại %s -> %s.  Thêm nó vào bảng phân vùng?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "đang tìm kiếm hệ thống tập tin"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "Lệnh resize đã bị gỡ bỏ trong parted 3.0"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr ""
 "Co nhỏ một phân vùng có thể làm dữ liệu bị mất, bạn có thực sự muốn tiếp tục "
 "không?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "Thiết bị mới?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "cách sắp hàng (tiểu/quang)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d đã xếp hàng\n"
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, fuzzy, c-format
 msgid "%d not aligned: %s\n"
 msgstr "%d chưa xếp hàng\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "Cờ cần đảo ngược?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "Tình trạng mới?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "Đơn vị?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
@@ -2669,11 +2614,11 @@ msgstr ""
 "align-check KIỂU N                       kiểm tra phân vùng SỐ có sắp hàng "
 "KIỂU (min|opt)"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "trợ giúp"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2681,15 +2626,15 @@ msgstr ""
 "help [LỆNH]                              in trợ giúp chung, hoặc trợ giúp "
 "trên câu LỆNH"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "tạo nhãn"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "tạo bảng"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
@@ -2697,15 +2642,15 @@ msgstr ""
 "mklabel,mktable KIỂU_NHÃN                tạo một nhãn đĩa mới (bảng phân "
 "vùng)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "tạo phân vùng"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart KIỂU_PV [KIỂU_HTTT] ĐẦU CUỐI      tạo một phân vùng"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2714,19 +2659,19 @@ msgstr ""
 "vùng đó.  Có thể chỉ ra KIỂU_HTTT (kiểu hệ thống tập tin) để đặt một mã số "
 "phân vùng thích hợp.\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "tên"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr "name SỐ TÊN                              đặt tên phân vùng SỐ là TÊN"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "in"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2738,7 +2683,7 @@ msgstr ""
 " • list,all  tất cả các phân vùng tìm thấy\n"
 " • SỐ        một phân vùng cụ thể"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
@@ -2746,11 +2691,11 @@ msgstr ""
 "Khi không có đối số, “print” hiển thị toàn bộ bảng phân vùng.  Nếu đưa ra "
 "các đối số theo sau, thì nó làm một số hành vi khác.\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices   : hiển thị tất cả các thiết bị khối vẫn hoạt động\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
@@ -2758,32 +2703,32 @@ msgstr ""
 "  free      : hiển thị thông tin về chỗ còn trống chưa phân vùng trên thiết "
 "bị khối hiện thời\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr ""
 "  list, all : hiển thị các bảng phân vùng của mọi thiết bị khối vẫn hoạt "
 "động\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr "  SỐ             : hiển thị nhiều thông tin hơn nữa về phân vùng này\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "thoát"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                     thoát khỏi chương trình"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "cứu"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2791,53 +2736,53 @@ msgstr ""
 "rescue ĐẦU CUỐI                          phục hồi một phân vùng đã mất cạnh "
 "ĐẦU và CUỐI"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "đổi cỡ"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "Lệnh resize đã bị gỡ bỏ trong parted 3.0\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "resizepart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "resizepart SỐ CUỐI                       đổi cỡ phân vùng SỐ"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "bỏ"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm SỐ                                    xóa bỏ phân vùng SỐ"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "chọn"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select THIẾT_BỊ                          chọn thiết bị cần sửa"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disk_set"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr ""
 "disk_set  TRẠNG_THÁI_CỜ                  thay đổi CỜ trên thiết bị đã chọn"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
@@ -2845,20 +2790,20 @@ msgstr ""
 "disk_toggle [CỜ]                         bật/tắt tình trạng của CỜ trên "
 "thiết bị đã chọn"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "đặt"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr "set SỐ CỜ TÌNH TRẠNG                     thay đổi CỜ trên phân vùng SỐ"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "bật/tắt"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
@@ -2866,20 +2811,20 @@ msgstr ""
 "toggle [SỐ [CỜ]]                         bật/tắt tình trạng của CỜ trên phân "
 "vùng SỐ"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "đơn vị"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr ""
 "unit ĐƠN_VỊ                              đặt đơn vị mặc định thành ĐƠN_VỊ"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "phiên bản"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
@@ -2887,7 +2832,7 @@ msgstr ""
 "version                                  hiển thị số thứ tự phiên bản và "
 "thông tin tác quyền về GNU Parted"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
@@ -2895,32 +2840,40 @@ msgstr ""
 "“version” hiển thị thông tin về tác quyền và phiên bản tương ứng với bản sao "
 "GNU Parted này\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr "Cách dùng: %s [-hlmsv] [-a<sắp_hàng>] [THIẾT_BỊ [LỆNH [THAM_SỐ]]...]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "Không tìm thấy thiết bị"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr ""
 "CẢNH BÁO: bạn không phải là siêu người dùng. Hãy để ý đến các quyền truy "
 "cập.\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"Cần cài đặt lại trình khởi động trước khi khởi động lại. Hãy đọc phần 4 của "
+"tài liệu hướng dẫn Người dùng Parted để biết thêm chi tiết."
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "Có thể cần cập nhật tập tin “/etc/fstab”.\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr ""
 "Chào mừng bạn đến với GNU Parted! Hãy gõ “help” để xem danh sách các câu "
 "lệnh.\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2931,7 +2884,7 @@ msgstr ""
 "Áp dụng các câu LỆNH với các THAM_SỐ cho THIẾT_BỊ.  Nếu\n"
 "không có câu LỆNH nào thì chạy trong chế độ hỏi đáp.\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2994,7 +2947,7 @@ msgstr ""
 "Một khi bạn làm những bước trên, cám ơn bạn giúp phát triển phần mềm GNU "
 "Parted tốt hơn! :)\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -3002,7 +2955,7 @@ msgstr ""
 "\n"
 "Lịch sử các lệnh:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -3010,7 +2963,7 @@ msgstr ""
 "\n"
 "Lỗi: SEGV_MAPERR (Địa chỉ không được ánh xạ tới đối tượng)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -3018,7 +2971,7 @@ msgstr ""
 "\n"
 "Lỗi: SEGV_ACCERR (Quyền truy cập sai cho đối tượng đã ánh xạ\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -3026,7 +2979,7 @@ msgstr ""
 "\n"
 "Lỗi: gặp một tín hiệu SIGSEGV chung.\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -3034,7 +2987,7 @@ msgstr ""
 "\n"
 "Lỗi: FPE_INTDIV (Số nguyên: chia cho không)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -3042,7 +2995,7 @@ msgstr ""
 "\n"
 "Lỗi: FPE_INTOVF (Số nguyên: tràn)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -3050,7 +3003,7 @@ msgstr ""
 "\n"
 "Lỗi: FPE_FLTDIV (Số thực dấu chấm động: chia cho không)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -3058,7 +3011,7 @@ msgstr ""
 "\n"
 "Lỗi: FPE_FLTOVF (Số thực dấu chấm động: tràn)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -3066,7 +3019,7 @@ msgstr ""
 "\n"
 "Lỗi: FPE_FLTUND (Số thực dấu chấm động: tràn ngược)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -3074,7 +3027,7 @@ msgstr ""
 "\n"
 "Lỗi: FPE_FLTRES (Số thực dấu chấm động: kết quả không chính xác)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -3082,7 +3035,7 @@ msgstr ""
 "\n"
 "Lỗi: FPE_FLTINV (Số thực dấu chấm động: thao tác sai)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -3090,7 +3043,7 @@ msgstr ""
 "\n"
 "Lỗi: FPE_FLTSUB (Số thực dấu chấm động: chữ thấp ở ngoại phạm vi)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -3098,7 +3051,7 @@ msgstr ""
 "\n"
 "Lỗi: gặp một tín hiệu SIGFPE chung."
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -3106,7 +3059,7 @@ msgstr ""
 "\n"
 "Lỗi: ILL_ILLOPC (Mã thao tác cấm)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -3114,7 +3067,7 @@ msgstr ""
 "\n"
 "Lỗi: ILL_ILLOPN (Toán hạng cấm)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -3122,7 +3075,7 @@ msgstr ""
 "\n"
 "Lỗi: ILL_ILLADR (Chế độ đặt địa chỉ cấm)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3130,7 +3083,7 @@ msgstr ""
 "\n"
 "Lỗi: ILL_ILLTRP (Bẫy cấm)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3138,7 +3091,7 @@ msgstr ""
 "\n"
 "Lỗi: ILL_PRVOPC (Mã thao tác có quyền đặc biệt)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3146,7 +3099,7 @@ msgstr ""
 "\n"
 "Lỗi: ILL_PRVREG (Thanh ghi có quyền đặc biệt)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3154,7 +3107,7 @@ msgstr ""
 "\n"
 "Lỗi: ILL_COPROC (Lỗi tiến trình đồng chạy)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3162,7 +3115,7 @@ msgstr ""
 "\n"
 "Lỗi: ILL_BADSTK (Lỗi đống nội bộ)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3170,69 +3123,69 @@ msgstr ""
 "\n"
 "Lỗi: gặp một tín hiệu SIGILL chung."
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "hiệu bài sai: %s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "Mong đợi số thứ tự phân vùng."
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "Phân vùng không tồn tại."
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "Cần kiểu hệ thống tập tin."
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "Không rõ kiểu hệ thống tập tin “%s”."
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "Mong đợi kiểu nhãn đĩa."
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "Không thể tạo phân vùng thêm nữa."
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "Cần một kiểu phân vùng."
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "bật"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "tắt"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "tối ưu"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "tối thiểu"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "TÙY CHỌN:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "LỆNH:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3242,30 +3195,77 @@ msgstr ""
 "Gửi báo cáo lỗi tới %s\n"
 "Thông báo lỗi dịch cho: <http://translationproject.org/team/vi.html>.\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "Dùng %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "Câu lệnh này không có ý nghĩa trong chế độ không tương tác.\n"
 
+#, 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"
 
+#, c-format
 #~ msgid "%s: unrecognized option '--%s'\n"
 #~ msgstr "%s: không nhận ra tùy chọn “--%s”\n"
 
+#, 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"
 
+#, 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"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "Trang chủ %s: <http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "đối số %s%s không hợp lệ “%s”"
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "gặp hậu tố không hợp lệ trong %s%s đối số “%s”"
+
+#, c-format
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "%s%s đối số  “%s” quá lớn"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "Không đọc lại được bảng phân vùng, vì thế, cần khởi động lại trước khi "
+#~ "gắn bất ký phân vùng đã sửa đổi nào.  Người dùng cũng cần cài đặt lại "
+#~ "trình khởi động của mình trước khi khởi động lại (thao tác này có thể yêu "
+#~ "cầu gắn phân vùng đã sửa đổi).  Không thể thực hiện cả hai thao tác!  Vì "
+#~ "thế người dùng sẽ cần khởi động bẳng đĩa dự phòng, và cài đặt lại trình "
+#~ "khởi động từ đó. Hãy đọc phần 4 của tài liệu hướng dẫn Người dùng Parted "
+#~ "để biết thêm chi tiết."
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "Bảng phân vùng trên %s không đọc lại được (%s).  Có nghĩa là Hurd không "
+#~ "biết gì về những thay đổi đã tạo ra.  Người dùng cần khởi động lại máy "
+#~ "tính trước khi thực hiện bất kỳ thao tác nào với %s."
+
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "Vùng khởi động không bắt đầu ở đầu của phân vùng."
+
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3273,6 +3273,14 @@ msgstr "Câu lệnh này không có ý nghĩa trong chế độ không tương t
 #~ "Hệ thống tập tin có kích thước rãnh ghi lô-gíc là %d.  GNU Parted không "
 #~ "làm việc chính xác với kích thước rãnh ghi khác 512 byte."
 
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr ""
+#~ "Tập tin %s có dấu hiệu của tập tin hệ thống.  Có nghĩa di chuyển tập tin "
+#~ "này có thể khiến một số chương trình dừng làm việc."
+
 #~ msgid "Failed to add partition %d (%s)"
 #~ msgstr "Không thêm được phân vùng %d (%s)"
 
index 60335435bc97f9ce12cadd1221731fbd409b1322..bfb0a616259fa91ebf11e9eabba7e209c0af162c 100644 (file)
Binary files a/po/zh_CN.gmo and b/po/zh_CN.gmo differ
index b37b33dbeba360fa2b470a0ebc2a1a3e220d733c..aa6353d424f69a1028f0bb0b948ce5e73369e12e 100644 (file)
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 3.1.90\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2015-08-29 09:21+0800\n"
 "Last-Translator: Mingye Wang <arthur200126@gmail.com>\n"
 "Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
@@ -99,11 +99,11 @@ msgstr "%s:选项需要一个参数 --“%c”\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "“"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "”"
 
@@ -371,78 +371,63 @@ msgstr "使用 GNU 软件的一般说明:<http://www.gnu.org/gethelp/>\n"
 msgid "memory exhausted"
 msgstr "内存耗尽"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "无效的 %s%s 参数 %s"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "在 %s%s 的参数 %s 中有无效的后缀"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s 参数 %s 太大"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "磁盘映像"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "打开 %s 出错:%s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
 msgstr "无法以读写方式打开 %s (%s)。%s 已按照只读方式打开。"
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "在为读取 %2$s 而调用 seek 时 %1$s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "在读取 %2$s 期间 %1$s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "由于 %s 是以只读方式打开的,因此无法写入。"
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "在为写入 %2$s 调用 seek 时 %1$s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "在写入 %2$s 时 %1$s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "尝试“%s --help”以获得更多信息。\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "用法:%s [选项] [设备]…\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -458,7 +443,7 @@ msgstr ""
 "  -h, --help       显示这个说明然后离开\n"
 "  -v, --version    输出版本信息然后离开\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -466,7 +451,7 @@ msgstr ""
 "\n"
 "如果没有指定任何设备,探查所有分区。\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -484,39 +469,7 @@ msgstr "无法打开 %s。"
 msgid "Unable to probe store."
 msgstr "无法探测存储设备。"
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"无法重新读入分区表。这意味着您必须在挂载任何修改过的分区之前重新启动。您还需"
-"要在您重新启动之前重新安装启动引导程序 (它可能需要挂载修改过的分区)。同时做这"
-"两件事是不可能的!所以您需要从恢复盘片启动,并从恢复盘片重新安装您的启动引导"
-"程序。更多详情请参阅 Parted 用户文档的第四节。"
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"%s 上的分区表无法被重新读取 (%s)。这意味着 Hurd 不知道任何您所作的修改。您应"
-"该在对 %s 做任何操作之前重新启动您的电脑。"
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"您应该在重新启动之前重新安装您的启动管理器。详情请阅读 Parted 用户文档的第四"
-"节。"
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s 试图将 %s 同步到磁盘上"
@@ -824,15 +777,15 @@ msgstr "元数据"
 msgid "free"
 msgstr "空闲"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "扩展"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "逻辑"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "主分区"
 
@@ -908,64 +861,73 @@ msgstr "irst"
 msgid "esp"
 msgstr "EFI 启动"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "pmbr_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "未知的分区旗标,%d。"
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "信息"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "警告"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "错误"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "致命错误"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "Bug"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "未实现"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "修正"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "是"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "否"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "确认"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "重试"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "忽略"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "放弃"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -977,31 +939,31 @@ msgstr ""
 "parted/parted.html 以获得更多有关提交错误报告的有用信息!请将至少含有版本 "
 "(%2$s) 和以下信息的错误报告发送到 %1$s: "
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "尚未支持读取 AIX 磁盘卷标。"
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "尚未支持写入 AIX 磁盘卷标。"
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr "尚未支持加入分区到 AIX 磁盘卷标。"
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr "尚未支持在 AIX 磁盘卷标中重制分区。"
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
 msgstr "尚未支持在 AIX 磁盘卷标中设置分区的系统类型。"
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr "尚未支持在 AIX 磁盘卷标中设置旗标。"
 
@@ -1089,11 +1051,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "无法满足分区的所有限制。"
@@ -1109,42 +1071,42 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "无法分配分区编号。"
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "无法定位 bsd 磁盘卷标槽。"
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "无法配置 dasd 磁盘卷标槽。"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "%s 上的分区表无效 - 错误的签名 %x。"
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "无效的分区表 - %s 出现递归分区。"
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "拓展分区无法隐藏,在 msdos 磁盘卷标中。"
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "拓展分区无法隐藏,在 msdos 磁盘卷标中。"
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr "Parted 无法改变由“Windows 动态磁盘”所管理的分区大小。"
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "无法再创建任何分区"
 
@@ -1285,11 +1247,11 @@ msgstr "无法获取区块大小信息。"
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "设备对 GPT 来说太小"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1297,7 +1259,7 @@ msgid ""
 msgstr ""
 "GPT 分区表的格式版本为 %x,它比 Parted 所能辨识的版本要新。请报告这个状况!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1307,7 +1269,7 @@ msgstr ""
 "并非所有可用于 %s 的空间都被用到了,您可以修正 GPT 以使用所有的空间 (额外的 "
 "%llu 个区块),还是说要继续使用目前的设置?"
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1315,7 +1277,7 @@ msgstr ""
 "备份 GPT 分区表不如它应当的那样在磁盘末端。要通过移动过去(并且删除旧备份)的"
 "方式修复吗?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1323,23 +1285,23 @@ msgstr ""
 "主 GPT 和备份 GPT 都损坏了。试着创建新表,然后使用 Parted 的急救功能以修复分"
 "区表。"
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
 msgstr "备份 GPT 表损坏,但主表似乎是正确的,所以使用备份。"
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
 msgstr "主 GPT 表损坏,但备份似乎是正确的,所以使用备份。"
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "主分区表的数组循环冗余检查 (CRC) 值不匹配"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "未能转换分区名称"
 
@@ -1372,68 +1334,64 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "数据区并未从分区的起点开始."
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "启动区域并未从分区的起点开始."
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "分区的启动区域并未占用整个分区。"
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "分区的数据区域并未占用整个分区。"
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr "设备描述中出现古怪的块大小:%d 字节不能被 512 整除。"
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
 "says it is %d bytes."
 msgstr "磁盘描述表明物理块大小为 %d 字节,但 Linux 认为它是 %d 字节。"
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "找不到有效的分区映射。"
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
 "says it is %d!"
 msgstr "分区映射条目大小冲突!条目 1 说它是 %d,但条目 %d 说它是 %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "奇怪 - 有两个分区映射条目!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
 msgstr "改变根分区或交换分区的名称将导致 Linux 无法识别它。"
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "无法添加另一个分区 -- 分区图过小!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "%s 的分区表无效。"
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
 "unsupported."
 msgstr "分区 %d 未对齐到柱面边界。此功能尚未被支持。"
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "无法添加其它分区。"
 
@@ -1603,39 +1561,39 @@ msgstr "无法写入 VTOC FMT7 DSCB。"
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "无法写入 VTOC FMT9 DSCB。"
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "内存耗尽。"
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "无法获得特殊单位“COMPACT”所用的大小。"
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "定位“%s”时语法无效。"
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "磁头数量的最大值为 %d。"
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "扇区数量的最大值为 %d。"
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "位置 %s 超出设备 %s 的范围。"
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "无效的数字。"
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "使用较小单位以代替 < 1 的值"
 
@@ -1645,18 +1603,18 @@ msgstr "使用较小单位以代替 < 1 的值"
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s:配置分区区块时失败\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s:配置区块时失败\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s:无法读取启动区块 %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1682,22 +1640,22 @@ msgstr "%s:区块 %llu 的类型 %s 有不当的校验和\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s:无法写入区块 %d\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s:配置磁盘特定的 rdb 区块时失败\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s:无法找到 rdb 区块,这不应该发生\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s:读取分区区块 %llu 时失败\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1784,7 +1742,7 @@ msgstr ""
 "(%d, %d, %d)。如果您选择忽略,文件系统的 CHS 几何结构将会保留不变。如果您选择"
 "修复,文件系统的 CHS 几何结构将会被设置以符合分区表的 CHS 几何结构。"
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1807,18 +1765,18 @@ msgid ""
 "Cluster start delta = %d, which is not a multiple of the cluster size %d."
 msgstr "簇起始偏移 = %d,不是簇大小 %d 的整数倍。"
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr "%s 的目录条目错误:第一个簇就是文件标志的结束。"
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
 msgstr "错误的 FAT:%s 的链未终止。您应该运行 dosfsck 或 scandisk。"
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1827,31 +1785,24 @@ msgstr ""
 "不当的 FAT 分区表:%2$s 的链中有簇 %1$d 位于文件系统之外。您应该运行 dosfsck "
 "或 scandisk。"
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
 "scandisk."
 msgstr "错误的 FAT:簇 %d 同 %s 的链交叉了。您应该运行 dosfsck 或 scandisk。"
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s 为 %dk,但含有 %d 个簇 (%dk)。"
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr "文件 %s 被标记为系统文件。这意味着移动它可能导致某些程序停止工作。"
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "对于 %s 文件系统而言,分区太大/太小。"
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1859,11 +1810,11 @@ msgstr ""
 "FAT 不匹配。如果你不知道它的含义,请选择放弃,并对文件系统运行 scandisk,而后"
 "在回到这里来。"
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "对于此 FAT 类型没有可能的配置。"
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1873,27 +1824,27 @@ msgstr ""
 "文件系统的大小不是 Windows 所希望的。簇大小为 %dk (期望 %dk);簇数量为 %d (期"
 "望 %d);FAT 的大小为 %d 扇区 (期望 %d)。"
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr "文件系统报告空闲空间为 %d 簇,而不是 %d 簇。"
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
 msgstr "在根目录中空间不足以用于所有的文件。你可选择取消,或是忽略而遗失文件。"
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "写入根目录错误。"
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "如果您保留文件系统为 FAT16, 那么将不会有问题。"
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1903,13 +1854,13 @@ msgstr ""
 "Windows 启动管理器。如果您打算这么做,您应该参阅 Parted 的手册 (或您的发行版"
 "的手册)。"
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
 msgstr "如果您保持文件系统类型为 FAT32 不变,那么您将不会遇到任何新问题。"
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1922,36 +1873,36 @@ msgstr ""
 "行版的手册)。此外,将文件系统转换为 FAT32,文件系统就不能够被 MS DOS、MS "
 "Windows 95a 和 MS Windows NT 所访问了。"
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "您是否愿意使用 FAT32?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr "文件系统的大小只能通过转换为 FAT16 改变到这一大小。"
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr "文件系统的大小只能通过转换为 FAT32 改变到这一大小。"
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr "GNU Parted 无法调整这个分区为这样的大小。我们正为此努力!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -1959,41 +1910,41 @@ msgid ""
 msgstr ""
 "FAT %d 媒体 %x 和启动扇区所在的媒体 %x 不匹配。您可能应该运行 scandisk。"
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set:簇 %ld 位于文件系统之外"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get:簇 %ld 位于文件系统之外"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster:没有空闲簇"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "无法检测文件系统。"
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "不支持调整 %s 文件系统大小"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "文件系统大于其所在的卷!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "文件系统含有错误。"
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "无法读取不当的区块。"
 
@@ -2055,87 +2006,87 @@ msgstr "找不到具有 CNID %2$X 的 HFS+ 文件扇区 %1$lli。"
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "尝试写入 EOF 之后具有 CNID %X 的 HFS+ 文件。"
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "抱歉,HFS 尚无法以该种方式调整大小。"
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "正在缩小"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "数据重寻址失败。"
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr "数据重寻址在卷末端留下一些数据。"
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "正写入 HFS 主目录区块"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "打开时找不到任何有效的 HFS[+X] 签名。"
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "不支持 HFS+ 的版本 %d。"
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "不支持 HFSX 的版本 %d。"
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "数据重寻址在卷末端留下一些数据。"
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "写入配额文件时发生错误。"
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "写入配额文件的兼容部分时发生错误。"
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "正写入 HFS+ 卷标头"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "找寻必要的坏块文件时发生了错误。"
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
 msgstr "在 HFS 包装程序中似乎出现错误:坏块文件未包含嵌入式 HFS+ 卷。"
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "抱歉,HFS+ 尚无法以该种方式调整大小。"
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "正收缩嵌入式 HFS+ 卷"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "调整 HFS+ 卷大小失败。"
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "正收缩 HFS 包装程序"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "正更新 HFS 包装程序失败。"
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2203,71 +2154,71 @@ msgstr "重播日志时,卷标头或主目录区块已变更。您应该重新
 msgid "An extent has not been relocated."
 msgstr "某个延伸未被重寻址。"
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
 msgstr "某个延伸的参考来自它不该来的地方。您应该检查一下文件系统!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "这个 HFS 卷没有任何目录文件。这是很不寻常的!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr "这个 HFS 卷没有任何延伸溢出文件。这是相当不寻常的!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
 msgstr "延伸溢出文件不应该包含其本身的延伸! 您应该检查一下文件系统。"
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "无法将文件系统缓存在内存中。"
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "无法加载坏块清单。"
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "在延伸重寻址的期间发生了错误。"
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "这个 HFS+ 卷没有任何类别文件。这是很不寻常的!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr "这个 HFS+ 卷没有任何延伸溢出文件。这是相当不寻常的!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "显示此求助信息"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "列出所有块设备的分区配置"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "显示机器可解析的输出"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "从不提示用户"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "显示版本"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "新分区的对齐"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2275,31 +2226,31 @@ msgstr ""
 "NUMBER 是 Linux 使用的分区编号。在 MS-DOS 磁盘卷标中,主分区编号为 1 - 4,逻"
 "辑分区从 5 开始。\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "“卷标类型”是以下任意一项:"
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "“标志”是以下任意一项:"
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "UNIT 是以下任意一项:"
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "预想获得的对齐:最小或最佳化"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "“分区类型”是主分区、逻辑分区、扩展分区之一\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "“文件系统类型”是以下任意一项:"
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2308,7 +2259,7 @@ msgstr ""
 "START 和 END 都是磁盘位置,如 4 GB 或 10%。负值从磁盘的末尾数起。例如,-1s 指"
 "定确切的最后环节。\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2316,19 +2267,19 @@ msgstr ""
 "END 指的是磁盘位置,例如 4GB 或 10%。负数值将从磁盘末端倒数过来。例如,-1s 指"
 "定最后一个扇区。\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "状态为:开、关\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "DEVICE 通常为 /dev/hda 或 /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NAME 是您需要的任何单词\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2347,22 +2298,22 @@ msgstr ""
 "详情请参见 GNU 通用公共许可证。\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(剩余时间 %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "分区 %s 正被使用。你确定要继续吗?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "正在使用 %s 上的分区。"
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2370,31 +2321,31 @@ msgid ""
 msgstr ""
 "现有 %s 上的磁盘卷标将被销毁,而所有在这个磁盘上的数据将会丢失。您要继续吗?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "新的磁盘卷标类型?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "分区类型?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "分区名称?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "文件系统类型?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "起始点?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "结束点?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2403,7 +2354,7 @@ msgstr ""
 "您要求将分区从 %s 移动到 %s (扇区 %llu..%llu)。\n"
 "我们可以管理的最近的分区是从 %s 到 %s (扇区 %llu..%llu).%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2411,93 +2362,93 @@ msgstr ""
 "\n"
 "这样您还可以接受吗?"
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, fuzzy, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr "所产生的分区没有适当为获得最佳性能而对齐。"
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "%s 磁盘卷标不支持扩展分区。"
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "分区编号?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr "BIOS 的柱面、磁头、扇区几何结构:%d,%d,%d。每圈柱面是 %s。\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "型号:%s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "磁盘 %s:%s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "扇区大小 (逻辑/物理):%lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "分区表:%s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "磁盘标志:%s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "编号"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "起始点"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "结束点"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "大小"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "类型"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "文件系统"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "名称"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "标志"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "可用空间"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2505,54 +2456,54 @@ msgid ""
 msgstr ""
 "在 %3$s -> %4$s 处找到一个 %1$s %2$s 分区。您希望将其添加到分区表中吗?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "正在搜索文件系统"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "resize 命令已在 parted 3.0 移除"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr "缩小分区可导致数据丢失,你确定要继续吗?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "新设备?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "对齐类型 (最小/最佳)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d 已对齐\n"
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, fuzzy, c-format
 msgid "%d not aligned: %s\n"
 msgstr "%d 未对齐\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "要反转的标志?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "新状态?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "单位?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "对齐检查"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
@@ -2561,40 +2512,40 @@ msgstr ""
 "align-check 类型 N                         检查分区 N 是否为 (最小=min|最佳"
 "=opt) 对齐类型"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
 msgstr ""
 "help [COMMAND]                           打印通用求助信息,或 COMMAND 的帮助"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
 msgstr "mklabel,mktable LABEL-TYPE               创建新的磁盘卷标 (分区表)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart 分区类型 [文件系统类型] 起始点 结束点 创建一个分区"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2602,20 +2553,20 @@ msgstr ""
 "“mkpart”创建分区而不在分区上创建新文件系统。“文件系统类型”可以用于设置适当的"
 "分区辨识号。\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "name 编号 名称                           将指定“编号”的分区命名为“名称”"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2624,47 +2575,47 @@ msgstr ""
 "print [devices|free|list,all|数字]        显示分区表、可用设备、剩余空间、所"
 "有分区或特殊分区"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
 msgstr ""
 "“print”不加参数可显示整个分区表。然而借由下列参数它能运行各种其他动作。\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices  :显示所有作用中的块设备\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
 msgstr "  free     :显示在目前块设备上未分区的可用空间信息\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr "  list, all : 显示所有作用中块设备的分区表\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr "  数字      : 显示此一特殊分区更详细的信息\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                     退出程序"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
@@ -2672,123 +2623,131 @@ msgstr ""
 "rescue 起始点 终止点                      挽救临近“起始点”、“终止点”的遗失的"
 "分区"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "resize 命令已在 parted 3.0 移除\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "resizepart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "resizepart NUMBER END                    改变 NUMBER 的大小"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm NUMBER                                删除编号为 NUMBER 的分区"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select 设备                              选择要编辑的设备"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disk_set"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr "disk_set 旗标 状态                       变更已选设备上的旗标"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
 msgstr "disk_toggle [旗标]                       切换已选设备上的旗标状态"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr "set 编号 旗标 状态                       改变指定“编号”分区的旗标"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
 msgstr "toggle [编号 [旗标]]                     切换“编号”分区上的“旗标”状态"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr "unit 单位                                设置缺省的“单位”"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
 msgstr ""
 "version                                  显示目前 GNU Parted 的版本与版权信息"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
 msgstr "'version' 显示此份 GNU Parted 的版权与版本信息\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr "用法:%s [-hlmsv] [-a<align>] [设备 [命令 [参数]]…]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "未找到设备"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "警告:您不是超级用户。注意权限问题。\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"您应该在重新启动之前重新安装您的启动管理器。详情请阅读 Parted 用户文档的第四"
+"节。"
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "你可能需要 /etc/fstab。\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr "欢迎使用 GNU Parted!输入 'help' 来查看命令列表。\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2798,7 +2757,7 @@ msgstr ""
 "用法:parted [选项]... [设备 [命令 [参数]...]...]\n"
 "将命令带着参数应用于“设备”。如果没有给出“命令”,则以交互模式运行。\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2859,7 +2818,7 @@ msgstr ""
 "\n"
 "的输出结果和其他您认为重要的设置信息。\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -2867,7 +2826,7 @@ msgstr ""
 "\n"
 "命令历史:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -2875,7 +2834,7 @@ msgstr ""
 "\n"
 "错误:SEGV_MAPERR (地址未对应到对象)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -2883,7 +2842,7 @@ msgstr ""
 "\n"
 "错误:SEGV_ACCERR (对应的对象权限无效)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -2891,7 +2850,7 @@ msgstr ""
 "\n"
 "错误: 遇到一般的 SIGSEGV 信号。\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -2899,7 +2858,7 @@ msgstr ""
 "\n"
 "错误: FPE_INTDIV (整数: 除零)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -2907,7 +2866,7 @@ msgstr ""
 "\n"
 "错误: FPE_INTOVF (整数: 上溢)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -2915,7 +2874,7 @@ msgstr ""
 "\n"
 "错误:FPE_FLTDIV (浮点数: 除零)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -2923,7 +2882,7 @@ msgstr ""
 "\n"
 "错误: FPE_FLTOVF (浮点数: 上溢)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -2931,7 +2890,7 @@ msgstr ""
 "\n"
 "错误: FPE_FLTUND (浮点数: 下溢)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -2939,7 +2898,7 @@ msgstr ""
 "\n"
 "错误: FPE_FLTRES (浮点数: 不精确的结果)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -2947,7 +2906,7 @@ msgstr ""
 "\n"
 "错误: FPE_FLTINV (浮点数: 无效的操作)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -2955,7 +2914,7 @@ msgstr ""
 "\n"
 "错误: FPE_FLTSUB (浮点数: 注标超出范围)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -2963,7 +2922,7 @@ msgstr ""
 "\n"
 "错误: 遇到一般的 SIGFPE 信号。"
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -2971,7 +2930,7 @@ msgstr ""
 "\n"
 "错误: ILL_ILLOPC (不合法的操作码)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -2979,7 +2938,7 @@ msgstr ""
 "\n"
 "错误: ILL_ILLOPN (不合法的算符)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -2987,7 +2946,7 @@ msgstr ""
 "\n"
 "错误: ILL_ILLADR (不合法的寻址模式)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -2995,7 +2954,7 @@ msgstr ""
 "\n"
 "错误: ILL_ILLTRP (不合法的陷阱)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3003,7 +2962,7 @@ msgstr ""
 "\n"
 "错误: ILL_PRVOPC (需要特权的操作码)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3011,7 +2970,7 @@ msgstr ""
 "\n"
 "错误: ILL_PRVREG (需要特权的寄存器)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3019,7 +2978,7 @@ msgstr ""
 "\n"
 "错误: ILL_COPROC (辅助处理器错误)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3027,7 +2986,7 @@ msgstr ""
 "\n"
 "错误: ILL_BADSTK (内部堆栈错误)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3035,69 +2994,69 @@ msgstr ""
 "\n"
 "错误: 遇到一般的 SIGILL 信号。"
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "无效的字组:%s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "需要分区编号。"
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "分区不存在。"
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "需要文件系统类型。"
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "未知的文件系统类型“%s”。"
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "需要磁盘卷标类型。"
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "无法创建更多分区。"
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "需要分区类型。"
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "开"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "关"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "最佳"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "最小"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "选项:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "命令:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3106,30 +3065,73 @@ msgstr ""
 "\n"
 "将错误报告给 %s\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "使用 %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "这个命令在非交互模式中不具任何意义。\n"
 
+#, c-format
 #~ msgid "%s: option '--%s' doesn't allow an argument\n"
 #~ msgstr "%s:选项“--%s”不允许有参数\n"
 
+#, c-format
 #~ msgid "%s: unrecognized option '--%s'\n"
 #~ msgstr "%s:无法辨识的选项“--%s”\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' doesn't allow an argument\n"
 #~ msgstr "%s:选项“-W %s”不允许有参数\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' requires an argument\n"
 #~ msgstr "%s:选项“-W %s”需要一个参数\n"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "%s 首页:<http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "无效的 %s%s 参数 %s"
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "在 %s%s 的参数 %s 中有无效的后缀"
+
+#, c-format
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "%s%s 参数 %s 太大"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "无法重新读入分区表。这意味着您必须在挂载任何修改过的分区之前重新启动。您还"
+#~ "需要在您重新启动之前重新安装启动引导程序 (它可能需要挂载修改过的分区)。同"
+#~ "时做这两件事是不可能的!所以您需要从恢复盘片启动,并从恢复盘片重新安装您的"
+#~ "启动引导程序。更多详情请参阅 Parted 用户文档的第四节。"
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "%s 上的分区表无法被重新读取 (%s)。这意味着 Hurd 不知道任何您所作的修改。您"
+#~ "应该在对 %s 做任何操作之前重新启动您的电脑。"
+
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "启动区域并未从分区的起点开始."
+
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
@@ -3137,6 +3139,12 @@ msgstr "这个命令在非交互模式中不具任何意义。\n"
 #~ "此文件系统的逻辑扇区大小为 %d。GNU Parted 不能在扇区大小不是 512 字节的情"
 #~ "况下正确工作。"
 
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr "文件 %s 被标记为系统文件。这意味着移动它可能导致某些程序停止工作。"
+
 #, fuzzy
 #~ msgid "Failed to add partition %d (%s)"
 #~ msgstr "加入分割区 %d (%s) 时失败"
index 2ba1ba6c9a311f5c83cc5d36c02fe8330bf837c7..e9bfa840dcbaeee75534863149e84d9448cb160d 100644 (file)
Binary files a/po/zh_TW.gmo and b/po/zh_TW.gmo differ
index 903bbece4ec27f75a396d4e027496305db873076..6cd328760e3ac61abf2e70ca29e7d73350dd46a5 100644 (file)
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: parted 3.1.90\n"
 "Report-Msgid-Bugs-To: bug-parted@gnu.org\n"
-"POT-Creation-Date: 2019-10-10 16:35-0700\n"
+"POT-Creation-Date: 2021-01-27 16:00-0800\n"
 "PO-Revision-Date: 2019-05-27 00:55+0800\n"
 "Last-Translator: pan93412 <pan93412@gmail.com>\n"
 "Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
@@ -99,11 +99,11 @@ msgstr "%s:選項需要參數 -- '%c'\n"
 #. If you don't know what to put here, please see
 #. <https://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: lib/quotearg.c:362
+#: lib/quotearg.c:355
 msgid "`"
 msgstr "「"
 
-#: lib/quotearg.c:363
+#: lib/quotearg.c:356
 msgid "'"
 msgstr "」"
 
@@ -368,78 +368,63 @@ msgstr "使用 GNU 軟體的一般說明:<http://www.gnu.org/gethelp/>\n"
 msgid "memory exhausted"
 msgstr "記憶體用盡"
 
-#: lib/xstrtol-error.c:63
-#, c-format
-msgid "invalid %s%s argument '%s'"
-msgstr "%s%s 參數「%s」無效"
-
-#: lib/xstrtol-error.c:68
-#, c-format
-msgid "invalid suffix in %s%s argument '%s'"
-msgstr "%s%s 參數「%s」有無效後綴"
-
-#: lib/xstrtol-error.c:72
-#, c-format
-msgid "%s%s argument '%s' too large"
-msgstr "%s%s 參數「%s」過長"
-
-#: libparted/arch/beos.c:245
+#: libparted/arch/beos.c:246
 msgid "Disk Image"
 msgstr "磁碟影像"
 
-#: libparted/arch/beos.c:346 libparted/arch/gnu.c:277
+#: libparted/arch/beos.c:347 libparted/arch/gnu.c:277
 #: libparted/arch/linux.c:1731
 #, c-format
 msgid "Error opening %s: %s"
 msgstr "開啟 %s 時出錯:%s"
 
-#: libparted/arch/beos.c:357 libparted/arch/gnu.c:287
+#: libparted/arch/beos.c:358 libparted/arch/gnu.c:287
 #: libparted/arch/linux.c:1742
 #, c-format
 msgid "Unable to open %s read-write (%s).  %s has been opened read-only."
 msgstr "無法開啟 %s 以讀寫 (%s)。%s 已用唯讀的方式開啟。"
 
-#: libparted/arch/beos.c:419 libparted/arch/linux.c:1907
+#: libparted/arch/beos.c:420 libparted/arch/linux.c:1907
 #, c-format
 msgid "%s during seek for read on %s"
 msgstr "在為讀取 %2$s 而呼叫 seek 時 %1$s"
 
-#: libparted/arch/beos.c:452 libparted/arch/gnu.c:465 libparted/arch/gnu.c:564
-#: libparted/arch/gnu.c:692 libparted/arch/linux.c:1867
+#: libparted/arch/beos.c:453 libparted/arch/gnu.c:425 libparted/arch/gnu.c:524
+#: libparted/arch/gnu.c:652 libparted/arch/linux.c:1867
 #: libparted/arch/linux.c:1949
 #, c-format
 msgid "%s during read on %s"
 msgstr "在讀取 %2$s 期間 %1$s"
 
-#: libparted/arch/beos.c:488 libparted/arch/gnu.c:525
+#: libparted/arch/beos.c:489 libparted/arch/gnu.c:485
 #: libparted/arch/linux.c:2026
 #, c-format
 msgid "Can't write to %s, because it is opened read-only."
 msgstr "由於 %s 是以唯讀方式開啟,因此無法寫入。"
 
-#: libparted/arch/beos.c:504 libparted/arch/linux.c:2051
+#: libparted/arch/beos.c:505 libparted/arch/linux.c:2051
 #, c-format
 msgid "%s during seek for write on %s"
 msgstr "在為寫入 %2$s 呼叫 seek 時 %1$s"
 
-#: libparted/arch/beos.c:541 libparted/arch/gnu.c:601 libparted/arch/gnu.c:646
-#: libparted/arch/gnu.c:723 libparted/arch/linux.c:1999
+#: libparted/arch/beos.c:542 libparted/arch/gnu.c:561 libparted/arch/gnu.c:606
+#: libparted/arch/gnu.c:683 libparted/arch/linux.c:1999
 #: libparted/arch/linux.c:2094 libparted/arch/linux.c:2167
 #, c-format
 msgid "%s during write on %s"
 msgstr "在寫入 %2$s 時 %1$s"
 
-#: partprobe/partprobe.c:148
+#: partprobe/partprobe.c:149
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "嘗試「%s --help」以獲得更多資訊。\n"
 
-#: partprobe/partprobe.c:152
+#: partprobe/partprobe.c:153
 #, c-format
 msgid "Usage: %s [OPTION] [DEVICE]...\n"
 msgstr "用法:%s [選項] [裝置]…\n"
 
-#: partprobe/partprobe.c:153
+#: partprobe/partprobe.c:154
 msgid ""
 "Inform the operating system about partition table changes.\n"
 "\n"
@@ -455,7 +440,7 @@ msgstr ""
 "  -h, --help       顯示這個說明然後離開\n"
 "  -v, --version    輸出版本資訊然後離開\n"
 
-#: partprobe/partprobe.c:161
+#: partprobe/partprobe.c:162
 msgid ""
 "\n"
 "When no DEVICE is given, probe all partitions.\n"
@@ -463,7 +448,7 @@ msgstr ""
 "\n"
 "如果沒有指定任何裝置,就探查所有分割區。\n"
 
-#: partprobe/partprobe.c:165
+#: partprobe/partprobe.c:166
 #, c-format
 msgid ""
 "\n"
@@ -481,39 +466,7 @@ msgstr "無法開啟 %s。"
 msgid "Unable to probe store."
 msgstr "無法偵測儲存裝置。"
 
-#: libparted/arch/gnu.c:368
-msgid ""
-"The partition table cannot be re-read.  This means you need to reboot before "
-"mounting any modified partitions.  You also need to reinstall your boot "
-"loader before you reboot (which may require mounting modified partitions).  "
-"It is impossible do both things!  So you'll need to boot off a rescue disk, "
-"and reinstall your boot loader from the rescue disk.  Read section 4 of the "
-"Parted User documentation for more information."
-msgstr ""
-"無法重新讀入分割區表。同樣,您必須在掛載任何修改過的分割區之前重新啟動。您還"
-"需要在您重新啟動之前重新安裝開機載入程式 (它可能需要掛載修改過的分割區)。同時"
-"做這兩件事是不可能的!所以您就需要從回復碟片啟動,並從回復碟片重新安裝您的開"
-"機載入程式。更多詳情請參閱 Parted 使用者文件的第四節。"
-
-#: libparted/arch/gnu.c:385
-#, c-format
-msgid ""
-"The partition table on %s cannot be re-read (%s).  This means the Hurd knows "
-"nothing about any modifications you made.  You should reboot your computer "
-"before doing anything with %s."
-msgstr ""
-"%s 上的分割區表無法被重新讀取 (%s)。這意味著 Hurd 不知道任何您所作的修改。您"
-"應該在對 %s 做任何操作之前重新啟動您的電腦。"
-
-#: libparted/arch/gnu.c:396 parted/parted.c:2318
-msgid ""
-"You should reinstall your boot loader before rebooting.  Read section 4 of "
-"the Parted User documentation for more information."
-msgstr ""
-"您應該在重新啟動之前重新安裝您的開機載入程式。詳情請閱讀 Parted 使用者文件的"
-"第四節。"
-
-#: libparted/arch/gnu.c:788
+#: libparted/arch/gnu.c:748
 #, c-format
 msgid "%s trying to sync %s to disk"
 msgstr "%s 試圖將 %s 同步到磁碟上"
@@ -822,15 +775,15 @@ msgstr "中繼資料"
 msgid "free"
 msgstr "自由空間"
 
-#: libparted/disk.c:2355 parted/ui.c:1258 parted/ui.c:1286
+#: libparted/disk.c:2355 parted/ui.c:1259 parted/ui.c:1287
 msgid "extended"
 msgstr "擴充分割區"
 
-#: libparted/disk.c:2357 parted/ui.c:1262 parted/ui.c:1290
+#: libparted/disk.c:2357 parted/ui.c:1263 parted/ui.c:1291
 msgid "logical"
 msgstr "邏輯分割區"
 
-#: libparted/disk.c:2359 parted/ui.c:1254 parted/ui.c:1282
+#: libparted/disk.c:2359 parted/ui.c:1255 parted/ui.c:1283
 msgid "primary"
 msgstr "主分割區"
 
@@ -906,64 +859,73 @@ msgstr "irst"
 msgid "esp"
 msgstr "esp"
 
-#: libparted/disk.c:2415
+#: libparted/disk.c:2411
+msgid "chromeos_kernel"
+msgstr ""
+
+#: libparted/disk.c:2413
+#, fuzzy
+msgid "bls_boot"
+msgstr "pmbr_boot"
+
+#: libparted/disk.c:2419
 #, c-format
 msgid "Unknown partition flag, %d."
 msgstr "不明的分割區旗標,%d。"
 
-#: libparted/exception.c:78
+#: libparted/exception.c:79
 msgid "Information"
 msgstr "資訊"
 
-#: libparted/exception.c:79
+#: libparted/exception.c:80
 msgid "Warning"
 msgstr "警告"
 
-#: libparted/exception.c:80
+#: libparted/exception.c:81
 msgid "Error"
 msgstr "錯誤"
 
-#: libparted/exception.c:81
+#: libparted/exception.c:82
 msgid "Fatal"
 msgstr "致命錯誤"
 
-#: libparted/exception.c:82
+#: libparted/exception.c:83
 msgid "Bug"
 msgstr "臭蟲"
 
-#: libparted/exception.c:83
+#: libparted/exception.c:84
 msgid "No Implementation"
 msgstr "未實作"
 
-#: libparted/exception.c:87
+#: libparted/exception.c:88
 msgid "Fix"
 msgstr "修正"
 
-#: libparted/exception.c:88
+#: libparted/exception.c:89
 msgid "Yes"
 msgstr "是"
 
-#: libparted/exception.c:89
+#: libparted/exception.c:90
 msgid "No"
 msgstr "否"
 
-#: libparted/exception.c:90
+#: libparted/exception.c:91
 msgid "OK"
 msgstr "確認"
 
-#: libparted/exception.c:91
+#: libparted/exception.c:92
 msgid "Retry"
 msgstr "重試"
 
-#: libparted/exception.c:92
+#: libparted/exception.c:93
 msgid "Ignore"
 msgstr "忽略"
 
-#: libparted/exception.c:93
+#: libparted/exception.c:94
 msgid "Cancel"
 msgstr "取消"
 
-#: libparted/exception.c:133
+#: libparted/exception.c:134
 #, c-format
 msgid ""
 "A bug has been detected in GNU Parted.  Refer to the web site of parted "
@@ -975,31 +937,31 @@ msgstr ""
 "parted/parted.html 以獲得更多有關提交錯誤報告的有用資訊!請發送給 %s 至少含有"
 "版本 (%s) 和以下資訊的錯誤報告: "
 
-#: libparted/labels/aix.c:91
+#: libparted/labels/aix.c:92
 msgid "Support for reading AIX disk labels is is not implemented yet."
 msgstr "尚未實作支援讀取 AIX 磁碟標籤。"
 
-#: libparted/labels/aix.c:102
+#: libparted/labels/aix.c:103
 msgid "Support for writing AIX disk labels is is not implemented yet."
 msgstr "尚未實作支援寫入 AIX 磁碟標籤。"
 
-#: libparted/labels/aix.c:115
+#: libparted/labels/aix.c:116
 msgid ""
 "Support for adding partitions to AIX disk labels is not implemented yet."
 msgstr "尚未實作支援加入分割區到 AIX 磁碟標籤。"
 
-#: libparted/labels/aix.c:125
+#: libparted/labels/aix.c:126
 msgid ""
 "Support for duplicating partitions in AIX disk labels is not implemented yet."
 msgstr "尚未實作支援在 AIX 磁碟標籤中重製分割區。"
 
-#: libparted/labels/aix.c:143
+#: libparted/labels/aix.c:144
 msgid ""
 "Support for setting system type of partitions in AIX disk labels is not "
 "implemented yet."
 msgstr "尚未實作支援在 AIX 磁碟標籤中設定分割區的系統類型。"
 
-#: libparted/labels/aix.c:153
+#: libparted/labels/aix.c:154
 msgid "Support for setting flags in AIX disk labels is not implemented yet."
 msgstr "尚未實作支援在 AIX 磁碟標籤中設定旗標。"
 
@@ -1086,11 +1048,11 @@ msgid ""
 "partitions, if XGM is the first one it counts for two)."
 msgstr ""
 
-#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:567
-#: libparted/labels/dasd.c:894 libparted/labels/dos.c:2276
-#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2050
-#: libparted/labels/loop.c:243 libparted/labels/mac.c:1423
-#: libparted/labels/pc98.c:701 libparted/labels/rdb.c:1054
+#: libparted/labels/atari.c:1657 libparted/labels/bsd.c:563
+#: libparted/labels/dasd.c:895 libparted/labels/dos.c:2283
+#: libparted/labels/dvh.c:770 libparted/labels/gpt.c:2140
+#: libparted/labels/loop.c:244 libparted/labels/mac.c:1409
+#: libparted/labels/pc98.c:697 libparted/labels/rdb.c:1054
 #: libparted/labels/sun.c:781
 msgid "Unable to satisfy all constraints on the partition."
 msgstr "無法滿足分割區的所有限制。"
@@ -1106,42 +1068,42 @@ msgstr ""
 msgid "Unable to allocate a partition number."
 msgstr "無法定位分割區編號。"
 
-#: libparted/labels/bsd.c:592
+#: libparted/labels/bsd.c:588
 msgid "Unable to allocate a bsd disklabel slot."
 msgstr "無法定位 bsd 磁碟標籤槽。"
 
-#: libparted/labels/dasd.c:625
+#: libparted/labels/dasd.c:626
 msgid "The partition table of DASD-LDL device cannot be changed.\n"
 msgstr ""
 
-#: libparted/labels/dasd.c:920
+#: libparted/labels/dasd.c:921
 msgid "Unable to allocate a dasd disklabel slot"
 msgstr "無法配置 dasd 磁碟標籤槽"
 
-#: libparted/labels/dos.c:1003
+#: libparted/labels/dos.c:1006
 #, c-format
 msgid "Invalid partition table on %s -- wrong signature %x."
 msgstr "%s 上的分割區表無效 - 錯誤的簽名 %x。"
 
-#: libparted/labels/dos.c:1031
+#: libparted/labels/dos.c:1034
 #, c-format
 msgid "Invalid partition table - recursive partition on %s."
 msgstr "無效的分割區表 - %s 出現遞迴分割區。"
 
-#: libparted/labels/dos.c:1560
+#: libparted/labels/dos.c:1557
 msgid "Extended partitions cannot be hidden on msdos disk labels."
 msgstr "擴充分割區無法隱藏於 msdos 磁碟標籤之上。"
 
-#: libparted/labels/dos.c:1572
+#: libparted/labels/dos.c:1569
 #, fuzzy
 msgid "Extended partitions cannot be recovery partitions on msdos disk labels."
 msgstr "擴充分割區無法隱藏於 msdos 磁碟標籤之上。"
 
-#: libparted/labels/dos.c:2258
+#: libparted/labels/dos.c:2265
 msgid "Parted can't resize partitions managed by Windows Dynamic Disk."
 msgstr "Parted 無法改變由「視窗動態磁碟」所管理的分割區大小。"
 
-#: libparted/labels/dos.c:2514
+#: libparted/labels/dos.c:2521
 msgid "cannot create any more partitions"
 msgstr "無法再建立任何分割區"
 
@@ -1282,11 +1244,11 @@ msgstr "無法取回區塊大小資訊。"
 msgid "Disk geometry does not match a DASD device of type 3390."
 msgstr ""
 
-#: libparted/labels/gpt.c:531
+#: libparted/labels/gpt.c:541
 msgid "device is too small for GPT"
 msgstr "裝置太小不適用 GPT"
 
-#: libparted/labels/gpt.c:733
+#: libparted/labels/gpt.c:743
 #, c-format
 msgid ""
 "The format of the GPT partition table is version %x, which is newer than "
@@ -1294,7 +1256,7 @@ msgid ""
 msgstr ""
 "GPT 分割區表的格式版本為 %x,它比 Parted 所能辨識的版本要新。請回報這個狀況!"
 
-#: libparted/labels/gpt.c:769
+#: libparted/labels/gpt.c:779
 #, c-format
 msgid ""
 "Not all of the space available to %s appears to be used, you can fix the GPT "
@@ -1304,7 +1266,7 @@ msgstr ""
 "並非使用了所有可用於 %s 的空間,您可以修正 GPT 以使用所有的空間 (額外的 %llu "
 "區塊),或是繼續使用目前的設定?"
 
-#: libparted/labels/gpt.c:1008
+#: libparted/labels/gpt.c:1024
 msgid ""
 "The backup GPT table is not at the end of the disk, as it should be.  Fix, "
 "by moving the backup to the end (and removing the old backup)?"
@@ -1312,7 +1274,7 @@ msgstr ""
 "備份 GPT 表不像應該的那樣出現在磁碟的末尾。經由將備份移動到末尾 (並刪除舊備"
 "份) 來修正它?"
 
-#: libparted/labels/gpt.c:1026
+#: libparted/labels/gpt.c:1042
 msgid ""
 "Both the primary and backup GPT tables are corrupt.  Try making a fresh "
 "table, and using Parted's rescue feature to recover partitions."
@@ -1320,23 +1282,23 @@ msgstr ""
 "主 GPT 和備份 GPT 都損壞了。現在試圖建立新表,並使用 Parted 的回覆功能以重建"
 "分割區表。"
 
-#: libparted/labels/gpt.c:1037
+#: libparted/labels/gpt.c:1053
 msgid ""
 "The backup GPT table is corrupt, but the primary appears OK, so that will be "
 "used."
 msgstr "GPT 備份表損壞,但是主表似乎是正確的,所以將會使用它。"
 
-#: libparted/labels/gpt.c:1049
+#: libparted/labels/gpt.c:1065
 msgid ""
 "The primary GPT table is corrupt, but the backup appears OK, so that will be "
 "used."
 msgstr "主 GPT 表損壞,但備份似乎是正確的,所以將會使用它。"
 
-#: libparted/labels/gpt.c:1073
+#: libparted/labels/gpt.c:1089
 msgid "primary partition table array CRC mismatch"
 msgstr "主分割表的陣列循環冗餘檢查不符合"
 
-#: libparted/labels/gpt.c:1936 libparted/labels/gpt.c:1963
+#: libparted/labels/gpt.c:2026 libparted/labels/gpt.c:2053
 msgid "failed to translate partition name"
 msgstr "無法翻譯分割區名稱。"
 
@@ -1369,68 +1331,64 @@ msgid "The data region doesn't start at the start of the partition."
 msgstr "資料區並未從分割區的起點開始。"
 
 #: libparted/labels/mac.c:572
-msgid "The boot region doesn't start at the start of the partition."
-msgstr "啟動區域並未從分割區的起點開始。"
-
-#: libparted/labels/mac.c:586
 msgid "The partition's boot region doesn't occupy the entire partition."
 msgstr "分割區的啟動區域並未佔用整個分割區。"
 
-#: libparted/labels/mac.c:597
+#: libparted/labels/mac.c:583
 msgid "The partition's data region doesn't occupy the entire partition."
 msgstr "分割區的資料區域並未佔用整個分割區。"
 
-#: libparted/labels/mac.c:649
+#: libparted/labels/mac.c:635
 #, c-format
 msgid ""
 "Weird block size on device descriptor: %d bytes is not divisible by 512."
 msgstr "裝置描述中出現怪異的區塊大小:%d 位元組不能被 512 整除。"
 
-#: libparted/labels/mac.c:662
+#: libparted/labels/mac.c:648
 #, c-format
 msgid ""
 "The driver descriptor says the physical block size is %d bytes, but Linux "
 "says it is %d bytes."
 msgstr "磁碟描述表明物理區塊大小為 %d 位元組,但 Linux 認為它是 %d 位元組。"
 
-#: libparted/labels/mac.c:715
+#: libparted/labels/mac.c:701
 msgid "No valid partition map found."
 msgstr "找不到有效的分割區映射。"
 
-#: libparted/labels/mac.c:789
+#: libparted/labels/mac.c:775
 #, c-format
 msgid ""
 "Conflicting partition map entry sizes!  Entry 1 says it is %d, but entry %d "
 "says it is %d!"
 msgstr "分割區映射條目大小發生衝突!條目 1 說它是 %d,但條目 %d 說它是 %d!"
 
-#: libparted/labels/mac.c:820
+#: libparted/labels/mac.c:806
 msgid "Weird!  There are 2 partitions map entries!"
 msgstr "奇怪!兩個分割區映射條目!"
 
-#: libparted/labels/mac.c:1359
+#: libparted/labels/mac.c:1345
 msgid ""
 "Changing the name of a root or swap partition will prevent Linux from "
 "recognising it as such."
 msgstr "改變根分割區或交換分割區的名稱將導致 Linux 無法辨識它。"
 
-#: libparted/labels/mac.c:1458
+#: libparted/labels/mac.c:1444
 msgid "Can't add another partition -- the partition map is too small!"
 msgstr "無法新增另一個分割區 -- 分割區映射過小!"
 
-#: libparted/labels/pc98.c:284
+#: libparted/labels/pc98.c:285
 #, c-format
 msgid "Invalid partition table on %s."
 msgstr "%s 的分割區表無效。"
 
-#: libparted/labels/pc98.c:337 libparted/labels/pc98.c:415
+#: libparted/labels/pc98.c:338 libparted/labels/pc98.c:416
 #, c-format
 msgid ""
 "Partition %d isn't aligned to cylinder boundaries.  This is still "
 "unsupported."
 msgstr "分割區 %d 並未對齊到磁柱邊界。此功能仍然尚未被支援。"
 
-#: libparted/labels/pc98.c:733
+#: libparted/labels/pc98.c:729
 msgid "Can't add another partition."
 msgstr "無法新增其它分割區。"
 
@@ -1601,39 +1559,39 @@ msgstr "無法寫入 VTOC FMT7 DSCB。"
 msgid "Could not write VTOC FMT9 DSCB."
 msgstr "無法寫入 VTOC FMT9 DSCB。"
 
-#: libparted/libparted.c:242
+#: libparted/libparted.c:247
 msgid "Out of memory."
 msgstr "記憶體耗盡。"
 
-#: libparted/unit.c:139
+#: libparted/unit.c:140
 msgid "Cannot get unit size for special unit 'COMPACT'."
 msgstr "無法獲得特殊單位「COMPACT」所用的大小。"
 
-#: libparted/unit.c:385
+#: libparted/unit.c:386
 #, c-format
 msgid "\"%s\" has invalid syntax for locations."
 msgstr "定位「%s」時語法無效。"
 
-#: libparted/unit.c:393
+#: libparted/unit.c:394
 #, c-format
 msgid "The maximum head value is %d."
 msgstr "磁頭數量的最大值為 %d。"
 
-#: libparted/unit.c:400
+#: libparted/unit.c:401
 #, c-format
 msgid "The maximum sector value is %d."
 msgstr "磁區數量的最大值為 %d。"
 
-#: libparted/unit.c:412 libparted/unit.c:564
+#: libparted/unit.c:413 libparted/unit.c:565
 #, c-format
 msgid "The location %s is outside of the device %s."
 msgstr "位置 %s 超出裝置 %s 的範圍。"
 
-#: libparted/unit.c:526
+#: libparted/unit.c:527
 msgid "Invalid number."
 msgstr "無效的編號。"
 
-#: libparted/unit.c:532
+#: libparted/unit.c:533
 msgid "Use a smaller unit instead of a value < 1"
 msgstr "使用較小單位以代替值 < 1"
 
@@ -1643,18 +1601,18 @@ msgstr "使用較小單位以代替值 < 1"
 msgid "%s : Failed to allocate partition block\n"
 msgstr "%s:配置分割區區塊時失敗\n"
 
-#: libparted/fs/amiga/affs.c:79 libparted/fs/amiga/apfs.c:71
+#: libparted/fs/amiga/affs.c:78 libparted/fs/amiga/apfs.c:71
 #: libparted/fs/amiga/asfs.c:84
 #, c-format
 msgid "%s : Failed to allocate block\n"
 msgstr "%s:配置區塊時失敗\n"
 
-#: libparted/fs/amiga/affs.c:84 libparted/fs/amiga/apfs.c:76
+#: libparted/fs/amiga/affs.c:83 libparted/fs/amiga/apfs.c:76
 #, c-format
 msgid "%s : Couldn't read boot block %llu\n"
 msgstr "%s:無法讀取啟動區塊 %llu\n"
 
-#: libparted/fs/amiga/affs.c:98 libparted/fs/amiga/apfs.c:87
+#: libparted/fs/amiga/affs.c:97 libparted/fs/amiga/apfs.c:87
 #: libparted/fs/amiga/asfs.c:90 libparted/fs/amiga/asfs.c:104
 #, c-format
 msgid "%s : Couldn't read root block %llu\n"
@@ -1680,22 +1638,22 @@ msgstr "%s:區塊 %llu 的類型 %s 有不當的總和檢查值\n"
 msgid "%s : Couldn't write block %d\n"
 msgstr "%s:無法寫入區塊 %d\n"
 
-#: libparted/fs/amiga/amiga.c:278
+#: libparted/fs/amiga/amiga.c:279
 #, c-format
 msgid "%s : Failed to allocate disk_specific rdb block\n"
 msgstr "%s:配置磁碟特定的 rdb 區塊時失敗\n"
 
-#: libparted/fs/amiga/amiga.c:289
+#: libparted/fs/amiga/amiga.c:290
 #, c-format
 msgid "%s : Didn't find rdb block, should never happen\n"
 msgstr "%s:無法找到 rdb 區塊,這不應該發生\n"
 
-#: libparted/fs/amiga/amiga.c:318
+#: libparted/fs/amiga/amiga.c:319
 #, c-format
 msgid "%s : Failed to read partition block %llu\n"
 msgstr "%s:讀取分割區區塊 %llu 時失敗\n"
 
-#: libparted/fs/fat/fat.c:148 libparted/fs/r/fat/fat.c:811
+#: libparted/fs/fat/fat.c:149
 msgid ""
 "GNU Parted was miscompiled: the FAT boot sector should be 512 bytes.  FAT "
 "support will be disabled."
@@ -1782,7 +1740,7 @@ msgstr ""
 "為 (%d, %d, %d)。如果您選擇忽略,檔案系統的 CHS 幾何結構將會保留不變。如果您"
 "選擇修復,檔案系統的 CHS 幾何結構將會被設定以符合分割區表的 CHS 幾何結構。"
 
-#: libparted/fs/r/fat/bootsector.c:399
+#: libparted/fs/r/fat/bootsector.c:398
 #, c-format
 msgid ""
 "The information sector has the wrong signature (%x).  Select cancel for now, "
@@ -1805,19 +1763,19 @@ msgid ""
 "Cluster start delta = %d, which is not a multiple of the cluster size %d."
 msgstr "磁簇起點 delta = %d,它並非磁簇大小 %d 的倍數。"
 
-#: libparted/fs/r/fat/count.c:144
+#: libparted/fs/r/fat/count.c:84
 #, c-format
 msgid "Bad directory entry for %s: first cluster is the end of file marker."
 msgstr "%s 有不當的目錄條目:第一個磁簇是檔案標記的結尾。"
 
-#: libparted/fs/r/fat/count.c:157
+#: libparted/fs/r/fat/count.c:97
 #, c-format
 msgid ""
 "Bad FAT: unterminated chain for %s.  You should run dosfsck or scandisk."
 msgstr ""
 "不當的 FAT 分割表:%s 有未終結的連結。 您應該執行 dosfsck 或 scandisk。"
 
-#: libparted/fs/r/fat/count.c:166
+#: libparted/fs/r/fat/count.c:106
 #, c-format
 msgid ""
 "Bad FAT: cluster %d outside file system in chain for %s.  You should run "
@@ -1826,7 +1784,7 @@ msgstr ""
 "不當的 FAT 分割表:%2$s 的連結中有磁簇 %1$d 位於檔案系統之外。 您應該執行 "
 "dosfsck 或 scandisk。"
 
-#: libparted/fs/r/fat/count.c:176
+#: libparted/fs/r/fat/count.c:116
 #, c-format
 msgid ""
 "Bad FAT: cluster %d is cross-linked for %s.  You should run dosfsck or "
@@ -1835,24 +1793,17 @@ msgstr ""
 "不當的 FAT 分割表:%2$s 有磁簇 %1$d 被交叉連結。 您應該執行 dosfsck 或 "
 "scandisk。"
 
-#: libparted/fs/r/fat/count.c:195
+#: libparted/fs/r/fat/count.c:135
 #, c-format
 msgid "%s is %dk, but it has %d clusters (%dk)."
 msgstr "%s 是 %dk,但是它有 %d 個磁簇 (%dk)。"
 
-#: libparted/fs/r/fat/count.c:258
-#, c-format
-msgid ""
-"The file %s is marked as a system file.  This means moving it could cause "
-"some programs to stop working."
-msgstr "檔案 %s 被標記為系統檔案。 這表示移動它可能會造成某些程式停止作用。"
-
-#: libparted/fs/r/fat/fat.c:243
+#: libparted/fs/r/fat/fat.c:244
 #, c-format
 msgid "Partition too big/small for a %s file system."
 msgstr "對於 %s 檔案系統而言,分割區太大/太小。"
 
-#: libparted/fs/r/fat/fat.c:409
+#: libparted/fs/r/fat/fat.c:410
 msgid ""
 "The FATs don't match.  If you don't know what this means, then select "
 "cancel, run scandisk on the file system, and then come back."
@@ -1860,11 +1811,11 @@ msgstr ""
 "FAT 分割表不符合。 如果您不知道這表示什麼,就請選取取消、在檔案系統上執行 "
 "scandisk,然後回來。"
 
-#: libparted/fs/r/fat/fat.c:449
+#: libparted/fs/r/fat/fat.c:450
 msgid "There are no possible configurations for this FAT type."
 msgstr "對於這個 FAT 分割表類型沒有可能的組態。"
 
-#: libparted/fs/r/fat/fat.c:461
+#: libparted/fs/r/fat/fat.c:462
 #, c-format
 msgid ""
 "File system doesn't have expected sizes for Windows to like it.  Cluster "
@@ -1874,27 +1825,27 @@ msgstr ""
 "檔案系統不具有可讓 Windows 喜歡的預期大小。 磁簇大小是 %dk (預期為 %dk);磁簇"
 "數量是 %d (預期為 %d);FAT 分割表的大小是 %d 磁區 (預期為 %d)。"
 
-#: libparted/fs/r/fat/fat.c:484
+#: libparted/fs/r/fat/fat.c:485
 #, c-format
 msgid ""
 "File system is reporting the free space as %d clusters, not %d clusters."
 msgstr "檔案系統報告指出剩餘空間為 %d 磁簇,並非 %d 磁簇。"
 
-#: libparted/fs/r/fat/resize.c:158
+#: libparted/fs/r/fat/resize.c:159
 msgid ""
 "There's not enough room in the root directory for all of the files.  Either "
 "cancel, or ignore to lose the files."
 msgstr "在根目錄中空間不足以用於所有的檔案。 可選擇取消,或是忽略而遺失檔案。"
 
-#: libparted/fs/r/fat/resize.c:302
+#: libparted/fs/r/fat/resize.c:303
 msgid "Error writing to the root directory."
 msgstr "寫入根目錄時發生錯誤。"
 
-#: libparted/fs/r/fat/resize.c:495
+#: libparted/fs/r/fat/resize.c:479
 msgid "If you leave your file system as FAT16, then you will have no problems."
 msgstr "如果您保留檔案系統為 FAT16, 那麼將不會有問題。"
 
-#: libparted/fs/r/fat/resize.c:498
+#: libparted/fs/r/fat/resize.c:482
 msgid ""
 "If you convert to FAT16, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1904,13 +1855,13 @@ msgstr ""
 "Windows 的開機載入器。 如果您要這樣做,您應該查詢一下 Parted 手冊 (或是發行版"
 "手冊)。"
 
-#: libparted/fs/r/fat/resize.c:506
+#: libparted/fs/r/fat/resize.c:490
 msgid ""
 "If you leave your file system as FAT32, then you will not introduce any new "
 "problems."
 msgstr "如果您保留檔案系統為 FAT32, 那麼您將不會引入任何新問題。"
 
-#: libparted/fs/r/fat/resize.c:510
+#: libparted/fs/r/fat/resize.c:494
 msgid ""
 "If you convert to FAT32, and MS Windows is installed on this partition, then "
 "you must re-install the MS Windows boot loader.  If you want to do this, you "
@@ -1923,36 +1874,36 @@ msgstr ""
 "手冊)。 同時,轉換到 FAT32 將使得檔案系統無法讓 MS DOS、MS Windows 95a 和 MS "
 "Windows NT 讀取。"
 
-#: libparted/fs/r/fat/resize.c:524
+#: libparted/fs/r/fat/resize.c:508
 #, c-format
 msgid "%s  %s  %s"
 msgstr "%s  %s  %s"
 
-#: libparted/fs/r/fat/resize.c:525
+#: libparted/fs/r/fat/resize.c:509
 msgid "Would you like to use FAT32?"
 msgstr "您想要使用 FAT32 嗎?"
 
-#: libparted/fs/r/fat/resize.c:556 libparted/fs/r/fat/resize.c:572
+#: libparted/fs/r/fat/resize.c:540 libparted/fs/r/fat/resize.c:556
 #, c-format
 msgid "%s  %s"
 msgstr "%s  %s"
 
-#: libparted/fs/r/fat/resize.c:557
+#: libparted/fs/r/fat/resize.c:541
 msgid ""
 "The file system can only be resized to this size by converting to FAT16."
 msgstr "檔案系統只能藉由轉換到 FAT16 以調整為這樣的大小。"
 
-#: libparted/fs/r/fat/resize.c:573
+#: libparted/fs/r/fat/resize.c:557
 msgid ""
 "The file system can only be resized to this size by converting to FAT32."
 msgstr "檔案系統只能藉由轉換到 FAT32 以調整為這樣的大小。"
 
-#: libparted/fs/r/fat/resize.c:586
+#: libparted/fs/r/fat/resize.c:570
 msgid ""
 "GNU Parted cannot resize this partition to this size.  We're working on it!"
 msgstr "GNU Parted 無法調整這個分割區為這樣的大小。 我們正在努力中!"
 
-#: libparted/fs/r/fat/table.c:136
+#: libparted/fs/r/fat/table.c:137
 #, c-format
 msgid ""
 "FAT %d media %x doesn't match the boot sector's media %x.  You should "
@@ -1960,41 +1911,41 @@ msgid ""
 msgstr ""
 "FAT 分割表 %d 媒體 %x 並不符合開機磁區的媒體 %x。 您或許應該執行 scandisk。"
 
-#: libparted/fs/r/fat/table.c:268
+#: libparted/fs/r/fat/table.c:269
 #, c-format
 msgid "fat_table_set: cluster %ld outside file system"
 msgstr "fat_table_set:磁簇 %ld 位於檔案系統之外"
 
-#: libparted/fs/r/fat/table.c:300
+#: libparted/fs/r/fat/table.c:301
 #, c-format
 msgid "fat_table_get: cluster %ld outside file system"
 msgstr "fat_table_get:磁簇 %ld 位於檔案系統之外"
 
-#: libparted/fs/r/fat/table.c:342
+#: libparted/fs/r/fat/table.c:343
 msgid "fat_table_alloc_cluster: no free clusters"
 msgstr "fat_table_alloc_cluster:沒有可用的磁簇"
 
-#: libparted/fs/r/filesys.c:151
+#: libparted/fs/r/filesys.c:152
 msgid "Could not detect file system."
 msgstr "無法偵測檔案系統。"
 
-#: libparted/fs/r/filesys.c:158 libparted/fs/r/filesys.c:285
+#: libparted/fs/r/filesys.c:159 libparted/fs/r/filesys.c:284
 #, c-format
 msgid "resizing %s file systems is not supported"
 msgstr "不支援調整 %s 檔案系統大小"
 
-#: libparted/fs/r/filesys.c:170
+#: libparted/fs/r/filesys.c:171
 msgid "The file system is bigger than its volume!"
 msgstr "檔案系統大於所屬的磁碟區!"
 
-#: libparted/fs/r/hfs/advfs.c:121 libparted/fs/r/hfs/advfs_plus.c:121
-#: libparted/fs/r/hfs/reloc.c:413 libparted/fs/r/hfs/reloc.c:507
-#: libparted/fs/r/hfs/reloc_plus.c:538 libparted/fs/r/hfs/reloc_plus.c:656
-#: libparted/fs/r/hfs/reloc_plus.c:769
+#: libparted/fs/r/hfs/advfs.c:123 libparted/fs/r/hfs/advfs_plus.c:122
+#: libparted/fs/r/hfs/reloc.c:417 libparted/fs/r/hfs/reloc.c:513
+#: libparted/fs/r/hfs/reloc_plus.c:540 libparted/fs/r/hfs/reloc_plus.c:660
+#: libparted/fs/r/hfs/reloc_plus.c:774
 msgid "The file system contains errors."
 msgstr "檔案系統含有錯誤。"
 
-#: libparted/fs/r/hfs/advfs_plus.c:285
+#: libparted/fs/r/hfs/advfs_plus.c:287
 msgid "Bad blocks could not be read."
 msgstr "無法讀取不當的區塊。"
 
@@ -2056,88 +2007,88 @@ msgstr "找不到具有 CNID %2$X 的 HFS+ 檔案磁區 %1$lli。"
 msgid "Trying to write HFS+ file with CNID %X behind EOF."
 msgstr "嘗試寫入 EOF 之後具有 CNID %X 的 HFS+ 檔案。"
 
-#: libparted/fs/r/hfs/hfs.c:232
+#: libparted/fs/r/hfs/hfs.c:212
 msgid "Sorry, HFS cannot be resized that way yet."
 msgstr "抱歉,HFS 尚無法以該種方式調整大小。"
 
-#: libparted/fs/r/hfs/hfs.c:250 libparted/fs/r/hfs/hfs.c:629
+#: libparted/fs/r/hfs/hfs.c:230 libparted/fs/r/hfs/hfs.c:573
 msgid "shrinking"
 msgstr "收縮"
 
-#: libparted/fs/r/hfs/hfs.c:262 libparted/fs/r/hfs/hfs.c:641
+#: libparted/fs/r/hfs/hfs.c:242 libparted/fs/r/hfs/hfs.c:585
 msgid "Data relocation has failed."
 msgstr "資料重定址已失敗。"
 
-#: libparted/fs/r/hfs/hfs.c:281
+#: libparted/fs/r/hfs/hfs.c:261
 msgid "Data relocation left some data in the end of the volume."
 msgstr "資料重定址在磁碟區末端留下一些資料。"
 
-#: libparted/fs/r/hfs/hfs.c:320
+#: libparted/fs/r/hfs/hfs.c:300
 msgid "writing HFS Master Directory Block"
 msgstr "寫入 HFS 主目錄區塊"
 
-#: libparted/fs/r/hfs/hfs.c:468
+#: libparted/fs/r/hfs/hfs.c:412
 msgid "No valid HFS[+X] signature has been found while opening."
 msgstr "開啟時找不到任何有效的 HFS[+X] 簽名。"
 
-#: libparted/fs/r/hfs/hfs.c:478
+#: libparted/fs/r/hfs/hfs.c:422
 #, c-format
 msgid "Version %d of HFS+ isn't supported."
 msgstr "不支援 HFS+ 的版本 %d。"
 
-#: libparted/fs/r/hfs/hfs.c:489
+#: libparted/fs/r/hfs/hfs.c:433
 #, c-format
 msgid "Version %d of HFSX isn't supported."
 msgstr "不支援 HFSX 的版本 %d。"
 
-#: libparted/fs/r/hfs/hfs.c:672
+#: libparted/fs/r/hfs/hfs.c:616
 msgid "Data relocation left some data at the end of the volume."
 msgstr "資料重定址在磁碟區末端留下一些資料。"
 
-#: libparted/fs/r/hfs/hfs.c:720
+#: libparted/fs/r/hfs/hfs.c:664
 msgid "Error while writing the allocation file."
 msgstr "寫入配額檔案時發生錯誤。"
 
-#: libparted/fs/r/hfs/hfs.c:735
+#: libparted/fs/r/hfs/hfs.c:679
 msgid "Error while writing the compatibility part of the allocation file."
 msgstr "寫入配額檔案的相容部分時發生錯誤。"
 
-#: libparted/fs/r/hfs/hfs.c:750
+#: libparted/fs/r/hfs/hfs.c:694
 msgid "writing HFS+ Volume Header"
 msgstr "寫入 HFS+ 磁碟區標頭"
 
-#: libparted/fs/r/hfs/hfs.c:850
+#: libparted/fs/r/hfs/hfs.c:794
 msgid "An error occurred while looking for the mandatory bad blocks file."
 msgstr "找尋必要的不當區塊檔案時發生了錯誤。"
 
-#: libparted/fs/r/hfs/hfs.c:904
+#: libparted/fs/r/hfs/hfs.c:847
 msgid ""
 "It seems there is an error in the HFS wrapper: the bad blocks file doesn't "
 "contain the embedded HFS+ volume."
 msgstr ""
 "在 HFS 包裝程式中似乎出現錯誤:不當區塊檔案並未包含嵌入式 HFS+ 磁碟區。"
 
-#: libparted/fs/r/hfs/hfs.c:940
+#: libparted/fs/r/hfs/hfs.c:883
 msgid "Sorry, HFS+ cannot be resized that way yet."
 msgstr "抱歉,HFS+ 尚無法以該種方式調整大小。"
 
-#: libparted/fs/r/hfs/hfs.c:975
+#: libparted/fs/r/hfs/hfs.c:918
 msgid "shrinking embedded HFS+ volume"
 msgstr "收縮嵌入式 HFS+ 磁碟區"
 
-#: libparted/fs/r/hfs/hfs.c:992
+#: libparted/fs/r/hfs/hfs.c:935
 msgid "Resizing the HFS+ volume has failed."
 msgstr "調整 HFS+ 磁碟區大小已失敗。"
 
-#: libparted/fs/r/hfs/hfs.c:999
+#: libparted/fs/r/hfs/hfs.c:942
 msgid "shrinking HFS wrapper"
 msgstr "收縮 HFS 包裝程式"
 
-#: libparted/fs/r/hfs/hfs.c:1008
+#: libparted/fs/r/hfs/hfs.c:951
 msgid "Updating the HFS wrapper has failed."
 msgstr "更新 HFS 包裝程式已失敗。"
 
-#: libparted/fs/r/hfs/hfs.c:1110 libparted/fs/r/hfs/hfs.c:1195
+#: libparted/fs/r/hfs/hfs.c:1053 libparted/fs/r/hfs/hfs.c:1138
 #, c-format
 msgid ""
 "This is not a real %s check.  This is going to extract special low level "
@@ -2206,71 +2157,71 @@ msgstr "重播日誌時,磁碟區標頭或主目錄區塊已變更。 您應
 msgid "An extent has not been relocated."
 msgstr "延伸未被重定址。"
 
-#: libparted/fs/r/hfs/reloc.c:250 libparted/fs/r/hfs/reloc_plus.c:307
+#: libparted/fs/r/hfs/reloc.c:251 libparted/fs/r/hfs/reloc_plus.c:307
 msgid ""
 "A reference to an extent comes from a place it should not.  You should check "
 "the file system!"
 msgstr "對於一個延伸有它不應該來自的參考地方。 您應該檢查一下檔案系統!"
 
-#: libparted/fs/r/hfs/reloc.c:380
+#: libparted/fs/r/hfs/reloc.c:382
 msgid "This HFS volume has no catalog file.  This is very unusual!"
 msgstr "這個 HFS 磁碟區沒有任何類別檔。 這是很不尋常的!"
 
-#: libparted/fs/r/hfs/reloc.c:474
+#: libparted/fs/r/hfs/reloc.c:479
 msgid "This HFS volume has no extents overflow file.  This is quite unusual!"
 msgstr "這個 HFS 磁碟區沒有任何延伸溢位檔案。 這是相當不尋常的!"
 
-#: libparted/fs/r/hfs/reloc.c:516 libparted/fs/r/hfs/reloc_plus.c:666
+#: libparted/fs/r/hfs/reloc.c:522 libparted/fs/r/hfs/reloc_plus.c:670
 msgid ""
 "The extents overflow file should not contain its own extents!  You should "
 "check the file system."
 msgstr "延伸溢位檔案不應該包含其本身的延伸! 您應該檢查一下檔案系統。"
 
-#: libparted/fs/r/hfs/reloc.c:573 libparted/fs/r/hfs/reloc_plus.c:844
+#: libparted/fs/r/hfs/reloc.c:579 libparted/fs/r/hfs/reloc_plus.c:849
 msgid "Could not cache the file system in memory."
 msgstr "無法將檔案系統快取在記憶體中。"
 
-#: libparted/fs/r/hfs/reloc.c:634 libparted/fs/r/hfs/reloc_plus.c:905
+#: libparted/fs/r/hfs/reloc.c:640 libparted/fs/r/hfs/reloc_plus.c:910
 msgid "Bad blocks list could not be loaded."
 msgstr "無法載入不當區塊清單。"
 
-#: libparted/fs/r/hfs/reloc.c:648 libparted/fs/r/hfs/reloc_plus.c:921
+#: libparted/fs/r/hfs/reloc.c:654 libparted/fs/r/hfs/reloc_plus.c:926
 msgid "An error occurred during extent relocation."
 msgstr "在延伸重定址的期間發生了錯誤。"
 
-#: libparted/fs/r/hfs/reloc_plus.c:494
+#: libparted/fs/r/hfs/reloc_plus.c:495
 msgid "This HFS+ volume has no catalog file.  This is very unusual!"
 msgstr "這個 HFS+ 磁碟區沒有任何類別檔。 這是很不尋常的!"
 
-#: libparted/fs/r/hfs/reloc_plus.c:617
+#: libparted/fs/r/hfs/reloc_plus.c:620
 msgid "This HFS+ volume has no extents overflow file.  This is quite unusual!"
 msgstr "這個 HFS+ 磁碟區沒有任何延伸溢位檔案。 這是相當不尋常的!"
 
-#: parted/parted.c:125
+#: parted/parted.c:126
 msgid "displays this help message"
 msgstr "顯示此求助資訊"
 
-#: parted/parted.c:126
+#: parted/parted.c:127
 msgid "lists partition layout on all block devices"
 msgstr "列出所有區段裝置的分割區配置"
 
-#: parted/parted.c:127
+#: parted/parted.c:128
 msgid "displays machine parseable output"
 msgstr "顯示機器可解析的輸出"
 
-#: parted/parted.c:128
+#: parted/parted.c:129
 msgid "never prompts for user intervention"
 msgstr "從不提示使用者介入"
 
-#: parted/parted.c:129
+#: parted/parted.c:130
 msgid "displays the version"
 msgstr "顯示版本"
 
-#: parted/parted.c:130
+#: parted/parted.c:131
 msgid "alignment for new partitions"
 msgstr "新分割區的對齊類型"
 
-#: parted/parted.c:142
+#: parted/parted.c:143
 msgid ""
 "NUMBER is the partition number used by Linux.  On MS-DOS disk labels, the "
 "primary partitions number from 1 to 4, logical partitions from 5 onwards.\n"
@@ -2278,31 +2229,31 @@ msgstr ""
 "NUMBER 是 Linux 使用的分割區編號。在 MS-DOS 磁碟標籤中,主分割區編號為 1 - "
 "4,邏輯分割區從 5 開始。\n"
 
-#: parted/parted.c:145
+#: parted/parted.c:146
 msgid "LABEL-TYPE is one of: "
 msgstr "LABEL-TYPE 是以下任意一項:"
 
-#: parted/parted.c:146 parted/parted.c:147
+#: parted/parted.c:147 parted/parted.c:148
 msgid "FLAG is one of: "
 msgstr "FLAG 是以下任意一項:"
 
-#: parted/parted.c:148
+#: parted/parted.c:149
 msgid "UNIT is one of: "
 msgstr "UNIT 是以下任意一項:"
 
-#: parted/parted.c:149
+#: parted/parted.c:150
 msgid "desired alignment: minimum or optimal"
 msgstr "設想的對齊:最小或最佳化"
 
-#: parted/parted.c:150
+#: parted/parted.c:151
 msgid "PART-TYPE is one of: primary, logical, extended\n"
 msgstr "PART-TYPE 是主分割區、邏輯分割區、擴充分割區之一\n"
 
-#: parted/parted.c:152
+#: parted/parted.c:153
 msgid "FS-TYPE is one of: "
 msgstr "FS-TYPE 是以下任意一項:"
 
-#: parted/parted.c:153
+#: parted/parted.c:154
 msgid ""
 "START and END are disk locations, such as 4GB or 10%.  Negative values count "
 "from the end of the disk.  For example, -1s specifies exactly the last "
@@ -2311,7 +2262,7 @@ msgstr ""
 "START 和 END 是磁碟用量,像是 4GB 或 10%。負數值則是從磁碟末端起算。例"
 "如,-1s 指定最後一個磁區。\n"
 
-#: parted/parted.c:156
+#: parted/parted.c:157
 msgid ""
 "END is disk location, such as 4GB or 10%.  Negative value counts from the "
 "end of the disk.  For example, -1s specifies exactly the last sector.\n"
@@ -2319,19 +2270,19 @@ msgstr ""
 "END 是磁碟用量,像是 4GB 或 10%。負數值則是從磁碟末端起算。例如,-1s 指定最後"
 "一個磁區。\n"
 
-#: parted/parted.c:159
+#: parted/parted.c:160
 msgid "STATE is one of: on, off\n"
 msgstr "STATE 為:開、關\n"
 
-#: parted/parted.c:160
+#: parted/parted.c:161
 msgid "DEVICE is usually /dev/hda or /dev/sda\n"
 msgstr "DEVICE 通常為 /dev/hda 或 /dev/sda\n"
 
-#: parted/parted.c:161
+#: parted/parted.c:162
 msgid "NAME is any word you want\n"
 msgstr "NAME 是您需要的任何單詞\n"
 
-#: parted/parted.c:164
+#: parted/parted.c:165
 msgid ""
 "Copyright (C) 1998 - 2006 Free Software Foundation, Inc.\n"
 "This program is free software, covered by the GNU General Public License.\n"
@@ -2351,22 +2302,22 @@ msgstr ""
 "GNU 通用公共授權。\n"
 "\n"
 
-#: parted/parted.c:212
+#: parted/parted.c:213
 #, c-format
 msgid "%0.f%%\t(time left %.2d:%.2d)"
 msgstr "%0.f%%\t(剩餘時間 %.2d:%.2d)"
 
-#: parted/parted.c:231
+#: parted/parted.c:232
 #, c-format
 msgid "Partition %s is being used. Are you sure you want to continue?"
 msgstr "正在使用分割區 %s。您確定要繼續嗎?"
 
-#: parted/parted.c:252
+#: parted/parted.c:253
 #, c-format
 msgid "Partition(s) on %s are being used."
 msgstr "正在使用 %s 上的分割區。"
 
-#: parted/parted.c:264
+#: parted/parted.c:265
 #, c-format
 msgid ""
 "The existing disk label on %s will be destroyed and all data on this disk "
@@ -2374,31 +2325,31 @@ msgid ""
 msgstr ""
 "現有 %s 上的磁碟標籤將被銷毀,而所有在這個磁碟上的資料將會失去。您要繼續嗎?"
 
-#: parted/parted.c:525
+#: parted/parted.c:526
 msgid "New disk label type?"
 msgstr "新的磁碟標籤類型?"
 
-#: parted/parted.c:662
+#: parted/parted.c:663
 msgid "Partition type?"
 msgstr "分割區類型?"
 
-#: parted/parted.c:680 parted/parted.c:884
+#: parted/parted.c:681 parted/parted.c:885
 msgid "Partition name?"
 msgstr "分割區名稱?"
 
-#: parted/parted.c:690
+#: parted/parted.c:691
 msgid "File system type?"
 msgstr "檔案系統類型?"
 
-#: parted/parted.c:695 parted/parted.c:1498
+#: parted/parted.c:696 parted/parted.c:1499
 msgid "Start?"
 msgstr "起點?"
 
-#: parted/parted.c:698 parted/parted.c:1500 parted/parted.c:1569
+#: parted/parted.c:699 parted/parted.c:1501 parted/parted.c:1585
 msgid "End?"
 msgstr "終點?"
 
-#: parted/parted.c:766
+#: parted/parted.c:767
 #, c-format
 msgid ""
 "You requested a partition from %s to %s (sectors %llu..%llu).\n"
@@ -2407,7 +2358,7 @@ msgstr ""
 "您要求將分割區從 %s 移動到 %s (磁區 %llu..%llu)。\n"
 "我們可以管理的最接近分割區是從 %s 到 %s (磁區 %llu..%llu).%s"
 
-#: parted/parted.c:775
+#: parted/parted.c:776
 msgid ""
 "\n"
 "Is this still acceptable to you?"
@@ -2415,93 +2366,93 @@ msgstr ""
 "\n"
 "這樣您還可以接受嗎?"
 
-#: parted/parted.c:798
+#: parted/parted.c:799
 #, fuzzy, c-format
 msgid ""
 "The resulting partition is not properly aligned for best performance: %s"
 msgstr "所產生的分割區沒有適當地對齊以獲得最佳效能。"
 
-#: parted/parted.c:800 parted/parted.c:1723
+#: parted/parted.c:801 parted/parted.c:1739
 msgid "unknown (malloc failed)"
 msgstr ""
 
-#: parted/parted.c:876
+#: parted/parted.c:877
 #, fuzzy, c-format
 msgid "%s disk labels do not support partition name."
 msgstr "%s 磁碟標籤不支援擴充分割區。"
 
-#: parted/parted.c:881 parted/parted.c:1561 parted/parted.c:1612
-#: parted/parted.c:1706 parted/parted.c:1781
+#: parted/parted.c:882 parted/parted.c:1564 parted/parted.c:1628
+#: parted/parted.c:1722 parted/parted.c:1797
 msgid "Partition number?"
 msgstr "分割區編號?"
 
-#: parted/parted.c:975
+#: parted/parted.c:976
 #, c-format
 msgid "BIOS cylinder,head,sector geometry: %d,%d,%d.  Each cylinder is %s.\n"
 msgstr "BIOS 的磁柱、磁頭、磁區幾何結構:%d,%d,%d。每圈磁柱是 %s。\n"
 
-#: parted/parted.c:1017
+#: parted/parted.c:1018
 #, c-format
 msgid "Model: %s (%s)\n"
 msgstr "型號:%s (%s)\n"
 
-#: parted/parted.c:1019
+#: parted/parted.c:1020
 #, c-format
 msgid "Disk %s: %s\n"
 msgstr "磁碟 %s:%s\n"
 
-#: parted/parted.c:1020
+#: parted/parted.c:1021
 #, c-format
 msgid "Sector size (logical/physical): %lldB/%lldB\n"
 msgstr "磁區大小 (邏輯/物理):%lldB/%lldB\n"
 
-#: parted/parted.c:1032
+#: parted/parted.c:1033
 #, c-format
 msgid "Partition Table: %s\n"
 msgstr "分割區:%s\n"
 
-#: parted/parted.c:1033
+#: parted/parted.c:1034
 #, c-format
 msgid "Disk Flags: %s\n"
 msgstr "磁碟旗標:%s\n"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Number"
 msgstr "編號"
 
-#: parted/parted.c:1153 parted/parted.c:1156
+#: parted/parted.c:1154 parted/parted.c:1157
 msgid "Start"
 msgstr "起點"
 
-#: parted/parted.c:1154 parted/parted.c:1157
+#: parted/parted.c:1155 parted/parted.c:1158
 msgid "End"
 msgstr "終點"
 
-#: parted/parted.c:1157
+#: parted/parted.c:1158
 msgid "Size"
 msgstr "大小"
 
-#: parted/parted.c:1161
+#: parted/parted.c:1162
 msgid "Type"
 msgstr "類型"
 
-#: parted/parted.c:1163
+#: parted/parted.c:1164
 msgid "File system"
 msgstr "檔案系統"
 
-#: parted/parted.c:1166
+#: parted/parted.c:1167
 msgid "Name"
 msgstr "名稱"
 
-#: parted/parted.c:1168
+#: parted/parted.c:1169
 msgid "Flags"
 msgstr "旗標"
 
-#: parted/parted.c:1225
+#: parted/parted.c:1226
 msgid "Free Space"
 msgstr "可用空間"
 
-#: parted/parted.c:1385
+#: parted/parted.c:1386
 #, c-format
 msgid ""
 "A %s %s partition was found at %s -> %s.  Do you want to add it to the "
@@ -2509,54 +2460,54 @@ msgid ""
 msgstr ""
 "在 %3$s -> %4$s 處找到一個 %1$s %2$s 分割區。您希望將其新增到分割表中嗎?"
 
-#: parted/parted.c:1428
+#: parted/parted.c:1429
 msgid "searching for file systems"
 msgstr "正在搜尋檔案系統"
 
-#: parted/parted.c:1535
+#: parted/parted.c:1536
 msgid "The resize command has been removed in parted 3.0"
 msgstr "resize 指令已自 parted 3.0 中移除"
 
-#: parted/parted.c:1583
+#: parted/parted.c:1599
 msgid ""
 "Shrinking a partition can cause data loss, are you sure you want to continue?"
 msgstr "收縮分割區可能會造成資料漏失,您確定要繼續嗎?"
 
-#: parted/parted.c:1636
+#: parted/parted.c:1652
 msgid "New device?"
 msgstr "新裝置?"
 
-#: parted/parted.c:1704
+#: parted/parted.c:1720
 msgid "alignment type(min/opt)"
 msgstr "對齊型態 (最小/最佳)"
 
-#: parted/parted.c:1719
+#: parted/parted.c:1735
 #, c-format
 msgid "%d aligned\n"
 msgstr "%d 已對齊\n"
 
-#: parted/parted.c:1721
+#: parted/parted.c:1737
 #, fuzzy, c-format
 msgid "%d not aligned: %s\n"
 msgstr "%d 未對齊\n"
 
-#: parted/parted.c:1746 parted/parted.c:1783
+#: parted/parted.c:1762 parted/parted.c:1799
 msgid "Flag to Invert?"
 msgstr "要反向的旗標?"
 
-#: parted/parted.c:1751 parted/parted.c:1788
+#: parted/parted.c:1767 parted/parted.c:1804
 msgid "New state?"
 msgstr "新狀態?"
 
-#: parted/parted.c:1834
+#: parted/parted.c:1850
 msgid "Unit?"
 msgstr "單位?"
 
-#: parted/parted.c:1969
+#: parted/parted.c:1985
 msgid "align-check"
 msgstr "align-check"
 
-#: parted/parted.c:1972
+#: parted/parted.c:1988
 #, fuzzy
 msgid ""
 "align-check TYPE N                       check partition N for TYPE(min|opt) "
@@ -2565,11 +2516,11 @@ msgstr ""
 "align-check 類型 N                       檢查分割區 N 是否為 最小/最佳(min|"
 "opt) 對齊類型"
 
-#: parted/parted.c:1980
+#: parted/parted.c:1996
 msgid "help"
 msgstr "help"
 
-#: parted/parted.c:1983
+#: parted/parted.c:1999
 msgid ""
 "help [COMMAND]                           print general help, or help on "
 "COMMAND"
@@ -2577,29 +2528,29 @@ msgstr ""
 "help [指令]                              印出一般求助資訊,或關於「指令」的資"
 "訊"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mklabel"
 msgstr "mklabel"
 
-#: parted/parted.c:1989
+#: parted/parted.c:2005
 msgid "mktable"
 msgstr "mktable"
 
-#: parted/parted.c:1992
+#: parted/parted.c:2008
 msgid ""
 "mklabel,mktable LABEL-TYPE               create a new disklabel (partition "
 "table)"
 msgstr "mklabel,mktable 標籤類型                 建立新的磁碟標籤 (分割區表)"
 
-#: parted/parted.c:1998
+#: parted/parted.c:2014
 msgid "mkpart"
 msgstr "mkpart"
 
-#: parted/parted.c:2001
+#: parted/parted.c:2017
 msgid "mkpart PART-TYPE [FS-TYPE] START END     make a partition"
 msgstr "mkpart 分割區 [檔案系統] 起點 終點   建立一個分割區"
 
-#: parted/parted.c:2007
+#: parted/parted.c:2023
 msgid ""
 "'mkpart' makes a partition without creating a new file system on the "
 "partition.  FS-TYPE may be specified to set an appropriate partition ID.\n"
@@ -2607,20 +2558,20 @@ msgstr ""
 "「mkpart」建立分割區而不在分割區上建立新檔案系統。「FS-TYPE」可以用於設定適當"
 "的分割區識別號碼。\n"
 
-#: parted/parted.c:2012
+#: parted/parted.c:2028
 msgid "name"
 msgstr "name"
 
-#: parted/parted.c:2015
+#: parted/parted.c:2031
 msgid "name NUMBER NAME                         name partition NUMBER as NAME"
 msgstr ""
 "name 編號 名稱                           將指定「編號」的分割區命名為「名稱」"
 
-#: parted/parted.c:2020
+#: parted/parted.c:2036
 msgid "print"
 msgstr "print"
 
-#: parted/parted.c:2023
+#: parted/parted.c:2039
 msgid ""
 "print [devices|free|list,all|NUMBER]     display the partition table, "
 "available devices, free space, all found partitions, or a particular "
@@ -2629,171 +2580,179 @@ msgstr ""
 "print [devices|free|list,all|數字]       顯示分割表、可用裝置、剩餘空間、所有"
 "分割區或特殊分割區"
 
-#: parted/parted.c:2028
+#: parted/parted.c:2044
 msgid ""
 "Without arguments, 'print' displays the entire partition table. However with "
 "the following arguments it performs various other actions.\n"
 msgstr ""
 "「print」不加引數可顯示整個分割區表。然而藉由下列引數它能執行各種其他動作。\n"
 
-#: parted/parted.c:2030
+#: parted/parted.c:2046
 msgid "  devices   : display all active block devices\n"
 msgstr "  devices  :顯示所有作用中區段裝置\n"
 
-#: parted/parted.c:2031
+#: parted/parted.c:2047
 msgid ""
 "  free      : display information about free unpartitioned space on the "
 "current block device\n"
 msgstr "  free     :顯示在目前區段裝置上未分配於分割區的可用空間資訊\n"
 
-#: parted/parted.c:2033
+#: parted/parted.c:2049
 msgid ""
 "  list, all : display the partition tables of all active block devices\n"
 msgstr "  list,all:顯示所有作用中區段裝置的分割區表\n"
 
-#: parted/parted.c:2034
+#: parted/parted.c:2050
 msgid ""
 "  NUMBER    : display more detailed information about this particular "
 "partition\n"
 msgstr "  數字   :顯示此一特殊分割區更詳細的資訊\n"
 
-#: parted/parted.c:2039
+#: parted/parted.c:2055
 msgid "quit"
 msgstr "quit"
 
-#: parted/parted.c:2042
+#: parted/parted.c:2058
 msgid "quit                                     exit program"
 msgstr "quit                                     離開程式"
 
-#: parted/parted.c:2047
+#: parted/parted.c:2063
 msgid "rescue"
 msgstr "rescue"
 
-#: parted/parted.c:2050
+#: parted/parted.c:2066
 msgid ""
 "rescue START END                         rescue a lost partition near START "
 "and END"
 msgstr ""
 "rescue 起點 終點                     挽救臨近「起點」、「終點」的遺失的分割區"
 
-#: parted/parted.c:2056
+#: parted/parted.c:2072
 msgid "resize"
 msgstr "resize"
 
-#: parted/parted.c:2059
+#: parted/parted.c:2075
 msgid "The resize command was removed in parted 3.0\n"
 msgstr "resize 指令已自 parted 3.0 中移除\n"
 
-#: parted/parted.c:2062
+#: parted/parted.c:2078
 msgid "resizepart"
 msgstr "resizepart"
 
-#: parted/parted.c:2065
+#: parted/parted.c:2081
 msgid "resizepart NUMBER END                    resize partition NUMBER"
 msgstr "resizepart 編號 終點                     變更指定「編號」的分割區大小"
 
-#: parted/parted.c:2070
+#: parted/parted.c:2086
 msgid "rm"
 msgstr "rm"
 
-#: parted/parted.c:2073
+#: parted/parted.c:2089
 msgid "rm NUMBER                                delete partition NUMBER"
 msgstr "rm 編號                                  刪除指定「編號」的分割區"
 
-#: parted/parted.c:2078
+#: parted/parted.c:2094
 msgid "select"
 msgstr "select"
 
-#: parted/parted.c:2081
+#: parted/parted.c:2097
 msgid "select DEVICE                            choose the device to edit"
 msgstr "select 裝置                              選擇要編輯的裝置"
 
-#: parted/parted.c:2086
+#: parted/parted.c:2102
 msgid "disk_set"
 msgstr "disk_set"
 
-#: parted/parted.c:2089
+#: parted/parted.c:2105
 msgid ""
 "disk_set FLAG STATE                      change the FLAG on selected device"
 msgstr "disk_set 旗標 狀態                       變更已選裝置上的旗標"
 
-#: parted/parted.c:2094
+#: parted/parted.c:2110
 msgid "disk_toggle"
 msgstr "disk_toggle"
 
-#: parted/parted.c:2097
+#: parted/parted.c:2113
 msgid ""
 "disk_toggle [FLAG]                       toggle the state of FLAG on "
 "selected device"
 msgstr "disk_toggle [旗標]                       切換已選裝置上的旗標狀態"
 
-#: parted/parted.c:2103
+#: parted/parted.c:2119
 msgid "set"
 msgstr "set"
 
-#: parted/parted.c:2106
+#: parted/parted.c:2122
 msgid ""
 "set NUMBER FLAG STATE                    change the FLAG on partition NUMBER"
 msgstr "set 編號 旗標 狀態                       改變指定「編號」分割區的旗標"
 
-#: parted/parted.c:2112
+#: parted/parted.c:2128
 msgid "toggle"
 msgstr "toggle"
 
-#: parted/parted.c:2115
+#: parted/parted.c:2131
 msgid ""
 "toggle [NUMBER [FLAG]]                   toggle the state of FLAG on "
 "partition NUMBER"
 msgstr ""
 "toggle [編號 [旗標]]                     切換「編號」分割區上的「旗標」狀態"
 
-#: parted/parted.c:2121
+#: parted/parted.c:2137
 msgid "unit"
 msgstr "unit"
 
-#: parted/parted.c:2124
+#: parted/parted.c:2140
 msgid "unit UNIT                                set the default unit to UNIT"
 msgstr "unit 單位                                設定預設的「單位」"
 
-#: parted/parted.c:2129
+#: parted/parted.c:2145
 msgid "version"
 msgstr "version"
 
-#: parted/parted.c:2132
+#: parted/parted.c:2148
 msgid ""
 "version                                  display the version number and "
 "copyright information of GNU Parted"
 msgstr ""
 "version                                  顯示目前 GNU Parted 的版本與版權資訊"
 
-#: parted/parted.c:2136
+#: parted/parted.c:2152
 msgid ""
 "'version' displays copyright and version information corresponding to this "
 "copy of GNU Parted\n"
 msgstr "version 依據此份 GNU Parted 顯示其版權與版本資訊\n"
 
-#: parted/parted.c:2204
+#: parted/parted.c:2220
 #, c-format
 msgid "Usage: %s [-hlmsv] [-a<align>] [DEVICE [COMMAND [PARAMETERS]]...]\n"
 msgstr "用法:%s [-hlmsv] [-a<align>] [裝置 [指令 [參數]]…]\n"
 
-#: parted/parted.c:2248
+#: parted/parted.c:2264
 msgid "No device found"
 msgstr "找不到裝置"
 
-#: parted/parted.c:2285
+#: parted/parted.c:2301
 msgid "WARNING: You are not superuser.  Watch out for permissions.\n"
 msgstr "警告:您不是系統管理者。 當心權限。\n"
 
-#: parted/parted.c:2325
+#: parted/parted.c:2334
+msgid ""
+"You should reinstall your boot loader before rebooting.  Read section 4 of "
+"the Parted User documentation for more information."
+msgstr ""
+"您應該在重新啟動之前重新安裝您的開機載入程式。詳情請閱讀 Parted 使用者文件的"
+"第四節。"
+
+#: parted/parted.c:2341
 msgid "You may need to update /etc/fstab.\n"
 msgstr "您也許會需要更新 /etc/fstab。\n"
 
-#: parted/ui.c:164
+#: parted/ui.c:165
 msgid "Welcome to GNU Parted! Type 'help' to view a list of commands.\n"
 msgstr "歡迎使用 GNU Parted!輸入 'help' 來檢視指令列表。\n"
 
-#: parted/ui.c:167
+#: parted/ui.c:168
 msgid ""
 "Usage: parted [OPTION]... [DEVICE [COMMAND [PARAMETERS]...]...]\n"
 "Apply COMMANDs with PARAMETERS to DEVICE.  If no COMMAND(s) are given, run "
@@ -2804,7 +2763,7 @@ msgstr ""
 "將帶有「參數」的「指令」應用於「裝置」。如果沒有指定「指令」,則以交談模式執"
 "行。\n"
 
-#: parted/ui.c:172
+#: parted/ui.c:173
 #, c-format
 msgid ""
 "\n"
@@ -2865,7 +2824,7 @@ msgstr ""
 "\n"
 "的輸出結果和其他您認為重要的設定資訊。\n"
 
-#: parted/ui.c:293
+#: parted/ui.c:294
 msgid ""
 "\n"
 "Command History:\n"
@@ -2873,7 +2832,7 @@ msgstr ""
 "\n"
 "指令歷史:\n"
 
-#: parted/ui.c:356
+#: parted/ui.c:357
 msgid ""
 "\n"
 "Error: SEGV_MAPERR (Address not mapped to object)\n"
@@ -2881,7 +2840,7 @@ msgstr ""
 "\n"
 "錯誤:SEGV_MAPERR (位址並未對應到物件)\n"
 
-#: parted/ui.c:362
+#: parted/ui.c:363
 msgid ""
 "\n"
 "Error: SEGV_ACCERR (Invalid permissions for mapped object)\n"
@@ -2889,7 +2848,7 @@ msgstr ""
 "\n"
 "錯誤:SEGV_ACCERR (對應的物件權限無效)\n"
 
-#: parted/ui.c:367
+#: parted/ui.c:368
 msgid ""
 "\n"
 "Error: A general SIGSEGV signal was encountered.\n"
@@ -2897,7 +2856,7 @@ msgstr ""
 "\n"
 "錯誤: 遇到一般的 SIGSEGV 訊號。\n"
 
-#: parted/ui.c:391
+#: parted/ui.c:392
 msgid ""
 "\n"
 "Error: FPE_INTDIV (Integer: divide by zero)"
@@ -2905,7 +2864,7 @@ msgstr ""
 "\n"
 "錯誤: FPE_INTDIV (整數: 被零除)"
 
-#: parted/ui.c:396
+#: parted/ui.c:397
 msgid ""
 "\n"
 "Error: FPE_INTOVF (Integer: overflow)"
@@ -2913,7 +2872,7 @@ msgstr ""
 "\n"
 "錯誤: FPE_INTOVF (整數: 向上溢位)"
 
-#: parted/ui.c:401
+#: parted/ui.c:402
 msgid ""
 "\n"
 "Error: FPE_FLTDIV (Float: divide by zero)"
@@ -2921,7 +2880,7 @@ msgstr ""
 "\n"
 "錯誤:FPE_FLTDIV (浮點數: 被零除)"
 
-#: parted/ui.c:406
+#: parted/ui.c:407
 msgid ""
 "\n"
 "Error: FPE_FLTOVF (Float: overflow)"
@@ -2929,7 +2888,7 @@ msgstr ""
 "\n"
 "錯誤: FPE_FLTOVF (浮點數: 向上溢位)"
 
-#: parted/ui.c:411
+#: parted/ui.c:412
 msgid ""
 "\n"
 "Error: FPE_FLTUND (Float: underflow)"
@@ -2937,7 +2896,7 @@ msgstr ""
 "\n"
 "錯誤: FPE_FLTUND (浮點數: 向下溢位)"
 
-#: parted/ui.c:416
+#: parted/ui.c:417
 msgid ""
 "\n"
 "Error: FPE_FLTRES (Float: inexact result)"
@@ -2945,7 +2904,7 @@ msgstr ""
 "\n"
 "錯誤: FPE_FLTRES (浮點數: 不明確的結果)"
 
-#: parted/ui.c:421
+#: parted/ui.c:422
 msgid ""
 "\n"
 "Error: FPE_FLTINV (Float: invalid operation)"
@@ -2953,7 +2912,7 @@ msgstr ""
 "\n"
 "錯誤: FPE_FLTINV (浮點數: 無效的操作)"
 
-#: parted/ui.c:426
+#: parted/ui.c:427
 msgid ""
 "\n"
 "Error: FPE_FLTSUB (Float: subscript out of range)"
@@ -2961,7 +2920,7 @@ msgstr ""
 "\n"
 "錯誤: FPE_FLTSUB (浮點數: 註標超出範圍)"
 
-#: parted/ui.c:431
+#: parted/ui.c:432
 msgid ""
 "\n"
 "Error: A general SIGFPE signal was encountered."
@@ -2969,7 +2928,7 @@ msgstr ""
 "\n"
 "錯誤: 遇到一般的 SIGFPE 訊號。"
 
-#: parted/ui.c:455
+#: parted/ui.c:456
 msgid ""
 "\n"
 "Error: ILL_ILLOPC (Illegal Opcode)"
@@ -2977,7 +2936,7 @@ msgstr ""
 "\n"
 "錯誤: ILL_ILLOPC (不合法的操作碼)"
 
-#: parted/ui.c:460
+#: parted/ui.c:461
 msgid ""
 "\n"
 "Error: ILL_ILLOPN (Illegal Operand)"
@@ -2985,7 +2944,7 @@ msgstr ""
 "\n"
 "錯誤: ILL_ILLOPN (不合法的運算元)"
 
-#: parted/ui.c:465
+#: parted/ui.c:466
 msgid ""
 "\n"
 "Error: ILL_ILLADR (Illegal addressing mode)"
@@ -2993,7 +2952,7 @@ msgstr ""
 "\n"
 "錯誤: ILL_ILLADR (不合法的定址模式)"
 
-#: parted/ui.c:470
+#: parted/ui.c:471
 msgid ""
 "\n"
 "Error: ILL_ILLTRP (Illegal Trap)"
@@ -3001,7 +2960,7 @@ msgstr ""
 "\n"
 "錯誤: ILL_ILLTRP (不合法的陷阱)"
 
-#: parted/ui.c:475
+#: parted/ui.c:476
 msgid ""
 "\n"
 "Error: ILL_PRVOPC (Privileged Opcode)"
@@ -3009,7 +2968,7 @@ msgstr ""
 "\n"
 "錯誤: ILL_PRVOPC (具優先權的操作碼)"
 
-#: parted/ui.c:480
+#: parted/ui.c:481
 msgid ""
 "\n"
 "Error: ILL_PRVREG (Privileged Register)"
@@ -3017,7 +2976,7 @@ msgstr ""
 "\n"
 "錯誤: ILL_PRVREG (具優先權的暫存器)"
 
-#: parted/ui.c:485
+#: parted/ui.c:486
 msgid ""
 "\n"
 "Error: ILL_COPROC (Coprocessor Error)"
@@ -3025,7 +2984,7 @@ msgstr ""
 "\n"
 "錯誤: ILL_COPROC (輔助處理器錯誤)"
 
-#: parted/ui.c:490
+#: parted/ui.c:491
 msgid ""
 "\n"
 "Error: ILL_BADSTK (Internal Stack Error)"
@@ -3033,7 +2992,7 @@ msgstr ""
 "\n"
 "錯誤: ILL_BADSTK (內部堆疊錯誤)"
 
-#: parted/ui.c:495
+#: parted/ui.c:496
 msgid ""
 "\n"
 "Error: A general SIGILL signal was encountered."
@@ -3041,69 +3000,69 @@ msgstr ""
 "\n"
 "錯誤: 遇到一般的 SIGILL 訊號。"
 
-#: parted/ui.c:888
+#: parted/ui.c:889
 #, c-format
 msgid "invalid token: %s"
 msgstr "無效的字組:%s"
 
-#: parted/ui.c:1069
+#: parted/ui.c:1070
 msgid "Expecting a partition number."
 msgstr "需要分割區編號。"
 
-#: parted/ui.c:1078
+#: parted/ui.c:1079
 msgid "Partition doesn't exist."
 msgstr "分割區不存在。"
 
-#: parted/ui.c:1098
+#: parted/ui.c:1099
 msgid "Expecting a file system type."
 msgstr "需要檔案系統類型。"
 
-#: parted/ui.c:1105
+#: parted/ui.c:1106
 #, c-format
 msgid "Unknown file system type \"%s\"."
 msgstr "不明的檔案系統類型「%s」。"
 
-#: parted/ui.c:1126
+#: parted/ui.c:1127
 msgid "Expecting a disk label type."
 msgstr "需要磁碟標籤類型。"
 
-#: parted/ui.c:1157 parted/ui.c:1193
+#: parted/ui.c:1158 parted/ui.c:1194
 msgid "No flags supported"
 msgstr ""
 
-#: parted/ui.c:1267
+#: parted/ui.c:1268
 msgid "Can't create any more partitions."
 msgstr "無法建立更多分割區。"
 
-#: parted/ui.c:1277
+#: parted/ui.c:1278
 msgid "Expecting a partition type."
 msgstr "需要分割區類型。"
 
-#: parted/ui.c:1426
+#: parted/ui.c:1427
 msgid "on"
 msgstr "開"
 
-#: parted/ui.c:1427
+#: parted/ui.c:1428
 msgid "off"
 msgstr "關"
 
-#: parted/ui.c:1444
+#: parted/ui.c:1445
 msgid "optimal"
 msgstr "最佳"
 
-#: parted/ui.c:1445
+#: parted/ui.c:1446
 msgid "minimal"
 msgstr "最小"
 
-#: parted/ui.c:1578
+#: parted/ui.c:1579
 msgid "OPTIONs:"
 msgstr "選項:"
 
-#: parted/ui.c:1583
+#: parted/ui.c:1584
 msgid "COMMANDs:"
 msgstr "指令:"
 
-#: parted/ui.c:1586
+#: parted/ui.c:1587
 #, c-format
 msgid ""
 "\n"
@@ -3112,33 +3071,82 @@ msgstr ""
 "\n"
 "將錯誤回報給 %s\n"
 
-#: parted/ui.c:1593
+#: parted/ui.c:1594
 #, c-format
 msgid "Using %s\n"
 msgstr "使用 %s\n"
 
-#: parted/ui.c:1673
+#: parted/ui.c:1674
 msgid "This command does not make sense in non-interactive mode.\n"
 msgstr "這個指令在非交談模式中不具任何意義。\n"
 
+#, c-format
 #~ msgid "%s: option '--%s' doesn't allow an argument\n"
 #~ msgstr "%s:選項「--%s」不允許有引數\n"
 
+#, c-format
 #~ msgid "%s: unrecognized option '--%s'\n"
 #~ msgstr "%s:無法辨識的選項「--%s」\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' doesn't allow an argument\n"
 #~ msgstr "%s:選項「-W %s」不允許有引數\n"
 
+#, c-format
 #~ msgid "%s: option '-W %s' requires an argument\n"
 #~ msgstr "%s:選項「-W %s」需要一個引數\n"
 
+#, c-format
 #~ msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
 #~ msgstr "%s 首頁:<http://www.gnu.org/software/%s/>\n"
 
+#, c-format
+#~ msgid "invalid %s%s argument '%s'"
+#~ msgstr "%s%s 參數「%s」無效"
+
+#, c-format
+#~ msgid "invalid suffix in %s%s argument '%s'"
+#~ msgstr "%s%s 參數「%s」有無效後綴"
+
+#, c-format
+#~ msgid "%s%s argument '%s' too large"
+#~ msgstr "%s%s 參數「%s」過長"
+
+#~ msgid ""
+#~ "The partition table cannot be re-read.  This means you need to reboot "
+#~ "before mounting any modified partitions.  You also need to reinstall your "
+#~ "boot loader before you reboot (which may require mounting modified "
+#~ "partitions).  It is impossible do both things!  So you'll need to boot "
+#~ "off a rescue disk, and reinstall your boot loader from the rescue disk.  "
+#~ "Read section 4 of the Parted User documentation for more information."
+#~ msgstr ""
+#~ "無法重新讀入分割區表。同樣,您必須在掛載任何修改過的分割區之前重新啟動。您"
+#~ "還需要在您重新啟動之前重新安裝開機載入程式 (它可能需要掛載修改過的分割"
+#~ "區)。同時做這兩件事是不可能的!所以您就需要從回復碟片啟動,並從回復碟片重"
+#~ "新安裝您的開機載入程式。更多詳情請參閱 Parted 使用者文件的第四節。"
+
+#, c-format
+#~ msgid ""
+#~ "The partition table on %s cannot be re-read (%s).  This means the Hurd "
+#~ "knows nothing about any modifications you made.  You should reboot your "
+#~ "computer before doing anything with %s."
+#~ msgstr ""
+#~ "%s 上的分割區表無法被重新讀取 (%s)。這意味著 Hurd 不知道任何您所作的修改。"
+#~ "您應該在對 %s 做任何操作之前重新啟動您的電腦。"
+
+#~ msgid "The boot region doesn't start at the start of the partition."
+#~ msgstr "啟動區域並未從分割區的起點開始。"
+
+#, c-format
 #~ msgid ""
 #~ "This file system has a logical sector size of %d.  GNU Parted is known "
 #~ "not to work properly with sector sizes other than 512 bytes."
 #~ msgstr ""
 #~ "此檔案系統的邏輯磁區大小為 %d。GNU Parted 無法在磁區大小不是 512 位元組的"
 #~ "情況下正確工作。"
+
+#, c-format
+#~ msgid ""
+#~ "The file %s is marked as a system file.  This means moving it could cause "
+#~ "some programs to stop working."
+#~ msgstr "檔案 %s 被標記為系統檔案。 這表示移動它可能會造成某些程式停止作用。"
index 24180e2be05c0d63bfb21cf54ab7ca7c8c700fc0..5b8b36c0b21e29c9e3a7f0c9e1c938b032e08871 100755 (executable)
@@ -1,6 +1,7 @@
 #!/bin/sh
 
-# Copyright (C) 2002-2003, 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2002-2003, 2007, 2009-2014, 2019-2021 Free Software Foundation,
+# Inc.
 #
 # This file is part of the GNU ISO C++ Library.  This library is free
 # software; you can redistribute it and/or modify it under the
index 11baba0db8a1fc15d9674044f2d66522f2b092c1..4cfc30f5654e02e084d1249c104eb52b2e16535d 100644 (file)
@@ -97,9 +97,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/assert.m4 \
        $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \
        $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/canonicalize.m4 \
-       $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \
-       $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/configmake.m4 \
-       $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
+       $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \
+       $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \
+       $(top_srcdir)/m4/configmake.m4 $(top_srcdir)/m4/ctype.m4 \
        $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
        $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
        $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
@@ -111,15 +111,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/fsync.m4 $(top_srcdir)/m4/ftruncate.m4 \
        $(top_srcdir)/m4/getcwd.m4 $(top_srcdir)/m4/getdtablesize.m4 \
        $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \
-       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.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/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
+       $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/getrandom.m4 \
+       $(top_srcdir)/m4/gettext.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/iconv.m4 \
        $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
        $(top_srcdir)/m4/intl-thread-locale.m4 \
-       $(top_srcdir)/m4/intlmacosx.m4 \
-       $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+       $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/inttypes.m4 \
        $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \
        $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
        $(top_srcdir)/m4/lcmessage.m4 $(top_srcdir)/m4/lib-ignore.m4 \
@@ -129,25 +127,26 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \
        $(top_srcdir)/m4/locale-tr.m4 $(top_srcdir)/m4/locale-zh.m4 \
        $(top_srcdir)/m4/locale_h.m4 $(top_srcdir)/m4/localeconv.m4 \
-       $(top_srcdir)/m4/localename.m4 \
-       $(top_srcdir)/m4/localtime-buffer.m4 $(top_srcdir)/m4/lock.m4 \
-       $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \
-       $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/ltoptions.m4 \
-       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
-       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/malloc.m4 \
-       $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/manywarnings.m4 \
-       $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \
-       $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/mbtowc.m4 \
-       $(top_srcdir)/m4/minmax.m4 $(top_srcdir)/m4/mkdir.m4 \
-       $(top_srcdir)/m4/mkstemp.m4 $(top_srcdir)/m4/mmap-anon.m4 \
-       $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \
+       $(top_srcdir)/m4/localename.m4 $(top_srcdir)/m4/lock.m4 \
+       $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \
+       $(top_srcdir)/m4/manywarnings.m4 $(top_srcdir)/m4/mbrtowc.m4 \
+       $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbstate_t.m4 \
+       $(top_srcdir)/m4/mbtowc.m4 $(top_srcdir)/m4/minmax.m4 \
+       $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkstemp.m4 \
+       $(top_srcdir)/m4/mmap-anon.m4 $(top_srcdir)/m4/mode_t.m4 \
+       $(top_srcdir)/m4/msvc-inval.m4 \
        $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \
-       $(top_srcdir)/m4/nanosleep.m4 $(top_srcdir)/m4/netinet_in_h.m4 \
+       $(top_srcdir)/m4/musl.m4 $(top_srcdir)/m4/nanosleep.m4 \
+       $(top_srcdir)/m4/netinet_in_h.m4 \
        $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
        $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/o-direct.m4 \
        $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \
-       $(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
-       $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
+       $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \
+       $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \
+       $(top_srcdir)/m4/pid_t.m4 $(top_srcdir)/m4/pipe.m4 \
        $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/priv-set.m4 \
        $(top_srcdir)/m4/progtest.m4 \
        $(top_srcdir)/m4/pthread-thread.m4 \
@@ -159,9 +158,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \
        $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rpmatch.m4 \
        $(top_srcdir)/m4/safe-read.m4 $(top_srcdir)/m4/sched_h.m4 \
-       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/setenv.m4 \
-       $(top_srcdir)/m4/setlocale.m4 $(top_srcdir)/m4/sigaction.m4 \
-       $(top_srcdir)/m4/signal_h.m4 \
+       $(top_srcdir)/m4/select.m4 $(top_srcdir)/m4/semaphore.m4 \
+       $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale.m4 \
+       $(top_srcdir)/m4/setlocale_null.m4 \
+       $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/signal_h.m4 \
        $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sleep.m4 \
        $(top_srcdir)/m4/socketlib.m4 $(top_srcdir)/m4/sockets.m4 \
        $(top_srcdir)/m4/socklen.m4 $(top_srcdir)/m4/sockpfaf.m4 \
@@ -176,6 +176,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoll.m4 \
        $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/symlink.m4 \
        $(top_srcdir)/m4/sys_ioctl_h.m4 \
+       $(top_srcdir)/m4/sys_random_h.m4 \
        $(top_srcdir)/m4/sys_select_h.m4 \
        $(top_srcdir)/m4/sys_socket_h.m4 \
        $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \
@@ -184,14 +185,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
        $(top_srcdir)/m4/threadlib.m4 $(top_srcdir)/m4/time_h.m4 \
        $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \
        $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/usleep.m4 \
-       $(top_srcdir)/m4/version-etc.m4 \
+       $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/visibility.m4 \
        $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
        $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \
        $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctob.m4 \
        $(top_srcdir)/m4/wctomb.m4 $(top_srcdir)/m4/wctype_h.m4 \
        $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/xalloc.m4 \
        $(top_srcdir)/m4/xstrndup.m4 $(top_srcdir)/m4/xstrtol.m4 \
-       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/yield.m4 $(top_srcdir)/m4/zzgnulib.m4 \
+       $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
@@ -520,6 +522,7 @@ BUILDINFO = @BUILDINFO@
 CC = @CC@
 CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
+CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
 CHECK_CFLAGS = @CHECK_CFLAGS@
 CHECK_LIBS = @CHECK_LIBS@
 CONFIG_INCLUDE = @CONFIG_INCLUDE@
@@ -554,6 +557,8 @@ GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GNULIB_ACCEPT = @GNULIB_ACCEPT@
 GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
+GNULIB_ACCESS = @GNULIB_ACCESS@
+GNULIB_ALIGNED_ALLOC = @GNULIB_ALIGNED_ALLOC@
 GNULIB_ATOLL = @GNULIB_ATOLL@
 GNULIB_BIND = @GNULIB_BIND@
 GNULIB_BTOWC = @GNULIB_BTOWC@
@@ -564,6 +569,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
 GNULIB_CLOSE = @GNULIB_CLOSE@
 GNULIB_CONNECT = @GNULIB_CONNECT@
 GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
+GNULIB_CREAT = @GNULIB_CREAT@
 GNULIB_CTIME = @GNULIB_CTIME@
 GNULIB_DPRINTF = @GNULIB_DPRINTF@
 GNULIB_DUP = @GNULIB_DUP@
@@ -611,19 +617,23 @@ GNULIB_GETCWD = @GNULIB_GETCWD@
 GNULIB_GETDELIM = @GNULIB_GETDELIM@
 GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
 GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
+GNULIB_GETENTROPY = @GNULIB_GETENTROPY@
 GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
 GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
 GNULIB_GETLINE = @GNULIB_GETLINE@
 GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
 GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
 GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
+GNULIB_GETOPT_POSIX = @GNULIB_GETOPT_POSIX@
 GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
 GNULIB_GETPASS = @GNULIB_GETPASS@
 GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETRANDOM = @GNULIB_GETRANDOM@
 GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
 GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
 GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
 GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
+GNULIB_GETUMASK = @GNULIB_GETUMASK@
 GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
 GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@
 GNULIB_GRANTPT = @GNULIB_GRANTPT@
@@ -637,6 +647,8 @@ GNULIB_ISATTY = @GNULIB_ISATTY@
 GNULIB_ISBLANK = @GNULIB_ISBLANK@
 GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
 GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
+GNULIB_ISWDIGIT = @GNULIB_ISWDIGIT@
+GNULIB_ISWXDIGIT = @GNULIB_ISWXDIGIT@
 GNULIB_LCHMOD = @GNULIB_LCHMOD@
 GNULIB_LCHOWN = @GNULIB_LCHOWN@
 GNULIB_LINK = @GNULIB_LINK@
@@ -697,6 +709,7 @@ GNULIB_PERROR = @GNULIB_PERROR@
 GNULIB_PIPE = @GNULIB_PIPE@
 GNULIB_PIPE2 = @GNULIB_PIPE2@
 GNULIB_POPEN = @GNULIB_POPEN@
+GNULIB_POSIX_MEMALIGN = @GNULIB_POSIX_MEMALIGN@
 GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@
 GNULIB_PREAD = @GNULIB_PREAD@
 GNULIB_PRINTF = @GNULIB_PRINTF@
@@ -745,9 +758,12 @@ GNULIB_SENDTO = @GNULIB_SENDTO@
 GNULIB_SETENV = @GNULIB_SETENV@
 GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
 GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETLOCALE_NULL = @GNULIB_SETLOCALE_NULL@
 GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
 GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
+GNULIB_SIGABBREV_NP = @GNULIB_SIGABBREV_NP@
 GNULIB_SIGACTION = @GNULIB_SIGACTION@
+GNULIB_SIGDESCR_NP = @GNULIB_SIGDESCR_NP@
 GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
 GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
 GNULIB_SLEEP = @GNULIB_SLEEP@
@@ -763,6 +779,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@
 GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@
 GNULIB_STRDUP = @GNULIB_STRDUP@
 GNULIB_STRERROR = @GNULIB_STRERROR@
+GNULIB_STRERRORNAME_NP = @GNULIB_STRERRORNAME_NP@
 GNULIB_STRERROR_R = @GNULIB_STRERROR_R@
 GNULIB_STRFTIME = @GNULIB_STRFTIME@
 GNULIB_STRNCAT = @GNULIB_STRNCAT@
@@ -846,11 +863,13 @@ GNULIB_WMEMCHR = @GNULIB_WMEMCHR@
 GNULIB_WMEMCMP = @GNULIB_WMEMCMP@
 GNULIB_WMEMCPY = @GNULIB_WMEMCPY@
 GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@
+GNULIB_WMEMPCPY = @GNULIB_WMEMPCPY@
 GNULIB_WMEMSET = @GNULIB_WMEMSET@
 GNULIB_WRITE = @GNULIB_WRITE@
 GNULIB__EXIT = @GNULIB__EXIT@
 GREP = @GREP@
 HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@
 HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
 HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
 HAVE_ATOLL = @HAVE_ATOLL@
@@ -860,12 +879,17 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
 HAVE_CHOWN = @HAVE_CHOWN@
 HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
 HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
+HAVE_DECL_ECVT = @HAVE_DECL_ECVT@
 HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
+HAVE_DECL_EXECVPE = @HAVE_DECL_EXECVPE@
 HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
+HAVE_DECL_FCLOSEALL = @HAVE_DECL_FCLOSEALL@
+HAVE_DECL_FCVT = @HAVE_DECL_FCVT@
 HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@
 HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
 HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
 HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
+HAVE_DECL_GCVT = @HAVE_DECL_GCVT@
 HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
 HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
 HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
@@ -899,10 +923,10 @@ HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@
 HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
 HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
 HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
+HAVE_DECL_WCSDUP = @HAVE_DECL_WCSDUP@
 HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@
 HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@
 HAVE_DPRINTF = @HAVE_DPRINTF@
-HAVE_DUP2 = @HAVE_DUP2@
 HAVE_DUP3 = @HAVE_DUP3@
 HAVE_DUPLOCALE = @HAVE_DUPLOCALE@
 HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@@ -924,14 +948,17 @@ HAVE_FTELLO = @HAVE_FTELLO@
 HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
 HAVE_FUTIMENS = @HAVE_FUTIMENS@
 HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
+HAVE_GETENTROPY = @HAVE_GETENTROPY@
 HAVE_GETGROUPS = @HAVE_GETGROUPS@
 HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@
 HAVE_GETLOGIN = @HAVE_GETLOGIN@
 HAVE_GETOPT_H = @HAVE_GETOPT_H@
 HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@
 HAVE_GETPASS = @HAVE_GETPASS@
+HAVE_GETRANDOM = @HAVE_GETRANDOM@
 HAVE_GETSUBOPT = @HAVE_GETSUBOPT@
 HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@
+HAVE_GETUMASK = @HAVE_GETUMASK@
 HAVE_GRANTPT = @HAVE_GRANTPT@
 HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
 HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@
@@ -950,7 +977,6 @@ HAVE_LCHMOD = @HAVE_LCHMOD@
 HAVE_LCHOWN = @HAVE_LCHOWN@
 HAVE_LINK = @HAVE_LINK@
 HAVE_LINKAT = @HAVE_LINKAT@
-HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@
 HAVE_LSTAT = @HAVE_LSTAT@
 HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@
 HAVE_MBRLEN = @HAVE_MBRLEN@
@@ -960,7 +986,6 @@ HAVE_MBSLEN = @HAVE_MBSLEN@
 HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
 HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
 HAVE_MBTOWC = @HAVE_MBTOWC@
-HAVE_MEMCHR = @HAVE_MEMCHR@
 HAVE_MEMPCPY = @HAVE_MEMPCPY@
 HAVE_MKDIRAT = @HAVE_MKDIRAT@
 HAVE_MKDTEMP = @HAVE_MKDTEMP@
@@ -983,6 +1008,7 @@ HAVE_PCLOSE = @HAVE_PCLOSE@
 HAVE_PIPE = @HAVE_PIPE@
 HAVE_PIPE2 = @HAVE_PIPE2@
 HAVE_POPEN = @HAVE_POPEN@
+HAVE_POSIX_MEMALIGN = @HAVE_POSIX_MEMALIGN@
 HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
 HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
 HAVE_PREAD = @HAVE_PREAD@
@@ -1068,7 +1094,9 @@ HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
 HAVE_SETENV = @HAVE_SETENV@
 HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
 HAVE_SETSTATE = @HAVE_SETSTATE@
+HAVE_SIGABBREV_NP = @HAVE_SIGABBREV_NP@
 HAVE_SIGACTION = @HAVE_SIGACTION@
+HAVE_SIGDESCR_NP = @HAVE_SIGDESCR_NP@
 HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
 HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
 HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@@ -1081,6 +1109,7 @@ HAVE_STPCPY = @HAVE_STPCPY@
 HAVE_STPNCPY = @HAVE_STPNCPY@
 HAVE_STRCASESTR = @HAVE_STRCASESTR@
 HAVE_STRCHRNUL = @HAVE_STRCHRNUL@
+HAVE_STRERRORNAME_NP = @HAVE_STRERRORNAME_NP@
 HAVE_STRPBRK = @HAVE_STRPBRK@
 HAVE_STRPTIME = @HAVE_STRPTIME@
 HAVE_STRSEP = @HAVE_STRSEP@
@@ -1103,6 +1132,7 @@ HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@
 HAVE_SYS_IOCTL_H = @HAVE_SYS_IOCTL_H@
 HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@
 HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@
+HAVE_SYS_RANDOM_H = @HAVE_SYS_RANDOM_H@
 HAVE_SYS_SELECT_H = @HAVE_SYS_SELECT_H@
 HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
 HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
@@ -1111,15 +1141,14 @@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@
 HAVE_TIMEGM = @HAVE_TIMEGM@
 HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@
 HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@
-HAVE_TZSET = @HAVE_TZSET@
 HAVE_UNISTD_H = @HAVE_UNISTD_H@
 HAVE_UNLINKAT = @HAVE_UNLINKAT@
 HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
-HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
 HAVE_USLEEP = @HAVE_USLEEP@
 HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
 HAVE_VASPRINTF = @HAVE_VASPRINTF@
 HAVE_VDPRINTF = @HAVE_VDPRINTF@
+HAVE_VISIBILITY = @HAVE_VISIBILITY@
 HAVE_WCHAR_H = @HAVE_WCHAR_H@
 HAVE_WCHAR_T = @HAVE_WCHAR_T@
 HAVE_WCPCPY = @HAVE_WCPCPY@
@@ -1158,6 +1187,7 @@ HAVE_WMEMCHR = @HAVE_WMEMCHR@
 HAVE_WMEMCMP = @HAVE_WMEMCMP@
 HAVE_WMEMCPY = @HAVE_WMEMCPY@
 HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
+HAVE_WMEMPCPY = @HAVE_WMEMPCPY@
 HAVE_WMEMSET = @HAVE_WMEMSET@
 HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
 HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
@@ -1183,16 +1213,28 @@ LIBICONV = @LIBICONV@
 LIBINTL = @LIBINTL@
 LIBMULTITHREAD = @LIBMULTITHREAD@
 LIBOBJS = @LIBOBJS@
+LIBPMULTITHREAD = @LIBPMULTITHREAD@
+LIBPTHREAD = @LIBPTHREAD@
 LIBS = @LIBS@
 LIBSOCKET = @LIBSOCKET@
+LIBSTDTHREAD = @LIBSTDTHREAD@
 LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
 LIBTHREAD = @LIBTHREAD@
 LIBTOOL = @LIBTOOL@
 LIB_BLKID = @LIB_BLKID@
+LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_GETRANDOM = @LIB_GETRANDOM@
+LIB_HARD_LOCALE = @LIB_HARD_LOCALE@
+LIB_MBRTOWC = @LIB_MBRTOWC@
 LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_NL_LANGINFO = @LIB_NL_LANGINFO@
 LIB_PTHREAD = @LIB_PTHREAD@
 LIB_PTHREAD_SIGMASK = @LIB_PTHREAD_SIGMASK@
+LIB_SCHED_YIELD = @LIB_SCHED_YIELD@
 LIB_SELECT = @LIB_SELECT@
+LIB_SEMAPHORE = @LIB_SEMAPHORE@
+LIB_SETLOCALE = @LIB_SETLOCALE@
+LIB_SETLOCALE_NULL = @LIB_SETLOCALE_NULL@
 LIMITS_H = @LIMITS_H@
 LIPO = @LIPO@
 LN_S = @LN_S@
@@ -1241,6 +1283,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
 NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
 NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_RANDOM_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H@
 NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
@@ -1270,6 +1313,7 @@ NEXT_STDIO_H = @NEXT_STDIO_H@
 NEXT_STDLIB_H = @NEXT_STDLIB_H@
 NEXT_STRING_H = @NEXT_STRING_H@
 NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_H@
+NEXT_SYS_RANDOM_H = @NEXT_SYS_RANDOM_H@
 NEXT_SYS_SELECT_H = @NEXT_SYS_SELECT_H@
 NEXT_SYS_SOCKET_H = @NEXT_SYS_SOCKET_H@
 NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
@@ -1306,21 +1350,24 @@ 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@
 RANLIB = @RANLIB@
+REPLACE_ACCESS = @REPLACE_ACCESS@
+REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@
 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_CREAT = @REPLACE_CREAT@
 REPLACE_CTIME = @REPLACE_CTIME@
 REPLACE_DPRINTF = @REPLACE_DPRINTF@
 REPLACE_DUP = @REPLACE_DUP@
 REPLACE_DUP2 = @REPLACE_DUP2@
 REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@
 REPLACE_FACCESSAT = @REPLACE_FACCESSAT@
+REPLACE_FCHMODAT = @REPLACE_FCHMODAT@
 REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
 REPLACE_FCLOSE = @REPLACE_FCLOSE@
 REPLACE_FCNTL = @REPLACE_FCNTL@
@@ -1348,6 +1395,7 @@ REPLACE_GETLINE = @REPLACE_GETLINE@
 REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
 REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
 REPLACE_GETPASS = @REPLACE_GETPASS@
+REPLACE_GETRANDOM = @REPLACE_GETRANDOM@
 REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
 REPLACE_GMTIME = @REPLACE_GMTIME@
 REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
@@ -1357,6 +1405,8 @@ REPLACE_IOCTL = @REPLACE_IOCTL@
 REPLACE_ISATTY = @REPLACE_ISATTY@
 REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
 REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
+REPLACE_ISWDIGIT = @REPLACE_ISWDIGIT@
+REPLACE_ISWXDIGIT = @REPLACE_ISWXDIGIT@
 REPLACE_LCHOWN = @REPLACE_LCHOWN@
 REPLACE_LINK = @REPLACE_LINK@
 REPLACE_LINKAT = @REPLACE_LINKAT@
@@ -1389,6 +1439,7 @@ REPLACE_OPEN = @REPLACE_OPEN@
 REPLACE_OPENAT = @REPLACE_OPENAT@
 REPLACE_PERROR = @REPLACE_PERROR@
 REPLACE_POPEN = @REPLACE_POPEN@
+REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@
 REPLACE_PREAD = @REPLACE_PREAD@
 REPLACE_PRINTF = @REPLACE_PRINTF@
 REPLACE_PSELECT = @REPLACE_PSELECT@
@@ -1477,6 +1528,7 @@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@
 REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@
 REPLACE_STRDUP = @REPLACE_STRDUP@
 REPLACE_STRERROR = @REPLACE_STRERROR@
+REPLACE_STRERRORNAME_NP = @REPLACE_STRERRORNAME_NP@
 REPLACE_STRERROR_R = @REPLACE_STRERROR_R@
 REPLACE_STRFTIME = @REPLACE_STRFTIME@
 REPLACE_STRNCAT = @REPLACE_STRNCAT@
@@ -1514,13 +1566,13 @@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@
 REPLACE_WCSFTIME = @REPLACE_WCSFTIME@
 REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@
 REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@
+REPLACE_WCSTOK = @REPLACE_WCSTOK@
 REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@
 REPLACE_WCTOB = @REPLACE_WCTOB@
 REPLACE_WCTOMB = @REPLACE_WCTOMB@
 REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
 REPLACE_WRITE = @REPLACE_WRITE@
 SED = @SED@
-SELINUX_LIBS = @SELINUX_LIBS@
 SET_MAKE = @SET_MAKE@
 SHELL = @SHELL@
 SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
@@ -1539,6 +1591,7 @@ UINT32_MAX_LT_UINTMAX_MAX = @UINT32_MAX_LT_UINTMAX_MAX@
 UINT64_MAX_EQ_ULONG_MAX = @UINT64_MAX_EQ_ULONG_MAX@
 UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@
 UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+UNISTD_H_HAVE_SYS_RANDOM_H = @UNISTD_H_HAVE_SYS_RANDOM_H@
 UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@
 UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
 USE_NLS = @USE_NLS@
index a9dde840d2ae14cc2fbc1dfc770ae970861cbb95..771faab630eb70ae1c326ee2a0fe7ffe2579631f 100644 (file)
@@ -134,7 +134,7 @@ main (int argc, char **argv)
     {
       if (!ped_partition_is_flag_available(disk_part, flag))
         continue;
-      fprintf (stderr, "Checking partition flag %d\n", flag);
+      fprintf (stderr, "Checking partition flag %u\n", flag);
       fprintf (stderr, "%d ? %d\n", ped_partition_get_flag (disk_part, flag),
                ped_partition_get_flag (copy_part, flag));
       assert (ped_partition_get_flag (disk_part, flag)
index 3dda5cbdd6dd236d9ae529d3c4f882c8469fc437..18f58d0ec89631eeab9dbadd0bbccc86bd9dcec0 100755 (executable)
@@ -1,4 +1,4 @@
-#!/usr/bin/python
+#!/usr/bin/python3
 
 # open img file, subtract 33 from altlba address, and move the last 33 sectors
 # back by 33 sectors
index 1d2dfb0109847fd3a203d6ce8441325a70fafe9a..eb43f174fb7108582ab0d897c99c88965513698d 100755 (executable)
@@ -2,7 +2,7 @@
 # Make sure all these programs work properly
 # when invoked with --help or --version.
 
-# Copyright (C) 2000-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2000-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index c79163ba95b9f5baa778ce455f0f85f4996358a5..348e620a2c25e035e54bc6b13a1065edba81310f 100644 (file)
@@ -1,6 +1,6 @@
 # source this file; set up for tests
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index d6ae8d65f88d38ffa9dcbd9f89c924ad288436f9..b2b03e61619144881b033b3abbcf61743637e1fd 100755 (executable)
@@ -1,4 +1,4 @@
-#!/usr/bin/python
+#!/usr/bin/python3
 """
     Write an overlapping partition to a msdos disk
 
index 5748a6b5e2a1c02bd978eea973b0bb315b9ec826..1f3a6d7e53d74f34be4dbae48741b27e13e71ce5 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Ensure that a simple command using -s succeeds with no prompt
 
-# Copyright (C) 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 0579305a46aeffc7c89cabc6feca7b09b6f0e9ef..5223504ef7c78d932cadb890f5559fae5127eeb2 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # operate on a very small (1-sector) "disk"
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 9c38b27edc7585449972e854ddf7017b658b1c91..d43a64fb78f3775cf18732e9a539a512ffed67d3 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Ensure that printing with -s outputs no readline control chars
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index c9a51518e1d2ebb1abb2ecac2cbd8d165b298c05..bbafe71d53d03cbf0a03c4e71117c9c30d8643e6 100755 (executable)
@@ -1,6 +1,6 @@
 #!/bin/sh
 # the most basic 'print' test
-# Copyright (C) 2007, 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 260715cd1fe578764c9998e09e6151e462358914..98aab4c712b3bc70d1cdd1ed4b9034454bb3774f 100755 (executable)
@@ -1,6 +1,6 @@
 #!/bin/sh
 # test 'parted $dev print' on empty device (without label)
-# Copyright (C) 2011-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2011-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 54789b51a1fa44292beee244645f9126c6ff12da..9f6da2ad367a0399d51079dbc9c903fc74b51af2 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Ensure that printing a GPT partition table does not modify it.
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 6bd7672852dbf9b855b0f167498b3012dc14aa5e..87f5e3ffb58ec1e54c90b5345c45355812d596ad 100755 (executable)
@@ -2,7 +2,7 @@
 # avoid failed assertion when creating a GPT on top of an old one for a
 # larger device
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index c3fe79301d79ff2d6bf4db5ee7096a46b16902d0..a67793297cab691f24130c8526fc19515d9bb1ab 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Preserve first 446B of the Protected MBR for gpt partitions.
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index f4eeaa3a4e05f97dccb538ca896cb584ad01b0be..b6bcde68b233290de659107dc169ed9aafdd7550 100644 (file)
@@ -2,7 +2,7 @@
 # parted 3.1 and prior would exit with no diagnostic when failing
 # to create a GPT partition table on a device that was too small.
 
-# Copyright (C) 2012-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2012-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 72117fe198b14e82cb19adb9cfd1eb472d439462..44866bcb2ca094ecc52495a656398b3133e14c49 100755 (executable)
@@ -2,7 +2,7 @@
 # Demonstrate that placing a valid gpt-labeled image on a shorter device
 # does not invalidate the primary GPT header.
 
-# Copyright (C) 2012-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2012-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 1382ab30d48cf020fa8fc1c63374354fde9629c9..b177d1e57705bf30d33b6db82e59b247b663bf4d 100644 (file)
@@ -2,7 +2,7 @@
 # parted before 3.1 could abort while reading a pathologically small device
 # with a valid primary GPT header but no room for the backup header.
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index b7f8892318fb96228b879ba80a16e9c646e962e2..52f60ccdf9e129fa335ca06b72088fd896f6eb69 100644 (file)
@@ -5,7 +5,7 @@
 # GPT/MBR table, merely listing the table with Parted-2.1 would clobber
 # the MBR part.
 
-# Copyright (C) 2010-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2010-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index c4dd8418d10a69069bdbb70ddfacb46e54a54d03..83c2a9c47389061f4141404fdbb86c4dc5c00cb6 100755 (executable)
@@ -3,7 +3,7 @@
 # Much like t0205, but with the addition of a corrupt PTE in primary table,
 # "parted $device print" would modify $device.
 
-# Copyright (C) 2010-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2010-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 2f59009159c8d5acfa119414a6585d1ecd0392eb..a13983c05d94bd83d803546838b5c828782e88bf 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Show how parted treats a starting or ending sector number w/IEC units.
 
-# Copyright (C) 2011-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2011-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 29ce8921aece3e7c7aedfe16653c214643fb6d78..242d9e5757ff41133c7b01a86f7574702acc928e 100644 (file)
@@ -2,7 +2,7 @@
 # Make sure parted mkpart ends the partition one sector before the specified
 # value if end is specified with IEC units.
 
-# Copyright (C) 2011-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2011-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 5b50c20e6ca272c520c32cce6664b90a38d0dc36..10f5aa2d5b9230300f6f58ab99a7fdfa650acab4 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Ensure that pmbr_boot flag can be set
 
-# Copyright (C) 2012-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2012-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index dc76ea7b751abad471de07a0eebd0d617c3e9d6e..e88d2731250094ec300c92ef9cb8b7d7e6cb8568 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # exercise GPT handling of n_partition_array_entries != 128
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 9415e7e425866ddc870681c9ca5107b76d6fc534..85e60d2fa6e52d720133e583901adbf0c2daf36f 100644 (file)
@@ -5,7 +5,7 @@
 # header to the end of the device.  Before parted-3.1, when it attempted
 # to do that, starting with a 9-PTE array, it would render the result invalid.
 
-# Copyright (C) 2012-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2012-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index d54ec3e6baed6aa7fb709fd0f460b1f3f8207c2c..1862571deb6db3556caf174df3ea751740b22de2 100644 (file)
@@ -2,7 +2,7 @@
 # gpt: create many partitions
 # Before parted-3.1, this would provoke an invalid free.
 
-# Copyright (C) 2012-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2012-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index a17bf11f04457297b7d23115cfbee64c81d1e1ac..39620340aca37537c15c5228bfeccfbba82a1883 100755 (executable)
@@ -2,7 +2,7 @@
 # Make sure parted mkpart ends the partition one sector before the specified
 # value if end is specified with IEC units.
 
-# Copyright (C) 2011-2019 Free Software Foundation, Inc.
+# Copyright (C) 2011-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 81ebc4ef9acc256ce76e7a85559a75767afca708..910627d766e35f5a5ad9ed9864b557300b7e387c 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # gpt default "flag" for a partition must not be msftres
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 118ed968695e1e13610e17792569e0d8d28394d3..f84f2817ddf4649a5ecae3022663c2362d3833b3 100755 (executable)
@@ -1,6 +1,6 @@
 #!/bin/sh
 # very basic GPT table
-# Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 03ac014ef5c89535c62e7af084ade8fe57f8eec0..fef7e61d68bad42df2720c5cfad130361edc15c5 100755 (executable)
@@ -1,6 +1,6 @@
 #!/bin/sh
 # Test unicode partition names
-# Copyright (C) 2013-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2013-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 5e120f8a8ebab93aba10376abc45451b16e91af8..cac69ff98d5ead8bda5e0451a3e81522ed0250f9 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # corrupt a GPT table; ensure parted takes notice
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 1b7567be604aa08ab88af3b68fcce6f0c69ec037..55fc06cdbc8fed84a34e78eb8d37be50fc53ae5d 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # grow a gpt disk, ensure that parted offers to update the gpt size
 
-# Copyright (C) 2009-2012, 2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2012, 2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index ec7a0bdc228b5efbe076837b8f404d01a414c72c..cf459b7b2981525c2b06959c2c567278f807e61e 100644 (file)
@@ -2,7 +2,7 @@
 # put backup copy gpt in the wrong place, ensure that
 # parted offers to fix
 
-# Copyright (C) 2009-2012, 2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2012, 2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 6aadf093b2d9e5a23cad75c18071370b01f04a2b..e76aac8f2fe8efc765597e02f418563eec17807f 100644 (file)
@@ -2,7 +2,7 @@
 # ensure parted can ignore partitions that overlap or are
 # longer than the disk and remove them
 
-# Copyright (C) 2009-2012, 2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2012, 2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 01e38d98aa0ab07fd0d32bb5a8be8cb60f4afb3a..028076f0e66f02d839d56d77033233ffc0e169cd 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # avoid segfault creating a dos PT on top of a gpt one
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index cc3ba6a3e98eb6a37d66974fd03351a36bdfcdbc..0ba25c3f25c214c93814d602370e5296a53fa3f4 100755 (executable)
@@ -2,7 +2,7 @@
 # Test creating a msdos partition over a GPT partition with
 # fdisk which doesn't remove the GPT partitions, only the PMBR
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 63a3a36993d1b02b4aeddd40aa587ec5c70b1ff8..30df8967cf4e354c1a305ac5e39d2403534d51c4 100644 (file)
@@ -3,7 +3,7 @@
 # larger than what the kernel told us (SS) would cause parted to read B
 # bytes into a smaller, SS-byte buffer, clobbering heap storage.
 
-# Copyright (C) 2012-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2012-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 116d262ea7c09803b30367b9c9698d1eb35178f1..2d2190d75ec3f0347c59a4d4f5c3fd388e14068d 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # do not infloop in loop_clobber
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 406339661ae0643d3bf9e619a2d936e835adf7a1..0096b444eb62aeedd0b05263677f60dd9bbcf79d 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Drive the dup-clobber program.
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 5dabecd2f15ff68ca178505d6513c59dc20122e9..5b886c30c98dd6e3a0d2c2f0b2a42c2e2ef5d48f 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Drive the dup-clobber program.
 
-# Copyright (C) 2011-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2011-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 8651d9c89c76fc890c31a182da7752274ed502d1..f1a13df2d7acb695e3dbb415d671c92e4a486670 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # partitioning (parted -s DEV mklabel) a busy disk must fail.
 
-# Copyright (C) 2007-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2007-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index c47eaf81942c78fd8f9ba8ae72f693308c183252..e35e6f0afae434fbb9c7508caf5b455996adb6b9 100755 (executable)
@@ -2,7 +2,7 @@
 # test for Debian bug #582818 (http://bugs.debian.org/582818); forbid
 # the removal of a mounted partition.
 
-# Copyright (C) 2010-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2010-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index d9410e2093845e4d3aa94e27848b58a28ccf9c56..091227b6a08614cab802f5f223cec879807a2cd6 100644 (file)
@@ -2,7 +2,7 @@
 # make sure that loop labels work correctly
 # create an actual partition
 
-# Copyright (C) 2013-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2013-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 8e52c611acdb283551ef6384acd3d77e306f8fbc..50178c6a0b3b5ef9264634de2bc57329de33c535 100644 (file)
@@ -2,7 +2,7 @@
 # make sure that removing a higher numbered partition and adding a lower
 # one using that space at the same time works
 
-# Copyright (C) 2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 1fe330911db8774a635d49fb51e44bb57f2b0442..848d3e394420b7f71b7e9871a69615c4c9ac77d8 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Probe Ext2, Ext3 and Ext4 file systems
 
-# Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -23,7 +23,7 @@ dev=loop-file
 ss=$sector_size_
 n_sectors=$((512*1024))
 
-for type in ext2 ext3 ext4 btrfs xfs nilfs2 ntfs vfat hfsplus udf; do
+for type in ext2 ext3 ext4 btrfs xfs nilfs2 ntfs vfat hfsplus udf f2fs; do
 
   ( mkfs.$type 2>&1 | grep -i '^usage' ) > /dev/null \
       || { warn_ "$ME: no $type support"; continue; }
index 688c14e68bcdd0698832d20a705ab278d701f5c4..050c06450b46680154cd9732b10560958d3ea420 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # rescue ext4 file system
 
-# Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 7da4122894d8039ffcb38f964cf7b9636823250f..4d44e7a4fb1c774713b66d5e735c0712c5bbb587 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # improved MSDOS partition-table recognition
 
-# Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index fc1b6c323ebbd676168104b7ce4acbd7279871b2..cbc528849081de99619e5fb413cfb988cd6049a5 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Recognize PC98 labeled disks
 
-# Copyright (C) 2011-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2011-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index d27adcdaacca84f6801eeee9efb1e92d37380bb9..91fcfd2bdb00c849b849674c713bc4425c8eedd5 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Ensure parted preserves bootcode in extended partition.
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 56041f175f37023bfa92f45ade57504692eb774a..8420f12f7abdccc4d1415048e2e86a9e4d19e18d 100644 (file)
@@ -2,7 +2,7 @@
 # Ensure that parted allows a single sector between the beginning
 # of an extended partition and the first logical partition.
 
-# Copyright (C) 2010-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2010-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 6e25839e9802beccdcf0a36bacef6af476d28e1c..4c3668c4097d7a42fcf01e60880d2b7e01d9ebcd 100644 (file)
@@ -2,7 +2,7 @@
 # Ensure that the extended partition reports the correct length
 # after adding another partition.
 
-# Copyright (C) 2015, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2015, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 642f15d3b5d9bad7fb704b8828a0337c580c5bda..8c137b9c874d877bc623603e5659b2aba19ab0c3 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Ensure that an HFS partition in a dos table gets the right ID
 
-# Copyright (C) 2010-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2010-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index facb2861f029262ef699f5f1d859e141a87517d0..81fe0fec9f45b4935c2948c7541955715c2f391d 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Ensure that an UDF partition in a dos table gets the right ID
 
-# Copyright (C) 2018-2019 Free Software Foundation, Inc.
+# Copyright (C) 2018-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index c3ca7da9569fbb2bb41dce8dfc57b5e559537ae4..3b4ade8f8c348dbae71476887eb459a467fcece6 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Do not misbehave when probing a corrupt HFS partition.
 
-# Copyright (C) 2011-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2011-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index cc2b1c032612f66942d5fe9bd4a41debcff7cdd2..64b038d06c408c7244ce57a3241295f5e81020ad 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # exercise the resize library; FAT and HFS+ only
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 4565e996d1af4d928e783014e8e00fab8fc7a3d8..c0a5891118ed92679af8fb9c093d0fcbc901c30a 100755 (executable)
@@ -2,7 +2,7 @@
 # exercise the resize sub-command
 # based on t3000-resize-fs.sh test
 
-# Copyright (C) 2009-2011, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -63,9 +63,11 @@ parted -m -s $dev u s p > out 2>&1 || fail=1
 wait_for_dev_to_appear_ ${dev}1 || { warn_ "${dev}1 did not appear"  fail=1; }
 sleep 1
 
+# Running it without end should not core-dump or prompt
+parted -s $dev resizepart 1 > out 2> err || fail=1
 
-# extend the filesystem to end on sector 4096
-new_end=4096s
+# extend the filesystem to end on sector 2048
+new_end=2048s
 parted -s $dev resizepart 1 $new_end > out 2> err || fail=1
 # expect no output
 compare /dev/null out || fail=1
@@ -75,9 +77,45 @@ compare /dev/null err || fail=1
 parted -m -s $dev u s p > out 2>&1 || fail=1
 
 sed -n 3p out > k && mv k out || fail=1
-printf "1:$default_start:$new_end:3073s:::$ms;\n" > exp || fail=1
+printf "1:$default_start:$new_end:1025s:::$ms;\n" > exp || fail=1
 compare exp out || fail=1
 
+## Make sure resizing a busy partition works when user answers 'yes'
+# Format the partition and mount it for the busy check
+mkfs.ext4 "${dev}1" || skip_ mkfs.ext4 failed
+
+# be sure to unmount upon interrupt, failure, etc.
+cleanup_fn_() { umount "${dev}1" > /dev/null 2>&1; }
+
+mount_point=$(pwd)/mnt
+
+mkdir $mount_point || fail=1
+mount "${dev}1" "$mount_point" || fail=1
+
+# extend the filesystem to end on sector 4096
+new_end=4096s
+echo yes | parted ---pretend-input-tty $dev resizepart 1 $new_end > out 2>&1
+cat > exp <<EOF
+Warning: Partition ${dev}1 is being used. Are you sure you want to continue?
+Yes/No? yes
+Information: You may need to update /etc/fstab.
+
+EOF
+# Transform the actual output, to avoid spurious differences when
+# $PWD contains a symlink-to-dir.  Also, remove the ^M      ...^M bogosity.
+# normalize the actual output
+mv out o2 && sed -e "s,\r   *\r,,g;s, $,," o2 > out
+compare exp out || fail=1
+
+# print partition table
+parted -m -s $dev u s p > out 2>&1 || fail=1
+
+sed -n 3p out > k && mv k out || fail=1
+printf "1:$default_start:$new_end:3073s:ext2::$ms;\n" > exp || fail=1
+compare exp out || fail=1
+
+umount "${dev}1" || fail=1
+
 # Remove the partition explicitly, so that mklabel doesn't evoke a warning.
 parted -s $dev rm 1 || fail=1
 
index 6949eaf6d84b22cbd355a5d69a06d0d759d6a179..39904e0cf6dbd3ded4268d69dd717cdb169d24d3 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Ensure parted doesn't change the type of a partition to match its FS.
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index b8ce23556464cc466431eb5fa1fbe83f1a636f57..f1ecbff03cce26094071d0095ac74fb1f3330349 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Ensure that palo and prep types work properly.
 
-# Copyright (C) 2010-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2010-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index c55a6aa4333ad507aed8dd710c81c35c7f8e8c4e..09a3b812c69a6e0dc2f093b81e21d9b03b0c242f 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Exercise partition flags.
 
-# Copyright (C) 2010-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2010-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 886e08d6cecbc637e197acba35d93ae4dd584358..c0170db70a569df817421320a90a89ef9b8398bb 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Ensure that a whole-disk FAT partition is detected.
 
-# Copyright (C) 2010-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2010-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index d8399cdb3dfec0c66ba7d1749181ebfcf185865f..32b5fc0ed4acdebbcadde79a0907c39bcd8edff1 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # RAID support on sun disk type
 
-# Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 8ef4eb53c31e0d592d801956f658f64e4e0df9ad..e733e04d3c0b41c73b1c59b4a8175b6d031e753c 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Ensure that Sun VTOC is properly initialized.
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index ecee10d7be0a46b5c2be13ad1cc9038d3bc7d41e..97d3b42924508b601fd27d1ab9a8ee2c5c267577 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # enforce limits on partition start sector and length
 
-# Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 8ac33c1ca1695fdc34a78b7207c6d4f727500635..10d1eb2f80ec1ff2d46f1abc557be5448a8d3844 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # enforce limits on partition start sector and length
 
-# Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 258c28574e7d6b80f75c956bbc241bd4a88bd505..12c246bb33752c52c6cbd1e4432a52e79a29424d 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Consistency in msdos free space starting sector.
 
-# Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 79f9c5d78ffc6f93ac9cb678132be98fc01d77ce..6df8ab38c848abe9a97e2b307b80caae560129a1 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # partprobe must not examine more than 16 partitions
 
-# Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 46175d1a4dad041901a9e651bc14932d493b295d..81cd10595d612b7c01178e401f5b47b0644ae404 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Trigger a nilfs2-related bug.
 
-# Copyright (C) 2011-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2011-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 3420206b0c84875bdd0937cabc4fe8fc43e014e5..2f09c41016566a3f085e027c5ca0b2563712e5fc 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Trigger a nilfs2-related bug.
 
-# Copyright (C) 2011-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2011-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 57379a8ba03cf35c96b9c37a184649c83efbc7f4..db77a29b4ae1d84f34349687e9c7387fcc309cfe 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Trigger a nilfs2-related bug.
 
-# Copyright (C) 2011-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2011-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 2801d2019343398e4c9e6ebb6133820c9a60834b..711f878342ae4904a996ce825f7c20e170f6a1db 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # test bios_grub flag in gpt labels
 
-# Copyright (C) 2007-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2007-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 60a8f7aa129d2aea7d32cdaebefb7a9baaa9fecd..9cec24f2cfcd495770f2da65fa328bd16bc0934b 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # ensure that parted can distinguish device map types: linear, multipath
 
-# Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index e350bd2890b1c48b6b744b3ed2fb268056c4412f..b153ce2ca26b52970597f526b89708e944f68fbf 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # ensure that parted names partitions on dm disks correctly
 
-# Copyright (C) 2011-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2011-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -21,7 +21,8 @@
 require_root_
 require_udevadm_settle_
 
-(dmsetup --help) > /dev/null 2>&1 || skip_test_ "No dmsetup installed"
+test "x$ENABLE_DEVICE_MAPPER" = xyes \
+  || skip_ "no device-mapper support"
 
 # Device maps names - should be random to not conflict with existing ones on
 # the system
index 3476714dfde5eb3bb548c945a51774c1f8f0ed0a..1e64245309f319ae4b279e665fb0360894fefcec 100644 (file)
@@ -2,7 +2,7 @@
 # ensure that parted can alter a partition on a dmraid disk
 # while another one is mounted
 
-# Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index c5c2f6f2e16723cb2f3fc2e35d661c59079be7da..88545475d04123c5ede7d5fe668ac679fc306312 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # ensure that parted -l only shows dmraid device-mapper devices
 
-# Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index b4be9756a8d9b0c904670ef1eab4f9072816042a..e312bfe101d5ef26152e589e178afb1baa0a8ced 100755 (executable)
@@ -2,7 +2,7 @@
 # device-mapper: create many partitions
 # This would not create partitions > 16 when using device-mapper
 
-# Copyright (C) 2012, 2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2012, 2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -21,7 +21,9 @@
 
 require_root_
 require_udevadm_settle_
-(dmsetup --help) > /dev/null 2>&1 || skip_test_ "No dmsetup installed"
+
+test "x$ENABLE_DEVICE_MAPPER" = xyes \
+  || skip_ "no device-mapper support"
 
 ss=$sector_size_
 ns=300
index 426674701994cc335a1a8896fc3edfb33727403f..dcaac67ff9838d101f3c5a6293a89fa3904c672e 100755 (executable)
@@ -2,7 +2,7 @@
 # device-mapper: preserve uuid
 # The dm's partitions uuid would be removed when creating new partitions
 
-# Copyright (C) 2012, 2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2012, 2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -21,7 +21,9 @@
 
 require_root_
 require_udevadm_settle_
-(dmsetup --help) > /dev/null 2>&1 || skip_test_ "No dmsetup installed"
+
+test "x$ENABLE_DEVICE_MAPPER" = xyes \
+  || skip_ "no device-mapper support"
 
 ss=$sector_size_
 ns=300
index bf32135abd829cc9be3547b36fd4fd069166a5dd..2460c49fef793a83c1a44027e91b8194263926a7 100644 (file)
@@ -2,7 +2,7 @@
 # device-mapper sector sizes are 512b, make sure partitions are the correct
 # size when using larger sector sizes and a linear dm table.
 
-# Copyright (C) 2015, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2015, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -25,7 +25,8 @@ require_scsi_debug_module_
 grep '^#define USE_BLKID 1' "$CONFIG_HEADER" > /dev/null ||
   skip_ 'this system lacks a new-enough libblkid'
 
-(dmsetup --help) > /dev/null 2>&1 || skip_test_ "No dmsetup installed"
+test "x$ENABLE_DEVICE_MAPPER" = xyes \
+  || skip_ "no device-mapper support"
 
 # Device maps names - should be random to not conflict with existing ones on
 # the system
index b98bba08a4c91c452bdb52659779257262119438..f4c5845c32c01ce8ec89a24a4a07ab145f12d100 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # verify that new kernel is informed about partitions on mdraid devices
 
-# Copyright (C) 2011-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2011-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index d8140ee897853cac20990fd20db99546663ad26f..249d5643303b889d72563ce9306603209e655af5 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Make sure the scripting option works (-s) properly.
 
-# Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 271f6f69bc05ad3af4787e44618e97d41c20a265..d9fcb819cc2c12a2b7ce6e49f636f428503877a7 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Test usage of loop devices
 
-# Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 8df50fd85396f69e8807b79586570bf9af009cda..c98c686fc36bfb9c0d1bb0df05d0237049a34f08 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Test support for partitions on loop devices
 
-# Copyright (C) 2008-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index dc408a510763ccc4ee3201511f6a097d4eb671ec..7e96f03852790741fd05682d9e277143f83a754e 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # check physical sector size as reported by 'print'
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index b24096ee2af287f32c67ecec39ba7a68fe9244ce..5f7d4b376a7ed20f2f6221b8b339f97c877df2c0 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # verify that new alignment-querying functions work
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index d5c71b48343c58c22bc1b46cc6eec185f1841c8a..1f0d4e7b8facc2deec1c04c4cb31f9efea9b77c0 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # verify that partition maxima-querying functions work
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index ec500a0f6ba96667fc031c30c1efcecd93b3c198..a42a2e2a63abd49716c2d1bc17fea5f1256a1f8f 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Confirm that specifying 1 unit snaps to the correct value
 
-# Copyright (C) 2011-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2011-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 0fe8f425705f731bb6ac7d4e5ea9ed612e1851e6..fb25497d29362b1ed40019e3dbc56477673bd0a9 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Confirm that a value between 0 and 1 throws an error
 
-# Copyright (C) 2011-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2011-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index faf794ff984f90a41b5ed9bb358b1af6c8548c26..499628171470d12cdb79a19832df1070bbcc5e22 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # exercise the align-check command
 
-# Copyright (C) 2009-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2009-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index e5985ce536e68aa6faf26e094ab4d94646910c6e..6a66d12d23af3885f9dc9b2b3844cbd2998d8c67 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Ensure that creating many partitions works.
 
-# Copyright (C) 2010-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2010-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 1e28a65c337316aa883fe3daf9f334eb170c4b0c..a4a3020199354815966f6c9e8e8157318c660c13 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Ensure that parted knows when N'th (N>=16) partition is mounted
 
-# Copyright (C) 2010-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2010-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index 5fd3fdb0daee19f80245160aa8096676716cc37c..0f44fc93ad9051a0dd98c6323787f9b5fdc2d752 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Ensure that parted enforces msdos partition limit
 
-# Copyright (C) 2010-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2010-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
index d51935955a5e4e6dd76cef19eb65c46f1b08cf7e..57e004a45441d781bb4ef70d089c8837b7c738a9 100755 (executable)
@@ -3,7 +3,7 @@
 # I.e., write a partition table of type T, and then overwrite it
 # with one of type V, for every permutation of T and V.
 
-# Copyright (C) 2011-2014, 2019 Free Software Foundation, Inc.
+# Copyright (C) 2011-2014, 2019-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by