Eli Zaretskii
-Copyright (C) 2001, 2006, 2009-2013 Free Software Foundation, Inc.
+Copyright (C) 2001, 2006, 2009-2013, 2015-2016 Free Software Foundation, Inc.
This file is part of GNU diffutils.
+2016-08-08 Jim Meyering <meyering@fb.com>
+
+ version 3.4
+ * NEWS: Record release date.
+
+2016-08-06 Jim Meyering <meyering@fb.com>
+
+ gnulib: update to latest
+
+ tests: tweak built_programs definition
+ * tests/Makefile.am (built_programs): Adjust to work around what
+ may be a problem due to interaction between Solaris 10's /bin/sh
+ and an old version of GNU make. Reported by Dagobert Michelsen
+ in https https://bugs.gnu.org/24137.
+
+2016-08-02 Jim Meyering <meyering@fb.com>
+
+ gnulib: update to latest
+
+ tests: skip a /proc/self-dependent test on the Hurd
+ * tests/brief-vs-stat-zero-kernel-lies: The Hurd's /proc/self
+ is not useful, so detect that and skip the test that requires it.
+ Reported by Assaf Gordon in https://debbugs.gnu.org/24121#29
+
+2016-08-01 Jim Meyering <meyering@fb.com>
+
+ tests/colors: fix portability problem with touch --date
+ * tests/colors (epoch): Don't use GNU touch's --date=$epoch option.
+ Use the portable -t 197001010000.00.
+ Reported by Assaf Gordon in https://debbugs.gnu.org/24121#8
+
+ build: Solaris 9: avoid link failure due to isblank use
+ * bootstrap.conf (gnulib_modules): Add isblank, to avoid a link
+ error on Solaris 9 Sparc. Reported by Dagobert Michelsen.
+
+ test: improve test infrastructure
+ * tests/envvar-check: New file, copied from grep, with the addition
+ of the EDITOR and GREP_OPTIONS envvar names.
+ * tests/Makefile.am (EXTRA_DIST): Add it.
+ (TESTS_ENVIRONMENT): Revamp, to be more like that of grep.
+
+2016-07-31 Jim Meyering <meyering@fb.com>
+
+ maint: remove gl/lib/reg*.c.diff; no longer needed
+ * gl/lib/regcomp.c.diff: Remove file, now that gnulib's
+ regcomp.c compiles regex.c with -Wno-unused-parameter.
+ * gl/lib/regex_internal.c.diff: This file induced a change to ensure
+ that the "Idx" type was unsigned and to remove a few "VAR < 0"
+ comparisons. These days, it is probably fine to stay in sync with
+ gnulib/glibc's copies
+ of these files, so remove these patches, too.
+ * gl/lib/regexec.c.diff: Likewise.
+ Prompted by a report by Assaf Gordon and a suggestion from Paul Eggert.
+
+ tests: colors: fix a portability problem and work around a shell bug
+ * tests/colors (e): Fix a portability bug: use printf '\033'
+ rather than '\e' to generate the required byte sequence, since
+ for some shells (at least dash 0.5.8), the latter doesn't work.
+ Work around a shell bug whereby "local tab=$(printf '\t')"
+ would result in an empty value for "$tab": hoist each "tab"
+ definition up/out of its function to global scope.
+ Reported by Assaf Gordon in http://debbugs.gnu.org/24116#8
+
+2016-07-23 Jim Meyering <meyering@fb.com>
+
+ gnulib: update to latest; and tests/init.sh
+ * gnulib: Update to latest.
+ * init.sh: Update from gnulib.
+
+2016-05-30 Jim Meyering <meyering@fb.com>
+
+ maint: arrange for "make distcheck" to work with unreleased automake
+ * dist-check.mk (my-distcheck): Remove all .deps directories
+ before performing the recursive comparison.
+
+2016-05-24 Glenn Morris <rgm@gnu.org>
+
+ doc: fix a reference to emacs' emerge node
+ * doc/diffutils.texi (Interactive Merging): Correct a reference to
+ emacs' emerge node: s/emerge/Emerge/.
+ This addresses http://debbugs.gnu.org/23613
+
+2016-04-30 Jim Meyering <meyering@fb.com>
+
+ maint: arrange for better URLs in generated announcement message
+ * cfg.mk (url_dir_list): Define. I had been correcting the generated
+ URLs by hand, just before the announcement. This is better.
+
+2016-03-15 Jim Meyering <meyering@fb.com>
+
+ maint: don't ignore gitlog-to-changelog failure
+ * Makefile.am (gen-ChangeLog): Don't ignore failure of
+ gitlog-to-changelog. This syncs to coreutils' copy of this rule.
+
+2016-03-06 Giuseppe Scrivano <gscrivano@gnu.org>
+
+ diff: --color: fix an infinite recursion bug
+ * src/diff.h (presume_output_tty): New extern variable.
+ * src/diff.c (PRESUME_OUTPUT_TTY_OPTION): New enum.
+ (group_format_option): Add '-presume-output-tty'.
+ (main): Handle PRESUME_OUTPUT_TTY_OPTION.
+ * src/util.c: New variable `presume_output_tty'.
+ (check_color_output): Handle presume_output_tty.
+ (set_color_context): Call process_signals only when color_context is
+ not RESET_CONTEXT.
+ * tests/colors: Check that diff doesn't crash when interrupted
+ in the middle of a color sequence.
+
+ Reported by Gisle Vanem in http://debbugs.gnu.org/22067
+
+2016-01-31 Jim Meyering <meyering@fb.com>
+
+ maint: update prereq version of gettext
+ * configure.ac: Increase designated gettext version to 0.19.2
+ * bootstrap.conf (buildreq): Likewise.
+ Remove now-unnecessary code to remove gettext-provided files.
+
+ gnulib: update to latest
+
+2016-01-01 Jim Meyering <meyering@fb.com>
+
+ FIXME: src/diff3: plug a leak
+
+2016-01-01 Jim Meyering <meyering@fb.com>
+
+ maint: update copyright year, bootstrap, init.sh
+ Run "make update-copyright" and then...
+
+ * gnulib: Update to latest.
+ * tests/init.sh: Update from gnulib.
+ * bootstrap: Likewise.
+
+2015-12-06 Jim Meyering <meyering@fb.com>
+
+ diff --brief no longer mistakenly reports diff. with 0-sized /proc/ files
+ Normally, it is safe to assume two regular files are different when
+ their st_size values are different. However, that assumption may
+ be invalid if either value is zero, as happens with files on Linux
+ /proc and /sys file systems. Since skipping this optimization will
+ usually cost very little (one read syscall, to read zero bytes),
+ it is fine to accommodate those unusual files.
+ * src/analyze.c (diff_2_files): Do not assume regular files differ
+ just because their st_size values differ when one or more is 0.
+ * src/diff.c (compare_files): Likewise.
+ * tests/brief-vs-proc-stat-zero: New test.
+ * tests/Makefile.am: Add it.
+ * NEWS (Bug fixes): Describe it.
+ Reported by Stephan Müller in http://debbugs.gnu.org/21942
+
+ tests: arrange to print any skipped-test explanation to tty, too
+ I noticed that when a test was skipped, the reason was not printed.
+ This fixes it. In coreutils, this variable is set in init.cfg,
+ but there is no point in putting the definition so far from the
+ code that chooses the file descriptor number in tests/Makefile.am.
+ * tests/Makefile.am (TESTS_ENVIRONMENT) [stderr_fileno_]: Define
+ here (to 9), right next to the companion "9>&2".
+
+2015-11-29 Jim Meyering <meyering@fb.com>
+
+ build: add gperf to the list of required programs
+ * bootstrap.conf (buildreq): Add gperf to the list.
+ Reported by Stephan Müller in http://debbugs.gnu.org/21945
+
+2015-11-29 Giuseppe Scrivano <gscrivano@gnu.org>
+
+ tests: Add tests for --color and --palette
+ * tests/colors: New file.
+ * tests/Makefile.am (TESTS): Add colors.
+
+ doc: mention --color and --palette in NEWS
+
+ diff: add --palette
+ * bootstrap (gnulib_modules): Add 'argmatch'.
+ * doc/diffutils.texi: Add documentation for --palette
+ * src/diff.h (set_color_palette): New prototype.
+ * src/diff.c (set_color_palette): New function.
+ (color_palette): New variable.
+ * src/utils.c: Include "argmatch.h".
+ (struct bin_str): New struct.
+ (struct color_ext_type): New struct.
+ (color_indicator): New array.
+ (indicator_name): New array.
+ (indicator_no): New enum.
+ (parse_state): New enum.
+ (put_indicator): New function.
+ (get_funky_string): New function. Copied from coreutils ls.
+ (parse_diff_color): New function. Copied from coreutils ls
+ "parse_ls_color" function.
+ (set_color_context): Use put_indicator instead of directly
+ outputting the sequence.
+ * po/POTFILES.in: Add 'lib/argmatch.c'
+
+ diff: add support for --color
+ * doc/diffutils.texi (diff Options): Add documentation for --color.
+ Copied from coreutils ls --color.
+ * src/context.c (pr_unidiff_hunk): Set the color context.
+ (print_context_header): Likewise.
+ (pr_context_hunk): Likewise.
+ * src/diff.h (enum colors_style): New enum to record when to use colors.
+ (colors_style): New variable to memorize the argument value.
+ (set_color_context): Add function definition.
+ * src/diff.c: : Define COLOR_OPTION.
+ (specify_colors_style): New function.
+ (longopts): Add --color.
+ (main): Handle --color argument.
+ (option_help_msgid): Add usage string for --color.
+ * src/normal.c (print_normal_hunk): Set the color context.
+ * src/side.c (print_1sdiff_line): Likewise.
+ * src/util.c (print_1_line_nl): New function.
+ (print_1_line): Make it a wrapper of 'print_1_line_nl'.
+ (colors_enabled): New boolean variable.
+ (begin_output): Call check_color_output once the output file is
+ configured.
+ (output_1_line): Periodically call `process_signals'.
+ (caught_signals): New sigset_t.
+ (colors_enabled): New boolean variable.
+ (interrupt_signal): New sig_atomic_t.
+ (stop_signal_count): New sig_atomic_t.
+ (check_color_output): New function.
+ (install_signal_handlers): Likewise. Copied from coreutils ls.
+ (process_signals): Likewise. Copied from coreutils ls.
+ (set_color_context): New function.
+ (sighandler): Likewise. Copied from coreutils ls.
+ (stophandler): Likewise. Copied from coreutils ls.
+
+2015-09-24 Andreas Grünbacher <agruen@gnu.org>
+
+ diff: Improve help text of option --label
+ * src/diff.c (option_help_msgid): Improve help text of option --label.
+
+2015-09-01 Jim Meyering <meyering@fb.com>
+
+ build: correct man-page generation rule
+ The PATH was set incorrectly, so that the diff used by
+ help2man was the one from $PATH, rather than the just-built
+ one.
+ * man/Makefile.am (bin_dir): New variable, to...
+ (dist_man1_MANS): ...prepend ../src to PATH, not just "..".
+ Also, add a test to ensure that each $(bin_dir)/$$base is
+ executable, so this doesn't happen again.
+ In http://debbugs.gnu.org/21023, Rodrigo Valiña
+ Gutiérrez reported that diff.1 from the diffutils-3.3 tarball
+ contained no description of the then-new --no-dereference option.
+
+2015-07-10 Jim Meyering <meyering@fb.com>
+
+ doc: --no-dereference: improve wording/description
+ * doc/diffutils.texi (Comparing Directories): Correct grammar.
+ (diff Options) [--no-dereference]: Say a little more.
+
+2015-01-01 Jim Meyering <meyering@fb.com>
+
+ maint: update copyright year ranges to include 2015; update gnulib
+
+2014-12-12 KO Myung-Hun <komh@chollian.net>
+
+ diff: skip test if seek is not possible on OS/2 kLIBC
+ This fixes the problem that 'diff - file' and 'cat file | diff - file'
+ fail due to a seek failure with a message 'diff.exe: -: Invalid seek',
+ because seek does not work on stdin and a pipe on OS/2 kLIBC.
+
+ * src/io.c (sip): Set skip_test to true if seek is not possible on
+ OS/2 kLIBC.
+
+2014-12-09 Jim Meyering <meyering@fb.com>
+
+ gnulib: update to latest
+
+2014-12-09 KO Myung-Hun <komh78@gmail.com>
+
+ build: double-quote use of $PATH
+ * man/Makefile.am (dist_man1_MANS): On OS/2, PATH_SEPARATOR is ';',
+ but unquoted, that is interpreted as the shell's statement
+ terminator. Quote it.
+
+2014-10-27 Paul Eggert <eggert@cs.ucla.edu>
+
+ diff: fix integer overflow problem with --tabsize
+ Reported by Tobias Stoeckmann in: http://bugs.gnu.org/18857
+ * src/diff.c (main): Don't overflow if INTMAX_MAX / 2 < tabsize.
+ * tests/bignum: New file, to test for this bug.
+ * tests/Makefile.am (TESTS): Add it.
+
+2014-09-03 Paul Eggert <eggert@cs.ucla.edu>
+
+ doc: mention diff -B fix in NEWS
+
+ diff: fix bug with diff -B and incomplete lines
+ Reported by Navin Kabra via Eric Blake in:
+ http://bugs.gnu.org/18402
+ * src/util.c (analyze_hunk): Don't mishandle incomplete
+ lines at end of file.
+ * tests/no-newline-at-eof: Test for the bug.
+
+ diff: fix performance bug with prefix computation
+ * src/io.c (find_identical_ends): Fix performance bug:
+ the test for when the prefix was needed messed up by
+ the 2002-02-28 integer-overflow fixes, causing performance to be
+ worse than it needed to be.
+
+2014-08-23 Jim Meyering <meyering@fb.com>
+
+ gnulib: update to latest, as well as bootstrap
+
+ maint: update copyright year range in texinfo documentation
+ * doc/diffutils.texi: Update copyright.
+
+2014-04-15 Jim Meyering <meyering@fb.com>
+
+ maint: update bug-reporting address
+ * README: Change bug-gnu-utils@... to bug-diffutils@gnu.org.
+ * doc/diffutils.texi: Likewise.
+ Reported by Jamie Landeg Jones.
+
+2014-03-26 Paul Eggert <eggert@penguin.cs.ucla.edu>
+
+ diff: fix two "..." typos in --help output
+ * src/diff.c (option_help_msgid): Remove two "..." typos (Bug#17102).
+
+2014-03-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ doc: improve documentation about reading and stdin
+ See Bug#17075.
+ * doc/diffutils.texi (Comparison): Say that files need not be read.
+ (Invoking diff): Remove confusing remark about 'diff - -'.
+ It's not that useful, and it's not portable anyway.
+
+2014-02-24 Paul Eggert <eggert@cs.ucla.edu>
+
+ diff, sdiff: minor integer overflow fixes
+ * src/context.c (find_hunk):
+ Simplify, now that 2 * context + 1 cannot overflow.
+ * src/diff.c (main):
+ * src/sdiff.c (interact):
+ Don't rely on undefined behavior on signed integer overflow.
+ * src/diff.c (main): Don't let contexts exceed CONTEXT_MAX.
+ * src/system.h (CONTEXT_MAX): New macro.
+
+ diff: fix bug with -I and overlapping hunks
+ Problem reported by Vincent Lefevre in <http://bugs.gnu.org/16864>.
+ * src/context.c (find_hunk): Threshold is CONTEXT only if
+ the second change is ignorable.
+ * tests/ignore-matching-lines: New test.
+ * tests/Makefile.am (TESTS): Add it.
+
+2014-02-23 Paul Eggert <eggert@cs.ucla.edu>
+
+ diff: remove TOO_EXPENSIVE heuristic
+ Problem reported by Vincent Lefevre in <http://bugs.gnu.org/16848>.
+ The simplest solution is to remove the TOO_EXPENSIVE heuristic
+ that I added to GNU diff in 1993. Although appropriate for
+ circa-1993 hardware, these days the heuristic seems to be more
+ trouble than it's worth.
+ * NEWS: Document this.
+ * doc/diffutils.texi (Overview): Modernize citations.
+ Remove mention of TOO_EXPENSIVE heuristic.
+ * src/analyze.c (diff_2_files): Adjust to TOO_EXPENSIVE-related
+ API changes in gnulib's diffseq module.
+
+ build: update gnulib submodule to latest
+
+2014-01-31 Paul Eggert <eggert@cs.ucla.edu>
+
+ diff: exit with status 1, not 2, when binary files differ
+ Problem reported by Vincent Lefevre in <http://bugs.gnu.org/16608>.
+ * NEWS:
+ * doc/diffutils.texi (Binary, Invoking diff): Document this.
+ * src/analyze.c (briefly_report): Return void, not int.
+ All uses changed. Do not futz with exit status. Simplify.
+ * tests/binary: Adjust to match new behavior.
+
+2013-09-26 Paul Eggert <eggert@cs.ucla.edu>
+
+ build: omit -Wsuggest-attribute=pure for lib
+ * configure.ac (WARN_CFLAGS): Omit -Wsuggest-attribute=pure
+ when compiling the lib subdirectory. Reported for Fedora 19
+ by Eric Blake in <http://bugs.gnu.org/15463>.
+
+2013-08-22 Paul Eggert <eggert@cs.ucla.edu>
+
+ cmp, diff, sdiff: tune by using rawmemchr
+ On my platform (AMD Phenom II X4 910e, Fedora 17 x86-64), this sped up
+ 'cmp -n 8GiB /dev/full /dev/zero' by a factor of 3.8, and
+ 'cmp -sn 8GiB /dev/full /dev/zero' by a factor of 1.8.
+ * bootstrap.conf (gnulib_modules): Add rawmemchr.
+ * src/cmp.c (cmp): Optimize the common case where buffers are the same,
+ by using count_newlines rather than block_compare_and_count.
+ (block_compare_and_count): Remove.
+ (count_newlines): New function.
+ * src/cmp.c (count_newlines):
+ * src/io.c (prepare_text):
+ * src/sdiff.c (lf_copy, lf_skip, lf_snarf):
+ Use rawmemchr instead of memchr, for speed.
+
+2013-08-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ cmp: tune 'cmp a b' for GCC x86
+ Performance problem reported by David Balažic in:
+ http://lists.gnu.org/archive/html/bug-diffutils/2013-08/msg00013.html
+ * src/system.h (word): Make it size_t, not uintmax_t.
+ This sped up plain cmp 90% on my tests (GCC 4.8.1, x86).
+
+2013-07-06 Paul Eggert <eggert@cs.ucla.edu>
+
+ build: update gnulib submodule to latest
+
+2013-05-06 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ build: enable 'subdir-objects' automake option
+ The future major Automake version (2.0, ETA at least one year from now)
+ might enable that option unconditionally, so better get prepared in due
+ time.
+
+ * configure.ac (AM_INIT_AUTOMAKE): Adjust.
+ (AM_PROG_CC_C_O): New, required by Automake up to 1.13.x when the
+ 'subdir-objects' is in use.
+
+2013-04-28 Paul Eggert <eggert@cs.ucla.edu>
+
+ build: update gnulib submodule to latest
+
+2013-04-03 Paul Eggert <eggert@cs.ucla.edu>
+
+ diff: fix bug with Asian file names
+ Problem reported by Errembault Philippe in:
+ http://lists.gnu.org/archive/html/bug-diffutils/2013-03/msg00012.html
+ * NEWS: Document this.
+ * src/dir.c (compare_names): Fall back on file_name_cmp if
+ compare_collated returns 0, unless ignoring file name case.
+ (diff_dirs): Don't bother with the O(N**2) stuff unless ignoring
+ file name case.
+ * tests/Makefile.am (TESTS): Add strcoll-0-names.
+ * tests/strcoll-0-names: New file.
+
+ diff: remove unnecessary decl
+ * src/dir.c (compare_names_for_qsort): Remove declaration.
+ Not needed now that we assume C89.
+
+ diff: tune compare_names_for_qsort
+ * src/dir.c (compare_collated): New function.
+ (compare_names): Use it.
+ (compare_names_for_qsort): Use it. This is a bit more efficient
+ as it can avoid a double invocation of file_name_cmp when
+ file_name_cmp returns zero.
+
+2013-03-30 Jim Meyering <meyering@fb.com>
+
+ doc: mention new option, --no-dereference in 3.3's NEWS
+ * NEWS (New feeatures): Update 3.3's news to mention --no-dereference.
+ Reported by Denis Excoffier.
+ * Makefile.am (old_NEWS_hash): Update, since this modifies old, and
+ normally-immutable NEWS.
+
+2013-03-26 Paul Eggert <eggert@cs.ucla.edu>
+
+ tests: port to Solaris 10 /bin/sh
+ * tests/Makefile.am (TESTS_ENVIRONMENT):
+ Use "FOO=val; export FOO" rather than "export FOO=val",
+ as the latter form doesn't work with Solaris /bin/sh.
+ Problem found when trying to run "make check" on Solaris 10.
+
2013-03-24 Jim Meyering <meyering@fb.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.
-----
- Copyright (C) 1988-1994, 1997-2002, 2004, 2006, 2009-2013 Free Software
- Foundation, Inc.
+ Copyright (C) 1988-1994, 1997-2002, 2004, 2006, 2009-2013, 2015-2016
+ Free Software Foundation, Inc.
Copying and distribution of this file, with or without
modification, are permitted provided the copyright notice and this
# It is necessary if you want to build targets usually of interest
# only to the maintainer.
-# Copyright (C) 2001, 2003, 2006-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003, 2006-2016 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
Installation Instructions
*************************
-Copyright (C) 1994-1996, 1999-2002, 2004-2013 Free Software Foundation,
-Inc.
+ Copyright (C) 1994-1996, 1999-2002, 2004-2016 Free Software
+Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
Basic Installation
==================
- Briefly, the shell commands `./configure; make; make install' should
-configure, build, and install this package. The following
-more-detailed instructions are generic; see the `README' file for
+ Briefly, the shell command './configure && make && make install'
+should configure, build, and install this package. The following
+more-detailed instructions are generic; see the 'README' file for
instructions specific to this package. Some packages provide this
-`INSTALL' file but do not implement all of the features documented
+'INSTALL' file but do not implement all of the features documented
below. The lack of an optional feature in a given package is not
necessarily a bug. More recommendations for GNU packages can be found
in *note Makefile Conventions: (standards)Makefile Conventions.
- The `configure' shell script attempts to guess correct values for
+ The 'configure' shell script attempts to guess correct values for
various system-dependent variables used during compilation. It uses
-those values to create a `Makefile' in each directory of the package.
-It may also create one or more `.h' files containing system-dependent
-definitions. Finally, it creates a shell script `config.status' that
+those values to create a 'Makefile' in each directory of the package.
+It may also create one or more '.h' files containing system-dependent
+definitions. Finally, it creates a shell script 'config.status' that
you can run in the future to recreate the current configuration, and a
-file `config.log' containing compiler output (useful mainly for
-debugging `configure').
+file 'config.log' containing compiler output (useful mainly for
+debugging 'configure').
- It can also use an optional file (typically called `config.cache'
-and enabled with `--cache-file=config.cache' or simply `-C') that saves
-the results of its tests to speed up reconfiguring. Caching is
-disabled by default to prevent problems with accidental use of stale
-cache files.
+ It can also use an optional file (typically called 'config.cache' and
+enabled with '--cache-file=config.cache' or simply '-C') that saves the
+results of its tests to speed up reconfiguring. Caching is disabled by
+default to prevent problems with accidental use of stale cache files.
If you need to do unusual things to compile the package, please try
-to figure out how `configure' could check whether to do them, and mail
-diffs or instructions to the address given in the `README' so they can
+to figure out how 'configure' could check whether to do them, and mail
+diffs or instructions to the address given in the 'README' so they can
be considered for the next release. If you are using the cache, and at
-some point `config.cache' contains results you don't want to keep, you
+some point 'config.cache' contains results you don't want to keep, you
may remove or edit it.
- The file `configure.ac' (or `configure.in') is used to create
-`configure' by a program called `autoconf'. You need `configure.ac' if
-you want to change it or regenerate `configure' using a newer version
-of `autoconf'.
+ The file 'configure.ac' (or 'configure.in') is used to create
+'configure' by a program called 'autoconf'. You need 'configure.ac' if
+you want to change it or regenerate 'configure' using a newer version of
+'autoconf'.
The simplest way to compile this package is:
- 1. `cd' to the directory containing the package's source code and type
- `./configure' to configure the package for your system.
+ 1. 'cd' to the directory containing the package's source code and type
+ './configure' to configure the package for your system.
- Running `configure' might take a while. While running, it prints
+ Running 'configure' might take a while. While running, it prints
some messages telling which features it is checking for.
- 2. Type `make' to compile the package.
+ 2. Type 'make' to compile the package.
- 3. Optionally, type `make check' to run any self-tests that come with
+ 3. Optionally, type 'make check' to run any self-tests that come with
the package, generally using the just-built uninstalled binaries.
- 4. Type `make install' to install the programs and any data files and
+ 4. Type 'make install' to install the programs and any data files and
documentation. When installing into a prefix owned by root, it is
recommended that the package be configured and built as a regular
- user, and only the `make install' phase executed with root
+ user, and only the 'make install' phase executed with root
privileges.
- 5. Optionally, type `make installcheck' to repeat any self-tests, but
+ 5. Optionally, type 'make installcheck' to repeat any self-tests, but
this time using the binaries in their final installed location.
This target does not install anything. Running this target as a
- regular user, particularly if the prior `make install' required
+ regular user, particularly if the prior 'make install' required
root privileges, verifies that the installation completed
correctly.
6. You can remove the program binaries and object files from the
- source code directory by typing `make clean'. To also remove the
- files that `configure' created (so you can compile the package for
- a different kind of computer), type `make distclean'. There is
- also a `make maintainer-clean' target, but that is intended mainly
+ source code directory by typing 'make clean'. To also remove the
+ files that 'configure' created (so you can compile the package for
+ a different kind of computer), type 'make distclean'. There is
+ also a 'make maintainer-clean' target, but that is intended mainly
for the package's developers. If you use it, you may have to get
all sorts of other programs in order to regenerate files that came
with the distribution.
- 7. Often, you can also type `make uninstall' to remove the installed
+ 7. Often, you can also type 'make uninstall' to remove the installed
files again. In practice, not all packages have tested that
uninstallation works correctly, even though it is required by the
GNU Coding Standards.
- 8. Some packages, particularly those that use Automake, provide `make
+ 8. Some packages, particularly those that use Automake, provide 'make
distcheck', which can by used by developers to test that all other
- targets like `make install' and `make uninstall' work correctly.
+ targets like 'make install' and 'make uninstall' work correctly.
This target is generally not run by end users.
Compilers and Options
=====================
Some systems require unusual options for compilation or linking that
-the `configure' script does not know about. Run `./configure --help'
+the 'configure' script does not know about. Run './configure --help'
for details on some of the pertinent environment variables.
- You can give `configure' initial values for configuration parameters
-by setting variables in the command line or in the environment. Here
-is an example:
+ You can give 'configure' initial values for configuration parameters
+by setting variables in the command line or in the environment. Here is
+an example:
./configure CC=c99 CFLAGS=-g LIBS=-lposix
You can compile the package for more than one kind of computer at the
same time, by placing the object files for each architecture in their
-own directory. To do this, you can use GNU `make'. `cd' to the
+own directory. To do this, you can use GNU 'make'. 'cd' to the
directory where you want the object files and executables to go and run
-the `configure' script. `configure' automatically checks for the
-source code in the directory that `configure' is in and in `..'. This
-is known as a "VPATH" build.
+the 'configure' script. 'configure' automatically checks for the source
+code in the directory that 'configure' is in and in '..'. This is known
+as a "VPATH" build.
- With a non-GNU `make', it is safer to compile the package for one
+ With a non-GNU 'make', it is safer to compile the package for one
architecture at a time in the source code directory. After you have
-installed the package for one architecture, use `make distclean' before
+installed the package for one architecture, use 'make distclean' before
reconfiguring for another architecture.
On MacOS X 10.5 and later systems, you can create libraries and
executables that work on multiple system types--known as "fat" or
-"universal" binaries--by specifying multiple `-arch' options to the
-compiler but only a single `-arch' option to the preprocessor. Like
+"universal" binaries--by specifying multiple '-arch' options to the
+compiler but only a single '-arch' option to the preprocessor. Like
this:
./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
This is not guaranteed to produce working output in all cases, you
may have to build one architecture at a time and combine the results
-using the `lipo' tool if you have problems.
+using the 'lipo' tool if you have problems.
Installation Names
==================
- By default, `make install' installs the package's commands under
-`/usr/local/bin', include files under `/usr/local/include', etc. You
-can specify an installation prefix other than `/usr/local' by giving
-`configure' the option `--prefix=PREFIX', where PREFIX must be an
+ By default, 'make install' installs the package's commands under
+'/usr/local/bin', include files under '/usr/local/include', etc. You
+can specify an installation prefix other than '/usr/local' by giving
+'configure' the option '--prefix=PREFIX', where PREFIX must be an
absolute file name.
You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you
-pass the option `--exec-prefix=PREFIX' to `configure', the package uses
+pass the option '--exec-prefix=PREFIX' to 'configure', the package uses
PREFIX as the prefix for installing programs and libraries.
Documentation and other data files still use the regular prefix.
In addition, if you use an unusual directory layout you can give
-options like `--bindir=DIR' to specify different values for particular
-kinds of files. Run `configure --help' for a list of the directories
-you can set and what kinds of files go in them. In general, the
-default for these options is expressed in terms of `${prefix}', so that
-specifying just `--prefix' will affect all of the other directory
+options like '--bindir=DIR' to specify different values for particular
+kinds of files. Run 'configure --help' for a list of the directories
+you can set and what kinds of files go in them. In general, the default
+for these options is expressed in terms of '${prefix}', so that
+specifying just '--prefix' will affect all of the other directory
specifications that were not explicitly provided.
The most portable way to affect installation locations is to pass the
-correct locations to `configure'; however, many packages provide one or
+correct locations to 'configure'; however, many packages provide one or
both of the following shortcuts of passing variable assignments to the
-`make install' command line to change installation locations without
+'make install' command line to change installation locations without
having to reconfigure or recompile.
The first method involves providing an override variable for each
-affected directory. For example, `make install
+affected directory. For example, 'make install
prefix=/alternate/directory' will choose an alternate location for all
directory configuration variables that were expressed in terms of
-`${prefix}'. Any directories that were specified during `configure',
-but not in terms of `${prefix}', must each be overridden at install
-time for the entire installation to be relocated. The approach of
-makefile variable overrides for each directory variable is required by
-the GNU Coding Standards, and ideally causes no recompilation.
-However, some platforms have known limitations with the semantics of
-shared libraries that end up requiring recompilation when using this
-method, particularly noticeable in packages that use GNU Libtool.
-
- The second method involves providing the `DESTDIR' variable. For
-example, `make install DESTDIR=/alternate/directory' will prepend
-`/alternate/directory' before all installation names. The approach of
-`DESTDIR' overrides is not required by the GNU Coding Standards, and
+'${prefix}'. Any directories that were specified during 'configure',
+but not in terms of '${prefix}', must each be overridden at install time
+for the entire installation to be relocated. The approach of makefile
+variable overrides for each directory variable is required by the GNU
+Coding Standards, and ideally causes no recompilation. However, some
+platforms have known limitations with the semantics of shared libraries
+that end up requiring recompilation when using this method, particularly
+noticeable in packages that use GNU Libtool.
+
+ The second method involves providing the 'DESTDIR' variable. For
+example, 'make install DESTDIR=/alternate/directory' will prepend
+'/alternate/directory' before all installation names. The approach of
+'DESTDIR' overrides is not required by the GNU Coding Standards, and
does not work on platforms that have drive letters. On the other hand,
it does better at avoiding recompilation issues, and works well even
-when some directory options were not specified in terms of `${prefix}'
-at `configure' time.
+when some directory options were not specified in terms of '${prefix}'
+at 'configure' time.
Optional Features
=================
If the package supports it, you can cause programs to be installed
-with an extra prefix or suffix on their names by giving `configure' the
-option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
-
- Some packages pay attention to `--enable-FEATURE' options to
-`configure', where FEATURE indicates an optional part of the package.
-They may also pay attention to `--with-PACKAGE' options, where PACKAGE
-is something like `gnu-as' or `x' (for the X Window System). The
-`README' should mention any `--enable-' and `--with-' options that the
+with an extra prefix or suffix on their names by giving 'configure' the
+option '--program-prefix=PREFIX' or '--program-suffix=SUFFIX'.
+
+ Some packages pay attention to '--enable-FEATURE' options to
+'configure', where FEATURE indicates an optional part of the package.
+They may also pay attention to '--with-PACKAGE' options, where PACKAGE
+is something like 'gnu-as' or 'x' (for the X Window System). The
+'README' should mention any '--enable-' and '--with-' options that the
package recognizes.
- For packages that use the X Window System, `configure' can usually
+ For packages that use the X Window System, 'configure' can usually
find the X include and library files automatically, but if it doesn't,
-you can use the `configure' options `--x-includes=DIR' and
-`--x-libraries=DIR' to specify their locations.
+you can use the 'configure' options '--x-includes=DIR' and
+'--x-libraries=DIR' to specify their locations.
Some packages offer the ability to configure how verbose the
-execution of `make' will be. For these packages, running `./configure
+execution of 'make' will be. For these packages, running './configure
--enable-silent-rules' sets the default to minimal output, which can be
-overridden with `make V=1'; while running `./configure
+overridden with 'make V=1'; while running './configure
--disable-silent-rules' sets the default to verbose, which can be
-overridden with `make V=0'.
+overridden with 'make V=0'.
Particular systems
==================
- On HP-UX, the default C compiler is not ANSI C compatible. If GNU
-CC is not installed, it is recommended to use the following options in
+ On HP-UX, the default C compiler is not ANSI C compatible. If GNU CC
+is not installed, it is recommended to use the following options in
order to use an ANSI C compiler:
./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
and if that doesn't work, install pre-built binaries of GCC for HP-UX.
- HP-UX `make' updates targets which have the same time stamps as
-their prerequisites, which makes it generally unusable when shipped
-generated files such as `configure' are involved. Use GNU `make'
-instead.
+ HP-UX 'make' updates targets which have the same time stamps as their
+prerequisites, which makes it generally unusable when shipped generated
+files such as 'configure' are involved. Use GNU 'make' instead.
On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
-parse its `<wchar.h>' header file. The option `-nodtk' can be used as
-a workaround. If GNU CC is not installed, it is therefore recommended
-to try
+parse its '<wchar.h>' header file. The option '-nodtk' can be used as a
+workaround. If GNU CC is not installed, it is therefore recommended to
+try
./configure CC="cc"
./configure CC="cc -nodtk"
- On Solaris, don't put `/usr/ucb' early in your `PATH'. This
+ On Solaris, don't put '/usr/ucb' early in your 'PATH'. This
directory contains several dysfunctional programs; working variants of
-these programs are available in `/usr/bin'. So, if you need `/usr/ucb'
-in your `PATH', put it _after_ `/usr/bin'.
+these programs are available in '/usr/bin'. So, if you need '/usr/ucb'
+in your 'PATH', put it _after_ '/usr/bin'.
- On Haiku, software installed for all users goes in `/boot/common',
-not `/usr/local'. It is recommended to use the following options:
+ On Haiku, software installed for all users goes in '/boot/common',
+not '/usr/local'. It is recommended to use the following options:
./configure --prefix=/boot/common
Specifying the System Type
==========================
- There may be some features `configure' cannot figure out
+ There may be some features 'configure' cannot figure out
automatically, but needs to determine by the type of machine the package
will run on. Usually, assuming the package is built to be run on the
-_same_ architectures, `configure' can figure that out, but if it prints
+_same_ architectures, 'configure' can figure that out, but if it prints
a message saying it cannot guess the machine type, give it the
-`--build=TYPE' option. TYPE can either be a short name for the system
-type, such as `sun4', or a canonical name which has the form:
+'--build=TYPE' option. TYPE can either be a short name for the system
+type, such as 'sun4', or a canonical name which has the form:
CPU-COMPANY-SYSTEM
OS
KERNEL-OS
- See the file `config.sub' for the possible values of each field. If
-`config.sub' isn't included in this package, then this package doesn't
+ See the file 'config.sub' for the possible values of each field. If
+'config.sub' isn't included in this package, then this package doesn't
need to know the machine type.
If you are _building_ compiler tools for cross-compiling, you should
-use the option `--target=TYPE' to select the type of system they will
+use the option '--target=TYPE' to select the type of system they will
produce code for.
If you want to _use_ a cross compiler, that generates code for a
platform different from the build platform, you should specify the
"host" platform (i.e., that on which the generated programs will
-eventually be run) with `--host=TYPE'.
+eventually be run) with '--host=TYPE'.
Sharing Defaults
================
- If you want to set default values for `configure' scripts to share,
-you can create a site shell script called `config.site' that gives
-default values for variables like `CC', `cache_file', and `prefix'.
-`configure' looks for `PREFIX/share/config.site' if it exists, then
-`PREFIX/etc/config.site' if it exists. Or, you can set the
-`CONFIG_SITE' environment variable to the location of the site script.
-A warning: not all `configure' scripts look for a site script.
+ If you want to set default values for 'configure' scripts to share,
+you can create a site shell script called 'config.site' that gives
+default values for variables like 'CC', 'cache_file', and 'prefix'.
+'configure' looks for 'PREFIX/share/config.site' if it exists, then
+'PREFIX/etc/config.site' if it exists. Or, you can set the
+'CONFIG_SITE' environment variable to the location of the site script.
+A warning: not all 'configure' scripts look for a site script.
Defining Variables
==================
Variables not defined in a site shell script can be set in the
-environment passed to `configure'. However, some packages may run
+environment passed to 'configure'. However, some packages may run
configure again during the build, and the customized values of these
variables may be lost. In order to avoid this problem, you should set
-them in the `configure' command line, using `VAR=value'. For example:
+them in the 'configure' command line, using 'VAR=value'. For example:
./configure CC=/usr/local2/bin/gcc
-causes the specified `gcc' to be used as the C compiler (unless it is
+causes the specified 'gcc' to be used as the C compiler (unless it is
overridden in the site shell script).
-Unfortunately, this technique does not work for `CONFIG_SHELL' due to
-an Autoconf limitation. Until the limitation is lifted, you can use
-this workaround:
+Unfortunately, this technique does not work for 'CONFIG_SHELL' due to an
+Autoconf limitation. Until the limitation is lifted, you can use this
+workaround:
CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
-`configure' Invocation
+'configure' Invocation
======================
- `configure' recognizes the following options to control how it
+ 'configure' recognizes the following options to control how it
operates.
-`--help'
-`-h'
- Print a summary of all of the options to `configure', and exit.
+'--help'
+'-h'
+ Print a summary of all of the options to 'configure', and exit.
-`--help=short'
-`--help=recursive'
+'--help=short'
+'--help=recursive'
Print a summary of the options unique to this package's
- `configure', and exit. The `short' variant lists options used
- only in the top level, while the `recursive' variant lists options
- also present in any nested packages.
+ 'configure', and exit. The 'short' variant lists options used only
+ in the top level, while the 'recursive' variant lists options also
+ present in any nested packages.
-`--version'
-`-V'
- Print the version of Autoconf used to generate the `configure'
+'--version'
+'-V'
+ Print the version of Autoconf used to generate the 'configure'
script, and exit.
-`--cache-file=FILE'
+'--cache-file=FILE'
Enable the cache: use and save the results of the tests in FILE,
- traditionally `config.cache'. FILE defaults to `/dev/null' to
+ traditionally 'config.cache'. FILE defaults to '/dev/null' to
disable caching.
-`--config-cache'
-`-C'
- Alias for `--cache-file=config.cache'.
+'--config-cache'
+'-C'
+ Alias for '--cache-file=config.cache'.
-`--quiet'
-`--silent'
-`-q'
+'--quiet'
+'--silent'
+'-q'
Do not print messages saying which checks are being made. To
- suppress all normal output, redirect it to `/dev/null' (any error
+ suppress all normal output, redirect it to '/dev/null' (any error
messages will still be shown).
-`--srcdir=DIR'
+'--srcdir=DIR'
Look for the package's source code in directory DIR. Usually
- `configure' can determine that directory automatically.
+ 'configure' can determine that directory automatically.
-`--prefix=DIR'
- Use DIR as the installation prefix. *note Installation Names::
- for more details, including other options available for fine-tuning
- the installation locations.
+'--prefix=DIR'
+ Use DIR as the installation prefix. *note Installation Names:: for
+ more details, including other options available for fine-tuning the
+ installation locations.
-`--no-create'
-`-n'
+'--no-create'
+'-n'
Run the configure checks, but stop before creating any output
files.
-`configure' also accepts some other, not widely useful, options. Run
-`configure --help' for more details.
+'configure' also accepts some other, not widely useful, options. Run
+'configure --help' for more details.
# Main Automakefile for GNU diffutils.
-# Copyright (C) 2001-2002, 2004, 2006, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2002, 2004, 2006, 2009-2013, 2015-2016 Free Software
+# Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
gen-ChangeLog:
$(AM_V_GEN)if test -d .git; then \
$(top_srcdir)/build-aux/gitlog-to-changelog \
- --since=$(gen_start_date) > $(distdir)/cl-t; \
- rm -f $(distdir)/ChangeLog; \
- mv $(distdir)/cl-t $(distdir)/ChangeLog; \
+ --since=$(gen_start_date) > $(distdir)/cl-t && \
+ { rm -f $(distdir)/ChangeLog && \
+ mv $(distdir)/cl-t $(distdir)/ChangeLog; } \
fi
ALL_RECURSIVE_TARGETS += distcheck-hook
-# Makefile.in generated by automake 1.13a from Makefile.am.
+# Makefile.in generated by automake 1.99a from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+# Copyright (C) 1994-2015 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Main Automakefile for GNU diffutils.
-# Copyright (C) 2001-2002, 2004, 2006, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2002, 2004, 2006, 2009-2013, 2015-2016 Free Software
+# Foundation, Inc.
# This 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 <http://www.gnu.org/licenses/>.
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = { \
+ if test -z '$(MAKELEVEL)'; then \
+ false; \
+ elif test -n '$(MAKE_HOST)'; then \
+ true; \
+ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+ true; \
+ else \
+ false; \
+ fi; \
+}
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
esac; \
- test $$am__dry = yes; \
- }
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
build_triplet = @build@
host_triplet = @host@
subdir = .
-DIST_COMMON = INSTALL NEWS README AUTHORS ChangeLog \
- $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
- $(top_srcdir)/configure $(am__configure_deps) ABOUT-NLS \
- COPYING THANKS TODO build-aux/compile build-aux/config.guess \
- build-aux/config.rpath build-aux/config.sub build-aux/depcomp \
- build-aux/install-sh build-aux/mdate-sh build-aux/missing \
- build-aux/texinfo.tex $(top_srcdir)/build-aux/compile \
- $(top_srcdir)/build-aux/config.guess \
- $(top_srcdir)/build-aux/config.rpath \
- $(top_srcdir)/build-aux/config.sub \
- $(top_srcdir)/build-aux/install-sh \
- $(top_srcdir)/build-aux/missing
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
- $(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/btowc.m4 \
+ $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \
+ $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/btowc.m4 \
$(top_srcdir)/m4/c-stack.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/dirname.m4 \
+ $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
$(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
$(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
$(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
$(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fcntl-o.m4 \
$(top_srcdir)/m4/fcntl.m4 $(top_srcdir)/m4/fcntl_h.m4 \
$(top_srcdir)/m4/fdopen.m4 $(top_srcdir)/m4/filenamecat.m4 \
- $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fnmatch.m4 \
- $(top_srcdir)/m4/fpieee.m4 $(top_srcdir)/m4/freopen.m4 \
- $(top_srcdir)/m4/fstat.m4 $(top_srcdir)/m4/getcwd.m4 \
+ $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \
+ $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fpieee.m4 \
+ $(top_srcdir)/m4/freopen.m4 $(top_srcdir)/m4/fstat.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/gettext.m4 \
$(top_srcdir)/m4/gettime.m4 $(top_srcdir)/m4/gettimeofday.m4 \
$(top_srcdir)/m4/gnulib-comp.m4 \
$(top_srcdir)/m4/hard-locale.m4 $(top_srcdir)/m4/iconv.m4 \
$(top_srcdir)/m4/iconv_h.m4 $(top_srcdir)/m4/iconv_open.m4 \
- $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inline.m4 \
- $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \
- $(top_srcdir)/m4/inttostr.m4 $(top_srcdir)/m4/inttypes-pri.m4 \
- $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \
- $(top_srcdir)/m4/iswblank.m4 $(top_srcdir)/m4/langinfo_h.m4 \
- $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \
- $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/libsigsegv.m4 \
+ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
+ $(top_srcdir)/m4/inline.m4 $(top_srcdir)/m4/intlmacosx.m4 \
+ $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttostr.m4 \
+ $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+ $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/ioctl.m4 \
+ $(top_srcdir)/m4/isblank.m4 $(top_srcdir)/m4/iswblank.m4 \
+ $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
+ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
+ $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \
$(top_srcdir)/m4/libunistring-base.m4 \
$(top_srcdir)/m4/localcharset.m4 $(top_srcdir)/m4/locale-fr.m4 \
$(top_srcdir)/m4/locale-ja.m4 $(top_srcdir)/m4/locale-tr.m4 \
$(top_srcdir)/m4/mktime.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/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
$(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/off_t.m4 \
$(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
+ $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
$(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/putenv.m4 \
$(top_srcdir)/m4/quote.m4 $(top_srcdir)/m4/quotearg.m4 \
- $(top_srcdir)/m4/raise.m4 $(top_srcdir)/m4/readlink.m4 \
- $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/secure_getenv.m4 \
+ $(top_srcdir)/m4/raise.m4 $(top_srcdir)/m4/rawmemchr.m4 \
+ $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/regex.m4 \
+ $(top_srcdir)/m4/secure_getenv.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/signalblocking.m4 \
$(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \
- $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/ssize_t.m4 \
+ $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/socketlib.m4 \
+ $(top_srcdir)/m4/sockets.m4 $(top_srcdir)/m4/socklen.m4 \
+ $(top_srcdir)/m4/sockpfaf.m4 $(top_srcdir)/m4/ssize_t.m4 \
$(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \
- $(top_srcdir)/m4/stdarg.m4 $(top_srcdir)/m4/stdbool.m4 \
- $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \
- $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \
- $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/strcase.m4 \
- $(top_srcdir)/m4/strerror.m4 $(top_srcdir)/m4/strftime.m4 \
+ $(top_srcdir)/m4/stdalign.m4 $(top_srcdir)/m4/stdarg.m4 \
+ $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \
+ $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \
+ $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \
+ $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strerror.m4 \
+ $(top_srcdir)/m4/strerror_r.m4 $(top_srcdir)/m4/strftime.m4 \
$(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \
$(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \
$(top_srcdir)/m4/strptime.m4 $(top_srcdir)/m4/strtoull.m4 \
$(top_srcdir)/m4/strtoumax.m4 $(top_srcdir)/m4/symlink.m4 \
+ $(top_srcdir)/m4/sys_ioctl_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 \
- $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_wait_h.m4 \
- $(top_srcdir)/m4/tempname.m4 $(top_srcdir)/m4/time_h.m4 \
- $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/timespec.m4 \
- $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/unistd_h.m4 \
- $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/usleep.m4 \
+ $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_uio_h.m4 \
+ $(top_srcdir)/m4/sys_wait_h.m4 $(top_srcdir)/m4/tempname.m4 \
+ $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \
+ $(top_srcdir)/m4/time_rz.m4 $(top_srcdir)/m4/timegm.m4 \
+ $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \
+ $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlocked-io.m4 \
$(top_srcdir)/m4/vararrays.m4 $(top_srcdir)/m4/vasnprintf.m4 \
$(top_srcdir)/m4/vasprintf.m4 $(top_srcdir)/m4/version-etc.m4 \
$(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
$(top_srcdir)/m4/xvasprintf.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
+ $(am__configure_deps) $(am__DIST_COMMON)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno config.status.lineno
mkinstalldirs = $(install_sh) -d
CTAGS = ctags
CSCOPE = cscope
DIST_SUBDIRS = $(SUBDIRS)
+am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/build-aux/ar-lib \
+ $(top_srcdir)/build-aux/compile \
+ $(top_srcdir)/build-aux/config.guess \
+ $(top_srcdir)/build-aux/config.rpath \
+ $(top_srcdir)/build-aux/config.sub \
+ $(top_srcdir)/build-aux/install-sh \
+ $(top_srcdir)/build-aux/missing ABOUT-NLS AUTHORS COPYING \
+ ChangeLog INSTALL NEWS README THANKS TODO build-aux/ar-lib \
+ build-aux/compile build-aux/config.guess \
+ build-aux/config.rpath build-aux/config.sub build-aux/depcomp \
+ build-aux/install-sh build-aux/mdate-sh build-aux/missing \
+ build-aux/texinfo.tex
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
GLIBC21 = @GLIBC21@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
+GNULIB_ACCEPT = @GNULIB_ACCEPT@
+GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
GNULIB_ATOLL = @GNULIB_ATOLL@
+GNULIB_BIND = @GNULIB_BIND@
GNULIB_BTOWC = @GNULIB_BTOWC@
GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@
GNULIB_CANONICALIZE_FILE_NAME = @GNULIB_CANONICALIZE_FILE_NAME@
GNULIB_CHDIR = @GNULIB_CHDIR@
GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
+GNULIB_CONNECT = @GNULIB_CONNECT@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
GNULIB_DUP = @GNULIB_DUP@
GNULIB_DUP2 = @GNULIB_DUP2@
GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
+GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
+GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
GNULIB_ICONV = @GNULIB_ICONV@
GNULIB_IMAXABS = @GNULIB_IMAXABS@
GNULIB_IMAXDIV = @GNULIB_IMAXDIV@
+GNULIB_INET_NTOP = @GNULIB_INET_NTOP@
+GNULIB_INET_PTON = @GNULIB_INET_PTON@
+GNULIB_IOCTL = @GNULIB_IOCTL@
GNULIB_ISATTY = @GNULIB_ISATTY@
+GNULIB_ISBLANK = @GNULIB_ISBLANK@
GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
GNULIB_LCHMOD = @GNULIB_LCHMOD@
GNULIB_LCHOWN = @GNULIB_LCHOWN@
GNULIB_LINK = @GNULIB_LINK@
GNULIB_LINKAT = @GNULIB_LINKAT@
+GNULIB_LISTEN = @GNULIB_LISTEN@
GNULIB_LOCALECONV = @GNULIB_LOCALECONV@
GNULIB_LSEEK = @GNULIB_LSEEK@
GNULIB_LSTAT = @GNULIB_LSTAT@
GNULIB_PREAD = @GNULIB_PREAD@
GNULIB_PRINTF = @GNULIB_PRINTF@
GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@
+GNULIB_PSELECT = @GNULIB_PSELECT@
GNULIB_PTHREAD_SIGMASK = @GNULIB_PTHREAD_SIGMASK@
GNULIB_PTSNAME = @GNULIB_PTSNAME@
GNULIB_PTSNAME_R = @GNULIB_PTSNAME_R@
GNULIB_PUTENV = @GNULIB_PUTENV@
GNULIB_PUTS = @GNULIB_PUTS@
GNULIB_PWRITE = @GNULIB_PWRITE@
+GNULIB_QSORT_R = @GNULIB_QSORT_R@
GNULIB_RAISE = @GNULIB_RAISE@
GNULIB_RANDOM = @GNULIB_RANDOM@
GNULIB_RANDOM_R = @GNULIB_RANDOM_R@
GNULIB_READLINKAT = @GNULIB_READLINKAT@
GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@
GNULIB_REALPATH = @GNULIB_REALPATH@
+GNULIB_RECV = @GNULIB_RECV@
+GNULIB_RECVFROM = @GNULIB_RECVFROM@
GNULIB_REMOVE = @GNULIB_REMOVE@
GNULIB_RENAME = @GNULIB_RENAME@
GNULIB_RENAMEAT = @GNULIB_RENAMEAT@
GNULIB_RPMATCH = @GNULIB_RPMATCH@
GNULIB_SCANF = @GNULIB_SCANF@
GNULIB_SECURE_GETENV = @GNULIB_SECURE_GETENV@
+GNULIB_SELECT = @GNULIB_SELECT@
+GNULIB_SEND = @GNULIB_SEND@
+GNULIB_SENDTO = @GNULIB_SENDTO@
GNULIB_SETENV = @GNULIB_SETENV@
GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
+GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
GNULIB_SIGACTION = @GNULIB_SIGACTION@
GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
GNULIB_SLEEP = @GNULIB_SLEEP@
GNULIB_SNPRINTF = @GNULIB_SNPRINTF@
+GNULIB_SOCKET = @GNULIB_SOCKET@
GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@
GNULIB_STAT = @GNULIB_STAT@
GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@
GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@
GNULIB_TIMEGM = @GNULIB_TIMEGM@
GNULIB_TIME_R = @GNULIB_TIME_R@
+GNULIB_TIME_RZ = @GNULIB_TIME_RZ@
GNULIB_TMPFILE = @GNULIB_TMPFILE@
GNULIB_TOWCTRANS = @GNULIB_TOWCTRANS@
GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@
GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
+HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@
HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@
HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@
+HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@
+HAVE_DECL_INET_PTON = @HAVE_DECL_INET_PTON@
HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@
HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@
HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
+HAVE_ISBLANK = @HAVE_ISBLANK@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@
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@
HAVE_MBRTOWC = @HAVE_MBRTOWC@
HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MKSTEMPS = @HAVE_MKSTEMPS@
HAVE_MSVC_INVALID_PARAMETER_HANDLER = @HAVE_MSVC_INVALID_PARAMETER_HANDLER@
HAVE_NANOSLEEP = @HAVE_NANOSLEEP@
+HAVE_NETINET_IN_H = @HAVE_NETINET_IN_H@
HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@
HAVE_OPENAT = @HAVE_OPENAT@
HAVE_OS_H = @HAVE_OS_H@
HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
HAVE_PREAD = @HAVE_PREAD@
+HAVE_PSELECT = @HAVE_PSELECT@
HAVE_PTHREAD_SIGMASK = @HAVE_PTHREAD_SIGMASK@
HAVE_PTSNAME = @HAVE_PTSNAME@
HAVE_PTSNAME_R = @HAVE_PTSNAME_R@
HAVE_REALPATH = @HAVE_REALPATH@
HAVE_RENAMEAT = @HAVE_RENAMEAT@
HAVE_RPMATCH = @HAVE_RPMATCH@
+HAVE_SA_FAMILY_T = @HAVE_SA_FAMILY_T@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
HAVE_STRUCT_SIGACTION_SA_SIGACTION = @HAVE_STRUCT_SIGACTION_SA_SIGACTION@
+HAVE_STRUCT_SOCKADDR_STORAGE = @HAVE_STRUCT_SOCKADDR_STORAGE@
+HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY = @HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY@
HAVE_STRUCT_TIMEVAL = @HAVE_STRUCT_TIMEVAL@
HAVE_STRVERSCMP = @HAVE_STRVERSCMP@
HAVE_SYMLINK = @HAVE_SYMLINK@
HAVE_SYMLINKAT = @HAVE_SYMLINKAT@
HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@
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_SELECT_H = @HAVE_SYS_SELECT_H@
+HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@
+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_UNISTD_H = @HAVE_UNISTD_H@
HAVE_UNLINKAT = @HAVE_UNLINKAT@
HAVE_WMEMCPY = @HAVE_WMEMCPY@
HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
HAVE_WMEMSET = @HAVE_WMEMSET@
+HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
HAVE__BOOL = @HAVE__BOOL@
HAVE__EXIT = @HAVE__EXIT@
ICONV_H = @ICONV_H@
INCLUDE_NEXT = @INCLUDE_NEXT@
INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@
+INET_PTON_LIB = @INET_PTON_LIB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
LIBS = @LIBS@
LIBSIGSEGV = @LIBSIGSEGV@
LIBSIGSEGV_PREFIX = @LIBSIGSEGV_PREFIX@
+LIBSOCKET = @LIBSOCKET@
LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
LIBUNISTRING_UNISTR_H = @LIBUNISTRING_UNISTR_H@
LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@
LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@
LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_SELECT = @LIB_SELECT@
LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@
LOCALE_FR = @LOCALE_FR@
LOCALE_FR_UTF8 = @LOCALE_FR_UTF8@
MSGFMT = @MSGFMT@
MSGFMT_015 = @MSGFMT_015@
MSGMERGE = @MSGMERGE@
+NETINET_IN_H = @NETINET_IN_H@
+NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@
NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@
NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@
NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@
NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H = @NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H@
NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H = @NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H@
NEXT_AS_FIRST_DIRECTIVE_LOCALE_H = @NEXT_AS_FIRST_DIRECTIVE_LOCALE_H@
+NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H = @NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H@
NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H = @NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H@
NEXT_AS_FIRST_DIRECTIVE_STDARG_H = @NEXT_AS_FIRST_DIRECTIVE_STDARG_H@
NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@
NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_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_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@
NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H@
NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@
NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@
NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@
NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@
+NEXT_CTYPE_H = @NEXT_CTYPE_H@
NEXT_ERRNO_H = @NEXT_ERRNO_H@
NEXT_FCNTL_H = @NEXT_FCNTL_H@
NEXT_FLOAT_H = @NEXT_FLOAT_H@
NEXT_INTTYPES_H = @NEXT_INTTYPES_H@
NEXT_LANGINFO_H = @NEXT_LANGINFO_H@
NEXT_LOCALE_H = @NEXT_LOCALE_H@
+NEXT_NETINET_IN_H = @NEXT_NETINET_IN_H@
NEXT_SIGNAL_H = @NEXT_SIGNAL_H@
NEXT_STDARG_H = @NEXT_STDARG_H@
NEXT_STDDEF_H = @NEXT_STDDEF_H@
NEXT_STDLIB_H = @NEXT_STDLIB_H@
NEXT_STRINGS_H = @NEXT_STRINGS_H@
NEXT_STRING_H = @NEXT_STRING_H@
+NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_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@
NEXT_SYS_TIME_H = @NEXT_SYS_TIME_H@
NEXT_SYS_TYPES_H = @NEXT_SYS_TYPES_H@
+NEXT_SYS_UIO_H = @NEXT_SYS_UIO_H@
NEXT_SYS_WAIT_H = @NEXT_SYS_WAIT_H@
NEXT_TIME_H = @NEXT_TIME_H@
NEXT_UNISTD_H = @NEXT_UNISTD_H@
REPLACE_GETCWD = @REPLACE_GETCWD@
REPLACE_GETDELIM = @REPLACE_GETDELIM@
REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@
+REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@
REPLACE_GETGROUPS = @REPLACE_GETGROUPS@
REPLACE_GETLINE = @REPLACE_GETLINE@
REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
+REPLACE_GMTIME = @REPLACE_GMTIME@
REPLACE_ICONV = @REPLACE_ICONV@
REPLACE_ICONV_OPEN = @REPLACE_ICONV_OPEN@
REPLACE_ICONV_UTF = @REPLACE_ICONV_UTF@
+REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
+REPLACE_INET_PTON = @REPLACE_INET_PTON@
+REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
REPLACE_LINK = @REPLACE_LINK@
REPLACE_LINKAT = @REPLACE_LINKAT@
REPLACE_LOCALECONV = @REPLACE_LOCALECONV@
+REPLACE_LOCALTIME = @REPLACE_LOCALTIME@
REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@
REPLACE_LSEEK = @REPLACE_LSEEK@
REPLACE_LSTAT = @REPLACE_LSTAT@
REPLACE_POPEN = @REPLACE_POPEN@
REPLACE_PREAD = @REPLACE_PREAD@
REPLACE_PRINTF = @REPLACE_PRINTF@
+REPLACE_PSELECT = @REPLACE_PSELECT@
REPLACE_PTHREAD_SIGMASK = @REPLACE_PTHREAD_SIGMASK@
REPLACE_PTSNAME = @REPLACE_PTSNAME@
REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@
REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
+REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
+REPLACE_READLINKAT = @REPLACE_READLINKAT@
REPLACE_REALLOC = @REPLACE_REALLOC@
REPLACE_REALPATH = @REPLACE_REALPATH@
REPLACE_REMOVE = @REPLACE_REMOVE@
REPLACE_RENAME = @REPLACE_RENAME@
REPLACE_RENAMEAT = @REPLACE_RENAMEAT@
REPLACE_RMDIR = @REPLACE_RMDIR@
+REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOIMAX = @REPLACE_STRTOIMAX@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOUMAX = @REPLACE_STRTOUMAX@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
+REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@
REPLACE_TIMEGM = @REPLACE_TIMEGM@
REPLACE_TMPFILE = @REPLACE_TMPFILE@
REPLACE_TOWLOWER = @REPLACE_TOWLOWER@
REPLACE_WCTOMB = @REPLACE_WCTOMB@
REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
REPLACE_WRITE = @REPLACE_WRITE@
+SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
SIZE_T_SUFFIX = @SIZE_T_SUFFIX@
SRC_VERSION_C = @SRC_VERSION_C@
+STDALIGN_H = @STDALIGN_H@
STDARG_H = @STDARG_H@
STDBOOL_H = @STDBOOL_H@
STDDEF_H = @STDDEF_H@
STDINT_H = @STDINT_H@
STRIP = @STRIP@
+SYS_IOCTL_H_HAVE_WINSOCK2_H = @SYS_IOCTL_H_HAVE_WINSOCK2_H@
+SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@
TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@
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_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@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
am__include = @am__include@
am__quote = @am__quote@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
+mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu Makefile
-.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
echo ' $(SHELL) ./config.status'; \
$(SHELL) ./config.status;; \
*) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
# (which will cause the Makefiles to be regenerated when you run 'make');
# (2) otherwise, pass the desired values on the 'make' command line.
$(am__recursive_targets):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
+ @fail=; \
+ if $(am__make_keepgoing); then \
+ failcom='fail=yes'; \
+ else \
+ failcom='exit 1'; \
+ fi; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
case "$@" in \
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r "$(distdir)"
dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+ tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz
$(am__post_remove_distdir)
dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
$(am__post_remove_distdir)
-dist-tarZ: distdir
- tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__post_remove_distdir)
-
-dist-shar: distdir
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__post_remove_distdir)
-
dist-zip: distdir
-rm -f $(distdir).zip
zip -rq $(distdir).zip $(distdir)
distcheck: dist
case '$(DIST_ARCHIVES)' in \
*.tar.gz*) \
- GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
+ eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
*.tar.lz*) \
*.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \
- GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
+ eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
*.zip*) \
unzip $(distdir).zip ;;\
esac
chmod -R a-w $(distdir)
chmod u+w $(distdir)
- mkdir $(distdir)/_build $(distdir)/_inst
+ mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
chmod a-w $(distdir)
test -d $(distdir)/_build || exit 0; \
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
&& $(MAKE) $(AM_MAKEFLAGS) distcheck-hook \
&& am__cwd=`pwd` \
- && $(am__cd) $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+ && $(am__cd) $(distdir)/_build/sub \
+ && ../../configure \
$(AM_DISTCHECK_CONFIGURE_FLAGS) \
$(DISTCHECK_CONFIGURE_FLAGS) \
+ --srcdir=../.. --prefix="$$dc_install_base" \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
am--refresh check check-am clean clean-cscope clean-generic \
cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \
- dist-gzip dist-hook dist-lzip dist-shar dist-tarZ dist-xz \
- dist-zip distcheck distclean distclean-generic distclean-tags \
- distcleancheck distdir distuninstallcheck dvi dvi-am html \
- html-am info info-am install install-am install-data \
- install-data-am install-dvi install-dvi-am install-exec \
- install-exec-am install-html install-html-am install-info \
- install-info-am install-man install-pdf install-pdf-am \
- install-ps install-ps-am install-strip installcheck \
- installcheck-am installdirs installdirs-am maintainer-clean \
+ dist-gzip dist-hook dist-lzip dist-xz dist-zip distcheck \
+ distclean distclean-generic distclean-tags distcleancheck \
+ distdir distuninstallcheck dvi dvi-am html html-am info \
+ info-am install install-am install-data install-data-am \
+ install-dvi install-dvi-am install-exec install-exec-am \
+ install-html install-html-am install-info install-info-am \
+ install-man install-pdf install-pdf-am install-ps \
+ install-ps-am install-strip installcheck installcheck-am \
+ installdirs installdirs-am maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am tags tags-am uninstall uninstall-am
+.PRECIOUS: Makefile
+
# Arrange so that .tarball-version appears only in the distribution
# tarball, and never in a checked-out repository.
gen-ChangeLog:
$(AM_V_GEN)if test -d .git; then \
$(top_srcdir)/build-aux/gitlog-to-changelog \
- --since=$(gen_start_date) > $(distdir)/cl-t; \
- rm -f $(distdir)/ChangeLog; \
- mv $(distdir)/cl-t $(distdir)/ChangeLog; \
+ --since=$(gen_start_date) > $(distdir)/cl-t && \
+ { rm -f $(distdir)/ChangeLog && \
+ mv $(distdir)/cl-t $(distdir)/ChangeLog; } \
fi
distcheck-hook:
$(MAKE) my-distcheck
GNU diffutils NEWS -*- outline -*-
+* Noteworthy changes in release 3.4 (2016-08-08) [stable]
+
+** New features
+
+ diff accepts two new options --color and --palette to generate
+ and configure colored output. --color takes an optional argument
+ specifying when to colorize a line: --color=always, --color=auto,
+ --color=never. --palette is used to configure which colors are used.
+
+** Bug fixes
+
+ When binary files differ, diff now exits with status 1 as POSIX requires.
+ Formerly it exited with status 2.
+
+ Unless the --ignore-file-name-case option is used, diff now
+ considers file names to be equal only if they are byte-for-byte
+ equivalent. This fixes a bug where diff in an English locale might
+ consider two Asian file names to be the same merely because they
+ contain no English characters.
+
+ diff -B no longer generates incorrect output if the two inputs
+ each end with a one-byte incomplete line.
+
+ diff --brief no longer reports a difference for unusual identical files.
+ For example, when comparing a file like /proc/cmdline (for which the linux
+ kernel reports st_size of 0 even though it is not an empty file) to a
+ copy of that file's contents residing on a "normal" file system:
+ $ f=/proc/cmdline; cp $f k; diff --brief $f k
+ Files /proc/cmdline and k differ
+
+** Performance changes
+
+ diff's default algorithm has been adjusted to output higher-quality
+ results at somewhat greater computational cost, as CPUs have gotten
+ faster since the algorithm was last tweaked in diffutils-2.6 (1993).
+
+
* Noteworthy changes in release 3.3 (2013-03-24) [stable]
** New features
+ diff accepts a new option, --no-dereference. With this option, symbolic
+ links are treated specially: as a separate type of file that can compare
+ equal only to another symbolic link with the same value. For example,
+ with --no-dereference, two symbolic links compare equal when they have
+ the same value, even when that value does not reference a readable file.
+
--new-file (-N) and --unidirectional-new-file now allow comparisons to "-".
A standard input that's closed acts like a nonexistent file.
\f
-Copyright (C) 1993-1994, 1998, 2001-2002, 2004, 2006, 2009-2013 Free Software
-Foundation, Inc.
+Copyright (C) 1993-1994, 1998, 2001-2002, 2004, 2006, 2009-2013, 2015-2016 Free
+Software Foundation, Inc.
This file is part of GNU Diffutils.
For any copyright year range specified as YYYY-ZZZZ in this package
note that the range specifies every single year in that closed interval.
-Please report bugs to <bug-gnu-utils@gnu.org>.
+Please report bugs to <bug-diffutils@gnu.org>.
-----
-Copyright (C) 1992, 1998, 2001-2002, 2004, 2009-2013 Free Software Foundation,
-Inc.
+Copyright (C) 1992, 1998, 2001-2002, 2004, 2009-2013, 2015-2016 Free Software
+Foundation, Inc.
This file is part of GNU Diffutils.
-# generated automatically by aclocal 1.13a -*- Autoconf -*-
+# generated automatically by aclocal 1.99a -*- Autoconf -*-
-# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+# Copyright (C) 1996-2015 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69.79-0bdae],,
-[m4_warning([this file was generated for autoconf 2.69.79-0bdae.
+m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69.147-5ad35],,
+[m4_warning([this file was generated for autoconf 2.69.147-5ad35.
You have another version of autoconf. It may work, but is not guaranteed to.
If you have problems, you may need to regenerate the build system entirely.
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
-# Copyright (C) 2002-2013 Free Software Foundation, Inc.
+# Copyright (C) 2002-2015 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# generated from the m4 files accompanying Automake X.Y.
# (This private macro should not be called outside this file.)
AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.13a'
+[am__api_version='1.99a'
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
dnl require some minimum version. Point them to the right macro.
-m4_if([$1], [1.13a], [],
+m4_if([$1], [1.99a], [],
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
])
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.13a])dnl
+[AM_AUTOMAKE_VERSION([1.99a])dnl
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
+# Copyright (C) 2011-2015 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_PROG_AR([ACT-IF-FAIL])
+# -------------------------
+# Try to determine the archiver interface, and trigger the ar-lib wrapper
+# if it is needed. If the detection of archiver interface fails, run
+# ACT-IF-FAIL (default is to abort configure with a proper error message).
+AC_DEFUN([AM_PROG_AR],
+[AC_BEFORE([$0], [LT_INIT])dnl
+AC_BEFORE([$0], [AC_PROG_LIBTOOL])dnl
+AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+AC_REQUIRE_AUX_FILE([ar-lib])dnl
+AC_CHECK_TOOLS([AR], [ar lib "link -lib"], [false])
+: ${AR=ar}
+
+AC_CACHE_CHECK([the archiver ($AR) interface], [am_cv_ar_interface],
+ [AC_LANG_PUSH([C])
+ am_cv_ar_interface=ar
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int some_variable = 0;]])],
+ [am_ar_try='$AR cru libconftest.a conftest.$ac_objext >&AS_MESSAGE_LOG_FD'
+ AC_TRY_EVAL([am_ar_try])
+ if test "$ac_status" -eq 0; then
+ am_cv_ar_interface=ar
+ else
+ am_ar_try='$AR -NOLOGO -OUT:conftest.lib conftest.$ac_objext >&AS_MESSAGE_LOG_FD'
+ AC_TRY_EVAL([am_ar_try])
+ if test "$ac_status" -eq 0; then
+ am_cv_ar_interface=lib
+ else
+ am_cv_ar_interface=unknown
+ fi
+ fi
+ rm -f conftest.lib libconftest.a
+ ])
+ AC_LANG_POP([C])])
+
+case $am_cv_ar_interface in
+ar)
+ ;;
+lib)
+ # Microsoft lib, so override with the ar-lib wrapper script.
+ # FIXME: It is wrong to rewrite AR.
+ # But if we don't then we get into trouble of one sort or another.
+ # A longer-term fix would be to have automake use am__AR in this case,
+ # and then we could set am__AR="$am_aux_dir/ar-lib \$(AR)" or something
+ # similar.
+ AR="$am_aux_dir/ar-lib $AR"
+ ;;
+unknown)
+ m4_default([$1],
+ [AC_MSG_ERROR([could not determine $AR interface])])
+ ;;
+esac
+AC_SUBST([AR])dnl
+])
+
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2015 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# configured tree to be moved without reconfiguration.
AC_DEFUN([AM_AUX_DIR_EXPAND],
-[dnl Rely on autoconf to set up CDPATH properly.
-AC_PREREQ([2.50])dnl
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
+[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
+# Expand $ac_aux_dir to an absolute path.
+am_aux_dir=`cd "$ac_aux_dir" && pwd`
])
# AM_CONDITIONAL -*- Autoconf -*-
-# Copyright (C) 1997-2013 Free Software Foundation, Inc.
+# Copyright (C) 1997-2015 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
Usually this means the macro was only invoked conditionally.]])
fi])])
-# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+# Copyright (C) 1999-2015 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Generate code to set up dependency tracking. -*- Autoconf -*-
-# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+# Copyright (C) 1999-2015 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-
# _AM_OUTPUT_DEPENDENCY_COMMANDS
# ------------------------------
AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
# Older Autoconf quotes --file arguments for eval, but not when files
# are listed without --file. Let's play safe and only enable the eval
# if we detect the quoting.
- case $CONFIG_FILES in
- *\'*) eval set x "$CONFIG_FILES" ;;
- *) set x $CONFIG_FILES ;;
- esac
+ # TODO: see whether this extra hack can be removed once we start
+ # requiring Autoconf 2.70 or later.
+ AS_CASE([$CONFIG_FILES],
+ [*\'*], [eval set x "$CONFIG_FILES"],
+ [*], [set x $CONFIG_FILES])
shift
- for mf
+ # Used to flag and report bootstrapping failures.
+ am_rc=0
+ for am_mf
do
# Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named 'Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
+ am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile which includes
+ # dependency-tracking related rules and includes.
+ # Grep'ing the whole file directly is not great: AIX grep has a line
# limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`AS_DIRNAME("$mf")`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running 'make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`AS_DIRNAME(["$file"])`
- AS_MKDIR_P([$dirpart/$fdir])
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
- done
+ sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
+ || continue
+ am_dirpart=`AS_DIRNAME(["$am_mf"])`
+ am_filepart=`AS_BASENAME(["$am_mf"])`
+ AM_RUN_LOG([cd "$am_dirpart" \
+ && sed -e '/# am--include-marker/d' "$am_filepart" \
+ | $MAKE -f - am--depfiles]) || am_rc=$?
done
+ if test $am_rc -ne 0; then
+ AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
+ for automatic dependency tracking. Try re-running configure with the
+ '--disable-dependency-tracking' option to at least be able to build
+ the package (albeit without support for automatic dependency tracking).])
+ fi
+ AS_UNSET([am_dirpart])
+ AS_UNSET([am_filepart])
+ AS_UNSET([am_mf])
+ AS_UNSET([am_rc])
+ rm -f conftest-deps.mk
}
])# _AM_OUTPUT_DEPENDENCY_COMMANDS
# -----------------------------
# This macro should only be invoked once -- use via AC_REQUIRE.
#
-# This code is only required when automatic dependency tracking
-# is enabled. FIXME. This creates each '.P' file that we will
-# need in order to bootstrap the dependency handling code.
+# This code is only required when automatic dependency tracking is enabled.
+# This creates each '.Po' and '.Plo' makefile fragment that we'll need in
+# order to bootstrap the dependency handling code.
AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
[AC_CONFIG_COMMANDS([depfiles],
[test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
- [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
-])
+ [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])])
# Do all the work for Automake. -*- Autoconf -*-
-# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+# Copyright (C) 1996-2015 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# This macro actually does too much. Some checks are only needed if
# your package does certain things. But this isn't really a big deal.
+dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
+m4_define([AC_PROG_CC],
+m4_defn([AC_PROG_CC])
+[_AM_PROG_CC_C_O
+])
+
# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
# AM_INIT_AUTOMAKE([OPTIONS])
# -----------------------------------------------
# release and drop the old call support.
AC_DEFUN([AM_INIT_AUTOMAKE],
[AC_PREREQ([2.65])dnl
+dnl Without this, packages using Gettext 0.18.2 might break horribly.
+AC_SUBST([mkdir_p], ['$(MKDIR_P)'])dnl
dnl Autoconf wants to disallow AM_ names. We explicitly allow
dnl the ones we care about.
m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
AC_REQUIRE([AC_PROG_MKDIR_P])dnl
-# We need awk for the "check" target. The system "awk" is bad on
-# some platforms.
+# We need awk for the "check" target (and possibly the TAP driver). The
+# system "awk" is bad on some platforms.
AC_REQUIRE([AC_PROG_AWK])dnl
AC_REQUIRE([AC_PROG_MAKE_SET])dnl
_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
END
AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
fi
-fi])
+fi
+dnl The trailing newline in this macro's definition is deliberate, for
+dnl backward compatibility and to allow trailing 'dnl'-style comments
+dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
+])
dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
m4_define([_AC_COMPILER_EXEEXT],
m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
-dnl We have to redefine AC_PROG_CC to allow our compile rules to use
-dnl "-c -o" together also with losing compilers.
-dnl FIXME: Add references to the original discussion and bug report.
-dnl FIXME: Shameless copy & paste from Autoconf internals, since trying to
-dnl play smart among tangles of AC_REQUIRE, m4_defn, m4_provide and
-dnl other tricks was proving too difficult, and in the end, likely
-dnl more brittle too. And this should anyway be just a temporary
-dnl band-aid, until Autoconf provides the semantics and/or hooks we
-dnl need (hint hint, nudge nudge) ...
-AC_DEFUN([AC_PROG_CC],
-m4_defn([AC_PROG_CC])
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-AC_REQUIRE_AUX_FILE([compile])dnl
-dnl FIXME The following abomination is expected to disappear in
-dnl Automake 1.14.
-AC_MSG_CHECKING([whether $CC understands -c and -o together])
-set dummy $CC; am__cc=`AS_ECHO(["$[2]"]) | \
- sed 's/[[^a-zA-Z0-9_]]/_/g;s/^[[0-9]]/_/'`
-AC_CACHE_VAL([am_cv_prog_cc_${am__cc}_c_o],
-[AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
-# Make sure it works both with $CC and with simple cc.
-# We do the test twice because some compilers refuse to overwrite an
-# existing .o file with -o, though they will create one.
-ac_try='$CC -c conftest.$ac_ext -o conftest2.$ac_objext >&AS_MESSAGE_LOG_FD'
-rm -f conftest2.*
-if _AC_DO_VAR(ac_try) && test -f conftest2.$ac_objext
-then
- eval am_cv_prog_cc_${am__cc}_c_o=yes
-else
- eval am_cv_prog_cc_${am__cc}_c_o=no
-fi
-rm -f core conftest*
-])dnl
-if eval test \"\$am_cv_prog_cc_${am__cc}_c_o\" = yes; then
- AC_MSG_RESULT([yes])
-else
- AC_MSG_RESULT([no])
- # Losing compiler, so wrap it with the 'compile' script.
- # FIXME: It is wrong to rewrite CC.
- # But if we don't then we get into trouble of one sort or another.
- # A longer-term fix would be to have automake use am__CC in this case,
- # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
- CC="$am_aux_dir/compile $CC"
-fi
-])
-
# When config.status generates a header, we must update the stamp-h file.
# This file resides in the same directory as the config header
# that is generated. The stamp files are numbered to have different names.
done
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2015 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Define $install_sh.
AC_DEFUN([AM_PROG_INSTALL_SH],
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-if test x"${install_sh}" != xset; then
+if test x"${install_sh+set}" != xset; then
case $am_aux_dir in
*\ * | *\ *)
install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
# Check to see how 'make' treats includes. -*- Autoconf -*-
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2015 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# AM_MAKE_INCLUDE()
# -----------------
-# Check to see how make treats includes.
+# Check whether make has an 'include' directive that can support all
+# the idioms we need for our automatic dependency tracking code.
AC_DEFUN([AM_MAKE_INCLUDE],
-[am_make=${MAKE-make}
-cat > confinc << 'END'
+[AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive])
+cat > confinc.mk << 'END'
am__doit:
- @echo this is the am__doit target
+ @echo this is the am__doit target >confinc.out
.PHONY: am__doit
END
-# If we don't find an include directive, just comment out the code.
-AC_MSG_CHECKING([for style of include used by $am_make])
am__include="#"
am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from 'make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
- am__include=include
- am__quote=
- _am_result=GNU
- ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
- echo '.include "confinc"' > confmf
- case `$am_make -s -f confmf 2> /dev/null` in #(
- *the\ am__doit\ target*)
- am__include=.include
- am__quote="\""
- _am_result=BSD
- ;;
- esac
-fi
-AC_SUBST([am__include])
-AC_SUBST([am__quote])
-AC_MSG_RESULT([$_am_result])
-rm -f confinc confmf
-])
-
-# Copyright (C) 1999-2013 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_PROG_CC_C_O
-# --------------
-# Basically a no-op now, completely superseded by the AC_PROG_CC
-# adjusted by Automake. Kept for backward-compatibility.
-AC_DEFUN([AM_PROG_CC_C_O],
-[AC_REQUIRE([AC_PROG_CC])dnl
-dnl Make sure AC_PROG_CC is never called again, or it will override our
-dnl setting of CC.
-m4_define([AC_PROG_CC],
- [m4_fatal([AC_PROG_CC cannot be called after AM_PROG_CC_C_O])])
-# For better backward-compatibility. Users are advised to stop
-# relying on this cache variable and C preprocessor symbol ASAP.
-eval ac_cv_prog_cc_${am__cc}_c_o=\$am_cv_prog_cc_${am__cc}_c_o
-if eval test \"\$ac_cv_prog_cc_${am__cc}_c_o\" != yes; then
- AC_DEFINE([NO_MINUS_C_MINUS_O], [1],
- [Define to 1 if your C compiler doesn't accept -c and -o together.])
-fi
-])
+# BSD make does it like this.
+echo '.include "confinc.mk" # ignored' > confmf.BSD
+# Other make implementations (GNU, Solaris 10, AIX) do it like this.
+echo 'include confinc.mk # ignored' > confmf.GNU
+_am_result=no
+for s in GNU BSD; do
+ AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out])
+ AS_CASE([$?:`cat confinc.out 2>/dev/null`],
+ ['0:this is the am__doit target'],
+ [AS_CASE([$s],
+ [BSD], [am__include='.include' am__quote='"'],
+ [am__include='include' am__quote=''])])
+ if test "$am__include" != "#"; then
+ _am_result="yes ($s style)"
+ break
+ fi
+done
+rm -f confinc.* confmf.*
+AC_MSG_RESULT([${_am_result}])
+AC_SUBST([am__include])])
+AC_SUBST([am__quote])])
# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
-# Copyright (C) 1997-2013 Free Software Foundation, Inc.
+# Copyright (C) 1997-2015 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Helper functions for option handling. -*- Autoconf -*-
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2015 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
AC_DEFUN([_AM_IF_OPTION],
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
+# Copyright (C) 1999-2015 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# _AM_PROG_CC_C_O
+# ---------------
+# Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC
+# to automatically call this.
+AC_DEFUN([_AM_PROG_CC_C_O],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+AC_REQUIRE_AUX_FILE([compile])dnl
+AC_LANG_PUSH([C])dnl
+AC_CACHE_CHECK(
+ [whether $CC understands -c and -o together],
+ [am_cv_prog_cc_c_o],
+ [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
+ # Make sure it works both with $CC and with simple cc.
+ # Following AC_PROG_CC_C_O, we do the test twice because some
+ # compilers refuse to overwrite an existing .o file with -o,
+ # though they will create one.
+ am_cv_prog_cc_c_o=yes
+ for am_i in 1 2; do
+ if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
+ && test -f conftest2.$ac_objext; then
+ : OK
+ else
+ am_cv_prog_cc_c_o=no
+ break
+ fi
+ done
+ rm -f core conftest*
+ unset am_i])
+if test "$am_cv_prog_cc_c_o" != yes; then
+ # Losing compiler, so override with the script.
+ # FIXME: It is wrong to rewrite CC.
+ # But if we don't then we get into trouble of one sort or another.
+ # A longer-term fix would be to have automake use am__CC in this case,
+ # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
+ CC="$am_aux_dir/compile $CC"
+fi
+AC_LANG_POP([C])])
+
+# For backward compatibility.
+AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
+
+# Copyright (C) 2001-2015 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_RUN_LOG(COMMAND)
+# -------------------
+# Run COMMAND, save the exit status in ac_status, and log it.
+# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
+AC_DEFUN([AM_RUN_LOG],
+[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
+ ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+ (exit $ac_status); }])
+
# Check to make sure that the build environment is sane. -*- Autoconf -*-
-# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+# Copyright (C) 1996-2015 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
rm -f conftest.file
])
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2015 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
])
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2015 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
AC_SUBST([INSTALL_STRIP_PROGRAM])])
-# Copyright (C) 2006-2013 Free Software Foundation, Inc.
+# Copyright (C) 2006-2015 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Check how to create a tarball. -*- Autoconf -*-
-# Copyright (C) 2004-2013 Free Software Foundation, Inc.
+# Copyright (C) 2004-2015 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Substitute a variable $(am__untar) that extract such
# a tarball read from stdin.
# $(am__untar) < result.tar
+#
AC_DEFUN([_AM_PROG_TAR],
[# Always define AMTAR for backward compatibility. Yes, it's still used
# in the wild :-( We should find a proper way to deprecate it ...
AC_SUBST([AMTAR], ['$${TAR-tar}'])
-m4_if([$1], [v7],
- [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
- [m4_case([$1], [ustar],, [pax],,
- [m4_fatal([Unknown tar format])])
-AC_MSG_CHECKING([how to create a $1 tar archive])
-# Loop over all known methods to create a tar archive until one works.
+
+# We'll loop over all known methods to create a tar archive until one works.
_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
-_am_tools=${am_cv_prog_tar_$1-$_am_tools}
-# Do not fold the above two line into one, because Tru64 sh and
-# Solaris sh will not grok spaces in the rhs of '-'.
-for _am_tool in $_am_tools
-do
- case $_am_tool in
- gnutar)
- for _am_tar in tar gnutar gtar;
- do
- AM_RUN_LOG([$_am_tar --version]) && break
- done
- am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
- am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
- am__untar="$_am_tar -xf -"
- ;;
- plaintar)
- # Must skip GNU tar: if it does not support --format= it doesn't create
- # ustar tarball either.
- (tar --version) >/dev/null 2>&1 && continue
- am__tar='tar chf - "$$tardir"'
- am__tar_='tar chf - "$tardir"'
- am__untar='tar xf -'
- ;;
- pax)
- am__tar='pax -L -x $1 -w "$$tardir"'
- am__tar_='pax -L -x $1 -w "$tardir"'
- am__untar='pax -r'
- ;;
- cpio)
- am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
- am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
- am__untar='cpio -i -H $1 -d'
- ;;
- none)
- am__tar=false
- am__tar_=false
- am__untar=false
- ;;
- esac
- # If the value was cached, stop now. We just wanted to have am__tar
- # and am__untar set.
- test -n "${am_cv_prog_tar_$1}" && break
+m4_if([$1], [v7],
+ [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
+
+ [m4_case([$1],
+ [ustar],
+ [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
+ # There is notably a 21 bits limit for the UID and the GID. In fact,
+ # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
+ # and bug#13588).
+ am_max_uid=2097151 # 2^21 - 1
+ am_max_gid=$am_max_uid
+ # The $UID and $GID variables are not portable, so we need to resort
+ # to the POSIX-mandated id(1) utility. Errors in the 'id' calls
+ # below are definitely unexpected, so allow the users to see them
+ # (that is, avoid stderr redirection).
+ am_uid=`id -u || echo unknown`
+ am_gid=`id -g || echo unknown`
+ AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
+ if test $am_uid -le $am_max_uid; then
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ _am_tools=none
+ fi
+ AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
+ if test $am_gid -le $am_max_gid; then
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ _am_tools=none
+ fi],
+
+ [pax],
+ [],
+
+ [m4_fatal([Unknown tar format])])
+
+ AC_MSG_CHECKING([how to create a $1 tar archive])
+
+ # Go ahead even if we have the value already cached. We do so because we
+ # need to set the values for the 'am__tar' and 'am__untar' variables.
+ _am_tools=${am_cv_prog_tar_$1-$_am_tools}
+
+ for _am_tool in $_am_tools; do
+ case $_am_tool in
+ gnutar)
+ for _am_tar in tar gnutar gtar; do
+ AM_RUN_LOG([$_am_tar --version]) && break
+ done
+ am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
+ am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
+ am__untar="$_am_tar -xf -"
+ ;;
+ plaintar)
+ # Must skip GNU tar: if it does not support --format= it doesn't create
+ # ustar tarball either.
+ (tar --version) >/dev/null 2>&1 && continue
+ am__tar='tar chf - "$$tardir"'
+ am__tar_='tar chf - "$tardir"'
+ am__untar='tar xf -'
+ ;;
+ pax)
+ am__tar='pax -L -x $1 -w "$$tardir"'
+ am__tar_='pax -L -x $1 -w "$tardir"'
+ am__untar='pax -r'
+ ;;
+ cpio)
+ am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
+ am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
+ am__untar='cpio -i -H $1 -d'
+ ;;
+ none)
+ am__tar=false
+ am__tar_=false
+ am__untar=false
+ ;;
+ esac
- # tar/untar a dummy directory, and stop if the command works
- rm -rf conftest.dir
- mkdir conftest.dir
- echo GrepMe > conftest.dir/file
- AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+ # If the value was cached, stop now. We just wanted to have am__tar
+ # and am__untar set.
+ test -n "${am_cv_prog_tar_$1}" && break
+
+ # tar/untar a dummy directory, and stop if the command works.
+ rm -rf conftest.dir
+ mkdir conftest.dir
+ echo GrepMe > conftest.dir/file
+ AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+ rm -rf conftest.dir
+ if test -s conftest.tar; then
+ AM_RUN_LOG([$am__untar <conftest.tar])
+ AM_RUN_LOG([cat conftest.dir/file])
+ grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
+ fi
+ done
rm -rf conftest.dir
- if test -s conftest.tar; then
- AM_RUN_LOG([$am__untar <conftest.tar])
- grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
- fi
-done
-rm -rf conftest.dir
-AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
-AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+ AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
+ AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+
AC_SUBST([am__tar])
AC_SUBST([am__untar])
]) # _AM_PROG_TAR
m4_include([m4/00gnulib.m4])
+m4_include([m4/absolute-header.m4])
m4_include([m4/alloca.m4])
+m4_include([m4/arpa_inet_h.m4])
m4_include([m4/btowc.m4])
m4_include([m4/c-stack.m4])
m4_include([m4/clock_time.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/fcntl_h.m4])
m4_include([m4/fdopen.m4])
m4_include([m4/filenamecat.m4])
+m4_include([m4/flexmember.m4])
m4_include([m4/float_h.m4])
m4_include([m4/fnmatch.m4])
m4_include([m4/fpieee.m4])
m4_include([m4/freopen.m4])
m4_include([m4/fstat.m4])
+m4_include([m4/ftruncate.m4])
m4_include([m4/getcwd.m4])
m4_include([m4/getdtablesize.m4])
m4_include([m4/getopt.m4])
m4_include([m4/iconv_h.m4])
m4_include([m4/iconv_open.m4])
m4_include([m4/include_next.m4])
+m4_include([m4/inet_pton.m4])
m4_include([m4/inline.m4])
m4_include([m4/intlmacosx.m4])
m4_include([m4/intmax_t.m4])
m4_include([m4/inttypes-pri.m4])
m4_include([m4/inttypes.m4])
m4_include([m4/inttypes_h.m4])
+m4_include([m4/ioctl.m4])
+m4_include([m4/isblank.m4])
m4_include([m4/iswblank.m4])
m4_include([m4/langinfo_h.m4])
m4_include([m4/largefile.m4])
m4_include([m4/msvc-inval.m4])
m4_include([m4/msvc-nothrow.m4])
m4_include([m4/multiarch.m4])
+m4_include([m4/nanosleep.m4])
+m4_include([m4/netinet_in_h.m4])
m4_include([m4/nl_langinfo.m4])
m4_include([m4/nls.m4])
m4_include([m4/nocrash.m4])
m4_include([m4/off_t.m4])
m4_include([m4/open.m4])
m4_include([m4/pathmax.m4])
+m4_include([m4/perror.m4])
+m4_include([m4/pipe.m4])
m4_include([m4/po.m4])
m4_include([m4/printf.m4])
m4_include([m4/progtest.m4])
m4_include([m4/quote.m4])
m4_include([m4/quotearg.m4])
m4_include([m4/raise.m4])
+m4_include([m4/rawmemchr.m4])
m4_include([m4/readlink.m4])
m4_include([m4/regex.m4])
m4_include([m4/secure_getenv.m4])
+m4_include([m4/select.m4])
m4_include([m4/setenv.m4])
m4_include([m4/setlocale.m4])
m4_include([m4/sigaction.m4])
m4_include([m4/size_max.m4])
m4_include([m4/sleep.m4])
m4_include([m4/snprintf.m4])
+m4_include([m4/socketlib.m4])
+m4_include([m4/sockets.m4])
+m4_include([m4/socklen.m4])
+m4_include([m4/sockpfaf.m4])
m4_include([m4/ssize_t.m4])
m4_include([m4/stat-time.m4])
m4_include([m4/stat.m4])
+m4_include([m4/stdalign.m4])
m4_include([m4/stdarg.m4])
m4_include([m4/stdbool.m4])
m4_include([m4/stddef_h.m4])
m4_include([m4/stdlib_h.m4])
m4_include([m4/strcase.m4])
m4_include([m4/strerror.m4])
+m4_include([m4/strerror_r.m4])
m4_include([m4/strftime.m4])
m4_include([m4/string_h.m4])
m4_include([m4/strings_h.m4])
m4_include([m4/strtoull.m4])
m4_include([m4/strtoumax.m4])
m4_include([m4/symlink.m4])
+m4_include([m4/sys_ioctl_h.m4])
+m4_include([m4/sys_select_h.m4])
m4_include([m4/sys_socket_h.m4])
m4_include([m4/sys_stat_h.m4])
m4_include([m4/sys_time_h.m4])
m4_include([m4/sys_types_h.m4])
+m4_include([m4/sys_uio_h.m4])
m4_include([m4/sys_wait_h.m4])
m4_include([m4/tempname.m4])
m4_include([m4/time_h.m4])
m4_include([m4/time_r.m4])
+m4_include([m4/time_rz.m4])
+m4_include([m4/timegm.m4])
m4_include([m4/timespec.m4])
m4_include([m4/tm_gmtoff.m4])
m4_include([m4/unistd_h.m4])
m4_include([m4/unlocked-io.m4])
-m4_include([m4/usleep.m4])
m4_include([m4/vararrays.m4])
m4_include([m4/vasnprintf.m4])
m4_include([m4/vasprintf.m4])
#! /bin/sh
# Print a version string.
-scriptversion=2013-01-20.16; # UTC
+scriptversion=2016-01-24.06; # UTC
# Bootstrap this package from checked-out sources.
-# Copyright (C) 2003-2013 Free Software Foundation, Inc.
+# Copyright (C) 2003-2016 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
local_gl_dir=gl
+# Honor $PERL, but work even if there is none.
+PERL="${PERL-perl}"
+
me=$0
usage() {
"wget --mirror -nd -q -np -A.po -P '%s' \
http://translationproject.org/latest/%s/"
+# Prefer a non-empty tarname (4th argument of AC_INIT if given), else
+# fall back to the package name (1st argument with munging)
extract_package_name='
- /^AC_INIT(/{
- /.*,.*,.*, */{
- s///
- s/[][]//g
- s/)$//
+ /^AC_INIT(\[*/{
+ s///
+ /^[^,]*,[^,]*,[^,]*,[ []*\([^][ ,)]\)/{
+ s//\1/
+ s/[],)].*//
p
q
}
- s/AC_INIT(\[*//
- s/]*,.*//
+ s/[],)].*//
s/^GNU //
y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
- s/[^A-Za-z0-9_]/-/g
+ s/[^abcdefghijklmnopqrstuvwxyz0123456789_]/-/g
p
}
'
# Use git to update gnulib sources
use_git=true
+check_exists() {
+ if test "$1" = "--verbose"; then
+ ($2 --version </dev/null) >/dev/null 2>&1
+ if test $? -ge 126; then
+ # If not found, run with diagnostics as one may be
+ # presented with env variables to set to find the right version
+ ($2 --version </dev/null)
+ fi
+ else
+ ($1 --version </dev/null) >/dev/null 2>&1
+ fi
+
+ test $? -lt 126
+}
+
# find_tool ENVVAR NAMES...
# -------------------------
# Search for a required program. Use the value of ENVVAR, if set,
-# otherwise find the first of the NAMES that can be run (i.e.,
-# supports --version). If found, set ENVVAR to the program name,
-# die otherwise.
+# otherwise find the first of the NAMES that can be run.
+# If found, set ENVVAR to the program name, die otherwise.
#
# FIXME: code duplication, see also gnu-web-doc-update.
find_tool ()
find_tool_names=$@
eval "find_tool_res=\$$find_tool_envvar"
if test x"$find_tool_res" = x; then
- for i
- do
- if ($i --version </dev/null) >/dev/null 2>&1; then
- find_tool_res=$i
- break
+ for i; do
+ if check_exists $i; then
+ find_tool_res=$i
+ break
fi
done
- else
- find_tool_error_prefix="\$$find_tool_envvar: "
fi
- test x"$find_tool_res" != x \
- || die "one of these is required: $find_tool_names"
- ($find_tool_res --version </dev/null) >/dev/null 2>&1 \
- || die "${find_tool_error_prefix}cannot run $find_tool_res --version"
+ if test x"$find_tool_res" = x; then
+ warn_ "one of these is required: $find_tool_names;"
+ die "alternatively set $find_tool_envvar to a compatible tool"
+ fi
eval "$find_tool_envvar=\$find_tool_res"
eval "export $find_tool_envvar"
}
-# Find sha1sum, named gsha1sum on MacPorts, and shasum on Mac OS X 10.6.
-find_tool SHA1SUM sha1sum gsha1sum shasum
-
# Override the default configuration, if necessary.
# Make sure that bootstrap.conf is sourced from the current directory
# if we were invoked as "sh bootstrap".
# Extra files from gnulib, which override files from other sources.
test -z "${gnulib_extra_files}" && \
gnulib_extra_files="
- $build_aux/install-sh
- $build_aux/mdate-sh
- $build_aux/texinfo.tex
- $build_aux/depcomp
- $build_aux/config.guess
- $build_aux/config.sub
+ build-aux/install-sh
+ build-aux/mdate-sh
+ build-aux/texinfo.tex
+ build-aux/depcomp
+ build-aux/config.guess
+ build-aux/config.sub
doc/INSTALL
"
die "Error: Duplicate entries in $file: " $duplicate_entries
fi
linesold=$(gitignore_entries $file | wc -l)
- linesnew=$(echo "$str" | gitignore_entries - $file | sort -u | wc -l)
+ linesnew=$( { echo "$str"; cat $file; } | gitignore_entries | sort -u | wc -l)
if [ $linesold != $linesnew ] ; then
{ echo "$str" | cat - $file > $file.bak && mv $file.bak $file; } \
|| die "insert_if_absent $file $str: failed"
get_version() {
app=$1
- $app --version >/dev/null 2>&1 || return 1
+ $app --version >/dev/null 2>&1 || { $app --version; return 1; }
$app --version 2>&1 |
sed -n '# Move version to start of line.
test "$appvar" = TAR && appvar=AMTAR
case $appvar in
GZIP) ;; # Do not use $GZIP: it contains gzip options.
+ PERL::*) ;; # Keep perl modules as-is
*) eval "app=\${$appvar-$app}" ;;
esac
ret=1
continue
} ;;
+ # Another check is for perl modules. These can be written as
+ # e.g. perl::XML::XPath in case of XML::XPath module, etc.
+ perl::*)
+ # Extract module name
+ app="${app#perl::}"
+ if ! $PERL -m"$app" -e 'exit 0' >/dev/null 2>&1; then
+ warn_ "Error: perl module '$app' not found"
+ ret=1
+ fi
+ continue
+ ;;
esac
if [ "$req_ver" = "-" ]; then
# Merely require app to exist; not all prereq apps are well-behaved
# so we have to rely on $? rather than get_version.
- $app --version >/dev/null 2>&1
- if [ 126 -le $? ]; then
+ if ! check_exists --verbose $app; then
warn_ "Error: '$app' not found"
ret=1
fi
# can't depend on column -t
}
+# Find sha1sum, named gsha1sum on MacPorts, shasum on Mac OS X 10.6.
+# Also find the compatible sha1 utility on the BSDs
+if test x"$SKIP_PO" = x; then
+ find_tool SHA1SUM sha1sum gsha1sum shasum sha1
+fi
+
use_libtool=0
# We'd like to use grep -E, to see if any of LT_INIT,
# AC_PROG_LIBTOOL, AM_PROG_LIBTOOL is used in configure.ac,
fi
fi
+# Warn the user if autom4te appears to be broken; this causes known
+# issues with at least gettext 0.18.3.
+probe=$(echo 'm4_quote([hi])' | autom4te -l M4sugar -t 'm4_quote:$%' -)
+if test "x$probe" != xhi; then
+ warn_ "WARNING: your autom4te wrapper eats stdin;"
+ warn_ "if bootstrap fails, consider upgrading your autotools"
+fi
+
echo "$0: Bootstrapping from checked-out $package sources..."
# See if we can use gnulib's git-merge-changelog merge driver.
-if test -d .git && (git --version) >/dev/null 2>/dev/null ; then
+if $use_git && test -d .git && check_exists git; then
if git config merge.merge-changelog.driver >/dev/null ; then
:
- elif (git-merge-changelog --version) >/dev/null 2>/dev/null ; then
+ elif check_exists git-merge-changelog; then
echo "$0: initializing git-merge-changelog driver"
git config merge.merge-changelog.name 'GNU-style ChangeLog merge driver'
git config merge.merge-changelog.driver 'git-merge-changelog %O %A %B'
test -f .gitmodules && git config --file .gitmodules "$@"
}
-gnulib_path=$(git_modules_config submodule.gnulib.path)
-test -z "$gnulib_path" && gnulib_path=gnulib
+if $use_git; then
+ gnulib_path=$(git_modules_config submodule.gnulib.path)
+ test -z "$gnulib_path" && gnulib_path=gnulib
+fi
-# Get gnulib files.
+# Get gnulib files. Populate $GNULIB_SRCDIR, possibly updating a
+# submodule, for use in the rest of the script.
case ${GNULIB_SRCDIR--} in
-)
+ # Note that $use_git is necessarily true in this case.
if git_modules_config submodule.gnulib.url >/dev/null; then
echo "$0: getting gnulib files..."
- git submodule init || exit $?
- git submodule update || exit $?
+ git submodule init -- "$gnulib_path" || exit $?
+ git submodule update -- "$gnulib_path" || exit $?
elif [ ! -d "$gnulib_path" ]; then
echo "$0: getting gnulib files..."
GNULIB_SRCDIR=$gnulib_path
;;
*)
- # Use GNULIB_SRCDIR as a reference.
- if test -d "$GNULIB_SRCDIR"/.git && \
+ # Use GNULIB_SRCDIR directly or as a reference.
+ if $use_git && test -d "$GNULIB_SRCDIR"/.git && \
git_modules_config submodule.gnulib.url >/dev/null; then
echo "$0: getting gnulib files..."
if git submodule -h|grep -- --reference > /dev/null; then
# This fallback allows at least git 1.5.5.
if test -f "$gnulib_path"/gnulib-tool; then
# Since file already exists, assume submodule init already complete.
- git submodule update || exit $?
+ git submodule update -- "$gnulib_path" || exit $?
else
# Older git can't clone into an empty directory.
rmdir "$gnulib_path" 2>/dev/null
git clone --reference "$GNULIB_SRCDIR" \
"$(git_modules_config submodule.gnulib.url)" "$gnulib_path" \
- && git submodule init && git submodule update \
+ && git submodule init -- "$gnulib_path" \
+ && git submodule update -- "$gnulib_path" \
|| exit $?
fi
fi
;;
esac
+# $GNULIB_SRCDIR now points to the version of gnulib to use, and
+# we no longer need to use git or $gnulib_path below here.
+
if $bootstrap_sync; then
cmp -s "$0" "$GNULIB_SRCDIR/build-aux/bootstrap" || {
echo "$0: updating bootstrap and restarting..."
+ case $(sh -c 'echo "$1"' -- a) in
+ a) ignored=--;;
+ *) ignored=ignored;;
+ esac
exec sh -c \
'cp "$1" "$2" && shift && exec "${CONFIG_SHELL-/bin/sh}" "$@"' \
- -- "$GNULIB_SRCDIR/build-aux/bootstrap" \
+ $ignored "$GNULIB_SRCDIR/build-aux/bootstrap" \
"$0" "$@" --no-bootstrap-sync
}
fi
cksum_file="$ref_po_dir/$po.s1"
if ! test -f "$cksum_file" ||
! test -f "$po_dir/$po.po" ||
- ! $SHA1SUM -c --status "$cksum_file" \
- < "$new_po" > /dev/null; then
+ ! $SHA1SUM -c "$cksum_file" < "$new_po" > /dev/null 2>&1; then
echo "$me: updated $po_dir/$po.po..."
cp "$new_po" "$po_dir/$po.po" \
- && $SHA1SUM < "$new_po" > "$cksum_file"
+ && $SHA1SUM < "$new_po" > "$cksum_file" || return
fi
done
}
esac
fi
echo "$0: $gnulib_tool $gnulib_tool_options --import ..."
-$gnulib_tool $gnulib_tool_options --import $gnulib_modules &&
+$gnulib_tool $gnulib_tool_options --import $gnulib_modules \
+ || die "gnulib-tool failed"
for file in $gnulib_files; do
symlink_to_dir "$GNULIB_SRCDIR" $file \
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
-eval '(exit $?0)' && eval 'exec perl -wS "$0" ${1+"$@"}'
+eval '(exit $?0)' && eval 'exec perl -wS "$0" "$@"'
& eval 'exec perl -wS "$0" $argv:q'
if 0;
# Generate a release announcement message.
-my $VERSION = '2012-06-08 06:53'; # UTC
+my $VERSION = '2016-01-12 23:09'; # UTC
# The definition above must lie within the first 8 lines in order
# for the Emacs time-stamp write hook (at end) to update it.
# If you change this file with Emacs, please let the write hook
# do its job. Otherwise, update this string manually.
-# Copyright (C) 2002-2013 Free Software Foundation, Inc.
+# Copyright (C) 2002-2016 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
use strict;
use Getopt::Long;
-use Digest::MD5;
-eval { require Digest::SHA; }
- or eval 'use Digest::SHA1';
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 %digest_classes =
+ (
+ 'md5' => (eval { require Digest::MD5; } and 'Digest::MD5'),
+ 'sha1' => ((eval { require Digest::SHA; } and 'Digest::SHA')
+ or (eval { require Digest::SHA1; } and 'Digest::SHA1'))
+ );
my $srcdir = '.';
sub usage ($)
foreach my $meth (qw (md5 sha1))
{
+ my $class = $digest_classes{$meth} or next;
foreach my $f (@file)
{
open IN, '<', $f
or die "$ME: $f: cannot open for reading: $!\n";
binmode IN;
- my $dig =
- ($meth eq 'md5'
- ? Digest::MD5->new->addfile(*IN)->hexdigest
- : Digest::SHA1->new->addfile(*IN)->hexdigest);
+ my $dig = $class->new->addfile(*IN)->hexdigest;
close IN;
print "$dig $f\n";
}
@url_dir_list
or (warn "URL directory name(s) not specified\n"), $fail = 1;
- my @tool_list = split ',', $bootstrap_tools;
+ my @tool_list = split ',', $bootstrap_tools
+ if $bootstrap_tools;
grep (/^gnulib$/, @tool_list) ^ defined $gnulib_version
and (warn "when specifying gnulib as a tool, you must also specify\n"
. "--gnulib-version=V, where V is the result of running git describe\n"
. "in the gnulib source directory.\n"), $fail = 1;
- exists $valid_release_types{$release_type}
+ !$release_type || exists $valid_release_types{$release_type}
or (warn "'$release_type': invalid release type\n"), $fail = 1;
@ARGV
## eval: (add-hook 'write-file-hooks 'time-stamp)
## time-stamp-start: "my $VERSION = '"
## time-stamp-format: "%:y-%02m-%02d %02H:%02M"
-## time-stamp-time-zone: "UTC"
+## time-stamp-time-zone: "UTC0"
## time-stamp-end: "'; # UTC"
## End:
--- /dev/null
+#! /bin/sh
+# Wrapper for Microsoft lib.exe
+
+me=ar-lib
+scriptversion=2012-03-01.08; # UTC
+
+# Copyright (C) 2010-2015 Free Software Foundation, Inc.
+# Written by Peter Rosin <peda@lysator.liu.se>.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, 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/>.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# This file is maintained in Automake, please report
+# bugs to <bug-automake@gnu.org> or send patches to
+# <automake-patches@gnu.org>.
+
+
+# func_error message
+func_error ()
+{
+ echo "$me: $1" 1>&2
+ exit 1
+}
+
+file_conv=
+
+# func_file_conv build_file
+# Convert a $build file to $host form and store it in $file
+# Currently only supports Windows hosts.
+func_file_conv ()
+{
+ file=$1
+ case $file in
+ / | /[!/]*) # absolute file, and not a UNC file
+ if test -z "$file_conv"; then
+ # lazily determine how to convert abs files
+ case `uname -s` in
+ MINGW*)
+ file_conv=mingw
+ ;;
+ CYGWIN*)
+ file_conv=cygwin
+ ;;
+ *)
+ file_conv=wine
+ ;;
+ esac
+ fi
+ case $file_conv in
+ mingw)
+ file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
+ ;;
+ cygwin)
+ file=`cygpath -m "$file" || echo "$file"`
+ ;;
+ wine)
+ file=`winepath -w "$file" || echo "$file"`
+ ;;
+ esac
+ ;;
+ esac
+}
+
+# func_at_file at_file operation archive
+# Iterate over all members in AT_FILE performing OPERATION on ARCHIVE
+# for each of them.
+# When interpreting the content of the @FILE, do NOT use func_file_conv,
+# since the user would need to supply preconverted file names to
+# binutils ar, at least for MinGW.
+func_at_file ()
+{
+ operation=$2
+ archive=$3
+ at_file_contents=`cat "$1"`
+ eval set x "$at_file_contents"
+ shift
+
+ for member
+ do
+ $AR -NOLOGO $operation:"$member" "$archive" || exit $?
+ done
+}
+
+case $1 in
+ '')
+ func_error "no command. Try '$0 --help' for more information."
+ ;;
+ -h | --h*)
+ cat <<EOF
+Usage: $me [--help] [--version] PROGRAM ACTION ARCHIVE [MEMBER...]
+
+Members may be specified in a file named with @FILE.
+EOF
+ exit $?
+ ;;
+ -v | --v*)
+ echo "$me, version $scriptversion"
+ exit $?
+ ;;
+esac
+
+if test $# -lt 3; then
+ func_error "you must specify a program, an action and an archive"
+fi
+
+AR=$1
+shift
+while :
+do
+ if test $# -lt 2; then
+ func_error "you must specify a program, an action and an archive"
+ fi
+ case $1 in
+ -lib | -LIB \
+ | -ltcg | -LTCG \
+ | -machine* | -MACHINE* \
+ | -subsystem* | -SUBSYSTEM* \
+ | -verbose | -VERBOSE \
+ | -wx* | -WX* )
+ AR="$AR $1"
+ shift
+ ;;
+ *)
+ action=$1
+ shift
+ break
+ ;;
+ esac
+done
+orig_archive=$1
+shift
+func_file_conv "$orig_archive"
+archive=$file
+
+# strip leading dash in $action
+action=${action#-}
+
+delete=
+extract=
+list=
+quick=
+replace=
+index=
+create=
+
+while test -n "$action"
+do
+ case $action in
+ d*) delete=yes ;;
+ x*) extract=yes ;;
+ t*) list=yes ;;
+ q*) quick=yes ;;
+ r*) replace=yes ;;
+ s*) index=yes ;;
+ S*) ;; # the index is always updated implicitly
+ c*) create=yes ;;
+ u*) ;; # TODO: don't ignore the update modifier
+ v*) ;; # TODO: don't ignore the verbose modifier
+ *)
+ func_error "unknown action specified"
+ ;;
+ esac
+ action=${action#?}
+done
+
+case $delete$extract$list$quick$replace,$index in
+ yes,* | ,yes)
+ ;;
+ yesyes*)
+ func_error "more than one action specified"
+ ;;
+ *)
+ func_error "no action specified"
+ ;;
+esac
+
+if test -n "$delete"; then
+ if test ! -f "$orig_archive"; then
+ func_error "archive not found"
+ fi
+ for member
+ do
+ case $1 in
+ @*)
+ func_at_file "${1#@}" -REMOVE "$archive"
+ ;;
+ *)
+ func_file_conv "$1"
+ $AR -NOLOGO -REMOVE:"$file" "$archive" || exit $?
+ ;;
+ esac
+ done
+
+elif test -n "$extract"; then
+ if test ! -f "$orig_archive"; then
+ func_error "archive not found"
+ fi
+ if test $# -gt 0; then
+ for member
+ do
+ case $1 in
+ @*)
+ func_at_file "${1#@}" -EXTRACT "$archive"
+ ;;
+ *)
+ func_file_conv "$1"
+ $AR -NOLOGO -EXTRACT:"$file" "$archive" || exit $?
+ ;;
+ esac
+ done
+ else
+ $AR -NOLOGO -LIST "$archive" | sed -e 's/\\/\\\\/g' | while read member
+ do
+ $AR -NOLOGO -EXTRACT:"$member" "$archive" || exit $?
+ done
+ fi
+
+elif test -n "$quick$replace"; then
+ if test ! -f "$orig_archive"; then
+ if test -z "$create"; then
+ echo "$me: creating $orig_archive"
+ fi
+ orig_archive=
+ else
+ orig_archive=$archive
+ fi
+
+ for member
+ do
+ case $1 in
+ @*)
+ func_file_conv "${1#@}"
+ set x "$@" "@$file"
+ ;;
+ *)
+ func_file_conv "$1"
+ set x "$@" "$file"
+ ;;
+ esac
+ shift
+ shift
+ done
+
+ if test -n "$orig_archive"; then
+ $AR -NOLOGO -OUT:"$archive" "$orig_archive" "$@" || exit $?
+ else
+ $AR -NOLOGO -OUT:"$archive" "$@" || exit $?
+ fi
+
+elif test -n "$list"; then
+ if test ! -f "$orig_archive"; then
+ func_error "archive not found"
+ fi
+ $AR -NOLOGO -LIST "$archive" || exit $?
+fi
#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
-scriptversion=2012-10-14.11; # UTC
+scriptversion=2016-01-11.22; # UTC
-# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+# Copyright (C) 1999-2015 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
echo "compile $scriptversion"
exit $?
;;
- cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
+ cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
+ icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
func_cl_wrapper "$@" # Doesn't return...
;;
esac
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
#! /bin/sh
# Attempt to guess a canonical system name.
-# Copyright 1992-2013 Free Software Foundation, Inc.
+# Copyright 1992-2016 Free Software Foundation, Inc.
-timestamp='2013-02-12'
+timestamp='2016-05-15'
# 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
# program. This Exception is an additional permission under section 7
# of the GNU General Public License, version 3 ("GPLv3").
#
-# Originally written by Per Bothner.
+# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
#
# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
#
-# Please send patches with a ChangeLog entry to config-patches@gnu.org.
+# Please send patches to <config-patches@gnu.org>.
me=`echo "$0" | sed -e 's,.*/,,'`
GNU config.guess ($timestamp)
Originally written by Per Bothner.
-Copyright 1992-2013 Free Software Foundation, Inc.
+Copyright 1992-2016 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."
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
+
+ eval $set_cc_for_build
+ cat <<-EOF > $dummy.c
+ #include <features.h>
+ #if defined(__UCLIBC__)
+ LIBC=uclibc
+ #elif defined(__dietlibc__)
+ LIBC=dietlibc
+ #else
+ LIBC=gnu
+ #endif
+ EOF
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
+ ;;
+esac
+
# Note: order is significant - the case branches are not exclusive.
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=`(/sbin/$sysctl 2>/dev/null || \
- /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
+ UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
+ /sbin/$sysctl 2>/dev/null || \
+ /usr/sbin/$sysctl 2>/dev/null || \
+ echo unknown)`
case "${UNAME_MACHINE_ARCH}" in
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'`
+ machine=${arch}${endian}-unknown
+ ;;
*) machine=${UNAME_MACHINE_ARCH}-unknown ;;
esac
# The Operating System including object format, if it has switched
- # to ELF recently, or will in the future.
+ # to ELF recently (or will in the future) and ABI.
case "${UNAME_MACHINE_ARCH}" in
+ earm*)
+ os=netbsdelf
+ ;;
arm*|i386|m68k|ns32k|sh3*|sparc|vax)
eval $set_cc_for_build
if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
os=netbsd
;;
esac
+ # Determine ABI tags.
+ case "${UNAME_MACHINE_ARCH}" in
+ earm*)
+ expr='s/^earmv[0-9]/-eabi/;s/eb$//'
+ abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"`
+ ;;
+ esac
# The OS release
# Debian GNU/NetBSD machines have a different userland, and
# thus, need a distinct triplet. However, they do not need
release='-gnu'
;;
*)
- release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+ release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2`
;;
esac
# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
# contains redundant information, the shorter form:
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
- echo "${machine}-${os}${release}"
+ echo "${machine}-${os}${release}${abi}"
exit ;;
*:Bitrig:*:*)
UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
exit ;;
+ *:LibertyBSD:*:*)
+ UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
+ echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE}
+ exit ;;
*:ekkoBSD:*:*)
echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
exit ;;
*:MirBSD:*:*)
echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
exit ;;
+ *:Sortix:*:*)
+ echo ${UNAME_MACHINE}-unknown-sortix
+ exit ;;
alpha:OSF1:*:*)
case $UNAME_RELEASE in
*4.0)
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" ;;
+ UNAME_MACHINE=alpha ;;
"EV4.5 (21064)")
- UNAME_MACHINE="alpha" ;;
+ UNAME_MACHINE=alpha ;;
"LCA4 (21066/21068)")
- UNAME_MACHINE="alpha" ;;
+ UNAME_MACHINE=alpha ;;
"EV5 (21164)")
- UNAME_MACHINE="alphaev5" ;;
+ UNAME_MACHINE=alphaev5 ;;
"EV5.6 (21164A)")
- UNAME_MACHINE="alphaev56" ;;
+ UNAME_MACHINE=alphaev56 ;;
"EV5.6 (21164PC)")
- UNAME_MACHINE="alphapca56" ;;
+ UNAME_MACHINE=alphapca56 ;;
"EV5.7 (21164PC)")
- UNAME_MACHINE="alphapca57" ;;
+ UNAME_MACHINE=alphapca57 ;;
"EV6 (21264)")
- UNAME_MACHINE="alphaev6" ;;
+ UNAME_MACHINE=alphaev6 ;;
"EV6.7 (21264A)")
- UNAME_MACHINE="alphaev67" ;;
+ UNAME_MACHINE=alphaev67 ;;
"EV6.8CB (21264C)")
- UNAME_MACHINE="alphaev68" ;;
+ UNAME_MACHINE=alphaev68 ;;
"EV6.8AL (21264B)")
- UNAME_MACHINE="alphaev68" ;;
+ UNAME_MACHINE=alphaev68 ;;
"EV6.8CX (21264D)")
- UNAME_MACHINE="alphaev68" ;;
+ UNAME_MACHINE=alphaev68 ;;
"EV6.9A (21264/EV69A)")
- UNAME_MACHINE="alphaev69" ;;
+ UNAME_MACHINE=alphaev69 ;;
"EV7 (21364)")
- UNAME_MACHINE="alphaev7" ;;
+ UNAME_MACHINE=alphaev7 ;;
"EV7.9 (21364A)")
- UNAME_MACHINE="alphaev79" ;;
+ UNAME_MACHINE=alphaev79 ;;
esac
# A Pn.n version is a patched version.
# A Vn.n version is a released version.
# 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
exit ;;
i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
eval $set_cc_for_build
- SUN_ARCH="i386"
+ SUN_ARCH=i386
# 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 [ "$CC_FOR_BUILD" != no_compiler_found ]; then
if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
grep IS_64BIT_ARCH >/dev/null
then
- SUN_ARCH="x86_64"
+ SUN_ARCH=x86_64
fi
fi
echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit ;;
sun*:*:4.2BSD:*)
UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
- test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
+ test "x${UNAME_RELEASE}" = x && UNAME_RELEASE=3
case "`/bin/arch`" in
sun3)
echo m68k-sun-sunos${UNAME_RELEASE}
else
IBM_ARCH=powerpc
fi
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
+ if [ -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
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
+ 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
+ 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
532) # CPU_PA_RISC2_0
case "${sc_kernel_bits}" in
- 32) HP_ARCH="hppa2.0n" ;;
- 64) HP_ARCH="hppa2.0w" ;;
- '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
+ 32) HP_ARCH=hppa2.0n ;;
+ 64) HP_ARCH=hppa2.0w ;;
+ '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20
esac ;;
esac
fi
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 [ ${HP_ARCH} = hppa2.0w ]
then
eval $set_cc_for_build
# $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
# => hppa64-hp-hpux11.23
- if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
+ if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
grep -q __LP64__
then
- HP_ARCH="hppa2.0w"
+ HP_ARCH=hppa2.0w
else
- HP_ARCH="hppa64"
+ HP_ARCH=hppa64
fi
fi
echo ${HP_ARCH}-hp-hpux${HPUX_REV}
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_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:*:*)
*:MINGW*:*)
echo ${UNAME_MACHINE}-pc-mingw32
exit ;;
- i*:MSYS*:*)
+ *:MSYS*:*)
echo ${UNAME_MACHINE}-pc-msys
exit ;;
i*:windows32*:*)
exit ;;
*:GNU:*:*)
# the GNU system
- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`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 '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
exit ;;
i*86:Minix:*:*)
echo ${UNAME_MACHINE}-pc-minix
exit ;;
aarch64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
aarch64_be:Linux:*:*)
UNAME_MACHINE=aarch64_be
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
alpha:Linux:*:*)
case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
EV68*) UNAME_MACHINE=alphaev68 ;;
esac
objdump --private-headers /bin/sh | grep -q ld.so.1
- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+ if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ exit ;;
+ arc:Linux:*:* | arceb:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
arm*:Linux:*:*)
eval $set_cc_for_build
if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_EABI__
then
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
else
if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_PCS_VFP
then
- echo ${UNAME_MACHINE}-unknown-linux-gnueabi
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
else
- echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
fi
fi
exit ;;
avr32*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
cris:Linux:*:*)
- echo ${UNAME_MACHINE}-axis-linux-gnu
+ echo ${UNAME_MACHINE}-axis-linux-${LIBC}
exit ;;
crisv32:Linux:*:*)
- echo ${UNAME_MACHINE}-axis-linux-gnu
+ echo ${UNAME_MACHINE}-axis-linux-${LIBC}
+ exit ;;
+ e2k:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
frv:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
hexagon:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
i*86:Linux:*:*)
- LIBC=gnu
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #ifdef __dietlibc__
- LIBC=dietlibc
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
- echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
+ echo ${UNAME_MACHINE}-pc-linux-${LIBC}
exit ;;
ia64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ exit ;;
+ k1om:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
m32r*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
m68*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
mips:Linux:*:* | mips64:Linux:*:*)
eval $set_cc_for_build
#endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
;;
- or1k:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ openrisc*:Linux:*:*)
+ echo or1k-unknown-linux-${LIBC}
exit ;;
- or32:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ or32:Linux:*:* | or1k*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
padre:Linux:*:*)
- echo sparc-unknown-linux-gnu
+ echo sparc-unknown-linux-${LIBC}
exit ;;
parisc64:Linux:*:* | hppa64:Linux:*:*)
- echo hppa64-unknown-linux-gnu
+ echo hppa64-unknown-linux-${LIBC}
exit ;;
parisc:Linux:*:* | hppa:Linux:*:*)
# Look for CPU level
case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
- PA7*) echo hppa1.1-unknown-linux-gnu ;;
- PA8*) echo hppa2.0-unknown-linux-gnu ;;
- *) echo hppa-unknown-linux-gnu ;;
+ PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
+ PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
+ *) echo hppa-unknown-linux-${LIBC} ;;
esac
exit ;;
ppc64:Linux:*:*)
- echo powerpc64-unknown-linux-gnu
+ echo powerpc64-unknown-linux-${LIBC}
exit ;;
ppc:Linux:*:*)
- echo powerpc-unknown-linux-gnu
+ echo powerpc-unknown-linux-${LIBC}
+ exit ;;
+ ppc64le:Linux:*:*)
+ echo powerpc64le-unknown-linux-${LIBC}
+ exit ;;
+ ppcle:Linux:*:*)
+ echo powerpcle-unknown-linux-${LIBC}
exit ;;
s390:Linux:*:* | s390x:Linux:*:*)
- echo ${UNAME_MACHINE}-ibm-linux
+ echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
exit ;;
sh64*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
sh*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
sparc:Linux:*:* | sparc64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
tile*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
vax:Linux:*:*)
- echo ${UNAME_MACHINE}-dec-linux-gnu
+ echo ${UNAME_MACHINE}-dec-linux-${LIBC}
exit ;;
x86_64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-pc-linux-${LIBC}
exit ;;
xtensa*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
i*86:DYNIX/ptx:4*:*)
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
# uname -m prints for DJGPP always 'pc', but it prints nothing about
# the processor, so we play safe by assuming i586.
# Note: whatever this is, it MUST be the same as what config.sub
- # prints for the "djgpp" host, or else GDB configury will decide that
+ # prints for the "djgpp" host, or else GDB configure will decide that
# this is a cross-build.
echo i586-pc-msdosdjgpp
exit ;;
SX-8R:SUPER-UX:*:*)
echo sx8r-nec-superux${UNAME_RELEASE}
exit ;;
+ SX-ACE:SUPER-UX:*:*)
+ echo sxace-nec-superux${UNAME_RELEASE}
+ exit ;;
Power*:Rhapsody:*:*)
echo powerpc-apple-rhapsody${UNAME_RELEASE}
exit ;;
exit ;;
*:Darwin:*:*)
UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
- case $UNAME_PROCESSOR in
- i386)
- eval $set_cc_for_build
- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
- if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- UNAME_PROCESSOR="x86_64"
- fi
- fi ;;
- unknown) UNAME_PROCESSOR=powerpc ;;
- esac
+ eval $set_cc_for_build
+ if test "$UNAME_PROCESSOR" = unknown ; then
+ UNAME_PROCESSOR=powerpc
+ fi
+ if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
+ if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
+ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_64BIT_ARCH >/dev/null
+ then
+ case $UNAME_PROCESSOR in
+ i386) UNAME_PROCESSOR=x86_64 ;;
+ powerpc) UNAME_PROCESSOR=powerpc64 ;;
+ esac
+ fi
+ fi
+ elif test "$UNAME_PROCESSOR" = i386 ; then
+ # Avoid executing cc on OS X 10.9, as it ships with a stub
+ # that puts up a graphical alert prompting to install
+ # developer tools. Any system running Mac OS X 10.7 or
+ # later (Darwin 11 and later) is required to have a 64-bit
+ # processor. This is not true of the ARM version of Darwin
+ # that Apple uses in portable devices.
+ UNAME_PROCESSOR=x86_64
+ fi
echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
exit ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
UNAME_PROCESSOR=`uname -p`
- if test "$UNAME_PROCESSOR" = "x86"; then
+ if test "$UNAME_PROCESSOR" = x86; then
UNAME_PROCESSOR=i386
UNAME_MACHINE=pc
fi
# "uname -m" is not consistent, so use $cputype instead. 386
# is converted to i386 for consistency with other x86
# operating systems.
- if test "$cputype" = "386"; then
+ if test "$cputype" = 386; then
UNAME_MACHINE=i386
else
UNAME_MACHINE="$cputype"
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
x86_64:VMkernel:*:*)
echo ${UNAME_MACHINE}-unknown-esx
exit ;;
-esac
-
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
- /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
- I don't know.... */
- printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
- printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
- "4"
-#else
- ""
-#endif
- ); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
- printf ("arm-acorn-riscix\n"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
- printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
- int version;
- version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
- if (version < 4)
- printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
- else
- printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
- exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
- printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
- printf ("ns32k-encore-mach\n"); exit (0);
-#else
- printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
- printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
- printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
- printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
- struct utsname un;
-
- uname(&un);
-
- if (strncmp(un.version, "V2", 2) == 0) {
- printf ("i386-sequent-ptx2\n"); exit (0);
- }
- if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
- printf ("i386-sequent-ptx1\n"); exit (0);
- }
- printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-# include <sys/param.h>
-# if defined (BSD)
-# if BSD == 43
- printf ("vax-dec-bsd4.3\n"); exit (0);
-# else
-# if BSD == 199006
- printf ("vax-dec-bsd4.3reno\n"); exit (0);
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# endif
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# else
- printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
- printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
- exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
- { echo "$SYSTEM_NAME"; exit; }
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
- case `getsysinfo -f cpu_type` in
- c1*)
- echo c1-convex-bsd
- exit ;;
- c2*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
- exit ;;
- c34*)
- echo c34-convex-bsd
+ amd64:Isilon\ OneFS:*:*)
+ echo x86_64-unknown-onefs
exit ;;
- c38*)
- echo c38-convex-bsd
- exit ;;
- c4*)
- echo c4-convex-bsd
- exit ;;
- esac
-fi
+esac
cat >&2 <<EOF
$0: unable to guess system type
-This script, last modified $timestamp, has failed to recognize
-the operating system you are using. It is advised that you
-download the most up to date version of the config scripts from
+This script (version $timestamp), has failed to recognize the
+operating system you are using. If your script is old, overwrite
+config.guess and config.sub with the latest versions from:
- http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
and
- http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
+ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
-If the version you run ($0) is already up to date, please
-send the following data and any information you think might be
-pertinent to <config-patches@gnu.org> in order to provide the needed
-information to handle your system.
+If $0 has already been updated, send the following data and any
+information you think might be pertinent to config-patches@gnu.org to
+provide the necessary information to handle your system.
config.guess timestamp = $timestamp
# Output a system dependent set of variables, describing how to set the
# run time search path of shared libraries in an executable.
#
-# Copyright 1996-2013 Free Software Foundation, Inc.
+# Copyright 1996-2016 Free Software Foundation, Inc.
# Taken from GNU libtool, 2001
# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
#
dgux*)
hardcode_libdir_flag_spec='-L$libdir'
;;
- freebsd2.2*)
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- ;;
- freebsd2*)
+ freebsd2.[01]*)
hardcode_direct=yes
hardcode_minus_L=yes
;;
dgux*)
library_names_spec='$libname$shrext'
;;
+ freebsd[23].*)
+ library_names_spec='$libname$shrext$versuffix'
+ ;;
freebsd* | dragonfly*)
- case "$host_os" in
- freebsd[123]*)
- library_names_spec='$libname$shrext$versuffix' ;;
- *)
- library_names_spec='$libname$shrext' ;;
- esac
+ library_names_spec='$libname$shrext'
;;
gnu*)
library_names_spec='$libname$shrext'
#! /bin/sh
# Configuration validation subroutine script.
-# Copyright 1992-2013 Free Software Foundation, Inc.
+# Copyright 1992-2016 Free Software Foundation, Inc.
-timestamp='2013-02-12'
+timestamp='2016-06-20'
# 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
# of the GNU General Public License, version 3 ("GPLv3").
-# Please send patches with a ChangeLog entry to config-patches@gnu.org.
+# Please send patches to <config-patches@gnu.org>.
#
# Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument.
# Otherwise, we print the canonical config type on stdout and succeed.
# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
# This file is supposed to be the same for all GNU packages
# and recognize all the CPU types, system types and aliases
me=`echo "$0" | sed -e 's,.*/,,'`
usage="\
-Usage: $0 [OPTION] CPU-MFR-OPSYS
- $0 [OPTION] ALIAS
+Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
Canonicalize a configuration name.
version="\
GNU config.sub ($timestamp)
-Copyright 1992-2013 Free Software Foundation, Inc.
+Copyright 1992-2016 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."
case $maybe_os in
nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
- knetbsd*-gnu* | netbsd*-gnu* | \
+ knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \
kopensolaris*-gnu* | \
storm-chaos* | os2-emx* | rtmk-nova*)
os=-$maybe_os
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| am33_2.0 \
- | arc \
+ | arc | arceb \
| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
| avr | avr32 \
+ | ba \
| be32 | be64 \
| bfin \
- | c4x | clipper \
+ | c4x | c8051 | clipper \
| d10v | d30v | dlx | dsp16xx \
- | epiphany \
- | fido | fr30 | frv \
+ | e2k | epiphany \
+ | fido | fr30 | frv | ft32 \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| hexagon \
| i370 | i860 | i960 | ia64 \
| ip2k | iq2000 \
+ | k1om \
| le32 | le64 \
| lm32 \
| m32c | m32r | m32rle | m68000 | m68k | m88k \
| mips64vr5900 | mips64vr5900el \
| mipsisa32 | mipsisa32el \
| mipsisa32r2 | mipsisa32r2el \
+ | mipsisa32r6 | mipsisa32r6el \
| mipsisa64 | mipsisa64el \
| mipsisa64r2 | mipsisa64r2el \
+ | mipsisa64r6 | mipsisa64r6el \
| mipsisa64sb1 | mipsisa64sb1el \
| mipsisa64sr71k | mipsisa64sr71kel \
| mipsr5900 | mipsr5900el \
| nds32 | nds32le | nds32be \
| nios | nios2 | nios2eb | nios2el \
| ns16k | ns32k \
- | open8 \
- | or1k | or32 \
+ | open8 | or1k | or1knd | or32 \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle \
| pyramid \
+ | riscv32 | riscv64 \
| rl78 | rx \
| score \
- | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
+ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
| sh64 | sh64le \
| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
| ubicom32 \
| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
+ | visium \
| we32k \
| x86 | xc16x | xstormy16 | xtensa \
| z8k | z80)
c6x)
basic_machine=tic6x-unknown
;;
- m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
+ leon|leon[3-9])
+ basic_machine=sparc-$basic_machine
+ ;;
+ m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
basic_machine=$basic_machine-unknown
os=-none
;;
| aarch64-* | aarch64_be-* \
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
| avr-* | avr32-* \
+ | ba-* \
| be32-* | be64-* \
| bfin-* | bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* \
- | clipper-* | craynv-* | cydra-* \
+ | c8051-* | clipper-* | craynv-* | cydra-* \
| d10v-* | d30v-* | dlx-* \
- | elxsi-* \
+ | e2k-* | elxsi-* \
| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
| h8300-* | h8500-* \
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
| hexagon-* \
| i*86-* | i860-* | i960-* | ia64-* \
| ip2k-* | iq2000-* \
+ | k1om-* \
| le32-* | le64-* \
| lm32-* \
| m32c-* | m32r-* | m32rle-* \
| mips64vr5900-* | mips64vr5900el-* \
| mipsisa32-* | mipsisa32el-* \
| mipsisa32r2-* | mipsisa32r2el-* \
+ | mipsisa32r6-* | mipsisa32r6el-* \
| mipsisa64-* | mipsisa64el-* \
| mipsisa64r2-* | mipsisa64r2el-* \
+ | mipsisa64r6-* | mipsisa64r6el-* \
| mipsisa64sb1-* | mipsisa64sb1el-* \
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
| mipsr5900-* | mipsr5900el-* \
| nios-* | nios2-* | nios2eb-* | nios2el-* \
| none-* | np1-* | ns16k-* | ns32k-* \
| open8-* \
+ | or1k*-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
| pyramid-* \
+ | riscv32-* | riscv64-* \
| rl78-* | romp-* | rs6000-* | rx-* \
| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
| sparclite-* \
- | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
+ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
| tahoe-* \
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
| tile*-* \
| ubicom32-* \
| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
| vax-* \
+ | visium-* \
| we32k-* \
| x86-* | x86_64-* | xc16x-* | xps100-* \
| xstormy16-* | xtensa*-* \
basic_machine=i386-pc
os=-aros
;;
+ asmjs)
+ basic_machine=asmjs-unknown
+ ;;
aux)
basic_machine=m68k-apple
os=-aux
basic_machine=m68k-bull
os=-sysv3
;;
+ e500v[12])
+ basic_machine=powerpc-unknown
+ os=$os"spe"
+ ;;
+ e500v[12]-*)
+ basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
+ os=$os"spe"
+ ;;
ebmon29k)
basic_machine=a29k-amd
os=-ebmon
basic_machine=m68k-isi
os=-sysv
;;
+ leon-*|leon[3-9]-*)
+ basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
+ ;;
m68knommu)
basic_machine=m68k-unknown
os=-linux
os=-mingw64
;;
mingw32)
- basic_machine=i386-pc
+ basic_machine=i686-pc
os=-mingw32
;;
mingw32ce)
basic_machine=powerpc-unknown
os=-morphos
;;
+ moxiebox)
+ basic_machine=moxie-unknown
+ os=-moxiebox
+ ;;
msdos)
basic_machine=i386-pc
os=-msdos
basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
;;
msys)
- basic_machine=i386-pc
+ basic_machine=i686-pc
os=-msys
;;
mvs)
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
| -sym* | -kopensolaris* | -plan9* \
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
- | -aos* | -aros* \
+ | -aos* | -aros* | -cloudabi* | -sortix* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
| -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
- | -bitrig* | -openbsd* | -solidbsd* \
+ | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
| -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -chorusos* | -chorusrdb* | -cegcc* \
| -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
+ | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
| -linux-newlib* | -linux-musl* | -linux-uclibc* \
- | -uxpv* | -beos* | -mpeix* | -udk* \
+ | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
- | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
+ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
+ | -onefs* | -tirtos* | -phoenix*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
;;
-nacl*)
;;
+ -ios)
+ ;;
-none)
;;
*)
c4x-* | tic4x-*)
os=-coff
;;
+ c8051-*)
+ os=-elf
+ ;;
hexagon-*)
os=-elf
;;
mips*-*)
os=-elf
;;
- or1k-*)
- os=-elf
- ;;
or32-*)
os=-coff
;;
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
-scriptversion=2012-10-18.11; # UTC
+scriptversion=2016-01-11.22; # UTC
-# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+# Copyright (C) 1999-2015 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
G
p
}' >> "$depfile"
+ echo >> "$depfile" # make sure the fragment doesn't end with a backslash
rm -f "$tmpdepfile"
;;
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
# controlled .prev-version file, automate the procedure by which we record
# the date, release-type and version string in the NEWS file. That commit
# will serve to identify the release, so apply a signed tag to it as well.
-VERSION=2012-08-01.09 # UTC
+VERSION=2016-01-12.23 # UTC
# Note: this is a bash script (could be zsh or dash)
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
opt=$(echo "$1" | sed -e 's/=.*//')
val=$(echo "$1" | sed -e 's/[^=]*=//')
shift
- set dummy "$opt" "$val" ${1+"$@"}; shift
+ set dummy "$opt" "$val" "$@"; shift
;;
esac
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "VERSION="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: " # UTC"
# End:
# 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=2013-03-08.15
+scriptversion=2016-05-20.09
-# Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013
-# Free Software Foundation, Inc.
+# Copyright 2003-2016 Free Software Foundation, Inc.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# Original author: Mohit Agarwal.
-# Send bug reports and any other correspondence to bug-texinfo@gnu.org.
+# Send bug reports and any other correspondence to bug-gnulib@gnu.org.
#
# The latest version of this script, and the companion template, is
-# available from Texinfo CVS:
-# http://savannah.gnu.org/cgi-bin/viewcvs/texinfo/texinfo/util/gendocs.sh
-# http://savannah.gnu.org/cgi-bin/viewcvs/texinfo/texinfo/util/gendocs_template
+# available from the Gnulib repository:
#
-# An up-to-date copy is also maintained in Gnulib (gnu.org/software/gnulib).
+# http://git.savannah.gnu.org/cgit/gnulib.git/tree/build-aux/gendocs.sh
+# http://git.savannah.gnu.org/cgit/gnulib.git/tree/doc/gendocs_template
# TODO:
-# - image importation was only implemented for HTML generated by
+# - image importing was only implemented for HTML generated by
# makeinfo. But it should be simple enough to adjust.
# - images are not imported in the source tarball. All the needed
# formats (PDF, PNG, etc.) should be included.
prog=`basename "$0"`
srcdir=`pwd`
-scripturl="http://savannah.gnu.org/cgi-bin/viewcvs/~checkout~/texinfo/texinfo/util/gendocs.sh"
-templateurl="http://savannah.gnu.org/cgi-bin/viewcvs/~checkout~/texinfo/texinfo/util/gendocs_template"
+scripturl="http://git.savannah.gnu.org/cgit/gnulib.git/plain/build-aux/gendocs.sh"
+templateurl="http://git.savannah.gnu.org/cgit/gnulib.git/plain/doc/gendocs_template"
: ${SETLANG="env LANG= LC_MESSAGES= LC_ALL= LANGUAGE="}
: ${MAKEINFO="makeinfo"}
-: ${TEXI2DVI="texi2dvi -t @finalout"}
+: ${TEXI2DVI="texi2dvi"}
: ${DOCBOOK2HTML="docbook2html"}
: ${DOCBOOK2PDF="docbook2pdf"}
: ${DOCBOOK2TXT="docbook2txt"}
unset CDPATH
unset use_texi2html
+MANUAL_TITLE=
+PACKAGE=
+EMAIL=webmasters@gnu.org # please override with --email
+commonarg= # passed to all makeinfo/texi2html invcations.
+dirargs= # passed to all tools (-I dir).
+dirs= # -I directories.
+htmlarg="--css-ref=/software/gnulib/manual.css -c TOP_NODE_UP_URL=/manual"
+infoarg=--no-split
+generate_ascii=true
+generate_html=true
+generate_info=true
+generate_tex=true
+outdir=manual
+source_extra=
+split=node
+srcfile=
+texarg="-t @finalout"
+
version="gendocs.sh $scriptversion
-Copyright 2013 Free Software Foundation, Inc.
+Copyright 2016 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."
-o OUTDIR write files into OUTDIR, instead of manual/.
-I DIR append DIR to the Texinfo search path.
--common ARG pass ARG in all invocations.
- --html ARG pass ARG to makeinfo or texi2html for HTML targets.
+ --html ARG pass ARG to makeinfo or texi2html for HTML targets,
+ instead of '$htmlarg'.
--info ARG pass ARG to makeinfo for Info, instead of --no-split.
--no-ascii skip generating the plain text output.
+ --no-html skip generating the html output.
+ --no-info skip generating the info output.
+ --no-tex skip generating the dvi and pdf output.
--source ARG include ARG in tar archive of sources.
--split HOW make split HTML by node, section, chapter; default node.
+ --tex ARG pass ARG to texi2dvi for DVI and PDF, instead of -t @finalout.
--texi2html use texi2html to make HTML target, with all split versions.
--docbook convert through DocBook too (xml, txt, html, pdf).
happen to have a non-English manual and non-English web site, see the
SETLANG setting in the source.
-Email bug reports or enhancement requests to bug-texinfo@gnu.org.
+Email bug reports or enhancement requests to bug-gnulib@gnu.org.
"
-MANUAL_TITLE=
-PACKAGE=
-EMAIL=webmasters@gnu.org # please override with --email
-commonarg= # passed to all makeinfo/texi2html invcations.
-dirargs= # passed to all tools (-I dir).
-dirs= # -I's directories.
-htmlarg=
-infoarg=--no-split
-generate_ascii=true
-outdir=manual
-source_extra=
-split=node
-srcfile=
-
while test $# -gt 0; do
case $1 in
-s) shift; srcfile=$1;;
--html) shift; htmlarg=$1;;
--info) shift; infoarg=$1;;
--no-ascii) generate_ascii=false;;
+ --no-html) generate_ascii=false;;
+ --no-info) generate_info=false;;
+ --no-tex) generate_tex=false;;
--source) shift; source_extra=$1;;
--split) shift; split=$1;;
+ --tex) shift; texarg=$1;;
--texi2html) use_texi2html=1;;
--help) echo "$usage"; exit 0;;
# copy_images OUTDIR HTML-FILE...
# -------------------------------
-# Copy all the images needed by the HTML-FILEs into OUTDIR. Look
-# for them in the -I directories.
+# Copy all the images needed by the HTML-FILEs into OUTDIR.
+# Look for them in . and the -I directories; this is simpler than what
+# makeinfo supports with -I, but hopefully it will suffice.
copy_images()
{
local odir
BEGIN {
\$me = '$prog';
\$odir = '$odir';
- @dirs = qw($dirs);
+ @dirs = qw(. $dirs);
}
" -e '
/<img src="(.*?)"/g && ++$need{$1};
echo " in `pwd`"
mkdir -p "$outdir/"
-cmd="$SETLANG $MAKEINFO -o $PACKAGE.info $commonarg $infoarg \"$srcfile\""
-echo "Generating info... ($cmd)"
-eval "$cmd"
-tar czf "$outdir/$PACKAGE.info.tar.gz" $PACKAGE.info*
-ls -l "$outdir/$PACKAGE.info.tar.gz"
-info_tgz_size=`calcsize "$outdir/$PACKAGE.info.tar.gz"`
-# do not mv the info files, there's no point in having them available
-# separately on the web.
-
-cmd="$SETLANG $TEXI2DVI $dirargs \"$srcfile\""
-printf "\nGenerating dvi... ($cmd)\n"
-eval "$cmd"
-# compress/finish dvi:
-gzip -f -9 $PACKAGE.dvi
-dvi_gz_size=`calcsize $PACKAGE.dvi.gz`
-mv $PACKAGE.dvi.gz "$outdir/"
-ls -l "$outdir/$PACKAGE.dvi.gz"
-
-cmd="$SETLANG $TEXI2DVI --pdf $dirargs \"$srcfile\""
-printf "\nGenerating pdf... ($cmd)\n"
-eval "$cmd"
-pdf_size=`calcsize $PACKAGE.pdf`
-mv $PACKAGE.pdf "$outdir/"
-ls -l "$outdir/$PACKAGE.pdf"
+# \f
+if $generate_info; then
+ cmd="$SETLANG $MAKEINFO -o $PACKAGE.info $commonarg $infoarg \"$srcfile\""
+ echo "Generating info... ($cmd)"
+ rm -f $PACKAGE.info* # get rid of any strays
+ eval "$cmd"
+ tar czf "$outdir/$PACKAGE.info.tar.gz" $PACKAGE.info*
+ ls -l "$outdir/$PACKAGE.info.tar.gz"
+ info_tgz_size=`calcsize "$outdir/$PACKAGE.info.tar.gz"`
+ # do not mv the info files, there's no point in having them available
+ # separately on the web.
+fi # end info
+
+# \f
+if $generate_tex; then
+ cmd="$SETLANG $TEXI2DVI $dirargs $texarg \"$srcfile\""
+ printf "\nGenerating dvi... ($cmd)\n"
+ eval "$cmd"
+ # compress/finish dvi:
+ gzip -f -9 $PACKAGE.dvi
+ dvi_gz_size=`calcsize $PACKAGE.dvi.gz`
+ mv $PACKAGE.dvi.gz "$outdir/"
+ ls -l "$outdir/$PACKAGE.dvi.gz"
+
+ cmd="$SETLANG $TEXI2DVI --pdf $dirargs $texarg \"$srcfile\""
+ printf "\nGenerating pdf... ($cmd)\n"
+ eval "$cmd"
+ pdf_size=`calcsize $PACKAGE.pdf`
+ mv $PACKAGE.pdf "$outdir/"
+ ls -l "$outdir/$PACKAGE.pdf"
+fi # end tex (dvi + pdf)
+# \f
if $generate_ascii; then
opt="-o $PACKAGE.txt --no-split --no-headers $commonarg"
cmd="$SETLANG $MAKEINFO $opt \"$srcfile\""
ls -l "$outdir/$PACKAGE.txt" "$outdir/$PACKAGE.txt.gz"
fi
+# \f
+
+if $generate_html; then
# Split HTML at level $1. Used for texi2html.
html_split()
{
html_split chapter
html_split section
fi
+fi # end html
+# \f
printf "\nMaking .tar.gz for sources...\n"
d=`dirname $srcfile`
(
)
texi_tgz_size=`calcsize "$outdir/$PACKAGE.texi.tar.gz"`
+# \f
+# Do everything again through docbook.
if test -n "$docbook"; then
opt="-o - --docbook $commonarg"
cmd="$SETLANG $MAKEINFO $opt \"$srcfile\" >${srcdir}/$PACKAGE-db.xml"
mv $PACKAGE-db.pdf "$outdir/"
fi
-printf "\nMaking index file...\n"
+# \f
+printf "\nMaking index.html for $PACKAGE...\n"
if test -z "$use_texi2html"; then
CONDS="/%%IF *HTML_SECTION%%/,/%%ENDIF *HTML_SECTION%%/d;\
/%%IF *HTML_CHAPTER%%/,/%%ENDIF *HTML_CHAPTER%%/d"
#!/bin/sh
# Print a version string.
-scriptversion=2012-12-31.23; # UTC
+scriptversion=2016-05-08.18; # UTC
-# Copyright (C) 2007-2013 Free Software Foundation, Inc.
+# Copyright (C) 2007-2016 Free Software Foundation, Inc.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
Options:
- --prefix prefix of git tags (default 'v')
- --fallback fallback version to use if \"git --version\" fails
+ --prefix PREFIX prefix of git tags (default 'v')
+ --fallback VERSION
+ fallback version to use if \"git --version\" fails
--help display this help and exit
--version output version information and exit
case $1 in
--help) echo "$usage"; exit 0;;
--version) echo "$version"; exit 0;;
- --prefix) shift; prefix="$1";;
- --fallback) shift; fallback="$1";;
+ --prefix) shift; prefix=${1?};;
+ --fallback) shift; fallback=${1?};;
-*)
echo "$0: Unknown option '$1'." >&2
echo "$0: Try '--help' for more information." >&2
fi
# Omit the trailing newline, so that m4_esyscmd can use the result directly.
-echo "$v" | tr -d "$nl"
+printf %s "$v"
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
-eval '(exit $?0)' && eval 'exec perl -wS "$0" ${1+"$@"}'
+eval '(exit $?0)' && eval 'exec perl -wS "$0" "$@"'
& eval 'exec perl -wS "$0" $argv:q'
if 0;
# Convert git log output to ChangeLog format.
-my $VERSION = '2012-07-29 06:11'; # UTC
+my $VERSION = '2016-03-22 21:49'; # UTC
# The definition above must lie within the first 8 lines in order
# for the Emacs time-stamp write hook (at end) to update it.
# If you change this file with Emacs, please let the write hook
# do its job. Otherwise, update this string manually.
-# Copyright (C) 2008-2013 Free Software Foundation, Inc.
+# Copyright (C) 2008-2016 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
directory can be derived.
--since=DATE convert only the logs since DATE;
the default is to convert all log entries.
+ --until=DATE convert only the logs older than DATE.
+ --ignore-matching=PAT ignore commit messages whose first lines match PAT.
+ --ignore-line=PAT ignore lines of commit messages that match PAT.
--format=FMT set format string for commit subject and body;
see 'man git-log' for the list of format metacharacters;
the default is '%s%n%b%n'
{
my $since_date;
+ my $until_date;
my $format_string = '%s%n%b%n';
my $amend_file;
my $append_dot = 0;
my $cluster = 1;
+ my $ignore_matching;
+ my $ignore_line;
my $strip_tab = 0;
my $strip_cherry_pick = 0;
my $srcdir;
help => sub { usage 0 },
version => sub { print "$ME version $VERSION\n"; exit },
'since=s' => \$since_date,
+ 'until=s' => \$until_date,
'format=s' => \$format_string,
'amend=s' => \$amend_file,
'append-dot' => \$append_dot,
'cluster!' => \$cluster,
+ 'ignore-matching=s' => \$ignore_matching,
+ 'ignore-line=s' => \$ignore_line,
'strip-tab' => \$strip_tab,
'strip-cherry-pick' => \$strip_cherry_pick,
'srcdir=s' => \$srcdir,
defined $since_date
and unshift @ARGV, "--since=$since_date";
+ defined $until_date
+ and unshift @ARGV, "--until=$until_date";
# This is a hash that maps an SHA1 to perl code (i.e., s/old/new/)
# that makes a correction in the log or attribution of that commit.
my $prev_multi_paragraph;
my $prev_date_line = '';
my @prev_coauthors = ();
+ my @skipshas = ();
while (1)
{
defined (my $in = <PIPE>)
$sha =~ /^[0-9a-fA-F]{40}$/
or die "$ME:$.: invalid SHA1: $sha\n";
+ my $skipflag = 0;
+ if (@skipshas)
+ {
+ foreach(@skipshas)
+ {
+ if ($sha =~ /^$_/)
+ {
+ $skipflag = $_;
+ last;
+ }
+ }
+ }
+
# If this commit's log requires any transformation, do it now.
my $code = $amend_code->{$sha};
if (defined $code)
$rest =~ s/^\s*\(cherry picked from commit [\da-f]+\)\n//m;
}
- my @line = split "\n", $rest;
+ my @line = split /[ \t]*\n/, $rest;
my $author_line = shift @line;
defined $author_line
or die "$ME:$.: unexpected EOF\n";
# Format 'Copyright-paperwork-exempt: Yes' as a standard ChangeLog
# `(tiny change)' annotation.
- my $tiny = (grep (/^Copyright-paperwork-exempt:\s+[Yy]es$/, @line)
+ my $tiny = (grep (/^(?:Copyright-paperwork-exempt|Tiny-change):\s+[Yy]es$/, @line)
? ' (tiny change)' : '');
my $date_line = sprintf "%s %s$tiny\n",
- strftime ("%F", localtime ($1)), $2;
+ strftime ("%Y-%m-%d", localtime ($1)), $2;
my @coauthors = grep /^Co-authored-by:.*$/, @line;
# Omit meta-data lines we've already interpreted.
@line = grep !/^(?:Signed-off-by:[ ].*>$
|Co-authored-by:[ ]
|Copyright-paperwork-exempt:[ ]
+ |Tiny-change:[ ]
)/x, @line;
# Remove leading and trailing blank lines.
while ($line[$#line] =~ /^\s*$/) { pop @line; }
}
- # Record whether there are two or more paragraphs.
- my $multi_paragraph = grep /^\s*$/, @line;
-
- # Format 'Co-authored-by: A U Thor <email@example.com>' lines in
- # standard multi-author ChangeLog format.
- for (@coauthors)
+ # Handle Emacs gitmerge.el "skipped" commits.
+ # Yes, this should be controlled by an option. So sue me.
+ if ( grep /^(; )?Merge from /, @line )
+ {
+ my $found = 0;
+ foreach (@line)
+ {
+ if (grep /^The following commit.*skipped:$/, $_)
+ {
+ $found = 1;
+ ## Reset at each merge to reduce chance of false matches.
+ @skipshas = ();
+ next;
+ }
+ if ($found && $_ =~ /^([0-9a-fA-F]{7,}) [^ ]/)
+ {
+ push ( @skipshas, $1 );
+ }
+ }
+ }
+
+ # Ignore commits that match the --ignore-matching pattern, if specified.
+ if (defined $ignore_matching && @line && $line[0] =~ /$ignore_matching/)
{
- s/^Co-authored-by:\s*/\t /;
- s/\s*</ </;
-
- /<.*?@.*\..*>/
- or warn "$ME: warning: missing email address for "
- . substr ($_, 5) . "\n";
+ $skipflag = 1;
}
-
- # If clustering of commit messages has been disabled, if this header
- # would be different from the previous date/name/email/coauthors header,
- # or if this or the previous entry consists of two or more paragraphs,
- # then print the header.
- if ( ! $cluster
- || $date_line ne $prev_date_line
- || "@coauthors" ne "@prev_coauthors"
- || $multi_paragraph
- || $prev_multi_paragraph)
+ elsif ($skipflag)
{
- $prev_date_line eq ''
- or print "\n";
- print $date_line;
- @coauthors
- and print join ("\n", @coauthors), "\n";
+ ## Perhaps only warn if a pattern matches more than once?
+ warn "$ME: warning: skipping $sha due to $skipflag\n";
}
- $prev_date_line = $date_line;
- @prev_coauthors = @coauthors;
- $prev_multi_paragraph = $multi_paragraph;
- # If there were any lines
- if (@line == 0)
+ if (! $skipflag)
{
- warn "$ME: warning: empty commit message:\n $date_line\n";
- }
- else
- {
- if ($append_dot)
+ if (defined $ignore_line && @line)
+ {
+ @line = grep ! /$ignore_line/, @line;
+ while ($line[$#line] =~ /^\s*$/) { pop @line; }
+ }
+
+ # Record whether there are two or more paragraphs.
+ my $multi_paragraph = grep /^\s*$/, @line;
+
+ # Format 'Co-authored-by: A U Thor <email@example.com>' lines in
+ # standard multi-author ChangeLog format.
+ for (@coauthors)
+ {
+ s/^Co-authored-by:\s*/\t /;
+ s/\s*</ </;
+
+ /<.*?@.*\..*>/
+ or warn "$ME: warning: missing email address for "
+ . substr ($_, 5) . "\n";
+ }
+
+ # If clustering of commit messages has been disabled, if this header
+ # would be different from the previous date/name/etc. header,
+ # or if this or the previous entry consists of two or more paragraphs,
+ # then print the header.
+ if ( ! $cluster
+ || $date_line ne $prev_date_line
+ || "@coauthors" ne "@prev_coauthors"
+ || $multi_paragraph
+ || $prev_multi_paragraph)
{
- # If the first line of the message has enough room, then
- if (length $line[0] < 72)
+ $prev_date_line eq ''
+ or print "\n";
+ print $date_line;
+ @coauthors
+ and print join ("\n", @coauthors), "\n";
+ }
+ $prev_date_line = $date_line;
+ @prev_coauthors = @coauthors;
+ $prev_multi_paragraph = $multi_paragraph;
+
+ # If there were any lines
+ if (@line == 0)
+ {
+ warn "$ME: warning: empty commit message:\n $date_line\n";
+ }
+ else
+ {
+ if ($append_dot)
{
- # append a dot if there is no other punctuation or blank
- # at the end.
- $line[0] =~ /[[:punct:]\s]$/
- or $line[0] .= '.';
+ # If the first line of the message has enough room, then
+ if (length $line[0] < 72)
+ {
+ # append a dot if there is no other punctuation or blank
+ # at the end.
+ $line[0] =~ /[[:punct:]\s]$/
+ or $line[0] .= '.';
+ }
}
- }
- # Remove one additional leading TAB from each line.
- $strip_tab
- and map { s/^\t// } @line;
+ # Remove one additional leading TAB from each line.
+ $strip_tab
+ and map { s/^\t// } @line;
- # Prefix each non-empty line with a TAB.
- @line = map { length $_ ? "\t$_" : '' } @line;
+ # Prefix each non-empty line with a TAB.
+ @line = map { length $_ ? "\t$_" : '' } @line;
- print "\n", join ("\n", @line), "\n";
+ print "\n", join ("\n", @line), "\n";
+ }
}
defined ($in = <PIPE>)
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "my $VERSION = '"
# time-stamp-format: "%:y-%02m-%02d %02H:%02M"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "'; # UTC"
# End:
# Run this after each non-alpha release, to update the web documentation at
# http://www.gnu.org/software/$pkg/manual/
-VERSION=2012-12-16.14; # UTC
+VERSION=2016-01-12.23; # UTC
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
Options:
-C, --builddir=DIR location of (configured) Makefile (default: .)
-n, --dry-run don't actually commit anything
+ -m, --mirror remove out of date files from document server
--help print this help, then exit
--version print version number, then exit
builddir=.
dryrun=
+rm_stale='echo'
while test $# != 0
do
# Handle --option=value by splitting apart and putting back on argv.
opt=$(echo "$1" | sed -e 's/=.*//')
val=$(echo "$1" | sed -e 's/[^=]*=//')
shift
- set dummy "$opt" "$val" ${1+"$@"}; shift
+ set dummy "$opt" "$val" "$@"; shift
;;
esac
--help|--version) ${1#--};;
-C|--builddir) shift; builddir=$1; shift ;;
-n|--dry-run) dryrun=echo; shift;;
+ -m|--mirror) rm_stale=''; shift;;
--*) die "unrecognized option: $1";;
*) break;;
esac
./bootstrap
srcdir=$(pwd)
cd "$builddir"
+builddir=$(pwd)
./config.status --recheck
./config.status
make
cd $tmp/$pkg/manual
# Add all the files. This is simpler than trying to add only the
- # new ones because of new directories: it would require iterating on
- # adding the outer directories, and then their contents.
- #
- # find guarantees that we add outer directories first.
- find . -name CVS -prune -o -print \
+ # new ones because of new directories
+ # First add non empty dirs individually
+ find . -name CVS -prune -o -type d \! -empty -print \
+ | $XARGS -n1 --no-run-if-empty -- $dryrun $CVS add -ko
+ # Now add all files
+ find . -name CVS -prune -o -type f -print \
| $XARGS --no-run-if-empty -- $dryrun $CVS add -ko
+ # Report/Remove stale files
+ # excluding doc server specific files like CVS/* and .symlinks
+ if test -n "$rm_stale"; then
+ echo 'Consider the --mirror option if all of the manual is generated,' >&2
+ echo 'which will run `cvs remove` to remove stale files.' >&2
+ fi
+ { find . \( -name CVS -o -type f -name '.*' \) -prune -o -type f -print
+ (cd "$builddir"/doc/manual/ && find . -type f -print | sed p)
+ } | sort | uniq -u \
+ | $XARGS --no-run-if-empty -- ${rm_stale:-$dryrun} $CVS remove -f
+
$dryrun $CVS ci -m $version
)
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "VERSION="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
#!/bin/sh
# Sign files and upload them.
-scriptversion=2013-03-19.17; # UTC
+scriptversion=2016-01-11.22; # UTC
-# Copyright (C) 2004-2013 Free Software Foundation, Inc.
+# Copyright (C) 2004-2016 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
#!/bin/sh
# install - install a program, script, or datafile
-scriptversion=2011-11-20.07; # UTC
+scriptversion=2016-01-11.22; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
# This script is compatible with the BSD install script, but was written
# from scratch.
+tab=' '
nl='
'
-IFS=" "" $nl"
+IFS=" $tab$nl"
-# set DOITPROG to echo to test this script
+# Set DOITPROG to "echo" to test this script.
-# Don't use :- since 4.3BSD and earlier shells don't like it.
doit=${DOITPROG-}
-if test -z "$doit"; then
- doit_exec=exec
-else
- doit_exec=$doit
-fi
+doit_exec=${doit:-exec}
# Put in absolute file names if you don't have them in your path;
# or use environment vars.
rmprog=${RMPROG-rm}
stripprog=${STRIPPROG-strip}
-posix_glob='?'
-initialize_posix_glob='
- test "$posix_glob" != "?" || {
- if (set -f) 2>/dev/null; then
- posix_glob=
- else
- posix_glob=:
- fi
- }
-'
-
posix_mkdir=
# Desired mode of installed file.
dst_arg=
copy_on_change=false
-no_target_directory=
+is_target_a_directory=possibly
usage="\
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
-d) dir_arg=true;;
-g) chgrpcmd="$chgrpprog $2"
- shift;;
+ shift;;
--help) echo "$usage"; exit $?;;
-m) mode=$2
- case $mode in
- *' '* | *' '* | *'
-'* | *'*'* | *'?'* | *'['*)
- echo "$0: invalid mode: $mode" >&2
- exit 1;;
- esac
- shift;;
+ case $mode in
+ *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
+ echo "$0: invalid mode: $mode" >&2
+ exit 1;;
+ esac
+ shift;;
-o) chowncmd="$chownprog $2"
- shift;;
+ shift;;
-s) stripcmd=$stripprog;;
- -t) dst_arg=$2
- # Protect names problematic for 'test' and other utilities.
- case $dst_arg in
- -* | [=\(\)!]) dst_arg=./$dst_arg;;
- esac
- shift;;
+ -t)
+ is_target_a_directory=always
+ dst_arg=$2
+ # Protect names problematic for 'test' and other utilities.
+ case $dst_arg in
+ -* | [=\(\)!]) dst_arg=./$dst_arg;;
+ esac
+ shift;;
- -T) no_target_directory=true;;
+ -T) is_target_a_directory=never;;
--version) echo "$0 $scriptversion"; exit $?;;
- --) shift
- break;;
+ --) shift
+ break;;
- -*) echo "$0: invalid option: $1" >&2
- exit 1;;
+ -*) echo "$0: invalid option: $1" >&2
+ exit 1;;
*) break;;
esac
shift
done
+# We allow the use of options -d and -T together, by making -d
+# take the precedence; this is for compatibility with GNU install.
+
+if test -n "$dir_arg"; then
+ if test -n "$dst_arg"; then
+ echo "$0: target directory not allowed when installing a directory." >&2
+ exit 1
+ fi
+fi
+
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
# When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified.
fi
if test -z "$dir_arg"; then
+ if test $# -gt 1 || test "$is_target_a_directory" = always; then
+ if test ! -d "$dst_arg"; then
+ echo "$0: $dst_arg: Is not a directory." >&2
+ exit 1
+ fi
+ fi
+fi
+
+if test -z "$dir_arg"; then
do_exit='(exit $ret); exit $ret'
trap "ret=129; $do_exit" 1
trap "ret=130; $do_exit" 2
*[0-7])
if test -z "$stripcmd"; then
- u_plus_rw=
+ u_plus_rw=
else
- u_plus_rw='% 200'
+ u_plus_rw='% 200'
fi
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
*)
if test -z "$stripcmd"; then
- u_plus_rw=
+ u_plus_rw=
else
- u_plus_rw=,u+rw
+ u_plus_rw=,u+rw
fi
cp_umask=$mode$u_plus_rw;;
esac
# If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
if test -d "$dst"; then
- if test -n "$no_target_directory"; then
- echo "$0: $dst_arg: Is a directory" >&2
- exit 1
+ if test "$is_target_a_directory" = never; then
+ echo "$0: $dst_arg: Is a directory" >&2
+ exit 1
fi
dstdir=$dst
dst=$dstdir/`basename "$src"`
dstdir_status=0
else
- # Prefer dirname, but fall back on a substitute if dirname fails.
- dstdir=`
- (dirname "$dst") 2>/dev/null ||
- expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$dst" : 'X\(//\)[^/]' \| \
- X"$dst" : 'X\(//\)$' \| \
- X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
- echo X"$dst" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'
- `
-
+ dstdir=`dirname "$dst"`
test -d "$dstdir"
dstdir_status=$?
fi
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
- mkdir_mode=-m$mode
- else
- mkdir_mode=
- 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.
- ;;
- *)
- tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
- trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
-
- if (umask $mkdir_umask &&
- exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/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.
- ls_ld_tmpdir=`ls -ld "$tmpdir"`
- case $ls_ld_tmpdir in
- d????-?r-*) different_mode=700;;
- d????-?--*) different_mode=755;;
- *) false;;
- esac &&
- $mkdirprog -m$different_mode -p -- "$tmpdir" && {
- ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
- test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
- }
- }
- then posix_mkdir=:
- fi
- rmdir "$tmpdir/d" "$tmpdir"
- else
- # Remove any dirs left behind by ancient mkdir implementations.
- rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
- fi
- trap '' 0;;
- esac;;
+ # 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
+ mkdir_mode=-m$mode
+ else
+ mkdir_mode=
+ 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.
+ ;;
+ *)
+ tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
+ trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
+
+ if (umask $mkdir_umask &&
+ exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/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.
+ ls_ld_tmpdir=`ls -ld "$tmpdir"`
+ case $ls_ld_tmpdir in
+ d????-?r-*) different_mode=700;;
+ d????-?--*) different_mode=755;;
+ *) false;;
+ esac &&
+ $mkdirprog -m$different_mode -p -- "$tmpdir" && {
+ ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
+ test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
+ }
+ }
+ then posix_mkdir=:
+ fi
+ rmdir "$tmpdir/d" "$tmpdir"
+ else
+ # Remove any dirs left behind by ancient mkdir implementations.
+ rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
+ fi
+ trap '' 0;;
+ esac;;
esac
if
$posix_mkdir && (
- umask $mkdir_umask &&
- $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
+ umask $mkdir_umask &&
+ $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
)
then :
else
# directory the slow way, step by step, checking for races as we go.
case $dstdir in
- /*) prefix='/';;
- [-=\(\)!]*) prefix='./';;
- *) prefix='';;
+ /*) prefix='/';;
+ [-=\(\)!]*) prefix='./';;
+ *) prefix='';;
esac
- eval "$initialize_posix_glob"
-
oIFS=$IFS
IFS=/
- $posix_glob set -f
+ set -f
set fnord $dstdir
shift
- $posix_glob set +f
+ set +f
IFS=$oIFS
prefixes=
for d
do
- test X"$d" = X && continue
-
- prefix=$prefix$d
- if test -d "$prefix"; then
- prefixes=
- else
- if $posix_mkdir; then
- (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
- else
- case $prefix in
- *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
- *) qprefix=$prefix;;
- esac
- prefixes="$prefixes '$qprefix'"
- fi
- fi
- prefix=$prefix/
+ test X"$d" = X && continue
+
+ prefix=$prefix$d
+ if test -d "$prefix"; then
+ prefixes=
+ else
+ if $posix_mkdir; then
+ (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
+ else
+ case $prefix in
+ *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
+ *) qprefix=$prefix;;
+ esac
+ prefixes="$prefixes '$qprefix'"
+ fi
+ fi
+ prefix=$prefix/
done
if test -n "$prefixes"; then
- # Don't fail if two instances are running concurrently.
- (umask $mkdir_umask &&
- eval "\$doit_exec \$mkdirprog $prefixes") ||
- test -d "$dstdir" || exit 1
- obsolete_mkdir_used=true
+ # Don't fail if two instances are running concurrently.
+ (umask $mkdir_umask &&
+ eval "\$doit_exec \$mkdirprog $prefixes") ||
+ test -d "$dstdir" || exit 1
+ obsolete_mkdir_used=true
fi
fi
fi
# If -C, don't bother to copy if it wouldn't change the file.
if $copy_on_change &&
- old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
- new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
-
- eval "$initialize_posix_glob" &&
- $posix_glob set -f &&
+ old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
+ new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
+ set -f &&
set X $old && old=:$2:$4:$5:$6 &&
set X $new && new=:$2:$4:$5:$6 &&
- $posix_glob set +f &&
-
+ set +f &&
test "$old" = "$new" &&
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
then
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
{
- # Now remove or move aside any old file at destination location.
- # We try this two ways since rm can't unlink itself on some
- # systems and the destination file might be busy for other
- # reasons. In this case, the final cleanup might fail but the new
- # file should still install successfully.
- {
- test ! -f "$dst" ||
- $doit $rmcmd -f "$dst" 2>/dev/null ||
- { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
- { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
- } ||
- { echo "$0: cannot unlink or rename $dst" >&2
- (exit 1); exit 1
- }
- } &&
-
- # Now rename the file to the real destination.
- $doit $mvcmd "$dsttmp" "$dst"
+ # Now remove or move aside any old file at destination location.
+ # We try this two ways since rm can't unlink itself on some
+ # systems and the destination file might be busy for other
+ # reasons. In this case, the final cleanup might fail but the new
+ # file should still install successfully.
+ {
+ test ! -f "$dst" ||
+ $doit $rmcmd -f "$dst" 2>/dev/null ||
+ { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
+ { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
+ } ||
+ { echo "$0: cannot unlink or rename $dst" >&2
+ (exit 1); exit 1
+ }
+ } &&
+
+ # Now rename the file to the real destination.
+ $doit $mvcmd "$dsttmp" "$dst"
}
fi || exit 1
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
#!/bin/sh
# Get modification time of a file or directory and pretty-print it.
-scriptversion=2010-08-21.06; # UTC
+scriptversion=2016-01-11.22; # UTC
-# Copyright (C) 1995-2013 Free Software Foundation, Inc.
+# Copyright (C) 1995-2015 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
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
#! /bin/sh
# Common wrapper for a few potentially missing GNU programs.
-scriptversion=2012-06-26.16; # UTC
+scriptversion=2016-01-11.22; # UTC
-# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+# Copyright (C) 1996-2015 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify
;;
autom4te*)
echo "You might have modified some maintainer files that require"
- echo "the 'automa4te' program to be rebuilt."
+ echo "the 'autom4te' program to be rebuilt."
program_details 'autom4te'
;;
bison*|yacc*)
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
/* A C macro for declaring that specific arguments must not be NULL.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
/* C++ compatible function declaration macros.
- Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Copyright (C) 2010-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
/* A C macro for declaring that specific function parameters are not used.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
/* A C macro for emitting warnings if a function is used.
- Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Copyright (C) 2010-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
#! /bin/sh
# test-driver - basic testsuite driver script.
-scriptversion=2012-06-27.10; # UTC
+scriptversion=2016-01-11.22; # UTC
-# Copyright (C) 2011-2013 Free Software Foundation, Inc.
+# Copyright (C) 2011-2015 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
Usage:
test-driver --test-name=NAME --log-file=PATH --trs-file=PATH
[--expect-failure={yes|no}] [--color-tests={yes|no}]
- [--enable-hard-errors={yes|no}] [--] TEST-SCRIPT
+ [--enable-hard-errors={yes|no}] [--]
+ TEST-SCRIPT [TEST-SCRIPT-ARGUMENTS]
The '--test-name', '--log-file' and '--trs-file' options are mandatory.
END
}
-# TODO: better error handling in option parsing (in particular, ensure
-# TODO: $log_file, $trs_file and $test_name are defined).
test_name= # Used for reporting.
log_file= # Where to save the output of the test script.
trs_file= # Where to save the metadata of the test run.
--enable-hard-errors) enable_hard_errors=$2; shift;;
--) shift; break;;
-*) usage_error "invalid option: '$1'";;
+ *) break;;
esac
shift
done
+missing_opts=
+test x"$test_name" = x && missing_opts="$missing_opts --test-name"
+test x"$log_file" = x && missing_opts="$missing_opts --log-file"
+test x"$trs_file" = x && missing_opts="$missing_opts --trs-file"
+if test x"$missing_opts" != x; then
+ usage_error "the following mandatory options are missing:$missing_opts"
+fi
+
+if test $# -eq 0; then
+ usage_error "missing argument"
+fi
+
if test $color_tests = yes; then
# Keep this in sync with 'lib/am/check.am:$(am__tty_colors)'.
red='\e[0;31m' # Red.
# Test script is run here.
"$@" >$log_file 2>&1
estatus=$?
+
if test $enable_hard_errors = no && test $estatus -eq 99; then
- estatus=1
+ tweaked_estatus=1
+else
+ tweaked_estatus=$estatus
fi
-case $estatus:$expect_failure in
+case $tweaked_estatus:$expect_failure in
0:yes) col=$red res=XPASS recheck=yes gcopy=yes;;
0:*) col=$grn res=PASS recheck=no gcopy=no;;
77:*) col=$blu res=SKIP recheck=no gcopy=yes;;
*:*) col=$red res=FAIL recheck=yes gcopy=yes;;
esac
+# Report the test outcome and exit status in the logs, so that one can
+# know whether the test passed or failed simply by looking at the '.log'
+# file, without the need of also peaking into the corresponding '.trs'
+# file (automake bug#11814).
+echo "$res $test_name (exit status: $estatus)" >>$log_file
+
# Report outcome to console.
echo "${col}${res}${std}: $test_name"
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
% Load plain if necessary, i.e., if running under initex.
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
%
-\def\texinfoversion{2013-02-01.11}
+\def\texinfoversion{2016-08-06.12}
%
% Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
-% 2007, 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
+% 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016
+% 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
\everyjob{\message{[Texinfo version \texinfoversion]}%
\catcode`+=\active \catcode`\_=\active}
+% LaTeX's \typeout. This ensures that the messages it is used for
+% are identical in format to the corresponding ones from latex/pdflatex.
+\def\typeout{\immediate\write17}%
+
\chardef\other=12
% We never want plain's \outer definition of \+ in Texinfo.
\let\ptexraggedright=\raggedright
\let\ptexrbrace=\}
\let\ptexslash=\/
+\let\ptexsp=\sp
\let\ptexstar=\*
+\let\ptexsup=\sup
\let\ptext=\t
\let\ptextop=\top
{\catcode`\'=\active \global\let\ptexquoteright'}% active in plain's math mode
\ifx\putwordDefopt\undefined \gdef\putwordDefopt{User Option}\fi
\ifx\putwordDeffunc\undefined \gdef\putwordDeffunc{Function}\fi
-% Since the category of space is not known, we have to be careful.
-\chardef\spacecat = 10
-\def\spaceisspace{\catcode`\ =\spacecat}
+% Give the space character the catcode for a space.
+\def\spaceisspace{\catcode`\ =10\relax}
-% sometimes characters are active, so we need control sequences.
-\chardef\ampChar = `\&
-\chardef\colonChar = `\:
-\chardef\commaChar = `\,
\chardef\dashChar = `\-
-\chardef\dotChar = `\.
-\chardef\exclamChar= `\!
-\chardef\hashChar = `\#
-\chardef\lquoteChar= `\`
-\chardef\questChar = `\?
-\chardef\rquoteChar= `\'
-\chardef\semiChar = `\;
\chardef\slashChar = `\/
\chardef\underChar = `\_
wide-spread wrap-around
}
-% Margin to add to right of even pages, to left of odd pages.
-\newdimen\bindingoffset
-\newdimen\normaloffset
-\newdimen\pagewidth \newdimen\pageheight
-
-% For a final copy, take out the rectangles
-% that mark overfull boxes (in case you have decided
-% that the text looks ok even though it passes the margin).
-%
-\def\finalout{\overfullrule=0pt }
-
% Sometimes it is convenient to have everything in the transcript file
% and nothing on the terminal. We don't just call \tracingall here,
% since that produces some useless output on the terminal. We also make
\def\bigbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\bigskipamount
\removelastskip\penalty-200\bigskip\fi\fi}
+%\f Output routine
+%
+
+% For a final copy, take out the rectangles
+% that mark overfull boxes (in case you have decided
+% that the text looks ok even though it passes the margin).
+%
+\def\finalout{\overfullrule=0pt }
+
% Do @cropmarks to get crop marks.
%
\newif\ifcropmarks
%
% Another complication is to let the user choose whether \thischapter
% (\thissection) refers to the chapter (section) in effect at the top
-% of a page, or that at the bottom of a page. The solution is
-% described on page 260 of The TeXbook. It involves outputting two
-% marks for the sectioning macros, one before the section break, and
-% one after. I won't pretend I can describe this better than DEK...
+% of a page, or that at the bottom of a page.
+
+% \domark is called twice inside \chapmacro, to add one
+% mark before the section break, and one after.
+% In the second call \prevchapterdefs is the same as \lastchapterdefs,
+% and \prevsectiondefs is the same as \lastsectiondefs.
+% Then if the page is not broken at the mark, some of the previous
+% section appears on the page, and we can get the name of this section
+% from \firstmark for @everyheadingmarks top.
+% @everyheadingmarks bottom uses \botmark.
+%
+% See page 260 of The TeXbook.
\def\domark{%
\toks0=\expandafter{\lastchapterdefs}%
\toks2=\expandafter{\lastsectiondefs}%
\toks6=\expandafter{\prevsectiondefs}%
\toks8=\expandafter{\lastcolordefs}%
\mark{%
- \the\toks0 \the\toks2
- \noexpand\or \the\toks4 \the\toks6
- \noexpand\else \the\toks8
+ \the\toks0 \the\toks2 % 0: marks for @everyheadingmarks top
+ \noexpand\or \the\toks4 \the\toks6 % 1: for @everyheadingmarks bottom
+ \noexpand\else \the\toks8 % 2: color marks
}%
}
+
+% \gettopheadingmarks, \getbottomheadingmarks,
+% \getcolormarks - extract needed part of mark.
+%
% \topmark doesn't work for the very first chapter (after the title
% page or the contents), so we use \firstmark there -- this gets us
% the mark with the chapter defs, unless the user sneaks in, e.g.,
% Avoid "undefined control sequence" errors.
\def\lastchapterdefs{}
\def\lastsectiondefs{}
+\def\lastsection{}
\def\prevchapterdefs{}
\def\prevsectiondefs{}
\def\lastcolordefs{}
+% Margin to add to right of even pages, to left of odd pages.
+\newdimen\bindingoffset
+\newdimen\normaloffset
+\newdimen\txipagewidth \newdimen\txipageheight
+
% Main output routine.
+%
\chardef\PAGE = 255
\output = {\onepageout{\pagecontents\PAGE}}
\newbox\headlinebox
\newbox\footlinebox
-% \onepageout takes a vbox as an argument. Note that \pagecontents
-% does insertions, but you have to call it yourself.
+% \onepageout takes a vbox as an argument.
+% \shipout a vbox for a single page, adding an optional header, footer,
+% cropmarks, and footnote. This also causes index entries for this page
+% to be written to the auxiliary files.
+%
\def\onepageout#1{%
\ifcropmarks \hoffset=0pt \else \hoffset=\normaloffset \fi
%
\ifodd\pageno \advance\hoffset by \bindingoffset
\else \advance\hoffset by -\bindingoffset\fi
%
+ % Common context changes for both heading and footing.
% Do this outside of the \shipout so @code etc. will be expanded in
% the headline as they should be, not taken literally (outputting ''code).
+ \def\commmonheadfootline{\let\hsize=\txipagewidth \texinfochars}
+ %
+ % Retrieve the information for the headings from the marks in the page,
+ % and call Plain TeX's \makeheadline and \makefootline, which use the
+ % values in \headline and \footline.
+ %
+ % This is used to check if we are on the first page of a chapter.
+ \ifcase1\topmark\fi
+ \let\prevchaptername\thischaptername
+ \ifcase0\firstmark\fi
+ \let\curchaptername\thischaptername
+ %
\ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi
- \setbox\headlinebox = \vbox{\let\hsize=\pagewidth \makeheadline}%
\ifodd\pageno \getoddfootingmarks \else \getevenfootingmarks \fi
- \setbox\footlinebox = \vbox{\let\hsize=\pagewidth \makefootline}%
+ %
+ \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
+ %
+ \global\setbox\headlinebox = \vbox{\commmonheadfootline \makeheadline}%
+ \global\setbox\footlinebox = \vbox{\commmonheadfootline \makefootline}%
%
{%
+ % Set context for writing to auxiliary files like index files.
% Have to do this stuff outside the \shipout because we want it to
% take effect in \write's, yet the group defined by the \vbox ends
% before the \shipout runs.
\normalturnoffactive % \ in index entries must not stay \, e.g., if
% the page break happens to be in the middle of an example.
% We don't want .vr (or whatever) entries like this:
- % \entry{{\tt \indexbackslash }acronym}{32}{\code {\acronym}}
+ % \entry{{\indexbackslash }acronym}{32}{\code {\acronym}}
% "\acronym" won't work when it's read back in;
% it needs to be
- % {\code {{\tt \backslashcurfont }acronym}
+ % {\code {{\backslashcurfont }acronym}
\shipout\vbox{%
% Do this early so pdf references go to the beginning of the page.
\ifpdfmakepagedest \pdfdest name{\the\pageno} xyz\fi
\newinsert\margin \dimen\margin=\maxdimen
-\def\pagebody#1{\vbox to\pageheight{\boxmaxdepth=\maxdepth #1}}
+% Main part of page, including any footnotes
+\def\pagebody#1{\vbox to\txipageheight{\boxmaxdepth=\maxdepth #1}}
{\catcode`\@ =11
\gdef\pagecontents#1{\ifvoid\topins\else\unvbox\topins\fi
% marginal hacks, juha@viisa.uucp (Juha Takala)
\def\nsbot{\vbox
{\hrule height\cornerlong depth\cornerthick width\cornerthick}}
+
+% Argument parsing
+
% Parse an argument, then pass it to #1. The argument is the rest of
% the input line (except we remove a trailing comment). #1 should be a
% macro which expects an ordinary undelimited TeX argument.
+% For example, \def\foo{\parsearg\fooxxx}.
%
\def\parsearg{\parseargusing{}}
\def\parseargusing#1#2{%
}%
}
-% First remove any @comment, then any @c comment.
+% First remove any @comment, then any @c comment. Also remove a @texinfoc
+% comment (see \scanmacro for details). 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}
+\def\argremovec#1\c#2\ArgTerm{\argremovetexinfoc #1\texinfoc\ArgTerm}
+\def\argremovetexinfoc#1\texinfoc#2\ArgTerm{\argcheckspaces#1\^^M\ArgTerm}
% Each occurrence of `\^^M' or `<space>\^^M' is replaced by a single space.
%
%
\def\finishparsearg#1 \ArgTerm{\expandafter\argtorun\expandafter{#1}}
+
+% \parseargdef - define a command taking an argument on the line
+%
% \parseargdef\foo{...}
% is roughly equivalent to
% \def\foo{\parsearg\Xfoo}
% \def\Xfoo#1{...}
-%
-% Actually, I use \csname\string\foo\endcsname, ie. \\foo, as it is my
-% favourite TeX trick. --kasal, 16nov03
-
\def\parseargdef#1{%
\expandafter \doparseargdef \csname\string#1\endcsname #1%
}
\endgraf % Not \par, as it may have been set to \lisppar.
\global\dimen1 = \prevdepth
\egroup % End the \vtop.
+ \addgroupbox
+ \prevdepth = \dimen1
+ \checkinserts
+}
+
+\def\addgroupbox{
% \dimen0 is the vertical size of the group's box.
\dimen0 = \ht\groupbox \advance\dimen0 by \dp\groupbox
% \dimen2 is how much space is left on the page (more or less).
- \dimen2 = \pageheight \advance\dimen2 by -\pagetotal
+ \dimen2 = \txipageheight \advance\dimen2 by -\pagetotal
% if the group doesn't fit on the current page, and it's a big big
% group, force a page break.
\ifdim \dimen0 > \dimen2
- \ifdim \pagetotal < \vfilllimit\pageheight
+ \ifdim \pagetotal < \vfilllimit\txipageheight
\page
\fi
\fi
\box\groupbox
- \prevdepth = \dimen1
- \checkinserts
}
+
%
% TeX puts in an \escapechar (i.e., `@') at the beginning of the help
% message, so this ends up printing `@group can only ...'.
% @c is the same as @comment
% @ignore ... @end ignore is another way to write a comment
%
-\def\comment{\begingroup \catcode`\^^M=\other%
+\def\comment{\begingroup \catcode`\^^M=\active%
+\catcode`\@=\other \catcode`\{=\other \catcode`\}=\other\commentxxx}%
+
+{\catcode`\^^M=\active%
+\gdef\commentxxx#1^^M{\endgroup%
+\futurelet\nexttoken\commentxxxx}%
+\gdef\commentxxxx{\ifx\nexttoken\aftermacro\expandafter\comment\fi}%
+}
+
+\def\c{\begingroup \catcode`\^^M=\active%
\catcode`\@=\other \catcode`\{=\other \catcode`\}=\other%
-\commentxxx}
-{\catcode`\^^M=\other \gdef\commentxxx#1^^M{\endgroup}}
-%
-\let\c=\comment
+\cxxx}
+{\catcode`\^^M=\active \gdef\cxxx#1^^M{\endgroup}}
+% See comment in \scanmacro about why the definitions of @c and @comment differ
% @paragraphindent NCHARS
% We'll use ems for NCHARS, close enough.
% paragraph.
%
\gdef\dosuppressfirstparagraphindent{%
- \gdef\indent{%
- \restorefirstparagraphindent
- \indent
- }%
- \gdef\noindent{%
- \restorefirstparagraphindent
- \noindent
- }%
- \global\everypar = {%
- \kern -\parindent
- \restorefirstparagraphindent
- }%
+ \gdef\indent {\restorefirstparagraphindent \indent}%
+ \gdef\noindent{\restorefirstparagraphindent \noindent}%
+ \global\everypar = {\kern -\parindent \restorefirstparagraphindent}%
}
-
+%
\gdef\restorefirstparagraphindent{%
- \global \let \indent = \ptexindent
- \global \let \noindent = \ptexnoindent
- \global \everypar = {}%
+ \global\let\indent = \ptexindent
+ \global\let\noindent = \ptexnoindent
+ \global\everypar = {}%
}
% @refill is a no-op.
\let\refill=\relax
-% If working on a large document in chapters, it is convenient to
-% be able to disable indexing, cross-referencing, and contents, for test runs.
-% This is done with @novalidate (before @setfilename).
-%
-\newif\iflinks \linkstrue % by default we want the aux files.
-\let\novalidate = \linksfalse
-
-% @setfilename is done at the beginning of every texinfo file.
-% So open here the files we need to have open while reading the input.
-% This makes it possible to make a .fmt file for texinfo.
-\def\setfilename{%
- \fixbackslash % Turn off hack to swallow `\input texinfo'.
- \iflinks
- \tryauxfile
- % Open the new aux file. TeX will close it automatically at exit.
- \immediate\openout\auxfile=\jobname.aux
- \fi % \openindices needs to do some work in any case.
- \openindices
- \let\setfilename=\comment % Ignore extra @setfilename cmds.
- %
- % If texinfo.cnf is present on the system, read it.
- % Useful for site-wide @afourpaper, etc.
- \openin 1 texinfo.cnf
- \ifeof 1 \else \input texinfo.cnf \fi
- \closein 1
- %
- \comment % Ignore the actual filename.
-}
-
-% Called from \setfilename.
-%
-\def\openindices{%
- \newindex{cp}%
- \newcodeindex{fn}%
- \newcodeindex{vr}%
- \newcodeindex{tp}%
- \newcodeindex{ky}%
- \newcodeindex{pg}%
-}
+% @setfilename INFO-FILENAME - ignored
+\let\setfilename=\comment
% @bye.
\outer\def\bye{\pagealignmacro\tracingstats=1\ptexend}
\newtoks\toksC
\newtoks\toksD
\newbox\boxA
+\newbox\boxB
\newcount\countA
\newif\ifpdf
\newif\ifpdfmakepagedest
+%
+% For LuaTeX
+%
+
+\newif\iftxiuseunicodedestname
+\txiuseunicodedestnamefalse % For pdfTeX etc.
+
+\ifx\luatexversion\thisisundefined
+\else
+ % Use Unicode destination names
+ \txiuseunicodedestnametrue
+ % Escape PDF strings UTF-8 to UTF-16
+ \begingroup
+ \catcode`\%=12
+ \directlua{
+ function UTF16oct(str)
+ tex.sprint(string.char(0x5c) .. '376' .. string.char(0x5c) .. '377')
+ for c in string.utfvalues(str) do
+ if c < 0x10000 then
+ tex.sprint(
+ string.format(string.char(0x5c) .. string.char(0x25) .. '03o' ..
+ string.char(0x5c) .. string.char(0x25) .. '03o',
+ (c / 256), (c % 256)))
+ else
+ c = c - 0x10000
+ local c_hi = c / 1024 + 0xd800
+ local c_lo = c % 1024 + 0xdc00
+ tex.sprint(
+ string.format(string.char(0x5c) .. string.char(0x25) .. '03o' ..
+ 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)))
+ end
+ end
+ end
+ }
+ \endgroup
+ \def\pdfescapestring#1{\directlua{UTF16oct('\luaescapestring{#1}')}}
+ \ifnum\luatexversion>84
+ % For LuaTeX >= 0.85
+ \def\pdfdest{\pdfextension dest}
+ \let\pdfoutput\outputmode
+ \def\pdfliteral{\pdfextension literal}
+ \def\pdfcatalog{\pdfextension catalog}
+ \def\pdftexversion{\numexpr\pdffeedback version\relax}
+ \let\pdfximage\saveimageresource
+ \let\pdfrefximage\useimageresource
+ \let\pdflastximage\lastsavedimageresourceindex
+ \def\pdfendlink{\pdfextension endlink\relax}
+ \def\pdfoutline{\pdfextension outline}
+ \def\pdfstartlink{\pdfextension startlink}
+ \def\pdffontattr{\pdfextension fontattr}
+ \def\pdfobj{\pdfextension obj}
+ \def\pdflastobj{\numexpr\pdffeedback lastobj\relax}
+ \let\pdfpagewidth\pagewidth
+ \let\pdfpageheight\pageheight
+ \edef\pdfhorigin{\pdfvariable horigin}
+ \edef\pdfvorigin{\pdfvariable vorigin}
+ \fi
+\fi
+
% when pdftex is run in dvi mode, \pdfoutput is defined (so \pdfoutput=1
% can be set). So we test for \relax and 0 as well as being undefined.
\ifx\pdfoutput\thisisundefined
\ifx\pdfescapestring\thisisundefined
% No primitive available; should we give a warning or log?
% Many times it won't matter.
+ \xdef#1{#1}%
\else
% The expandable \pdfescapestring primitive escapes parentheses,
% backslashes, and other special chars.
\ifpdf
%
- % Color manipulation macros based on pdfcolor.tex,
+ % Color manipulation macros using ideas from pdfcolor.tex,
% except using rgb instead of cmyk; the latter is said to render as a
% very dark gray on-screen and a very dark halftone in print, instead
- % of actual black.
+ % of actual black. The dark red here is dark enough to print on paper as
+ % nearly black, but still distinguishable for online viewing. We use
+ % black by default, though.
\def\rgbDarkRed{0.50 0.09 0.12}
\def\rgbBlack{0 0 0}
%
- % k sets the color for filling (usual text, etc.);
- % K sets the color for stroking (thin rules, e.g., normal _'s).
+ % rg sets the color for filling (usual text, etc.);
+ % RG sets the color for stroking (thin rules, e.g., normal _'s).
\def\pdfsetcolor#1{\pdfliteral{#1 rg #1 RG}}
%
% Set color, and create a mark which defines \thiscolor accordingly,
% We have to set dummies so commands such as @code, and characters
% such as \, aren't expanded when present in a section title.
\indexnofonts
- \turnoffactive
\makevalueexpandable
+ \turnoffactive
+ \iftxiuseunicodedestname
+ \ifx \declaredencoding \latone
+ % Pass through Latin-1 characters.
+ % LuaTeX with byte wise I/O converts Latin-1 characters to Unicode.
+ \else
+ \ifx \declaredencoding \utfeight
+ % Pass through Unicode characters.
+ \else
+ % Use ASCII approximations in destination names.
+ \passthroughcharsfalse
+ \fi
+ \fi
+ \else
+ % Use ASCII approximations in destination names.
+ \passthroughcharsfalse
+ \fi
\def\pdfdestname{#1}%
\txiescapepdf\pdfdestname
\safewhatsit{\pdfdest name{\pdfdestname} xyz}%
% used to mark target names; must be expandable.
\def\pdfmkpgn#1{#1}
%
- % by default, use a color that is dark enough to print on paper as
- % nearly black, but still distinguishable for online viewing.
- \def\urlcolor{\rgbDarkRed}
- \def\linkcolor{\rgbDarkRed}
+ % by default, use black for everything.
+ \def\urlcolor{\rgbBlack}
+ \def\linkcolor{\rgbBlack}
\def\endlink{\setcolor{\maincolor}\pdfendlink}
%
% Adding outlines to PDF; macros for calculating structure of outlines
% page number. We could generate a destination for the section
% text in the case where a section has no node, but it doesn't
% seem worth the trouble, since most documents are normally structured.
- \edef\pdfoutlinedest{#3}%
- \ifx\pdfoutlinedest\empty
- \def\pdfoutlinedest{#4}%
- \else
- \txiescapepdf\pdfoutlinedest
- \fi
- %
- % Also escape PDF chars in the display string.
- \edef\pdfoutlinetext{#1}%
- \txiescapepdf\pdfoutlinetext
- %
- \pdfoutline goto name{\pdfmkpgn{\pdfoutlinedest}}#2{\pdfoutlinetext}%
+ {
+ \turnoffactive
+ \ifx \declaredencoding \latone
+ % The PDF format can use an extended form of Latin-1 in bookmark
+ % strings. See Appendix D of the PDF Reference, Sixth Edition, for
+ % the "PDFDocEncoding".
+ \passthroughcharstrue
+ % Pass through Latin-1 characters.
+ % LuaTeX: Convert to Unicode
+ % pdfTeX: Use Latin-1 as PDFDocEncoding
+ \edef\pdfoutlinetext{#1}%
+ \iftxiuseunicodedestname
+ % Pass through Latin-1 characters.
+ % LuaTeX with byte wise I/O converts Latin-1 characters to Unicode.
+ \edef\pdfoutlinedest{#3}%
+ \else
+ % Use ASCII approximations in destination names.
+ \passthroughcharsfalse
+ \edef\pdfoutlinedest{#3}%
+ \fi
+ \else
+ \ifx \declaredencoding \utfeight
+ \ifx\luatexversion\thisisundefined
+ % For pdfTeX with UTF-8.
+ % TODO: the PDF format can use UTF-16 in bookmark strings,
+ % but the code for this isn't done yet.
+ % Use ASCII approximations.
+ \passthroughcharsfalse
+ \edef\pdfoutlinetext{#1}%
+ \edef\pdfoutlinedest{#3}%
+ \else
+ % For LuaTeX with UTF-8.
+ % Pass through Unicode characters for title texts.
+ \passthroughcharstrue
+ \edef\pdfoutlinetext{#1}%
+ \iftxiuseunicodedestname
+ % Pass through Unicode characters for destination names.
+ \edef\pdfoutlinedest{#3}%
+ \else
+ % Use ASCII approximations in destination names.
+ \passthroughcharsfalse
+ \edef\pdfoutlinedest{#3}%
+ \fi
+ \fi
+ \else
+ % For non-Latin-1 or non-UTF-8 encodings.
+ % Use ASCII approximations.
+ \passthroughcharsfalse
+ \edef\pdfoutlinetext{#1}%
+ \edef\pdfoutlinedest{#3}%
+ \fi
+ \fi
+ %
+ \ifx\pdfoutlinedest\empty
+ \def\pdfoutlinedest{#4}%
+ \else
+ \txiescapepdf\pdfoutlinedest
+ \fi
+ \txiescapepdf\pdfoutlinetext
+ %
+ \pdfoutline goto name{\pdfmkpgn{\pdfoutlinedest}}#2{\pdfoutlinetext}%
+ }
}
%
\def\pdfmakeoutlines{%
\let\pdfmakeoutlines = \relax
\fi % \ifx\pdfoutput
+%
+% For XeTeX
+%
+\ifx\XeTeXrevision\thisisundefined
+\else
+ %
+ % XeTeX version check
+ %
+ \ifnum\strcmp{\the\XeTeXversion\XeTeXrevision}{0.99996}>-1
+ % TeX Live 2016 contains XeTeX 0.99996 and xdvipdfmx 20160307.
+ % It can use the `dvipdfmx:config' special (from TeX Live SVN r40941).
+ % For avoiding PDF destination name replacement, we use this special
+ % instead of xdvipdfmx's command line option `-C 0x0010'.
+ \special{dvipdfmx:config C 0x0010}
+ % XeTeX 0.99995+ comes with xdvipdfmx 20160307+.
+ % It can handle Unicode destination names for PDF.
+ \txiuseunicodedestnametrue
+ \else
+ % XeTeX < 0.99996 (TeX Live < 2016) cannot use the
+ % `dvipdfmx:config' special.
+ % So for avoiding PDF destination name replacement,
+ % xdvipdfmx's command line option `-C 0x0010' is necessary.
+ %
+ % XeTeX < 0.99995 can not handle Unicode destination names for PDF
+ % because xdvipdfmx 20150315 has a UTF-16 conversion issue.
+ % It is fixed by xdvipdfmx 20160106 (TeX Live SVN r39753).
+ \txiuseunicodedestnamefalse
+ \fi
+ %
+ % Color support
+ %
+ \def\rgbDarkRed{0.50 0.09 0.12}
+ \def\rgbBlack{0 0 0}
+ %
+ \def\pdfsetcolor#1{\special{pdf:scolor [#1]}}
+ %
+ % Set color, and create a mark which defines \thiscolor accordingly,
+ % so that \makeheadline knows which color to restore.
+ \def\setcolor#1{%
+ \xdef\lastcolordefs{\gdef\noexpand\thiscolor{#1}}%
+ \domark
+ \pdfsetcolor{#1}%
+ }
+ %
+ \def\maincolor{\rgbBlack}
+ \pdfsetcolor{\maincolor}
+ \edef\thiscolor{\maincolor}
+ \def\lastcolordefs{}
+ %
+ \def\makefootline{%
+ \baselineskip24pt
+ \line{\pdfsetcolor{\maincolor}\the\footline}%
+ }
+ %
+ \def\makeheadline{%
+ \vbox to 0pt{%
+ \vskip-22.5pt
+ \line{%
+ \vbox to8.5pt{}%
+ % Extract \thiscolor definition from the marks.
+ \getcolormarks
+ % Typeset the headline with \maincolor, then restore the color.
+ \pdfsetcolor{\maincolor}\the\headline\pdfsetcolor{\thiscolor}%
+ }%
+ \vss
+ }%
+ \nointerlineskip
+ }
+ %
+ % PDF outline support
+ %
+ % Emulate pdfTeX primitive
+ \def\pdfdest name#1 xyz{%
+ \special{pdf:dest (#1) [@thispage /XYZ @xpos @ypos null]}%
+ }
+ \def\pdfmkdest#1{{%
+ % We have to set dummies so commands such as @code, and characters
+ % such as \, aren't expanded when present in a section title.
+ \indexnofonts
+ \makevalueexpandable
+ \turnoffactive
+ \iftxiuseunicodedestname
+ % Pass through Unicode characters.
+ \else
+ % Use ASCII approximations in destination names.
+ \passthroughcharsfalse
+ \fi
+ \def\pdfdestname{#1}%
+ \txiescapepdf\pdfdestname
+ \safewhatsit{\pdfdest name{\pdfdestname} xyz}%
+ }}
+ %
+ % by default, use black for everything.
+ \def\urlcolor{\rgbBlack}
+ \def\linkcolor{\rgbBlack}
+ \def\endlink{\setcolor{\maincolor}\pdfendlink}
+ %
+ \def\dopdfoutline#1#2#3#4{{%
+ \turnoffactive
+ % Always use Unicode characters in title texts.
+ \def\pdfoutlinetext{#1}%
+ \txiescapepdf\pdfoutlinetext
+ \iftxiuseunicodedestname
+ % Pass through Unicode characters.
+ \else
+ % Use ASCII approximations in destination names.
+ \passthroughcharsfalse
+ \fi
+ \def\pdfoutlinedest{#3}%
+ \ifx\pdfoutlinedest\empty
+ \def\pdfoutlinedest{#4}%
+ \fi
+ \txiescapepdf\pdfoutlinedest
+ %
+ \special{pdf:out [-] #2 << /Title (\pdfoutlinetext) /A
+ << /S /GoTo /D (\pdfoutlinedest) >> >> }%
+ }}
+ %
+ \def\pdfmakeoutlines{%
+ \begingroup
+ %
+ % For XeTeX, counts of subentries are not necessary.
+ % Therefore, we read toc only once.
+ %
+ % We use node names as destinations.
+ \def\partentry##1##2##3##4{}% ignore parts in the outlines
+ \def\numchapentry##1##2##3##4{%
+ \dopdfoutline{##1}{1}{##3}{##4}}%
+ \def\numsecentry##1##2##3##4{%
+ \dopdfoutline{##1}{2}{##3}{##4}}%
+ \def\numsubsecentry##1##2##3##4{%
+ \dopdfoutline{##1}{3}{##3}{##4}}%
+ \def\numsubsubsecentry##1##2##3##4{%
+ \dopdfoutline{##1}{4}{##3}{##4}}%
+ %
+ \let\appentry\numchapentry%
+ \let\appsecentry\numsecentry%
+ \let\appsubsecentry\numsubsecentry%
+ \let\appsubsubsecentry\numsubsubsecentry%
+ \let\unnchapentry\numchapentry%
+ \let\unnsecentry\numsecentry%
+ \let\unnsubsecentry\numsubsecentry%
+ \let\unnsubsubsecentry\numsubsubsecentry%
+ %
+ % For XeTeX, xdvipdfmx converts strings to UTF-16.
+ % Therefore, the encoding and the language may not be considered.
+ %
+ \indexnofonts
+ \setupdatafile
+ % We can have normal brace characters in the PDF outlines, unlike
+ % Texinfo index files. So set that up.
+ \def\{{\lbracecharliteral}%
+ \def\}{\rbracecharliteral}%
+ \catcode`\\=\active \otherbackslash
+ \input \tocreadfilename
+ \endgroup
+ }
+ {\catcode`[=1 \catcode`]=2
+ \catcode`{=\other \catcode`}=\other
+ \gdef\lbracecharliteral[{]%
+ \gdef\rbracecharliteral[}]%
+ ]
+
+ \special{pdf:docview << /PageMode /UseOutlines >> }
+ % ``\special{pdf:tounicode ...}'' is not necessary
+ % because xdvipdfmx converts strings from UTF-8 to UTF-16 without it.
+ % However, due to a UTF-16 conversion issue of xdvipdfmx 20150315,
+ % ``\special{pdf:dest ...}'' cannot handle non-ASCII strings.
+ % It is fixed by xdvipdfmx 20160106 (TeX Live SVN r39753).
+%
+ \def\skipspaces#1{\def\PP{#1}\def\D{|}%
+ \ifx\PP\D\let\nextsp\relax
+ \else\let\nextsp\skipspaces
+ \addtokens{\filename}{\PP}%
+ \advance\filenamelength by 1
+ \fi
+ \nextsp}
+ \def\getfilename#1{%
+ \filenamelength=0
+ % If we don't expand the argument now, \skipspaces will get
+ % snagged on things like "@value{foo}".
+ \edef\temp{#1}%
+ \expandafter\skipspaces\temp|\relax
+ }
+ % make a live url in pdf output.
+ \def\pdfurl#1{%
+ \begingroup
+ % it seems we really need yet another set of dummies; have not
+ % tried to figure out what each command should do in the context
+ % of @url. for now, just make @/ a no-op, that's the only one
+ % people have actually reported a problem with.
+ %
+ \normalturnoffactive
+ \def\@{@}%
+ \let\/=\empty
+ \makevalueexpandable
+ % do we want to go so far as to use \indexnofonts instead of just
+ % special-casing \var here?
+ \def\var##1{##1}%
+ %
+ \leavevmode\setcolor{\urlcolor}%
+ \special{pdf:bann << /Border [0 0 0]
+ /Subtype /Link /A << /S /URI /URI (#1) >> >>}%
+ \endgroup}
+ \def\endlink{\setcolor{\maincolor}\special{pdf:eann}}
+ \def\pdfgettoks#1.{\setbox\boxA=\hbox{\toksA={#1.}\toksB={}\maketoks}}
+ \def\addtokens#1#2{\edef\addtoks{\noexpand#1={\the#1#2}}\addtoks}
+ \def\adn#1{\addtokens{\toksC}{#1}\global\countA=1\let\next=\maketoks}
+ \def\poptoks#1#2|ENDTOKS|{\let\first=#1\toksD={#1}\toksA={#2}}
+ \def\maketoks{%
+ \expandafter\poptoks\the\toksA|ENDTOKS|\relax
+ \ifx\first0\adn0
+ \else\ifx\first1\adn1 \else\ifx\first2\adn2 \else\ifx\first3\adn3
+ \else\ifx\first4\adn4 \else\ifx\first5\adn5 \else\ifx\first6\adn6
+ \else\ifx\first7\adn7 \else\ifx\first8\adn8 \else\ifx\first9\adn9
+ \else
+ \ifnum0=\countA\else\makelink\fi
+ \ifx\first.\let\next=\done\else
+ \let\next=\maketoks
+ \addtokens{\toksB}{\the\toksD}
+ \ifx\first,\addtokens{\toksB}{\space}\fi
+ \fi
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
+ \next}
+ \def\makelink{\addtokens{\toksB}%
+ {\noexpand\pdflink{\the\toksC}}\toksC={}\global\countA=0}
+ \def\pdflink#1{%
+ \special{pdf:bann << /Border [0 0 0]
+ /Type /Annot /Subtype /Link /A << /S /GoTo /D (#1) >> >>}%
+ \setcolor{\linkcolor}#1\endlink}
+ \def\done{\edef\st{\global\noexpand\toksA={\the\toksB}}\st}
+%
+ %
+ % @image support
+ %
+ % #1 is image name, #2 width (might be empty/whitespace), #3 height (ditto).
+ \def\doxeteximage#1#2#3{%
+ \def\xeteximagewidth{#2}\setbox0 = \hbox{\ignorespaces #2}%
+ \def\xeteximageheight{#3}\setbox2 = \hbox{\ignorespaces #3}%
+ %
+ % XeTeX (and the PDF format) supports .pdf, .png, .jpg (among
+ % others). Let's try in that order, PDF first since if
+ % someone has a scalable image, presumably better to use that than a
+ % bitmap.
+ \let\xeteximgext=\empty
+ \begingroup
+ \openin 1 #1.pdf \ifeof 1
+ \openin 1 #1.PDF \ifeof 1
+ \openin 1 #1.png \ifeof 1
+ \openin 1 #1.jpg \ifeof 1
+ \openin 1 #1.jpeg \ifeof 1
+ \openin 1 #1.JPG \ifeof 1
+ \errmessage{Could not find image file #1 for XeTeX}%
+ \else \gdef\xeteximgext{JPG}%
+ \fi
+ \else \gdef\xeteximgext{jpeg}%
+ \fi
+ \else \gdef\xeteximgext{jpg}%
+ \fi
+ \else \gdef\xeteximgext{png}%
+ \fi
+ \else \gdef\xeteximgext{PDF}%
+ \fi
+ \else \gdef\xeteximgext{pdf}%
+ \fi
+ \closein 1
+ \endgroup
+ %
+ \def\xetexpdfext{pdf}%
+ \ifx\xeteximgext\xetexpdfext
+ \XeTeXpdffile "#1".\xeteximgext ""
+ \else
+ \def\xetexpdfext{PDF}%
+ \ifx\xeteximgext\xetexpdfext
+ \XeTeXpdffile "#1".\xeteximgext ""
+ \else
+ \XeTeXpicfile "#1".\xeteximgext ""
+ \fi
+ \fi
+ \ifdim \wd0 >0pt width \xeteximagewidth \fi
+ \ifdim \wd2 >0pt height \xeteximageheight \fi \relax
+ }
+\fi
\message{fonts,}
% A few fonts for @defun names and args.
\setfont\defbf\bfshape{10}{\magstep1}{OT1}
\setfont\deftt\ttshape{10}{\magstep1}{OT1TT}
+\setfont\defsl\slshape{10}{\magstep1}{OT1TT}
\setfont\defttsl\ttslshape{10}{\magstep1}{OT1TT}
-\def\df{\let\tentt=\deftt \let\tenbf = \defbf \let\tenttsl=\defttsl \bf}
+\def\df{\let\tentt=\deftt \let\tenbf = \defbf
+\let\tenttsl=\defttsl \let\tensl=\defsl \bf}
% Fonts for indices, footnotes, small examples (9pt).
\def\smallnominalsize{9pt}
% Section fonts (14.4pt).
\def\secnominalsize{14pt}
\setfont\secrm\rmbshape{12}{\magstep1}{OT1}
+\setfont\secrmnotbold\rmshape{12}{\magstep1}{OT1}
\setfont\secit\itbshape{10}{\magstep2}{OT1IT}
\setfont\secsl\slbshape{10}{\magstep2}{OT1}
\setfont\sectt\ttbshape{12}{\magstep1}{OT1TT}
% A few fonts for @defun names and args.
\setfont\defbf\bfshape{10}{\magstephalf}{OT1}
\setfont\deftt\ttshape{10}{\magstephalf}{OT1TT}
+\setfont\defsl\slshape{10}{\magstephalf}{OT1TT}
\setfont\defttsl\ttslshape{10}{\magstephalf}{OT1TT}
-\def\df{\let\tentt=\deftt \let\tenbf = \defbf \let\tenttsl=\defttsl \bf}
+\def\df{\let\tentt=\deftt \let\tenbf = \defbf
+\let\tensl=\defsl \let\tenttsl=\defttsl \bf}
% Fonts for indices, footnotes, small examples (9pt).
\def\smallnominalsize{9pt}
\endgroup
}
-
% In order for the font changes to affect most math symbols and letters,
-% we have to define the \textfont of the standard families. Since
-% texinfo doesn't allow for producing subscripts and superscripts except
-% in the main text, we don't bother to reset \scriptfont and
-% \scriptscriptfont (which would also require loading a lot more fonts).
+% we have to define the \textfont of the standard families. We don't
+% bother to reset \scriptfont and \scriptscriptfont; awaiting user need.
%
\def\resetmathfonts{%
\textfont0=\tenrm \textfont1=\teni \textfont2=\tensy
% \tenSTYLE to set the current font.
%
% Each font-changing command also sets the names \lsize (one size lower)
-% and \lllsize (three sizes lower). These relative commands are used in
-% the LaTeX logo and acronyms.
+% and \lllsize (three sizes lower). These relative commands are used
+% in, e.g., the LaTeX logo and acronyms.
%
% This all needs generalizing, badly.
%
\let\tenttsl=\secttsl
\def\curfontsize{sec}%
\def\lsize{subsec}\def\lllsize{reduced}%
- \resetmathfonts \setleading{16pt}}
+ \resetmathfonts \setleading{17pt}}
\def\subsecfonts{%
\let\tenrm=\ssecrm \let\tenit=\ssecit \let\tensl=\ssecsl
\let\tenbf=\ssecbf \let\tentt=\ssectt \let\smallcaps=\ssecsc
\ifx\next,%
\else\ifx\next-%
\else\ifx\next.%
+ \else\ifx\next\.%
+ \else\ifx\next\comma%
\else\ptexslash
- \fi\fi\fi
+ \fi\fi\fi\fi\fi
\aftersmartic
}
%
\catcode`@=11
\def\plainfrenchspacing{%
- \sfcode\dotChar =\@m \sfcode\questChar=\@m \sfcode\exclamChar=\@m
- \sfcode\colonChar=\@m \sfcode\semiChar =\@m \sfcode\commaChar =\@m
+ \sfcode`\.=\@m \sfcode`\?=\@m \sfcode`\!=\@m
+ \sfcode`\:=\@m \sfcode`\;=\@m \sfcode`\,=\@m
\def\endofsentencespacefactor{1000}% for @. and friends
}
\def\plainnonfrenchspacing{%
}
% We *must* turn on hyphenation at `-' and `_' in @code.
+% (But see \codedashfinish below.)
% Otherwise, it is too hard to avoid overfull hboxes
% in the Emacs manual, the Library manual, etc.
%
% Unfortunately, TeX uses one parameter (\hyphenchar) to control
% both hyphenation at - and hyphenation within words.
% We must therefore turn them both off (\tclose does that)
-% and arrange explicitly to hyphenate at a dash.
-% -- rms.
+% and arrange explicitly to hyphenate at a dash. -- rms.
{
\catcode`\-=\active \catcode`\_=\active
\catcode`\'=\active \catcode`\`=\active
\let-\normaldash
\let_\realunder
\fi
- \codex
+ % Given -foo (with a single dash), we do not want to allow a break
+ % after the hyphen.
+ \global\let\codedashprev=\codedash
+ %
+ \codex
+ }
+ %
+ \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
+ \else \discretionary{}{}{}\fi
+ \fi
+ % we need the space after the = for the case when \next itself is a
+ % space token; it would get swallowed otherwise. As in @code{- a}.
+ \global\let\codedashprev= \next
}
}
-
+\def\normaldash{-}
+%
\def\codex #1{\tclose{#1}\endgroup}
-\def\normaldash{-}
-\def\codedash{-\discretionary{}{}{}}
\def\codeunder{%
% this is all so @math{@code{var_name}+1} can work. In math mode, _
% is "active" (mathcode"8000) and \normalunderscore (or \char95, etc.)
\let\file=\code
\let\option=\code
-% @uref (abbreviation for `urlref') takes an optional (comma-separated)
-% second argument specifying the text to display and an optional third
-% arg as text to display instead of (rather than in addition to) the url
-% itself. First (mandatory) arg is the url.
-% (This \urefnobreak definition isn't used now, leaving it for a while
-% for comparison.)
-\def\urefnobreak#1{\dourefnobreak #1,,,\finish}
-\def\dourefnobreak#1,#2,#3,#4\finish{\begingroup
- \unsepspaces
- \pdfurl{#1}%
- \setbox0 = \hbox{\ignorespaces #3}%
- \ifdim\wd0 > 0pt
- \unhbox0 % third arg given, show only that
- \else
- \setbox0 = \hbox{\ignorespaces #2}%
- \ifdim\wd0 > 0pt
- \ifpdf
- \unhbox0 % PDF: 2nd arg given, show only it
- \else
- \unhbox0\ (\code{#1})% DVI: 2nd arg given, show both it and url
- \fi
- \else
- \code{#1}% only url given, so show it
- \fi
- \fi
- \endlink
-\endgroup}
+% @uref (abbreviation for `urlref') aka @url takes an optional
+% (comma-separated) second argument specifying the text to display and
+% an optional third arg as text to display instead of (rather than in
+% addition to) the url itself. First (mandatory) arg is the url.
-% This \urefbreak definition is the active one.
+% TeX-only option to allow changing PDF output to show only the second
+% arg (if given), and not the url (which is then just the link target).
+\newif\ifurefurlonlylink
+
+% 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}
\let\uref=\urefbreak
+%
\def\dourefbreak#1{\urefbreakfinish #1,,,\finish}
\def\urefbreakfinish#1,#2,#3,#4\finish{% doesn't work in @example
\unsepspaces
\ifdim\wd0 > 0pt
\unhbox0 % third arg given, show only that
\else
- \setbox0 = \hbox{\ignorespaces #2}%
+ \setbox0 = \hbox{\ignorespaces #2}% look for second arg
\ifdim\wd0 > 0pt
\ifpdf
- \unhbox0 % PDF: 2nd arg given, show only it
+ % For pdfTeX and LuaTeX
+ \ifurefurlonlylink
+ % PDF plus option to not display url, show just arg
+ \unhbox0
+ \else
+ % PDF, normally display both arg and url for consistency,
+ % visibility, if the pdf is eventually used to print, etc.
+ \unhbox0\ (\urefcode{#1})%
+ \fi
\else
- \unhbox0\ (\urefcode{#1})% DVI: 2nd arg given, show both it and url
+ \ifx\XeTeXrevision\thisisundefined
+ \unhbox0\ (\urefcode{#1})% DVI, always show arg and url
+ \else
+ % For XeTeX
+ \ifurefurlonlylink
+ % PDF plus option to not display url, show just arg
+ \unhbox0
+ \else
+ % PDF, normally display both arg and url for consistency,
+ % visibility, if the pdf is eventually used to print, etc.
+ \unhbox0\ (\urefcode{#1})%
+ \fi
+ \fi
\fi
\else
\urefcode{#1}% only url given, so show it
% Allow line breaks around only a few characters (only).
\def\urefcatcodes{%
- \catcode\ampChar=\active \catcode\dotChar=\active
- \catcode\hashChar=\active \catcode\questChar=\active
- \catcode\slashChar=\active
+ \catcode`\&=\active \catcode`\.=\active
+ \catcode`\#=\active \catcode`\?=\active
+ \catcode`\/=\active
}
{
\urefcatcodes
% we put a little stretch before and after the breakable chars, to help
% line breaking of long url's. The unequal skips make look better in
% cmtt at least, especially for dots.
-\def\urefprestretch{\urefprebreak \hskip0pt plus.13em }
-\def\urefpoststretch{\urefpostbreak \hskip0pt plus.1em }
+\def\urefprestretchamount{.13em}
+\def\urefpoststretchamount{.1em}
+\def\urefprestretch{\urefprebreak \hskip0pt plus\urefprestretchamount\relax}
+\def\urefpoststretch{\urefpostbreak \hskip0pt plus\urefprestretchamount\relax}
%
\def\urefcodeamp{\urefprestretch \&\urefpoststretch}
\def\urefcodedot{\urefprestretch .\urefpoststretch}
\endlink
\endgroup}
\else
- \let\email=\uref
+ \ifx\XeTeXrevision\thisisundefined
+ \let\email=\uref
+ \else
+ \def\email#1{\doemail#1,,\finish}
+ \def\doemail#1,#2,#3\finish{\begingroup
+ \unsepspaces
+ \pdfurl{mailto:#1}%
+ \setbox0 = \hbox{\ignorespaces #2}%
+ \ifdim\wd0>0pt\unhbox0\else\code{#1}\fi
+ \endlink
+ \endgroup}
+ \fi
\fi
% @kbdinputstyle -- arg is `distinct' (@kbd uses slanted tty font always),
%
\def\dmn#1{\thinspace #1}
-% @l was never documented to mean ``switch to the Lisp font'',
-% and it is not used as such in any manual I can find. We need it for
-% Polish suppressed-l. --karl, 22sep96.
-%\def\l#1{{\li #1}\null}
-
% @acronym for "FBI", "NATO", and the like.
% We print this one point size smaller, since it's intended for
% all-uppercase.
\def\mathbackslash{\ifnum\fam=\ttfam \mathchar"075C \else\backslash \fi}
%
\def\math{%
- \tex
- \mathunderscore
- \let\\ = \mathbackslash
- \mathactive
- % make the texinfo accent commands work in math mode
- \let\"=\ddot
- \let\'=\acute
- \let\==\bar
- \let\^=\hat
- \let\`=\grave
- \let\u=\breve
- \let\v=\check
- \let\~=\tilde
- \let\dotaccent=\dot
- $\finishmath
+ \ifmmode\else % only go into math if not in math mode already
+ \tex
+ \mathunderscore
+ \let\\ = \mathbackslash
+ \mathactive
+ % make the texinfo accent commands work in math mode
+ \let\"=\ddot
+ \let\'=\acute
+ \let\==\bar
+ \let\^=\hat
+ \let\`=\grave
+ \let\u=\breve
+ \let\v=\check
+ \let\~=\tilde
+ \let\dotaccent=\dot
+ % have to provide another name for sup operator
+ \let\mathopsup=\sup
+ $\expandafter\finishmath\fi
}
\def\finishmath#1{#1$\endgroup} % Close the group opened by \tex.
}
}
-% ctrl is no longer a Texinfo command, but leave this definition for fun.
-\def\ctrl #1{{\tt \rawbackslash \hat}#1}
+% for @sub and @sup, if in math mode, just do a normal sub/superscript.
+% If in text, use math to place as sub/superscript, but switch
+% into text mode, with smaller fonts. This is a different font than the
+% one used for real math sub/superscripts (8pt vs. 7pt), but let's not
+% fix it (significant additions to font machinery) until someone notices.
+%
+\def\sub{\ifmmode \expandafter\sb \else \expandafter\finishsub\fi}
+\def\finishsub#1{$\sb{\hbox{\selectfonts\lllsize #1}}$}%
+%
+\def\sup{\ifmmode \expandafter\ptexsp \else \expandafter\finishsup\fi}
+\def\finishsup#1{$\ptexsp{\hbox{\selectfonts\lllsize #1}}$}%
% @inlinefmt{FMTNAME,PROCESSED-TEXT} and @inlineraw{FMTNAME,RAW-TEXT}.
% Ignore unless FMTNAME == tex; then it is like @iftex and @tex,
\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}
+\long\def\doinlinefmtifelse#1,#2,#3,#4,\finish{%
+ \def\inlinefmtname{#1}%
+ \ifx\inlinefmtname\outfmtnametex \ignorespaces #2\else \ignorespaces #3\fi
+}
+%
% For raw, must switch into @tex before parsing the argument, to avoid
% setting catcodes prematurely. Doing it this way means that, for
% example, @inlineraw{html, foo{bar} gets a parse error instead of being
\endgroup % close group opened by \tex.
}
+% @inlineifset{VAR, TEXT} expands TEXT if VAR is @set.
+%
+\long\def\inlineifset#1{\doinlineifset #1,\finish}
+\long\def\doinlineifset#1,#2,\finish{%
+ \def\inlinevarname{#1}%
+ \expandafter\ifx\csname SET\inlinevarname\endcsname\relax
+ \else\ignorespaces#2\fi
+}
+
+% @inlineifclear{VAR, TEXT} expands TEXT if VAR is not @set.
+%
+\long\def\inlineifclear#1{\doinlineifclear #1,\finish}
+\long\def\doinlineifclear#1,#2,\finish{%
+ \def\inlinevarname{#1}%
+ \expandafter\ifx\csname SET\inlinevarname\endcsname\relax \ignorespaces#2\fi
+}
+
\message{glyphs,}
% and logos.
\let\atchar=\@
% @{ @} @lbracechar{} @rbracechar{} all generate brace characters.
-% Unless we're in typewriter, use \ecfont because the CM text fonts do
-% not have braces, and we don't want to switch into math.
-\def\mylbrace{{\ifmonospace\else\ecfont\fi \char123}}
-\def\myrbrace{{\ifmonospace\else\ecfont\fi \char125}}
-\let\{=\mylbrace \let\lbracechar=\{
-\let\}=\myrbrace \let\rbracechar=\}
-\begingroup
- % Definitions to produce \{ and \} commands for indices,
- % and @{ and @} for the aux/toc files.
- \catcode`\{ = \other \catcode`\} = \other
- \catcode`\[ = 1 \catcode`\] = 2
- \catcode`\! = 0 \catcode`\\ = \other
- !gdef!lbracecmd[\{]%
- !gdef!rbracecmd[\}]%
- !gdef!lbraceatcmd[@{]%
- !gdef!rbraceatcmd[@}]%
-!endgroup
+\def\lbracechar{{\ifmonospace\char123\else\ensuremath\lbrace\fi}}
+\def\rbracechar{{\ifmonospace\char125\else\ensuremath\rbrace\fi}}
+\let\{=\lbracechar
+\let\}=\rbracechar
% @comma{} to avoid , parsing problems.
\let\comma = ,
\TeX
}
-% Some math mode symbols.
-\def\bullet{$\ptexbullet$}
-\def\geq{\ifmmode \ge\else $\ge$\fi}
-\def\leq{\ifmmode \le\else $\le$\fi}
-\def\minus{\ifmmode -\else $-$\fi}
+% Some math mode symbols. Define \ensuremath to switch into math mode
+% unless we are already there. Expansion tricks may not be needed here,
+% but safer, and can't hurt.
+\def\ensuremath{\ifmmode \expandafter\asis \else\expandafter\ensuredmath \fi}
+\def\ensuredmath#1{$\relax#1$}
+%
+\def\bullet{\ensuremath\ptexbullet}
+\def\geq{\ensuremath\ge}
+\def\leq{\ensuremath\le}
+\def\minus{\ensuremath-}
% @dots{} outputs an ellipsis using the current font.
% We do .5em per period so that it has the same spacing in the cm
\def\Eogonek{{\ecfont \char"86}}\def\macrocharE{E}
\def\eogonek{{\ecfont \char"A6}}\def\macrochare{e}
%
-% Use the ec* fonts (cm-super in outline format) for non-CM glyphs.
-\def\ecfont{%
+% Use the European Computer Modern fonts (cm-super in outline format)
+% 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}}
+%
+\def\etcfont#1{%
% We can't distinguish serif/sans and italic/slanted, but this
% is used for crude hacks anyway (like adding French and German
% quotes to documents typeset with CM, where we lose kerning), so
\edef\nominalsize{\csname\curfontsize nominalsize\endcsname}%
\ifmonospace
% typewriter:
- \font\thisecfont = ectt\ecsize \space at \nominalsize
+ \font\thisecfont = #1ctt\ecsize \space at \nominalsize
\else
\ifx\curfontstyle\bfstylename
% bold:
- \font\thisecfont = ecb\ifusingit{i}{x}\ecsize \space at \nominalsize
+ \font\thisecfont = #1cb\ifusingit{i}{x}\ecsize \space at \nominalsize
\else
% regular:
- \font\thisecfont = ec\ifusingit{ti}{rm}\ecsize \space at \nominalsize
+ \font\thisecfont = #1c\ifusingit{ti}{rm}\ecsize \space at \nominalsize
\fi
\fi
\thisecfont
\newif\ifseenauthor
\newif\iffinishedtitlepage
-% Do an implicit @contents or @shortcontents after @end titlepage if the
-% user says @setcontentsaftertitlepage or @setshortcontentsaftertitlepage.
-%
-\newif\ifsetcontentsaftertitlepage
- \let\setcontentsaftertitlepage = \setcontentsaftertitlepagetrue
-\newif\ifsetshortcontentsaftertitlepage
- \let\setshortcontentsaftertitlepage = \setshortcontentsaftertitlepagetrue
+% @setcontentsaftertitlepage used to do an implicit @contents or
+% @shortcontents after @end titlepage, but it is now obsolete.
+\def\setcontentsaftertitlepage{%
+ \errmessage{@setcontentsaftertitlepage has been removed as a Texinfo
+ command; move your @contents command if you want the contents
+ after the title page.}}%
+\def\setshortcontentsaftertitlepage{%
+ \errmessage{@setshortcontentsaftertitlepage has been removed as a Texinfo
+ command; move your @shortcontents and @contents commands if you
+ want the contents after the title page.}}%
\parseargdef\shorttitlepage{%
\begingroup \hbox{}\vskip 1.5in \chaprm \centerline{#1}%
% Need this before the \...aftertitlepage checks so that if they are
% in effect the toc pages will come out with page numbers.
\HEADINGSon
- %
- % If they want short, they certainly want long too.
- \ifsetshortcontentsaftertitlepage
- \shortcontents
- \contents
- \global\let\shortcontents = \relax
- \global\let\contents = \relax
- \fi
- %
- \ifsetcontentsaftertitlepage
- \contents
- \global\let\contents = \relax
- \global\let\shortcontents = \relax
- \fi
}
\def\finishtitlepage{%
\newtoks\evenfootline % footline on even pages
\newtoks\oddfootline % footline on odd pages
-% Now make TeX use those variables
+% Now make \makeheadline and \makefootline in Plain TeX use those variables
\headline={{\textfonts\rm \ifodd\pageno \the\oddheadline
\else \the\evenheadline \fi}}
\footline={{\textfonts\rm \ifodd\pageno \the\oddfootline
%
% Leave some space for the footline. Hopefully ok to assume
% @evenfooting will not be used by itself.
- \global\advance\pageheight by -12pt
+ \global\advance\txipageheight by -12pt
\global\advance\vsize by -12pt
}
% @everyheadingmarks
% @everyfootingmarks
+% These define \getoddheadingmarks, \getevenheadingmarks,
+% \getoddfootingmarks, and \getevenfootingmarks, each to one of
+% \gettopheadingmarks, \getbottomheadingmarks.
+%
\def\evenheadingmarks{\headingmarks{even}{heading}}
\def\oddheadingmarks{\headingmarks{odd}{heading}}
\def\evenfootingmarks{\headingmarks{even}{footing}}
\def\oddfootingmarks{\headingmarks{odd}{footing}}
-\def\everyheadingmarks#1 {\headingmarks{even}{heading}{#1}
+\parseargdef\everyheadingmarks{\headingmarks{even}{heading}{#1}
\headingmarks{odd}{heading}{#1} }
-\def\everyfootingmarks#1 {\headingmarks{even}{footing}{#1}
+\parseargdef\everyfootingmarks{\headingmarks{even}{footing}{#1}
\headingmarks{odd}{footing}{#1} }
% #1 = even/odd, #2 = heading/footing, #3 = top/bottom.
\def\headingmarks#1#2#3 {%
% By default, they are off at the start of a document,
% and turned `on' after @end titlepage.
-\def\headings #1 {\csname HEADINGS#1\endcsname}
+\parseargdef\headings{\csname HEADINGS#1\endcsname}
\def\headingsoff{% non-global headings elimination
\evenheadline={\hfil}\evenfootline={\hfil}%
\global\evenfootline={\hfil}
\global\oddfootline={\hfil}
\global\evenheadline={\line{\folio\hfil\thistitle}}
-\global\oddheadline={\line{\thischapter\hfil\folio}}
+\global\oddheadline={\line{\thischapterheading\hfil\folio}}
\global\let\contentsalignmacro = \chapoddpage
}
\let\contentsalignmacro = \chappager
\global\pageno=1
\global\evenfootline={\hfil}
\global\oddfootline={\hfil}
-\global\evenheadline={\line{\thischapter\hfil\folio}}
-\global\oddheadline={\line{\thischapter\hfil\folio}}
+\global\evenheadline={\line{\thischapterheading\hfil\folio}}
+\global\oddheadline={\line{\thischapterheading\hfil\folio}}
\global\let\contentsalignmacro = \chappager
}
\def\HEADINGSon{\HEADINGSdouble}
\global\evenfootline={\hfil}
\global\oddfootline={\hfil}
\global\evenheadline={\line{\folio\hfil\thistitle}}
-\global\oddheadline={\line{\thischapter\hfil\folio}}
+\global\oddheadline={\line{\thischapterheading\hfil\folio}}
\global\let\contentsalignmacro = \chapoddpage
}
\def\HEADINGSsinglex{%
\global\evenfootline={\hfil}
\global\oddfootline={\hfil}
-\global\evenheadline={\line{\thischapter\hfil\folio}}
-\global\oddheadline={\line{\thischapter\hfil\folio}}
+\global\evenheadline={\line{\thischapterheading\hfil\folio}}
+\global\oddheadline={\line{\thischapterheading\hfil\folio}}
\global\let\contentsalignmacro = \chappager
}
\parskip=\smallskipamount
\ifdim\parskip=0pt \parskip=2pt \fi
%
- % Try typesetting the item mark that if the document erroneously says
+ % Try typesetting the item mark so that if the document erroneously says
% something like @itemize @samp (intending @table), there's an error
% right away at the @itemize. It's not the best error message in the
% world, but it's better than leaving it to the @item. This means if
\noindent
\hbox to 0pt{\hss \itemcontents \kern\itemmargin}%
%
- \vadjust{\penalty 1200}}% not good to break after first line of item.
+ \ifinner\else
+ \vadjust{\penalty 1200}% not good to break after first line of item.
+ \fi
+ % We can be in inner vertical mode in a footnote, although an
+ % @itemize looks awful there.
+ }%
\flushcr
}
}
% 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 resets \everytab so we don't have to
+%
+% @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
% undo it ourselves.
\def\headitemfont{\b}% for people to use in the template row; not changeable
\def\headitem{%
\checkenv\multitable
\crcr
+ \gdef\headitemcrhook{\nobreak}% attempt to avoid page break after headings
\global\everytab={\bf}% can't use \headitemfont since the parsing differs
\the\everytab % for the first item
}%
%
+% default for tables with no headings.
+\let\headitemcrhook=\relax
+%
% A \tab used to include \hskip1sp. But then the space in a template
% line is not enough. That is bad. So let's go back to just `&' until
% we again encounter the problem the 1sp was intended to solve.
%
\everycr = {%
\noalign{%
- \global\everytab={}%
+ \global\everytab={}% Reset from possible headitem.
\global\colcount=0 % Reset the column counter.
- % Check for saved footnotes, etc.
+ %
+ % Check for saved footnotes, etc.:
\checkinserts
- % Keeps underfull box messages off when table breaks over pages.
- %\filbreak
- % Maybe so, but it also creates really weird page breaks when the
- % table breaks over pages. Wouldn't \vfil be better? Wait until the
- % problem manifests itself, so it can be fixed for real --karl.
+ %
+ % Perhaps a \nobreak, then reset:
+ \headitemcrhook
+ \global\let\headitemcrhook=\relax
}%
}%
%
\def\value{\begingroup\makevalueexpandable\valuexxx}
\def\valuexxx#1{\expandablevalue{#1}\endgroup}
{
- \catcode`\- = \active \catcode`\_ = \active
+ \catcode`\-=\active \catcode`\_=\active
%
\gdef\makevalueexpandable{%
\let\value = \expandablevalue
% variable's value contains other Texinfo commands, it's almost certain
% it will fail (although perhaps we could fix that with sufficient work
% to do a one-level expansion on the result, instead of complete).
-%
+%
+% Unfortunately, this has the consequence that when _ is in the *value*
+% of an @set, it does not print properly in the roman fonts (get the cmr
+% dot accent at position 126 instead). No fix comes to mind, and it's
+% been this way since 2003 or earlier, so just ignore it.
+%
\def\expandablevalue#1{%
\expandafter\ifx\csname SET#1\endcsname\relax
{[No value for ``#1'']}%
\fi
}
+% 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
+% 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}%
+ \else
+ \csname SET#1\endcsname
+ \fi
+}
+
+% Used for @value's in index entries to form the sort key: expand the @value
+% if possible, otherwise sort late.
+\def\indexnofontsvalue#1{%
+ \expandafter\ifx\csname SET#1\endcsname\relax
+ ZZZZZZZ
+ \else
+ \csname SET#1\endcsname
+ \fi
+}
+
% @ifset VAR ... @end ifset reads the `...' iff VAR has been defined
% with @set.
-%
-% To get special treatment of `@end ifset,' call \makeond and the redefine.
+%
+% To get the special treatment we need for `@end ifset,' we call
+% \makecond and then redefine.
%
\makecond{ifset}
\def\ifset{\parsearg{\doifset{\let\next=\ifsetfail}}}
% except not \outer, so it can be used within macros and \if's.
\edef\newwrite{\makecsname{ptexnewwrite}}
-% \newindex {foo} defines an index named foo.
-% It automatically defines \fooindex such that
-% \fooindex ...rest of line... puts an entry in the index foo.
-% It also defines \fooindfile to be the number of the output channel for
-% the file that accumulates this index. The file's extension is foo.
+% \newindex {foo} defines an index named IX.
+% It automatically defines \IXindex such that
+% \IXindex ...rest of line... puts an entry in the index IX.
+% It also defines \IXindfile to be the number of the output channel for
+% the file that accumulates this index. The file's extension is IX.
% The name of an index should be no more than 2 characters long
% for the sake of vms.
%
\def\newindex#1{%
- \iflinks
- \expandafter\newwrite \csname#1indfile\endcsname
- \openout \csname#1indfile\endcsname \jobname.#1 % Open the file
- \fi
+ \expandafter\chardef\csname#1indfile\endcsname=0
\expandafter\xdef\csname#1index\endcsname{% % Define @#1index
\noexpand\doindex{#1}}
}
\def\defcodeindex{\parsearg\newcodeindex}
%
\def\newcodeindex#1{%
- \iflinks
- \expandafter\newwrite \csname#1indfile\endcsname
- \openout \csname#1indfile\endcsname \jobname.#1
- \fi
+ \expandafter\chardef\csname#1indfile\endcsname=0
\expandafter\xdef\csname#1index\endcsname{%
\noexpand\docodeindex{#1}}%
}
+% The default indices:
+\newindex{cp}% concepts,
+\newcodeindex{fn}% functions,
+\newcodeindex{vr}% variables,
+\newcodeindex{tp}% types,
+\newcodeindex{ky}% keys
+\newcodeindex{pg}% and programs.
+
% @synindex foo bar makes index foo feed into index bar.
% Do this instead of @defindex foo if you don't want it as a separate index.
% #1 is \doindex or \docodeindex, #2 the index getting redefined (foo),
% #3 the target index (bar).
\def\dosynindex#1#2#3{%
- % Only do \closeout if we haven't already done it, else we'll end up
- % closing the target index.
- \expandafter \ifx\csname donesynindex#2\endcsname \relax
- % The \closeout helps reduce unnecessary open files; the limit on the
- % Acorn RISC OS is a mere 16 files.
- \expandafter\closeout\csname#2indfile\endcsname
- \expandafter\let\csname donesynindex#2\endcsname = 1
- \fi
+ \requireopenindexfile{#3}%
% redefine \fooindfile:
\expandafter\let\expandafter\temp\expandafter=\csname#3indfile\endcsname
\expandafter\let\csname#2indfile\endcsname=\temp
\expandafter\xdef\csname#2index\endcsname{\noexpand#1{#3}}%
}
-% Define \doindex, the driver for all \fooindex macros.
+% Define \doindex, the driver for all index macros.
% Argument #1 is generated by the calling \fooindex macro,
-% and it is "foo", the name of the index.
-
-% \doindex just uses \parsearg; it calls \doind for the actual work.
-% This is because \doind is more useful to call from other macros.
-
-% There is also \dosubind {index}{topic}{subtopic}
-% which makes an entry in a two-level index such as the operation index.
+% and it is the two-letter name of the index.
-\def\doindex#1{\edef\indexname{#1}\parsearg\singleindexer}
-\def\singleindexer #1{\doind{\indexname}{#1}}
+\def\doindex#1{\edef\indexname{#1}\parsearg\doindexxxx}
+\def\doindexxxx #1{\doind{\indexname}{#1}}
% like the previous two, but they put @code around the argument.
-\def\docodeindex#1{\edef\indexname{#1}\parsearg\singlecodeindexer}
-\def\singlecodeindexer #1{\doind{\indexname}{\code{#1}}}
+\def\docodeindex#1{\edef\indexname{#1}\parsearg\docodeindexxxx}
+\def\docodeindexxxx #1{\doind{\indexname}{\code{#1}}}
-% Take care of Texinfo commands that can appear in an index entry.
-% Since there are some commands we want to expand, and others we don't,
-% we have to laboriously prevent expansion for those that we don't.
+\f
+% Used when writing an index entry out to an index file to prevent
+% expansion of Texinfo commands that can appear in an index entry.
%
\def\indexdummies{%
\escapechar = `\\ % use backslash in output files.
- \def\@{@}% change to @@ when we switch to @ as escape char in index files.
- \def\ {\realbackslash\space }%
- %
- % Need these unexpandable (because we define \tt as a dummy)
- % definitions when @{ or @} appear in index entry text. Also, more
- % complicated, when \tex is in effect and \{ is a \delimiter again.
- % We can't use \lbracecmd and \rbracecmd because texindex assumes
- % braces and backslashes are used only as delimiters. Perhaps we
- % should define @lbrace and @rbrace commands a la @comma.
- \def\{{{\tt\char123}}%
- \def\}{{\tt\char125}}%
- %
- % I don't entirely understand this, but when an index entry is
- % generated from a macro call, the \endinput which \scanmacro inserts
- % causes processing to be prematurely terminated. This is,
- % apparently, because \indexsorttmp is fully expanded, and \endinput
- % is an expandable command. The redefinition below makes \endinput
- % disappear altogether for that purpose -- although logging shows that
- % processing continues to some further point. On the other hand, it
- % seems \endinput does not hurt in the printed index arg, since that
- % is still getting written without apparent harm.
- %
- % Sample source (mac-idx3.tex, reported by Graham Percival to
- % help-texinfo, 22may06):
- % @macro funindex {WORD}
- % @findex xyz
- % @end macro
- % ...
- % @funindex commtest
- %
- % The above is not enough to reproduce the bug, but it gives the flavor.
- %
- % Sample whatsit resulting:
- % .@write3{\entry{xyz}{@folio }{@code {xyz@endinput }}}
- %
- % So:
- \let\endinput = \empty
+ \definedummyletter\@%
+ \definedummyletter\ %
+ %
+ % For texindex which always views { and } as separators.
+ \def\{{\lbracechar{}}%
+ \def\}{\rbracechar{}}%
%
% Do the redefinitions.
- \commondummies
+ \definedummies
}
-% For the aux and toc files, @ is the escape character. So we want to
-% redefine everything using @ as the escape character (instead of
-% \realbackslash, still used for index files). When everything uses @,
-% this will be simpler.
+% Used for the aux and toc files, where @ is the escape character.
%
\def\atdummies{%
- \def\@{@@}%
- \def\ {@ }%
- \let\{ = \lbraceatcmd
- \let\} = \rbraceatcmd
+ \definedummyletter\@%
+ \definedummyletter\ %
+ \definedummyletter\{%
+ \definedummyletter\}%
%
% Do the redefinitions.
- \commondummies
+ \definedummies
\otherbackslash
}
-% Called from \indexdummies and \atdummies.
+% \definedummyword defines \#1 as \string\#1\space, thus effectively
+% preventing its expansion. This is used only for control words,
+% not control letters, because the \space would be incorrect for
+% control characters, but is needed to separate the control word
+% from whatever follows.
%
-\def\commondummies{%
- %
- % \definedummyword defines \#1 as \string\#1\space, thus effectively
- % preventing its expansion. This is used only for control words,
- % not control letters, because the \space would be incorrect for
- % control characters, but is needed to separate the control word
- % from whatever follows.
- %
- % For control letters, we have \definedummyletter, which omits the
- % space.
- %
- % These can be used both for control words that take an argument and
- % those that do not. If it is followed by {arg} in the input, then
- % that will dutifully get written to the index (or wherever).
- %
- \def\definedummyword ##1{\def##1{\string##1\space}}%
- \def\definedummyletter##1{\def##1{\string##1}}%
- \let\definedummyaccent\definedummyletter
+% These can be used both for control words that take an argument and
+% those that do not. If it is followed by {arg} in the input, then
+% that will dutifully get written to the index (or wherever).
+%
+% For control letters, we have \definedummyletter, which omits the
+% space.
+%
+\def\definedummyword #1{\def#1{\string#1\space}}%
+\def\definedummyletter#1{\def#1{\string#1}}%
+\let\definedummyaccent\definedummyletter
+
+% Called from \indexdummies and \atdummies, to effectively prevent
+% the expansion of commands.
+%
+\def\definedummies{%
%
+ \let\commondummyword\definedummyword
+ \let\commondummyletter\definedummyletter
+ \let\commondummyaccent\definedummyaccent
\commondummiesnofonts
%
\definedummyletter\_%
\definedummyword\guilsinglright
\definedummyword\lbracechar
\definedummyword\leq
+ \definedummyword\mathopsup
\definedummyword\minus
\definedummyword\ogonek
\definedummyword\pounds
\definedummyword\quotesinglbase
\definedummyword\rbracechar
\definedummyword\result
+ \definedummyword\sub
+ \definedummyword\sup
\definedummyword\textdegree
%
% We want to disable all macros so that they are not expanded by \write.
\macrolist
+ \let\value\dummyvalue
%
\normalturnoffactive
- %
- % Handle some cases of @value -- where it does not contain any
- % (non-fully-expandable) commands.
- \makevalueexpandable
}
-% \commondummiesnofonts: common to \commondummies and \indexnofonts.
+% \commondummiesnofonts: common to \definedummies and \indexnofonts.
+% Define \commondummyletter, \commondummyaccent and \commondummyword before
+% using. Used for accents, font commands, and various control letters.
%
\def\commondummiesnofonts{%
% Control letters and accents.
- \definedummyletter\!%
- \definedummyaccent\"%
- \definedummyaccent\'%
- \definedummyletter\*%
- \definedummyaccent\,%
- \definedummyletter\.%
- \definedummyletter\/%
- \definedummyletter\:%
- \definedummyaccent\=%
- \definedummyletter\?%
- \definedummyaccent\^%
- \definedummyaccent\`%
- \definedummyaccent\~%
- \definedummyword\u
- \definedummyword\v
- \definedummyword\H
- \definedummyword\dotaccent
- \definedummyword\ogonek
- \definedummyword\ringaccent
- \definedummyword\tieaccent
- \definedummyword\ubaraccent
- \definedummyword\udotaccent
- \definedummyword\dotless
+ \commondummyletter\!%
+ \commondummyaccent\"%
+ \commondummyaccent\'%
+ \commondummyletter\*%
+ \commondummyaccent\,%
+ \commondummyletter\.%
+ \commondummyletter\/%
+ \commondummyletter\:%
+ \commondummyaccent\=%
+ \commondummyletter\?%
+ \commondummyaccent\^%
+ \commondummyaccent\`%
+ \commondummyaccent\~%
+ \commondummyword\u
+ \commondummyword\v
+ \commondummyword\H
+ \commondummyword\dotaccent
+ \commondummyword\ogonek
+ \commondummyword\ringaccent
+ \commondummyword\tieaccent
+ \commondummyword\ubaraccent
+ \commondummyword\udotaccent
+ \commondummyword\dotless
%
% Texinfo font commands.
- \definedummyword\b
- \definedummyword\i
- \definedummyword\r
- \definedummyword\sansserif
- \definedummyword\sc
- \definedummyword\slanted
- \definedummyword\t
+ \commondummyword\b
+ \commondummyword\i
+ \commondummyword\r
+ \commondummyword\sansserif
+ \commondummyword\sc
+ \commondummyword\slanted
+ \commondummyword\t
%
% Commands that take arguments.
- \definedummyword\abbr
- \definedummyword\acronym
- \definedummyword\anchor
- \definedummyword\cite
- \definedummyword\code
- \definedummyword\command
- \definedummyword\dfn
- \definedummyword\dmn
- \definedummyword\email
- \definedummyword\emph
- \definedummyword\env
- \definedummyword\file
- \definedummyword\image
- \definedummyword\indicateurl
- \definedummyword\inforef
- \definedummyword\kbd
- \definedummyword\key
- \definedummyword\math
- \definedummyword\option
- \definedummyword\pxref
- \definedummyword\ref
- \definedummyword\samp
- \definedummyword\strong
- \definedummyword\tie
- \definedummyword\uref
- \definedummyword\url
- \definedummyword\var
- \definedummyword\verb
- \definedummyword\w
- \definedummyword\xref
+ \commondummyword\abbr
+ \commondummyword\acronym
+ \commondummyword\anchor
+ \commondummyword\cite
+ \commondummyword\code
+ \commondummyword\command
+ \commondummyword\dfn
+ \commondummyword\dmn
+ \commondummyword\email
+ \commondummyword\emph
+ \commondummyword\env
+ \commondummyword\file
+ \commondummyword\image
+ \commondummyword\indicateurl
+ \commondummyword\inforef
+ \commondummyword\kbd
+ \commondummyword\key
+ \commondummyword\math
+ \commondummyword\option
+ \commondummyword\pxref
+ \commondummyword\ref
+ \commondummyword\samp
+ \commondummyword\strong
+ \commondummyword\tie
+ \commondummyword\U
+ \commondummyword\uref
+ \commondummyword\url
+ \commondummyword\var
+ \commondummyword\verb
+ \commondummyword\w
+ \commondummyword\xref
+}
+
+% For testing: output @{ and @} in index sort strings as \{ and \}.
+\newif\ifusebracesinindexes
+
+\let\indexlbrace\relax
+\let\indexrbrace\relax
+
+{\catcode`\@=0
+\catcode`\\=13
+ @gdef@backslashdisappear{@def\{}}
+}
+
+{
+\catcode`\<=13
+\catcode`\-=13
+\catcode`\`=13
+ \gdef\indexnonalnumdisappear{%
+ \expandafter\ifx\csname SETtxiindexlquoteignore\endcsname\relax\else
+ % @set txiindexlquoteignore makes us ignore left quotes in the sort term.
+ % (Introduced for FSFS 2nd ed.)
+ \let`=\empty
+ \fi
+ %
+ \expandafter\ifx\csname SETtxiindexbackslashignore\endcsname\relax\else
+ \backslashdisappear
+ \fi
+ %
+ \expandafter\ifx\csname SETtxiindexhyphenignore\endcsname\relax\else
+ \def-{}%
+ \fi
+ \expandafter\ifx\csname SETtxiindexlessthanignore\endcsname\relax\else
+ \def<{}%
+ \fi
+ \expandafter\ifx\csname SETtxiindexatsignignore\endcsname\relax\else
+ \def\@{}%
+ \fi
+ }
+
+ \gdef\indexnonalnumreappear{%
+ \useindexbackslash
+ \let-\normaldash
+ \let<\normalless
+ \def\@{@}%
+ }
}
+
% \indexnofonts is used when outputting the strings to sort the index
% by, and when constructing control sequence names. It eliminates all
% control sequences and just writes whatever the best ASCII sort string
%
\def\indexnofonts{%
% Accent commands should become @asis.
- \def\definedummyaccent##1{\let##1\asis}%
+ \def\commondummyaccent##1{\let##1\asis}%
% We can just ignore other control letters.
- \def\definedummyletter##1{\let##1\empty}%
+ \def\commondummyletter##1{\let##1\empty}%
% All control words become @asis by default; overrides below.
- \let\definedummyword\definedummyaccent
- %
+ \let\commondummyword\commondummyaccent
\commondummiesnofonts
%
% Don't no-op \tt, since it isn't a user-level command
\def\_{\normalunderscore}%
\def\-{}% @- shouldn't affect sorting
%
- % Unfortunately, texindex is not prepared to handle braces in the
- % content at all. So for index sorting, we map @{ and @} to strings
- % starting with |, since that ASCII character is between ASCII { and }.
- \def\{{|a}%
- \def\lbracechar{|a}%
- %
- \def\}{|b}%
- \def\rbracechar{|b}%
+ \uccode`\1=`\{ \uppercase{\def\{{1}}%
+ \uccode`\1=`\} \uppercase{\def\}{1}}%
+ \let\lbracechar\{%
+ \let\rbracechar\}%
%
% Non-English letters.
\def\AA{AA}%
\def\L{L}%
\def\OE{OE}%
\def\O{O}%
- \def\TH{ZZZ}%
+ \def\TH{TH}%
\def\aa{aa}%
\def\ae{ae}%
\def\dh{dzz}%
\def\o{o}%
\def\questiondown{?}%
\def\ss{ss}%
- \def\th{zzz}%
+ \def\th{th}%
%
\def\LaTeX{LaTeX}%
\def\TeX{TeX}%
\def\result{=>}%
\def\textdegree{o}%
%
- \expandafter\ifx\csname SETtxiindexlquoteignore\endcsname\relax
- \else \indexlquoteignore \fi
- %
% We need to get rid of all macros, leaving only the arguments (if present).
% Of course this is not nearly correct, but it is the best we can do for now.
% makeinfo does not expand macros in the argument to @deffn, which ends up
% goes to end-of-line is not handled.
%
\macrolist
+ \let\value\indexnofontsvalue
}
-% Undocumented (for FSFS 2nd ed.): @set txiindexlquoteignore makes us
-% ignore left quotes in the sort term.
-{\catcode`\`=\active
- \gdef\indexlquoteignore{\let`=\empty}}
+\f
+
-\let\indexbackslash=0 %overridden during \printindex.
\let\SETmarginindex=\relax % put index entries in margin (undocumented)?
% Most index entries go through here, but \dosubind is the general case.
% #1 is the index name, #2 is the entry text.
\def\doind#1#2{\dosubind{#1}{#2}{}}
-% Workhorse for all \fooindexes.
+% There is also \dosubind {index}{topic}{subtopic}
+% which makes an entry in a two-level index such as the operation index.
+% TODO: Two-level index? Operation index?
+
+% Workhorse for all indexes.
% #1 is name of index, #2 is stuff to put there, #3 is subentry --
% empty if called from \doind, as we usually are (the main exception
% is with most defuns, which call us directly).
\def\dosubind#1#2#3{%
\iflinks
{%
+ \requireopenindexfile{#1}%
% Store the main index entry text (including the third arg).
\toks0 = {#2}%
% If third arg is present, precede it with a space.
\fi
}
-% Write the entry in \toks0 to the index file:
+% Check if an index file has been opened, and if not, open it.
+\def\requireopenindexfile#1{%
+\ifnum\csname #1indfile\endcsname=0
+ \expandafter\newwrite \csname#1indfile\endcsname
+ \edef\suffix{#1}%
+ % A .fls suffix would conflict with the file extension for the output
+ % of -recorder, so use .f1s instead.
+ \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
+ % box, which could confound checks such as those in \safewhatsit for
+ % preceding skips.
+ \typeout{Writing index file \jobname.\suffix}%
+\fi}
+\def\indexisfl{fl}
+
+% Output \ as {\indexbackslash}, because \ is an escape character in
+% the index files.
+\let\indexbackslash=\relax
+{\catcode`\@=0 \catcode`\\=\active
+ @gdef@useindexbackslash{@def\{{@indexbackslash}}}
+}
+
+% Definition for writing index entry text.
+\def\sortas#1{\ignorespaces}%
+
+% Definition for writing index entry sort key. Should occur at the at
+% the beginning of the index entry, like
+% @cindex @sortas{september} \september
+% The \ignorespaces takes care of following space, but there's no way
+% to remove space before it.
+{
+\catcode`\-=13
+\gdef\indexwritesortas{%
+ \begingroup
+ \indexnonalnumreappear
+ \indexwritesortasxxx}
+\gdef\indexwritesortasxxx#1{%
+ \xdef\indexsortkey{#1}\endgroup}
+}
+
+
+% Write the entry in \toks0 to the index file.
%
\def\dosubindwrite{%
% Put the index entry in the margin if desired.
%
% Remember, we are within a group.
\indexdummies % Must do this here, since \bf, etc expand at this stage
- \def\backslashcurfont{\indexbackslash}% \indexbackslash isn't defined now
- % so it will be output as is; and it will print as backslash.
+ \useindexbackslash % \indexbackslash isn't defined now so it will be output
+ % as is; and it will print as backslash.
+ % The braces around \indexbrace are recognized by texindex.
%
- % Process the index entry with all font commands turned off, to
- % get the string to sort by.
+ % Get the string to sort by, by processing the index entry with all
+ % font commands turned off.
{\indexnofonts
- \edef\temp{\the\toks0}% need full expansion
- \xdef\indexsorttmp{\temp}%
+ \def\lbracechar{{\indexlbrace}}%
+ \def\rbracechar{{\indexrbrace}}%
+ \let\{=\lbracechar
+ \let\}=\rbracechar
+ \indexnonalnumdisappear
+ \xdef\indexsortkey{}%
+ \let\sortas=\indexwritesortas
+ \edef\temp{\the\toks0}%
+ \setbox\dummybox = \hbox{\temp}% Make sure to execute any \sortas
+ \ifx\indexsortkey\empty
+ \xdef\indexsortkey{\temp}%
+ \ifx\indexsortkey\empty\xdef\indexsortkey{ }\fi
+ \fi
}%
%
% Set up the complete index entry, with both the sort key and
% sorted result.
\edef\temp{%
\write\writeto{%
- \string\entry{\indexsorttmp}{\noexpand\folio}{\the\toks0}}%
+ \string\entry{\indexsortkey}{\noexpand\folio}{\the\toks0}}%
}%
\temp
}
+\newbox\dummybox % used above
% Take care of unwanted page breaks/skips around a whatsit:
%
% \initial {@}
% as its first line, TeX doesn't complain about mismatched braces
% (because it thinks @} is a control sequence).
- \catcode`\@ = 11
- \openin 1 \jobname.#1s
+ \catcode`\@ = 12
+ % See comment in \requireopenindexfile.
+ \def\indexname{#1}\ifx\indexname\indexisfl\def\indexname{f1}\fi
+ \openin 1 \jobname.\indexname s
\ifeof 1
% \enddoublecolumns gets confused if there is no text in the index,
% and it loses the chapter title and the aux file entries for the
% index. The easiest way to prevent this problem is to make sure
% there is some text.
\putwordIndexNonexistent
+ \typeout{No file \jobname.\indexname s.}%
\else
+ \catcode`\\ = 0
%
% If the index file exists but is empty, then \openin leaves \ifeof
% false. We have to make TeX try to read something from the file, so
% it can discover if there is anything in it.
- \read 1 to \temp
+ \read 1 to \thisline
\ifeof 1
\putwordIndexIsEmpty
\else
% Index files are almost Texinfo source, but we use \ as the escape
% character. It would be better to use @, but that's too big a change
% to make right now.
- \def\indexbackslash{\backslashcurfont}%
- \catcode`\\ = 0
- \escapechar = `\\
+ \def\indexbackslash{\ttbackslash}%
+ \let\indexlbrace\{ % Likewise, set these sequences for braces
+ \let\indexrbrace\} % used in the sort key.
\begindoublecolumns
- \input \jobname.#1s
+ \let\entrywidowpenalty=\indexwidowpenalty
+ %
+ % Read input from the index file line by line.
+ \loopdo
+ \ifeof1
+ \let\firsttoken\relax
+ \else
+ \read 1 to \nextline
+ \edef\act{\gdef\noexpand\firsttoken{\getfirsttoken\nextline}}%
+ \act
+ \fi
+ \thisline
+ %
+ \ifeof1\else
+ \let\thisline\nextline
+ \repeat
+ %%
\enddoublecolumns
\fi
\fi
\closein 1
\endgroup}
+\def\getfirsttoken#1{\expandafter\getfirsttokenx#1\endfirsttoken}
+\long\def\getfirsttokenx#1#2\endfirsttoken{\noexpand#1}
+
+\def\loopdo#1\repeat{\def\body{#1}\loopdoxxx}
+\def\loopdoxxx{\let\next=\relax\body\let\next=\loopdoxxx\fi\next}
+
% These macros are used by the sorted index file itself.
% Change them to control the appearance of the index.
-\def\initial#1{{%
- % Some minor font changes for the special characters.
- \let\tentt=\sectt \let\tt=\sectt \let\sf=\sectt
- %
+{\catcode`\/=13 \catcode`\-=13 \catcode`\^=13 \catcode`\~=13 \catcode`\_=13
+\catcode`\|=13 \catcode`\<=13 \catcode`\>=13 \catcode`\+=13 \catcode`\"=13
+\catcode`\$=3
+\gdef\initialglyphs{%
+ % Some changes for non-alphabetic characters. Using the glyphs from the
+ % math fonts looks more consistent than the typewriter font used elsewhere
+ % for these characters.
+ \def\indexbackslash{\math{\backslash}}%
+ \let\\=\indexbackslash
+ %
+ % Can't get bold backslash so don't use bold forward slash
+ \catcode`\/=13
+ \def/{{\secrmnotbold \normalslash}}%
+ \def-{{\normaldash\normaldash}}% en dash `--'
+ \def^{{\chapbf \normalcaret}}%
+ \def~{{\chapbf \normaltilde}}%
+ \def\_{%
+ \leavevmode \kern.07em \vbox{\hrule width.3em height.1ex}\kern .07em }%
+ \def|{$\vert$}%
+ \def<{$\less$}%
+ \def>{$\gtr$}%
+ \def+{$\normalplus$}%
+}}
+
+\def\initial{%
+ \bgroup
+ \initialglyphs
+ \initialx
+}
+
+\def\initialx#1{%
% Remove any glue we may have, we'll be inserting our own.
\removelastskip
%
% We like breaks before the index initials, so insert a bonus.
+ % The glue before the bonus allows a little bit of space at the
+ % bottom of a column to reduce an increase in inter-line spacing.
\nobreak
- \vskip 0pt plus 3\baselineskip
- \penalty 0
- \vskip 0pt plus -3\baselineskip
+ \vskip 0pt plus 5\baselineskip
+ \penalty -300
+ \vskip 0pt plus -5\baselineskip
%
% Typeset the initial. Making this add up to a whole number of
% baselineskips increases the chance of the dots lining up from column
% we need before each entry, but it's better.
%
% No shrink because it confuses \balancecolumns.
- \vskip 1.67\baselineskip plus .5\baselineskip
- \leftline{\secbf #1}%
+ \vskip 1.67\baselineskip plus 1\baselineskip
+ \leftline{\secfonts \kern-0.05em \secbf #1}%
+ % \secfonts is inside the argument of \leftline so that the change of
+ % \baselineskip will not affect any glue inserted before the vbox that
+ % \leftline creates.
% Do our best not to break after the initial.
\nobreak
\vskip .33\baselineskip plus .1\baselineskip
-}}
+ \egroup % \initialglyphs
+}
+
+\newdimen\entryrightmargin
+\entryrightmargin=0pt
% \entry typesets a paragraph consisting of the text (#1), dot leaders, and
% then page number (#2) flushed to the right margin. It is used for index
% and table of contents entries. The paragraph is indented by \leftskip.
%
-% A straightforward implementation would start like this:
-% \def\entry#1#2{...
-% But this freezes the catcodes in the argument, and can cause problems to
-% @code, which sets - active. This problem was fixed by a kludge---
-% ``-'' was active throughout whole index, but this isn't really right.
-% The right solution is to prevent \entry from swallowing the whole text.
-% --kasal, 21nov03
\def\entry{%
\begingroup
%
% affect previous text.
\par
%
- % Do not fill out the last line with white space.
- \parfillskip = 0in
- %
% No extra space above this paragraph.
\parskip = 0in
%
- % Do not prefer a separate line ending with a hyphen to fewer lines.
- \finalhyphendemerits = 0
- %
- % \hangindent is only relevant when the entry text and page number
- % don't both fit on one line. In that case, bob suggests starting the
- % dots pretty far over on the line. Unfortunately, a large
- % indentation looks wrong when the entry text itself is broken across
- % lines. So we use a small indentation and put up with long leaders.
- %
- % \hangafter is reset to 1 (which is the value we want) at the start
- % of each paragraph, so we need not do anything with that.
- \hangindent = 2em
- %
- % When the entry text needs to be broken, just fill out the first line
- % with blank space.
- \rightskip = 0pt plus1fil
- %
- % A bit of stretch before each entry for the benefit of balancing
- % columns.
- \vskip 0pt plus1pt
- %
% When reading the text of entry, convert explicit line breaks
% from @* into spaces. The user might give these in long section
% titles, for instance.
\def\*{\unskip\space\ignorespaces}%
- \def\entrybreak{\hfil\break}%
+ \def\entrybreak{\hfil\break}% An undocumented command
%
% Swallow the left brace of the text (first parameter):
\afterassignment\doentry
}
\def\entrybreak{\unskip\space\ignorespaces}%
\def\doentry{%
+ % Save the text of the entry
+ \global\setbox\boxA=\hbox\bgroup
\bgroup % Instead of the swallowed brace.
\noindent
\aftergroup\finishentry
% And now comes the text of the entry.
+ % Not absorbing as a macro argument reduces the chance of problems
+ % with catcodes occurring.
}
-\def\finishentry#1{%
+{\catcode`\@=11
+\gdef\finishentry#1{%
+ \egroup % end box A
+ \dimen@ = \wd\boxA % Length of text of entry
+ \global\setbox\boxA=\hbox\bgroup\unhbox\boxA
% #1 is the page number.
%
- % The following is kludged to not output a line of dots in the index if
- % there are no page numbers. The next person who breaks this will be
- % cursed by a Unix daemon.
- \setbox\boxA = \hbox{#1}%
- \ifdim\wd\boxA = 0pt
- \ %
+ % Get the width of the page numbers, and only use
+ % leaders if they are present.
+ \global\setbox\boxB = \hbox{#1}%
+ \ifdim\wd\boxB = 0pt
+ \null\nobreak\hfill\ %
\else
%
- % If we must, put the page number on a line of its own, and fill out
- % this line with blank space. (The \hfil is overwhelmed with the
- % fill leaders glue in \indexdotfill if the page number does fit.)
- \hfil\penalty50
\null\nobreak\indexdotfill % Have leaders before the page number.
%
- % The `\ ' here is removed by the implicit \unskip that TeX does as
- % part of (the primitive) \par. Without it, a spurious underfull
- % \hbox ensues.
\ifpdf
- \pdfgettoks#1.%
- \ \the\toksA
+ \pdfgettoks#1.%
+ \bgroup\let\domark\relax
+ \hskip\skip\thinshrinkable\the\toksA
+ \egroup
+ % The redefinion of \domark stops marks being added in \pdflink to
+ % preserve coloured links across page boundaries. Otherwise the marks
+ % would get in the way of \lastbox in \insertindexentrybox.
\else
- \ #1%
+ \ifx\XeTeXrevision\thisisundefined
+ \hskip\skip\thinshrinkable #1%
+ \else
+ \pdfgettoks#1.%
+ \bgroup\let\domark\relax
+ \hskip\skip\thinshrinkable\the\toksA
+ \egroup
+ \fi
\fi
\fi
- \par
+ \egroup % end \boxA
+ \ifdim\wd\boxB = 0pt
+ \global\setbox\entryindexbox=\vbox{\unhbox\boxA}%
+ \else
+ \global\setbox\entryindexbox=\vbox\bgroup
+ % We want the text of the entries to be aligned to the left, and the
+ % page numbers to be aligned to the right.
+ %
+ \parindent = 0pt
+ \advance\leftskip by 0pt plus 1fil
+ \advance\leftskip by 0pt plus -1fill
+ \rightskip = 0pt plus -1fil
+ \advance\rightskip by 0pt plus 1fill
+ % Cause last line, which could consist of page numbers on their own
+ % if the list of page numbers is long, to be aligned to the right.
+ \parfillskip=0pt plus -1fill
+ %
+ \advance\rightskip by \entryrightmargin
+ % Determine how far we can stretch into the margin.
+ % This allows, e.g., "Appendix H GNU Free Documentation License" to
+ % fit on one line in @letterpaper format.
+ \ifdim\entryrightmargin>2.1em
+ \dimen@i=2.1em
+ \else
+ \dimen@i=0em
+ \fi
+ \advance \parfillskip by 0pt minus 1\dimen@i
+ %
+ \dimen@ii = \hsize
+ \advance\dimen@ii by -1\leftskip
+ \advance\dimen@ii by -1\entryrightmargin
+ \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
+ \dimen@ = 0.7\dimen@ % Try to split the text roughly evenly
+ \dimen@ii = \hsize
+ \ifnum\dimen@>\dimen@ii
+ % If the entry is too long, use the whole line
+ \dimen@ = \dimen@ii
+ \fi
+ \advance\leftskip by 0pt plus 1fill % ragged right
+ \advance \dimen@ by 1\rightskip
+ \parshape = 2 0pt \dimen@ 0em \dimen@ii
+ % Ideally we'd add a finite glue at the end of the first line only,
+ % instead of using \parshape with explicit line lengths, but TeX
+ % doesn't seem to provide a way to do such a thing.
+ %
+ \leftskip = 1em
+ \parindent = -1em
+ \fi\fi
+ \indent % start paragraph
+ \unhbox\boxA
+ %
+ % Do not prefer a separate line ending with a hyphen to fewer lines.
+ \finalhyphendemerits = 0
+ %
+ % Word spacing - no stretch
+ \spaceskip=\fontdimen2\font minus \fontdimen4\font
+ %
+ \linepenalty=1000 % Discourage line breaks.
+ \hyphenpenalty=5000 % Discourage hyphenation.
+ %
+ \par % format the paragraph
+ \egroup % The \vbox
+ \fi
\endgroup
+ % delay text of entry until after penalty
+ \bgroup\aftergroup\insertindexentrybox
+ \entrywidowpenalty
+}}
+
+\newskip\thinshrinkable
+\skip\thinshrinkable=.15em minus .15em
+
+\newbox\entryindexbox
+\def\insertindexentrybox{%
+ \ourunvbox\entryindexbox
+}
+
+% Use \lastbox to take apart vbox box by box, and add each sub-box
+% to the current vertical list.
+\def\ourunvbox#1{%
+\bgroup % for local binding of \delayedbox
+ % Remove the last box from box #1
+ \global\setbox#1=\vbox{%
+ \unvbox#1%
+ \unskip % remove any glue
+ \unpenalty
+ \global\setbox\interbox=\lastbox
+ }%
+ \setbox\delayedbox=\box\interbox
+ \ifdim\ht#1=0pt\else
+ \ourunvbox#1 % Repeat on what's left of the box
+ \nobreak
+ \fi
+ \box\delayedbox
+\egroup
+}
+\newbox\delayedbox
+\newbox\interbox
+
+% Default is no penalty
+\let\entrywidowpenalty\egroup
+
+% Used from \printindex. \firsttoken should be the first token
+% after the \entry. If it's not another \entry, we are at the last
+% line of a group of index entries, so insert a penalty to discourage
+% widowed index entries.
+\long\def\indexwidowpenalty{%
+ \def\isentry{\entry}%
+ \ifx\firsttoken\isentry
+ \else
+ \penalty 9000
+ \fi
+ \egroup % now comes the box added with \aftergroup
}
% Like plain.tex's \dotfill, except uses up at least 1 em.
+% The filll stretch here overpowers both the fil and fill stretch to push
+% the page number to the right.
\def\indexdotfill{\cleaders
- \hbox{$\mathsurround=0pt \mkern1.5mu.\mkern1.5mu$}\hskip 1em plus 1fill}
+ \hbox{$\mathsurround=0pt \mkern1.5mu.\mkern1.5mu$}\hskip 1em plus 1filll}
+
\def\primary #1{\line{#1\hfil}}
\ifpdf
\pdfgettoks#2.\ \the\toksA % The page number ends the paragraph.
\else
- #2
+ \ifx\XeTeXrevision\thisisundefined
+ #2
+ \else
+ \pdfgettoks#2.\ \the\toksA % The page number ends the paragraph.
+ \fi
\fi
\par
}}
% Define two-column mode, which we use to typeset indexes.
% Adapted from the TeXbook, page 416, which is to say,
% the manmac.tex format used to print the TeXbook itself.
-\catcode`\@=11
+\catcode`\@=11 % private names
\newbox\partialpage
\newdimen\doublecolumnhsize
+\newdimen\doublecolumntopgap
+\doublecolumntopgap = 0pt
+
+% Use inside an output routine to save \topmark and \firstmark
+\def\savemarks{%
+ \global\savedtopmark=\expandafter{\topmark }%
+ \global\savedfirstmark=\expandafter{\firstmark }%
+}
+\newtoks\savedtopmark
+\newtoks\savedfirstmark
+
+% Set \topmark and \firstmark for next time \output runs.
+% Can't be run from withinside \output (because any material
+% added while an output routine is active, including
+% penalties, is saved for after it finishes). The page so far
+% should be empty, otherwise what's on it will be thrown away.
+\def\restoremarks{%
+ \mark{\the\savedtopmark}%
+ \bgroup\output = {%
+ \setbox\dummybox=\box\PAGE
+ }abc\eject\egroup
+ % "abc" because output routine doesn't fire for a completely empty page.
+ \mark{\the\savedfirstmark}%
+}
\def\begindoublecolumns{\begingroup % ended by \enddoublecolumns
+ % If not much space left on page, start a new page.
+ \ifdim\pagetotal>0.8\vsize\vfill\eject\fi
+ %
% Grab any single-column material above us.
\output = {%
%
\unvbox\PAGE
\kern-\topskip \kern\baselineskip
}%
+ \savemarks
}%
\eject % run that output routine to set \partialpage
+ \restoremarks
+ %
+ % We recover the two marks that the last output routine saved in order
+ % to propagate the information in marks added around a chapter heading,
+ % which could be otherwise be lost by the time the final page is output.
+ %
%
% Use the double-column output routine for subsequent pages.
\output = {\doublecolumnout}%
%
% Double the \vsize as well. (We don't need a separate register here,
% since nobody clobbers \vsize.)
+ \global\doublecolumntopgap = \topskip
+ \global\advance\doublecolumntopgap by -1\baselineskip
+ \advance\vsize by -1\doublecolumntopgap
\vsize = 2\vsize
+ \topskip=0pt
+ %
+ % For the benefit of balancing columns
+ \advance\baselineskip by 0pt plus 0.5pt
}
% The double-column output routine for all double-column pages except
-% the last.
+% the last, which is done by \balancecolumns.
%
\def\doublecolumnout{%
+ %
\splittopskip=\topskip \splitmaxdepth=\maxdepth
% Get the available space for the double columns -- the normal
% (undoubled) page height minus any material left over from the
%
\hsize = \doublecolumnhsize
\wd0=\hsize \wd2=\hsize
- \hbox to\pagewidth{\box0\hfil\box2}%
+ \vbox{%
+ \vskip\doublecolumntopgap
+ \hbox to\txipagewidth{\box0\hfil\box2}}%
}
-%
-% All done with double columns.
+
+
+% Finished with with double columns.
\def\enddoublecolumns{%
% The following penalty ensures that the page builder is exercised
% _before_ we change the output routine. This is necessary in the
% goal. When TeX sees \eject from below which follows the final
% section, it invokes the new output routine that we've set after
% \balancecolumns below; \onepageout will try to fit the two columns
- % and the final section into the vbox of \pageheight (see
+ % and the final section into the vbox of \txipageheight (see
% \pagebody), causing an overfull box.
%
% Note that glue won't work here, because glue does not exercise the
\penalty0
%
\output = {%
- % Split the last of the double-column material. Leave it on the
- % current page, no automatic page break.
+ % Split the last of the double-column material.
+ \savemarks
\balancecolumns
%
- % If we end up splitting too much material for the current page,
- % though, there will be another page break right after this \output
- % invocation ends. Having called \balancecolumns once, we do not
+ % Having called \balancecolumns once, we do not
% want to call it again. Therefore, reset \output to its normal
- % definition right away. (We hope \balancecolumns will never be
- % called on to balance too much material, but if it is, this makes
- % the output somewhat more palatable.)
+ % definition right away.
\global\output = {\onepageout{\pagecontents\PAGE}}%
}%
\eject
\endgroup % started in \begindoublecolumns
+ \restoremarks
+ % Leave the double-column material on the current page, no automatic
+ % page break.
+ \box\balancedcolumns
%
% \pagegoal was set to the doubled \vsize above, since we restarted
% the current page. We're now back to normal single-column
% \endgroup where \vsize got restored).
\pagegoal = \vsize
}
+\newbox\balancedcolumns
+\setbox\balancedcolumns=\vbox{shouldnt see this}%
%
-% Called at the end of the double column material.
+% Only called for the last of the double column material. \doublecolumnout
+% does the others.
\def\balancecolumns{%
\setbox0 = \vbox{\unvbox255}% like \box255 but more efficient, see p.120.
\dimen@ = \ht0
\advance\dimen@ by \topskip
\advance\dimen@ by-\baselineskip
- \divide\dimen@ by 2 % target to split to
- %debug\message{final 2-column material height=\the\ht0, target=\the\dimen@.}%
- \splittopskip = \topskip
- % Loop until we get a decent breakpoint.
- {%
- \vbadness = 10000
- \loop
- \global\setbox3 = \copy0
- \global\setbox1 = \vsplit3 to \dimen@
- \ifdim\ht3>\dimen@
- \global\advance\dimen@ by 1pt
- \repeat
- }%
- %debug\message{split to \the\dimen@, column heights: \the\ht1, \the\ht3.}%
- \setbox0=\vbox to\dimen@{\unvbox1}%
- \setbox2=\vbox to\dimen@{\unvbox3}%
+ \ifdim\dimen@<5\baselineskip
+ % Don't split a short final column in two.
+ \setbox2=\vbox{}%
+ \else
+ \divide\dimen@ by 2 % target to split to
+ \dimen@ii = \dimen@
+ \splittopskip = \topskip
+ % Loop until left column is at least as high as the right column.
+ {%
+ \vbadness = 10000
+ \loop
+ \global\setbox3 = \copy0
+ \global\setbox1 = \vsplit3 to \dimen@
+ % Remove glue from bottom of columns to compare
+ % apparent heights.
+ \global\setbox1 = \vbox{\unvbox1\unpenalty\unskip}%
+ \global\setbox3 = \vbox{\unvbox3\unpenalty\unskip}%
+ \ifdim\ht1<\ht3
+ \global\advance\dimen@ by 1pt
+ \repeat
+ }%
+ % 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.
+ % (Note that we have doubled \vsize for the double columns, so
+ % the actual height of the page is 0.5\vsize).
+ \ifdim2\ht1>\vsize
+ % Just split the last of the double column material roughly in half.
+ \setbox2=\box0
+ \setbox0 = \vsplit2 to \dimen@ii
+ \setbox0=\vbox to\ht2{\unvbox0\vfill}%
+ \setbox2=\vbox to\ht2{\unvbox2\vfill}%
+ \else
+ % Compare the heights of the two columns.
+ \ifdim4\ht1>5\ht3
+ % Column heights are too different, so don't make their bottoms
+ % flush with each other.
+ \setbox2=\vbox to \ht1 {\unvbox3\vfill}%
+ \setbox0=\vbox to \ht1 {\unvbox1\vfill}%
+ \else
+ % Make column bottoms flush with each other.
+ \setbox0=\vbox to\dimen@{\unvbox1}%
+ \setbox2=\vbox to\dimen@{\unvbox3}%
+ \fi
+ \fi
+ \fi
%
- \pagesofar
+ \global\setbox\balancedcolumns=\vbox{\pagesofar}%
}
\catcode`\@ = \other
\let\lastnode=\empty % no node to associate with
\writetocentry{part}{#1}{}% but put it in the toc
\headingsoff % no headline or footline on the part page
+ % This outputs a mark at the end of the page that clears \thischapter
+ % and \thissection, as is done in \startcontents.
+ \let\pchapsepmacro\relax
+ \chapmacro{}{Yomitfromtoc}{}%
\chapoddpage
\endgroup
}
% @centerchap is like @unnumbered, but the heading is centered.
\outer\parseargdef\centerchap{%
- % Well, we could do the following in a group, but that would break
- % an assumption that \chapmacro is called at the outermost level.
- % Thus we are safer this way: --kasal, 24feb04
\let\centerparametersmaybe = \centerparameters
\unnmhead0{#1}%
\let\centerparametersmaybe = \relax
% Define plain chapter starts, and page on/off switching for it.
\def\chapbreak{\dobreak \chapheadingskip {-4000}}
+
+% Start a new page
\def\chappager{\par\vfill\supereject}
+
+% \chapoddpage - start on an odd page for a new chapter
% Because \domark is called before \chapoddpage, the filler page will
% get the headings for the next chapter, which is wrong. But we don't
% care -- we just disable all headings on the filler page.
\fi
}
-\def\setchapternewpage #1 {\csname CHAPPAG#1\endcsname}
+\parseargdef\setchapternewpage{\csname CHAPPAG#1\endcsname}
\def\CHAPPAGoff{%
\global\let\contentsalignmacro = \chappager
\CHAPPAGon
-% Chapter opening.
+% \chapmacro - Chapter opening.
%
% #1 is the text, #2 is the section type (Ynumbered, Ynothing,
% Yappendix, Yomitfromtoc), #3 the chapter number.
+% Not used for @heading series.
%
% To test against our argument.
\def\Ynothingkeyword{Ynothing}
-\def\Yomitfromtockeyword{Yomitfromtoc}
\def\Yappendixkeyword{Yappendix}
+\def\Yomitfromtockeyword{Yomitfromtoc}
%
\def\chapmacro#1#2#3{%
+ \expandafter\ifx\thisenv\titlepage\else
+ \checkenv{}% chapters, etc., should not start inside an environment.
+ \fi
+ % FIXME: \chapmacro is currently called from inside \titlepage when
+ % \setcontentsaftertitlepage to print the "Table of Contents" heading, but
+ % this should probably be done by \sectionheading with an option to print
+ % in chapter size.
+ %
% Insert the first mark before the heading break (see notes for \domark).
\let\prevchapterdefs=\lastchapterdefs
\let\prevsectiondefs=\lastsectiondefs
%
{%
\chapfonts \rmisbold
+ \let\footnote=\errfootnoteheading % give better error message
%
% Have to define \lastsection before calling \donoderef, because the
% xref code eventually uses it. On the other hand, it has to be called
}
-% I don't think this chapter style is supported any more, so I'm not
-% updating it with the new noderef stuff. We'll see. --karl, 11aug03.
-%
-\def\setchapterstyle #1 {\csname CHAPF#1\endcsname}
-%
-\def\unnchfopen #1{%
- \chapoddpage
- \vbox{\chapfonts \raggedtitlesettings #1\par}%
- \nobreak\bigskip\nobreak
-}
-\def\chfopen #1#2{\chapoddpage {\chapfonts
-\vbox to 3in{\vfil \hbox to\hsize{\hfil #2} \hbox to\hsize{\hfil #1} \vfil}}%
-\par\penalty 5000 %
-}
-\def\centerchfopen #1{%
- \chapoddpage
- \vbox{\chapfonts \raggedtitlesettings \hfill #1\hfill}%
- \nobreak\bigskip \nobreak
-}
-\def\CHAPFopen{%
- \global\let\chapmacro=\chfopen
- \global\let\centerchapmacro=\centerchfopen}
-
-
% Section titles. These macros combine the section number parts and
% call the generic \sectionheading to do the printing.
%
% Print any size, any type, section title.
%
-% #1 is the text, #2 is the section level (sec/subsec/subsubsec), #3 is
-% the section type for xrefs (Ynumbered, Ynothing, Yappendix), #4 is the
-% section number.
+% #1 is the text of the title,
+% #2 is the section level (sec/subsec/subsubsec),
+% #3 is the section type (Ynumbered, Ynothing, Yappendix, Yomitfromtoc),
+% #4 is the section number.
%
\def\seckeyword{sec}
%
\def\sectionheading#1#2#3#4{%
{%
- \checkenv{}% should not be in an environment.
+ \def\sectionlevel{#2}%
+ \def\temptype{#3}%
+ %
+ % It is ok for the @heading series commands to appear inside an
+ % environment (it's been historically allowed, though the logic is
+ % dubious), but not the others.
+ \ifx\temptype\Yomitfromtockeyword\else
+ \checkenv{}% non-@*heading should not be in an environment.
+ \fi
+ \let\footnote=\errfootnoteheading
%
% Switch to the right set of fonts.
\csname #2fonts\endcsname \rmisbold
%
- \def\sectionlevel{#2}%
- \def\temptype{#3}%
- %
% Insert first mark before the heading break (see notes for \domark).
\let\prevsectiondefs=\lastsectiondefs
\ifx\temptype\Ynothingkeyword
%
% Now the second mark, after the heading break. No break points
% between here and the heading.
- \let\prevsectiondefs=\lastsectiondefs
+ \global\let\prevsectiondefs=\lastsectiondefs
\domark
%
% Only insert the space after the number if we have a section number.
% 1 and 2 (the page numbers aren't printed), and so are the first
% two pages of the document. Thus, we'd have two destinations named
% `1', and two named `2'.
- \ifpdf \global\pdfmakepagedesttrue \fi
+ \ifpdf
+ \global\pdfmakepagedesttrue
+ \else
+ \ifx\XeTeXrevision\thisisundefined
+ \else
+ \global\pdfmakepagedesttrue
+ \fi
+ \fi
}
\savepageno = \pageno
\begingroup % Set up to handle contents files properly.
\raggedbottom % Worry more about breakpoints than the bottom.
- \advance\hsize by -\contentsrightmargin % Don't use the full line length.
+ \entryrightmargin=\contentsrightmargin % Don't use the full line length.
%
% Roman numerals for page numbers.
\ifnum \pageno>0 \global\pageno = \lastnegativepageno \fi
% Chapters, in the main contents.
\def\numchapentry#1#2#3#4{\dochapentry{#2\labelspace#1}{#4}}
-%
+
% Chapters, in the short toc.
% See comments in \dochapentry re vbox and related settings.
\def\shortchapentry#1#2#3#4{%
\setbox0 = \hbox{\putwordAppendix{} M}%
\hbox to \wd0{\putwordAppendix{} #1\hss}}
%
-\def\appentry#1#2#3#4{\dochapentry{\appendixbox{#2}\labelspace#1}{#4}}
+\def\appentry#1#2#3#4{\dochapentry{\appendixbox{#2}\hskip.7em#1}{#4}}
% Unnumbered chapters.
\def\unnchapentry#1#2#3#4{\dochapentry{#1}{#4}}
\def\dochapentry#1#2{%
\penalty-300 \vskip1\baselineskip plus.33\baselineskip minus.25\baselineskip
\begingroup
+ % Move the page numbers slightly to the right
+ \advance\entryrightmargin by -0.05em
\chapentryfonts
\tocentry{#1}{\dopageno\bgroup#2\egroup}%
\endgroup
\catcode `\|=\other
\catcode `\<=\other
\catcode `\>=\other
- \catcode`\`=\other
- \catcode`\'=\other
- \escapechar=`\\
+ \catcode `\`=\other
+ \catcode `\'=\other
%
% ' is active in math mode (mathcode"8000). So reset it, and all our
% other math active characters (just in case), to plain's definitions.
\mathactive
%
+ % Inverse of the list at the beginning of the file.
\let\b=\ptexb
\let\bullet=\ptexbullet
\let\c=\ptexc
\let\+=\tabalign
\let\}=\ptexrbrace
\let\/=\ptexslash
+ \let\sp=\ptexsp
\let\*=\ptexstar
+ %\let\sup=\ptexsup % do not redefine, we want @sup to work in math mode
\let\t=\ptext
- \expandafter \let\csname top\endcsname=\ptextop % outer
+ \expandafter \let\csname top\endcsname=\ptextop % we've made it outer
\let\frenchspacing=\plainfrenchspacing
%
\def\endldots{\mathinner{\ldots\ldots\ldots\ldots}}%
% This space is always present above and below environments.
\newskip\envskipamount \envskipamount = 0pt
-% Make spacing and below environment symmetrical. We use \parskip here
-% to help in doing that, since in @example-like environments \parskip
-% is reset to zero; thus the \afterenvbreak inserts no space -- but the
-% start of the next paragraph will insert \parskip.
-%
-\def\aboveenvbreak{{%
+% Make spacing and below environment symmetrical. We use \parskip here
+% to help in doing that, since in @example-like environments \parskip
+% is reset to zero; thus the \afterenvbreak inserts no space -- but the
+% start of the next paragraph will insert \parskip.
+%
+\def\aboveenvbreak{{%
+ % =10000 instead of <10000 because of a special case in \itemzzz and
+ % \sectionheading, q.v.
+ \ifnum \lastpenalty=10000 \else
+ \advance\envskipamount by \parskip
+ \endgraf
+ \ifdim\lastskip<\envskipamount
+ \removelastskip
+ \ifnum\lastpenalty<10000
+ % Penalize breaking before the environment, because preceding text
+ % often leads into it.
+ \penalty100
+ \fi
+ \vskip\envskipamount
+ \fi
+ \fi
+}}
+
+\def\afterenvbreak{{%
% =10000 instead of <10000 because of a special case in \itemzzz and
% \sectionheading, q.v.
\ifnum \lastpenalty=10000 \else
\fi
}}
-\let\afterenvbreak = \aboveenvbreak
-
% \nonarrowing is a flag. If "set", @lisp etc don't narrow margins; it will
% also clear it, so that its embedded environments do the narrowing again.
\let\nonarrowing=\relax
% side, and for 6pt waste from
% each corner char, and rule thickness
\normbskip=\baselineskip \normpskip=\parskip \normlskip=\lineskip
- % Flag to tell @lisp, etc., not to narrow margin.
- \let\nonarrowing = t%
%
% If this cartouche directly follows a sectioning command, we need the
% \parskip glue (backspaced over by default) or the cartouche can
% collide with the section heading.
\ifnum\lastpenalty>10000 \vskip\parskip \penalty\lastpenalty \fi
%
- \vbox\bgroup
+ \setbox\groupbox=\vbox\bgroup
\baselineskip=0pt\parskip=0pt\lineskip=0pt
\carttop
\hbox\bgroup
\egroup
\cartbot
\egroup
+ \addgroupbox
\checkinserts
}
\newdimen\nonfillparindent
\def\nonfillstart{%
\aboveenvbreak
- \hfuzz = 12pt % Don't be fussy
+ \ifdim\hfuzz < 12pt \hfuzz = 12pt \fi % Don't be fussy
\sepspaces % Make spaces be word-separators rather than space tokens.
\let\par = \lisppar % don't ignore blank lines
\obeylines % each line of input is a line of output
% @raggedright does more-or-less normal line breaking but no right
-% justification. From plain.tex.
+% justification. From plain.tex. Don't stretch around special
+% characters in urls in this environment, since the stretch at the right
+% should be enough.
\envdef\raggedright{%
- \rightskip0pt plus2em \spaceskip.3333em \xspaceskip.5em\relax
+ \rightskip0pt plus2.4em \spaceskip.3333em \xspaceskip.5em\relax
+ \def\urefprestretchamount{0pt}%
+ \def\urefpoststretchamount{0pt}%
}
\let\Eraggedright\par
% typesetting commands (@smallbook, font changes, etc.) have to be done
% beforehand -- and a) we want @copying to be done first in the source
% file; b) letting users define the frontmatter in as flexible order as
-% possible is very desirable.
+% possible is desirable.
%
\def\copying{\checkenv{}\begingroup\scanargctxt\docopying}
\def\docopying#1@end copying{\endgroup\def\copyingtext{#1}}
\temp
}
-% \domakedefun \deffn \deffnx \deffnheader
+% \domakedefun \deffn \deffnx \deffnheader { (defn. of \deffnheader) }
%
% Define \deffn and \deffnx, without parameters.
% \deffnheader has to be defined explicitly.
}
\fi
-\def\scanmacro#1{\begingroup
+\let\aftermacroxxx\relax
+\def\aftermacro{\aftermacroxxx}
+
+% alias because \c means cedilla in @tex or @math
+\let\texinfoc=\c
+
+\newcount\savedcatcodeone
+\newcount\savedcatcodetwo
+
+% Used at the time of macro expansion.
+% Argument is macro body with arguments substituted
+\def\scanmacro#1{%
\newlinechar`\^^M
- \let\xeatspaces\eatspaces
+ \def\xeatspaces{\eatspaces}%
+ %
+ % Temporarily undo catcode changes of \printindex. Set catcode of @ to
+ % 0 so that @-commands in macro expansions aren't printed literally when
+ % formatting an index file, where \ is used as the escape character.
+ \savedcatcodeone=\catcode`\@
+ \savedcatcodetwo=\catcode`\\
+ \catcode`\@=0
+ \catcode`\\=\active
%
- % Undo catcode changes of \startcontents and \doprintindex
- % When called from @insertcopying or (short)caption, we need active
- % backslash to get it printed correctly. Previously, we had
- % \catcode`\\=\other instead. We'll see whether a problem appears
- % with macro expansion. --kasal, 19aug04
- \catcode`\@=0 \catcode`\\=\active \escapechar=`\@
+ % Process the macro body under the current catcode regime.
+ \scantokens{#1@texinfoc}\aftermacro%
%
- % ... and for \example:
- \spaceisspace
+ \catcode`\@=\savedcatcodeone
+ \catcode`\\=\savedcatcodetwo
%
- % The \empty here causes a following catcode 5 newline to be eaten as
- % part of reading whitespace after a control sequence. It does not
- % eat a catcode 13 newline. There's no good way to handle the two
- % cases (untried: maybe e-TeX's \everyeof could help, though plain TeX
- % would then have different behavior). See the Macro Details node in
- % the manual for the workaround we recommend for macros and
- % line-oriented commands.
- %
- \scantokens{#1\empty}%
-\endgroup}
+ % The \texinfoc is to remove the \newlinechar added by \scantokens, and
+ % can be noticed by \parsearg.
+ % The \aftermacro allows a \comment at the end of the macro definition
+ % to duplicate itself past the final \newlinechar added by \scantokens:
+ % this is used in the definition of \group to comment out a newline. We
+ % don't do the same for \c to support Texinfo files with macros that ended
+ % with a @c, which should no longer be necessary.
+ % We avoid surrounding the call to \scantokens with \bgroup and \egroup
+ % to allow macros to open or close groups themselves.
+}
+% Used for copying and captions
\def\scanexp#1{%
- \edef\temp{\noexpand\scanmacro{#1}}%
- \temp
+ \expandafter\scanmacro\expandafter{#1}%
}
\newcount\paramno % Count of parameters
\newif\ifrecursive % Is it recursive?
% List of all defined macros in the form
-% \definedummyword\macro1\definedummyword\macro2...
+% \commondummyword\macro1\commondummyword\macro2...
% Currently is also contains all @aliases; the list can be split
% if there is a need.
\def\macrolist{}
% Add the macro to \macrolist
\def\addtomacrolist#1{\expandafter \addtomacrolistxxx \csname#1\endcsname}
\def\addtomacrolistxxx#1{%
- \toks0 = \expandafter{\macrolist\definedummyword#1}%
+ \toks0 = \expandafter{\macrolist\commondummyword#1}%
\xdef\macrolist{\the\toks0}%
}
\catcode`\+=\other
\catcode`\<=\other
\catcode`\>=\other
- \catcode`\@=\other
\catcode`\^=\other
\catcode`\_=\other
\catcode`\|=\other
\catcode`\~=\other
- \ifx\declaredencoding\ascii \else \setnonasciicharscatcodenonglobal\other \fi
+ \passthroughcharstrue
}
\def\scanargctxt{% used for copying and captions, not macros.
\scanctxt
+ \catcode`\@=\other
\catcode`\\=\other
\catcode`\^^M=\other
}
\def\macrobodyctxt{% used for @macro definitions
\scanctxt
+ \catcode`\ =\other
+ \catcode`\@=\other
\catcode`\{=\other
\catcode`\}=\other
\catcode`\^^M=\other
\usembodybackslash
}
-\def\macroargctxt{% used when scanning invocations
+% Used when scanning braced macro arguments. Note, however, that catcode
+% changes here are ineffectual if the macro invocation was nested inside
+% an argument to another Texinfo command.
+\def\macroargctxt{%
\scanctxt
- \catcode`\\=0
+ \catcode`\ =\active
+ \catcode`\^^M=\other
+ \catcode`\\=\active
}
-% why catcode 0 for \ in the above? To recognize \\ \{ \} as "escapes"
-% for the single characters \ { }. Thus, we end up with the "commands"
-% that would be written @\ @{ @} in a Texinfo document.
-%
-% We already have @{ and @}. For @\, we define it here, and only for
-% this purpose, to produce a typewriter backslash (so, the @\ that we
-% define for @math can't be used with @macro calls):
-%
-\def\\{\normalbackslash}%
-%
-% We would like to do this for \, too, since that is what makeinfo does.
-% But it is not possible, because Texinfo already has a command @, for a
-% cedilla accent. Documents must use @comma{} instead.
-%
-% \anythingelse will almost certainly be an error of some kind.
+\def\macrolineargctxt{% used for whole-line arguments without braces
+ \scanctxt
+ \catcode`\{=\other
+ \catcode`\}=\other
+}
% \mbodybackslash is the definition of \ in @macro bodies.
% It maps \foo\ => \csname macarg.foo\endcsname => #N
% Remove the macro name from \macrolist:
\begingroup
\expandafter\let\csname#1\endcsname \relax
- \let\definedummyword\unmacrodo
+ \let\commondummyword\unmacrodo
\xdef\macrolist{\macrolist}%
\endgroup
\else
\ifx #1\relax
% remove this
\else
- \noexpand\definedummyword \noexpand#1%
+ \noexpand\commondummyword \noexpand#1%
\fi
}
-% This makes use of the obscure feature that if the last token of a
-% <parameter list> is #, then the preceding argument is delimited by
-% an opening brace, and that opening brace is not consumed.
+% \getargs -- Parse the arguments to a @macro line. Set \macname to
+% the name of the macro, and \argl to the braced argument list.
\def\getargs#1{\getargsxxx#1{}}
\def\getargsxxx#1#{\getmacname #1 \relax\getmacargs}
\def\getmacname#1 #2\relax{\macname={#1}}
\def\getmacargs#1{\def\argl{#1}}
+% This made use of the feature that if the last token of a
+% <parameter list> is #, then the preceding argument is delimited by
+% an opening brace, and that opening brace is not consumed.
-% For macro processing make @ a letter so that we can make Texinfo private macro names.
-\edef\texiatcatcode{\the\catcode`\@}
-\catcode `@=11\relax
-
-% Parse the optional {params} list. Set up \paramno and \paramlist
-% so \defmacro knows what to do. Define \macarg.BLAH for each BLAH
-% in the params list to some hook where the argument si to be expanded. If
-% there are less than 10 arguments that hook is to be replaced by ##N where N
+% Parse the optional {params} list to @macro or @rmacro.
+% Set \paramno to the number of arguments,
+% and \paramlist to a parameter text for the macro (e.g. #1,#2,#3 for a
+% three-param macro.) Define \macarg.BLAH for each BLAH in the params
+% 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.
%
% That gets used by \mbodybackslash (above).
%
-% We need to get `macro parameter char #' into several definitions.
-% The technique used is stolen from LaTeX: let \hash be something
-% unexpandable, insert that wherever you need a #, and then redefine
-% it to # just before using the token list produced.
-%
-% The same technique is used to protect \eatspaces till just before
-% the macro is used.
-%
-% If there are 10 or more arguments, a different technique is used, where the
-% hook remains in the body, and when macro is to be expanded the body is
-% processed again to replace the arguments.
-%
-% In that case, the hook is \the\toks N-1, and we simply set \toks N-1 to the
-% argument N value and then \edef the body (nothing else will expand because of
-% the catcode regime underwhich the body was input).
+% If there are 10 or more arguments, a different technique is used: see
+% \parsemmanyargdef.
%
-% If you compile with TeX (not eTeX), and you have macros with 10 or more
-% arguments, you need that no macro has more than 256 arguments, otherwise an
-% error is produced.
\def\parsemargdef#1;{%
\paramno=0\def\paramlist{}%
\let\hash\relax
+ % \hash is redefined to `#' later to get it into definitions
\let\xeatspaces\relax
\parsemargdefxxx#1,;,%
- % In case that there are 10 or more arguments we parse again the arguments
- % list to set new definitions for the \macarg.BLAH macros corresponding to
- % each BLAH argument. It was anyhow needed to parse already once this list
- % in order to count the arguments, and as macros with at most 9 arguments
- % are by far more frequent than macro with 10 or more arguments, defining
- % twice the \macarg.BLAH macros does not cost too much processing power.
\ifnum\paramno<10\relax\else
\paramno0\relax
\parsemmanyargdef@@#1,;,% 10 or more arguments
\edef\paramlist{\paramlist\hash\the\paramno,}%
\fi\next}
+% \parsemacbody, \parsermacbody
+%
+% 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
+% body to be transformed.
+% Set \macrobody to the body of the macro, and call \defmacro.
+%
+{\catcode`\ =\other\long\gdef\parsemacbody#1@end macro{%
+\xdef\macrobody{\eatcr{#1}}\endgroup\defmacro}}%
+{\catcode`\ =\other\long\gdef\parsermacbody#1@end rmacro{%
+\xdef\macrobody{\eatcr{#1}}\endgroup\defmacro}}%
+
+% Make @ a letter, so that we can make private-to-Texinfo macro names.
+\edef\texiatcatcode{\the\catcode`\@}
+\catcode `@=11\relax
+
+%%%%%%%%%%%%%% Code for > 10 arguments only %%%%%%%%%%%%%%%%%%
+
+% If there are 10 or more arguments, a different technique is used, where the
+% hook remains in the body, and when macro is to be expanded the body is
+% processed again to replace the arguments.
+%
+% In that case, the hook is \the\toks N-1, and we simply set \toks N-1 to the
+% argument N value and then \edef the body (nothing else will expand because of
+% the catcode regime under which the body was input).
+%
+% If you compile with TeX (not eTeX), and you have macros with 10 or more
+% arguments, no macro can have more than 256 arguments (else error).
+%
+% In case that there are 10 or more arguments we parse again the arguments
+% list to set new definitions for the \macarg.BLAH macros corresponding to
+% each BLAH argument. It was anyhow needed to parse already once this list
+% in order to count the arguments, and as macros with at most 9 arguments
+% are by far more frequent than macro with 10 or more arguments, defining
+% twice the \macarg.BLAH macros does not cost too much processing power.
\def\parsemmanyargdef@@#1,{%
\if#1;\let\next=\relax
\else
\advance\paramno by 1\relax
\fi\next}
-% These two commands read recursive and nonrecursive macro bodies.
-% (They're different since rec and nonrec macros end differently.)
-%
-
-\catcode `\@\texiatcatcode
-\long\def\parsemacbody#1@end macro%
-{\xdef\temp{\eatcr{#1}}\endgroup\defmacro}%
-\long\def\parsermacbody#1@end rmacro%
-{\xdef\temp{\eatcr{#1}}\endgroup\defmacro}%
-\catcode `\@=11\relax
\let\endargs@\relax
\let\nil@\relax
\long\def\nillm@{\nil@}%
% This macro is expanded during the Texinfo macro expansion, not during its
-% definition. It gets all the arguments values and assigns them to macros
+% definition. It gets all the arguments' values and assigns them to macros
% macarg.ARGNAME
%
% #1 is the macro name
\getargvals@@
\fi
}
-
-%
\def\getargvals@@{%
\ifx\paramlist\nilm@
% Some sanity check needed here that \argvaluelist is also empty.
}
% Replace arguments by their values in the macro body, and place the result
-% in macro \@tempa
+% 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
\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.
\expandafter
\endgroup
\macargdeflist@
\next
}
-% Save the token stack pointer into macro #1
-\def\texisavetoksstackpoint#1{\edef#1{\the\@cclvi}}
-% Restore the token stack pointer from number in macro #1
-\def\texirestoretoksstackpoint#1{\expandafter\mathchardef\expandafter\@cclvi#1\relax}
-% newtoks that can be used non \outer .
-\def\texinonouternewtoks{\alloc@ 5\toks \toksdef \@cclvi}
-
-% Tailing missing arguments are set to empty
+% Trailing missing arguments are set to empty.
+%
\def\setemptyargvalues@{%
\ifx\paramlist\nilm@
\let\next\macargexpandinbody@
\long\def#2{#4}%
}
-% This defines a Texinfo @macro. There are eight cases: recursive and
-% nonrecursive macros of zero, one, up to nine, and many arguments.
-% Much magic with \expandafter here.
+
+%%%%%%%%%%%%%% End of code for > 10 arguments %%%%%%%%%%%%%%%%%%
+
+
+% This defines a Texinfo @macro or @rmacro, called by \parsemacbody.
+% \macrobody has the body of the macro in it, with placeholders for
+% its parameters, looking like "\xeatspaces{\hash 1}".
+% \paramno is the number of parameters
+% \paramlist is a TeX parameter text, e.g. "#1,#2,#3,"
+% There are four cases: macros of zero, one, up to nine, and many arguments.
% \xdef is used so that macro definitions will survive the file
-% they're defined in; @include reads the file inside a group.
+% they're defined in: @include reads the file inside a group.
%
\def\defmacro{%
\let\hash=##% convert placeholders to macro parameter chars
- \ifrecursive
- \ifcase\paramno
- % 0
- \expandafter\xdef\csname\the\macname\endcsname{%
- \noexpand\scanmacro{\temp}}%
- \or % 1
- \expandafter\xdef\csname\the\macname\endcsname{%
- \bgroup\noexpand\macroargctxt
- \noexpand\braceorline
- \expandafter\noexpand\csname\the\macname xxx\endcsname}%
- \expandafter\xdef\csname\the\macname xxx\endcsname##1{%
- \egroup\noexpand\scanmacro{\temp}}%
- \else
- \ifnum\paramno<10\relax % at most 9
- \expandafter\xdef\csname\the\macname\endcsname{%
- \bgroup\noexpand\macroargctxt
- \noexpand\csname\the\macname xx\endcsname}%
- \expandafter\xdef\csname\the\macname xx\endcsname##1{%
- \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}%
- \expandafter\expandafter
- \expandafter\xdef
- \expandafter\expandafter
- \csname\the\macname xxx\endcsname
- \paramlist{\egroup\noexpand\scanmacro{\temp}}%
- \else % 10 or more
- \expandafter\xdef\csname\the\macname\endcsname{%
- \noexpand\getargvals@{\the\macname}{\argl}%
- }%
- \global\expandafter\let\csname mac.\the\macname .body\endcsname\temp
- \global\expandafter\let\csname mac.\the\macname .recurse\endcsname\gobble
- \fi
- \fi
+ \ifnum\paramno=1
+ \def\xeatspaces##1{##1}%
+ % This removes the pair of braces around the argument. We don't
+ % use \eatspaces, because this can cause ends of lines to be lost
+ % when the argument to \eatspaces is read, leading to line-based
+ % commands like "@itemize" not being read correctly.
\else
- \ifcase\paramno
- % 0
+ \let\xeatspaces\relax % suppress expansion
+ \fi
+ \ifcase\paramno
+ % 0
+ \expandafter\xdef\csname\the\macname\endcsname{%
+ \noexpand\scanmacro{\macrobody}}%
+ \or % 1
+ \expandafter\xdef\csname\the\macname\endcsname{%
+ \bgroup
+ \noexpand\braceorline
+ \expandafter\noexpand\csname\the\macname @@@\endcsname}%
+ \expandafter\xdef\csname\the\macname @@@\endcsname##1{%
+ \egroup
+ \noexpand\scanmacro{\macrobody}%
+ }%
+ \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
+ % comma.
+ % @MACNAME@@@ removes braces surrounding the argument list.
+ % @MACNAME@@@@ scans the macro body with arguments substituted.
\expandafter\xdef\csname\the\macname\endcsname{%
- \noexpand\norecurse{\the\macname}%
- \noexpand\scanmacro{\temp}\egroup}%
- \or % 1
+ \bgroup
+ \noexpand\expandafter % This \expandafter skip any spaces after the
+ \noexpand\macroargctxt % macro before we change the catcode of space.
+ \noexpand\expandafter
+ \expandafter\noexpand\csname\the\macname @@\endcsname}%
+ \expandafter\xdef\csname\the\macname @@\endcsname##1{%
+ \noexpand\passargtomacro
+ \expandafter\noexpand\csname\the\macname @@@\endcsname{##1,}}%
+ \expandafter\xdef\csname\the\macname @@@\endcsname##1{%
+ \expandafter\noexpand\csname\the\macname @@@@\endcsname ##1}%
+ \expandafter\expandafter
+ \expandafter\xdef
+ \expandafter\expandafter
+ \csname\the\macname @@@@\endcsname\paramlist{%
+ \egroup\noexpand\scanmacro{\macrobody}}%
+ \else % 10 or more:
\expandafter\xdef\csname\the\macname\endcsname{%
- \bgroup\noexpand\macroargctxt
- \noexpand\braceorline
- \expandafter\noexpand\csname\the\macname xxx\endcsname}%
- \expandafter\xdef\csname\the\macname xxx\endcsname##1{%
- \egroup
- \noexpand\norecurse{\the\macname}%
- \noexpand\scanmacro{\temp}\egroup}%
- \else % at most 9
- \ifnum\paramno<10\relax
- \expandafter\xdef\csname\the\macname\endcsname{%
- \bgroup\noexpand\macroargctxt
- \expandafter\noexpand\csname\the\macname xx\endcsname}%
- \expandafter\xdef\csname\the\macname xx\endcsname##1{%
- \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}%
- \expandafter\expandafter
- \expandafter\xdef
- \expandafter\expandafter
- \csname\the\macname xxx\endcsname
- \paramlist{%
- \egroup
- \noexpand\norecurse{\the\macname}%
- \noexpand\scanmacro{\temp}\egroup}%
- \else % 10 or more:
- \expandafter\xdef\csname\the\macname\endcsname{%
- \noexpand\getargvals@{\the\macname}{\argl}%
- }%
- \global\expandafter\let\csname mac.\the\macname .body\endcsname\temp
- \global\expandafter\let\csname mac.\the\macname .recurse\endcsname\norecurse
- \fi
+ \noexpand\getargvals@{\the\macname}{\argl}%
+ }%
+ \global\expandafter\let\csname mac.\the\macname .body\endcsname\macrobody
+ \global\expandafter\let\csname mac.\the\macname .recurse\endcsname\gobble
\fi
\fi}
-\catcode `\@\texiatcatcode\relax
+\catcode `\@\texiatcatcode\relax % end private-to-Texinfo catcodes
\def\norecurse#1{\bgroup\cslet{#1}{macsave.#1}}
-% \braceorline decides whether the next nonwhitespace character is a
-% {. If so it reads up to the closing }, if not, it reads the whole
-% line. Whatever was read is then fed to the next control sequence
-% as an argument (by \parsebrace or \parsearg).
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+{\catcode`\@=0 \catcode`\\=13 % We need to manipulate \ so use @ as escape
+@catcode`@_=11 % private names
+@catcode`@!=11 % used as argument separator
+
+% \passargtomacro#1#2 -
+% 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
+% 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
+%
+% THE_MACRO ARG_RESULT ! {PENDING_BS} NEXT_TOKEN (... rest of input)
+%
+% where:
+% THE_MACRO - name of the macro we want to call
+% ARG_RESULT - argument list we build to pass to that macro
+% PENDING_BS - either a backslash or nothing
+% NEXT_TOKEN - used to look ahead in the input stream to see what's coming next
+
+@gdef@passargtomacro#1#2{%
+ @add_segment #1!{}@relax#2\@_finish\%
+}
+@gdef@_finish{@_finishx} @global@let@_finishx@relax
+
+% #1 - THE_MACRO ARG_RESULT
+% #2 - PENDING_BS
+% #3 - NEXT_TOKEN
+% #4 used to look ahead
+%
+% 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
+ @else
+ @expandafter@add_segment
+ @fi#1!{#2}#4#4%
+}
+
+% #1 - THE_MACRO ARG_RESULT
+% #2 - PENDING_BS
+% #3 - NEXT_TOKEN
+% #4 should be a backslash, which is gobbled.
+% #5 looks ahead
+%
+% Double backslash found. Add a single backslash, and look ahead.
+@gdef@gobble_and_check_finish#1!#2#3#4#5{%
+ @add_segment#1\!{}#5#5%
+}
+
+@gdef@is_fi{@fi}
+
+% #1 - THE_MACRO ARG_RESULT
+% #2 - PENDING_BS
+% #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,
+% 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
+% added to ARG_RESULT.
+@gdef@add_segment#1!#2#3#4\{%
+@ifx#3@_finish
+ @call_the_macro#1!%
+@else
+ % 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
+ % long #4 is.
+}
+
+% #1 - THE_MACRO
+% #2 - ARG_RESULT
+% #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}}
+
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% \braceorline MAC is used for a one-argument macro MAC. It checks
+% whether the next non-whitespace character is a {. It sets the context
+% 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\else
- \expandafter\parsearg
+ \ifx\nchar\bgroup
+ \macroargctxt
+ \expandafter\passargtomacro
+ \else
+ \macrolineargctxt\expandafter\parsearg
\fi \macnamexxx}
\pdfmkdest{#1}%
\iflinks
{%
+ \requireauxfile
\atdummies % preserve commands, but don't expand them
+ % match definition in \xrdef, \refx, \xrefX.
+ \def\value##1{##1}%
\edef\writexrdef##1##2{%
\write\auxfile{@xrdef{#1-% #1 of \setref, expanded by the \edef
##1}{##2}}% these are parameters of \writexrdef
% node name, #4 the name of the Info file, #5 the name of the printed
% manual. All but the node name can be omitted.
%
-\def\pxref#1{\putwordsee{} \xrefX[#1,,,,,,,]}
-\def\xref#1{\putwordSee{} \xrefX[#1,,,,,,,]}
-\def\ref#1{\xrefX[#1,,,,,,,]}
+\def\pxref{\putwordsee{} \xrefXX}
+\def\xref{\putwordSee{} \xrefXX}
+\def\ref{\xrefXX}
+
+\def\xrefXX#1{\def\xrefXXarg{#1}\futurelet\tokenafterxref\xrefXXX}
+\def\xrefXXX{\expandafter\xrefX\expandafter[\xrefXXarg,,,,,,,]}
%
\newbox\toprefbox
\newbox\printedrefnamebox
%
% Make link in pdf output.
\ifpdf
+ % For pdfTeX and LuaTeX
{\indexnofonts
- \turnoffactive
\makevalueexpandable
+ \turnoffactive
% This expands tokens, so do it after making catcode changes, so _
% etc. don't get their TeX definitions. This ignores all spaces in
% #4, including (wrongly) those in the middle of the filename.
%
% This (wrongly) does not take account of leading or trailing
% spaces in #1, which should be ignored.
- \edef\pdfxrefdest{#1}%
+ \iftxiuseunicodedestname
+ \ifx \declaredencoding \latone
+ % Pass through Latin-1 characters.
+ \else
+ \ifx \declaredencoding \utfeight
+ % Pass through Unicode characters.
+ \else
+ % Use ASCII approximations in destination names.
+ \passthroughcharsfalse
+ \fi
+ \fi
+ \else
+ % Use ASCII approximations in destination names.
+ \passthroughcharsfalse
+ \fi
+ \def\pdfxrefdest{#1}%
+ %
\ifx\pdfxrefdest\empty
\def\pdfxrefdest{Top}% no empty targets
\else
\fi
}%
\setcolor{\linkcolor}%
+ \else
+ \ifx\XeTeXrevision\thisisundefined
+ \else
+ % For XeTeX
+ {\indexnofonts
+ \makevalueexpandable
+ \turnoffactive
+ % This expands tokens, so do it after making catcode changes, so _
+ % etc. don't get their TeX definitions. This ignores all spaces in
+ % #4, including (wrongly) those in the middle of the filename.
+ \getfilename{#4}%
+ %
+ % This (wrongly) does not take account of leading or trailing
+ % spaces in #1, which should be ignored.
+ \iftxiuseunicodedestname
+ % Pass through Unicode characters.
+ \else
+ % Use ASCII approximations in destination names.
+ \passthroughcharsfalse
+ \fi
+ \def\pdfxrefdest{#1}%
+ %
+ \ifx\pdfxrefdest\empty
+ \def\pdfxrefdest{Top}% no empty targets
+ \else
+ \txiescapepdf\pdfxrefdest % escape PDF special chars
+ \fi
+ %
+ \leavevmode
+ \ifnum\filenamelength>0
+ % With default settings,
+ % XeTeX (xdvipdfmx) replaces link destination names with integers.
+ % In this case, the replaced destination names of
+ % remote PDFs are no longer known. In order to avoid a replacement,
+ % you can use xdvipdfmx's command line option `-C 0x0010'.
+ % If you use XeTeX 0.99996+ (TeX Live 2016+),
+ % this command line option is no longer necessary
+ % because we can use the `dvipdfmx:config' special.
+ \special{pdf:bann << /Border [0 0 0] /Type /Annot /Subtype /Link /A
+ << /S /GoToR /F (\the\filename.pdf) /D (\pdfxrefdest) >> >>}%
+ \else
+ \special{pdf:bann << /Border [0 0 0] /Type /Annot /Subtype /Link /A
+ << /S /GoTo /D (\pdfxrefdest) >> >>}%
+ \fi
+ }%
+ \setcolor{\linkcolor}%
+ \fi
\fi
- %
- % Float references are printed completely differently: "Figure 1.2"
- % instead of "[somenode], p.3". We distinguish them by the
- % LABEL-title being set to a magic string.
{%
% Have to otherify everything special to allow the \csname to
% include an _ in the xref name, etc.
\indexnofonts
\turnoffactive
+ \def\value##1{##1}%
\expandafter\global\expandafter\let\expandafter\Xthisreftitle
\csname XR#1-title\endcsname
}%
+ %
+ % Float references are printed completely differently: "Figure 1.2"
+ % instead of "[somenode], p.3". \iffloat distinguishes them by
+ % \Xthisreftitle being set to a magic string.
\iffloat\Xthisreftitle
% If the user specified the print name (third arg) to the ref,
% print it instead of our usual "Figure 1.2".
%
% output the `page 3'.
\turnoffactive \putwordpage\tie\refx{#1-pg}{}%
+ % Add a , if xref followed by a space
+ \if\space\noexpand\tokenafterxref ,%
+ \else\ifx\ \tokenafterxref ,% @TAB
+ \else\ifx\*\tokenafterxref ,% @*
+ \else\ifx\ \tokenafterxref ,% @SPACE
+ \else\ifx\
+ \tokenafterxref ,% @NL
+ \else\ifx\tie\tokenafterxref ,% @tie
+ \fi\fi\fi\fi\fi\fi
\fi\fi
\fi
\endlink
\fi\fi\fi
}
-% Define \refx{NAME}{SUFFIX} to reference a cross-reference string named NAME.
-% If its value is nonempty, SUFFIX is output afterward.
-%
+% \refx{NAME}{SUFFIX} - reference a cross-reference string named NAME. SUFFIX
+% is output afterwards if non-empty.
\def\refx#1#2{%
+ \requireauxfile
{%
\indexnofonts
\otherbackslash
+ \def\value##1{##1}%
\expandafter\global\expandafter\let\expandafter\thisrefX
\csname XR#1\endcsname
}%
#2% Output the suffix in any case.
}
-% This is the macro invoked by entries in the aux file. Usually it's
-% just a \def (we prepend XR to the control sequence name to avoid
-% collisions). But if this is a float type, we have more work to do.
+% 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{%
- {% The node name might contain 8-bit characters, which in our current
- % implementation are changed to commands like @'e. Don't let these
- % mess up the control sequence name.
+ {% Expand the node or anchor name to remove control sequences.
+ % \turnoffactive stops 8-bit characters being changed to commands
+ % like @'e. \refx does the same to retrieve the value in the definition.
\indexnofonts
\turnoffactive
+ \def\value##1{##1}%
\xdef\safexrefname{#1}%
}%
%
\fi
}
+% If working on a large document in chapters, it is convenient to
+% be able to disable indexing, cross-referencing, and contents, for test runs.
+% This is done with @novalidate at the beginning of the file.
+%
+\newif\iflinks \linkstrue % by default we want the aux files.
+\let\novalidate = \linksfalse
+
+% Used when writing to the aux file, or when using data from it.
+\def\requireauxfile{%
+ \iflinks
+ \tryauxfile
+ % Open the new aux file. TeX will close it automatically at exit.
+ \immediate\openout\auxfile=\jobname.aux
+ \fi
+ \global\let\requireauxfile=\relax % Only do this once.
+}
+
% Read the last existing aux file, if any. No error if none exists.
%
\def\tryauxfile{%
% now. --karl, 15jan04.
\catcode`\\=\other
%
- % Make the characters 128-255 be printing characters.
- {%
- \count1=128
- \def\loop{%
- \catcode\count1=\other
- \advance\count1 by 1
- \ifnum \count1<256 \loop \fi
- }%
- }%
- %
% @ is our escape character in .aux files, and we need braces.
\catcode`\{=1
\catcode`\}=2
%
% Auto-number footnotes. Otherwise like plain.
\gdef\footnote{%
- \let\indent=\ptexindent
- \let\noindent=\ptexnoindent
\global\advance\footnoteno by \@ne
\edef\thisfootno{$^{\the\footnoteno}$}%
%
%
\gdef\dofootnote{%
\insert\footins\bgroup
+ %
+ % Nested footnotes are not supported in TeX, that would take a lot
+ % more work. (\startsavinginserts does not suffice.)
+ \let\footnote=\errfootnotenest
+ %
% We want to typeset this text as a normal paragraph, even if the
% footnote reference occurs in (for example) a display environment.
% So reset some parameters.
- \hsize=\pagewidth
+ \hsize=\txipagewidth
\interlinepenalty\interfootnotelinepenalty
\splittopskip\ht\strutbox % top baseline for broken footnotes
\splitmaxdepth\dp\strutbox
}
}%end \catcode `\@=11
+\def\errfootnotenest{%
+ \errhelp=\EMsimple
+ \errmessage{Nested footnotes not supported in texinfo.tex,
+ even though they work in makeinfo; sorry}
+}
+
+\def\errfootnoteheading{%
+ \errhelp=\EMsimple
+ \errmessage{Footnotes in chapters, sections, etc., are not supported}
+}
+
% In case a @footnote appears in a vbox, save the footnote text and create
% the real \insert just after the vbox finished. Otherwise, the insertion
% would be lost.
% Similarly, if a @footnote appears inside an alignment, save the footnote
% text to a box and make the \insert when a row of the table is finished.
% And the same can be done for other insert classes. --kasal, 16nov03.
-
+%
% Replace the \insert primitive by a cheating macro.
% Deeper inside, just make sure that the saved insertions are not spilled
% out prematurely.
\def\imagexxx#1,#2,#3,#4,#5,#6\finish{\begingroup
\catcode`\^^M = 5 % in case we're inside an example
\normalturnoffactive % allow _ et al. in names
+ \def\xprocessmacroarg{\eatspaces}% in case we are being used via a macro
% If the image is by itself, center it.
\ifvmode
\imagevmodetrue
%
% Output the image.
\ifpdf
+ % For pdfTeX and LuaTeX <= 0.80
\dopdfimage{#1}{#2}{#3}%
\else
- % \epsfbox itself resets \epsf?size at each figure.
- \setbox0 = \hbox{\ignorespaces #2}\ifdim\wd0 > 0pt \epsfxsize=#2\relax \fi
- \setbox0 = \hbox{\ignorespaces #3}\ifdim\wd0 > 0pt \epsfysize=#3\relax \fi
- \epsfbox{#1.eps}%
+ \ifx\XeTeXrevision\thisisundefined
+ % For epsf.tex
+ % \epsfbox itself resets \epsf?size at each figure.
+ \setbox0 = \hbox{\ignorespaces #2}%
+ \ifdim\wd0 > 0pt \epsfxsize=#2\relax \fi
+ \setbox0 = \hbox{\ignorespaces #3}%
+ \ifdim\wd0 > 0pt \epsfysize=#3\relax \fi
+ \epsfbox{#1.eps}%
+ \else
+ % For XeTeX
+ \doxeteximage{#1}{#2}{#3}%
+ \fi
\fi
%
\ifimagevmode
%
\ifx\thiscaption\empty \else
\ifx\floatident\empty \else
- \appendtomacro\captionline{: }% had ident, so need a colon between
+ \appendtomacro\captionline{: }% had ident, so need a colon between
\fi
%
% caption text.
% \floatlabel-lof. Besides \floatident, we include the short
% caption if specified, else the full caption if specified, else nothing.
{%
+ \requireauxfile
\atdummies
%
- % since we read the caption text in the macro world, where ^^M
- % is turned into a normal character, we have to scan it back, so
- % we don't write the literal three characters "^^M" into the aux file.
- \scanexp{%
- \xdef\noexpand\gtemp{%
- \ifx\thisshortcaption\empty
- \thiscaption
- \else
- \thisshortcaption
- \fi
- }%
- }%
+ \ifx\thisshortcaption\empty
+ \def\gtemp{\thiscaption}%
+ \else
+ \def\gtemp{\thisshortcaption}%
+ \fi
\immediate\write\auxfile{@xrdef{\floatlabel-lof}{\floatident
- \ifx\gtemp\empty \else : \gtemp \fi}}%
+ \ifx\gtemp\empty \else : \gtemp \fi}}%
}%
\fi
\egroup % end of \vtop
%
- % place the captured inserts
- %
- % BEWARE: when the floats start floating, we have to issue warning
- % whenever an insert appears inside a float which could possibly
- % float. --kasal, 26may04
- %
\checkinserts
}
{
\catcode`\_ = \active
\globaldefs=1
-\parseargdef\documentlanguage{\begingroup
- \let_=\normalunderscore % normal _ character for filenames
+\parseargdef\documentlanguage{%
\tex % read txi-??.tex file in plain TeX.
% Read the file by the name they passed if it exists.
+ \let_ = \normalunderscore % normal _ character for filename test
\openin 1 txi-#1.tex
\ifeof 1
- \documentlanguagetrywithoutunderscore{#1_\finish}%
+ \documentlanguagetrywithoutunderscore #1_\finish
\else
\globaldefs = 1 % everything in the txi-LL files needs to persist
\input txi-#1.tex
\fi
\closein 1
\endgroup % end raw TeX
-\endgroup}
+}
%
% If they passed de_DE, and txi-de_DE.tex doesn't exist,
% try txi-de.tex.
\global\righthyphenmin = #3\relax
}
+% XeTeX and LuaTeX can handle Unicode natively.
+% Their default I/O uses UTF-8 sequences instead of a byte-wise operation.
+% Other TeX engines' I/O (pdfTeX, etc.) is byte-wise.
+%
+\newif\iftxinativeunicodecapable
+\newif\iftxiusebytewiseio
+
+\ifx\XeTeXrevision\thisisundefined
+ \ifx\luatexversion\thisisundefined
+ \txinativeunicodecapablefalse
+ \txiusebytewiseiotrue
+ \else
+ \txinativeunicodecapabletrue
+ \txiusebytewiseiofalse
+ \fi
+\else
+ \txinativeunicodecapabletrue
+ \txiusebytewiseiofalse
+\fi
+
+% Set I/O by bytes instead of UTF-8 sequence for XeTeX and LuaTex
+% for non-UTF-8 (byte-wise) encodings.
+%
+\def\setbytewiseio{%
+ \ifx\XeTeXrevision\thisisundefined
+ \else
+ \XeTeXdefaultencoding "bytes" % For subsequent files to be read
+ \XeTeXinputencoding "bytes" % For document root file
+ % Unfortunately, there seems to be no corresponding XeTeX command for
+ % output encoding. This is a problem for auxiliary index and TOC files.
+ % The only solution would be perhaps to write out @U{...} sequences in
+ % place of non-ASCII characters.
+ \fi
+
+ \ifx\luatexversion\thisisundefined
+ \else
+ \directlua{
+ local utf8_char, byte, gsub = unicode.utf8.char, string.byte, string.gsub
+ local function convert_char (char)
+ return utf8_char(byte(char))
+ end
+
+ local function convert_line (line)
+ return gsub(line, ".", convert_char)
+ end
+
+ callback.register("process_input_buffer", convert_line)
+
+ local function convert_line_out (line)
+ local line_out = ""
+ for c in string.utfvalues(line) do
+ line_out = line_out .. string.char(c)
+ end
+ return line_out
+ end
+
+ callback.register("process_output_buffer", convert_line_out)
+ }
+ \fi
+
+ \txiusebytewiseiotrue
+}
+
+
% Helpers for encodings.
% Set the catcode of characters 128 through 255 to the specified number.
%
% @documentencoding sets the definition of non-ASCII characters
% according to the specified encoding.
%
-\parseargdef\documentencoding{%
+\def\documentencoding{\parseargusing\filenamecatcodes\documentencodingzzz}
+\def\documentencodingzzz#1{%
+ %
% Encoding being declared for the document.
\def\declaredencoding{\csname #1.enc\endcsname}%
%
\asciichardefs
%
\else \ifx \declaredencoding \lattwo
+ \iftxinativeunicodecapable
+ \setbytewiseio
+ \fi
\setnonasciicharscatcode\active
\lattwochardefs
%
\else \ifx \declaredencoding \latone
+ \iftxinativeunicodecapable
+ \setbytewiseio
+ \fi
\setnonasciicharscatcode\active
\latonechardefs
%
\else \ifx \declaredencoding \latnine
+ \iftxinativeunicodecapable
+ \setbytewiseio
+ \fi
\setnonasciicharscatcode\active
\latninechardefs
%
\else \ifx \declaredencoding \utfeight
- \setnonasciicharscatcode\active
- \utfeightchardefs
+ \iftxinativeunicodecapable
+ % For native Unicode handling (XeTeX and LuaTeX)
+ \nativeunicodechardefs
+ \else
+ % For treating UTF-8 as byte sequences (TeX, eTeX and pdfTeX)
+ \setnonasciicharscatcode\active
+ % since we already invoked \utfeightchardefs at the top level
+ % (below), do not re-invoke it, otherwise our check for duplicated
+ % definitions gets triggered. Making non-ascii chars active is
+ % sufficient.
+ \fi
%
\else
- \message{Unknown document encoding #1, ignoring.}%
+ \message{Ignoring unknown document encoding: #1.}%
%
\fi % utfeight
\fi % latnine
\fi % latone
\fi % lattwo
\fi % ascii
+ %
+ \ifx\XeTeXrevision\thisisundefined
+ \else
+ \ifx \declaredencoding \utfeight
+ \else
+ \ifx \declaredencoding \ascii
+ \else
+ \message{Warning: XeTeX with non-UTF-8 encodings cannot handle %
+ non-ASCII characters in auxiliary files.}%
+ \fi
+ \fi
+ \fi
}
+% emacs-page
% A message to be logged when using a character that isn't available
% the default font encoding (OT1).
%
-\def\missingcharmsg#1{\message{Character missing in OT1 encoding: #1.}}
+\def\missingcharmsg#1{\message{Character missing, sorry: #1.}}
% Take account of \c (plain) vs. \, (Texinfo) difference.
\def\cedilla#1{\ifx\c\ptexc\c{#1}\else\,{#1}\fi}
% macros containing the character definitions.
\setnonasciicharscatcode\active
%
+
+\def\gdefchar#1#2{%
+\gdef#1{%
+ \ifpassthroughchars
+ \string#1%
+ \else
+ #2%
+ \fi
+}}
+
% Latin1 (ISO-8859-1) character definitions.
\def\latonechardefs{%
- \gdef^^a0{\tie}
- \gdef^^a1{\exclamdown}
- \gdef^^a2{\missingcharmsg{CENT SIGN}}
- \gdef^^a3{{\pounds}}
- \gdef^^a4{\missingcharmsg{CURRENCY SIGN}}
- \gdef^^a5{\missingcharmsg{YEN SIGN}}
- \gdef^^a6{\missingcharmsg{BROKEN BAR}}
- \gdef^^a7{\S}
- \gdef^^a8{\"{}}
- \gdef^^a9{\copyright}
- \gdef^^aa{\ordf}
- \gdef^^ab{\guillemetleft}
- \gdef^^ac{$\lnot$}
- \gdef^^ad{\-}
- \gdef^^ae{\registeredsymbol}
- \gdef^^af{\={}}
- %
- \gdef^^b0{\textdegree}
- \gdef^^b1{$\pm$}
- \gdef^^b2{$^2$}
- \gdef^^b3{$^3$}
- \gdef^^b4{\'{}}
- \gdef^^b5{$\mu$}
- \gdef^^b6{\P}
- %
- \gdef^^b7{$^.$}
- \gdef^^b8{\cedilla\ }
- \gdef^^b9{$^1$}
- \gdef^^ba{\ordm}
- %
- \gdef^^bb{\guillemetright}
- \gdef^^bc{$1\over4$}
- \gdef^^bd{$1\over2$}
- \gdef^^be{$3\over4$}
- \gdef^^bf{\questiondown}
- %
- \gdef^^c0{\`A}
- \gdef^^c1{\'A}
- \gdef^^c2{\^A}
- \gdef^^c3{\~A}
- \gdef^^c4{\"A}
- \gdef^^c5{\ringaccent A}
- \gdef^^c6{\AE}
- \gdef^^c7{\cedilla C}
- \gdef^^c8{\`E}
- \gdef^^c9{\'E}
- \gdef^^ca{\^E}
- \gdef^^cb{\"E}
- \gdef^^cc{\`I}
- \gdef^^cd{\'I}
- \gdef^^ce{\^I}
- \gdef^^cf{\"I}
- %
- \gdef^^d0{\DH}
- \gdef^^d1{\~N}
- \gdef^^d2{\`O}
- \gdef^^d3{\'O}
- \gdef^^d4{\^O}
- \gdef^^d5{\~O}
- \gdef^^d6{\"O}
- \gdef^^d7{$\times$}
- \gdef^^d8{\O}
- \gdef^^d9{\`U}
- \gdef^^da{\'U}
- \gdef^^db{\^U}
- \gdef^^dc{\"U}
- \gdef^^dd{\'Y}
- \gdef^^de{\TH}
- \gdef^^df{\ss}
- %
- \gdef^^e0{\`a}
- \gdef^^e1{\'a}
- \gdef^^e2{\^a}
- \gdef^^e3{\~a}
- \gdef^^e4{\"a}
- \gdef^^e5{\ringaccent a}
- \gdef^^e6{\ae}
- \gdef^^e7{\cedilla c}
- \gdef^^e8{\`e}
- \gdef^^e9{\'e}
- \gdef^^ea{\^e}
- \gdef^^eb{\"e}
- \gdef^^ec{\`{\dotless i}}
- \gdef^^ed{\'{\dotless i}}
- \gdef^^ee{\^{\dotless i}}
- \gdef^^ef{\"{\dotless i}}
- %
- \gdef^^f0{\dh}
- \gdef^^f1{\~n}
- \gdef^^f2{\`o}
- \gdef^^f3{\'o}
- \gdef^^f4{\^o}
- \gdef^^f5{\~o}
- \gdef^^f6{\"o}
- \gdef^^f7{$\div$}
- \gdef^^f8{\o}
- \gdef^^f9{\`u}
- \gdef^^fa{\'u}
- \gdef^^fb{\^u}
- \gdef^^fc{\"u}
- \gdef^^fd{\'y}
- \gdef^^fe{\th}
- \gdef^^ff{\"y}
+ \gdefchar^^a0{\tie}
+ \gdefchar^^a1{\exclamdown}
+ \gdefchar^^a2{{\tcfont \char162}} % cent
+ \gdefchar^^a3{\pounds}
+ \gdefchar^^a4{{\tcfont \char164}} % currency
+ \gdefchar^^a5{{\tcfont \char165}} % yen
+ \gdefchar^^a6{{\tcfont \char166}} % broken bar
+ \gdefchar^^a7{\S}
+ \gdefchar^^a8{\"{}}
+ \gdefchar^^a9{\copyright}
+ \gdefchar^^aa{\ordf}
+ \gdefchar^^ab{\guillemetleft}
+ \gdefchar^^ac{\ensuremath\lnot}
+ \gdefchar^^ad{\-}
+ \gdefchar^^ae{\registeredsymbol}
+ \gdefchar^^af{\={}}
+ %
+ \gdefchar^^b0{\textdegree}
+ \gdefchar^^b1{$\pm$}
+ \gdefchar^^b2{$^2$}
+ \gdefchar^^b3{$^3$}
+ \gdefchar^^b4{\'{}}
+ \gdefchar^^b5{$\mu$}
+ \gdefchar^^b6{\P}
+ \gdefchar^^b7{\ensuremath\cdot}
+ \gdefchar^^b8{\cedilla\ }
+ \gdefchar^^b9{$^1$}
+ \gdefchar^^ba{\ordm}
+ \gdefchar^^bb{\guillemetright}
+ \gdefchar^^bc{$1\over4$}
+ \gdefchar^^bd{$1\over2$}
+ \gdefchar^^be{$3\over4$}
+ \gdefchar^^bf{\questiondown}
+ %
+ \gdefchar^^c0{\`A}
+ \gdefchar^^c1{\'A}
+ \gdefchar^^c2{\^A}
+ \gdefchar^^c3{\~A}
+ \gdefchar^^c4{\"A}
+ \gdefchar^^c5{\ringaccent A}
+ \gdefchar^^c6{\AE}
+ \gdefchar^^c7{\cedilla C}
+ \gdefchar^^c8{\`E}
+ \gdefchar^^c9{\'E}
+ \gdefchar^^ca{\^E}
+ \gdefchar^^cb{\"E}
+ \gdefchar^^cc{\`I}
+ \gdefchar^^cd{\'I}
+ \gdefchar^^ce{\^I}
+ \gdefchar^^cf{\"I}
+ %
+ \gdefchar^^d0{\DH}
+ \gdefchar^^d1{\~N}
+ \gdefchar^^d2{\`O}
+ \gdefchar^^d3{\'O}
+ \gdefchar^^d4{\^O}
+ \gdefchar^^d5{\~O}
+ \gdefchar^^d6{\"O}
+ \gdefchar^^d7{$\times$}
+ \gdefchar^^d8{\O}
+ \gdefchar^^d9{\`U}
+ \gdefchar^^da{\'U}
+ \gdefchar^^db{\^U}
+ \gdefchar^^dc{\"U}
+ \gdefchar^^dd{\'Y}
+ \gdefchar^^de{\TH}
+ \gdefchar^^df{\ss}
+ %
+ \gdefchar^^e0{\`a}
+ \gdefchar^^e1{\'a}
+ \gdefchar^^e2{\^a}
+ \gdefchar^^e3{\~a}
+ \gdefchar^^e4{\"a}
+ \gdefchar^^e5{\ringaccent a}
+ \gdefchar^^e6{\ae}
+ \gdefchar^^e7{\cedilla c}
+ \gdefchar^^e8{\`e}
+ \gdefchar^^e9{\'e}
+ \gdefchar^^ea{\^e}
+ \gdefchar^^eb{\"e}
+ \gdefchar^^ec{\`{\dotless i}}
+ \gdefchar^^ed{\'{\dotless i}}
+ \gdefchar^^ee{\^{\dotless i}}
+ \gdefchar^^ef{\"{\dotless i}}
+ %
+ \gdefchar^^f0{\dh}
+ \gdefchar^^f1{\~n}
+ \gdefchar^^f2{\`o}
+ \gdefchar^^f3{\'o}
+ \gdefchar^^f4{\^o}
+ \gdefchar^^f5{\~o}
+ \gdefchar^^f6{\"o}
+ \gdefchar^^f7{$\div$}
+ \gdefchar^^f8{\o}
+ \gdefchar^^f9{\`u}
+ \gdefchar^^fa{\'u}
+ \gdefchar^^fb{\^u}
+ \gdefchar^^fc{\"u}
+ \gdefchar^^fd{\'y}
+ \gdefchar^^fe{\th}
+ \gdefchar^^ff{\"y}
}
% Latin9 (ISO-8859-15) encoding character definitions.
% Encoding is almost identical to Latin1.
\latonechardefs
%
- \gdef^^a4{\euro}
- \gdef^^a6{\v S}
- \gdef^^a8{\v s}
- \gdef^^b4{\v Z}
- \gdef^^b8{\v z}
- \gdef^^bc{\OE}
- \gdef^^bd{\oe}
- \gdef^^be{\"Y}
+ \gdefchar^^a4{\euro}
+ \gdefchar^^a6{\v S}
+ \gdefchar^^a8{\v s}
+ \gdefchar^^b4{\v Z}
+ \gdefchar^^b8{\v z}
+ \gdefchar^^bc{\OE}
+ \gdefchar^^bd{\oe}
+ \gdefchar^^be{\"Y}
}
% Latin2 (ISO-8859-2) character definitions.
\def\lattwochardefs{%
- \gdef^^a0{\tie}
- \gdef^^a1{\ogonek{A}}
- \gdef^^a2{\u{}}
- \gdef^^a3{\L}
- \gdef^^a4{\missingcharmsg{CURRENCY SIGN}}
- \gdef^^a5{\v L}
- \gdef^^a6{\'S}
- \gdef^^a7{\S}
- \gdef^^a8{\"{}}
- \gdef^^a9{\v S}
- \gdef^^aa{\cedilla S}
- \gdef^^ab{\v T}
- \gdef^^ac{\'Z}
- \gdef^^ad{\-}
- \gdef^^ae{\v Z}
- \gdef^^af{\dotaccent Z}
- %
- \gdef^^b0{\textdegree}
- \gdef^^b1{\ogonek{a}}
- \gdef^^b2{\ogonek{ }}
- \gdef^^b3{\l}
- \gdef^^b4{\'{}}
- \gdef^^b5{\v l}
- \gdef^^b6{\'s}
- \gdef^^b7{\v{}}
- \gdef^^b8{\cedilla\ }
- \gdef^^b9{\v s}
- \gdef^^ba{\cedilla s}
- \gdef^^bb{\v t}
- \gdef^^bc{\'z}
- \gdef^^bd{\H{}}
- \gdef^^be{\v z}
- \gdef^^bf{\dotaccent z}
- %
- \gdef^^c0{\'R}
- \gdef^^c1{\'A}
- \gdef^^c2{\^A}
- \gdef^^c3{\u A}
- \gdef^^c4{\"A}
- \gdef^^c5{\'L}
- \gdef^^c6{\'C}
- \gdef^^c7{\cedilla C}
- \gdef^^c8{\v C}
- \gdef^^c9{\'E}
- \gdef^^ca{\ogonek{E}}
- \gdef^^cb{\"E}
- \gdef^^cc{\v E}
- \gdef^^cd{\'I}
- \gdef^^ce{\^I}
- \gdef^^cf{\v D}
- %
- \gdef^^d0{\DH}
- \gdef^^d1{\'N}
- \gdef^^d2{\v N}
- \gdef^^d3{\'O}
- \gdef^^d4{\^O}
- \gdef^^d5{\H O}
- \gdef^^d6{\"O}
- \gdef^^d7{$\times$}
- \gdef^^d8{\v R}
- \gdef^^d9{\ringaccent U}
- \gdef^^da{\'U}
- \gdef^^db{\H U}
- \gdef^^dc{\"U}
- \gdef^^dd{\'Y}
- \gdef^^de{\cedilla T}
- \gdef^^df{\ss}
- %
- \gdef^^e0{\'r}
- \gdef^^e1{\'a}
- \gdef^^e2{\^a}
- \gdef^^e3{\u a}
- \gdef^^e4{\"a}
- \gdef^^e5{\'l}
- \gdef^^e6{\'c}
- \gdef^^e7{\cedilla c}
- \gdef^^e8{\v c}
- \gdef^^e9{\'e}
- \gdef^^ea{\ogonek{e}}
- \gdef^^eb{\"e}
- \gdef^^ec{\v e}
- \gdef^^ed{\'{\dotless{i}}}
- \gdef^^ee{\^{\dotless{i}}}
- \gdef^^ef{\v d}
- %
- \gdef^^f0{\dh}
- \gdef^^f1{\'n}
- \gdef^^f2{\v n}
- \gdef^^f3{\'o}
- \gdef^^f4{\^o}
- \gdef^^f5{\H o}
- \gdef^^f6{\"o}
- \gdef^^f7{$\div$}
- \gdef^^f8{\v r}
- \gdef^^f9{\ringaccent u}
- \gdef^^fa{\'u}
- \gdef^^fb{\H u}
- \gdef^^fc{\"u}
- \gdef^^fd{\'y}
- \gdef^^fe{\cedilla t}
- \gdef^^ff{\dotaccent{}}
+ \gdefchar^^a0{\tie}
+ \gdefchar^^a1{\ogonek{A}}
+ \gdefchar^^a2{\u{}}
+ \gdefchar^^a3{\L}
+ \gdefchar^^a4{\missingcharmsg{CURRENCY SIGN}}
+ \gdefchar^^a5{\v L}
+ \gdefchar^^a6{\'S}
+ \gdefchar^^a7{\S}
+ \gdefchar^^a8{\"{}}
+ \gdefchar^^a9{\v S}
+ \gdefchar^^aa{\cedilla S}
+ \gdefchar^^ab{\v T}
+ \gdefchar^^ac{\'Z}
+ \gdefchar^^ad{\-}
+ \gdefchar^^ae{\v Z}
+ \gdefchar^^af{\dotaccent Z}
+ %
+ \gdefchar^^b0{\textdegree}
+ \gdefchar^^b1{\ogonek{a}}
+ \gdefchar^^b2{\ogonek{ }}
+ \gdefchar^^b3{\l}
+ \gdefchar^^b4{\'{}}
+ \gdefchar^^b5{\v l}
+ \gdefchar^^b6{\'s}
+ \gdefchar^^b7{\v{}}
+ \gdefchar^^b8{\cedilla\ }
+ \gdefchar^^b9{\v s}
+ \gdefchar^^ba{\cedilla s}
+ \gdefchar^^bb{\v t}
+ \gdefchar^^bc{\'z}
+ \gdefchar^^bd{\H{}}
+ \gdefchar^^be{\v z}
+ \gdefchar^^bf{\dotaccent z}
+ %
+ \gdefchar^^c0{\'R}
+ \gdefchar^^c1{\'A}
+ \gdefchar^^c2{\^A}
+ \gdefchar^^c3{\u A}
+ \gdefchar^^c4{\"A}
+ \gdefchar^^c5{\'L}
+ \gdefchar^^c6{\'C}
+ \gdefchar^^c7{\cedilla C}
+ \gdefchar^^c8{\v C}
+ \gdefchar^^c9{\'E}
+ \gdefchar^^ca{\ogonek{E}}
+ \gdefchar^^cb{\"E}
+ \gdefchar^^cc{\v E}
+ \gdefchar^^cd{\'I}
+ \gdefchar^^ce{\^I}
+ \gdefchar^^cf{\v D}
+ %
+ \gdefchar^^d0{\DH}
+ \gdefchar^^d1{\'N}
+ \gdefchar^^d2{\v N}
+ \gdefchar^^d3{\'O}
+ \gdefchar^^d4{\^O}
+ \gdefchar^^d5{\H O}
+ \gdefchar^^d6{\"O}
+ \gdefchar^^d7{$\times$}
+ \gdefchar^^d8{\v R}
+ \gdefchar^^d9{\ringaccent U}
+ \gdefchar^^da{\'U}
+ \gdefchar^^db{\H U}
+ \gdefchar^^dc{\"U}
+ \gdefchar^^dd{\'Y}
+ \gdefchar^^de{\cedilla T}
+ \gdefchar^^df{\ss}
+ %
+ \gdefchar^^e0{\'r}
+ \gdefchar^^e1{\'a}
+ \gdefchar^^e2{\^a}
+ \gdefchar^^e3{\u a}
+ \gdefchar^^e4{\"a}
+ \gdefchar^^e5{\'l}
+ \gdefchar^^e6{\'c}
+ \gdefchar^^e7{\cedilla c}
+ \gdefchar^^e8{\v c}
+ \gdefchar^^e9{\'e}
+ \gdefchar^^ea{\ogonek{e}}
+ \gdefchar^^eb{\"e}
+ \gdefchar^^ec{\v e}
+ \gdefchar^^ed{\'{\dotless{i}}}
+ \gdefchar^^ee{\^{\dotless{i}}}
+ \gdefchar^^ef{\v d}
+ %
+ \gdefchar^^f0{\dh}
+ \gdefchar^^f1{\'n}
+ \gdefchar^^f2{\v n}
+ \gdefchar^^f3{\'o}
+ \gdefchar^^f4{\^o}
+ \gdefchar^^f5{\H o}
+ \gdefchar^^f6{\"o}
+ \gdefchar^^f7{$\div$}
+ \gdefchar^^f8{\v r}
+ \gdefchar^^f9{\ringaccent u}
+ \gdefchar^^fa{\'u}
+ \gdefchar^^fb{\H u}
+ \gdefchar^^fc{\"u}
+ \gdefchar^^fd{\'y}
+ \gdefchar^^fe{\cedilla t}
+ \gdefchar^^ff{\dotaccent{}}
}
% UTF-8 character definitions.
\fi
}
+% Give non-ASCII bytes the active definitions for processing UTF-8 sequences
\begingroup
\catcode`\~13
+ \catcode`\$12
\catcode`\"12
+ % Loop from \countUTFx to \countUTFy, performing \UTFviiiTmp
+ % substituting ~ and $ with a character token of that value.
\def\UTFviiiLoop{%
\global\catcode\countUTFx\active
\uccode`\~\countUTFx
+ \uccode`\$\countUTFx
\uppercase\expandafter{\UTFviiiTmp}%
\advance\countUTFx by 1
\ifnum\countUTFx < \countUTFy
\expandafter\UTFviiiLoop
\fi}
+ % For bytes other than the first in a UTF-8 sequence. Not expected to
+ % be expanded except when writing to auxiliary files.
+ \countUTFx = "80
+ \countUTFy = "C2
+ \def\UTFviiiTmp{%
+ \gdef~{%
+ \ifpassthroughchars $\fi}}%
+ \UTFviiiLoop
+
\countUTFx = "C2
\countUTFy = "E0
\def\UTFviiiTmp{%
- \xdef~{\noexpand\UTFviiiTwoOctets\string~}}
+ \gdef~{%
+ \ifpassthroughchars $%
+ \else\expandafter\UTFviiiTwoOctets\expandafter$\fi}}%
\UTFviiiLoop
\countUTFx = "E0
\countUTFy = "F0
\def\UTFviiiTmp{%
- \xdef~{\noexpand\UTFviiiThreeOctets\string~}}
+ \gdef~{%
+ \ifpassthroughchars $%
+ \else\expandafter\UTFviiiThreeOctets\expandafter$\fi}}%
\UTFviiiLoop
\countUTFx = "F0
\countUTFy = "F4
\def\UTFviiiTmp{%
- \xdef~{\noexpand\UTFviiiFourOctets\string~}}
+ \gdef~{%
+ \ifpassthroughchars $%
+ \else\expandafter\UTFviiiFourOctets\expandafter$\fi
+ }}%
\UTFviiiLoop
\endgroup
+\def\globallet{\global\let} % save some \expandafter's below
+
+% @U{xxxx} to produce U+xxxx, if we support it.
+\def\U#1{%
+ \expandafter\ifx\csname uni:#1\endcsname \relax
+ \iftxinativeunicodecapable
+ % All Unicode characters can be used if native Unicode handling is
+ % active. However, if the font does not have the glyph,
+ % letters are missing.
+ \begingroup
+ \uccode`\.="#1\relax
+ \uppercase{.}
+ \endgroup
+ \else
+ \errhelp = \EMsimple
+ \errmessage{Unicode character U+#1 not supported, sorry}%
+ \fi
+ \else
+ \csname uni:#1\endcsname
+ \fi
+}
+
+% These macros are used here to construct the name of a control
+% sequence to be defined.
+\def\UTFviiiTwoOctetsName#1#2{%
+ \csname u8:#1\string #2\endcsname}%
+\def\UTFviiiThreeOctetsName#1#2#3{%
+ \csname u8:#1\string #2\string #3\endcsname}%
+\def\UTFviiiFourOctetsName#1#2#3#4{%
+ \csname u8:#1\string #2\string #3\string #4\endcsname}%
+
+% For UTF-8 byte sequences (TeX, e-TeX and pdfTeX),
+% provide a definition macro to replace a Unicode character;
+% this gets used by the @U command
+%
\begingroup
\catcode`\"=12
\catcode`\<=12
\catcode`\;=12
\catcode`\!=12
\catcode`\~=13
-
- \gdef\DeclareUnicodeCharacter#1#2{%
+ \gdef\DeclareUnicodeCharacterUTFviii#1#2{%
\countUTFz = "#1\relax
- %\wlog{\space\space defining Unicode char U+#1 (decimal \the\countUTFz)}%
\begingroup
\parseXMLCharref
- \def\UTFviiiTwoOctets##1##2{%
- \csname u8:##1\string ##2\endcsname}%
- \def\UTFviiiThreeOctets##1##2##3{%
- \csname u8:##1\string ##2\string ##3\endcsname}%
- \def\UTFviiiFourOctets##1##2##3##4{%
- \csname u8:##1\string ##2\string ##3\string ##4\endcsname}%
- \expandafter\expandafter\expandafter\expandafter
- \expandafter\expandafter\expandafter
- \gdef\UTFviiiTmp{#2}%
+
+ % Give \u8:... its definition. The sequence of seven \expandafter's
+ % expands after the \gdef three times, e.g.
+ %
+ % 1. \UTFviiTwoOctetsName B1 B2
+ % 2. \csname u8:B1 \string B2 \endcsname
+ % 3. \u8: B1 B2 (a single control sequence token)
+ %
+ \expandafter\expandafter
+ \expandafter\expandafter
+ \expandafter\expandafter
+ \expandafter\gdef \UTFviiiTmp{#2}%
+ %
+ \expandafter\ifx\csname uni:#1\endcsname \relax \else
+ \message{Internal error, already defined: #1}%
+ \fi
+ %
+ % define an additional control sequence for this code point.
+ \expandafter\globallet\csname uni:#1\endcsname \UTFviiiTmp
\endgroup}
-
+ %
+ % Given the value in \countUTFz as a Unicode code point, set \UTFviiiTmp
+ % to the corresponding UTF-8 sequence.
\gdef\parseXMLCharref{%
\ifnum\countUTFz < "A0\relax
\errhelp = \EMsimple
\errmessage{Cannot define Unicode char value < 00A0}%
\else\ifnum\countUTFz < "800\relax
\parseUTFviiiA,%
- \parseUTFviiiB C\UTFviiiTwoOctets.,%
+ \parseUTFviiiB C\UTFviiiTwoOctetsName.,%
\else\ifnum\countUTFz < "10000\relax
\parseUTFviiiA;%
\parseUTFviiiA,%
- \parseUTFviiiB E\UTFviiiThreeOctets.{,;}%
+ \parseUTFviiiB E\UTFviiiThreeOctetsName.{,;}%
\else
\parseUTFviiiA;%
\parseUTFviiiA,%
\parseUTFviiiA!%
- \parseUTFviiiB F\UTFviiiFourOctets.{!,;}%
+ \parseUTFviiiB F\UTFviiiFourOctetsName.{!,;}%
\fi\fi\fi
}
+ % Extract a byte from the end of the UTF-8 representation of \countUTFx.
+ % It must be a non-initial byte in the sequence.
+ % Change \uccode of #1 for it to be used in \parseUTFviiiB as one
+ % of the bytes.
\gdef\parseUTFviiiA#1{%
\countUTFx = \countUTFz
\divide\countUTFz by 64
- \countUTFy = \countUTFz
+ \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
+
+ % Convert this to the byte in the UTF-8 sequence.
\advance\countUTFx by 128
\uccode `#1\countUTFx
\countUTFz = \countUTFy}
+ % Used to put a UTF-8 byte sequence into \UTFviiiTmp
+ % #1 is the increment for \countUTFz to yield a the first byte of the UTF-8
+ % sequence.
+ % #2 is one of the \UTFviii*OctetsName macros.
+ % #3 is always a full stop (.)
+ % #4 is a template for the other bytes in the sequence. The values for these
+ % bytes is substituted in here with \uppercase using the \uccode's.
\gdef\parseUTFviiiB#1#2#3#4{%
\advance\countUTFz by "#10\relax
\uccode `#3\countUTFz
\uppercase{\gdef\UTFviiiTmp{#2#3#4}}}
\endgroup
+% For native Unicode handling (XeTeX and LuaTeX),
+% provide a definition macro that sets a catcode to `other' non-globally
+%
+\def\DeclareUnicodeCharacterNativeOther#1#2{%
+ \catcode"#1=\other
+}
+
+% https://en.wikipedia.org/wiki/Plane_(Unicode)#Basic_M
+% U+0000..U+007F = https://en.wikipedia.org/wiki/Basic_Latin_(Unicode_block)
+% 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
+% reimplementing everything that's been done in LaTeX for many years,
+% plus probably using luatex or xetex, and who knows what else.
+% We won't be doing that here in this simple file. But we can try to at
+% least make most of the characters not bomb out.
+%
+\def\unicodechardefs{%
+ \DeclareUnicodeCharacter{00A0}{\tie}%
+ \DeclareUnicodeCharacter{00A1}{\exclamdown}%
+ \DeclareUnicodeCharacter{00A2}{{\tcfont \char162}}% 0242=cent
+ \DeclareUnicodeCharacter{00A3}{\pounds}%
+ \DeclareUnicodeCharacter{00A4}{{\tcfont \char164}}% 0244=currency
+ \DeclareUnicodeCharacter{00A5}{{\tcfont \char165}}% 0245=yen
+ \DeclareUnicodeCharacter{00A6}{{\tcfont \char166}}% 0246=brokenbar
+ \DeclareUnicodeCharacter{00A7}{\S}%
+ \DeclareUnicodeCharacter{00A8}{\"{ }}%
+ \DeclareUnicodeCharacter{00A9}{\copyright}%
+ \DeclareUnicodeCharacter{00AA}{\ordf}%
+ \DeclareUnicodeCharacter{00AB}{\guillemetleft}%
+ \DeclareUnicodeCharacter{00AC}{\ensuremath\lnot}%
+ \DeclareUnicodeCharacter{00AD}{\-}%
+ \DeclareUnicodeCharacter{00AE}{\registeredsymbol}%
+ \DeclareUnicodeCharacter{00AF}{\={ }}%
+ %
+ \DeclareUnicodeCharacter{00B0}{\ringaccent{ }}%
+ \DeclareUnicodeCharacter{00B1}{\ensuremath\pm}%
+ \DeclareUnicodeCharacter{00B2}{$^2$}%
+ \DeclareUnicodeCharacter{00B3}{$^3$}%
+ \DeclareUnicodeCharacter{00B4}{\'{ }}%
+ \DeclareUnicodeCharacter{00B5}{$\mu$}%
+ \DeclareUnicodeCharacter{00B6}{\P}%
+ \DeclareUnicodeCharacter{00B7}{\ensuremath\cdot}%
+ \DeclareUnicodeCharacter{00B8}{\cedilla{ }}%
+ \DeclareUnicodeCharacter{00B9}{$^1$}%
+ \DeclareUnicodeCharacter{00BA}{\ordm}%
+ \DeclareUnicodeCharacter{00BB}{\guillemetright}%
+ \DeclareUnicodeCharacter{00BC}{$1\over4$}%
+ \DeclareUnicodeCharacter{00BD}{$1\over2$}%
+ \DeclareUnicodeCharacter{00BE}{$3\over4$}%
+ \DeclareUnicodeCharacter{00BF}{\questiondown}%
+ %
+ \DeclareUnicodeCharacter{00C0}{\`A}%
+ \DeclareUnicodeCharacter{00C1}{\'A}%
+ \DeclareUnicodeCharacter{00C2}{\^A}%
+ \DeclareUnicodeCharacter{00C3}{\~A}%
+ \DeclareUnicodeCharacter{00C4}{\"A}%
+ \DeclareUnicodeCharacter{00C5}{\AA}%
+ \DeclareUnicodeCharacter{00C6}{\AE}%
+ \DeclareUnicodeCharacter{00C7}{\cedilla{C}}%
+ \DeclareUnicodeCharacter{00C8}{\`E}%
+ \DeclareUnicodeCharacter{00C9}{\'E}%
+ \DeclareUnicodeCharacter{00CA}{\^E}%
+ \DeclareUnicodeCharacter{00CB}{\"E}%
+ \DeclareUnicodeCharacter{00CC}{\`I}%
+ \DeclareUnicodeCharacter{00CD}{\'I}%
+ \DeclareUnicodeCharacter{00CE}{\^I}%
+ \DeclareUnicodeCharacter{00CF}{\"I}%
+ %
+ \DeclareUnicodeCharacter{00D0}{\DH}%
+ \DeclareUnicodeCharacter{00D1}{\~N}%
+ \DeclareUnicodeCharacter{00D2}{\`O}%
+ \DeclareUnicodeCharacter{00D3}{\'O}%
+ \DeclareUnicodeCharacter{00D4}{\^O}%
+ \DeclareUnicodeCharacter{00D5}{\~O}%
+ \DeclareUnicodeCharacter{00D6}{\"O}%
+ \DeclareUnicodeCharacter{00D7}{\ensuremath\times}%
+ \DeclareUnicodeCharacter{00D8}{\O}%
+ \DeclareUnicodeCharacter{00D9}{\`U}%
+ \DeclareUnicodeCharacter{00DA}{\'U}%
+ \DeclareUnicodeCharacter{00DB}{\^U}%
+ \DeclareUnicodeCharacter{00DC}{\"U}%
+ \DeclareUnicodeCharacter{00DD}{\'Y}%
+ \DeclareUnicodeCharacter{00DE}{\TH}%
+ \DeclareUnicodeCharacter{00DF}{\ss}%
+ %
+ \DeclareUnicodeCharacter{00E0}{\`a}%
+ \DeclareUnicodeCharacter{00E1}{\'a}%
+ \DeclareUnicodeCharacter{00E2}{\^a}%
+ \DeclareUnicodeCharacter{00E3}{\~a}%
+ \DeclareUnicodeCharacter{00E4}{\"a}%
+ \DeclareUnicodeCharacter{00E5}{\aa}%
+ \DeclareUnicodeCharacter{00E6}{\ae}%
+ \DeclareUnicodeCharacter{00E7}{\cedilla{c}}%
+ \DeclareUnicodeCharacter{00E8}{\`e}%
+ \DeclareUnicodeCharacter{00E9}{\'e}%
+ \DeclareUnicodeCharacter{00EA}{\^e}%
+ \DeclareUnicodeCharacter{00EB}{\"e}%
+ \DeclareUnicodeCharacter{00EC}{\`{\dotless{i}}}%
+ \DeclareUnicodeCharacter{00ED}{\'{\dotless{i}}}%
+ \DeclareUnicodeCharacter{00EE}{\^{\dotless{i}}}%
+ \DeclareUnicodeCharacter{00EF}{\"{\dotless{i}}}%
+ %
+ \DeclareUnicodeCharacter{00F0}{\dh}%
+ \DeclareUnicodeCharacter{00F1}{\~n}%
+ \DeclareUnicodeCharacter{00F2}{\`o}%
+ \DeclareUnicodeCharacter{00F3}{\'o}%
+ \DeclareUnicodeCharacter{00F4}{\^o}%
+ \DeclareUnicodeCharacter{00F5}{\~o}%
+ \DeclareUnicodeCharacter{00F6}{\"o}%
+ \DeclareUnicodeCharacter{00F7}{\ensuremath\div}%
+ \DeclareUnicodeCharacter{00F8}{\o}%
+ \DeclareUnicodeCharacter{00F9}{\`u}%
+ \DeclareUnicodeCharacter{00FA}{\'u}%
+ \DeclareUnicodeCharacter{00FB}{\^u}%
+ \DeclareUnicodeCharacter{00FC}{\"u}%
+ \DeclareUnicodeCharacter{00FD}{\'y}%
+ \DeclareUnicodeCharacter{00FE}{\th}%
+ \DeclareUnicodeCharacter{00FF}{\"y}%
+ %
+ \DeclareUnicodeCharacter{0100}{\=A}%
+ \DeclareUnicodeCharacter{0101}{\=a}%
+ \DeclareUnicodeCharacter{0102}{\u{A}}%
+ \DeclareUnicodeCharacter{0103}{\u{a}}%
+ \DeclareUnicodeCharacter{0104}{\ogonek{A}}%
+ \DeclareUnicodeCharacter{0105}{\ogonek{a}}%
+ \DeclareUnicodeCharacter{0106}{\'C}%
+ \DeclareUnicodeCharacter{0107}{\'c}%
+ \DeclareUnicodeCharacter{0108}{\^C}%
+ \DeclareUnicodeCharacter{0109}{\^c}%
+ \DeclareUnicodeCharacter{010A}{\dotaccent{C}}%
+ \DeclareUnicodeCharacter{010B}{\dotaccent{c}}%
+ \DeclareUnicodeCharacter{010C}{\v{C}}%
+ \DeclareUnicodeCharacter{010D}{\v{c}}%
+ \DeclareUnicodeCharacter{010E}{\v{D}}%
+ \DeclareUnicodeCharacter{010F}{d'}%
+ %
+ \DeclareUnicodeCharacter{0110}{\DH}%
+ \DeclareUnicodeCharacter{0111}{\dh}%
+ \DeclareUnicodeCharacter{0112}{\=E}%
+ \DeclareUnicodeCharacter{0113}{\=e}%
+ \DeclareUnicodeCharacter{0114}{\u{E}}%
+ \DeclareUnicodeCharacter{0115}{\u{e}}%
+ \DeclareUnicodeCharacter{0116}{\dotaccent{E}}%
+ \DeclareUnicodeCharacter{0117}{\dotaccent{e}}%
+ \DeclareUnicodeCharacter{0118}{\ogonek{E}}%
+ \DeclareUnicodeCharacter{0119}{\ogonek{e}}%
+ \DeclareUnicodeCharacter{011A}{\v{E}}%
+ \DeclareUnicodeCharacter{011B}{\v{e}}%
+ \DeclareUnicodeCharacter{011C}{\^G}%
+ \DeclareUnicodeCharacter{011D}{\^g}%
+ \DeclareUnicodeCharacter{011E}{\u{G}}%
+ \DeclareUnicodeCharacter{011F}{\u{g}}%
+ %
+ \DeclareUnicodeCharacter{0120}{\dotaccent{G}}%
+ \DeclareUnicodeCharacter{0121}{\dotaccent{g}}%
+ \DeclareUnicodeCharacter{0122}{\cedilla{G}}%
+ \DeclareUnicodeCharacter{0123}{\cedilla{g}}%
+ \DeclareUnicodeCharacter{0124}{\^H}%
+ \DeclareUnicodeCharacter{0125}{\^h}%
+ \DeclareUnicodeCharacter{0126}{\missingcharmsg{H WITH STROKE}}%
+ \DeclareUnicodeCharacter{0127}{\missingcharmsg{h WITH STROKE}}%
+ \DeclareUnicodeCharacter{0128}{\~I}%
+ \DeclareUnicodeCharacter{0129}{\~{\dotless{i}}}%
+ \DeclareUnicodeCharacter{012A}{\=I}%
+ \DeclareUnicodeCharacter{012B}{\={\dotless{i}}}%
+ \DeclareUnicodeCharacter{012C}{\u{I}}%
+ \DeclareUnicodeCharacter{012D}{\u{\dotless{i}}}%
+ \DeclareUnicodeCharacter{012E}{\ogonek{I}}%
+ \DeclareUnicodeCharacter{012F}{\ogonek{i}}%
+ %
+ \DeclareUnicodeCharacter{0130}{\dotaccent{I}}%
+ \DeclareUnicodeCharacter{0131}{\dotless{i}}%
+ \DeclareUnicodeCharacter{0132}{IJ}%
+ \DeclareUnicodeCharacter{0133}{ij}%
+ \DeclareUnicodeCharacter{0134}{\^J}%
+ \DeclareUnicodeCharacter{0135}{\^{\dotless{j}}}%
+ \DeclareUnicodeCharacter{0136}{\cedilla{K}}%
+ \DeclareUnicodeCharacter{0137}{\cedilla{k}}%
+ \DeclareUnicodeCharacter{0138}{\ensuremath\kappa}%
+ \DeclareUnicodeCharacter{0139}{\'L}%
+ \DeclareUnicodeCharacter{013A}{\'l}%
+ \DeclareUnicodeCharacter{013B}{\cedilla{L}}%
+ \DeclareUnicodeCharacter{013C}{\cedilla{l}}%
+ \DeclareUnicodeCharacter{013D}{L'}% should kern
+ \DeclareUnicodeCharacter{013E}{l'}% should kern
+ \DeclareUnicodeCharacter{013F}{L\U{00B7}}%
+ %
+ \DeclareUnicodeCharacter{0140}{l\U{00B7}}%
+ \DeclareUnicodeCharacter{0141}{\L}%
+ \DeclareUnicodeCharacter{0142}{\l}%
+ \DeclareUnicodeCharacter{0143}{\'N}%
+ \DeclareUnicodeCharacter{0144}{\'n}%
+ \DeclareUnicodeCharacter{0145}{\cedilla{N}}%
+ \DeclareUnicodeCharacter{0146}{\cedilla{n}}%
+ \DeclareUnicodeCharacter{0147}{\v{N}}%
+ \DeclareUnicodeCharacter{0148}{\v{n}}%
+ \DeclareUnicodeCharacter{0149}{'n}%
+ \DeclareUnicodeCharacter{014A}{\missingcharmsg{ENG}}%
+ \DeclareUnicodeCharacter{014B}{\missingcharmsg{eng}}%
+ \DeclareUnicodeCharacter{014C}{\=O}%
+ \DeclareUnicodeCharacter{014D}{\=o}%
+ \DeclareUnicodeCharacter{014E}{\u{O}}%
+ \DeclareUnicodeCharacter{014F}{\u{o}}%
+ %
+ \DeclareUnicodeCharacter{0150}{\H{O}}%
+ \DeclareUnicodeCharacter{0151}{\H{o}}%
+ \DeclareUnicodeCharacter{0152}{\OE}%
+ \DeclareUnicodeCharacter{0153}{\oe}%
+ \DeclareUnicodeCharacter{0154}{\'R}%
+ \DeclareUnicodeCharacter{0155}{\'r}%
+ \DeclareUnicodeCharacter{0156}{\cedilla{R}}%
+ \DeclareUnicodeCharacter{0157}{\cedilla{r}}%
+ \DeclareUnicodeCharacter{0158}{\v{R}}%
+ \DeclareUnicodeCharacter{0159}{\v{r}}%
+ \DeclareUnicodeCharacter{015A}{\'S}%
+ \DeclareUnicodeCharacter{015B}{\'s}%
+ \DeclareUnicodeCharacter{015C}{\^S}%
+ \DeclareUnicodeCharacter{015D}{\^s}%
+ \DeclareUnicodeCharacter{015E}{\cedilla{S}}%
+ \DeclareUnicodeCharacter{015F}{\cedilla{s}}%
+ %
+ \DeclareUnicodeCharacter{0160}{\v{S}}%
+ \DeclareUnicodeCharacter{0161}{\v{s}}%
+ \DeclareUnicodeCharacter{0162}{\cedilla{T}}%
+ \DeclareUnicodeCharacter{0163}{\cedilla{t}}%
+ \DeclareUnicodeCharacter{0164}{\v{T}}%
+ \DeclareUnicodeCharacter{0165}{\v{t}}%
+ \DeclareUnicodeCharacter{0166}{\missingcharmsg{H WITH STROKE}}%
+ \DeclareUnicodeCharacter{0167}{\missingcharmsg{h WITH STROKE}}%
+ \DeclareUnicodeCharacter{0168}{\~U}%
+ \DeclareUnicodeCharacter{0169}{\~u}%
+ \DeclareUnicodeCharacter{016A}{\=U}%
+ \DeclareUnicodeCharacter{016B}{\=u}%
+ \DeclareUnicodeCharacter{016C}{\u{U}}%
+ \DeclareUnicodeCharacter{016D}{\u{u}}%
+ \DeclareUnicodeCharacter{016E}{\ringaccent{U}}%
+ \DeclareUnicodeCharacter{016F}{\ringaccent{u}}%
+ %
+ \DeclareUnicodeCharacter{0170}{\H{U}}%
+ \DeclareUnicodeCharacter{0171}{\H{u}}%
+ \DeclareUnicodeCharacter{0172}{\ogonek{U}}%
+ \DeclareUnicodeCharacter{0173}{\ogonek{u}}%
+ \DeclareUnicodeCharacter{0174}{\^W}%
+ \DeclareUnicodeCharacter{0175}{\^w}%
+ \DeclareUnicodeCharacter{0176}{\^Y}%
+ \DeclareUnicodeCharacter{0177}{\^y}%
+ \DeclareUnicodeCharacter{0178}{\"Y}%
+ \DeclareUnicodeCharacter{0179}{\'Z}%
+ \DeclareUnicodeCharacter{017A}{\'z}%
+ \DeclareUnicodeCharacter{017B}{\dotaccent{Z}}%
+ \DeclareUnicodeCharacter{017C}{\dotaccent{z}}%
+ \DeclareUnicodeCharacter{017D}{\v{Z}}%
+ \DeclareUnicodeCharacter{017E}{\v{z}}%
+ \DeclareUnicodeCharacter{017F}{\missingcharmsg{LONG S}}%
+ %
+ \DeclareUnicodeCharacter{01C4}{D\v{Z}}%
+ \DeclareUnicodeCharacter{01C5}{D\v{z}}%
+ \DeclareUnicodeCharacter{01C6}{d\v{z}}%
+ \DeclareUnicodeCharacter{01C7}{LJ}%
+ \DeclareUnicodeCharacter{01C8}{Lj}%
+ \DeclareUnicodeCharacter{01C9}{lj}%
+ \DeclareUnicodeCharacter{01CA}{NJ}%
+ \DeclareUnicodeCharacter{01CB}{Nj}%
+ \DeclareUnicodeCharacter{01CC}{nj}%
+ \DeclareUnicodeCharacter{01CD}{\v{A}}%
+ \DeclareUnicodeCharacter{01CE}{\v{a}}%
+ \DeclareUnicodeCharacter{01CF}{\v{I}}%
+ %
+ \DeclareUnicodeCharacter{01D0}{\v{\dotless{i}}}%
+ \DeclareUnicodeCharacter{01D1}{\v{O}}%
+ \DeclareUnicodeCharacter{01D2}{\v{o}}%
+ \DeclareUnicodeCharacter{01D3}{\v{U}}%
+ \DeclareUnicodeCharacter{01D4}{\v{u}}%
+ %
+ \DeclareUnicodeCharacter{01E2}{\={\AE}}%
+ \DeclareUnicodeCharacter{01E3}{\={\ae}}%
+ \DeclareUnicodeCharacter{01E6}{\v{G}}%
+ \DeclareUnicodeCharacter{01E7}{\v{g}}%
+ \DeclareUnicodeCharacter{01E8}{\v{K}}%
+ \DeclareUnicodeCharacter{01E9}{\v{k}}%
+ %
+ \DeclareUnicodeCharacter{01F0}{\v{\dotless{j}}}%
+ \DeclareUnicodeCharacter{01F1}{DZ}%
+ \DeclareUnicodeCharacter{01F2}{Dz}%
+ \DeclareUnicodeCharacter{01F3}{dz}%
+ \DeclareUnicodeCharacter{01F4}{\'G}%
+ \DeclareUnicodeCharacter{01F5}{\'g}%
+ \DeclareUnicodeCharacter{01F8}{\`N}%
+ \DeclareUnicodeCharacter{01F9}{\`n}%
+ \DeclareUnicodeCharacter{01FC}{\'{\AE}}%
+ \DeclareUnicodeCharacter{01FD}{\'{\ae}}%
+ \DeclareUnicodeCharacter{01FE}{\'{\O}}%
+ \DeclareUnicodeCharacter{01FF}{\'{\o}}%
+ %
+ \DeclareUnicodeCharacter{021E}{\v{H}}%
+ \DeclareUnicodeCharacter{021F}{\v{h}}%
+ %
+ \DeclareUnicodeCharacter{0226}{\dotaccent{A}}%
+ \DeclareUnicodeCharacter{0227}{\dotaccent{a}}%
+ \DeclareUnicodeCharacter{0228}{\cedilla{E}}%
+ \DeclareUnicodeCharacter{0229}{\cedilla{e}}%
+ \DeclareUnicodeCharacter{022E}{\dotaccent{O}}%
+ \DeclareUnicodeCharacter{022F}{\dotaccent{o}}%
+ %
+ \DeclareUnicodeCharacter{0232}{\=Y}%
+ \DeclareUnicodeCharacter{0233}{\=y}%
+ \DeclareUnicodeCharacter{0237}{\dotless{j}}%
+ %
+ \DeclareUnicodeCharacter{02DB}{\ogonek{ }}%
+ %
+ % Greek letters upper case
+ \DeclareUnicodeCharacter{0391}{{\it A}}%
+ \DeclareUnicodeCharacter{0392}{{\it B}}%
+ \DeclareUnicodeCharacter{0393}{\ensuremath{\mit\Gamma}}%
+ \DeclareUnicodeCharacter{0394}{\ensuremath{\mit\Delta}}%
+ \DeclareUnicodeCharacter{0395}{{\it E}}%
+ \DeclareUnicodeCharacter{0396}{{\it Z}}%
+ \DeclareUnicodeCharacter{0397}{{\it H}}%
+ \DeclareUnicodeCharacter{0398}{\ensuremath{\mit\Theta}}%
+ \DeclareUnicodeCharacter{0399}{{\it I}}%
+ \DeclareUnicodeCharacter{039A}{{\it K}}%
+ \DeclareUnicodeCharacter{039B}{\ensuremath{\mit\Lambda}}%
+ \DeclareUnicodeCharacter{039C}{{\it M}}%
+ \DeclareUnicodeCharacter{039D}{{\it N}}%
+ \DeclareUnicodeCharacter{039E}{\ensuremath{\mit\Xi}}%
+ \DeclareUnicodeCharacter{039F}{{\it O}}%
+ \DeclareUnicodeCharacter{03A0}{\ensuremath{\mit\Pi}}%
+ \DeclareUnicodeCharacter{03A1}{{\it P}}%
+ %\DeclareUnicodeCharacter{03A2}{} % none - corresponds to final sigma
+ \DeclareUnicodeCharacter{03A3}{\ensuremath{\mit\Sigma}}%
+ \DeclareUnicodeCharacter{03A4}{{\it T}}%
+ \DeclareUnicodeCharacter{03A5}{\ensuremath{\mit\Upsilon}}%
+ \DeclareUnicodeCharacter{03A6}{\ensuremath{\mit\Phi}}%
+ \DeclareUnicodeCharacter{03A7}{{\it X}}%
+ \DeclareUnicodeCharacter{03A8}{\ensuremath{\mit\Psi}}%
+ \DeclareUnicodeCharacter{03A9}{\ensuremath{\mit\Omega}}%
+ %
+ % Vowels with accents
+ \DeclareUnicodeCharacter{0390}{\ensuremath{\ddot{\acute\iota}}}%
+ \DeclareUnicodeCharacter{03AC}{\ensuremath{\acute\alpha}}%
+ \DeclareUnicodeCharacter{03AD}{\ensuremath{\acute\epsilon}}%
+ \DeclareUnicodeCharacter{03AE}{\ensuremath{\acute\eta}}%
+ \DeclareUnicodeCharacter{03AF}{\ensuremath{\acute\iota}}%
+ \DeclareUnicodeCharacter{03B0}{\ensuremath{\acute{\ddot\upsilon}}}%
+ %
+ % Standalone accent
+ \DeclareUnicodeCharacter{0384}{\ensuremath{\acute{\ }}}%
+ %
+ % Greek letters lower case
+ \DeclareUnicodeCharacter{03B1}{\ensuremath\alpha}%
+ \DeclareUnicodeCharacter{03B2}{\ensuremath\beta}%
+ \DeclareUnicodeCharacter{03B3}{\ensuremath\gamma}%
+ \DeclareUnicodeCharacter{03B4}{\ensuremath\delta}%
+ \DeclareUnicodeCharacter{03B5}{\ensuremath\epsilon}%
+ \DeclareUnicodeCharacter{03B6}{\ensuremath\zeta}%
+ \DeclareUnicodeCharacter{03B7}{\ensuremath\eta}%
+ \DeclareUnicodeCharacter{03B8}{\ensuremath\theta}%
+ \DeclareUnicodeCharacter{03B9}{\ensuremath\iota}%
+ \DeclareUnicodeCharacter{03BA}{\ensuremath\kappa}%
+ \DeclareUnicodeCharacter{03BB}{\ensuremath\lambda}%
+ \DeclareUnicodeCharacter{03BC}{\ensuremath\mu}%
+ \DeclareUnicodeCharacter{03BD}{\ensuremath\nu}%
+ \DeclareUnicodeCharacter{03BE}{\ensuremath\xi}%
+ \DeclareUnicodeCharacter{03BF}{{\it o}}% omicron
+ \DeclareUnicodeCharacter{03C0}{\ensuremath\pi}%
+ \DeclareUnicodeCharacter{03C1}{\ensuremath\rho}%
+ \DeclareUnicodeCharacter{03C2}{\ensuremath\varsigma}%
+ \DeclareUnicodeCharacter{03C3}{\ensuremath\sigma}%
+ \DeclareUnicodeCharacter{03C4}{\ensuremath\tau}%
+ \DeclareUnicodeCharacter{03C5}{\ensuremath\upsilon}%
+ \DeclareUnicodeCharacter{03C6}{\ensuremath\phi}%
+ \DeclareUnicodeCharacter{03C7}{\ensuremath\chi}%
+ \DeclareUnicodeCharacter{03C8}{\ensuremath\psi}%
+ \DeclareUnicodeCharacter{03C9}{\ensuremath\omega}%
+ %
+ % More Greek vowels with accents
+ \DeclareUnicodeCharacter{03CA}{\ensuremath{\ddot\iota}}%
+ \DeclareUnicodeCharacter{03CB}{\ensuremath{\ddot\upsilon}}%
+ \DeclareUnicodeCharacter{03CC}{\ensuremath{\acute o}}%
+ \DeclareUnicodeCharacter{03CD}{\ensuremath{\acute\upsilon}}%
+ \DeclareUnicodeCharacter{03CE}{\ensuremath{\acute\omega}}%
+ %
+ % Variant Greek letters
+ \DeclareUnicodeCharacter{03D1}{\ensuremath\vartheta}%
+ \DeclareUnicodeCharacter{03D6}{\ensuremath\varpi}%
+ \DeclareUnicodeCharacter{03F1}{\ensuremath\varrho}%
+ %
+ \DeclareUnicodeCharacter{1E02}{\dotaccent{B}}%
+ \DeclareUnicodeCharacter{1E03}{\dotaccent{b}}%
+ \DeclareUnicodeCharacter{1E04}{\udotaccent{B}}%
+ \DeclareUnicodeCharacter{1E05}{\udotaccent{b}}%
+ \DeclareUnicodeCharacter{1E06}{\ubaraccent{B}}%
+ \DeclareUnicodeCharacter{1E07}{\ubaraccent{b}}%
+ \DeclareUnicodeCharacter{1E0A}{\dotaccent{D}}%
+ \DeclareUnicodeCharacter{1E0B}{\dotaccent{d}}%
+ \DeclareUnicodeCharacter{1E0C}{\udotaccent{D}}%
+ \DeclareUnicodeCharacter{1E0D}{\udotaccent{d}}%
+ \DeclareUnicodeCharacter{1E0E}{\ubaraccent{D}}%
+ \DeclareUnicodeCharacter{1E0F}{\ubaraccent{d}}%
+ %
+ \DeclareUnicodeCharacter{1E1E}{\dotaccent{F}}%
+ \DeclareUnicodeCharacter{1E1F}{\dotaccent{f}}%
+ %
+ \DeclareUnicodeCharacter{1E20}{\=G}%
+ \DeclareUnicodeCharacter{1E21}{\=g}%
+ \DeclareUnicodeCharacter{1E22}{\dotaccent{H}}%
+ \DeclareUnicodeCharacter{1E23}{\dotaccent{h}}%
+ \DeclareUnicodeCharacter{1E24}{\udotaccent{H}}%
+ \DeclareUnicodeCharacter{1E25}{\udotaccent{h}}%
+ \DeclareUnicodeCharacter{1E26}{\"H}%
+ \DeclareUnicodeCharacter{1E27}{\"h}%
+ %
+ \DeclareUnicodeCharacter{1E30}{\'K}%
+ \DeclareUnicodeCharacter{1E31}{\'k}%
+ \DeclareUnicodeCharacter{1E32}{\udotaccent{K}}%
+ \DeclareUnicodeCharacter{1E33}{\udotaccent{k}}%
+ \DeclareUnicodeCharacter{1E34}{\ubaraccent{K}}%
+ \DeclareUnicodeCharacter{1E35}{\ubaraccent{k}}%
+ \DeclareUnicodeCharacter{1E36}{\udotaccent{L}}%
+ \DeclareUnicodeCharacter{1E37}{\udotaccent{l}}%
+ \DeclareUnicodeCharacter{1E3A}{\ubaraccent{L}}%
+ \DeclareUnicodeCharacter{1E3B}{\ubaraccent{l}}%
+ \DeclareUnicodeCharacter{1E3E}{\'M}%
+ \DeclareUnicodeCharacter{1E3F}{\'m}%
+ %
+ \DeclareUnicodeCharacter{1E40}{\dotaccent{M}}%
+ \DeclareUnicodeCharacter{1E41}{\dotaccent{m}}%
+ \DeclareUnicodeCharacter{1E42}{\udotaccent{M}}%
+ \DeclareUnicodeCharacter{1E43}{\udotaccent{m}}%
+ \DeclareUnicodeCharacter{1E44}{\dotaccent{N}}%
+ \DeclareUnicodeCharacter{1E45}{\dotaccent{n}}%
+ \DeclareUnicodeCharacter{1E46}{\udotaccent{N}}%
+ \DeclareUnicodeCharacter{1E47}{\udotaccent{n}}%
+ \DeclareUnicodeCharacter{1E48}{\ubaraccent{N}}%
+ \DeclareUnicodeCharacter{1E49}{\ubaraccent{n}}%
+ %
+ \DeclareUnicodeCharacter{1E54}{\'P}%
+ \DeclareUnicodeCharacter{1E55}{\'p}%
+ \DeclareUnicodeCharacter{1E56}{\dotaccent{P}}%
+ \DeclareUnicodeCharacter{1E57}{\dotaccent{p}}%
+ \DeclareUnicodeCharacter{1E58}{\dotaccent{R}}%
+ \DeclareUnicodeCharacter{1E59}{\dotaccent{r}}%
+ \DeclareUnicodeCharacter{1E5A}{\udotaccent{R}}%
+ \DeclareUnicodeCharacter{1E5B}{\udotaccent{r}}%
+ \DeclareUnicodeCharacter{1E5E}{\ubaraccent{R}}%
+ \DeclareUnicodeCharacter{1E5F}{\ubaraccent{r}}%
+ %
+ \DeclareUnicodeCharacter{1E60}{\dotaccent{S}}%
+ \DeclareUnicodeCharacter{1E61}{\dotaccent{s}}%
+ \DeclareUnicodeCharacter{1E62}{\udotaccent{S}}%
+ \DeclareUnicodeCharacter{1E63}{\udotaccent{s}}%
+ \DeclareUnicodeCharacter{1E6A}{\dotaccent{T}}%
+ \DeclareUnicodeCharacter{1E6B}{\dotaccent{t}}%
+ \DeclareUnicodeCharacter{1E6C}{\udotaccent{T}}%
+ \DeclareUnicodeCharacter{1E6D}{\udotaccent{t}}%
+ \DeclareUnicodeCharacter{1E6E}{\ubaraccent{T}}%
+ \DeclareUnicodeCharacter{1E6F}{\ubaraccent{t}}%
+ %
+ \DeclareUnicodeCharacter{1E7C}{\~V}%
+ \DeclareUnicodeCharacter{1E7D}{\~v}%
+ \DeclareUnicodeCharacter{1E7E}{\udotaccent{V}}%
+ \DeclareUnicodeCharacter{1E7F}{\udotaccent{v}}%
+ %
+ \DeclareUnicodeCharacter{1E80}{\`W}%
+ \DeclareUnicodeCharacter{1E81}{\`w}%
+ \DeclareUnicodeCharacter{1E82}{\'W}%
+ \DeclareUnicodeCharacter{1E83}{\'w}%
+ \DeclareUnicodeCharacter{1E84}{\"W}%
+ \DeclareUnicodeCharacter{1E85}{\"w}%
+ \DeclareUnicodeCharacter{1E86}{\dotaccent{W}}%
+ \DeclareUnicodeCharacter{1E87}{\dotaccent{w}}%
+ \DeclareUnicodeCharacter{1E88}{\udotaccent{W}}%
+ \DeclareUnicodeCharacter{1E89}{\udotaccent{w}}%
+ \DeclareUnicodeCharacter{1E8A}{\dotaccent{X}}%
+ \DeclareUnicodeCharacter{1E8B}{\dotaccent{x}}%
+ \DeclareUnicodeCharacter{1E8C}{\"X}%
+ \DeclareUnicodeCharacter{1E8D}{\"x}%
+ \DeclareUnicodeCharacter{1E8E}{\dotaccent{Y}}%
+ \DeclareUnicodeCharacter{1E8F}{\dotaccent{y}}%
+ %
+ \DeclareUnicodeCharacter{1E90}{\^Z}%
+ \DeclareUnicodeCharacter{1E91}{\^z}%
+ \DeclareUnicodeCharacter{1E92}{\udotaccent{Z}}%
+ \DeclareUnicodeCharacter{1E93}{\udotaccent{z}}%
+ \DeclareUnicodeCharacter{1E94}{\ubaraccent{Z}}%
+ \DeclareUnicodeCharacter{1E95}{\ubaraccent{z}}%
+ \DeclareUnicodeCharacter{1E96}{\ubaraccent{h}}%
+ \DeclareUnicodeCharacter{1E97}{\"t}%
+ \DeclareUnicodeCharacter{1E98}{\ringaccent{w}}%
+ \DeclareUnicodeCharacter{1E99}{\ringaccent{y}}%
+ %
+ \DeclareUnicodeCharacter{1EA0}{\udotaccent{A}}%
+ \DeclareUnicodeCharacter{1EA1}{\udotaccent{a}}%
+ %
+ \DeclareUnicodeCharacter{1EB8}{\udotaccent{E}}%
+ \DeclareUnicodeCharacter{1EB9}{\udotaccent{e}}%
+ \DeclareUnicodeCharacter{1EBC}{\~E}%
+ \DeclareUnicodeCharacter{1EBD}{\~e}%
+ %
+ \DeclareUnicodeCharacter{1ECA}{\udotaccent{I}}%
+ \DeclareUnicodeCharacter{1ECB}{\udotaccent{i}}%
+ \DeclareUnicodeCharacter{1ECC}{\udotaccent{O}}%
+ \DeclareUnicodeCharacter{1ECD}{\udotaccent{o}}%
+ %
+ \DeclareUnicodeCharacter{1EE4}{\udotaccent{U}}%
+ \DeclareUnicodeCharacter{1EE5}{\udotaccent{u}}%
+ %
+ \DeclareUnicodeCharacter{1EF2}{\`Y}%
+ \DeclareUnicodeCharacter{1EF3}{\`y}%
+ \DeclareUnicodeCharacter{1EF4}{\udotaccent{Y}}%
+ %
+ \DeclareUnicodeCharacter{1EF8}{\~Y}%
+ \DeclareUnicodeCharacter{1EF9}{\~y}%
+ %
+ % Punctuation
+ \DeclareUnicodeCharacter{2013}{--}%
+ \DeclareUnicodeCharacter{2014}{---}%
+ \DeclareUnicodeCharacter{2018}{\quoteleft}%
+ \DeclareUnicodeCharacter{2019}{\quoteright}%
+ \DeclareUnicodeCharacter{201A}{\quotesinglbase}%
+ \DeclareUnicodeCharacter{201C}{\quotedblleft}%
+ \DeclareUnicodeCharacter{201D}{\quotedblright}%
+ \DeclareUnicodeCharacter{201E}{\quotedblbase}%
+ \DeclareUnicodeCharacter{2020}{\ensuremath\dagger}%
+ \DeclareUnicodeCharacter{2021}{\ensuremath\ddagger}%
+ \DeclareUnicodeCharacter{2022}{\bullet}%
+ \DeclareUnicodeCharacter{202F}{\thinspace}%
+ \DeclareUnicodeCharacter{2026}{\dots}%
+ \DeclareUnicodeCharacter{2039}{\guilsinglleft}%
+ \DeclareUnicodeCharacter{203A}{\guilsinglright}%
+ %
+ \DeclareUnicodeCharacter{20AC}{\euro}%
+ %
+ \DeclareUnicodeCharacter{2192}{\expansion}%
+ \DeclareUnicodeCharacter{21D2}{\result}%
+ %
+ % Mathematical symbols
+ \DeclareUnicodeCharacter{2200}{\ensuremath\forall}%
+ \DeclareUnicodeCharacter{2203}{\ensuremath\exists}%
+ \DeclareUnicodeCharacter{2208}{\ensuremath\in}%
+ \DeclareUnicodeCharacter{2212}{\minus}%
+ \DeclareUnicodeCharacter{2217}{\ast}%
+ \DeclareUnicodeCharacter{221E}{\ensuremath\infty}%
+ \DeclareUnicodeCharacter{2225}{\ensuremath\parallel}%
+ \DeclareUnicodeCharacter{2227}{\ensuremath\wedge}%
+ \DeclareUnicodeCharacter{2229}{\ensuremath\cap}%
+ \DeclareUnicodeCharacter{2261}{\equiv}%
+ \DeclareUnicodeCharacter{2264}{\ensuremath\leq}%
+ \DeclareUnicodeCharacter{2265}{\ensuremath\geq}%
+ \DeclareUnicodeCharacter{2282}{\ensuremath\subset}%
+ \DeclareUnicodeCharacter{2287}{\ensuremath\supseteq}%
+ %
+ \DeclareUnicodeCharacter{2016}{\ensuremath\Vert}%
+ \DeclareUnicodeCharacter{2032}{\ensuremath\prime}%
+ \DeclareUnicodeCharacter{210F}{\ensuremath\hbar}%
+ \DeclareUnicodeCharacter{2111}{\ensuremath\Im}%
+ \DeclareUnicodeCharacter{2113}{\ensuremath\ell}%
+ \DeclareUnicodeCharacter{2118}{\ensuremath\wp}%
+ \DeclareUnicodeCharacter{211C}{\ensuremath\Re}%
+ \DeclareUnicodeCharacter{2127}{\ensuremath\mho}%
+ \DeclareUnicodeCharacter{2135}{\ensuremath\aleph}%
+ \DeclareUnicodeCharacter{2190}{\ensuremath\leftarrow}%
+ \DeclareUnicodeCharacter{2191}{\ensuremath\uparrow}%
+ \DeclareUnicodeCharacter{2193}{\ensuremath\downarrow}%
+ \DeclareUnicodeCharacter{2194}{\ensuremath\leftrightarrow}%
+ \DeclareUnicodeCharacter{2195}{\ensuremath\updownarrow}%
+ \DeclareUnicodeCharacter{2196}{\ensuremath\nwarrow}%
+ \DeclareUnicodeCharacter{2197}{\ensuremath\nearrow}%
+ \DeclareUnicodeCharacter{2198}{\ensuremath\searrow}%
+ \DeclareUnicodeCharacter{2199}{\ensuremath\swarrow}%
+ \DeclareUnicodeCharacter{21A6}{\ensuremath\mapsto}%
+ \DeclareUnicodeCharacter{21A9}{\ensuremath\hookleftarrow}%
+ \DeclareUnicodeCharacter{21AA}{\ensuremath\hookrightarrow}%
+ \DeclareUnicodeCharacter{21BC}{\ensuremath\leftharpoonup}%
+ \DeclareUnicodeCharacter{21BD}{\ensuremath\leftharpoondown}%
+ \DeclareUnicodeCharacter{21BE}{\ensuremath\upharpoonright}%
+ \DeclareUnicodeCharacter{21C0}{\ensuremath\rightharpoonup}%
+ \DeclareUnicodeCharacter{21C1}{\ensuremath\rightharpoondown}%
+ \DeclareUnicodeCharacter{21CC}{\ensuremath\rightleftharpoons}%
+ \DeclareUnicodeCharacter{21D0}{\ensuremath\Leftarrow}%
+ \DeclareUnicodeCharacter{21D1}{\ensuremath\Uparrow}%
+ \DeclareUnicodeCharacter{21D3}{\ensuremath\Downarrow}%
+ \DeclareUnicodeCharacter{21D4}{\ensuremath\Leftrightarrow}%
+ \DeclareUnicodeCharacter{21D5}{\ensuremath\Updownarrow}%
+ \DeclareUnicodeCharacter{21DD}{\ensuremath\leadsto}%
+ \DeclareUnicodeCharacter{2201}{\ensuremath\complement}%
+ \DeclareUnicodeCharacter{2202}{\ensuremath\partial}%
+ \DeclareUnicodeCharacter{2205}{\ensuremath\emptyset}%
+ \DeclareUnicodeCharacter{2207}{\ensuremath\nabla}%
+ \DeclareUnicodeCharacter{2209}{\ensuremath\notin}%
+ \DeclareUnicodeCharacter{220B}{\ensuremath\owns}%
+ \DeclareUnicodeCharacter{220F}{\ensuremath\prod}%
+ \DeclareUnicodeCharacter{2210}{\ensuremath\coprod}%
+ \DeclareUnicodeCharacter{2211}{\ensuremath\sum}%
+ \DeclareUnicodeCharacter{2213}{\ensuremath\mp}%
+ \DeclareUnicodeCharacter{2218}{\ensuremath\circ}%
+ \DeclareUnicodeCharacter{221A}{\ensuremath\surd}%
+ \DeclareUnicodeCharacter{221D}{\ensuremath\propto}%
+ \DeclareUnicodeCharacter{2220}{\ensuremath\angle}%
+ \DeclareUnicodeCharacter{2223}{\ensuremath\mid}%
+ \DeclareUnicodeCharacter{2228}{\ensuremath\vee}%
+ \DeclareUnicodeCharacter{222A}{\ensuremath\cup}%
+ \DeclareUnicodeCharacter{222B}{\ensuremath\smallint}%
+ \DeclareUnicodeCharacter{222E}{\ensuremath\oint}%
+ \DeclareUnicodeCharacter{223C}{\ensuremath\sim}%
+ \DeclareUnicodeCharacter{2240}{\ensuremath\wr}%
+ \DeclareUnicodeCharacter{2243}{\ensuremath\simeq}%
+ \DeclareUnicodeCharacter{2245}{\ensuremath\cong}%
+ \DeclareUnicodeCharacter{2248}{\ensuremath\approx}%
+ \DeclareUnicodeCharacter{224D}{\ensuremath\asymp}%
+ \DeclareUnicodeCharacter{2250}{\ensuremath\doteq}%
+ \DeclareUnicodeCharacter{2260}{\ensuremath\neq}%
+ \DeclareUnicodeCharacter{226A}{\ensuremath\ll}%
+ \DeclareUnicodeCharacter{226B}{\ensuremath\gg}%
+ \DeclareUnicodeCharacter{227A}{\ensuremath\prec}%
+ \DeclareUnicodeCharacter{227B}{\ensuremath\succ}%
+ \DeclareUnicodeCharacter{2283}{\ensuremath\supset}%
+ \DeclareUnicodeCharacter{2286}{\ensuremath\subseteq}%
+ \DeclareUnicodeCharacter{228E}{\ensuremath\uplus}%
+ \DeclareUnicodeCharacter{228F}{\ensuremath\sqsubset}%
+ \DeclareUnicodeCharacter{2290}{\ensuremath\sqsupset}%
+ \DeclareUnicodeCharacter{2291}{\ensuremath\sqsubseteq}%
+ \DeclareUnicodeCharacter{2292}{\ensuremath\sqsupseteq}%
+ \DeclareUnicodeCharacter{2293}{\ensuremath\sqcap}%
+ \DeclareUnicodeCharacter{2294}{\ensuremath\sqcup}%
+ \DeclareUnicodeCharacter{2295}{\ensuremath\oplus}%
+ \DeclareUnicodeCharacter{2296}{\ensuremath\ominus}%
+ \DeclareUnicodeCharacter{2297}{\ensuremath\otimes}%
+ \DeclareUnicodeCharacter{2298}{\ensuremath\oslash}%
+ \DeclareUnicodeCharacter{2299}{\ensuremath\odot}%
+ \DeclareUnicodeCharacter{22A2}{\ensuremath\vdash}%
+ \DeclareUnicodeCharacter{22A3}{\ensuremath\dashv}%
+ \DeclareUnicodeCharacter{22A4}{\ensuremath\ptextop}%
+ \DeclareUnicodeCharacter{22A5}{\ensuremath\bot}%
+ \DeclareUnicodeCharacter{22A8}{\ensuremath\models}%
+ \DeclareUnicodeCharacter{22B4}{\ensuremath\unlhd}%
+ \DeclareUnicodeCharacter{22B5}{\ensuremath\unrhd}%
+ \DeclareUnicodeCharacter{22C0}{\ensuremath\bigwedge}%
+ \DeclareUnicodeCharacter{22C1}{\ensuremath\bigvee}%
+ \DeclareUnicodeCharacter{22C2}{\ensuremath\bigcap}%
+ \DeclareUnicodeCharacter{22C3}{\ensuremath\bigcup}%
+ \DeclareUnicodeCharacter{22C4}{\ensuremath\diamond}%
+ \DeclareUnicodeCharacter{22C5}{\ensuremath\cdot}%
+ \DeclareUnicodeCharacter{22C6}{\ensuremath\star}%
+ \DeclareUnicodeCharacter{22C8}{\ensuremath\bowtie}%
+ \DeclareUnicodeCharacter{2308}{\ensuremath\lceil}%
+ \DeclareUnicodeCharacter{2309}{\ensuremath\rceil}%
+ \DeclareUnicodeCharacter{230A}{\ensuremath\lfloor}%
+ \DeclareUnicodeCharacter{230B}{\ensuremath\rfloor}%
+ \DeclareUnicodeCharacter{2322}{\ensuremath\frown}%
+ \DeclareUnicodeCharacter{2323}{\ensuremath\smile}%
+ %
+ \DeclareUnicodeCharacter{25A1}{\ensuremath\Box}%
+ \DeclareUnicodeCharacter{25B3}{\ensuremath\triangle}%
+ \DeclareUnicodeCharacter{25B7}{\ensuremath\triangleright}%
+ \DeclareUnicodeCharacter{25BD}{\ensuremath\bigtriangledown}%
+ \DeclareUnicodeCharacter{25C1}{\ensuremath\triangleleft}%
+ \DeclareUnicodeCharacter{25C7}{\ensuremath\Diamond}%
+ \DeclareUnicodeCharacter{2660}{\ensuremath\spadesuit}%
+ \DeclareUnicodeCharacter{2661}{\ensuremath\heartsuit}%
+ \DeclareUnicodeCharacter{2662}{\ensuremath\diamondsuit}%
+ \DeclareUnicodeCharacter{2663}{\ensuremath\clubsuit}%
+ \DeclareUnicodeCharacter{266D}{\ensuremath\flat}%
+ \DeclareUnicodeCharacter{266E}{\ensuremath\natural}%
+ \DeclareUnicodeCharacter{266F}{\ensuremath\sharp}%
+ \DeclareUnicodeCharacter{26AA}{\ensuremath\bigcirc}%
+ \DeclareUnicodeCharacter{27B9}{\ensuremath\rangle}%
+ \DeclareUnicodeCharacter{27C2}{\ensuremath\perp}%
+ \DeclareUnicodeCharacter{27E8}{\ensuremath\langle}%
+ \DeclareUnicodeCharacter{27F5}{\ensuremath\longleftarrow}%
+ \DeclareUnicodeCharacter{27F6}{\ensuremath\longrightarrow}%
+ \DeclareUnicodeCharacter{27F7}{\ensuremath\longleftrightarrow}%
+ \DeclareUnicodeCharacter{27FC}{\ensuremath\longmapsto}%
+ \DeclareUnicodeCharacter{29F5}{\ensuremath\setminus}%
+ \DeclareUnicodeCharacter{2A00}{\ensuremath\bigodot}%
+ \DeclareUnicodeCharacter{2A01}{\ensuremath\bigoplus}%
+ \DeclareUnicodeCharacter{2A02}{\ensuremath\bigotimes}%
+ \DeclareUnicodeCharacter{2A04}{\ensuremath\biguplus}%
+ \DeclareUnicodeCharacter{2A06}{\ensuremath\bigsqcup}%
+ \DeclareUnicodeCharacter{2A1D}{\ensuremath\Join}%
+ \DeclareUnicodeCharacter{2A3F}{\ensuremath\amalg}%
+ \DeclareUnicodeCharacter{2AAF}{\ensuremath\preceq}%
+ \DeclareUnicodeCharacter{2AB0}{\ensuremath\succeq}%
+ %
+ \global\mathchardef\checkmark="1370% actually the square root sign
+ \DeclareUnicodeCharacter{2713}{\ensuremath\checkmark}%
+}% end of \unicodechardefs
+
+% UTF-8 byte sequence (pdfTeX) definitions (replacing and @U command)
+% It makes the setting that replace UTF-8 byte sequence.
\def\utfeightchardefs{%
- \DeclareUnicodeCharacter{00A0}{\tie}
- \DeclareUnicodeCharacter{00A1}{\exclamdown}
- \DeclareUnicodeCharacter{00A3}{\pounds}
- \DeclareUnicodeCharacter{00A8}{\"{ }}
- \DeclareUnicodeCharacter{00A9}{\copyright}
- \DeclareUnicodeCharacter{00AA}{\ordf}
- \DeclareUnicodeCharacter{00AB}{\guillemetleft}
- \DeclareUnicodeCharacter{00AD}{\-}
- \DeclareUnicodeCharacter{00AE}{\registeredsymbol}
- \DeclareUnicodeCharacter{00AF}{\={ }}
-
- \DeclareUnicodeCharacter{00B0}{\ringaccent{ }}
- \DeclareUnicodeCharacter{00B4}{\'{ }}
- \DeclareUnicodeCharacter{00B8}{\cedilla{ }}
- \DeclareUnicodeCharacter{00BA}{\ordm}
- \DeclareUnicodeCharacter{00BB}{\guillemetright}
- \DeclareUnicodeCharacter{00BF}{\questiondown}
-
- \DeclareUnicodeCharacter{00C0}{\`A}
- \DeclareUnicodeCharacter{00C1}{\'A}
- \DeclareUnicodeCharacter{00C2}{\^A}
- \DeclareUnicodeCharacter{00C3}{\~A}
- \DeclareUnicodeCharacter{00C4}{\"A}
- \DeclareUnicodeCharacter{00C5}{\AA}
- \DeclareUnicodeCharacter{00C6}{\AE}
- \DeclareUnicodeCharacter{00C7}{\cedilla{C}}
- \DeclareUnicodeCharacter{00C8}{\`E}
- \DeclareUnicodeCharacter{00C9}{\'E}
- \DeclareUnicodeCharacter{00CA}{\^E}
- \DeclareUnicodeCharacter{00CB}{\"E}
- \DeclareUnicodeCharacter{00CC}{\`I}
- \DeclareUnicodeCharacter{00CD}{\'I}
- \DeclareUnicodeCharacter{00CE}{\^I}
- \DeclareUnicodeCharacter{00CF}{\"I}
-
- \DeclareUnicodeCharacter{00D0}{\DH}
- \DeclareUnicodeCharacter{00D1}{\~N}
- \DeclareUnicodeCharacter{00D2}{\`O}
- \DeclareUnicodeCharacter{00D3}{\'O}
- \DeclareUnicodeCharacter{00D4}{\^O}
- \DeclareUnicodeCharacter{00D5}{\~O}
- \DeclareUnicodeCharacter{00D6}{\"O}
- \DeclareUnicodeCharacter{00D8}{\O}
- \DeclareUnicodeCharacter{00D9}{\`U}
- \DeclareUnicodeCharacter{00DA}{\'U}
- \DeclareUnicodeCharacter{00DB}{\^U}
- \DeclareUnicodeCharacter{00DC}{\"U}
- \DeclareUnicodeCharacter{00DD}{\'Y}
- \DeclareUnicodeCharacter{00DE}{\TH}
- \DeclareUnicodeCharacter{00DF}{\ss}
-
- \DeclareUnicodeCharacter{00E0}{\`a}
- \DeclareUnicodeCharacter{00E1}{\'a}
- \DeclareUnicodeCharacter{00E2}{\^a}
- \DeclareUnicodeCharacter{00E3}{\~a}
- \DeclareUnicodeCharacter{00E4}{\"a}
- \DeclareUnicodeCharacter{00E5}{\aa}
- \DeclareUnicodeCharacter{00E6}{\ae}
- \DeclareUnicodeCharacter{00E7}{\cedilla{c}}
- \DeclareUnicodeCharacter{00E8}{\`e}
- \DeclareUnicodeCharacter{00E9}{\'e}
- \DeclareUnicodeCharacter{00EA}{\^e}
- \DeclareUnicodeCharacter{00EB}{\"e}
- \DeclareUnicodeCharacter{00EC}{\`{\dotless{i}}}
- \DeclareUnicodeCharacter{00ED}{\'{\dotless{i}}}
- \DeclareUnicodeCharacter{00EE}{\^{\dotless{i}}}
- \DeclareUnicodeCharacter{00EF}{\"{\dotless{i}}}
-
- \DeclareUnicodeCharacter{00F0}{\dh}
- \DeclareUnicodeCharacter{00F1}{\~n}
- \DeclareUnicodeCharacter{00F2}{\`o}
- \DeclareUnicodeCharacter{00F3}{\'o}
- \DeclareUnicodeCharacter{00F4}{\^o}
- \DeclareUnicodeCharacter{00F5}{\~o}
- \DeclareUnicodeCharacter{00F6}{\"o}
- \DeclareUnicodeCharacter{00F8}{\o}
- \DeclareUnicodeCharacter{00F9}{\`u}
- \DeclareUnicodeCharacter{00FA}{\'u}
- \DeclareUnicodeCharacter{00FB}{\^u}
- \DeclareUnicodeCharacter{00FC}{\"u}
- \DeclareUnicodeCharacter{00FD}{\'y}
- \DeclareUnicodeCharacter{00FE}{\th}
- \DeclareUnicodeCharacter{00FF}{\"y}
-
- \DeclareUnicodeCharacter{0100}{\=A}
- \DeclareUnicodeCharacter{0101}{\=a}
- \DeclareUnicodeCharacter{0102}{\u{A}}
- \DeclareUnicodeCharacter{0103}{\u{a}}
- \DeclareUnicodeCharacter{0104}{\ogonek{A}}
- \DeclareUnicodeCharacter{0105}{\ogonek{a}}
- \DeclareUnicodeCharacter{0106}{\'C}
- \DeclareUnicodeCharacter{0107}{\'c}
- \DeclareUnicodeCharacter{0108}{\^C}
- \DeclareUnicodeCharacter{0109}{\^c}
- \DeclareUnicodeCharacter{0118}{\ogonek{E}}
- \DeclareUnicodeCharacter{0119}{\ogonek{e}}
- \DeclareUnicodeCharacter{010A}{\dotaccent{C}}
- \DeclareUnicodeCharacter{010B}{\dotaccent{c}}
- \DeclareUnicodeCharacter{010C}{\v{C}}
- \DeclareUnicodeCharacter{010D}{\v{c}}
- \DeclareUnicodeCharacter{010E}{\v{D}}
-
- \DeclareUnicodeCharacter{0112}{\=E}
- \DeclareUnicodeCharacter{0113}{\=e}
- \DeclareUnicodeCharacter{0114}{\u{E}}
- \DeclareUnicodeCharacter{0115}{\u{e}}
- \DeclareUnicodeCharacter{0116}{\dotaccent{E}}
- \DeclareUnicodeCharacter{0117}{\dotaccent{e}}
- \DeclareUnicodeCharacter{011A}{\v{E}}
- \DeclareUnicodeCharacter{011B}{\v{e}}
- \DeclareUnicodeCharacter{011C}{\^G}
- \DeclareUnicodeCharacter{011D}{\^g}
- \DeclareUnicodeCharacter{011E}{\u{G}}
- \DeclareUnicodeCharacter{011F}{\u{g}}
-
- \DeclareUnicodeCharacter{0120}{\dotaccent{G}}
- \DeclareUnicodeCharacter{0121}{\dotaccent{g}}
- \DeclareUnicodeCharacter{0124}{\^H}
- \DeclareUnicodeCharacter{0125}{\^h}
- \DeclareUnicodeCharacter{0128}{\~I}
- \DeclareUnicodeCharacter{0129}{\~{\dotless{i}}}
- \DeclareUnicodeCharacter{012A}{\=I}
- \DeclareUnicodeCharacter{012B}{\={\dotless{i}}}
- \DeclareUnicodeCharacter{012C}{\u{I}}
- \DeclareUnicodeCharacter{012D}{\u{\dotless{i}}}
-
- \DeclareUnicodeCharacter{0130}{\dotaccent{I}}
- \DeclareUnicodeCharacter{0131}{\dotless{i}}
- \DeclareUnicodeCharacter{0132}{IJ}
- \DeclareUnicodeCharacter{0133}{ij}
- \DeclareUnicodeCharacter{0134}{\^J}
- \DeclareUnicodeCharacter{0135}{\^{\dotless{j}}}
- \DeclareUnicodeCharacter{0139}{\'L}
- \DeclareUnicodeCharacter{013A}{\'l}
-
- \DeclareUnicodeCharacter{0141}{\L}
- \DeclareUnicodeCharacter{0142}{\l}
- \DeclareUnicodeCharacter{0143}{\'N}
- \DeclareUnicodeCharacter{0144}{\'n}
- \DeclareUnicodeCharacter{0147}{\v{N}}
- \DeclareUnicodeCharacter{0148}{\v{n}}
- \DeclareUnicodeCharacter{014C}{\=O}
- \DeclareUnicodeCharacter{014D}{\=o}
- \DeclareUnicodeCharacter{014E}{\u{O}}
- \DeclareUnicodeCharacter{014F}{\u{o}}
-
- \DeclareUnicodeCharacter{0150}{\H{O}}
- \DeclareUnicodeCharacter{0151}{\H{o}}
- \DeclareUnicodeCharacter{0152}{\OE}
- \DeclareUnicodeCharacter{0153}{\oe}
- \DeclareUnicodeCharacter{0154}{\'R}
- \DeclareUnicodeCharacter{0155}{\'r}
- \DeclareUnicodeCharacter{0158}{\v{R}}
- \DeclareUnicodeCharacter{0159}{\v{r}}
- \DeclareUnicodeCharacter{015A}{\'S}
- \DeclareUnicodeCharacter{015B}{\'s}
- \DeclareUnicodeCharacter{015C}{\^S}
- \DeclareUnicodeCharacter{015D}{\^s}
- \DeclareUnicodeCharacter{015E}{\cedilla{S}}
- \DeclareUnicodeCharacter{015F}{\cedilla{s}}
-
- \DeclareUnicodeCharacter{0160}{\v{S}}
- \DeclareUnicodeCharacter{0161}{\v{s}}
- \DeclareUnicodeCharacter{0162}{\cedilla{t}}
- \DeclareUnicodeCharacter{0163}{\cedilla{T}}
- \DeclareUnicodeCharacter{0164}{\v{T}}
-
- \DeclareUnicodeCharacter{0168}{\~U}
- \DeclareUnicodeCharacter{0169}{\~u}
- \DeclareUnicodeCharacter{016A}{\=U}
- \DeclareUnicodeCharacter{016B}{\=u}
- \DeclareUnicodeCharacter{016C}{\u{U}}
- \DeclareUnicodeCharacter{016D}{\u{u}}
- \DeclareUnicodeCharacter{016E}{\ringaccent{U}}
- \DeclareUnicodeCharacter{016F}{\ringaccent{u}}
-
- \DeclareUnicodeCharacter{0170}{\H{U}}
- \DeclareUnicodeCharacter{0171}{\H{u}}
- \DeclareUnicodeCharacter{0174}{\^W}
- \DeclareUnicodeCharacter{0175}{\^w}
- \DeclareUnicodeCharacter{0176}{\^Y}
- \DeclareUnicodeCharacter{0177}{\^y}
- \DeclareUnicodeCharacter{0178}{\"Y}
- \DeclareUnicodeCharacter{0179}{\'Z}
- \DeclareUnicodeCharacter{017A}{\'z}
- \DeclareUnicodeCharacter{017B}{\dotaccent{Z}}
- \DeclareUnicodeCharacter{017C}{\dotaccent{z}}
- \DeclareUnicodeCharacter{017D}{\v{Z}}
- \DeclareUnicodeCharacter{017E}{\v{z}}
-
- \DeclareUnicodeCharacter{01C4}{D\v{Z}}
- \DeclareUnicodeCharacter{01C5}{D\v{z}}
- \DeclareUnicodeCharacter{01C6}{d\v{z}}
- \DeclareUnicodeCharacter{01C7}{LJ}
- \DeclareUnicodeCharacter{01C8}{Lj}
- \DeclareUnicodeCharacter{01C9}{lj}
- \DeclareUnicodeCharacter{01CA}{NJ}
- \DeclareUnicodeCharacter{01CB}{Nj}
- \DeclareUnicodeCharacter{01CC}{nj}
- \DeclareUnicodeCharacter{01CD}{\v{A}}
- \DeclareUnicodeCharacter{01CE}{\v{a}}
- \DeclareUnicodeCharacter{01CF}{\v{I}}
-
- \DeclareUnicodeCharacter{01D0}{\v{\dotless{i}}}
- \DeclareUnicodeCharacter{01D1}{\v{O}}
- \DeclareUnicodeCharacter{01D2}{\v{o}}
- \DeclareUnicodeCharacter{01D3}{\v{U}}
- \DeclareUnicodeCharacter{01D4}{\v{u}}
-
- \DeclareUnicodeCharacter{01E2}{\={\AE}}
- \DeclareUnicodeCharacter{01E3}{\={\ae}}
- \DeclareUnicodeCharacter{01E6}{\v{G}}
- \DeclareUnicodeCharacter{01E7}{\v{g}}
- \DeclareUnicodeCharacter{01E8}{\v{K}}
- \DeclareUnicodeCharacter{01E9}{\v{k}}
-
- \DeclareUnicodeCharacter{01F0}{\v{\dotless{j}}}
- \DeclareUnicodeCharacter{01F1}{DZ}
- \DeclareUnicodeCharacter{01F2}{Dz}
- \DeclareUnicodeCharacter{01F3}{dz}
- \DeclareUnicodeCharacter{01F4}{\'G}
- \DeclareUnicodeCharacter{01F5}{\'g}
- \DeclareUnicodeCharacter{01F8}{\`N}
- \DeclareUnicodeCharacter{01F9}{\`n}
- \DeclareUnicodeCharacter{01FC}{\'{\AE}}
- \DeclareUnicodeCharacter{01FD}{\'{\ae}}
- \DeclareUnicodeCharacter{01FE}{\'{\O}}
- \DeclareUnicodeCharacter{01FF}{\'{\o}}
-
- \DeclareUnicodeCharacter{021E}{\v{H}}
- \DeclareUnicodeCharacter{021F}{\v{h}}
-
- \DeclareUnicodeCharacter{0226}{\dotaccent{A}}
- \DeclareUnicodeCharacter{0227}{\dotaccent{a}}
- \DeclareUnicodeCharacter{0228}{\cedilla{E}}
- \DeclareUnicodeCharacter{0229}{\cedilla{e}}
- \DeclareUnicodeCharacter{022E}{\dotaccent{O}}
- \DeclareUnicodeCharacter{022F}{\dotaccent{o}}
-
- \DeclareUnicodeCharacter{0232}{\=Y}
- \DeclareUnicodeCharacter{0233}{\=y}
- \DeclareUnicodeCharacter{0237}{\dotless{j}}
-
- \DeclareUnicodeCharacter{02DB}{\ogonek{ }}
-
- \DeclareUnicodeCharacter{1E02}{\dotaccent{B}}
- \DeclareUnicodeCharacter{1E03}{\dotaccent{b}}
- \DeclareUnicodeCharacter{1E04}{\udotaccent{B}}
- \DeclareUnicodeCharacter{1E05}{\udotaccent{b}}
- \DeclareUnicodeCharacter{1E06}{\ubaraccent{B}}
- \DeclareUnicodeCharacter{1E07}{\ubaraccent{b}}
- \DeclareUnicodeCharacter{1E0A}{\dotaccent{D}}
- \DeclareUnicodeCharacter{1E0B}{\dotaccent{d}}
- \DeclareUnicodeCharacter{1E0C}{\udotaccent{D}}
- \DeclareUnicodeCharacter{1E0D}{\udotaccent{d}}
- \DeclareUnicodeCharacter{1E0E}{\ubaraccent{D}}
- \DeclareUnicodeCharacter{1E0F}{\ubaraccent{d}}
-
- \DeclareUnicodeCharacter{1E1E}{\dotaccent{F}}
- \DeclareUnicodeCharacter{1E1F}{\dotaccent{f}}
-
- \DeclareUnicodeCharacter{1E20}{\=G}
- \DeclareUnicodeCharacter{1E21}{\=g}
- \DeclareUnicodeCharacter{1E22}{\dotaccent{H}}
- \DeclareUnicodeCharacter{1E23}{\dotaccent{h}}
- \DeclareUnicodeCharacter{1E24}{\udotaccent{H}}
- \DeclareUnicodeCharacter{1E25}{\udotaccent{h}}
- \DeclareUnicodeCharacter{1E26}{\"H}
- \DeclareUnicodeCharacter{1E27}{\"h}
-
- \DeclareUnicodeCharacter{1E30}{\'K}
- \DeclareUnicodeCharacter{1E31}{\'k}
- \DeclareUnicodeCharacter{1E32}{\udotaccent{K}}
- \DeclareUnicodeCharacter{1E33}{\udotaccent{k}}
- \DeclareUnicodeCharacter{1E34}{\ubaraccent{K}}
- \DeclareUnicodeCharacter{1E35}{\ubaraccent{k}}
- \DeclareUnicodeCharacter{1E36}{\udotaccent{L}}
- \DeclareUnicodeCharacter{1E37}{\udotaccent{l}}
- \DeclareUnicodeCharacter{1E3A}{\ubaraccent{L}}
- \DeclareUnicodeCharacter{1E3B}{\ubaraccent{l}}
- \DeclareUnicodeCharacter{1E3E}{\'M}
- \DeclareUnicodeCharacter{1E3F}{\'m}
-
- \DeclareUnicodeCharacter{1E40}{\dotaccent{M}}
- \DeclareUnicodeCharacter{1E41}{\dotaccent{m}}
- \DeclareUnicodeCharacter{1E42}{\udotaccent{M}}
- \DeclareUnicodeCharacter{1E43}{\udotaccent{m}}
- \DeclareUnicodeCharacter{1E44}{\dotaccent{N}}
- \DeclareUnicodeCharacter{1E45}{\dotaccent{n}}
- \DeclareUnicodeCharacter{1E46}{\udotaccent{N}}
- \DeclareUnicodeCharacter{1E47}{\udotaccent{n}}
- \DeclareUnicodeCharacter{1E48}{\ubaraccent{N}}
- \DeclareUnicodeCharacter{1E49}{\ubaraccent{n}}
-
- \DeclareUnicodeCharacter{1E54}{\'P}
- \DeclareUnicodeCharacter{1E55}{\'p}
- \DeclareUnicodeCharacter{1E56}{\dotaccent{P}}
- \DeclareUnicodeCharacter{1E57}{\dotaccent{p}}
- \DeclareUnicodeCharacter{1E58}{\dotaccent{R}}
- \DeclareUnicodeCharacter{1E59}{\dotaccent{r}}
- \DeclareUnicodeCharacter{1E5A}{\udotaccent{R}}
- \DeclareUnicodeCharacter{1E5B}{\udotaccent{r}}
- \DeclareUnicodeCharacter{1E5E}{\ubaraccent{R}}
- \DeclareUnicodeCharacter{1E5F}{\ubaraccent{r}}
-
- \DeclareUnicodeCharacter{1E60}{\dotaccent{S}}
- \DeclareUnicodeCharacter{1E61}{\dotaccent{s}}
- \DeclareUnicodeCharacter{1E62}{\udotaccent{S}}
- \DeclareUnicodeCharacter{1E63}{\udotaccent{s}}
- \DeclareUnicodeCharacter{1E6A}{\dotaccent{T}}
- \DeclareUnicodeCharacter{1E6B}{\dotaccent{t}}
- \DeclareUnicodeCharacter{1E6C}{\udotaccent{T}}
- \DeclareUnicodeCharacter{1E6D}{\udotaccent{t}}
- \DeclareUnicodeCharacter{1E6E}{\ubaraccent{T}}
- \DeclareUnicodeCharacter{1E6F}{\ubaraccent{t}}
-
- \DeclareUnicodeCharacter{1E7C}{\~V}
- \DeclareUnicodeCharacter{1E7D}{\~v}
- \DeclareUnicodeCharacter{1E7E}{\udotaccent{V}}
- \DeclareUnicodeCharacter{1E7F}{\udotaccent{v}}
-
- \DeclareUnicodeCharacter{1E80}{\`W}
- \DeclareUnicodeCharacter{1E81}{\`w}
- \DeclareUnicodeCharacter{1E82}{\'W}
- \DeclareUnicodeCharacter{1E83}{\'w}
- \DeclareUnicodeCharacter{1E84}{\"W}
- \DeclareUnicodeCharacter{1E85}{\"w}
- \DeclareUnicodeCharacter{1E86}{\dotaccent{W}}
- \DeclareUnicodeCharacter{1E87}{\dotaccent{w}}
- \DeclareUnicodeCharacter{1E88}{\udotaccent{W}}
- \DeclareUnicodeCharacter{1E89}{\udotaccent{w}}
- \DeclareUnicodeCharacter{1E8A}{\dotaccent{X}}
- \DeclareUnicodeCharacter{1E8B}{\dotaccent{x}}
- \DeclareUnicodeCharacter{1E8C}{\"X}
- \DeclareUnicodeCharacter{1E8D}{\"x}
- \DeclareUnicodeCharacter{1E8E}{\dotaccent{Y}}
- \DeclareUnicodeCharacter{1E8F}{\dotaccent{y}}
-
- \DeclareUnicodeCharacter{1E90}{\^Z}
- \DeclareUnicodeCharacter{1E91}{\^z}
- \DeclareUnicodeCharacter{1E92}{\udotaccent{Z}}
- \DeclareUnicodeCharacter{1E93}{\udotaccent{z}}
- \DeclareUnicodeCharacter{1E94}{\ubaraccent{Z}}
- \DeclareUnicodeCharacter{1E95}{\ubaraccent{z}}
- \DeclareUnicodeCharacter{1E96}{\ubaraccent{h}}
- \DeclareUnicodeCharacter{1E97}{\"t}
- \DeclareUnicodeCharacter{1E98}{\ringaccent{w}}
- \DeclareUnicodeCharacter{1E99}{\ringaccent{y}}
-
- \DeclareUnicodeCharacter{1EA0}{\udotaccent{A}}
- \DeclareUnicodeCharacter{1EA1}{\udotaccent{a}}
-
- \DeclareUnicodeCharacter{1EB8}{\udotaccent{E}}
- \DeclareUnicodeCharacter{1EB9}{\udotaccent{e}}
- \DeclareUnicodeCharacter{1EBC}{\~E}
- \DeclareUnicodeCharacter{1EBD}{\~e}
-
- \DeclareUnicodeCharacter{1ECA}{\udotaccent{I}}
- \DeclareUnicodeCharacter{1ECB}{\udotaccent{i}}
- \DeclareUnicodeCharacter{1ECC}{\udotaccent{O}}
- \DeclareUnicodeCharacter{1ECD}{\udotaccent{o}}
-
- \DeclareUnicodeCharacter{1EE4}{\udotaccent{U}}
- \DeclareUnicodeCharacter{1EE5}{\udotaccent{u}}
-
- \DeclareUnicodeCharacter{1EF2}{\`Y}
- \DeclareUnicodeCharacter{1EF3}{\`y}
- \DeclareUnicodeCharacter{1EF4}{\udotaccent{Y}}
-
- \DeclareUnicodeCharacter{1EF8}{\~Y}
- \DeclareUnicodeCharacter{1EF9}{\~y}
-
- \DeclareUnicodeCharacter{2013}{--}
- \DeclareUnicodeCharacter{2014}{---}
- \DeclareUnicodeCharacter{2018}{\quoteleft}
- \DeclareUnicodeCharacter{2019}{\quoteright}
- \DeclareUnicodeCharacter{201A}{\quotesinglbase}
- \DeclareUnicodeCharacter{201C}{\quotedblleft}
- \DeclareUnicodeCharacter{201D}{\quotedblright}
- \DeclareUnicodeCharacter{201E}{\quotedblbase}
- \DeclareUnicodeCharacter{2022}{\bullet}
- \DeclareUnicodeCharacter{2026}{\dots}
- \DeclareUnicodeCharacter{2039}{\guilsinglleft}
- \DeclareUnicodeCharacter{203A}{\guilsinglright}
- \DeclareUnicodeCharacter{20AC}{\euro}
-
- \DeclareUnicodeCharacter{2192}{\expansion}
- \DeclareUnicodeCharacter{21D2}{\result}
-
- \DeclareUnicodeCharacter{2212}{\minus}
- \DeclareUnicodeCharacter{2217}{\point}
- \DeclareUnicodeCharacter{2261}{\equiv}
-}% end of \utfeightchardefs
+ \let\DeclareUnicodeCharacter\DeclareUnicodeCharacterUTFviii
+ \unicodechardefs
+}
+
+% Whether the active definitions of non-ASCII characters expand to
+% non-active tokens with the same character code. This is used to
+% write characters literally, instead of using active definitions for
+% printing the correct glyphs.
+\newif\ifpassthroughchars
+\passthroughcharsfalse
+
+% For native Unicode handling (XeTeX and LuaTeX),
+% provide a definition macro to replace/pass-through a Unicode character
+%
+\def\DeclareUnicodeCharacterNative#1#2{%
+ \catcode"#1=\active
+ \def\dodeclareunicodecharacternative##1##2##3{%
+ \begingroup
+ \uccode`\~="##2\relax
+ \uppercase{\gdef~}{%
+ \ifpassthroughchars
+ ##1%
+ \else
+ ##3%
+ \fi
+ }
+ \endgroup
+ }
+ \begingroup
+ \uccode`\.="#1\relax
+ \uppercase{\def\UTFNativeTmp{.}}%
+ \expandafter\dodeclareunicodecharacternative\UTFNativeTmp{#1}{#2}%
+ \endgroup
+}
+
+% Native Unicode handling (XeTeX and LuaTeX) character replacing definition.
+% It activates the setting that replaces Unicode characters.
+\def\nativeunicodechardefs{%
+ \let\DeclareUnicodeCharacter\DeclareUnicodeCharacterNative
+ \unicodechardefs
+}
+
+% For native Unicode handling (XeTeX and LuaTeX),
+% make the character token expand
+% to the sequences given in \unicodechardefs for printing.
+\def\DeclareUnicodeCharacterNativeAtU#1#2{%
+ \def\UTFAtUTmp{#2}
+ \expandafter\globallet\csname uni:#1\endcsname \UTFAtUTmp
+}
+% @U command definitions for native Unicode handling (XeTeX and LuaTeX).
+\def\nativeunicodechardefsatu{%
+ \let\DeclareUnicodeCharacter\DeclareUnicodeCharacterNativeAtU
+ \unicodechardefs
+}
% US-ASCII character definitions.
\def\asciichardefs{% nothing need be done
\relax
}
+% define all Unicode characters we know about, for the sake of @U.
+\iftxinativeunicodecapable
+ \nativeunicodechardefsatu
+\else
+ \utfeightchardefs
+\fi
+
+
% Make non-ASCII characters printable again for compatibility with
% existing Texinfo documents that may use them, even without declaring a
% document encoding.
\advance\vsize by \topskip
\outervsize = \vsize
\advance\outervsize by 2\topandbottommargin
- \pageheight = \vsize
+ \txipageheight = \vsize
%
\hsize = #2\relax
\outerhsize = \hsize
\advance\outerhsize by 0.5in
- \pagewidth = \hsize
+ \txipagewidth = \hsize
%
\normaloffset = #4\relax
\bindingoffset = #5\relax
% whatever layout pdftex was dumped with.
\pdfhorigin = 1 true in
\pdfvorigin = 1 true in
+ \else
+ \ifx\XeTeXrevision\thisisundefined
+ \else
+ \pdfpageheight #7\relax
+ \pdfpagewidth #8\relax
+ % XeTeX does not have \pdfhorigin and \pdfvorigin.
+ \fi
\fi
%
\setleading{\textleading}
% this is not a problem.
\def\ifusingit#1#2{\ifdim \fontdimen1\font>0pt #1\else #2\fi}
-% Turn off all special characters except @
-% (and those which the user can use as if they were ordinary).
+% Set catcodes for Texinfo file
+
+% Active characters for printing the wanted glyph.
% Most of these we simply print from the \tt font, but for some, we can
% use math or other variants that look better in normal text.
-
+%
\catcode`\"=\active
\def\activedoublequote{{\tt\char34}}
\let"=\activedoublequote
-\catcode`\~=\active
-\def~{{\tt\char126}}
-\chardef\hat=`\^
-\catcode`\^=\active
-\def^{{\tt \hat}}
+\catcode`\~=\active \def\activetilde{{\tt\char126}} \let~ = \activetilde
+\chardef\hatchar=`\^
+\catcode`\^=\active \def\activehat{{\tt \hatchar}} \let^ = \activehat
\catcode`\_=\active
\def_{\ifusingtt\normalunderscore\_}
-\let\realunder=_
-% Subroutine for the previous macro.
\def\_{\leavevmode \kern.07em \vbox{\hrule width.3em height.1ex}\kern .07em }
+\let\realunder=_
+
+\catcode`\|=\active \def|{{\tt\char124}}
-\catcode`\|=\active
-\def|{{\tt\char124}}
\chardef \less=`\<
-\catcode`\<=\active
-\def<{{\tt \less}}
+\catcode`\<=\active \def\activeless{{\tt \less}}\let< = \activeless
\chardef \gtr=`\>
-\catcode`\>=\active
-\def>{{\tt \gtr}}
-\catcode`\+=\active
-\def+{{\tt \char 43}}
-\catcode`\$=\active
-\def${\ifusingit{{\sl\$}}\normaldollar}%$ font-lock fix
+\catcode`\>=\active \def\activegtr{{\tt \gtr}}\let> = \activegtr
+\catcode`\+=\active \def+{{\tt \char 43}}
+\catcode`\$=\active \def${\ifusingit{{\sl\$}}\normaldollar}%$ font-lock fix
+\catcode`\-=\active \let-=\normaldash
-% If a .fmt file is being used, characters that might appear in a file
-% name cannot be active until we have parsed the command line.
-% So turn them off again, and have \everyjob (or @setfilename) turn them on.
-% \otherifyactive is called near the end of this file.
-\def\otherifyactive{\catcode`+=\other \catcode`\_=\other}
+
+% used for headline/footline in the output routine, in case the page
+% breaks in the middle of an @tex block.
+\def\texinfochars{%
+ \let< = \activeless
+ \let> = \activegtr
+ \let~ = \activetilde
+ \let^ = \activehat
+ \markupsetuplqdefault \markupsetuprqdefault
+ \let\b = \strong
+ \let\i = \smartitalic
+ % in principle, all other definitions in \tex have to be undone too.
+}
% Used sometimes to turn off (effectively) the active characters even after
% parsing them.
% \doublebackslash is two of them (for the pdf outlines).
{\catcode`\\=\other @gdef@realbackslash{\} @gdef@doublebackslash{\\}}
-% In texinfo, backslash is an active character; it prints the backslash
+% In Texinfo, backslash is an active character; it prints the backslash
% in fixed width font.
\catcode`\\=\active % @ for escape char from now on.
-% The story here is that in math mode, the \char of \backslashcurfont
-% ends up printing the roman \ from the math symbol font (because \char
-% in math mode uses the \mathcode, and plain.tex sets
-% \mathcode`\\="026E). It seems better for @backslashchar{} to always
-% print a typewriter backslash, hence we use an explicit \mathchar,
+% Print a typewriter backslash. For math mode, we can't simply use
+% \backslashcurfont: the story here is that in math mode, the \char
+% of \backslashcurfont ends up printing the roman \ from the math symbol
+% font (because \char in math mode uses the \mathcode, and plain.tex
+% sets \mathcode`\\="026E). Hence we use an explicit \mathchar,
% which is the decimal equivalent of "715c (class 7, e.g., use \fam;
% ignored family value; char position "5C). We can't use " for the
% usual hex value because it has already been made active.
-@def@normalbackslash{{@tt @ifmmode @mathchar29020 @else @backslashcurfont @fi}}
-@let@backslashchar = @normalbackslash % @backslashchar{} is for user documents.
-% On startup, @fixbackslash assigns:
-% @let \ = @normalbackslash
+@def@ttbackslash{{@tt @ifmmode @mathchar29020 @else @backslashcurfont @fi}}
+@let@backslashchar = @ttbackslash % @backslashchar{} is for user documents.
+
% \rawbackslash defines an active \ to do \backslashcurfont.
% \otherbackslash defines an active \ to be a literal `\' character with
% catcode other. We switch back and forth between these.
@gdef@otherbackslash{@let\=@realbackslash}
% Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of
-% the literal character `\'. Also revert - to its normal character, in
-% case the active - from code has slipped in.
+% the literal character `\'.
%
{@catcode`- = @active
@gdef@normalturnoffactive{%
+ @passthroughcharstrue
@let-=@normaldash
@let"=@normaldoublequote
@let$=@normaldollar %$ font-lock fix
@let+=@normalplus
@let<=@normalless
@let>=@normalgreater
- @let\=@normalbackslash
@let^=@normalcaret
@let_=@normalunderscore
@let|=@normalverticalbar
@let~=@normaltilde
+ @let\=@ttbackslash
@markupsetuplqdefault
@markupsetuprqdefault
@unsepspaces
}
}
-% Make _ and + \other characters, temporarily.
-% This is canceled by @fixbackslash.
-@otherifyactive
+% If a .fmt file is being used, characters that might appear in a file
+% name cannot be active until we have parsed the command line.
+% So turn them off again, and have @fixbackslash turn them back on.
+@catcode`+=@other @catcode`@_=@other
+% \enablebackslashhack - allow file to begin `\input texinfo'
+%
% If a .fmt file is being used, we don't want the `\input texinfo' to show up.
% That is what \eatinput is for; after that, the `\' should revert to printing
% a backslash.
-%
-@gdef@eatinput input texinfo{@fixbackslash}
-@global@let\ = @eatinput
+% If the file did not have a `\input texinfo', then it is turned off after
+% the first line; otherwise the first `\' in the file would cause an error.
+% This is used on the very last line of this file, texinfo.tex.
+% We also use @c to call @fixbackslash, in case ends of lines are hidden.
+{
+@catcode`@^=7
+@catcode`@^^M=13@gdef@enablebackslashhack{%
+ @global@let\ = @eatinput%
+ @catcode`@^^M=13%
+ @def@c{@fixbackslash@c}%
+ % Definition for the newline at the end of this file.
+ @def ^^M{@let^^M@secondlinenl}%
+ % Definition for a newline in the main Texinfo file.
+ @gdef @secondlinenl{@fixbackslash}%
+}}
+
+{@catcode`@^=7 @catcode`@^^M=13%
+@gdef@eatinput input texinfo#1^^M{@fixbackslash}}
+
+% Emergency active definition of newline, in case an active newline token
+% appears by mistake.
+{@catcode`@^=7 @catcode13=13%
+@gdef@enableemergencynewline{%
+ @gdef^^M{%
+ @par%
+ %<warning: active newline>@par%
+}}}
+
-% On the other hand, perhaps the file did not have a `\input texinfo'. Then
-% the first `\' in the file would cause an error. This macro tries to fix
-% that, assuming it is called before the first `\' could plausibly occur.
-% Also turn back on active characters that might appear in the input
-% file name, in case not using a pre-dumped format.
-%
@gdef@fixbackslash{%
- @ifx\@eatinput @let\ = @normalbackslash @fi
+ @ifx\@eatinput @let\ = @ttbackslash @fi
+ @catcode13=5 % regular end of line
+ @enableemergencynewline
+ @let@c=@texinfoc
+ % Also turn back on active characters that might appear in the input
+ % file name, in case not using a pre-dumped format.
@catcode`+=@active
@catcode`@_=@active
+ %
+ % If texinfo.cnf is present on the system, read it.
+ % Useful for site-wide @afourpaper, etc. This macro, @fixbackslash, gets
+ % called at the beginning of every Texinfo file. Not opening texinfo.cnf
+ % directly in this file, texinfo.tex, makes it possible to make a format
+ % file for Texinfo.
+ %
+ @openin 1 texinfo.cnf
+ @ifeof 1 @else @input texinfo.cnf @fi
+ @closein 1
}
+
% Say @foo, not \foo, in error messages.
@escapechar = `@@
@c Local variables:
@c eval: (add-hook 'write-file-hooks 'time-stamp)
-@c page-delimiter: "^\\\\message"
+@c page-delimiter: "^\\\\message\\|emacs-page"
@c time-stamp-start: "def\\\\texinfoversion{"
@c time-stamp-format: "%:y-%02m-%02d.%02H"
@c time-stamp-end: "}"
@ignore
arch-tag: e1b36e32-c96e-4135-a41a-0b2efa2ea115
@end ignore
+@enablebackslashhack
-eval '(exit $?0)' && eval 'exec perl -wS -0777 -pi "$0" ${1+"$@"}'
+eval '(exit $?0)' && eval 'exec perl -wS -0777 -pi "$0" "$@"'
& eval 'exec perl -wS -0777 -pi "$0" $argv:q'
if 0;
# Update an FSF copyright year list to include the current year.
-my $VERSION = '2013-01-03.09:41'; # UTC
+my $VERSION = '2016-01-12.23:13'; # UTC
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
use warnings;
my $copyright_re = 'Copyright';
-my $circle_c_re = '(?:\([cC]\)|@copyright{}|©)';
+my $circle_c_re = '(?:\([cC]\)|@copyright\{}|\\\\\(co|©)';
my $holder = $ENV{UPDATE_COPYRIGHT_HOLDER};
$holder ||= 'Free Software Foundation, Inc.';
my $prefix_max = 5;
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "my $VERSION = '"
# time-stamp-format: "%:y-%02m-%02d.%02H:%02M"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "'; # UTC"
# End:
-eval '(exit $?0)' && eval 'exec perl -wST "$0" ${1+"$@"}'
+eval '(exit $?0)' && eval 'exec perl -wST "$0" "$@"'
& eval 'exec perl -wST "$0" $argv:q'
if 0;
# Detect instances of "if (p) free (p);".
# Likewise "if (p != 0)", "if (0 != p)", or with NULL; and with braces.
-my $VERSION = '2012-01-06 07:23'; # UTC
+my $VERSION = '2016-08-01 17:47'; # UTC
# The definition above must lie within the first 8 lines in order
# for the Emacs time-stamp write hook (at end) to update it.
# If you change this file with Emacs, please let the write hook
# do its job. Otherwise, update this string manually.
-# Copyright (C) 2008-2013 Free Software Foundation, Inc.
+# Copyright (C) 2008-2016 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
$err = EXIT_ERROR, next;
while (defined (my $line = <FH>))
{
+ # Skip non-matching lines early to save time
+ $line =~ /\bif\b/
+ or next;
while ($line =~
/\b(if\s*\(\s*([^)]+?)(?:\s*!=\s*([^)]+?))?\s*\)
# 1 2 3
## eval: (add-hook 'write-file-hooks 'time-stamp)
## time-stamp-start: "my $VERSION = '"
## time-stamp-format: "%:y-%02m-%02d %02H:%02M"
-## time-stamp-time-zone: "UTC"
+## time-stamp-time-zone: "UTC0"
## time-stamp-end: "'; # UTC"
## End:
# List version-controlled file names.
# Print a version string.
-scriptversion=2011-05-16.22; # UTC
+scriptversion=2016-01-11.22; # UTC
-# Copyright (C) 2006-2013 Free Software Foundation, Inc.
+# Copyright (C) 2006-2016 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
# Customize maint.mk -*- makefile -*-
-# Copyright (C) 2003-2013 Free Software Foundation, Inc.
+# Copyright (C) 2003-2013, 2015-2016 Free Software Foundation, Inc.
# This 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 <http://www.gnu.org/licenses/>.
+# Use the direct link. This is guaranteed to work immediately, while
+# it can take a while for the faster mirror links to become usable.
+url_dir_list = http://ftp.gnu.org/gnu/$(PACKAGE)
+
# Used in maint.mk's web-manual rule
manual_title = Comparing and Merging Files
# Now that we have better tests, make this the default.
export VERBOSE = yes
-old_NEWS_hash = 7d70c18e90495732e671b3c94da01651
+old_NEWS_hash = 8632093db0c946f65f639f06ac7de39a
# Tell maint.mk's syntax-check rules that diff gets config.h directly or
# via diff.h or system.h.
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69.79-0bdae for GNU diffutils 3.3.
+# Generated by GNU Autoconf 2.69.147-5ad35 for GNU diffutils 3.4.
#
# Report bugs to <bug-diffutils@gnu.org>.
#
#
-# Copyright (C) 1992-1996, 1998-2013 Free Software Foundation, Inc.
+# Copyright (C) 1992-1996, 1998-2015 Free Software Foundation, Inc.
#
#
# This configure script is free software; the Free Software Foundation
# Be more Bourne compatible
DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
+if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
+if ${PATH_SEPARATOR+false} :; then
PATH_SEPARATOR=:
(PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
(PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
# suppresses any "Segmentation fault" message there. '((' could
# trigger a bug in pdksh 5.2.14.
for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
+do eval test \${$as_var+y} \
&& ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
done
PS1='$ '
# We don't want this to propagate to other subprocesses.
{ _as_can_reexec=; unset _as_can_reexec;}
if test "x$CONFIG_SHELL" = x; then
- as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
+ as_bourne_compatible="if test \${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
+if ( set x; as_fn_ret_success y && test x = \"\$1\" )
+then :
else
exitcode=1; echo positional parameters were not saved.
eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
test \$(( 1 + 1 )) = 2 || exit 1"
- if (eval "$as_required") 2>/dev/null; then :
+ if (eval "$as_required") 2>/dev/null
+then :
as_have_required=yes
else
as_have_required=no
fi
- if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
+ if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null
+then :
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
# Try only shells that exist, to save several forks.
as_shell=$as_dir$as_base
if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
+ { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null
+then :
CONFIG_SHELL=$as_shell as_have_required=yes
- if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
+ if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null
+then :
break 2
fi
fi
done
IFS=$as_save_IFS
$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
+ { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null
+then :
CONFIG_SHELL=$SHELL as_have_required=yes
fi; }
- if test "x$CONFIG_SHELL" != x; then :
+ if test "x$CONFIG_SHELL" != x
+then :
export CONFIG_SHELL
# We cannot yet assume a decent shell, so we have to provide a
# neutralization value for shells without unset; and this also
exit 255
fi
- if test x$as_have_required = xno; then :
+ if test x$as_have_required = xno
+then :
printf "%s\n" "$0: This script requires a shell more modern than all"
printf "%s\n" "$0: the shells that I found on your system."
- if test x${ZSH_VERSION+set} = xset ; then
+ if test ${ZSH_VERSION+y} ; then
printf "%s\n" "$0: In particular, zsh $ZSH_VERSION has bugs and should"
printf "%s\n" "$0: be upgraded to zsh 4.3.4 or later."
else
# advantage of any shell optimizations that allow amortized linear growth over
# repeated appends, instead of the typical quadratic growth present in naive
# implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null
+then :
eval 'as_fn_append ()
{
eval $1+=\$2
# Perform arithmetic evaluation on the ARGs, and store the result in the
# global $as_val. Take advantage of shells that can avoid forks. The arguments
# must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null
+then :
eval 'as_fn_arith ()
{
as_val=$(( $* ))
# Identity of this package.
PACKAGE_NAME='GNU diffutils'
PACKAGE_TARNAME='diffutils'
-PACKAGE_VERSION='3.3'
-PACKAGE_STRING='GNU diffutils 3.3'
+PACKAGE_VERSION='3.4'
+PACKAGE_STRING='GNU diffutils 3.4'
PACKAGE_BUGREPORT='bug-diffutils@gnu.org'
PACKAGE_URL='http://www.gnu.org/software/diffutils/'
ac_unique_file="src/diff.c"
# Factoring default headers for most tests.
ac_includes_default="\
+#include <stddef.h>
#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
#ifdef HAVE_SYS_TYPES_H
# include <sys/types.h>
#endif
#ifdef HAVE_SYS_STAT_H
# include <sys/stat.h>
#endif
-#if defined STDC_HEADERS || defined HAVE_STDLIB_H
-# include <stdlib.h>
-#endif
-#include <stddef.h>
-#ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-# include <memory.h>
-# endif
-# include <string.h>
-#endif
#ifdef HAVE_STRINGS_H
# include <strings.h>
#endif
# include <unistd.h>
#endif"
-ac_func_list=
ac_header_list=
+ac_func_list=
gl_fnmatch_required=POSIX
gl_getopt_required=POSIX
gl_getopt_required=POSIX
LIBDIFFUTILS_LTLIBDEPS
LIBDIFFUTILS_LIBDEPS
abs_aux_dir
+HAVE_SYS_UIO_H
+NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H
+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
+GL_GENERATE_NETINET_IN_H_FALSE
+GL_GENERATE_NETINET_IN_H_TRUE
+NETINET_IN_H
+HAVE_NETINET_IN_H
+NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H
+NEXT_NETINET_IN_H
+LIB_NANOSLEEP
+LIB_SELECT
+LIBSOCKET
+HAVE_SYS_SELECT_H
+NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H
+NEXT_SYS_SELECT_H
+REPLACE_SELECT
+REPLACE_PSELECT
+HAVE_PSELECT
+GNULIB_SELECT
+GNULIB_PSELECT
+INET_PTON_LIB
LOCALE_TR_UTF8
+NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H
+NEXT_ARPA_INET_H
+HAVE_ARPA_INET_H
+REPLACE_INET_PTON
+REPLACE_INET_NTOP
+HAVE_DECL_INET_PTON
+HAVE_DECL_INET_NTOP
+GNULIB_INET_PTON
+GNULIB_INET_NTOP
+HAVE_WS2TCPIP_H
+HAVE_SYS_SOCKET_H
+NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H
+NEXT_SYS_SOCKET_H
+HAVE_ACCEPT4
+HAVE_SA_FAMILY_T
+HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY
+HAVE_STRUCT_SOCKADDR_STORAGE
+GNULIB_ACCEPT4
+GNULIB_SHUTDOWN
+GNULIB_SETSOCKOPT
+GNULIB_SENDTO
+GNULIB_RECVFROM
+GNULIB_SEND
+GNULIB_RECV
+GNULIB_LISTEN
+GNULIB_GETSOCKOPT
+GNULIB_GETSOCKNAME
+GNULIB_GETPEERNAME
+GNULIB_BIND
+GNULIB_ACCEPT
+GNULIB_CONNECT
+GNULIB_SOCKET
gltests_WITNESS
NEXT_AS_FIRST_DIRECTIVE_WCHAR_H
NEXT_WCHAR_H
HAVE_UNISTD_H
NEXT_AS_FIRST_DIRECTIVE_UNISTD_H
NEXT_UNISTD_H
+UNISTD_H_DEFINES_STRUCT_TIMESPEC
PTHREAD_H_DEFINES_STRUCT_TIMESPEC
SYS_TIME_H_DEFINES_STRUCT_TIMESPEC
TIME_H_DEFINES_STRUCT_TIMESPEC
GNULIB_SIGNAL_H_SIGPIPE
GNULIB_RAISE
GNULIB_PTHREAD_SIGMASK
+REPLACE_LOCALTIME
+REPLACE_GMTIME
REPLACE_TIMEGM
REPLACE_NANOSLEEP
REPLACE_MKTIME
HAVE_STRPTIME
HAVE_NANOSLEEP
HAVE_DECL_LOCALTIME_R
+GNULIB_TIME_RZ
GNULIB_TIME_R
GNULIB_TIMEGM
GNULIB_STRPTIME
REPLACE_REALPATH
REPLACE_REALLOC
REPLACE_RANDOM_R
+REPLACE_QSORT_R
REPLACE_PUTENV
REPLACE_PTSNAME_R
REPLACE_PTSNAME
GNULIB_REALLOC_POSIX
GNULIB_RANDOM_R
GNULIB_RANDOM
+GNULIB_QSORT_R
GNULIB_PUTENV
GNULIB_PTSNAME_R
GNULIB_PTSNAME
GNULIB_CALLOC_POSIX
GNULIB_ATOLL
GNULIB__EXIT
+SED
NEXT_AS_FIRST_DIRECTIVE_LOCALE_H
NEXT_LOCALE_H
HAVE_XLOCALE_H
GL_GENERATE_STDDEF_H_TRUE
STDDEF_H
HAVE_WCHAR_T
+HAVE_MAX_ALIGN_T
REPLACE_NULL
REPLACE_STRUCT_LCONV
REPLACE_DUPLOCALE
PRI_MACROS_BROKEN
INT64_MAX_EQ_LONG_MAX
INT32_MAX_LT_INTMAX_MAX
+REPLACE_STRTOUMAX
REPLACE_STRTOIMAX
HAVE_DECL_STRTOUMAX
HAVE_DECL_STRTOIMAX
NEXT_SYS_TIME_H
REPLACE_STRUCT_TIMEVAL
REPLACE_GETTIMEOFDAY
+HAVE_TIMEZONE_T
HAVE_SYS_TIME_H
HAVE_STRUCT_TIMEVAL
HAVE_GETTIMEOFDAY
ERRNO_H
NEXT_AS_FIRST_DIRECTIVE_ERRNO_H
NEXT_ERRNO_H
+NEXT_AS_FIRST_DIRECTIVE_CTYPE_H
+NEXT_CTYPE_H
PRAGMA_COLUMNS
PRAGMA_SYSTEM_HEADER
INCLUDE_NEXT_AS_FIRST_DIRECTIVE
INCLUDE_NEXT
+HAVE_ISBLANK
+GNULIB_ISBLANK
pkglibexecdir
lispdir
HAVE_WINSOCK2_H
+REPLACE_IOCTL
+SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS
+SYS_IOCTL_H_HAVE_WINSOCK2_H
+GNULIB_IOCTL
HAVE_MSVC_INVALID_PARAMETER_HANDLER
UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS
UNISTD_H_HAVE_WINSOCK2_H
REPLACE_UNLINKAT
REPLACE_UNLINK
REPLACE_TTYNAME_R
+REPLACE_SYMLINKAT
REPLACE_SYMLINK
REPLACE_SLEEP
REPLACE_RMDIR
+REPLACE_READLINKAT
REPLACE_READLINK
REPLACE_READ
REPLACE_PWRITE
REPLACE_GETPAGESIZE
REPLACE_GETGROUPS
REPLACE_GETLOGIN_R
+REPLACE_GETDTABLESIZE
REPLACE_GETDOMAINNAME
REPLACE_GETCWD
REPLACE_FTRUNCATE
build_cpu
build
ARFLAGS
+ac_ct_AR
AR
EGREP
GREP
AMDEPBACKSLASH
AMDEP_FALSE
AMDEP_TRUE
-am__quote
am__include
DEPDIR
OBJEXT
INSTALL_DATA
INSTALL_SCRIPT
INSTALL_PROGRAM
+mkdir_p
target_alias
host_alias
build_alias
docdir
oldincludedir
includedir
+runstatedir
localstatedir
sharedstatedir
sysconfdir
PACKAGE_TARNAME
PACKAGE_NAME
PATH_SEPARATOR
-SHELL'
+SHELL
+am__quote'
ac_subst_files=''
ac_user_opts='
enable_option_checking
sysconfdir='${prefix}/etc'
sharedstatedir='${prefix}/com'
localstatedir='${prefix}/var'
+runstatedir='${localstatedir}/run'
includedir='${prefix}/include'
oldincludedir='/usr/include'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
+ as_fn_error $? "invalid feature name: \`$ac_useropt'"
ac_useropt_orig=$ac_useropt
ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
+ as_fn_error $? "invalid feature name: \`$ac_useropt'"
ac_useropt_orig=$ac_useropt
ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
| -silent | --silent | --silen | --sile | --sil)
silent=yes ;;
+ -runstatedir | --runstatedir | --runstatedi | --runstated \
+ | --runstate | --runstat | --runsta | --runst | --runs \
+ | --run | --ru | --r)
+ ac_prev=runstatedir ;;
+ -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
+ | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
+ | --run=* | --ru=* | --r=*)
+ runstatedir=$ac_optarg ;;
+
-sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
ac_prev=sbindir ;;
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
+ as_fn_error $? "invalid package name: \`$ac_useropt'"
ac_useropt_orig=$ac_useropt
ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
+ as_fn_error $? "invalid package name: \`$ac_useropt'"
ac_useropt_orig=$ac_useropt
ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
datadir sysconfdir sharedstatedir localstatedir includedir \
oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
- libdir localedir mandir
+ libdir localedir mandir runstatedir
do
eval ac_val=\$$ac_var
# Remove trailing slashes.
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures GNU diffutils 3.3 to adapt to many kinds of systems.
+\`configure' configures GNU diffutils 3.4 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
+ --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run]
--libdir=DIR object code libraries [EPREFIX/lib]
--includedir=DIR C header files [PREFIX/include]
--oldincludedir=DIR C header files for non-gcc [/usr/include]
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of GNU diffutils 3.3:";;
+ short | recursive ) echo "Configuration of GNU diffutils 3.4:";;
esac
cat <<\_ACEOF
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-GNU diffutils configure 3.3
-generated by GNU Autoconf 2.69.79-0bdae
+GNU diffutils configure 3.4
+generated by GNU Autoconf 2.69.147-5ad35
-Copyright (C) 2013 Free Software Foundation, Inc.
+Copyright (C) 2015 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
_ACEOF
test $ac_status = 0; } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
- } && test -s conftest.$ac_objext; then :
+ } && test -s conftest.$ac_objext
+then :
ac_retval=0
else
printf "%s\n" "$as_me: failed program was:" >&5
} # ac_fn_c_try_compile
-# ac_fn_c_try_cpp LINENO
-# ----------------------
-# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_cpp ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-printf "%s\n" "$ac_try_echo"; } >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } > conftest.i && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then :
- ac_retval=0
-else
- printf "%s\n" "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_cpp
-
-# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
+# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
# -------------------------------------------------------
-# Tests whether HEADER exists, giving a warning if it cannot be compiled using
-# the include files in INCLUDES and setting the cache variable VAR
-# accordingly.
-ac_fn_c_check_header_mongrel ()
+# Tests whether HEADER exists and can be compiled using the include files in
+# INCLUDES, setting the cache variable VAR accordingly.
+ac_fn_c_check_header_compile ()
{
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if eval \${$3+:} false; then :
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
printf %s "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
+if eval test \${$3+y}
+then :
printf %s "(cached) " >&6
-fi
-eval ac_res=\$$3
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-printf "%s\n" "$ac_res" >&6; }
else
- # Is the header compilable?
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-printf %s "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$4
#include <$2>
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_header_compiler=yes
+if ac_fn_c_try_compile "$LINENO"
+then :
+ eval "$3=yes"
else
- ac_header_compiler=no
+ eval "$3=no"
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-printf "%s\n" "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-printf %s "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <$2>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- ac_header_preproc=yes
-else
- ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-printf "%s\n" "$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
- yes:no: )
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-printf "%s\n" "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-printf "%s\n" "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
- ;;
- no:yes:* )
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-printf "%s\n" "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5
-printf "%s\n" "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;}
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-printf "%s\n" "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5
-printf "%s\n" "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-printf "%s\n" "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-( printf "%s\n" "## ------------------------------------ ##
-## Report this to bug-diffutils@gnu.org ##
-## ------------------------------------ ##"
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-printf %s "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- printf %s "(cached) " >&6
-else
- eval "$3=\$ac_header_compiler"
fi
eval ac_res=\$$3
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
-fi
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-} # ac_fn_c_check_header_mongrel
+} # ac_fn_c_check_header_compile
-# ac_fn_c_try_run LINENO
+# ac_fn_c_try_cpp LINENO
# ----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-# that executables *can* be run.
-ac_fn_c_try_run ()
+# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_cpp ()
{
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_link"
+ if { { ac_try="$ac_cpp conftest.$ac_ext"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
printf "%s\n" "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-printf "%s\n" "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then :
+ test $ac_status = 0; } > conftest.i && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }
+then :
ac_retval=0
else
- printf "%s\n" "$as_me: program exited with status $ac_status" >&5
- printf "%s\n" "$as_me: failed program was:" >&5
+ printf "%s\n" "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
- ac_retval=$ac_status
+ ac_retval=1
fi
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
-} # ac_fn_c_try_run
-
-# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists and can be compiled using the include files in
-# INCLUDES, setting the cache variable VAR accordingly.
-ac_fn_c_check_header_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-printf %s "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
- printf %s "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- eval "$3=yes"
-else
- eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-printf "%s\n" "$ac_res" >&6; }
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_header_compile
+} # ac_fn_c_try_cpp
# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
# -------------------------------------------
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
printf %s "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
+if eval test \${$3+y}
+then :
printf %s "(cached) " >&6
else
eval "$3=no"
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
if (sizeof ($2))
return 0;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
if (sizeof (($2)))
return 0;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
else
eval "$3=yes"
} && test -s conftest$ac_exeext && {
test "$cross_compiling" = yes ||
test -x conftest$ac_exeext
- }; then :
+ }
+then :
ac_retval=0
else
printf "%s\n" "$as_me: failed program was:" >&5
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
printf %s "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
+if eval test \${$3+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int
-main ()
+main (void)
{
return $2 ();
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
eval "$3=yes"
else
eval "$3=no"
} # ac_fn_c_check_func
+# ac_fn_c_try_run LINENO
+# ----------------------
+# Try to run conftest.$ac_ext, and return whether this succeeded. Assumes that
+# executables *can* be run.
+ac_fn_c_try_run ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+printf "%s\n" "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
+ { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+printf "%s\n" "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+then :
+ ac_retval=0
+else
+ printf "%s\n" "$as_me: program exited with status $ac_status" >&5
+ printf "%s\n" "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=$ac_status
+fi
+ rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_run
+
# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
# ---------------------------------------------
# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
ac_fn_c_check_decl ()
{
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- as_decl_name=`echo $2|sed 's/ *(.*//'`
+ # Initialize each $ac_[]_AC_LANG_ABBREV[]_decl_warn_flag once.
+ as_decl_name=`echo $2|sed 's/ *(.*//'`
as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
printf %s "checking whether $as_decl_name is declared... " >&6; }
-if eval \${$3+:} false; then :
+if eval test \${$3+y}
+then :
printf %s "(cached) " >&6
else
+ ac_save_werror_flag=$ac_c_werror_flag
+ ac_c_werror_flag="$ac_c_decl_warn_flag$ac_c_werror_flag"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
#ifndef $as_decl_name
#ifdef __cplusplus
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$3=yes"
else
eval "$3=no"
eval ac_res=\$$3
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
+ ac_c_werror_flag=$ac_save_werror_flag
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
} # ac_fn_c_check_decl
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
static int test_array [1 - 2 * !(($2) >= 0)];
test_array [0] = 0;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_lo=0 ac_mid=0
while :; do
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
static int test_array [1 - 2 * !(($2) <= $ac_mid)];
test_array [0] = 0;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_hi=$ac_mid; break
else
as_fn_arith $ac_mid + 1 && ac_lo=$as_val
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
static int test_array [1 - 2 * !(($2) < 0)];
test_array [0] = 0;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_hi=-1 ac_mid=-1
while :; do
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
static int test_array [1 - 2 * !(($2) >= $ac_mid)];
test_array [0] = 0;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_lo=$ac_mid; break
else
as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val
/* end confdefs.h. */
$4
int
-main ()
+main (void)
{
static int test_array [1 - 2 * !(($2) <= $ac_mid)];
test_array [0] = 0;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_hi=$ac_mid
else
as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
#include <stdio.h>
#include <stdlib.h>
int
-main ()
+main (void)
{
FILE *f = fopen ("conftest.val", "w");
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
echo >>conftest.val; read $3 <conftest.val; ac_retval=0
else
ac_retval=1
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5
printf %s "checking for $2.$3... " >&6; }
-if eval \${$4+:} false; then :
+if eval test \${$4+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$5
int
-main ()
+main (void)
{
static $2 ac_aggr;
if (ac_aggr.$3)
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$4=yes"
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$5
int
-main ()
+main (void)
{
static $2 ac_aggr;
if (sizeof ac_aggr.$3)
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$4=yes"
else
eval "$4=no"
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by GNU diffutils $as_me 3.3, which was
-generated by GNU Autoconf 2.69.79-0bdae. Invocation command line was
+It was created by GNU diffutils $as_me 3.4, which was
+generated by GNU Autoconf 2.69.147-5ad35. Invocation command line was
$ $0 $@
>$cache_file
fi
+as_fn_append ac_header_list " sys/types.h"
+as_fn_append ac_header_list " sys/stat.h"
+as_fn_append ac_header_list " strings.h"
+as_fn_append ac_header_list " inttypes.h"
+as_fn_append ac_header_list " stdint.h"
+as_fn_append ac_header_list " unistd.h"
as_fn_append ac_func_list " btowc"
as_fn_append ac_func_list " setrlimit"
as_fn_append ac_header_list " ucontext.h"
as_fn_append ac_func_list " sigaltstack"
-as_fn_append ac_header_list " unistd.h"
as_fn_append ac_func_list " readlinkat"
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 " strerror_r"
as_fn_append ac_func_list " fcntl"
as_fn_append ac_func_list " symlink"
as_fn_append ac_func_list " mempcpy"
as_fn_append ac_func_list " wmempcpy"
as_fn_append ac_header_list " wctype.h"
gl_fnmatch_required=GNU
-as_fn_append ac_header_list " sys/stat.h"
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/time.h"
as_fn_append ac_header_list " iconv.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_func_list " iswcntrl"
as_fn_append ac_func_list " iswblank"
as_fn_append ac_header_list " langinfo.h"
as_fn_append ac_header_list " sys/mman.h"
as_fn_append ac_func_list " mprotect"
as_fn_append ac_func_list " mkstemp"
+as_fn_append ac_func_list " tzset"
as_fn_append ac_func_list " nl_langinfo"
as_fn_append ac_header_list " sys/param.h"
as_fn_append ac_func_list " readlink"
-as_fn_append ac_func_list " wcscoll"
+as_fn_append ac_header_list " malloc.h"
as_fn_append ac_func_list " secure_getenv"
+as_fn_append ac_func_list " getuid"
+as_fn_append ac_func_list " geteuid"
+as_fn_append ac_func_list " getgid"
+as_fn_append ac_func_list " getegid"
+as_fn_append ac_func_list " setenv"
as_fn_append ac_func_list " sigaction"
as_fn_append ac_func_list " siginterrupt"
-as_fn_append ac_func_list " tzset"
-as_fn_append ac_header_list " strings.h"
+as_fn_append ac_func_list " __xpg_strerror_r"
as_fn_append ac_func_list " strndup"
as_fn_append ac_func_list " strptime"
as_fn_append ac_func_list " strtoumax"
as_fn_append ac_header_list " sys/wait.h"
as_fn_append ac_func_list " localtime_r"
+as_fn_append ac_func_list " timegm"
as_fn_append ac_func_list " vasnprintf"
as_fn_append ac_header_list " features.h"
as_fn_append ac_func_list " snprintf"
as_fn_append ac_func_list " wcrtomb"
as_fn_append ac_func_list " wcwidth"
+as_fn_append ac_header_list " arpa/inet.h"
+as_fn_append ac_func_list " ftruncate"
+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 " setenv"
+as_fn_append ac_header_list " sys/select.h"
+as_fn_append ac_func_list " pipe"
as_fn_append ac_func_list " sleep"
-as_fn_append ac_func_list " usleep"
+as_fn_append ac_func_list " catgets"
+as_fn_append ac_header_list " sys/ioctl.h"
+as_fn_append ac_func_list " shutdown"
+as_fn_append ac_header_list " sys/uio.h"
as_fn_append ac_func_list " wctob"
as_fn_append ac_func_list " sigprocmask"
as_fn_append ac_func_list " strcasecoll"
as_fn_append ac_func_list " stricoll"
+as_fn_append ac_header_list " vfork.h"
+as_fn_append ac_func_list " fork"
+as_fn_append ac_func_list " vfork"
gt_needs="$gt_needs need-ngettext"
# Check that the precious variables saved in the cache have kept the same
# value.
ac_aux_dir=
-for ac_dir in build-aux "$srcdir"/build-aux; do
+for ac_dir in build-aux "$srcdir"/build-aux
+do
if test -f "$ac_dir/install-sh"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/install-sh -c"
-am__api_version='1.13a'
+am__api_version='1.99a'
# Find a good install program. We prefer a C program (faster),
# so one script is as good as another. But avoid the broken or
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
printf %s "checking for a BSD-compatible install... " >&6; }
if test -z "$INSTALL"; then
-if ${ac_cv_path_install+:} false; then :
+if test ${ac_cv_path_install+y}
+then :
printf %s "(cached) " >&6
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
rm -rf conftest.one conftest.two conftest.dir
fi
- if test "${ac_cv_path_install+set}" = set; then
+ if test ${ac_cv_path_install+y}; then
INSTALL=$ac_cv_path_install
else
# As a last resort, use the slow shell script. Don't cache a
ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
program_transform_name=`printf "%s\n" "$program_transform_name" | sed "$ac_script"`
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
+# Expand $ac_aux_dir to an absolute path.
+am_aux_dir=`cd "$ac_aux_dir" && pwd`
if test x"${MISSING+set}" != xset; then
case $am_aux_dir in
printf "%s\n" "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
fi
-if test x"${install_sh}" != xset; then
+if test x"${install_sh+set}" != xset; then
case $am_aux_dir in
*\ * | *\ *)
install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
set dummy ${ac_tool_prefix}strip; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_STRIP+:} false; then :
+if test ${ac_cv_prog_STRIP+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$STRIP"; then
set dummy strip; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
+if test ${ac_cv_prog_ac_ct_STRIP+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$ac_ct_STRIP"; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
printf %s "checking for a thread-safe mkdir -p... " >&6; }
if test -z "$MKDIR_P"; then
- if ${ac_cv_path_mkdir+:} false; then :
+ if test ${ac_cv_path_mkdir+y}
+then :
printf %s "(cached) " >&6
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for ac_exec_ext in '' $ac_executable_extensions; do
as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext" || continue
case `"$as_dir$ac_prog$ac_exec_ext" --version 2>&1` in #(
- 'mkdir (GNU coreutils) '* | \
- 'mkdir (coreutils) '* | \
+ 'mkdir ('*'coreutils) '* | \
+ 'BusyBox '* | \
'mkdir (fileutils) '4.1*)
ac_cv_path_mkdir=$as_dir$ac_prog$ac_exec_ext
break 3;;
fi
test -d ./--version && rmdir ./--version
- if test "${ac_cv_path_mkdir+set}" = set; then
+ if test ${ac_cv_path_mkdir+y}; then
MKDIR_P="$ac_cv_path_mkdir -p"
else
# As a last resort, use the slow shell script. Don't cache a
set dummy $ac_prog; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AWK+:} false; then :
+if test ${ac_cv_prog_AWK+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$AWK"; then
printf %s "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
set x ${MAKE-make}
ac_make=`printf "%s\n" "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
+if eval test \${ac_cv_prog_make_${ac_make}_set+y}
+then :
printf %s "(cached) " >&6
else
cat >conftest.make <<\_ACEOF
fi
# Check whether --enable-silent-rules was given.
-if test "${enable_silent_rules+set}" = set; then :
+if test ${enable_silent_rules+y}
+then :
enableval=$enable_silent_rules;
fi
am_make=${MAKE-make}
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
printf %s "checking whether $am_make supports nested variables... " >&6; }
-if ${am_cv_make_support_nested_variables+:} false; then :
+if test ${am_cv_make_support_nested_variables+y}
+then :
printf %s "(cached) " >&6
else
if printf "%s\n" 'TRUE=$(BAR$(V))
fi
AM_BACKSLASH='\'
+mkdir_p='$(MKDIR_P)'
if test "`cd $srcdir && pwd`" != "`pwd`"; then
# Use -I$(srcdir) only when $(srcdir) != ., so that make's output
# is not polluted with repeated "-I."
# Define the identity of the package.
PACKAGE='diffutils'
- VERSION='3.3'
+ VERSION='3.4'
cat >>confdefs.h <<_ACEOF
MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
-# We need awk for the "check" target. The system "awk" is bad on
-# some platforms.
+# We need awk for the "check" target (and possibly the TAP driver). The
+# system "awk" is bad on some platforms.
# Always define AMTAR for backward compatibility. Yes, it's still used
# in the wild :-( We should find a proper way to deprecate it ...
AMTAR='$${TAR-tar}'
+
+# We'll loop over all known methods to create a tar archive until one works.
+_am_tools='gnutar pax cpio none'
+
am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
+
# POSIX will say in a future version that running "rm -f" with no argument
# is OK; and we want to be able to make that assumption in our Makefile
# recipes. So use an aggressive probe to check that the usage we want is
as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5
fi
fi
+
# Check whether --enable-silent-rules was given.
-if test "${enable_silent_rules+set}" = set; then :
+if test ${enable_silent_rules+y}
+then :
enableval=$enable_silent_rules;
fi
am_make=${MAKE-make}
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
printf %s "checking whether $am_make supports nested variables... " >&6; }
-if ${am_cv_make_support_nested_variables+:} false; then :
+if test ${am_cv_make_support_nested_variables+y}
+then :
printf %s "(cached) " >&6
else
if printf "%s\n" 'TRUE=$(BAR$(V))
set dummy $ac_prog; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AWK+:} false; then :
+if test ${ac_cv_prog_AWK+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$AWK"; then
set dummy ${ac_tool_prefix}gcc; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
+if test ${ac_cv_prog_CC+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$CC"; then
set dummy gcc; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
set dummy ${ac_tool_prefix}cc; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
+if test ${ac_cv_prog_CC+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$CC"; then
set dummy cc; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
+if test ${ac_cv_prog_CC+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$CC"; then
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
+if test ${ac_cv_prog_CC+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$CC"; then
set dummy $ac_prog; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
set X $ac_compile
ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
+for ac_option in --version -v -V -qversion -version; do
{ { ac_try="$ac_compiler $ac_option >&5"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
(eval "$ac_link_default") 2>&5
ac_status=$?
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
+ test $ac_status = 0; }
+then :
# Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
# in a Makefile. We should not override ac_cv_exeext if it was cached,
# certainly right.
break;;
*.* )
- if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
+ if test ${ac_cv_exeext+y} && test "$ac_cv_exeext" != no;
then :; else
ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
fi
else
ac_file=''
fi
-if test -z "$ac_file"; then :
+if test -z "$ac_file"
+then :
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s\n" "no" >&6; }
printf "%s\n" "$as_me: failed program was:" >&5
(eval "$ac_link") 2>&5
ac_status=$?
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
+ test $ac_status = 0; }
+then :
# If both `conftest.exe' and `conftest' are `present' (well, observable)
# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
# work properly (i.e., refer to `conftest.exe'), while it won't with
/* end confdefs.h. */
#include <stdio.h>
int
-main ()
+main (void)
{
FILE *f = fopen ("conftest.out", "w");
return ferror (f) || fclose (f) != 0;
# the compiler is broken, or we cross compile.
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
printf %s "checking whether we are cross compiling... " >&6; }
-if test "$cross_compiling" != yes; then
+if test "$cross_compiling" = maybe && test "x$build" != "x$host"; then
+ cross_compiling=yes
+elif test "$cross_compiling" != yes; then
{ { ac_try="$ac_link"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
ac_clean_files=$ac_clean_files_save
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
printf %s "checking for suffix of object files... " >&6; }
-if ${ac_cv_objext+:} false; then :
+if test ${ac_cv_objext+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
(eval "$ac_compile") 2>&5
ac_status=$?
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
+ test $ac_status = 0; }
+then :
for ac_file in conftest.o conftest.obj conftest.*; do
test -f "$ac_file" || continue;
case $ac_file in
printf "%s\n" "$ac_cv_objext" >&6; }
OBJEXT=$ac_cv_objext
ac_objext=$OBJEXT
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-printf %s "checking whether we are using the GNU C compiler... " >&6; }
-if ${ac_cv_c_compiler_gnu+:} false; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C" >&5
+printf %s "checking whether the compiler supports GNU C... " >&6; }
+if test ${ac_cv_c_compiler_gnu+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
#ifndef __GNUC__
choke me
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_compiler_gnu=yes
else
ac_compiler_gnu=no
else
GCC=
fi
-ac_test_CFLAGS=${CFLAGS+set}
+ac_test_CFLAGS=${CFLAGS+y}
ac_save_CFLAGS=$CFLAGS
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
printf %s "checking whether $CC accepts -g... " >&6; }
-if ${ac_cv_prog_cc_g+:} false; then :
+if test ${ac_cv_prog_cc_g+y}
+then :
printf %s "(cached) " >&6
else
ac_save_c_werror_flag=$ac_c_werror_flag
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_prog_cc_g=yes
else
CFLAGS=""
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
else
ac_c_werror_flag=$ac_save_c_werror_flag
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_prog_cc_g=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
printf "%s\n" "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
+if test $ac_test_CFLAGS; then
CFLAGS=$ac_save_CFLAGS
elif test $ac_cv_prog_cc_g = yes; then
if test "$GCC" = yes; then
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C11 features" >&5
printf %s "checking for $CC option to enable C11 features... " >&6; }
-if ${ac_cv_prog_cc_c11+:} false; then :
+if test ${ac_cv_prog_cc_c11+y}
+then :
printf %s "(cached) " >&6
else
ac_cv_prog_cc_c11=no
} v1;
int
-main ()
+main (void)
{
// Check bool.
for ac_arg in '' -std=gnu11
do
CC="$ac_save_CC $ac_arg"
- if ac_fn_c_try_compile "$LINENO"; then :
+ if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_prog_cc_c11=$ac_arg
fi
rm -f core conftest.err conftest.$ac_objext
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c11" >&5
printf "%s\n" "$ac_cv_prog_cc_c11" >&6; } ;;
esac
-if test "x$ac_cv_prog_cc_c11" != xno; then :
+if test "x$ac_cv_prog_cc_c11" != xno
+then :
ac_prog_cc_stdc=c11
ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c11
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C99 features" >&5
printf %s "checking for $CC option to enable C99 features... " >&6; }
-if ${ac_cv_prog_cc_c99+:} false; then :
+if test ${ac_cv_prog_cc_c99+y}
+then :
printf %s "(cached) " >&6
else
ac_cv_prog_cc_c99=no
return *str && number && fnumber;
}
int
-main ()
+main (void)
{
// Check bool.
for ac_arg in '' -std=gnu99 -std=c99 -c99 -AC99 -D_STDC_C99= -qlanglvl=extc1x -qlanglvl=extc99
do
CC="$ac_save_CC $ac_arg"
- if ac_fn_c_try_compile "$LINENO"; then :
+ if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_prog_cc_c99=$ac_arg
fi
rm -f core conftest.err conftest.$ac_objext
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5
printf "%s\n" "$ac_cv_prog_cc_c99" >&6; } ;;
esac
-if test "x$ac_cv_prog_cc_c99" != xno; then :
+if test "x$ac_cv_prog_cc_c99" != xno
+then :
ac_prog_cc_stdc=c99
ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C89 features" >&5
printf %s "checking for $CC option to enable C89 features... " >&6; }
-if ${ac_cv_prog_cc_c89+:} false; then :
+if test ${ac_cv_prog_cc_c89+y}
+then :
printf %s "(cached) " >&6
else
ac_cv_prog_cc_c89=no
int argc;
char **argv;
int
-main ()
+main (void)
{
return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
;
-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
do
CC="$ac_save_CC $ac_arg"
- if ac_fn_c_try_compile "$LINENO"; then :
+ if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_prog_cc_c89=$ac_arg
fi
rm -f core conftest.err conftest.$ac_objext
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
printf "%s\n" "$ac_cv_prog_cc_c89" >&6; } ;;
esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
+if test "x$ac_cv_prog_cc_c89" != xno
+then :
ac_prog_cc_stdc=c89
ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89
else
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
printf %s "checking whether $CC understands -c and -o together... " >&6; }
-set dummy $CC; am__cc=`printf "%s\n" "$2" | \
- sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'`
-if eval \${am_cv_prog_cc_${am__cc}_c_o+:} false; then :
+if test ${am_cv_prog_cc_c_o+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-# Make sure it works both with $CC and with simple cc.
-# We do the test twice because some compilers refuse to overwrite an
-# existing .o file with -o, though they will create one.
-ac_try='$CC -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
-rm -f conftest2.*
-if { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-printf "%s\n" "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && test -f conftest2.$ac_objext
-then
- eval am_cv_prog_cc_${am__cc}_c_o=yes
-else
- eval am_cv_prog_cc_${am__cc}_c_o=no
+ # Make sure it works both with $CC and with simple cc.
+ # Following AC_PROG_CC_C_O, we do the test twice because some
+ # compilers refuse to overwrite an existing .o file with -o,
+ # though they will create one.
+ am_cv_prog_cc_c_o=yes
+ for am_i in 1 2; do
+ if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5
+ ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } \
+ && test -f conftest2.$ac_objext; then
+ : OK
+ else
+ am_cv_prog_cc_c_o=no
+ break
+ fi
+ done
+ rm -f core conftest*
+ unset am_i
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
+printf "%s\n" "$am_cv_prog_cc_c_o" >&6; }
+if test "$am_cv_prog_cc_c_o" != yes; then
+ # Losing compiler, so override with the script.
+ # FIXME: It is wrong to rewrite CC.
+ # But if we don't then we get into trouble of one sort or another.
+ # A longer-term fix would be to have automake use am__CC in this case,
+ # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
+ CC="$am_aux_dir/compile $CC"
fi
-rm -f core conftest*
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
-fi
-if eval test \"\$am_cv_prog_cc_${am__cc}_c_o\" = yes; then
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-printf "%s\n" "yes" >&6; }
-else
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
-printf "%s\n" "no" >&6; }
- # Losing compiler, so wrap it with the 'compile' script.
- # FIXME: It is wrong to rewrite CC.
- # But if we don't then we get into trouble of one sort or another.
- # A longer-term fix would be to have automake use am__CC in this case,
- # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
- CC="$am_aux_dir/compile $CC"
-fi
DEPDIR=.deps
ac_config_commands="$ac_config_commands depfiles"
-
-am_make=${MAKE-make}
-cat > confinc << 'END'
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5
+printf %s "checking whether ${MAKE-make} supports the include directive... " >&6; }
+cat > confinc.mk << 'END'
am__doit:
- @echo this is the am__doit target
+ @echo this is the am__doit target >confinc.out
.PHONY: am__doit
END
-# If we don't find an include directive, just comment out the code.
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
-printf %s "checking for style of include used by $am_make... " >&6; }
am__include="#"
am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from 'make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
- am__include=include
- am__quote=
- _am_result=GNU
- ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
- echo '.include "confinc"' > confmf
- case `$am_make -s -f confmf 2> /dev/null` in #(
- *the\ am__doit\ target*)
- am__include=.include
- am__quote="\""
- _am_result=BSD
+# BSD make does it like this.
+echo '.include "confinc.mk" # ignored' > confmf.BSD
+# Other make implementations (GNU, Solaris 10, AIX) do it like this.
+echo 'include confinc.mk # ignored' > confmf.GNU
+_am_result=no
+for s in GNU BSD; do
+ { echo "$as_me:$LINENO: ${MAKE-make} -f confmf.$s && cat confinc.out" >&5
+ (${MAKE-make} -f confmf.$s && cat confinc.out) >&5 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+ case $?:`cat confinc.out 2>/dev/null` in #(
+ '0:this is the am__doit target') :
+ case $s in #(
+ BSD) :
+ am__include='.include' am__quote='"' ;; #(
+ *) :
+ am__include='include' am__quote='' ;;
+esac ;; #(
+ *) :
;;
- esac
-fi
-
-
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
-printf "%s\n" "$_am_result" >&6; }
-rm -f confinc confmf
+esac
+ if test "$am__include" != "#"; then
+ _am_result="yes ($s style)"
+ break
+ fi
+done
+rm -f confinc.* confmf.*
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5
+printf "%s\n" "${_am_result}" >&6; }
# Check whether --enable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then :
+if test ${enable_dependency_tracking+y}
+then :
enableval=$enable_dependency_tracking;
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
printf %s "checking dependency style of $depcc... " >&6; }
-if ${am_cv_CC_dependencies_compiler_type+:} false; then :
+if test ${am_cv_CC_dependencies_compiler_type+y}
+then :
printf %s "(cached) " >&6
else
if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+
HELP2MAN=${HELP2MAN-"${am_missing_run}help2man"}
if test -n "$ac_tool_prefix"; then
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_RANLIB+:} false; then :
+if test ${ac_cv_prog_RANLIB+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$RANLIB"; then
set dummy ranlib; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
+if test ${ac_cv_prog_ac_ct_RANLIB+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$ac_ct_RANLIB"; then
fi
+
+ for ac_header in $ac_header_list
+do :
+ as_ac_Header=`printf "%s\n" "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
+"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"
+then :
+ cat >>confdefs.h <<_ACEOF
+#define `printf "%s\n" "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
+
+
+
+
+
+
+
+
+
+
+
+
+printf "%s\n" "#define HAVE_STDLIB_H 1" >>confdefs.h
+
+printf "%s\n" "#define HAVE_STRING_H 1" >>confdefs.h
+
+printf "%s\n" "#define STDC_HEADERS 1" >>confdefs.h
+
+
+ ac_fn_c_check_header_compile "$LINENO" "minix/config.h" "ac_cv_header_minix_config_h" "$ac_includes_default"
+if test "x$ac_cv_header_minix_config_h" = xyes
+then :
+ MINIX=yes
+else
+ MINIX=
+fi
+
+ if test "$MINIX" = yes; then
+
+printf "%s\n" "#define _POSIX_SOURCE 1" >>confdefs.h
+
+
+printf "%s\n" "#define _POSIX_1_SOURCE 2" >>confdefs.h
+
+
+printf "%s\n" "#define _MINIX 1" >>confdefs.h
+
+
+printf "%s\n" "#define _NETBSD_SOURCE 1" >>confdefs.h
+
+ fi
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5
+printf %s "checking whether it is safe to define __EXTENSIONS__... " >&6; }
+if test ${ac_cv_safe_to_define___extensions__+y}
+then :
+ printf %s "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+# define __EXTENSIONS__ 1
+ $ac_includes_default
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ ac_cv_safe_to_define___extensions__=yes
+else
+ ac_cv_safe_to_define___extensions__=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5
+printf "%s\n" "$ac_cv_safe_to_define___extensions__" >&6; }
+ test $ac_cv_safe_to_define___extensions__ = yes &&
+ printf "%s\n" "#define __EXTENSIONS__ 1" >>confdefs.h
+
+ printf "%s\n" "#define _ALL_SOURCE 1" >>confdefs.h
+
+ printf "%s\n" "#define _DARWIN_C_SOURCE 1" >>confdefs.h
+
+ printf "%s\n" "#define _GNU_SOURCE 1" >>confdefs.h
+
+ printf "%s\n" "#define __USE_MINGW_ANSI_STDIO 1" >>confdefs.h
+
+ printf "%s\n" "#define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h
+
+ printf "%s\n" "#define _TANDEM_SOURCE 1" >>confdefs.h
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether _XOPEN_SOURCE should be defined" >&5
+printf %s "checking whether _XOPEN_SOURCE should be defined... " >&6; }
+if test ${ac_cv_should_define__xopen_source+y}
+then :
+ printf %s "(cached) " >&6
+else
+ ac_cv_should_define__xopen_source=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+ #include <wchar.h>
+ mbstate_t x;
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+ #define _XOPEN_SOURCE 500
+ #include <wchar.h>
+ mbstate_t x;
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ ac_cv_should_define__xopen_source=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_should_define__xopen_source" >&5
+printf "%s\n" "$ac_cv_should_define__xopen_source" >&6; }
+ test $ac_cv_should_define__xopen_source = yes &&
+ printf "%s\n" "#define _XOPEN_SOURCE 500" >>confdefs.h
+
+
+
+
+
+
+
+
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
CPP=
fi
if test -z "$CPP"; then
- if ${ac_cv_prog_CPP+:} false; then :
+ if test ${ac_cv_prog_CPP+y}
+then :
printf %s "(cached) " >&6
else
# Double quotes because CPP needs to be expanded
#include <limits.h>
Syntax error
_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
else
# Broken: fails on valid input.
/* end confdefs.h. */
#include <ac_nonexistent.h>
_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
# Broken: success on invalid input.
continue
else
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
+if $ac_preproc_ok
+then :
break
fi
#include <limits.h>
Syntax error
_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
else
# Broken: fails on valid input.
/* end confdefs.h. */
#include <ac_nonexistent.h>
_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
# Broken: success on invalid input.
continue
else
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
+if $ac_preproc_ok
+then :
else
{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
printf %s "checking for grep that handles long lines and -e... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
+if test ${ac_cv_path_GREP+y}
+then :
printf %s "(cached) " >&6
else
if test -z "$GREP"; then
*/) ;;
*) as_dir=$as_dir/ ;;
esac
- for ac_prog in grep ggrep; do
+ for ac_prog in grep ggrep
+ do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_GREP="$as_dir$ac_prog$ac_exec_ext"
as_fn_executable_p "$ac_path_GREP" || continue
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
printf %s "checking for egrep... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
+if test ${ac_cv_path_EGREP+y}
+then :
printf %s "(cached) " >&6
else
if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
*/) ;;
*) as_dir=$as_dir/ ;;
esac
- for ac_prog in egrep; do
+ for ac_prog in egrep
+ do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_EGREP="$as_dir$ac_prog$ac_exec_ext"
as_fn_executable_p "$ac_path_EGREP" || continue
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for Minix Amsterdam compiler" >&5
printf %s "checking for Minix Amsterdam compiler... " >&6; }
-if ${gl_cv_c_amsterdam_compiler+:} false; then :
+if test ${gl_cv_c_amsterdam_compiler+y}
+then :
printf %s "(cached) " >&6
else
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "Amsterdam" >/dev/null 2>&1; then :
+ $EGREP "Amsterdam" >/dev/null 2>&1
+then :
gl_cv_c_amsterdam_compiler=yes
else
gl_cv_c_amsterdam_compiler=no
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_c_amsterdam_compiler" >&5
printf "%s\n" "$gl_cv_c_amsterdam_compiler" >&6; }
- if test -z "$AR"; then
- if test $gl_cv_c_amsterdam_compiler = yes; then
+
+ if test $gl_cv_c_amsterdam_compiler = yes; then
+ if test -z "$AR"; then
AR='cc -c.a'
- if test -z "$ARFLAGS"; then
- ARFLAGS='-o'
+ fi
+ if test -z "$ARFLAGS"; then
+ ARFLAGS='-o'
+ fi
+ else
+ if test -n "$ac_tool_prefix"; then
+ for ac_prog in ar lib "link -lib"
+ do
+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_AR+y}
+then :
+ printf %s "(cached) " >&6
+else
+ if test -n "$AR"; then
+ ac_cv_prog_AR="$AR" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+ ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+AR=$ac_cv_prog_AR
+if test -n "$AR"; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
+printf "%s\n" "$AR" >&6; }
+else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+
+ test -n "$AR" && break
+ done
+fi
+if test -z "$AR"; then
+ ac_ct_AR=$AR
+ for ac_prog in ar lib "link -lib"
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_AR+y}
+then :
+ printf %s "(cached) " >&6
+else
+ if test -n "$ac_ct_AR"; then
+ ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_AR="$ac_prog"
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_AR=$ac_cv_prog_ac_ct_AR
+if test -n "$ac_ct_AR"; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
+printf "%s\n" "$ac_ct_AR" >&6; }
+else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+
+ test -n "$ac_ct_AR" && break
+done
+
+ if test "x$ac_ct_AR" = x; then
+ AR="false"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ AR=$ac_ct_AR
+ fi
+fi
+
+: ${AR=ar}
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the archiver ($AR) interface" >&5
+printf %s "checking the archiver ($AR) interface... " >&6; }
+if test ${am_cv_ar_interface+y}
+then :
+ printf %s "(cached) " >&6
+else
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+ am_cv_ar_interface=ar
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+int some_variable = 0;
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ am_ar_try='$AR cru libconftest.a conftest.$ac_objext >&5'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$am_ar_try\""; } >&5
+ (eval $am_ar_try) 2>&5
+ ac_status=$?
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+ if test "$ac_status" -eq 0; then
+ am_cv_ar_interface=ar
+ else
+ am_ar_try='$AR -NOLOGO -OUT:conftest.lib conftest.$ac_objext >&5'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$am_ar_try\""; } >&5
+ (eval $am_ar_try) 2>&5
+ ac_status=$?
+ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+ if test "$ac_status" -eq 0; then
+ am_cv_ar_interface=lib
+ else
+ am_cv_ar_interface=unknown
+ fi
fi
- else
- if test -n "$ac_tool_prefix"; then
+ rm -f conftest.lib libconftest.a
+
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_ar_interface" >&5
+printf "%s\n" "$am_cv_ar_interface" >&6; }
+
+case $am_cv_ar_interface in
+ar)
+ ;;
+lib)
+ # Microsoft lib, so override with the ar-lib wrapper script.
+ # FIXME: It is wrong to rewrite AR.
+ # But if we don't then we get into trouble of one sort or another.
+ # A longer-term fix would be to have automake use am__AR in this case,
+ # and then we could set am__AR="$am_aux_dir/ar-lib \$(AR)" or something
+ # similar.
+ AR="$am_aux_dir/ar-lib $AR"
+ ;;
+unknown)
+ as_fn_error $? "could not determine $AR interface" "$LINENO" 5
+ ;;
+esac
+
+ fi
+
+ if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
set dummy ${ac_tool_prefix}ar; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AR+:} false; then :
+if test ${ac_cv_prog_AR+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$AR"; then
set dummy ar; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_AR+:} false; then :
+if test ${ac_cv_prog_ac_ct_AR+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$ac_ct_AR"; then
AR="$ac_cv_prog_AR"
fi
- if test -z "$ARFLAGS"; then
- ARFLAGS='cru'
- fi
- fi
- else
- if test -z "$ARFLAGS"; then
- ARFLAGS='cru'
- fi
+ if test -z "$ARFLAGS"; then
+ ARFLAGS='cr'
fi
+
if test -z "$RANLIB"; then
if test $gl_cv_c_amsterdam_compiler = yes; then
RANLIB=':'
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_RANLIB+:} false; then :
+if test ${ac_cv_prog_RANLIB+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$RANLIB"; then
set dummy ranlib; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
+if test ${ac_cv_prog_ac_ct_RANLIB+y}
+then :
printf %s "(cached) " >&6
else
if test -n "$ac_ct_RANLIB"; then
fi
-
-# For better backward-compatibility. Users are advised to stop
-# relying on this cache variable and C preprocessor symbol ASAP.
-eval ac_cv_prog_cc_${am__cc}_c_o=\$am_cv_prog_cc_${am__cc}_c_o
-if eval test \"\$ac_cv_prog_cc_${am__cc}_c_o\" != yes; then
-
-printf "%s\n" "#define NO_MINUS_C_MINUS_O 1" >>confdefs.h
-
-fi
-
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-printf %s "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
- printf %s "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_header_stdc=yes
-else
- ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
- # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -rf conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "free" >/dev/null 2>&1; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -rf conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
- if test "$cross_compiling" = yes; then :
- :
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
- (('a' <= (c) && (c) <= 'i') \
- || ('j' <= (c) && (c) <= 'r') \
- || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
- int i;
- for (i = 0; i < 256; i++)
- if (XOR (islower (i), ISLOWER (i))
- || toupper (i) != TOUPPER (i))
- return 2;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-printf "%s\n" "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-
-printf "%s\n" "#define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
- inttypes.h stdint.h unistd.h
-do :
- as_ac_Header=`printf "%s\n" "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `printf "%s\n" "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
- ac_fn_c_check_header_mongrel "$LINENO" "minix/config.h" "ac_cv_header_minix_config_h" "$ac_includes_default"
-if test "x$ac_cv_header_minix_config_h" = xyes; then :
- MINIX=yes
-else
- MINIX=
-fi
-
-
- if test "$MINIX" = yes; then
-
-printf "%s\n" "#define _POSIX_SOURCE 1" >>confdefs.h
-
-
-printf "%s\n" "#define _POSIX_1_SOURCE 2" >>confdefs.h
-
-
-printf "%s\n" "#define _MINIX 1" >>confdefs.h
-
-
-printf "%s\n" "#define _NETBSD_SOURCE 1" >>confdefs.h
-
- fi
-
-
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5
-printf %s "checking whether it is safe to define __EXTENSIONS__... " >&6; }
-if ${ac_cv_safe_to_define___extensions__+:} false; then :
- printf %s "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-# define __EXTENSIONS__ 1
- $ac_includes_default
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_safe_to_define___extensions__=yes
-else
- ac_cv_safe_to_define___extensions__=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5
-printf "%s\n" "$ac_cv_safe_to_define___extensions__" >&6; }
- test $ac_cv_safe_to_define___extensions__ = yes &&
- printf "%s\n" "#define __EXTENSIONS__ 1" >>confdefs.h
-
- printf "%s\n" "#define _ALL_SOURCE 1" >>confdefs.h
-
- printf "%s\n" "#define _DARWIN_C_SOURCE 1" >>confdefs.h
-
- printf "%s\n" "#define _GNU_SOURCE 1" >>confdefs.h
-
- printf "%s\n" "#define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h
-
- printf "%s\n" "#define _TANDEM_SOURCE 1" >>confdefs.h
-
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether _XOPEN_SOURCE should be defined" >&5
-printf %s "checking whether _XOPEN_SOURCE should be defined... " >&6; }
-if ${ac_cv_should_define__xopen_source+:} false; then :
- printf %s "(cached) " >&6
-else
- ac_cv_should_define__xopen_source=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
- #include <wchar.h>
- mbstate_t x;
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
- #define _XOPEN_SOURCE 500
- #include <wchar.h>
- mbstate_t x;
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_should_define__xopen_source=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_should_define__xopen_source" >&5
-printf "%s\n" "$ac_cv_should_define__xopen_source" >&6; }
- test $ac_cv_should_define__xopen_source = yes &&
- printf "%s\n" "#define _XOPEN_SOURCE 500" >>confdefs.h
-
-
-
-
-
-
-
-
# Make sure we can run config.sub.
$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
printf %s "checking build system type... " >&6; }
-if ${ac_cv_build+:} false; then :
+if test ${ac_cv_build+y}
+then :
printf %s "(cached) " >&6
else
ac_build_alias=$build_alias
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
printf %s "checking host system type... " >&6; }
-if ${ac_cv_host+:} false; then :
+if test ${ac_cv_host+y}
+then :
printf %s "(cached) " >&6
else
if test "x$host_alias" = x; then
esac
# Check whether --enable-largefile was given.
-if test "${enable_largefile+set}" = set; then :
+if test ${enable_largefile+y}
+then :
enableval=$enable_largefile;
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
printf %s "checking for special C compiler options needed for large files... " >&6; }
-if ${ac_cv_sys_largefile_CC+:} false; then :
+if test ${ac_cv_sys_largefile_CC+y}
+then :
printf %s "(cached) " >&6
else
ac_cv_sys_largefile_CC=no
&& LARGE_OFF_T % 2147483647 == 1)
? 1 : -1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
- if ac_fn_c_try_compile "$LINENO"; then :
+ if ac_fn_c_try_compile "$LINENO"
+then :
break
fi
rm -f core conftest.err conftest.$ac_objext
CC="$CC -n32"
- if ac_fn_c_try_compile "$LINENO"; then :
+ if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_sys_largefile_CC=' -n32'; break
fi
rm -f core conftest.err conftest.$ac_objext
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
printf %s "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
-if ${ac_cv_sys_file_offset_bits+:} false; then :
+if test ${ac_cv_sys_file_offset_bits+y}
+then :
printf %s "(cached) " >&6
else
while :; do
&& LARGE_OFF_T % 2147483647 == 1)
? 1 : -1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_sys_file_offset_bits=no; break
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
&& LARGE_OFF_T % 2147483647 == 1)
? 1 : -1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_sys_file_offset_bits=64; break
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
if test $ac_cv_sys_file_offset_bits = unknown; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
printf %s "checking for _LARGE_FILES value needed for large files... " >&6; }
-if ${ac_cv_sys_large_files+:} false; then :
+if test ${ac_cv_sys_large_files+y}
+then :
printf %s "(cached) " >&6
else
while :; do
&& LARGE_OFF_T % 2147483647 == 1)
? 1 : -1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_sys_large_files=no; break
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
&& LARGE_OFF_T % 2147483647 == 1)
? 1 : -1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_sys_large_files=1; break
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ # Pre-early section.
+
+
+
+ # Code from module absolute-header:
+ # Code from module accept:
+ # Code from module accept-tests:
# Code from module alloca:
# Code from module alloca-opt:
# Code from module alloca-opt-tests:
# Code from module areadlink-tests:
# Code from module argmatch:
# Code from module argmatch-tests:
+ # Code from module arpa_inet:
+ # Code from module arpa_inet-tests:
+ # Code from module assure:
# Code from module binary-io:
# Code from module binary-io-tests:
+ # Code from module bind:
+ # Code from module bind-tests:
# Code from module bitrotate:
# Code from module bitrotate-tests:
# Code from module btowc:
# Code from module close-tests:
# Code from module config-h:
# Code from module configmake:
+ # Code from module connect:
+ # Code from module connect-tests:
+ # Code from module ctype:
+ # Code from module ctype-tests:
# Code from module diffseq:
# Code from module dirname:
# Code from module dirname-lgpl:
# Code from module do-release-commit-and-tag:
# Code from module dosname:
# Code from module double-slash-root:
+ # Code from module dtotimespec:
# Code from module dup2:
# Code from module dup2-tests:
# Code from module environ:
# Code from module exclude-tests:
# Code from module exitfail:
# Code from module extensions:
-
# Code from module extern-inline:
# Code from module fcntl:
# Code from module fcntl-h:
# Code from module fdopen-tests:
# Code from module fgetc-tests:
# Code from module file-type:
+ # Code from module filename:
# Code from module filenamecat:
# Code from module filenamecat-lgpl:
# Code from module filenamecat-tests:
+ # Code from module flexmember:
# Code from module float:
# Code from module float-tests:
# Code from module fnmatch:
# Code from module freopen-tests:
# Code from module fstat:
# Code from module fstat-tests:
+ # Code from module ftruncate:
+ # Code from module ftruncate-tests:
# Code from module fwrite-tests:
# Code from module gendocs:
# Code from module getcwd-lgpl:
# Code from module ignore-value:
# Code from module ignore-value-tests:
# Code from module include_next:
+ # Code from module inet_pton:
+ # Code from module inet_pton-tests:
# Code from module inline:
# Code from module intprops:
# Code from module intprops-tests:
# Code from module inttypes:
# Code from module inttypes-incomplete:
# Code from module inttypes-tests:
+ # Code from module ioctl:
+ # Code from module ioctl-tests:
+ # Code from module isblank:
+ # Code from module isblank-tests:
# Code from module iswblank:
# Code from module iswblank-tests:
# Code from module langinfo:
# Code from module largefile:
# Code from module libsigsegv:
+ # Code from module listen:
+ # Code from module listen-tests:
# Code from module localcharset:
# Code from module locale:
# Code from module locale-tests:
# Code from module lstat:
# Code from module lstat-tests:
# Code from module maintainer-makefile:
- # Code from module malloc-gnu:
- # Code from module malloc-gnu-tests:
# Code from module malloc-posix:
# Code from module malloca:
# Code from module malloca-tests:
# Code from module memchr-tests:
# Code from module mkstemp:
# Code from module mktime:
+ # Code from module mktime-internal:
# Code from module msvc-inval:
# Code from module msvc-nothrow:
# Code from module multiarch:
+ # Code from module nanosleep:
+ # Code from module nanosleep-tests:
+ # Code from module netinet_in:
+ # Code from module netinet_in-tests:
# Code from module nl_langinfo:
# Code from module nl_langinfo-tests:
# Code from module nocrash:
# Code from module open-tests:
# Code from module pathmax:
# Code from module pathmax-tests:
+ # Code from module perror:
+ # Code from module perror-tests:
+ # Code from module pipe-posix:
+ # Code from module pipe-posix-tests:
# Code from module progname:
# Code from module propername:
# Code from module putenv:
# Code from module quotearg-simple-tests:
# Code from module raise:
# Code from module raise-tests:
+ # Code from module rawmemchr:
+ # Code from module rawmemchr-tests:
# Code from module readlink:
# Code from module readlink-tests:
# Code from module readme-release:
# Code from module regex-tests:
# Code from module same-inode:
# Code from module secure_getenv:
+ # Code from module select:
+ # Code from module select-tests:
# Code from module setenv:
# Code from module setenv-tests:
# Code from module setlocale:
# Code from module setlocale-tests:
+ # Code from module setsockopt:
+ # Code from module setsockopt-tests:
# Code from module sh-quote:
# Code from module sh-quote-tests:
# Code from module sigaction:
# Code from module snippet/warn-on-use:
# Code from module snprintf:
# Code from module snprintf-tests:
+ # Code from module socket:
+ # Code from module socketlib:
+ # Code from module sockets:
+ # Code from module sockets-tests:
+ # Code from module socklen:
# Code from module ssize_t:
# Code from module stat:
# Code from module stat-macros:
# Code from module stat-tests:
# Code from module stat-time:
# Code from module stat-time-tests:
+ # Code from module stdalign:
+ # Code from module stdalign-tests:
# Code from module stdarg:
# Code from module strerror:
# Code from module strerror-override:
# Code from module strerror-tests:
+ # Code from module strerror_r-posix:
+ # Code from module strerror_r-posix-tests:
# Code from module strftime:
# Code from module strftime-tests:
# Code from module striconv:
# Code from module strtoumax-tests:
# Code from module symlink:
# Code from module symlink-tests:
+ # Code from module sys_ioctl:
+ # Code from module sys_ioctl-tests:
+ # Code from module sys_select:
+ # Code from module sys_select-tests:
+ # Code from module sys_socket:
+ # Code from module sys_socket-tests:
# Code from module sys_stat:
# Code from module sys_stat-tests:
# Code from module sys_time:
# Code from module sys_time-tests:
# Code from module sys_types:
# Code from module sys_types-tests:
+ # Code from module sys_uio:
+ # Code from module sys_uio-tests:
# Code from module sys_wait:
# Code from module sys_wait-tests:
# Code from module system-quote:
# Code from module time:
# Code from module time-tests:
# Code from module time_r:
+ # Code from module time_rz:
+ # Code from module timegm:
# Code from module timespec:
+ # Code from module timespec-add:
+ # Code from module timespec-sub:
+ # Code from module timespec-tests:
# Code from module trim:
# Code from module unistd:
# Code from module unistd-tests:
# Code from module update-copyright:
# Code from module update-copyright-tests:
# Code from module useless-if-before-free:
- # Code from module usleep:
- # Code from module usleep-tests:
# Code from module vararrays:
# Code from module vasnprintf:
# Code from module vasnprintf-tests:
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 :
+if test "x$ac_cv_type_size_t" = xyes
+then :
else
# for constant arguments. Useless!
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5
printf %s "checking for working alloca.h... " >&6; }
-if ${ac_cv_working_alloca_h+:} false; then :
+if test ${ac_cv_working_alloca_h+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <alloca.h>
int
-main ()
+main (void)
{
char *p = (char *) alloca (2 * sizeof (int));
if (p) return 0;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
ac_cv_working_alloca_h=yes
else
ac_cv_working_alloca_h=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5
printf %s "checking for alloca... " >&6; }
-if ${ac_cv_func_alloca_works+:} false; then :
+if test ${ac_cv_func_alloca_works+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_working_alloca_h = yes; then
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#if defined STDC_HEADERS || defined HAVE_STDLIB_H
-# include <stdlib.h>
-#endif
+#include <stdlib.h>
#include <stddef.h>
#ifndef alloca
# ifdef __GNUC__
#endif
int
-main ()
+main (void)
{
char *p = (char *) alloca (1);
if (p) return 0;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
ac_cv_func_alloca_works=yes
else
ac_cv_func_alloca_works=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether \`alloca.c' needs Cray hooks" >&5
printf %s "checking whether \`alloca.c' needs Cray hooks... " >&6; }
-if ${ac_cv_os_cray+:} false; then :
+if test ${ac_cv_os_cray+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "webecray" >/dev/null 2>&1; then :
+ $EGREP "webecray" >/dev/null 2>&1
+then :
ac_cv_os_cray=yes
else
ac_cv_os_cray=no
for ac_func in _getb67 GETB67 getb67; do
as_ac_var=`printf "%s\n" "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 :
+if eval test \"x\$"$as_ac_var"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define CRAY_STACKSEG_END $ac_func
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5
printf %s "checking stack direction for C alloca... " >&6; }
-if ${ac_cv_c_stack_direction+:} false; then :
+if test ${ac_cv_c_stack_direction+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
ac_cv_c_stack_direction=0
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return find_stack_direction (0, argc + !argv + 20) < 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
ac_cv_c_stack_direction=1
else
ac_cv_c_stack_direction=-1
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether <wchar.h> uses 'inline' correctly" >&5
printf %s "checking whether <wchar.h> uses 'inline' correctly... " >&6; }
-if ${gl_cv_header_wchar_h_correct_inline+:} false; then :
+if test ${gl_cv_header_wchar_h_correct_inline+y}
+then :
printf %s "(cached) " >&6
else
gl_cv_header_wchar_h_correct_inline=yes
do :
as_ac_var=`printf "%s\n" "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 :
+if eval test \"x\$"$as_ac_var"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5
printf %s "checking for nl_langinfo and CODESET... " >&6; }
-if ${am_cv_langinfo_codeset+:} false; then :
+if test ${am_cv_langinfo_codeset+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <langinfo.h>
int
-main ()
+main (void)
{
char* cs = nl_langinfo(CODESET); return !cs;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
am_cv_langinfo_codeset=yes
else
am_cv_langinfo_codeset=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5
printf %s "checking for a traditional french locale... " >&6; }
-if ${gt_cv_locale_fr+:} false; then :
+if test ${gt_cv_locale_fr+y}
+then :
printf %s "(cached) " >&6
else
- for ac_header in $ac_header_list
-do :
- as_ac_Header=`printf "%s\n" "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `printf "%s\n" "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working C stack overflow detection" >&5
printf %s "checking for working C stack overflow detection... " >&6; }
-if ${ac_cv_sys_stack_overflow_works+:} false; then :
+if test ${ac_cv_sys_stack_overflow_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
ac_cv_sys_stack_overflow_works=cross-compiling
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
ac_cv_sys_stack_overflow_works=yes
else
ac_cv_sys_stack_overflow_works=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for correct stack_t interpretation" >&5
printf %s "checking for correct stack_t interpretation... " >&6; }
-if ${gl_cv_sigaltstack_low_base+:} false; then :
+if test ${gl_cv_sigaltstack_low_base+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
gl_cv_sigaltstack_low_base=cross-compiling
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
exit (4);
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_sigaltstack_low_base=yes
else
gl_cv_sigaltstack_low_base=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for precise C stack overflow detection" >&5
printf %s "checking for precise C stack overflow detection... " >&6; }
-if ${ac_cv_sys_xsi_stack_overflow_heuristic+:} false; then :
+if test ${ac_cv_sys_xsi_stack_overflow_heuristic+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
ac_cv_sys_xsi_stack_overflow_heuristic=cross-compiling
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
ac_cv_sys_xsi_stack_overflow_heuristic=yes
else
ac_cv_sys_xsi_stack_overflow_heuristic=no
# Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
+if test ${with_gnu_ld+y}
+then :
withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
else
with_gnu_ld=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
printf %s "checking for non-GNU ld... " >&6; }
fi
-if ${acl_cv_path_LD+:} false; then :
+if test ${acl_cv_path_LD+y}
+then :
printf %s "(cached) " >&6
else
if test -z "$LD"; then
test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
printf %s "checking if the linker ($LD) is GNU ld... " >&6; }
-if ${acl_cv_prog_gnu_ld+:} false; then :
+if test ${acl_cv_prog_gnu_ld+y}
+then :
printf %s "(cached) " >&6
else
# I'd rather use --version here, but apparently some GNU lds only accept -v.
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5
printf %s "checking for shared library run path origin... " >&6; }
-if ${acl_cv_rpath+:} false; then :
+if test ${acl_cv_rpath+y}
+then :
printf %s "(cached) " >&6
else
acl_hardcode_direct="$acl_cv_hardcode_direct"
acl_hardcode_minus_L="$acl_cv_hardcode_minus_L"
# Check whether --enable-rpath was given.
-if test "${enable_rpath+set}" = set; then :
+if test ${enable_rpath+y}
+then :
enableval=$enable_rpath; :
else
enable_rpath=yes
solaris*)
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5
printf %s "checking for 64-bit host... " >&6; }
-if ${gl_cv_solaris_64bit+:} false; then :
+if test ${gl_cv_solaris_64bit+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "sixtyfour bits" >/dev/null 2>&1; then :
+ $EGREP "sixtyfour bits" >/dev/null 2>&1
+then :
gl_cv_solaris_64bit=yes
else
gl_cv_solaris_64bit=no
# Check whether --with-libsigsegv-prefix was given.
-if test "${with_libsigsegv_prefix+set}" = set; then :
+if test ${with_libsigsegv_prefix+y}
+then :
withval=$with_libsigsegv_prefix;
if test "X$withval" = "Xno"; then
use_additional=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libsigsegv" >&5
printf %s "checking for libsigsegv... " >&6; }
-if ${ac_cv_libsigsegv+:} false; then :
+if test ${ac_cv_libsigsegv+y}
+then :
printf %s "(cached) " >&6
else
/* end confdefs.h. */
#include <sigsegv.h>
int
-main ()
+main (void)
{
sigsegv_deinstall_handler();
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
ac_cv_libsigsegv=yes
else
ac_cv_libsigsegv='no, consider installing GNU libsigsegv'
+# The Clang compiler raises a warning for an undeclared identifier that matches
+# a compiler builtin function. All extant Clang versions are affected, as of
+# Clang 3.6.0. Test a builtin known to every version. This problem affects the
+# C and Objective C languages, but Clang does report an error under C++ and
+# Objective C++.
+#
+# Passing -fno-builtin to the compiler would suppress this problem. That
+# strategy would have the advantage of being insensitive to stray warnings, but
+# it would make tests less realistic.
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how $CC reports undeclared, standard C functions" >&5
+printf %s "checking how $CC reports undeclared, standard C functions... " >&6; }
+if test ${ac_cv_c_decl_report+y}
+then :
+ printf %s "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+int
+main (void)
+{
+(void) strchr;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ if test -s conftest.err
+then :
+ # For AC_CHECK_DECL to react to warnings, the compiler must be silent on
+ # valid AC_CHECK_DECL input. No library function is consistently available
+ # on freestanding implementations, so test against a dummy declaration.
+ # Include always-available headers on the off chance that they somehow
+ # elicit warnings.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <float.h>
+#include <limits.h>
+#include <stdarg.h>
+#include <stddef.h>
+extern void ac_decl (int, char *);
+int
+main (void)
+{
+#ifdef __cplusplus
+ (void) ac_decl ((int) 0, (char *) 0);
+ (void) ac_decl;
+#else
+ (void) ac_decl;
+#endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ if test -s conftest.err
+then :
+ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot detect from compiler exit status or warnings
+See \`config.log' for more details" "$LINENO" 5; }
+else
+ ac_cv_c_decl_report=warning
+fi
+else
+ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot compile a simple declaration test
+See \`config.log' for more details" "$LINENO" 5; }
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+else
+ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "compiler does not report undeclared identifiers
+See \`config.log' for more details" "$LINENO" 5; }
+fi
+else
+ ac_cv_c_decl_report=error
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_decl_report" >&5
+printf "%s\n" "$ac_cv_c_decl_report" >&6; }
+
+case $ac_cv_c_decl_report in
+ warning) ac_c_decl_warn_flag=yes ;;
+ *) ac_c_decl_warn_flag= ;;
+esac
REPLACE_FTRUNCATE=0;
REPLACE_GETCWD=0;
REPLACE_GETDOMAINNAME=0;
+ REPLACE_GETDTABLESIZE=0;
REPLACE_GETLOGIN_R=0;
REPLACE_GETGROUPS=0;
REPLACE_GETPAGESIZE=0;
REPLACE_PWRITE=0;
REPLACE_READ=0;
REPLACE_READLINK=0;
+ REPLACE_READLINKAT=0;
REPLACE_RMDIR=0;
REPLACE_SLEEP=0;
REPLACE_SYMLINK=0;
+ REPLACE_SYMLINKAT=0;
REPLACE_TTYNAME_R=0;
REPLACE_UNLINK=0;
REPLACE_UNLINKAT=0;
+ GNULIB_IOCTL=0;
+ SYS_IOCTL_H_HAVE_WINSOCK2_H=0;
+ SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=0;
-
-
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether // is distinct from /" >&5
-printf %s "checking whether // is distinct from /... " >&6; }
-if ${gl_cv_double_slash_root+:} false; then :
- printf %s "(cached) " >&6
-else
- if test x"$cross_compiling" = xyes ; then
- # When cross-compiling, there is no way to tell whether // is special
- # short of a list of hosts. However, the only known hosts to date
- # that have a distinct // are Apollo DomainOS (too old to port to),
- # Cygwin, and z/OS. If anyone knows of another system for which // has
- # special semantics and is distinct from /, please report it to
- # <bug-gnulib@gnu.org>.
- case $host in
- *-cygwin | i370-ibm-openedition)
- gl_cv_double_slash_root=yes ;;
- *)
- # Be optimistic and assume that / and // are the same when we
- # don't know.
- gl_cv_double_slash_root='unknown, assuming no' ;;
- esac
- else
- set x `ls -di / // 2>/dev/null`
- if test "$2" = "$4" && wc //dev/null >/dev/null 2>&1; then
- gl_cv_double_slash_root=no
- else
- gl_cv_double_slash_root=yes
- fi
- fi
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_double_slash_root" >&5
-printf "%s\n" "$gl_cv_double_slash_root" >&6; }
- if test "$gl_cv_double_slash_root" = yes; then
-
-printf "%s\n" "#define DOUBLE_SLASH_IS_DISTINCT_ROOT 1" >>confdefs.h
-
- fi
+ REPLACE_IOCTL=0;
+ GNULIB_ISBLANK=0;
+ HAVE_ISBLANK=1;
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the preprocessor supports include_next" >&5
printf %s "checking whether the preprocessor supports include_next... " >&6; }
-if ${gl_cv_have_include_next+:} false; then :
+if test ${gl_cv_have_include_next+y}
+then :
printf %s "(cached) " >&6
else
rm -rf conftestd1a conftestd1b conftestd2
/* end confdefs.h. */
#include <conftest.h>
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_have_include_next=yes
else
CPPFLAGS="$gl_save_CPPFLAGS -Iconftestd1a -Iconftestd2"
/* end confdefs.h. */
#include <conftest.h>
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_have_include_next=buggy
else
gl_cv_have_include_next=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether system header files limit the line length" >&5
printf %s "checking whether system header files limit the line length... " >&6; }
-if ${gl_cv_pragma_columns+:} false; then :
+if test ${gl_cv_pragma_columns+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "choke me" >/dev/null 2>&1; then :
+ $EGREP "choke me" >/dev/null 2>&1
+then :
gl_cv_pragma_columns=yes
else
gl_cv_pragma_columns=no
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether // is distinct from /" >&5
+printf %s "checking whether // is distinct from /... " >&6; }
+if test ${gl_cv_double_slash_root+y}
+then :
+ printf %s "(cached) " >&6
+else
+ if test x"$cross_compiling" = xyes ; then
+ # When cross-compiling, there is no way to tell whether // is special
+ # short of a list of hosts. However, the only known hosts to date
+ # that have a distinct // are Apollo DomainOS (too old to port to),
+ # Cygwin, and z/OS. If anyone knows of another system for which // has
+ # special semantics and is distinct from /, please report it to
+ # <bug-gnulib@gnu.org>.
+ case $host in
+ *-cygwin | i370-ibm-openedition)
+ gl_cv_double_slash_root=yes ;;
+ *)
+ # Be optimistic and assume that / and // are the same when we
+ # don't know.
+ gl_cv_double_slash_root='unknown, assuming no' ;;
+ esac
+ else
+ set x `ls -di / // 2>/dev/null`
+ if test "$2" = "$4" && wc //dev/null >/dev/null 2>&1; then
+ gl_cv_double_slash_root=no
+ else
+ gl_cv_double_slash_root=yes
+ fi
+ fi
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_double_slash_root" >&5
+printf "%s\n" "$gl_cv_double_slash_root" >&6; }
+ if test "$gl_cv_double_slash_root" = yes; then
+
+printf "%s\n" "#define DOUBLE_SLASH_IS_DISTINCT_ROOT 1" >>confdefs.h
+
+ fi
+
+
+
+
+
+
+
+
+
+
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if environ is properly declared" >&5
+printf %s "checking if environ is properly declared... " >&6; }
+ if test ${gt_cv_var_environ_declaration+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#if HAVE_UNISTD_H
+ #include <unistd.h>
+ #endif
+ /* mingw, BeOS, Haiku declare environ in <stdlib.h>, not in <unistd.h>. */
+ #include <stdlib.h>
+
+ extern struct { int foo; } environ;
+int
+main (void)
+{
+environ.foo = 1;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gt_cv_var_environ_declaration=no
+else
+ gt_cv_var_environ_declaration=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_var_environ_declaration" >&5
+printf "%s\n" "$gt_cv_var_environ_declaration" >&6; }
+ if test $gt_cv_var_environ_declaration = yes; then
+
+printf "%s\n" "#define HAVE_ENVIRON_DECL 1" >>confdefs.h
+
+ fi
+
+
+ if test $gt_cv_var_environ_declaration != yes; then
+ HAVE_DECL_ENVIRON=0
+ fi
+
+
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for complete errno.h" >&5
printf %s "checking for complete errno.h... " >&6; }
-if ${gl_cv_header_errno_h_complete+:} false; then :
+if test ${gl_cv_header_errno_h_complete+y}
+then :
printf %s "(cached) " >&6
else
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "booboo" >/dev/null 2>&1; then :
+ $EGREP "booboo" >/dev/null 2>&1
+then :
gl_cv_header_errno_h_complete=no
else
gl_cv_header_errno_h_complete=yes
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <errno.h>" >&5
printf %s "checking absolute name of <errno.h>... " >&6; }
-if ${gl_cv_next_errno_h+:} false; then :
+if test ${gl_cv_next_errno_h+y}
+then :
printf %s "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <errno.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'errno.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_next_errno_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'errno.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_errno_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_errno_h
+ gl_cv_next_errno_h='"'$gl_header'"'
fi
if test -n "$ERRNO_H"; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for EMULTIHOP value" >&5
printf %s "checking for EMULTIHOP value... " >&6; }
-if ${gl_cv_header_errno_h_EMULTIHOP+:} false; then :
+if test ${gl_cv_header_errno_h_EMULTIHOP+y}
+then :
printf %s "(cached) " >&6
else
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then :
+ $EGREP "yes" >/dev/null 2>&1
+then :
gl_cv_header_errno_h_EMULTIHOP=yes
else
gl_cv_header_errno_h_EMULTIHOP=no
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then :
+ $EGREP "yes" >/dev/null 2>&1
+then :
gl_cv_header_errno_h_EMULTIHOP=hidden
fi
rm -rf conftest*
/* The following two lines are a workaround against an autoconf-2.52 bug. */
#include <stdio.h>
#include <stdlib.h>
-"; then :
+"
+then :
fi
if test -n "$ERRNO_H"; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ENOLINK value" >&5
printf %s "checking for ENOLINK value... " >&6; }
-if ${gl_cv_header_errno_h_ENOLINK+:} false; then :
+if test ${gl_cv_header_errno_h_ENOLINK+y}
+then :
printf %s "(cached) " >&6
else
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then :
+ $EGREP "yes" >/dev/null 2>&1
+then :
gl_cv_header_errno_h_ENOLINK=yes
else
gl_cv_header_errno_h_ENOLINK=no
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then :
+ $EGREP "yes" >/dev/null 2>&1
+then :
gl_cv_header_errno_h_ENOLINK=hidden
fi
rm -rf conftest*
/* The following two lines are a workaround against an autoconf-2.52 bug. */
#include <stdio.h>
#include <stdlib.h>
-"; then :
+"
+then :
fi
if test -n "$ERRNO_H"; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for EOVERFLOW value" >&5
printf %s "checking for EOVERFLOW value... " >&6; }
-if ${gl_cv_header_errno_h_EOVERFLOW+:} false; then :
+if test ${gl_cv_header_errno_h_EOVERFLOW+y}
+then :
printf %s "(cached) " >&6
else
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then :
+ $EGREP "yes" >/dev/null 2>&1
+then :
gl_cv_header_errno_h_EOVERFLOW=yes
else
gl_cv_header_errno_h_EOVERFLOW=no
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then :
+ $EGREP "yes" >/dev/null 2>&1
+then :
gl_cv_header_errno_h_EOVERFLOW=hidden
fi
rm -rf conftest*
/* The following two lines are a workaround against an autoconf-2.52 bug. */
#include <stdio.h>
#include <stdlib.h>
-"; then :
+"
+then :
fi
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 :
+if test "x$ac_cv_have_decl_strerror_r" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
#define HAVE_DECL_STRERROR_R $ac_have_decl
_ACEOF
-for ac_func in strerror_r
-do :
- ac_fn_c_check_func "$LINENO" "strerror_r" "ac_cv_func_strerror_r"
-if test "x$ac_cv_func_strerror_r" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_STRERROR_R 1
-_ACEOF
-fi
-done
+
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether strerror_r returns char *" >&5
printf %s "checking whether strerror_r returns char *... " >&6; }
-if ${ac_cv_func_strerror_r_char_p+:} false; then :
+if test ${ac_cv_func_strerror_r_char_p+y}
+then :
printf %s "(cached) " >&6
else
/* end confdefs.h. */
$ac_includes_default
int
-main ()
+main (void)
{
char buf[100];
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_func_strerror_r_char_p=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
# former has a strerror_r that returns char*, while the latter
# has a strerror_r that returns `int'.
# This test should segfault on the DEC system.
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
$ac_includes_default
extern char *strerror_r ();
int
-main ()
+main (void)
{
char buf[100];
char x = *strerror_r (0, buf, sizeof buf);
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
ac_cv_func_strerror_r_char_p=yes
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working fcntl.h" >&5
printf %s "checking for working fcntl.h... " >&6; }
-if ${gl_cv_header_working_fcntl_h+:} false; then :
+if test ${gl_cv_header_working_fcntl_h+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
gl_cv_header_working_fcntl_h=cross-compiling
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
};
int
-main ()
+main (void)
{
int result = !constants;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_header_working_fcntl_h=yes
else
case $? in #(
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 :
+if test "x$ac_cv_type_pid_t" = xyes
+then :
else
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 :
+if test "x$ac_cv_type_mode_t" = xyes
+then :
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for mbstate_t" >&5
printf %s "checking for mbstate_t... " >&6; }
-if ${ac_cv_type_mbstate_t+:} false; then :
+if test ${ac_cv_type_mbstate_t+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <time.h>
#include <wchar.h>
int
-main ()
+main (void)
{
mbstate_t x; return sizeof x;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_type_mbstate_t=yes
else
ac_cv_type_mbstate_t=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stat file-mode macros are broken" >&5
printf %s "checking whether stat file-mode macros are broken... " >&6; }
-if ${ac_cv_header_stat_broken+:} false; then :
+if test ${ac_cv_header_stat_broken+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_header_stat_broken=no
else
ac_cv_header_stat_broken=yes
-
-
case "$host_os" in
mingw*)
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for 64-bit off_t" >&5
printf %s "checking for 64-bit off_t... " >&6; }
-if ${gl_cv_type_off_t_64+:} false; then :
+if test ${gl_cv_type_off_t_64+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
int verify_off_t_size[sizeof (off_t) >= 8 ? 1 : -1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_type_off_t_64=yes
else
gl_cv_type_off_t_64=no
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/stat.h>" >&5
printf %s "checking absolute name of <sys/stat.h>... " >&6; }
-if ${gl_cv_next_sys_stat_h+:} false; then :
+if test ${gl_cv_next_sys_stat_h+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_header_sys_stat_h = yes; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/stat.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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/stat.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_next_sys_stat_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ 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/stat.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_stat_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_sys_stat_h
+ gl_cv_next_sys_stat_h='"'$gl_header'"'
else
gl_cv_next_sys_stat_h='<'sys/stat.h'>'
fi
ac_fn_c_check_type "$LINENO" "nlink_t" "ac_cv_type_nlink_t" "#include <sys/types.h>
#include <sys/stat.h>
"
-if test "x$ac_cv_type_nlink_t" = xyes; then :
+if test "x$ac_cv_type_nlink_t" = xyes
+then :
else
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <sys/stat.h>
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
+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
+
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <getopt.h>" >&5
printf %s "checking absolute name of <getopt.h>... " >&6; }
-if ${gl_cv_next_getopt_h+:} false; then :
+if test ${gl_cv_next_getopt_h+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_header_getopt_h = yes; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <getopt.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'getopt.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_next_getopt_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'getopt.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_getopt_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_getopt_h
+ gl_cv_next_getopt_h='"'$gl_header'"'
else
gl_cv_next_getopt_h='<'getopt.h'>'
fi
if test -z "$gl_replace_getopt" && test $gl_getopt_required = GNU; then
for ac_header in getopt.h
do :
- ac_fn_c_check_header_mongrel "$LINENO" "getopt.h" "ac_cv_header_getopt_h" "$ac_includes_default"
-if test "x$ac_cv_header_getopt_h" = xyes; then :
+ ac_fn_c_check_header_compile "$LINENO" "getopt.h" "ac_cv_header_getopt_h" "$ac_includes_default"
+if test "x$ac_cv_header_getopt_h" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_GETOPT_H 1
_ACEOF
else
gl_replace_getopt=yes
fi
-
done
fi
for ac_func in getopt_long_only
do :
ac_fn_c_check_func "$LINENO" "getopt_long_only" "ac_cv_func_getopt_long_only"
-if test "x$ac_cv_func_getopt_long_only" = xyes; then :
+if test "x$ac_cv_func_getopt_long_only" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_GETOPT_LONG_ONLY 1
_ACEOF
if test -z "$gl_replace_getopt"; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether getopt is POSIX compatible" >&5
printf %s "checking whether getopt is POSIX compatible... " >&6; }
-if ${gl_cv_func_getopt_posix+:} false; then :
+if test ${gl_cv_func_getopt_posix+y}
+then :
printf %s "(cached) " >&6
else
if test $cross_compiling = no; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "cannot run test program while cross compiling
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_getopt_posix=maybe
else
gl_cv_func_getopt_posix=no
fi
if test $gl_cv_func_getopt_posix = maybe; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "cannot run test program while cross compiling
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_getopt_posix=maybe
else
gl_cv_func_getopt_posix=no
fi
if test $gl_cv_func_getopt_posix = maybe; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "cannot run test program while cross compiling
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_getopt_posix=yes
else
gl_cv_func_getopt_posix=no
if test -z "$gl_replace_getopt" && test $gl_getopt_required = GNU; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working GNU getopt function" >&5
printf %s "checking for working GNU getopt function... " >&6; }
-if ${gl_cv_func_getopt_gnu+:} false; then :
+if test ${gl_cv_func_getopt_gnu+y}
+then :
printf %s "(cached) " >&6
else
# Even with POSIXLY_CORRECT, the GNU extension of leading '-' in the
esac
POSIXLY_CORRECT=1
export POSIXLY_CORRECT
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
gl_cv_func_getopt_gnu="guessing no"
else
#else
/* Avoid a crash on POSIX systems. */
#include <signal.h>
+#include <unistd.h>
/* A POSIX signal handler. */
static void
exception_handler (int sig)
{
- exit (1);
+ _exit (1);
}
static void
nocrash_init (void)
int
-main ()
+main (void)
{
int result = 0;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_getopt_gnu=yes
else
gl_cv_func_getopt_gnu=no
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working GNU getopt_long function" >&5
printf %s "checking for working GNU getopt_long function... " >&6; }
-if ${gl_cv_func_getopt_long_gnu+:} false; then :
+if test ${gl_cv_func_getopt_long_gnu+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
openbsd*) gl_cv_func_getopt_long_gnu="guessing no";;
*) gl_cv_func_getopt_long_gnu="guessing yes";;
#include <string.h>
int
-main ()
+main (void)
{
static const struct option long_options[] =
{
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_getopt_long_gnu=yes
else
gl_cv_func_getopt_long_gnu=no
fi
ac_fn_c_check_decl "$LINENO" "getenv" "ac_cv_have_decl_getenv" "$ac_includes_default"
-if test "x$ac_cv_have_decl_getenv" = xyes; then :
+if test "x$ac_cv_have_decl_getenv" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C/C++ restrict keyword" >&5
printf %s "checking for C/C++ restrict keyword... " >&6; }
-if ${ac_cv_c_restrict+:} false; then :
+if test ${ac_cv_c_restrict+y}
+then :
printf %s "(cached) " >&6
else
ac_cv_c_restrict=no
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];
- }
+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 ()
+main (void)
{
int s[1];
- int * $ac_kw t = s;
- t[0] = 0;
- return foo(t)
+ int *$ac_kw t = s;
+ t[0] = 0;
+ return foo (t) + bar (t);
+
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+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
HAVE_GETTIMEOFDAY=1;
HAVE_STRUCT_TIMEVAL=1;
HAVE_SYS_TIME_H=1;
+ HAVE_TIMEZONE_T=0;
REPLACE_GETTIMEOFDAY=0;
REPLACE_STRUCT_TIMEVAL=0;
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/time.h>" >&5
printf %s "checking absolute name of <sys/time.h>... " >&6; }
-if ${gl_cv_next_sys_time_h+:} false; then :
+if test ${gl_cv_next_sys_time_h+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_header_sys_time_h = yes; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ 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
+ 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_next_sys_time_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ 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
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 :
+ ac_fn_c_check_header_compile "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default"
+if test "x$ac_cv_header_winsock2_h" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_WINSOCK2_H 1
_ACEOF
fi
-
done
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for struct timeval" >&5
printf %s "checking for struct timeval... " >&6; }
-if ${gl_cv_sys_struct_timeval+:} false; then :
+if test ${gl_cv_sys_struct_timeval+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int
-main ()
+main (void)
{
static struct timeval x; x.tv_sec = x.tv_usec;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_sys_struct_timeval=yes
else
gl_cv_sys_struct_timeval=no
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wide-enough struct timeval.tv_sec member" >&5
printf %s "checking for wide-enough struct timeval.tv_sec member... " >&6; }
-if ${gl_cv_sys_struct_timeval_tv_sec+:} false; then :
+if test ${gl_cv_sys_struct_timeval_tv_sec+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int
-main ()
+main (void)
{
static struct timeval x;
typedef int verify_tv_sec_type[
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+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
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <time.h>
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
# Check whether --with-libiconv-prefix was given.
-if test "${with_libiconv_prefix+set}" = set; then :
+if test ${with_libiconv_prefix+y}
+then :
withval=$with_libiconv_prefix;
if test "X$withval" = "Xno"; then
use_additional=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
printf %s "checking for iconv... " >&6; }
-if ${am_cv_func_iconv+:} false; then :
+if test ${am_cv_func_iconv+y}
+then :
printf %s "(cached) " >&6
else
#include <iconv.h>
int
-main ()
+main (void)
{
iconv_t cd = iconv_open("","");
iconv(cd,NULL,NULL,NULL,NULL);
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
am_cv_func_iconv=yes
fi
rm -f core conftest.err conftest.$ac_objext \
#include <iconv.h>
int
-main ()
+main (void)
{
iconv_t cd = iconv_open("","");
iconv(cd,NULL,NULL,NULL,NULL);
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
am_cv_lib_iconv=yes
am_cv_func_iconv=yes
fi
if test "$am_cv_func_iconv" = yes; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working iconv" >&5
printf %s "checking for working iconv... " >&6; }
-if ${am_cv_func_iconv_works+:} false; then :
+if test ${am_cv_func_iconv_works+y}
+then :
printf %s "(cached) " >&6
else
if test $am_cv_lib_iconv = yes; then
LIBS="$LIBS $LIBICONV"
fi
- if test "$cross_compiling" = yes; then :
-
- case "$host_os" in
- aix* | hpux*) am_cv_func_iconv_works="guessing no" ;;
- *) am_cv_func_iconv_works="guessing yes" ;;
- esac
-
+ am_cv_func_iconv_works=no
+ for ac_iconv_const in '' 'const'; do
+ if test "$cross_compiling" = yes
+then :
+ case "$host_os" in
+ aix* | hpux*) am_cv_func_iconv_works="guessing no" ;;
+ *) am_cv_func_iconv_works="guessing yes" ;;
+ esac
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <iconv.h>
#include <string.h>
-int main ()
+
+#ifndef ICONV_CONST
+# define ICONV_CONST $ac_iconv_const
+#endif
+
+int
+main (void)
{
- int result = 0;
+int result = 0;
/* Test against AIX 5.1 bug: Failures are not distinguishable from successful
returns. */
{
iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8");
if (cd_utf8_to_88591 != (iconv_t)(-1))
{
- static const char input[] = "\342\202\254"; /* EURO SIGN */
+ static ICONV_CONST char input[] = "\342\202\254"; /* EURO SIGN */
char buf[10];
- const char *inptr = input;
+ ICONV_CONST char *inptr = input;
size_t inbytesleft = strlen (input);
char *outptr = buf;
size_t outbytesleft = sizeof (buf);
size_t res = iconv (cd_utf8_to_88591,
- (char **) &inptr, &inbytesleft,
+ &inptr, &inbytesleft,
&outptr, &outbytesleft);
if (res == 0)
result |= 1;
iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646");
if (cd_ascii_to_88591 != (iconv_t)(-1))
{
- static const char input[] = "\263";
+ static ICONV_CONST char input[] = "\263";
char buf[10];
- const char *inptr = input;
+ ICONV_CONST char *inptr = input;
size_t inbytesleft = strlen (input);
char *outptr = buf;
size_t outbytesleft = sizeof (buf);
size_t res = iconv (cd_ascii_to_88591,
- (char **) &inptr, &inbytesleft,
+ &inptr, &inbytesleft,
&outptr, &outbytesleft);
if (res == 0)
result |= 2;
iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1");
if (cd_88591_to_utf8 != (iconv_t)(-1))
{
- static const char input[] = "\304";
+ static ICONV_CONST char input[] = "\304";
static char buf[2] = { (char)0xDE, (char)0xAD };
- const char *inptr = input;
+ ICONV_CONST char *inptr = input;
size_t inbytesleft = 1;
char *outptr = buf;
size_t outbytesleft = 1;
size_t res = iconv (cd_88591_to_utf8,
- (char **) &inptr, &inbytesleft,
+ &inptr, &inbytesleft,
&outptr, &outbytesleft);
if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD)
result |= 4;
iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591");
if (cd_88591_to_utf8 != (iconv_t)(-1))
{
- static const char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337";
+ static ICONV_CONST char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337";
char buf[50];
- const char *inptr = input;
+ ICONV_CONST char *inptr = input;
size_t inbytesleft = strlen (input);
char *outptr = buf;
size_t outbytesleft = sizeof (buf);
size_t res = iconv (cd_88591_to_utf8,
- (char **) &inptr, &inbytesleft,
+ &inptr, &inbytesleft,
&outptr, &outbytesleft);
if ((int)res > 0)
result |= 8;
&& iconv_open ("utf8", "eucJP") == (iconv_t)(-1))
result |= 16;
return result;
+
+ ;
+ return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
am_cv_func_iconv_works=yes
-else
- am_cv_func_iconv_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
+ test "$am_cv_func_iconv_works" = no || break
+ done
LIBS="$am_save_LIBS"
fi
if test "$am_cv_func_iconv" = yes; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for iconv declaration" >&5
printf %s "checking for iconv declaration... " >&6; }
- if ${am_cv_proto_iconv+:} false; then :
+ if test ${am_cv_proto_iconv+y}
+then :
printf %s "(cached) " >&6
else
#endif
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
am_cv_proto_iconv_arg1=""
else
am_cv_proto_iconv_arg1="const"
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
printf %s "checking for inline... " >&6; }
-if ${ac_cv_c_inline+:} false; then :
+if test ${ac_cv_c_inline+y}
+then :
printf %s "(cached) " >&6
else
ac_cv_c_inline=no
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_c_inline=$ac_kw
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
esac
ac_fn_c_check_type "$LINENO" "off_t" "ac_cv_type_off_t" "$ac_includes_default"
-if test "x$ac_cv_type_off_t" = xyes; then :
+if test "x$ac_cv_type_off_t" = xyes
+then :
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for unsigned long long int" >&5
printf %s "checking for unsigned long long int... " >&6; }
-if ${ac_cv_type_unsigned_long_long_int+:} false; then :
+if test ${ac_cv_type_unsigned_long_long_int+y}
+then :
printf %s "(cached) " >&6
else
ac_cv_type_unsigned_long_long_int=yes
? 1 : -1)];
int i = 63;
int
-main ()
+main (void)
{
/* Test availability of runtime routines for shift and division. */
long long int llmax = 9223372036854775807ll;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
else
ac_cv_type_unsigned_long_long_int=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for long long int" >&5
printf %s "checking for long long int... " >&6; }
-if ${ac_cv_type_long_long_int+:} false; then :
+if test ${ac_cv_type_long_long_int+y}
+then :
printf %s "(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 :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
# define LLONG_MAX (HALF - 1 + HALF)
#endif
int
-main ()
+main (void)
{
long long int n = 1;
int i;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
else
ac_cv_type_long_long_int=no
-
-
gl_cv_c_multiarch=no
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
typedef int dummy;
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
arch=
prev=
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <stdint.h>" >&5
printf %s "checking absolute name of <stdint.h>... " >&6; }
-if ${gl_cv_next_stdint_h+:} false; then :
+if test ${gl_cv_next_stdint_h+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_header_stdint_h = yes; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdint.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'stdint.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_next_stdint_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'stdint.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_stdint_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_stdint_h
+ gl_cv_next_stdint_h='"'$gl_header'"'
else
gl_cv_next_stdint_h='<'stdint.h'>'
fi
if test $ac_cv_header_stdint_h = yes; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stdint.h conforms to C99" >&5
printf %s "checking whether stdint.h conforms to C99... " >&6; }
-if ${gl_cv_header_working_stdint_h+:} false; then :
+if test ${gl_cv_header_working_stdint_h+y}
+then :
printf %s "(cached) " >&6
else
gl_cv_header_working_stdint_h=no
#define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 /* work if build isn't clean */
+#define __STDC_CONSTANT_MACROS 1
+#define __STDC_LIMIT_MACROS 1
#include <stdint.h>
/* Dragonfly defines WCHAR_MIN, WCHAR_MAX only in <wchar.h>. */
#if !(defined WCHAR_MIN && defined WCHAR_MAX)
};
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- if test "$cross_compiling" = yes; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
+ if test "$cross_compiling" = yes
+then :
gl_cv_header_working_stdint_h=yes
else
#define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 /* work if build isn't clean */
+#define __STDC_CONSTANT_MACROS 1
+#define __STDC_LIMIT_MACROS 1
#include <stdint.h>
};
int
-main ()
+main (void)
{
const char **mv;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_header_working_stdint_h=yes
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
printf "%s\n" "$gl_cv_header_working_stdint_h" >&6; }
fi
if test "$gl_cv_header_working_stdint_h" = yes; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stdint.h predates C++11" >&5
+printf %s "checking whether stdint.h predates C++11... " >&6; }
+if test ${gl_cv_header_stdint_predates_cxx11_h+y}
+then :
+ printf %s "(cached) " >&6
+else
+ gl_cv_header_stdint_predates_cxx11_h=yes
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+
+#define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 /* work if build isn't clean */
+#include <stdint.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 <signal.h>
+ #if HAVE_WCHAR_H
+ # include <stdio.h>
+ # include <time.h>
+ # include <wchar.h>
+ #endif
+
+
+intmax_t im = INTMAX_MAX;
+int32_t i32 = INT32_C (0x7fffffff);
+
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_header_stdint_predates_cxx11_h=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_predates_cxx11_h" >&5
+printf "%s\n" "$gl_cv_header_stdint_predates_cxx11_h" >&6; }
+
+ if test "$gl_cv_header_stdint_predates_cxx11_h" = yes; then
+
+printf "%s\n" "#define __STDC_CONSTANT_MACROS 1" >>confdefs.h
+
+
+printf "%s\n" "#define __STDC_LIMIT_MACROS 1" >>confdefs.h
+
+ fi
STDINT_H=
else
for ac_header in sys/inttypes.h sys/bitypes.h
do :
as_ac_Header=`printf "%s\n" "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
fi
-
done
if test $ac_cv_header_sys_inttypes_h = yes; then
for gltype in ptrdiff_t size_t ; do
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for bit size of $gltype" >&5
printf %s "checking for bit size of $gltype... " >&6; }
-if eval \${gl_cv_bitsizeof_${gltype}+:} false; then :
+if eval test \${gl_cv_bitsizeof_${gltype}+y}
+then :
printf %s "(cached) " >&6
else
if ac_fn_c_compute_int "$LINENO" "sizeof ($gltype) * CHAR_BIT" "result" "
# include <wchar.h>
#endif
-#include <limits.h>"; then :
+#include <limits.h>"
+then :
else
result=unknown
for gltype in sig_atomic_t wchar_t wint_t ; do
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for bit size of $gltype" >&5
printf %s "checking for bit size of $gltype... " >&6; }
-if eval \${gl_cv_bitsizeof_${gltype}+:} false; then :
+if eval test \${gl_cv_bitsizeof_${gltype}+y}
+then :
printf %s "(cached) " >&6
else
if ac_fn_c_compute_int "$LINENO" "sizeof ($gltype) * CHAR_BIT" "result" "
# include <wchar.h>
#endif
-#include <limits.h>"; then :
+#include <limits.h>"
+then :
else
result=unknown
for gltype in sig_atomic_t wchar_t wint_t ; do
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gltype is signed" >&5
printf %s "checking whether $gltype is signed... " >&6; }
-if eval \${gl_cv_type_${gltype}_signed+:} false; then :
+if eval test \${gl_cv_type_${gltype}_signed+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
int verify[2 * (($gltype) -1 < ($gltype) 0) - 1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
result=yes
else
result=no
for gltype in ptrdiff_t size_t ; do
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $gltype integer literal suffix" >&5
printf %s "checking for $gltype integer literal suffix... " >&6; }
-if eval \${gl_cv_type_${gltype}_suffix+:} false; then :
+if eval test \${gl_cv_type_${gltype}_suffix+y}
+then :
printf %s "(cached) " >&6
else
eval gl_cv_type_${gltype}_suffix=no
extern $gltype foo;
extern $gltype1 foo;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval gl_cv_type_${gltype}_suffix=\$glsuf
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
for gltype in sig_atomic_t wchar_t wint_t ; do
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $gltype integer literal suffix" >&5
printf %s "checking for $gltype integer literal suffix... " >&6; }
-if eval \${gl_cv_type_${gltype}_suffix+:} false; then :
+if eval test \${gl_cv_type_${gltype}_suffix+y}
+then :
printf %s "(cached) " >&6
else
eval gl_cv_type_${gltype}_suffix=no
extern $gltype foo;
extern $gltype1 foo;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval gl_cv_type_${gltype}_suffix=\$glsuf
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-
GNULIB_IMAXABS=0;
GNULIB_IMAXDIV=0;
GNULIB_STRTOIMAX=0;
HAVE_DECL_STRTOIMAX=1;
HAVE_DECL_STRTOUMAX=1;
REPLACE_STRTOIMAX=0;
+ REPLACE_STRTOUMAX=0;
INT32_MAX_LT_INTMAX_MAX=1;
INT64_MAX_EQ_LONG_MAX='defined _LP64';
PRI_MACROS_BROKEN=0;
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <inttypes.h>" >&5
printf %s "checking absolute name of <inttypes.h>... " >&6; }
-if ${gl_cv_next_inttypes_h+:} false; then :
+if test ${gl_cv_next_inttypes_h+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_header_inttypes_h = yes; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <inttypes.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'inttypes.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_next_inttypes_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'inttypes.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_inttypes_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_inttypes_h
+ gl_cv_next_inttypes_h='"'$gl_header'"'
else
gl_cv_next_inttypes_h='<'inttypes.h'>'
fi
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <inttypes.h>
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
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 :
+ ac_fn_c_check_header_compile "$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
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the inttypes.h PRIxNN macros are broken" >&5
printf %s "checking whether the inttypes.h PRIxNN macros are broken... " >&6; }
-if ${gt_cv_inttypes_pri_broken+:} false; then :
+if test ${gt_cv_inttypes_pri_broken+y}
+then :
printf %s "(cached) " >&6
else
#endif
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gt_cv_inttypes_pri_broken=no
else
gt_cv_inttypes_pri_broken=yes
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wint_t" >&5
printf %s "checking for wint_t... " >&6; }
-if ${gt_cv_c_wint_t+:} false; then :
+if test ${gt_cv_c_wint_t+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <wchar.h>
wint_t foo = (wchar_t)'\0';
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gt_cv_c_wint_t=yes
else
gt_cv_c_wint_t=no
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <wctype.h>" >&5
printf %s "checking absolute name of <wctype.h>... " >&6; }
-if ${gl_cv_next_wctype_h+:} false; then :
+if test ${gl_cv_next_wctype_h+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_header_wctype_h = yes; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <wctype.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'wctype.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_next_wctype_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'wctype.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_wctype_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_wctype_h
+ gl_cv_next_wctype_h='"'$gl_header'"'
else
gl_cv_next_wctype_h='<'wctype.h'>'
fi
if test $ac_cv_func_iswcntrl = yes; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether iswcntrl works" >&5
printf %s "checking whether iswcntrl works... " >&6; }
-if ${gl_cv_func_iswcntrl_works+:} false; then :
+if test ${gl_cv_func_iswcntrl_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdlib.h>
Linux libc5 i18n is broken.
#endif
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_func_iswcntrl_works="guessing yes"
else
gl_cv_func_iswcntrl_works="guessing no"
int main () { return iswprint ('x') == 0; }
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_iswcntrl_works=yes
else
gl_cv_func_iswcntrl_works=no
for ac_func in towlower
do :
ac_fn_c_check_func "$LINENO" "towlower" "ac_cv_func_towlower"
-if test "x$ac_cv_func_towlower" = xyes; then :
+if test "x$ac_cv_func_towlower" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_TOWLOWER 1
_ACEOF
#endif
"
-if test "x$ac_cv_have_decl_towlower" = xyes; then :
+if test "x$ac_cv_have_decl_towlower" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wctype_t" >&5
printf %s "checking for wctype_t... " >&6; }
-if ${gl_cv_type_wctype_t+:} false; then :
+if test ${gl_cv_type_wctype_t+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
wctype_t a;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_type_wctype_t=yes
else
gl_cv_type_wctype_t=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wctrans_t" >&5
printf %s "checking for wctrans_t... " >&6; }
-if ${gl_cv_type_wctrans_t+:} false; then :
+if test ${gl_cv_type_wctrans_t+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
wctrans_t a;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_type_wctrans_t=yes
else
gl_cv_type_wctrans_t=no
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <wctype.h>
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
ac_fn_c_check_decl "$LINENO" "getc_unlocked" "ac_cv_have_decl_getc_unlocked" "$ac_includes_default"
-if test "x$ac_cv_have_decl_getc_unlocked" = xyes; then :
+if test "x$ac_cv_have_decl_getc_unlocked" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C Library >= 2.1 or uClibc" >&5
printf %s "checking whether we are using the GNU C Library >= 2.1 or uClibc... " >&6; }
-if ${ac_cv_gnu_library_2_1+:} false; then :
+if test ${ac_cv_gnu_library_2_1+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "Lucky" >/dev/null 2>&1; then :
+ $EGREP "Lucky" >/dev/null 2>&1
+then :
ac_cv_gnu_library_2_1=yes
else
ac_cv_gnu_library_2_1=no
REPLACE_NULL=0;
+ HAVE_MAX_ALIGN_T=1;
HAVE_WCHAR_T=1;
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wchar_t" >&5
printf %s "checking for wchar_t... " >&6; }
-if ${gt_cv_c_wchar_t+:} false; then :
+if test ${gt_cv_c_wchar_t+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <stddef.h>
wchar_t foo = (wchar_t)'\0';
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gt_cv_c_wchar_t=yes
else
gt_cv_c_wchar_t=no
STDDEF_H=
+ ac_fn_c_check_type "$LINENO" "max_align_t" "ac_cv_type_max_align_t" "#include <stddef.h>
+
+"
+if test "x$ac_cv_type_max_align_t" = xyes
+then :
+
+else
+ HAVE_MAX_ALIGN_T=0; STDDEF_H=stddef.h
+fi
+
if test $gt_cv_c_wchar_t = no; then
HAVE_WCHAR_T=0
STDDEF_H=stddef.h
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether NULL can be used in arbitrary expressions" >&5
printf %s "checking whether NULL can be used in arbitrary expressions... " >&6; }
-if ${gl_cv_decl_null_works+:} false; then :
+if test ${gl_cv_decl_null_works+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
int test[2 * (sizeof NULL == sizeof (void *)) -1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_decl_null_works=yes
else
gl_cv_decl_null_works=no
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <stddef.h>" >&5
printf %s "checking absolute name of <stddef.h>... " >&6; }
-if ${gl_cv_next_stddef_h+:} false; then :
+if test ${gl_cv_next_stddef_h+y}
+then :
printf %s "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stddef.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'stddef.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_next_stddef_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'stddef.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_stddef_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_stddef_h
+ gl_cv_next_stddef_h='"'$gl_header'"'
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether lstat correctly handles trailing slash" >&5
printf %s "checking whether lstat correctly handles trailing slash... " >&6; }
-if ${gl_cv_func_lstat_dereferences_slashed_symlink+:} false; then :
+if test ${gl_cv_func_lstat_dereferences_slashed_symlink+y}
+then :
printf %s "(cached) " >&6
else
rm -f conftest.sym conftest.file
echo >conftest.file
- if test "$as_ln_s" = "ln -s" && ln -s conftest.file conftest.sym; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
- # Guess yes on glibc systems.
- *-gnu*) gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;;
- # If we don't know, assume the worst.
- *) gl_cv_func_lstat_dereferences_slashed_symlink="guessing no" ;;
- esac
+ *-gnu*)
+ # Guess yes on glibc systems.
+ gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;;
+ *)
+ # If we don't know, assume the worst.
+ gl_cv_func_lstat_dereferences_slashed_symlink="guessing no" ;;
+ esac
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$ac_includes_default
int
-main ()
+main (void)
{
struct stat sbuf;
- /* Linux will dereference the symlink and fail, as required by
- POSIX. That is better in the sense that it means we will not
- have to compile and use the lstat wrapper. */
- return lstat ("conftest.sym/", &sbuf) == 0;
+ if (symlink ("conftest.file", "conftest.sym") != 0)
+ return 1;
+ /* Linux will dereference the symlink and fail, as required by
+ POSIX. That is better in the sense that it means we will not
+ have to compile and use the lstat wrapper. */
+ return lstat ("conftest.sym/", &sbuf) == 0;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_lstat_dereferences_slashed_symlink=yes
else
gl_cv_func_lstat_dereferences_slashed_symlink=no
conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
- else
- # If the 'ln -s' command failed, then we probably don't even
- # have an lstat function.
- gl_cv_func_lstat_dereferences_slashed_symlink="guessing no"
- fi
rm -f conftest.sym conftest.file
fi
;;
esac
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
+printf %s "checking for a sed that does not truncate output... " >&6; }
+if test ${ac_cv_path_SED+y}
+then :
+ printf %s "(cached) " >&6
+else
+ ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
+ for ac_i in 1 2 3 4 5 6 7; do
+ ac_script="$ac_script$as_nl$ac_script"
+ done
+ echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
+ { ac_script=; unset ac_script;}
+ if test -z "$SED"; then
+ ac_path_SED_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ case $as_dir in #(((
+ '') as_dir=./ ;;
+ */) ;;
+ *) as_dir=$as_dir/ ;;
+ esac
+ for ac_prog in sed gsed
+ do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_SED="$as_dir$ac_prog$ac_exec_ext"
+ as_fn_executable_p "$ac_path_SED" || continue
+# Check for GNU ac_path_SED and select it if it is found.
+ # Check for GNU $ac_path_SED
+case `"$ac_path_SED" --version 2>&1` in
+*GNU*)
+ ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
+*)
+ ac_count=0
+ printf %s 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ printf "%s\n" '' >> "conftest.nl"
+ "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
+ if test $ac_count -gt ${ac_path_SED_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_SED="$ac_path_SED"
+ ac_path_SED_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_SED_found && break 3
+ done
+ done
+ done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_SED"; then
+ as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5
+ fi
+else
+ ac_cv_path_SED=$SED
+fi
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
+printf "%s\n" "$ac_cv_path_SED" >&6; }
+ SED="$ac_cv_path_SED"
+ rm -f conftest.sed
+
GNULIB__EXIT=0;
GNULIB_ATOLL=0;
GNULIB_PTSNAME=0;
GNULIB_PTSNAME_R=0;
GNULIB_PUTENV=0;
+ GNULIB_QSORT_R=0;
GNULIB_RANDOM=0;
GNULIB_RANDOM_R=0;
GNULIB_REALLOC_POSIX=0;
REPLACE_PTSNAME=0;
REPLACE_PTSNAME_R=0;
REPLACE_PUTENV=0;
+ REPLACE_QSORT_R=0;
REPLACE_RANDOM_R=0;
REPLACE_REALLOC=0;
REPLACE_REALPATH=0;
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether malloc, realloc, calloc are POSIX compliant" >&5
printf %s "checking whether malloc, realloc, calloc are POSIX compliant... " >&6; }
-if ${gl_cv_func_malloc_posix+:} false; then :
+if test ${gl_cv_func_malloc_posix+y}
+then :
printf %s "(cached) " >&6
else
/* end confdefs.h. */
int
-main ()
+main (void)
{
#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
choke me
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_func_malloc_posix=yes
else
gl_cv_func_malloc_posix=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_malloc_posix" >&5
printf "%s\n" "$gl_cv_func_malloc_posix" >&6; }
+# Autoupdate added the following line to ensure that your configure
+# script's behavior did not change. It is probably safe to remove.
+
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 :
+ ac_fn_c_check_header_compile "$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
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5
printf %s "checking for GNU libc compatible malloc... " >&6; }
-if ${ac_cv_func_malloc_0_nonnull+:} false; then :
+if test ${ac_cv_func_malloc_0_nonnull+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess yes on platforms where we know the result.
*-gnu* | freebsd* | netbsd* | openbsd* \
#endif
int
-main ()
+main (void)
{
-return ! malloc (0);
+char *p = malloc (0);
+ int result = !p;
+ free (p);
+ return result;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
ac_cv_func_malloc_0_nonnull=yes
else
ac_cv_func_malloc_0_nonnull=no
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5
printf "%s\n" "$ac_cv_func_malloc_0_nonnull" >&6; }
- if test $ac_cv_func_malloc_0_nonnull = yes; then :
+ if test $ac_cv_func_malloc_0_nonnull = yes
+then :
gl_cv_func_malloc_0_nonnull=1
else
gl_cv_func_malloc_0_nonnull=0
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional japanese locale" >&5
printf %s "checking for a traditional japanese locale... " >&6; }
-if ${gt_cv_locale_ja+:} false; then :
+if test ${gt_cv_locale_ja+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5
printf %s "checking for a transitional chinese locale... " >&6; }
-if ${gt_cv_locale_zh_CN+:} false; then :
+if test ${gt_cv_locale_zh_CN+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5
printf %s "checking for a french Unicode locale... " >&6; }
-if ${gt_cv_locale_fr_utf8+:} false; then :
+if test ${gt_cv_locale_fr_utf8+y}
+then :
printf %s "(cached) " >&6
else
# fails on HP-UX 11, because MAP_FIXED mappings do not work. But this is
# irrelevant for anonymous mappings.
ac_fn_c_check_func "$LINENO" "mmap" "ac_cv_func_mmap"
-if test "x$ac_cv_func_mmap" = xyes; then :
+if test "x$ac_cv_func_mmap" = xyes
+then :
gl_have_mmap=yes
else
gl_have_mmap=no
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "I cannot identify this map" >/dev/null 2>&1; then :
+ $EGREP "I cannot identify this map" >/dev/null 2>&1
+then :
gl_have_mmap_anonymous=yes
fi
rm -rf conftest*
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "I cannot identify this map" >/dev/null 2>&1; then :
+ $EGREP "I cannot identify this map" >/dev/null 2>&1
+then :
printf "%s\n" "#define MAP_ANONYMOUS MAP_ANON" >>confdefs.h
# Assume that memchr works on platforms that lack mprotect.
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether memchr works" >&5
printf %s "checking whether memchr works... " >&6; }
-if ${gl_cv_func_memchr_works+:} false; then :
+if test ${gl_cv_func_memchr_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
gl_cv_func_memchr_works="guessing no"
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int
-main ()
+main (void)
{
int result = 0;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_memchr_works=yes
else
gl_cv_func_memchr_works=no
GNULIB_STRPTIME=0;
GNULIB_TIMEGM=0;
GNULIB_TIME_R=0;
+ GNULIB_TIME_RZ=0;
HAVE_DECL_LOCALTIME_R=1;
HAVE_NANOSLEEP=1;
HAVE_STRPTIME=1;
REPLACE_NANOSLEEP=GNULIB_PORTCHECK;
REPLACE_TIMEGM=GNULIB_PORTCHECK;
+ : ${GNULIB_GETTIMEOFDAY=0};
+ REPLACE_GMTIME=0;
+ REPLACE_LOCALTIME=0;
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether time_t is signed" >&5
+printf %s "checking whether time_t is signed... " >&6; }
+if test ${gl_cv_time_t_is_signed+y}
+then :
+ printf %s "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <time.h>
+ char time_t_signed[(time_t) -1 < 0 ? 1 : -1];
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_time_t_is_signed=yes
+else
+ gl_cv_time_t_is_signed=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_time_t_is_signed" >&5
+printf "%s\n" "$gl_cv_time_t_is_signed" >&6; }
+ if test $gl_cv_time_t_is_signed = yes; then
+
+printf "%s\n" "#define TIME_T_IS_SIGNED 1" >>confdefs.h
+
+ fi
+
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 :
+if test "x$ac_cv_have_decl_alarm" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
+
+
+
+
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for promoted mode_t type" >&5
printf %s "checking for promoted mode_t type... " >&6; }
-if ${gl_cv_promoted_mode_t+:} false; then :
+if test ${gl_cv_promoted_mode_t+y}
+then :
printf %s "(cached) " >&6
else
/* end confdefs.h. */
#include <sys/types.h>
int
-main ()
+main (void)
{
typedef int array[2 * (sizeof (mode_t) < sizeof (int)) - 1];
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_promoted_mode_t='int'
else
gl_cv_promoted_mode_t='mode_t'
#include <sys/types.h>
"
-if test "x$ac_cv_type_sigset_t" = xyes; then :
+if test "x$ac_cv_type_sigset_t" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_SIGSET_T 1
+
+
+
+
+
+
+ac_fn_c_check_decl "$LINENO" "setenv" "ac_cv_have_decl_setenv" "$ac_includes_default"
+if test "x$ac_cv_have_decl_setenv" = xyes
+then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_SETENV $ac_have_decl
+_ACEOF
+
+
+
+
+
+
+ if test $ac_cv_have_decl_setenv = no; then
+ HAVE_DECL_SETENV=0
+ fi
+
+
+
+
+
+ for ac_header in search.h
+do :
+ ac_fn_c_check_header_compile "$LINENO" "search.h" "ac_cv_header_search_h" "$ac_includes_default"
+if test "x$ac_cv_header_search_h" = xyes
+then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_SEARCH_H 1
+_ACEOF
+
+fi
+done
+
+ for ac_func in tsearch
+do :
+ ac_fn_c_check_func "$LINENO" "tsearch" "ac_cv_func_tsearch"
+if test "x$ac_cv_func_tsearch" = xyes
+then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_TSEARCH 1
+_ACEOF
+
+fi
+done
+
+
+
+
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for uid_t in sys/types.h" >&5
printf %s "checking for uid_t in sys/types.h... " >&6; }
-if ${ac_cv_type_uid_t+:} false; then :
+if test ${ac_cv_type_uid_t+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "uid_t" >/dev/null 2>&1; then :
+ $EGREP "uid_t" >/dev/null 2>&1
+then :
ac_cv_type_uid_t=yes
else
ac_cv_type_uid_t=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for stdbool.h that conforms to C99" >&5
printf %s "checking for stdbool.h that conforms to C99... " >&6; }
-if ${ac_cv_header_stdbool_h+:} false; then :
+if test ${ac_cv_header_stdbool_h+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdbool.h>
- #ifndef bool
- "error: bool is not defined"
- #endif
- #ifndef false
- "error: false is not defined"
- #endif
- #if false
- "error: false is not 0"
- #endif
- #ifndef true
- "error: true is not defined"
- #endif
- #if true != 1
- "error: true is not 1"
+
+ #if __cplusplus < 201103
+ #ifndef bool
+ "error: bool is not defined"
+ #endif
+ #ifndef false
+ "error: false is not defined"
+ #endif
+ #if false
+ "error: false is not 0"
+ #endif
+ #ifndef true
+ "error: true is not defined"
+ #endif
+ #if true != 1
+ "error: true is not 1"
+ #endif
#endif
+
#ifndef __bool_true_false_are_defined
"error: __bool_true_false_are_defined is not defined"
#endif
_Bool *pq = &q;
int
-main ()
+main (void)
{
bool e = &s;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_header_stdbool_h=yes
else
ac_cv_header_stdbool_h=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdbool_h" >&5
printf "%s\n" "$ac_cv_header_stdbool_h" >&6; }
ac_fn_c_check_type "$LINENO" "_Bool" "ac_cv_type__Bool" "$ac_includes_default"
-if test "x$ac_cv_type__Bool" = xyes; then :
+if test "x$ac_cv_type__Bool" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE__BOOL 1
REPLACE_STRERROR_0=0
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether strerror(0) succeeds" >&5
printf %s "checking whether strerror(0) succeeds... " >&6; }
-if ${gl_cv_func_strerror_0_works+:} false; then :
+if test ${gl_cv_func_strerror_0_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_strerror_0_works="guessing yes" ;;
#include <errno.h>
int
-main ()
+main (void)
{
int result = 0;
char *str;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_strerror_0_works=yes
else
gl_cv_func_strerror_0_works=no
;;
esac
+
+
+
+
+
+
+
+ if test $ac_cv_func_strerror_r = yes; then
+ if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for strerror_r with POSIX signature" >&5
+printf %s "checking for strerror_r with POSIX signature... " >&6; }
+if test ${gl_cv_func_strerror_r_posix_signature+y}
+then :
+ printf %s "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <string.h>
+ int strerror_r (int, char *, size_t);
+
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_func_strerror_r_posix_signature=yes
+else
+ gl_cv_func_strerror_r_posix_signature=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_r_posix_signature" >&5
+printf "%s\n" "$gl_cv_func_strerror_r_posix_signature" >&6; }
+ if test $gl_cv_func_strerror_r_posix_signature = yes; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether strerror_r works" >&5
+printf %s "checking whether strerror_r works... " >&6; }
+if test ${gl_cv_func_strerror_r_works+y}
+then :
+ printf %s "(cached) " >&6
+else
+ if test "$cross_compiling" = yes
+then :
+
+ case "$host_os" in
+ # Guess no on AIX.
+ aix*) gl_cv_func_strerror_r_works="guessing no";;
+ # Guess no on HP-UX.
+ hpux*) gl_cv_func_strerror_r_works="guessing no";;
+ # Guess no on BSD variants.
+ *bsd*) gl_cv_func_strerror_r_works="guessing no";;
+ # Guess yes otherwise.
+ *) gl_cv_func_strerror_r_works="guessing yes";;
+ esac
+
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <errno.h>
+ #include <string.h>
+
+int
+main (void)
+{
+int result = 0;
+ char buf[79];
+ if (strerror_r (EACCES, buf, 0) < 0)
+ result |= 1;
+ errno = 0;
+ if (strerror_r (EACCES, buf, sizeof buf) != 0)
+ result |= 2;
+ strcpy (buf, "Unknown");
+ if (strerror_r (0, buf, sizeof buf) != 0)
+ result |= 4;
+ if (errno)
+ result |= 8;
+ if (strstr (buf, "nknown") || strstr (buf, "ndefined"))
+ result |= 0x10;
+ errno = 0;
+ *buf = 0;
+ if (strerror_r (-3, buf, sizeof buf) < 0)
+ result |= 0x20;
+ if (errno)
+ result |= 0x40;
+ if (!*buf)
+ result |= 0x80;
+ return result;
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"
+then :
+ gl_cv_func_strerror_r_works=yes
+else
+ gl_cv_func_strerror_r_works=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_r_works" >&5
+printf "%s\n" "$gl_cv_func_strerror_r_works" >&6; }
+ else
+
+ if test $ac_cv_func___xpg_strerror_r = yes; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether __xpg_strerror_r works" >&5
+printf %s "checking whether __xpg_strerror_r works... " >&6; }
+if test ${gl_cv_func_strerror_r_works+y}
+then :
+ printf %s "(cached) " >&6
+else
+ if test "$cross_compiling" = yes
+then :
+ gl_cv_func_strerror_r_works="guessing no"
+
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <errno.h>
+ #include <string.h>
+ extern
+ #ifdef __cplusplus
+ "C"
+ #endif
+ int __xpg_strerror_r(int, char *, size_t);
+
+int
+main (void)
+{
+int result = 0;
+ char buf[256] = "^";
+ char copy[256];
+ char *str = strerror (-1);
+ strcpy (copy, str);
+ if (__xpg_strerror_r (-2, buf, 1) == 0)
+ result |= 1;
+ if (*buf)
+ result |= 2;
+ __xpg_strerror_r (-2, buf, 256);
+ if (strcmp (str, copy))
+ result |= 4;
+ return result;
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"
+then :
+ gl_cv_func_strerror_r_works=yes
+else
+ gl_cv_func_strerror_r_works=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_r_works" >&5
+printf "%s\n" "$gl_cv_func_strerror_r_works" >&6; }
+ fi
+ fi
+ fi
+ fi
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether struct tm is in sys/time.h or time.h" >&5
printf %s "checking whether struct tm is in sys/time.h or time.h... " >&6; }
-if ${ac_cv_struct_tm+:} false; then :
+if test ${ac_cv_struct_tm+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <time.h>
int
-main ()
+main (void)
{
struct tm tm;
int *p = &tm.tm_sec;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_struct_tm=time.h
else
ac_cv_struct_tm=sys/time.h
#include <$ac_cv_struct_tm>
"
-if test "x$ac_cv_member_struct_tm_tm_zone" = xyes; then :
+if test "x$ac_cv_member_struct_tm_tm_zone" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRUCT_TM_TM_ZONE 1
else
ac_fn_c_check_decl "$LINENO" "tzname" "ac_cv_have_decl_tzname" "#include <time.h>
"
-if test "x$ac_cv_have_decl_tzname" = xyes; then :
+if test "x$ac_cv_have_decl_tzname" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for tzname" >&5
printf %s "checking for tzname... " >&6; }
-if ${ac_cv_var_tzname+:} false; then :
+if test ${ac_cv_var_tzname+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int
-main ()
+main (void)
{
return tzname[0][0];
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
ac_cv_var_tzname=yes
else
ac_cv_var_tzname=no
ac_fn_c_check_member "$LINENO" "struct tm" "tm_gmtoff" "ac_cv_member_struct_tm_tm_gmtoff" "#include <time.h>
"
-if test "x$ac_cv_member_struct_tm_tm_gmtoff" = xyes; then :
+if test "x$ac_cv_member_struct_tm_tm_gmtoff" = xyes
+then :
printf "%s\n" "#define HAVE_TM_GMTOFF 1" >>confdefs.h
-
-
if test $gl_cv_have_include_next = yes; then
gl_cv_next_string_h='<'string.h'>'
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <string.h>" >&5
printf %s "checking absolute name of <string.h>... " >&6; }
-if ${gl_cv_next_string_h+:} false; then :
+if test ${gl_cv_next_string_h+y}
+then :
printf %s "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <string.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'string.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_next_string_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'string.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_string_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_string_h
+ gl_cv_next_string_h='"'$gl_header'"'
fi
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <string.h>
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
-
-
if test $gl_cv_have_include_next = yes; then
gl_cv_next_strings_h='<'strings.h'>'
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <strings.h>" >&5
printf %s "checking absolute name of <strings.h>... " >&6; }
-if ${gl_cv_next_strings_h+:} false; then :
+if test ${gl_cv_next_strings_h+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_header_strings_h = yes; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <strings.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'strings.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_next_strings_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'strings.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_strings_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_strings_h
+ gl_cv_next_strings_h='"'$gl_header'"'
else
gl_cv_next_strings_h='<'strings.h'>'
fi
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <strings.h>
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
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 :
+if test "x$ac_cv_have_decl_strndup" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
ac_fn_c_check_decl "$LINENO" "strnlen" "ac_cv_have_decl_strnlen" "$ac_includes_default"
-if test "x$ac_cv_have_decl_strnlen" = xyes; then :
+if test "x$ac_cv_have_decl_strnlen" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
ac_fn_c_check_decl "$LINENO" "strtoumax" "ac_cv_have_decl_strtoumax" "$ac_includes_default"
-if test "x$ac_cv_have_decl_strtoumax" = xyes; then :
+if test "x$ac_cv_have_decl_strtoumax" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/types.h>" >&5
printf %s "checking absolute name of <sys/types.h>... " >&6; }
-if ${gl_cv_next_sys_types_h+:} false; then :
+if test ${gl_cv_next_sys_types_h+y}
+then :
printf %s "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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/types.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_next_sys_types_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ 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/types.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_types_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_sys_types_h
+ gl_cv_next_sys_types_h='"'$gl_header'"'
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for struct timespec in <time.h>" >&5
printf %s "checking for struct timespec in <time.h>... " >&6; }
-if ${gl_cv_sys_struct_timespec_in_time_h+:} false; then :
+if test ${gl_cv_sys_struct_timespec_in_time_h+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <time.h>
int
-main ()
+main (void)
{
static struct timespec x; x.tv_sec = x.tv_nsec;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_sys_struct_timespec_in_time_h=yes
else
gl_cv_sys_struct_timespec_in_time_h=no
TIME_H_DEFINES_STRUCT_TIMESPEC=0
SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=0
PTHREAD_H_DEFINES_STRUCT_TIMESPEC=0
+ UNISTD_H_DEFINES_STRUCT_TIMESPEC=0
if test $gl_cv_sys_struct_timespec_in_time_h = yes; then
TIME_H_DEFINES_STRUCT_TIMESPEC=1
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for struct timespec in <sys/time.h>" >&5
printf %s "checking for struct timespec in <sys/time.h>... " >&6; }
-if ${gl_cv_sys_struct_timespec_in_sys_time_h+:} false; then :
+if test ${gl_cv_sys_struct_timespec_in_sys_time_h+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <sys/time.h>
int
-main ()
+main (void)
{
static struct timespec x; x.tv_sec = x.tv_nsec;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_sys_struct_timespec_in_sys_time_h=yes
else
gl_cv_sys_struct_timespec_in_sys_time_h=no
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for struct timespec in <pthread.h>" >&5
printf %s "checking for struct timespec in <pthread.h>... " >&6; }
-if ${gl_cv_sys_struct_timespec_in_pthread_h+:} false; then :
+if test ${gl_cv_sys_struct_timespec_in_pthread_h+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <pthread.h>
int
-main ()
+main (void)
{
static struct timespec x; x.tv_sec = x.tv_nsec;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_sys_struct_timespec_in_pthread_h=yes
else
gl_cv_sys_struct_timespec_in_pthread_h=no
printf "%s\n" "$gl_cv_sys_struct_timespec_in_pthread_h" >&6; }
if test $gl_cv_sys_struct_timespec_in_pthread_h = yes; then
PTHREAD_H_DEFINES_STRUCT_TIMESPEC=1
+ else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for struct timespec in <unistd.h>" >&5
+printf %s "checking for struct timespec in <unistd.h>... " >&6; }
+if test ${gl_cv_sys_struct_timespec_in_unistd_h+y}
+then :
+ printf %s "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <unistd.h>
+
+int
+main (void)
+{
+static struct timespec x; x.tv_sec = x.tv_nsec;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_sys_struct_timespec_in_unistd_h=yes
+else
+ gl_cv_sys_struct_timespec_in_unistd_h=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_unistd_h" >&5
+printf "%s\n" "$gl_cv_sys_struct_timespec_in_unistd_h" >&6; }
+ if test $gl_cv_sys_struct_timespec_in_unistd_h = yes; then
+ UNISTD_H_DEFINES_STRUCT_TIMESPEC=1
+ fi
fi
fi
fi
+
if test $gl_cv_have_include_next = yes; then
gl_cv_next_time_h='<'time.h'>'
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <time.h>" >&5
printf %s "checking absolute name of <time.h>... " >&6; }
-if ${gl_cv_next_time_h+:} false; then :
+if test ${gl_cv_next_time_h+y}
+then :
printf %s "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <time.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 '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_next_time_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo '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_time_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_time_h
+ gl_cv_next_time_h='"'$gl_header'"'
fi
+
+
gl_libunistring_sed_extract_major='/^[0-9]/{s/^\([0-9]*\).*/\1/p;q;}
i\
0
fi
ac_fn_c_check_decl "$LINENO" "clearerr_unlocked" "ac_cv_have_decl_clearerr_unlocked" "$ac_includes_default"
-if test "x$ac_cv_have_decl_clearerr_unlocked" = xyes; then :
+if test "x$ac_cv_have_decl_clearerr_unlocked" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
_ACEOF
ac_fn_c_check_decl "$LINENO" "feof_unlocked" "ac_cv_have_decl_feof_unlocked" "$ac_includes_default"
-if test "x$ac_cv_have_decl_feof_unlocked" = xyes; then :
+if test "x$ac_cv_have_decl_feof_unlocked" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
_ACEOF
ac_fn_c_check_decl "$LINENO" "ferror_unlocked" "ac_cv_have_decl_ferror_unlocked" "$ac_includes_default"
-if test "x$ac_cv_have_decl_ferror_unlocked" = xyes; then :
+if test "x$ac_cv_have_decl_ferror_unlocked" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
_ACEOF
ac_fn_c_check_decl "$LINENO" "fflush_unlocked" "ac_cv_have_decl_fflush_unlocked" "$ac_includes_default"
-if test "x$ac_cv_have_decl_fflush_unlocked" = xyes; then :
+if test "x$ac_cv_have_decl_fflush_unlocked" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
_ACEOF
ac_fn_c_check_decl "$LINENO" "fgets_unlocked" "ac_cv_have_decl_fgets_unlocked" "$ac_includes_default"
-if test "x$ac_cv_have_decl_fgets_unlocked" = xyes; then :
+if test "x$ac_cv_have_decl_fgets_unlocked" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
_ACEOF
ac_fn_c_check_decl "$LINENO" "fputc_unlocked" "ac_cv_have_decl_fputc_unlocked" "$ac_includes_default"
-if test "x$ac_cv_have_decl_fputc_unlocked" = xyes; then :
+if test "x$ac_cv_have_decl_fputc_unlocked" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
_ACEOF
ac_fn_c_check_decl "$LINENO" "fputs_unlocked" "ac_cv_have_decl_fputs_unlocked" "$ac_includes_default"
-if test "x$ac_cv_have_decl_fputs_unlocked" = xyes; then :
+if test "x$ac_cv_have_decl_fputs_unlocked" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
_ACEOF
ac_fn_c_check_decl "$LINENO" "fread_unlocked" "ac_cv_have_decl_fread_unlocked" "$ac_includes_default"
-if test "x$ac_cv_have_decl_fread_unlocked" = xyes; then :
+if test "x$ac_cv_have_decl_fread_unlocked" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
_ACEOF
ac_fn_c_check_decl "$LINENO" "fwrite_unlocked" "ac_cv_have_decl_fwrite_unlocked" "$ac_includes_default"
-if test "x$ac_cv_have_decl_fwrite_unlocked" = xyes; then :
+if test "x$ac_cv_have_decl_fwrite_unlocked" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
_ACEOF
ac_fn_c_check_decl "$LINENO" "getchar_unlocked" "ac_cv_have_decl_getchar_unlocked" "$ac_includes_default"
-if test "x$ac_cv_have_decl_getchar_unlocked" = xyes; then :
+if test "x$ac_cv_have_decl_getchar_unlocked" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
_ACEOF
ac_fn_c_check_decl "$LINENO" "putc_unlocked" "ac_cv_have_decl_putc_unlocked" "$ac_includes_default"
-if test "x$ac_cv_have_decl_putc_unlocked" = xyes; then :
+if test "x$ac_cv_have_decl_putc_unlocked" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
_ACEOF
ac_fn_c_check_decl "$LINENO" "putchar_unlocked" "ac_cv_have_decl_putchar_unlocked" "$ac_includes_default"
-if test "x$ac_cv_have_decl_putchar_unlocked" = xyes; then :
+if test "x$ac_cv_have_decl_putchar_unlocked" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
#define HAVE_DECL_PUTCHAR_UNLOCKED $ac_have_decl
_ACEOF
+ac_fn_c_check_decl "$LINENO" "unsetenv" "ac_cv_have_decl_unsetenv" "$ac_includes_default"
+if test "x$ac_cv_have_decl_unsetenv" = xyes
+then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UNSETENV $ac_have_decl
+_ACEOF
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for inttypes.h" >&5
printf %s "checking for inttypes.h... " >&6; }
-if ${gl_cv_header_inttypes_h+:} false; then :
+if test ${gl_cv_header_inttypes_h+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <inttypes.h>
int
-main ()
+main (void)
{
uintmax_t i = (uintmax_t) -1; return !i;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_header_inttypes_h=yes
else
gl_cv_header_inttypes_h=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for stdint.h" >&5
printf %s "checking for stdint.h... " >&6; }
-if ${gl_cv_header_stdint_h+:} false; then :
+if test ${gl_cv_header_stdint_h+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <sys/types.h>
#include <stdint.h>
int
-main ()
+main (void)
{
uintmax_t i = (uintmax_t) -1; return !i;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_header_stdint_h=yes
else
gl_cv_header_stdint_h=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for intmax_t" >&5
printf %s "checking for intmax_t... " >&6; }
-if ${gt_cv_c_intmax_t+:} false; then :
+if test ${gt_cv_c_intmax_t+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int
-main ()
+main (void)
{
intmax_t x = -1; return !x;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gt_cv_c_intmax_t=yes
else
gt_cv_c_intmax_t=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'double'" >&5
printf %s "checking where to find the exponent in a 'double'... " >&6; }
-if ${gl_cv_cc_double_expbit0+:} false; then :
+if test ${gl_cv_cc_double_expbit0+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "mixed_endianness" >/dev/null 2>&1; then :
+ $EGREP "mixed_endianness" >/dev/null 2>&1
+then :
gl_cv_cc_double_expbit0="unknown"
else
:
-if ${ac_cv_c_bigendian+:} false; then :
+if test ${ac_cv_c_bigendian+y}
+then :
printf %s "(cached) " >&6
else
ac_cv_c_bigendian=unknown
typedef int dummy;
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
# Check for potential -arch flags. It is not universal unless
# there are at least two -arch flags with different values.
#include <sys/param.h>
int
-main ()
+main (void)
{
#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \
&& defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
# It does; now see whether it defined to BIG_ENDIAN or not.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/param.h>
int
-main ()
+main (void)
{
#if BYTE_ORDER != BIG_ENDIAN
not big endian
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_c_bigendian=yes
else
ac_cv_c_bigendian=no
#include <limits.h>
int
-main ()
+main (void)
{
#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)
bogus endian macros
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
# It does; now see whether it defined to _BIG_ENDIAN or not.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <limits.h>
int
-main ()
+main (void)
{
#ifndef _BIG_ENDIAN
not big endian
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_c_bigendian=yes
else
ac_cv_c_bigendian=no
fi
if test $ac_cv_c_bigendian = unknown; then
# Compile a test program.
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
# Try to guess by grepping values from an object file.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
extern int foo;
int
-main ()
+main (void)
{
return use_ascii (foo) == use_ebcdic (foo);
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then
ac_cv_c_bigendian=yes
fi
/* end confdefs.h. */
$ac_includes_default
int
-main ()
+main (void)
{
/* Are we little or big endian? From Harbison&Steele. */
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
ac_cv_c_bigendian=no
else
ac_cv_c_bigendian=yes
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_cc_double_expbit0=`cat conftest.out`
else
gl_cv_cc_double_expbit0="unknown"
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether snprintf returns a byte count as in C99" >&5
printf %s "checking whether snprintf returns a byte count as in C99... " >&6; }
-if ${gl_cv_func_snprintf_retval_c99+:} false; then :
+if test ${gl_cv_func_snprintf_retval_c99+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_snprintf_retval_c99="guessing yes";;
# Guess yes on FreeBSD >= 5.
- freebsd[1-4]*) gl_cv_func_snprintf_retval_c99="guessing no";;
+ freebsd[1-4].*) gl_cv_func_snprintf_retval_c99="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_snprintf_retval_c99="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_snprintf_retval_c99="guessing no";;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_snprintf_retval_c99=yes
else
gl_cv_func_snprintf_retval_c99=no
do :
as_ac_var=`printf "%s\n" "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 :
+if eval test \"x\$"$as_ac_var"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
ac_fn_c_check_decl "$LINENO" "_snprintf" "ac_cv_have_decl__snprintf" "#include <stdio.h>
"
-if test "x$ac_cv_have_decl__snprintf" = xyes; then :
+if test "x$ac_cv_have_decl__snprintf" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
+ GNULIB_SOCKET=0;
+ GNULIB_CONNECT=0;
+ GNULIB_ACCEPT=0;
+ GNULIB_BIND=0;
+ GNULIB_GETPEERNAME=0;
+ GNULIB_GETSOCKNAME=0;
+ GNULIB_GETSOCKOPT=0;
+ GNULIB_LISTEN=0;
+ GNULIB_RECV=0;
+ GNULIB_SEND=0;
+ GNULIB_RECVFROM=0;
+ GNULIB_SENDTO=0;
+ GNULIB_SETSOCKOPT=0;
+ GNULIB_SHUTDOWN=0;
+ GNULIB_ACCEPT4=0;
+ HAVE_STRUCT_SOCKADDR_STORAGE=1;
+ HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY=1;
+ HAVE_SA_FAMILY_T=1;
+ HAVE_ACCEPT4=1;
+
+
+ if test $ac_cv_header_sys_socket_h = no; then
+ for ac_header in ws2tcpip.h
+do :
+ ac_fn_c_check_header_compile "$LINENO" "ws2tcpip.h" "ac_cv_header_ws2tcpip_h" "$ac_includes_default"
+if test "x$ac_cv_header_ws2tcpip_h" = xyes
+then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_WS2TCPIP_H 1
+_ACEOF
+fi
+done
+ fi
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if environ is properly declared" >&5
-printf %s "checking if environ is properly declared... " >&6; }
- if ${gt_cv_var_environ_declaration+:} false; then :
+
+
+ case "$host_os" in
+ osf*)
+
+printf "%s\n" "#define _POSIX_PII_SOCKET 1" >>confdefs.h
+
+ ;;
+ esac
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether <sys/socket.h> is self-contained" >&5
+printf %s "checking whether <sys/socket.h> is self-contained... " >&6; }
+if test ${gl_cv_header_sys_socket_h_selfcontained+y}
+then :
printf %s "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#if HAVE_UNISTD_H
- #include <unistd.h>
- #endif
- /* mingw, BeOS, Haiku declare environ in <stdlib.h>, not in <unistd.h>. */
- #include <stdlib.h>
+#include <sys/socket.h>
+int
+main (void)
+{
- extern struct { int foo; } environ;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_header_sys_socket_h_selfcontained=yes
+else
+ gl_cv_header_sys_socket_h_selfcontained=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_sys_socket_h_selfcontained" >&5
+printf "%s\n" "$gl_cv_header_sys_socket_h_selfcontained" >&6; }
+ if test $gl_cv_header_sys_socket_h_selfcontained = yes; then
+ for ac_func in shutdown
+do :
+ ac_fn_c_check_func "$LINENO" "shutdown" "ac_cv_func_shutdown"
+if test "x$ac_cv_func_shutdown" = xyes
+then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_SHUTDOWN 1
+_ACEOF
+
+fi
+done
+
+ if test $ac_cv_func_shutdown = yes; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether <sys/socket.h> defines the SHUT_* macros" >&5
+printf %s "checking whether <sys/socket.h> defines the SHUT_* macros... " >&6; }
+if test ${gl_cv_header_sys_socket_h_shut+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/socket.h>
int
-main ()
+main (void)
{
-environ.foo = 1;
+int a[] = { SHUT_RD, SHUT_WR, SHUT_RDWR };
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- gt_cv_var_environ_declaration=no
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_header_sys_socket_h_shut=yes
else
- gt_cv_var_environ_declaration=yes
+ gl_cv_header_sys_socket_h_shut=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_sys_socket_h_shut" >&5
+printf "%s\n" "$gl_cv_header_sys_socket_h_shut" >&6; }
+ if test $gl_cv_header_sys_socket_h_shut = no; then
+ SYS_SOCKET_H='sys/socket.h'
+ fi
+ fi
+ fi
+ # We need to check for ws2tcpip.h now.
+
+
+
+
+
+
+
+
+
+
+
+ if test $gl_cv_have_include_next = yes; then
+ gl_cv_next_sys_socket_h='<'sys/socket.h'>'
+ else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/socket.h>" >&5
+printf %s "checking absolute name of <sys/socket.h>... " >&6; }
+if test ${gl_cv_next_sys_socket_h+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ if test $ac_cv_header_sys_socket_h = yes; then
+
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_var_environ_declaration" >&5
-printf "%s\n" "$gt_cv_var_environ_declaration" >&6; }
- if test $gt_cv_var_environ_declaration = yes; then
-printf "%s\n" "#define HAVE_ENVIRON_DECL 1" >>confdefs.h
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/socket.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/socket.h' \
+ | sed -e "$gl_make_literal_regex_sed"`
+ gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{
+ s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/
+ s|^/[^/]|//&|
+ p
+ q
+ }'
+
+ gl_cv_absolute_sys_socket_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_sys_socket_h
+ gl_cv_next_sys_socket_h='"'$gl_header'"'
+ else
+ gl_cv_next_sys_socket_h='<'sys/socket.h'>'
+ fi
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_socket_h" >&5
+printf "%s\n" "$gl_cv_next_sys_socket_h" >&6; }
+ fi
+ NEXT_SYS_SOCKET_H=$gl_cv_next_sys_socket_h
+
+ if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then
+ # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next'
+ gl_next_as_first_directive='<'sys/socket.h'>'
+ else
+ # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
+ gl_next_as_first_directive=$gl_cv_next_sys_socket_h
+ fi
+ NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H=$gl_next_as_first_directive
+
+
+
+
+ if test $ac_cv_header_sys_socket_h = yes; then
+ HAVE_SYS_SOCKET_H=1
+ HAVE_WS2TCPIP_H=0
+ else
+ HAVE_SYS_SOCKET_H=0
+ if test $ac_cv_header_ws2tcpip_h = yes; then
+ HAVE_WS2TCPIP_H=1
+ else
+ HAVE_WS2TCPIP_H=0
+ fi
fi
- if test $gt_cv_var_environ_declaration != yes; then
- HAVE_DECL_ENVIRON=0
+
+ ac_fn_c_check_type "$LINENO" "struct sockaddr_storage" "ac_cv_type_struct_sockaddr_storage" "
+ /* sys/types.h is not needed according to POSIX, but the
+ sys/socket.h in i386-unknown-freebsd4.10 and
+ powerpc-apple-darwin5.5 required it. */
+#include <sys/types.h>
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_WS2TCPIP_H
+#include <ws2tcpip.h>
+#endif
+
+"
+if test "x$ac_cv_type_struct_sockaddr_storage" = xyes
+then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_SOCKADDR_STORAGE 1
+_ACEOF
+
+
+fi
+ac_fn_c_check_type "$LINENO" "sa_family_t" "ac_cv_type_sa_family_t" "
+ /* sys/types.h is not needed according to POSIX, but the
+ sys/socket.h in i386-unknown-freebsd4.10 and
+ powerpc-apple-darwin5.5 required it. */
+#include <sys/types.h>
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_WS2TCPIP_H
+#include <ws2tcpip.h>
+#endif
+
+"
+if test "x$ac_cv_type_sa_family_t" = xyes
+then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_SA_FAMILY_T 1
+_ACEOF
+
+
+fi
+
+ if test $ac_cv_type_struct_sockaddr_storage = no; then
+ HAVE_STRUCT_SOCKADDR_STORAGE=0
fi
+ if test $ac_cv_type_sa_family_t = no; then
+ HAVE_SA_FAMILY_T=0
+ fi
+ if test $ac_cv_type_struct_sockaddr_storage != no; then
+ ac_fn_c_check_member "$LINENO" "struct sockaddr_storage" "ss_family" "ac_cv_member_struct_sockaddr_storage_ss_family" "#include <sys/types.h>
+ #ifdef HAVE_SYS_SOCKET_H
+ #include <sys/socket.h>
+ #endif
+ #ifdef HAVE_WS2TCPIP_H
+ #include <ws2tcpip.h>
+ #endif
+
+"
+if test "x$ac_cv_member_struct_sockaddr_storage_ss_family" = xyes
+then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY 1
+_ACEOF
+
+
+else
+ HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY=0
+fi
+
+ fi
+ if test $HAVE_STRUCT_SOCKADDR_STORAGE = 0 || test $HAVE_SA_FAMILY_T = 0 \
+ || test $HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY = 0; then
+ SYS_SOCKET_H='sys/socket.h'
+ fi
+
+
+
+
+ if test $ac_cv_header_sys_socket_h != yes; then
+ for ac_header in winsock2.h
+do :
+ ac_fn_c_check_header_compile "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default"
+if test "x$ac_cv_header_winsock2_h" = xyes
+then :
+ 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
+
+
+
+
+ for gl_func in socket connect accept bind getpeername getsockname getsockopt listen recv send recvfrom sendto setsockopt shutdown accept4; do
+ as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
+printf %s "checking whether $gl_func is declared without a macro... " >&6; }
+if eval test \${$as_gl_Symbol+y}
+then :
+ printf %s "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Some systems require prerequisite headers. */
+#include <sys/types.h>
+#include <sys/socket.h>
+
+int
+main (void)
+{
+#undef $gl_func
+ (void) $gl_func;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ eval "$as_gl_Symbol=yes"
+else
+ eval "$as_gl_Symbol=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$as_gl_Symbol
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
+ cat >>confdefs.h <<_ACEOF
+#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
+_ACEOF
+
+ eval ac_cv_have_decl_$gl_func=yes
+fi
+ done
+
+
+
+ GNULIB_INET_NTOP=0;
+ GNULIB_INET_PTON=0;
+ HAVE_DECL_INET_NTOP=1;
+ HAVE_DECL_INET_PTON=1;
+ REPLACE_INET_NTOP=0;
+ REPLACE_INET_PTON=0;
+
+
+
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether getcwd (NULL, 0) allocates memory for result" >&5
printf %s "checking whether getcwd (NULL, 0) allocates memory for result... " >&6; }
-if ${gl_cv_func_getcwd_null+:} false; then :
+if test ${gl_cv_func_getcwd_null+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_getcwd_null="guessing yes";;
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
+# include <stdlib.h>
# if HAVE_UNISTD_H
# include <unistd.h>
# else /* on Windows with MSVC */
# endif
int
-main ()
+main (void)
{
#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
return 3;
if (f[1] != '\0')
return 4;
+ free (f);
return 0;
}
#endif
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_getcwd_null=yes
else
gl_cv_func_getcwd_null=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for getcwd with POSIX signature" >&5
printf %s "checking for getcwd with POSIX signature... " >&6; }
-if ${gl_cv_func_getcwd_posix_signature+:} false; then :
+if test ${gl_cv_func_getcwd_posix_signature+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <unistd.h>
int
-main ()
+main (void)
{
extern
#ifdef __cplusplus
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_func_getcwd_posix_signature=yes
else
gl_cv_func_getcwd_posix_signature=no
-ac_fn_c_check_decl "$LINENO" "setenv" "ac_cv_have_decl_setenv" "$ac_includes_default"
-if test "x$ac_cv_have_decl_setenv" = xyes; then :
- ac_have_decl=1
+
+
+
+
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for IPv4 sockets" >&5
+printf %s "checking for IPv4 sockets... " >&6; }
+ if test ${gl_cv_socket_ipv4+y}
+then :
+ printf %s "(cached) " >&6
else
- ac_have_decl=0
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/types.h>
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_WINSOCK2_H
+#include <winsock2.h>
+#endif
+int
+main (void)
+{
+int x = AF_INET; struct in_addr y; struct sockaddr_in z;
+ if (&x && &y && &z) return 0;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_socket_ipv4=yes
+else
+ gl_cv_socket_ipv4=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_SETENV $ac_have_decl
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_socket_ipv4" >&5
+printf "%s\n" "$gl_cv_socket_ipv4" >&6; }
+ if test $gl_cv_socket_ipv4 = yes; then
+
+printf "%s\n" "#define HAVE_IPV4 1" >>confdefs.h
+
+ fi
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for IPv6 sockets" >&5
+printf %s "checking for IPv6 sockets... " >&6; }
+ if test ${gl_cv_socket_ipv6+y}
+then :
+ printf %s "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/types.h>
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_WINSOCK2_H
+#include <winsock2.h>
+#endif
+#ifdef HAVE_WS2TCPIP_H
+#include <ws2tcpip.h>
+#endif
+int
+main (void)
+{
+int x = AF_INET6; struct in6_addr y; struct sockaddr_in6 z;
+ if (&x && &y && &z) return 0;
+ ;
+ return 0;
+}
_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_socket_ipv6=yes
+else
+ gl_cv_socket_ipv6=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_socket_ipv6" >&5
+printf "%s\n" "$gl_cv_socket_ipv6" >&6; }
+ if test $gl_cv_socket_ipv6 = yes; then
+printf "%s\n" "#define HAVE_IPV6 1" >>confdefs.h
+ fi
- if test $ac_cv_have_decl_setenv = no; then
- HAVE_DECL_SETENV=0
+
+ GNULIB_PSELECT=0;
+ GNULIB_SELECT=0;
+ HAVE_PSELECT=1;
+ REPLACE_PSELECT=0;
+ REPLACE_SELECT=0;
+
+
+
+
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether <sys/select.h> is self-contained" >&5
+printf %s "checking whether <sys/select.h> is self-contained... " >&6; }
+if test ${gl_cv_header_sys_select_h_selfcontained+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/select.h>
+int
+main (void)
+{
+struct timeval b;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_header_sys_select_h_selfcontained=yes
+else
+ gl_cv_header_sys_select_h_selfcontained=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ if test $gl_cv_header_sys_select_h_selfcontained = yes; then
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/select.h>
+int
+main (void)
+{
+int memset; int bzero;
+ ;
+ return 0;
+}
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/select.h>
+int
+main (void)
+{
+
+ #undef memset
+ #define memset nonexistent_memset
+ extern
+ #ifdef __cplusplus
+ "C"
+ #endif
+ void *memset (void *, int, unsigned long);
+ #undef bzero
+ #define bzero nonexistent_bzero
+ extern
+ #ifdef __cplusplus
+ "C"
+ #endif
+ void bzero (void *, unsigned long);
+ fd_set fds;
+ FD_ZERO (&fds);
+
+ ;
+ return 0;
+}
+
+_ACEOF
+if ac_fn_c_try_link "$LINENO"
+then :
+
+else
+ gl_cv_header_sys_select_h_selfcontained=no
+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_ext
+ fi
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_sys_select_h_selfcontained" >&5
+printf "%s\n" "$gl_cv_header_sys_select_h_selfcontained" >&6; }
+
+
+
+
+
+
+
+
+
+ if test $gl_cv_have_include_next = yes; then
+ gl_cv_next_sys_select_h='<'sys/select.h'>'
+ else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/select.h>" >&5
+printf %s "checking absolute name of <sys/select.h>... " >&6; }
+if test ${gl_cv_next_sys_select_h+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ if test $ac_cv_header_sys_select_h = yes; then
+
+
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/select.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/select.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_select_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_sys_select_h
+ gl_cv_next_sys_select_h='"'$gl_header'"'
+ else
+ gl_cv_next_sys_select_h='<'sys/select.h'>'
+ fi
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_select_h" >&5
+printf "%s\n" "$gl_cv_next_sys_select_h" >&6; }
+ fi
+ NEXT_SYS_SELECT_H=$gl_cv_next_sys_select_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/select.h'>'
+ else
+ # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
+ gl_next_as_first_directive=$gl_cv_next_sys_select_h
+ fi
+ NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H=$gl_next_as_first_directive
+
+
+
+
+ if test $ac_cv_header_sys_select_h = yes; then
+ HAVE_SYS_SELECT_H=1
+ else
+ HAVE_SYS_SELECT_H=0
fi
- for ac_header in search.h
+ if test $ac_cv_header_sys_socket_h != yes; then
+ for ac_header in winsock2.h
do :
- ac_fn_c_check_header_mongrel "$LINENO" "search.h" "ac_cv_header_search_h" "$ac_includes_default"
-if test "x$ac_cv_header_search_h" = xyes; then :
+ ac_fn_c_check_header_compile "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default"
+if test "x$ac_cv_header_winsock2_h" = xyes
+then :
cat >>confdefs.h <<_ACEOF
-#define HAVE_SEARCH_H 1
+#define HAVE_WINSOCK2_H 1
_ACEOF
fi
-
done
- for ac_func in tsearch
+ 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
+
+
+
+
+ for gl_func in pselect select; do
+ as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
+printf %s "checking whether $gl_func is declared without a macro... " >&6; }
+if eval test \${$as_gl_Symbol+y}
+then :
+ printf %s "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Some systems require prerequisite headers. */
+#include <sys/types.h>
+#if !(defined __GLIBC__ && !defined __UCLIBC__) && HAVE_SYS_TIME_H
+# include <sys/time.h>
+#endif
+#include <sys/select.h>
+
+int
+main (void)
+{
+#undef $gl_func
+ (void) $gl_func;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ eval "$as_gl_Symbol=yes"
+else
+ eval "$as_gl_Symbol=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$as_gl_Symbol
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
+ cat >>confdefs.h <<_ACEOF
+#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
+_ACEOF
+
+ eval ac_cv_have_decl_$gl_func=yes
+fi
+ done
+
+
+
+
+
+
+
+ if test $ac_cv_header_sys_socket_h != yes; then
+ for ac_header in winsock2.h
do :
- ac_fn_c_check_func "$LINENO" "tsearch" "ac_cv_func_tsearch"
-if test "x$ac_cv_func_tsearch" = xyes; then :
+ ac_fn_c_check_header_compile "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default"
+if test "x$ac_cv_header_winsock2_h" = xyes
+then :
cat >>confdefs.h <<_ACEOF
-#define HAVE_TSEARCH 1
+#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
+ LIBSOCKET=
+ if test $HAVE_WINSOCK2_H = 1; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if we need to call WSAStartup in winsock2.h and -lws2_32" >&5
+printf %s "checking if we need to call WSAStartup in winsock2.h and -lws2_32... " >&6; }
+if test ${gl_cv_func_wsastartup+y}
+then :
+ printf %s "(cached) " >&6
+else
+ gl_save_LIBS="$LIBS"
+ LIBS="$LIBS -lws2_32"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#ifdef HAVE_WINSOCK2_H
+# include <winsock2.h>
+#endif
+int
+main (void)
+{
-ac_fn_c_check_decl "$LINENO" "snprintf" "ac_cv_have_decl_snprintf" "$ac_includes_default"
-if test "x$ac_cv_have_decl_snprintf" = xyes; then :
- ac_have_decl=1
+ 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
else
- ac_have_decl=0
+ gl_cv_func_wsastartup=no
fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ LIBS="$gl_save_LIBS"
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_SNPRINTF $ac_have_decl
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wsastartup" >&5
+printf "%s\n" "$gl_cv_func_wsastartup" >&6; }
+ if test "$gl_cv_func_wsastartup" = "yes"; then
+
+printf "%s\n" "#define WINDOWS_SOCKETS 1" >>confdefs.h
+
+ LIBSOCKET='-lws2_32'
+ fi
+ else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing setsockopt" >&5
+printf %s "checking for library containing setsockopt... " >&6; }
+if test ${gl_cv_lib_socket+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ gl_cv_lib_socket=
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+extern
+#ifdef __cplusplus
+"C"
+#endif
+char setsockopt();
+int
+main (void)
+{
+setsockopt();
+ ;
+ return 0;
+}
_ACEOF
+if ac_fn_c_try_link "$LINENO"
+then :
-ac_fn_c_check_decl "$LINENO" "unsetenv" "ac_cv_have_decl_unsetenv" "$ac_includes_default"
-if test "x$ac_cv_have_decl_unsetenv" = xyes; then :
+else
+ gl_save_LIBS="$LIBS"
+ LIBS="$gl_save_LIBS -lsocket"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+extern
+#ifdef __cplusplus
+"C"
+#endif
+char setsockopt();
+int
+main (void)
+{
+setsockopt();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"
+then :
+ gl_cv_lib_socket="-lsocket"
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ if test -z "$gl_cv_lib_socket"; then
+ LIBS="$gl_save_LIBS -lnetwork"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+extern
+#ifdef __cplusplus
+"C"
+#endif
+char setsockopt();
+int
+main (void)
+{
+setsockopt();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"
+then :
+ gl_cv_lib_socket="-lnetwork"
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ if test -z "$gl_cv_lib_socket"; then
+ LIBS="$gl_save_LIBS -lnet"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+extern
+#ifdef __cplusplus
+"C"
+#endif
+char setsockopt();
+int
+main (void)
+{
+setsockopt();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"
+then :
+ gl_cv_lib_socket="-lnet"
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ fi
+ fi
+ LIBS="$gl_save_LIBS"
+
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ if test -z "$gl_cv_lib_socket"; then
+ gl_cv_lib_socket="none needed"
+ fi
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_lib_socket" >&5
+printf "%s\n" "$gl_cv_lib_socket" >&6; }
+ if test "$gl_cv_lib_socket" != "none needed"; then
+ LIBSOCKET="$gl_cv_lib_socket"
+ fi
+ fi
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+ if test "$ac_cv_header_winsock2_h" = yes; then
+ REPLACE_SELECT=1
+ else
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether select supports a 0 argument" >&5
+printf %s "checking whether select supports a 0 argument... " >&6; }
+if test ${gl_cv_func_select_supports0+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes
+then :
+
+ case "$host_os" in
+ # Guess no on Interix.
+ interix*) gl_cv_func_select_supports0="guessing no";;
+ # Guess yes otherwise.
+ *) gl_cv_func_select_supports0="guessing yes";;
+ esac
+
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#include <sys/types.h>
+#include <sys/time.h>
+#if HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#endif
+int main ()
+{
+ struct timeval timeout;
+ timeout.tv_sec = 0;
+ timeout.tv_usec = 5;
+ return select (0, (fd_set *)0, (fd_set *)0, (fd_set *)0, &timeout) < 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"
+then :
+ gl_cv_func_select_supports0=yes
+else
+ gl_cv_func_select_supports0=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_select_supports0" >&5
+printf "%s\n" "$gl_cv_func_select_supports0" >&6; }
+ case "$gl_cv_func_select_supports0" in
+ *yes) ;;
+ *) REPLACE_SELECT=1 ;;
+ esac
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether select detects invalid fds" >&5
+printf %s "checking whether select detects invalid fds... " >&6; }
+if test ${gl_cv_func_select_detects_ebadf+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes
+then :
+
+ case "$host_os" in
+ # Guess yes on glibc systems.
+ *-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" ;;
+ esac
+
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#include <sys/types.h>
+#include <sys/time.h>
+#if HAVE_SYS_SELECT_H
+# include <sys/select.h>
+#endif
+#include <unistd.h>
+#include <errno.h>
+
+int
+main (void)
+{
+
+ fd_set set;
+ dup2(0, 16);
+ FD_ZERO(&set);
+ FD_SET(16, &set);
+ close(16);
+ struct timeval timeout;
+ timeout.tv_sec = 0;
+ timeout.tv_usec = 5;
+ return select (17, &set, NULL, NULL, &timeout) != -1 || errno != EBADF;
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"
+then :
+ gl_cv_func_select_detects_ebadf=yes
+else
+ gl_cv_func_select_detects_ebadf=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_select_detects_ebadf" >&5
+printf "%s\n" "$gl_cv_func_select_detects_ebadf" >&6; }
+ case $gl_cv_func_select_detects_ebadf in
+ *yes) ;;
+ *) REPLACE_SELECT=1 ;;
+ esac
+ fi
+
+ LIB_SELECT="$LIBSOCKET"
+ if test $REPLACE_SELECT = 1; then
+ case "$host_os" in
+ mingw*)
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#define WIN32_LEAN_AND_MEAN
+#include <windows.h>
+int
+main ()
+{
+ MsgWaitForMultipleObjects (0, NULL, 0, 0, 0);
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"
+then :
+
+else
+ LIB_SELECT="$LIB_SELECT -luser32"
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ ;;
+ esac
+ fi
+
+
+
+
+
+
+
+
+
+ if test $ac_cv_have_decl_strerror_r = no; then
+ HAVE_DECL_STRERROR_R=0
+ fi
+
+ if test $ac_cv_func_strerror_r = yes; then
+ if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then
+ if test $gl_cv_func_strerror_r_posix_signature = yes; then
+ case "$gl_cv_func_strerror_r_works" in
+ *no) REPLACE_STRERROR_R=1 ;;
+ esac
+ else
+ REPLACE_STRERROR_R=1
+ fi
+ else
+ REPLACE_STRERROR_R=1
+ fi
+ fi
+
+
+
+
+
+ac_fn_c_check_decl "$LINENO" "snprintf" "ac_cv_have_decl_snprintf" "$ac_includes_default"
+if test "x$ac_cv_have_decl_snprintf" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
fi
cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UNSETENV $ac_have_decl
+#define HAVE_DECL_SNPRINTF $ac_have_decl
_ACEOF
+
+
+
+
+
+
+
+
if false; then
GL_COND_LIBTOOL_TRUE=
GL_COND_LIBTOOL_FALSE='#'
if test $ac_cv_working_alloca_h = yes; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for alloca as a compiler built-in" >&5
printf %s "checking for alloca as a compiler built-in... " >&6; }
-if ${gl_cv_rpl_alloca+:} false; then :
+if test ${gl_cv_rpl_alloca+y}
+then :
printf %s "(cached) " >&6
else
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "Need own alloca" >/dev/null 2>&1; then :
+ $EGREP "Need own alloca" >/dev/null 2>&1
+then :
gl_cv_rpl_alloca=yes
else
gl_cv_rpl_alloca=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether btowc(0) is correct" >&5
printf %s "checking whether btowc(0) is correct... " >&6; }
-if ${gl_cv_func_btowc_nul+:} false; then :
+if test ${gl_cv_func_btowc_nul+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess no on Cygwin.
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_btowc_nul=yes
else
gl_cv_func_btowc_nul=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether btowc(EOF) is correct" >&5
printf %s "checking whether btowc(EOF) is correct... " >&6; }
-if ${gl_cv_func_btowc_eof+:} false; then :
+if test ${gl_cv_func_btowc_eof+y}
+then :
printf %s "(cached) " >&6
else
*) gl_cv_func_btowc_eof="guessing yes" ;;
esac
if test $LOCALE_FR != none; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_btowc_eof=yes
else
gl_cv_func_btowc_eof=no
ac_fn_c_check_decl "$LINENO" "sigaltstack" "ac_cv_have_decl_sigaltstack" "#include <signal.h>
"
-if test "x$ac_cv_have_decl_sigaltstack" = xyes; then :
+if test "x$ac_cv_have_decl_sigaltstack" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
ac_fn_c_check_type "$LINENO" "stack_t" "ac_cv_type_stack_t" "#include <signal.h>
"
-if test "x$ac_cv_type_stack_t" = xyes; then :
+if test "x$ac_cv_type_stack_t" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STACK_T 1
gl_saved_libs=$LIBS
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing clock_gettime" >&5
printf %s "checking for library containing clock_gettime... " >&6; }
-if ${ac_cv_search_clock_gettime+:} false; then :
+if test ${ac_cv_search_clock_gettime+y}
+then :
printf %s "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
#endif
char clock_gettime ();
int
-main ()
+main (void)
{
return clock_gettime ();
;
return 0;
}
_ACEOF
-for ac_lib in '' rt posix4; do
+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 :
+ 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 :
+ if test ${ac_cv_search_clock_gettime+y}
+then :
break
fi
done
-if ${ac_cv_search_clock_gettime+:} false; then :
+if test ${ac_cv_search_clock_gettime+y}
+then :
else
ac_cv_search_clock_gettime=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_clock_gettime" >&5
printf "%s\n" "$ac_cv_search_clock_gettime" >&6; }
ac_res=$ac_cv_search_clock_gettime
-if test "$ac_res" != no; then :
+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
do :
as_ac_var=`printf "%s\n" "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 :
+if eval test \"x\$"$as_ac_var"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
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 :
+ ac_fn_c_check_header_compile "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default"
+if test "x$ac_cv_header_winsock2_h" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_WINSOCK2_H 1
_ACEOF
fi
-
done
fi
localedir='${datarootdir}/locale'
fi
+ if test "x$runstatedir" = x; then
+ runstatedir='${localstatedir}/run'
+
+ fi
pkglibexecdir='${libexecdir}/${PACKAGE}'
+
+
+
+
+
+
+ if test $gl_cv_have_include_next = yes; then
+ gl_cv_next_ctype_h='<'ctype.h'>'
+ else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <ctype.h>" >&5
+printf %s "checking absolute name of <ctype.h>... " >&6; }
+if test ${gl_cv_next_ctype_h+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <ctype.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 'ctype.h' \
+ | sed -e "$gl_make_literal_regex_sed"`
+ gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{
+ s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/
+ s|^/[^/]|//&|
+ p
+ q
+ }'
+
+ gl_cv_absolute_ctype_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_ctype_h
+ gl_cv_next_ctype_h='"'$gl_header'"'
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_ctype_h" >&5
+printf "%s\n" "$gl_cv_next_ctype_h" >&6; }
+ fi
+ NEXT_CTYPE_H=$gl_cv_next_ctype_h
+
+ if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then
+ # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next'
+ gl_next_as_first_directive='<'ctype.h'>'
+ else
+ # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
+ gl_next_as_first_directive=$gl_cv_next_ctype_h
+ fi
+ NEXT_AS_FIRST_DIRECTIVE_CTYPE_H=$gl_next_as_first_directive
+
+
+
+
+
+
+ for gl_func in isblank; do
+ as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
+printf %s "checking whether $gl_func is declared without a macro... " >&6; }
+if eval test \${$as_gl_Symbol+y}
+then :
+ printf %s "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <ctype.h>
+
+int
+main (void)
+{
+#undef $gl_func
+ (void) $gl_func;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ eval "$as_gl_Symbol=yes"
+else
+ eval "$as_gl_Symbol=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$as_gl_Symbol
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
+ cat >>confdefs.h <<_ACEOF
+#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
+_ACEOF
+
+ eval ac_cv_have_decl_$gl_func=yes
+fi
+ done
+
+
+
+
+
+
+
cat >>confdefs.h <<_ACEOF
#define GNULIB_DIRNAME 1
_ACEOF
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether // is distinct from /" >&5
printf %s "checking whether // is distinct from /... " >&6; }
-if ${gl_cv_double_slash_root+:} false; then :
+if test ${gl_cv_double_slash_root+y}
+then :
printf %s "(cached) " >&6
else
if test x"$cross_compiling" = xyes ; then
if test $HAVE_DUP2 = 1; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether dup2 works" >&5
printf %s "checking whether dup2 works... " >&6; }
-if ${gl_cv_func_dup2_works+:} false; then :
+if test ${gl_cv_func_dup2_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ 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" ;;
- linux*) # On linux between 2008-07-27 and 2009-05-11, dup2 of a
- # closed fd may yield -EBADF instead of -1 / errno=EBADF.
- gl_cv_func_dup2_works="guessing no" ;;
- freebsd*) # on FreeBSD 6.1, dup2(1,1000000) gives EMFILE, not EBADF.
+ 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 <unistd.h>
-#include <fcntl.h>
-#include <errno.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 ()
+main (void)
{
int result = 0;
-#ifdef FD_CLOEXEC
- if (fcntl (1, F_SETFD, FD_CLOEXEC) == -1)
- result |= 1;
-#endif
- if (dup2 (1, 1) == 0)
- 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, 1000000) == -1 && errno != EBADF)
- result |= 16;
- /* Flush out a cygwin core dump. */
- if (dup2 (2, -1) != -1 || errno != EBADF)
- result |= 32;
- return result;
+ 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 :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_dup2_works=yes
else
gl_cv_func_dup2_works=no
*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
+
+
+
+
+ GNULIB_ENVIRON=1
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_ENVIRON 1" >>confdefs.h
+
+
+
+
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for error_at_line" >&5
printf %s "checking for error_at_line... " >&6; }
-if ${ac_cv_lib_error_at_line+:} false; then :
+if test ${ac_cv_lib_error_at_line+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <error.h>
int
-main ()
+main (void)
{
error_at_line (0, 0, "", 0, "an error occurred");
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
ac_cv_lib_error_at_line=yes
else
ac_cv_lib_error_at_line=no
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether fcntl handles F_DUPFD correctly" >&5
printf %s "checking whether fcntl handles F_DUPFD correctly... " >&6; }
-if ${gl_cv_func_fcntl_f_dupfd_works+:} false; then :
+if test ${gl_cv_func_fcntl_f_dupfd_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
- # Guess that it works on glibc systems
- case $host_os in #((
- *-gnu*) gl_cv_func_fcntl_f_dupfd_works="guessing yes";;
- *) gl_cv_func_fcntl_f_dupfd_works="guessing no";;
+ 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 <fcntl.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 ()
+main (void)
{
int result = 0;
- if (fcntl (0, F_DUPFD, -1) != -1) result |= 1;
- if (errno != EINVAL) result |= 2;
- return result;
-
+ 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 :
+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
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether fcntl understands F_DUPFD_CLOEXEC" >&5
printf %s "checking whether fcntl understands F_DUPFD_CLOEXEC... " >&6; }
-if ${gl_cv_func_fcntl_f_dupfd_cloexec+:} false; then :
+if test ${gl_cv_func_fcntl_f_dupfd_cloexec+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#endif
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+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"
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <fcntl.h>" >&5
printf %s "checking absolute name of <fcntl.h>... " >&6; }
-if ${gl_cv_next_fcntl_h+:} false; then :
+if test ${gl_cv_next_fcntl_h+y}
+then :
printf %s "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <fcntl.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'fcntl.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_next_fcntl_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'fcntl.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_fcntl_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_fcntl_h
+ gl_cv_next_fcntl_h='"'$gl_header'"'
fi
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <fcntl.h>
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for flexible array member" >&5
+printf %s "checking for flexible array member... " >&6; }
+if test ${ac_cv_c_flexmember+y}
+then :
+ printf %s "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <stdlib.h>
+ #include <stdio.h>
+ #include <stddef.h>
+ struct s { int n; double d[]; };
+int
+main (void)
+{
+int m = getchar ();
+ struct s *p = malloc (offsetof (struct s, d)
+ + m * sizeof (double));
+ p->d[0] = 0.0;
+ return p->d != (double *) NULL;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ ac_cv_c_flexmember=yes
+else
+ ac_cv_c_flexmember=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_flexmember" >&5
+printf "%s\n" "$ac_cv_c_flexmember" >&6; }
+ if test $ac_cv_c_flexmember = yes; then
+
+printf "%s\n" "#define FLEXIBLE_ARRAY_MEMBER /**/" >>confdefs.h
+
+ else
+ printf "%s\n" "#define FLEXIBLE_ARRAY_MEMBER 1" >>confdefs.h
+
+ fi
+
+
FLOAT_H=
#endif
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then :
+ $EGREP "yes" >/dev/null 2>&1
+then :
else
FLOAT_H=float.h
REPLACE_ITOLD=0
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether conversion from 'int' to 'long double' works" >&5
printf %s "checking whether conversion from 'int' to 'long double' works... " >&6; }
-if ${gl_cv_func_itold_works+:} false; then :
+if test ${gl_cv_func_itold_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host" in
sparc*-*-linux*)
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then :
+ $EGREP "yes" >/dev/null 2>&1
+then :
gl_cv_func_itold_works="guessing no"
else
gl_cv_func_itold_works="guessing yes"
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_itold_works=yes
else
gl_cv_func_itold_works=no
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <float.h>" >&5
printf %s "checking absolute name of <float.h>... " >&6; }
-if ${gl_cv_next_float_h+:} false; then :
+if test ${gl_cv_next_float_h+y}
+then :
printf %s "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <float.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ case "$host_os" in
+ aix*) gl_absname_cpp="$ac_cpp -C" ;;
+ *) gl_absname_cpp="$ac_cpp" ;;
+ esac
- case "$host_os" in
- mingw*)
- gl_dirsep_regex='[/\\]'
- ;;
- *)
- gl_dirsep_regex='\/'
- ;;
- esac
- gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
-
- gl_header_literal_regex=`echo 'float.h' \
- | sed -e "$gl_make_literal_regex_sed"`
- gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{
- s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/
- s|^/[^/]|//&|
- p
- q
- }'
- gl_cv_next_float_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'float.h' \
+ | sed -e "$gl_make_literal_regex_sed"`
+ gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{
+ s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/
+ s|^/[^/]|//&|
+ p
+ q
+ }'
+
+ gl_cv_absolute_float_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_float_h
+ gl_cv_next_float_h='"'$gl_header'"'
fi
gl_fnmatch_cache_var="gl_cv_func_fnmatch_${gl_fnmatch_required_lowercase}"
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working $gl_fnmatch_required fnmatch" >&5
printf %s "checking for working $gl_fnmatch_required fnmatch... " >&6; }
-if eval \${$gl_fnmatch_cache_var+:} false; then :
+if eval test \${$gl_fnmatch_cache_var+y}
+then :
printf %s "(cached) " >&6
else
if test $gl_fnmatch_required = GNU; then
gl_fnmatch_gnu_start='#if 0'
gl_fnmatch_gnu_end='#endif'
fi
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
eval "$gl_fnmatch_cache_var=\"guessing no\""
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
}
int
-main ()
+main (void)
{
char const *Apat = 'A' < '\\\\' ? "[A-\\\\\\\\]" : "[\\\\\\\\-A]";
char const *apat = 'a' < '\\\\' ? "[a-\\\\\\\\]" : "[\\\\\\\\-a]";
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
eval "$gl_fnmatch_cache_var=yes"
else
eval "$gl_fnmatch_cache_var=no"
ac_fn_c_check_decl "$LINENO" "isblank" "ac_cv_have_decl_isblank" "#include <ctype.h>
"
-if test "x$ac_cv_have_decl_isblank" = xyes; then :
+if test "x$ac_cv_have_decl_isblank" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
ac_fn_c_check_decl "$LINENO" "isblank" "ac_cv_have_decl_isblank" "#include <ctype.h>
"
-if test "x$ac_cv_have_decl_isblank" = xyes; then :
+if test "x$ac_cv_have_decl_isblank" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
case "$host_os" in
- mingw* | pw*)
+ mingw* | pw* | os2*)
REPLACE_FREOPEN=1
;;
esac
- if test $ac_cv_func_getdtablesize != yes; then
+
+
+ if test $ac_cv_func_getdtablesize = yes &&
+ test $ac_cv_have_decl_getdtablesize = yes; then
+ # Cygwin 1.7.25 automatically increases the RLIMIT_NOFILE soft limit
+ # up to an unchangeable hard limit; all other platforms correctly
+ # require setrlimit before getdtablesize() can report a larger value.
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether getdtablesize works" >&5
+printf %s "checking whether getdtablesize works... " >&6; }
+if test ${gl_cv_func_getdtablesize_works+y}
+then :
+ printf %s "(cached) " >&6
+else
+ 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 (void)
+{
+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
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getdtablesize_works" >&5
+printf "%s\n" "$gl_cv_func_getdtablesize_works" >&6; }
+ case "$gl_cv_func_getdtablesize_works" in
+ *yes) ;;
+ *) REPLACE_GETDTABLESIZE=1 ;;
+ esac
+ else
HAVE_GETDTABLESIZE=0
fi
- if test $HAVE_GETDTABLESIZE = 0; then
+ if test $HAVE_GETDTABLESIZE = 0 || test $REPLACE_GETDTABLESIZE = 1; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether gettimeofday clobbers localtime buffer" >&5
printf %s "checking whether gettimeofday clobbers localtime buffer... " >&6; }
-if ${gl_cv_func_gettimeofday_clobber+:} false; then :
+if test ${gl_cv_func_gettimeofday_clobber+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
# When cross-compiling:
case "$host_os" in
# Guess all is fine on glibc systems.
#include <stdlib.h>
int
-main ()
+main (void)
{
time_t t = 0;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_gettimeofday_clobber=no
else
gl_cv_func_gettimeofday_clobber=yes
*yes)
REPLACE_GETTIMEOFDAY=1
-
-printf "%s\n" "#define gmtime rpl_gmtime" >>confdefs.h
-
-
-printf "%s\n" "#define localtime rpl_localtime" >>confdefs.h
-
+ REPLACE_GMTIME=1
+ REPLACE_LOCALTIME=1
printf "%s\n" "#define GETTIMEOFDAY_CLOBBERS_LOCALTIME 1" >>confdefs.h
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gettimeofday with POSIX signature" >&5
printf %s "checking for gettimeofday with POSIX signature... " >&6; }
-if ${gl_cv_func_gettimeofday_posix_signature+:} false; then :
+if test ${gl_cv_func_gettimeofday_posix_signature+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
int gettimeofday (struct timeval *restrict, void *restrict);
int
-main ()
+main (void)
{
/* glibc uses struct timezone * rather than the POSIX void *
if _GNU_SOURCE is defined. However, since the only portable
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_func_gettimeofday_posix_signature=yes
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
int gettimeofday (struct timeval *restrict, struct timezone *restrict);
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_func_gettimeofday_posix_signature=almost
else
gl_cv_func_gettimeofday_posix_signature=no
for ac_header in sys/timeb.h
do :
- ac_fn_c_check_header_mongrel "$LINENO" "sys/timeb.h" "ac_cv_header_sys_timeb_h" "$ac_includes_default"
-if test "x$ac_cv_header_sys_timeb_h" = xyes; then :
+ ac_fn_c_check_header_compile "$LINENO" "sys/timeb.h" "ac_cv_header_sys_timeb_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_timeb_h" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_SYS_TIMEB_H 1
_ACEOF
fi
-
done
for ac_func in _ftime
do :
ac_fn_c_check_func "$LINENO" "_ftime" "ac_cv_func__ftime"
-if test "x$ac_cv_func__ftime" = xyes; then :
+if test "x$ac_cv_func__ftime" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE__FTIME 1
_ACEOF
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <iconv.h>" >&5
printf %s "checking absolute name of <iconv.h>... " >&6; }
-if ${gl_cv_next_iconv_h+:} false; then :
+if test ${gl_cv_next_iconv_h+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_header_iconv_h = yes; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <iconv.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'iconv.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_next_iconv_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'iconv.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_iconv_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_iconv_h
+ gl_cv_next_iconv_h='"'$gl_header'"'
else
gl_cv_next_iconv_h='<'iconv.h'>'
fi
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "gnu_iconv" >/dev/null 2>&1; then :
+ $EGREP "gnu_iconv" >/dev/null 2>&1
+then :
gl_func_iconv_gnu=yes
else
gl_func_iconv_gnu=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler generally respects inline" >&5
printf %s "checking whether the compiler generally respects inline... " >&6; }
-if ${gl_cv_c_inline_effective+:} false; then :
+if test ${gl_cv_c_inline_effective+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_c_inline = no; then
/* end confdefs.h. */
int
-main ()
+main (void)
{
#ifdef __NO_INLINE__
#error "inline is not effective"
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_c_inline_effective=yes
else
gl_cv_c_inline_effective=no
extern intptr_t foo;
extern $gltype1 foo;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
PRIPTR_PREFIX='"'$glpfx'"'
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether INT32_MAX < INTMAX_MAX" >&5
printf %s "checking whether INT32_MAX < INTMAX_MAX... " >&6; }
-if ${gl_cv_test_INT32_MAX_LT_INTMAX_MAX+:} false; then :
+if test ${gl_cv_test_INT32_MAX_LT_INTMAX_MAX+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int test[CONDITION ? 1 : -1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_test_INT32_MAX_LT_INTMAX_MAX=yes
else
gl_cv_test_INT32_MAX_LT_INTMAX_MAX=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether INT64_MAX == LONG_MAX" >&5
printf %s "checking whether INT64_MAX == LONG_MAX... " >&6; }
-if ${gl_cv_test_INT64_MAX_EQ_LONG_MAX+:} false; then :
+if test ${gl_cv_test_INT64_MAX_EQ_LONG_MAX+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int test[CONDITION ? 1 : -1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_test_INT64_MAX_EQ_LONG_MAX=yes
else
gl_cv_test_INT64_MAX_EQ_LONG_MAX=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether UINT32_MAX < UINTMAX_MAX" >&5
printf %s "checking whether UINT32_MAX < UINTMAX_MAX... " >&6; }
-if ${gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX+:} false; then :
+if test ${gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int test[CONDITION ? 1 : -1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX=yes
else
gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether UINT64_MAX == ULONG_MAX" >&5
printf %s "checking whether UINT64_MAX == ULONG_MAX... " >&6; }
-if ${gl_cv_test_UINT64_MAX_EQ_ULONG_MAX+:} false; then :
+if test ${gl_cv_test_UINT64_MAX_EQ_ULONG_MAX+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int test[CONDITION ? 1 : -1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_test_UINT64_MAX_EQ_ULONG_MAX=yes
else
gl_cv_test_UINT64_MAX_EQ_ULONG_MAX=no
+ if test $ac_cv_func_isblank = no; then
+ HAVE_ISBLANK=0
+ fi
+
+ if test $HAVE_ISBLANK = 0; then
+
+
+
+
+
+
+
+
+ gl_LIBOBJS="$gl_LIBOBJS isblank.$ac_objext"
+
+ fi
+
+
+
+
+
+ GNULIB_ISBLANK=1
+
+
+
+
+
+
+
+
+
ac_fn_c_check_decl "$LINENO" "iswblank" "ac_cv_have_decl_iswblank" "
/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
<wchar.h>.
#include <wctype.h>
"
-if test "x$ac_cv_have_decl_iswblank" = xyes; then :
+if test "x$ac_cv_have_decl_iswblank" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <langinfo.h>" >&5
printf %s "checking absolute name of <langinfo.h>... " >&6; }
-if ${gl_cv_next_langinfo_h+:} false; then :
+if test ${gl_cv_next_langinfo_h+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_header_langinfo_h = yes; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <langinfo.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'langinfo.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_next_langinfo_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'langinfo.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_langinfo_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_langinfo_h
+ gl_cv_next_langinfo_h='"'$gl_header'"'
else
gl_cv_next_langinfo_h='<'langinfo.h'>'
fi
HAVE_LANGINFO_H=1
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether langinfo.h defines CODESET" >&5
printf %s "checking whether langinfo.h defines CODESET... " >&6; }
-if ${gl_cv_header_langinfo_codeset+:} false; then :
+if test ${gl_cv_header_langinfo_codeset+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
int a = CODESET;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_header_langinfo_codeset=yes
else
gl_cv_header_langinfo_codeset=no
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether langinfo.h defines T_FMT_AMPM" >&5
printf %s "checking whether langinfo.h defines T_FMT_AMPM... " >&6; }
-if ${gl_cv_header_langinfo_t_fmt_ampm+:} false; then :
+if test ${gl_cv_header_langinfo_t_fmt_ampm+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
int a = T_FMT_AMPM;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_header_langinfo_t_fmt_ampm=yes
else
gl_cv_header_langinfo_t_fmt_ampm=no
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether langinfo.h defines ERA" >&5
printf %s "checking whether langinfo.h defines ERA... " >&6; }
-if ${gl_cv_header_langinfo_era+:} false; then :
+if test ${gl_cv_header_langinfo_era+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
int a = ERA;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_header_langinfo_era=yes
else
gl_cv_header_langinfo_era=no
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether langinfo.h defines YESEXPR" >&5
printf %s "checking whether langinfo.h defines YESEXPR... " >&6; }
-if ${gl_cv_header_langinfo_yesexpr+:} false; then :
+if test ${gl_cv_header_langinfo_yesexpr+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
int a = YESEXPR;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_header_langinfo_yesexpr=yes
else
gl_cv_header_langinfo_yesexpr=no
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <langinfo.h>
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
# Check whether --with-libsigsegv-prefix was given.
-if test "${with_libsigsegv_prefix+set}" = set; then :
+if test ${with_libsigsegv_prefix+y}
+then :
withval=$with_libsigsegv_prefix;
if test "X$withval" = "Xno"; then
use_additional=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libsigsegv" >&5
printf %s "checking for libsigsegv... " >&6; }
-if ${ac_cv_libsigsegv+:} false; then :
+if test ${ac_cv_libsigsegv+y}
+then :
printf %s "(cached) " >&6
else
/* end confdefs.h. */
#include <sigsegv.h>
int
-main ()
+main (void)
{
sigsegv_deinstall_handler();
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
ac_cv_libsigsegv=yes
else
ac_cv_libsigsegv='no, consider installing GNU libsigsegv'
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether locale.h conforms to POSIX:2001" >&5
printf %s "checking whether locale.h conforms to POSIX:2001... " >&6; }
-if ${gl_cv_header_locale_h_posix2001+:} false; then :
+if test ${gl_cv_header_locale_h_posix2001+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
int x = LC_MESSAGES;
int y = sizeof (((struct lconv *) 0)->decimal_point);
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_header_locale_h_posix2001=yes
else
gl_cv_header_locale_h_posix2001=no
HAVE_XLOCALE_H=1
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether locale.h defines locale_t" >&5
printf %s "checking whether locale.h defines locale_t... " >&6; }
-if ${gl_cv_header_locale_has_locale_t+:} false; then :
+if test ${gl_cv_header_locale_has_locale_t+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <locale.h>
locale_t x;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+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
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether struct lconv is properly defined" >&5
printf %s "checking whether struct lconv is properly defined... " >&6; }
-if ${gl_cv_sys_struct_lconv_ok+:} false; then :
+if test ${gl_cv_sys_struct_lconv_ok+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
int x = sizeof (l.decimal_point);
int y = sizeof (l.int_p_cs_precedes);
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_sys_struct_lconv_ok=yes
else
gl_cv_sys_struct_lconv_ok=no
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <locale.h>" >&5
printf %s "checking absolute name of <locale.h>... " >&6; }
-if ${gl_cv_next_locale_h+:} false; then :
+if test ${gl_cv_next_locale_h+y}
+then :
printf %s "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <locale.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'locale.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_next_locale_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'locale.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_locale_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_locale_h
+ gl_cv_next_locale_h='"'$gl_header'"'
fi
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
ac_fn_c_check_member "$LINENO" "struct lconv" "decimal_point" "ac_cv_member_struct_lconv_decimal_point" "#include <locale.h>
"
-if test "x$ac_cv_member_struct_lconv_decimal_point" = xyes; then :
+if test "x$ac_cv_member_struct_lconv_decimal_point" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRUCT_LCONV_DECIMAL_POINT 1
- 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
-
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5
-printf %s "checking for GNU libc compatible malloc... " >&6; }
-if ${ac_cv_func_malloc_0_nonnull+:} false; then :
- printf %s "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
- case "$host_os" in
- # Guess yes on platforms where we know the result.
- *-gnu* | freebsd* | netbsd* | openbsd* \
- | hpux* | solaris* | cygwin* | mingw*)
- ac_cv_func_malloc_0_nonnull=yes ;;
- # If we don't know, assume the worst.
- *) ac_cv_func_malloc_0_nonnull=no ;;
- 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
-
-int
-main ()
-{
-return ! malloc (0);
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- ac_cv_func_malloc_0_nonnull=yes
-else
- ac_cv_func_malloc_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
-
-
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5
-printf "%s\n" "$ac_cv_func_malloc_0_nonnull" >&6; }
- if test $ac_cv_func_malloc_0_nonnull = yes; then :
-
-printf "%s\n" "#define HAVE_MALLOC_GNU 1" >>confdefs.h
-
-else
- printf "%s\n" "#define HAVE_MALLOC_GNU 0" >>confdefs.h
-
- REPLACE_MALLOC=1
-
-fi
-
-
- if test $REPLACE_MALLOC = 1; then
-
-
-
-
-
-
-
-
- gl_LIBOBJS="$gl_LIBOBJS malloc.$ac_objext"
-
- fi
-
-
-cat >>confdefs.h <<_ACEOF
-#define GNULIB_MALLOC_GNU 1
-_ACEOF
-
-
-
-
if test $gl_cv_func_malloc_posix = yes; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles incomplete characters" >&5
printf %s "checking whether mbrtowc handles incomplete characters... " >&6; }
-if ${gl_cv_func_mbrtowc_incomplete_state+:} false; then :
+if test ${gl_cv_func_mbrtowc_incomplete_state+y}
+then :
printf %s "(cached) " >&6
else
*) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;;
esac
if test $LOCALE_JA != none; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_mbrtowc_incomplete_state=yes
else
gl_cv_func_mbrtowc_incomplete_state=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works as well as mbtowc" >&5
printf %s "checking whether mbrtowc works as well as mbtowc... " >&6; }
-if ${gl_cv_func_mbrtowc_sanitycheck+:} false; then :
+if test ${gl_cv_func_mbrtowc_sanitycheck+y}
+then :
printf %s "(cached) " >&6
else
*) gl_cv_func_mbrtowc_sanitycheck="guessing yes" ;;
esac
if test $LOCALE_ZH_CN != none; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_mbrtowc_sanitycheck=yes
else
gl_cv_func_mbrtowc_sanitycheck=no
#include <wchar.h>
"
-if test "x$ac_cv_have_decl_mbrtowc" = xyes; then :
+if test "x$ac_cv_have_decl_mbrtowc" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles a NULL pwc argument" >&5
printf %s "checking whether mbrtowc handles a NULL pwc argument... " >&6; }
-if ${gl_cv_func_mbrtowc_null_arg1+:} false; then :
+if test ${gl_cv_func_mbrtowc_null_arg1+y}
+then :
printf %s "(cached) " >&6
else
*) gl_cv_func_mbrtowc_null_arg1="guessing yes" ;;
esac
if test $LOCALE_FR_UTF8 != none; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return result;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_mbrtowc_null_arg1=yes
else
gl_cv_func_mbrtowc_null_arg1=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles a NULL string argument" >&5
printf %s "checking whether mbrtowc handles a NULL string argument... " >&6; }
-if ${gl_cv_func_mbrtowc_null_arg2+:} false; then :
+if test ${gl_cv_func_mbrtowc_null_arg2+y}
+then :
printf %s "(cached) " >&6
else
*) gl_cv_func_mbrtowc_null_arg2="guessing yes" ;;
esac
if test $LOCALE_FR_UTF8 != none; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_mbrtowc_null_arg2=yes
else
gl_cv_func_mbrtowc_null_arg2=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc has a correct return value" >&5
printf %s "checking whether mbrtowc has a correct return value... " >&6; }
-if ${gl_cv_func_mbrtowc_retval+:} false; then :
+if test ${gl_cv_func_mbrtowc_retval+y}
+then :
printf %s "(cached) " >&6
else
esac
if test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none \
|| { case "$host_os" in mingw*) true;; *) false;; esac; }; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return (found_some_locale ? result : 77);
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_mbrtowc_retval=yes
else
if test $? != 77; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc returns 0 when parsing a NUL character" >&5
printf %s "checking whether mbrtowc returns 0 when parsing a NUL character... " >&6; }
-if ${gl_cv_func_mbrtowc_nul_retval+:} false; then :
+if test ${gl_cv_func_mbrtowc_nul_retval+y}
+then :
printf %s "(cached) " >&6
else
*) gl_cv_func_mbrtowc_nul_retval="guessing yes" ;;
esac
if test $LOCALE_ZH_CN != none; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_mbrtowc_nul_retval=yes
else
gl_cv_func_mbrtowc_nul_retval=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_nul_retval" >&5
printf "%s\n" "$gl_cv_func_mbrtowc_nul_retval" >&6; }
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works on empty input" >&5
+printf %s "checking whether mbrtowc works on empty input... " >&6; }
+if test ${gl_cv_func_mbrtowc_empty_input+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ case "$host_os" in
+ # Guess no on AIX and glibc systems.
+ aix* | *-gnu*)
+ gl_cv_func_mbrtowc_empty_input="guessing no" ;;
+ *) gl_cv_func_mbrtowc_empty_input="guessing yes" ;;
+ esac
+ if test "$cross_compiling" = yes
+then :
+ :
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+ #include <wchar.h>
+ static wchar_t wc;
+ static mbstate_t mbs;
+ int
+ main (void)
+ {
+ return mbrtowc (&wc, "", 0, &mbs) != (size_t) -2;
+ }
+_ACEOF
+if ac_fn_c_try_run "$LINENO"
+then :
+ gl_cv_func_mbrtowc_empty_input=yes
+else
+ gl_cv_func_mbrtowc_empty_input=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_empty_input" >&5
+printf "%s\n" "$gl_cv_func_mbrtowc_empty_input" >&6; }
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C locale is free of encoding errors" >&5
+printf %s "checking whether the C locale is free of encoding errors... " >&6; }
+if test ${gl_cv_C_locale_sans_EILSEQ+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ gl_cv_C_locale_sans_EILSEQ="guessing no"
+
+ if test "$cross_compiling" = yes
+then :
+ :
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <limits.h>
+ #include <locale.h>
+ #include <wchar.h>
+
+int
+main (void)
+{
+
+ int i;
+ char *locale = setlocale (LC_ALL, "C");
+ if (! locale)
+ return 1;
+ for (i = CHAR_MIN; i <= CHAR_MAX; i++)
+ {
+ char c = i;
+ wchar_t wc;
+ mbstate_t mbs = { 0, };
+ size_t ss = mbrtowc (&wc, &c, 1, &mbs);
+ if (1 < ss)
+ return 1;
+ }
+ return 0;
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"
+then :
+ gl_cv_C_locale_sans_EILSEQ=yes
+else
+ gl_cv_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
+fi
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_C_locale_sans_EILSEQ" >&5
+printf "%s\n" "$gl_cv_C_locale_sans_EILSEQ" >&6; }
+
case "$gl_cv_func_mbrtowc_null_arg1" in
*yes) ;;
*)
REPLACE_MBRTOWC=1
;;
esac
+ case "$gl_cv_func_mbrtowc_empty_input" in
+ *yes) ;;
+ *)
+printf "%s\n" "#define MBRTOWC_EMPTY_INPUT_BUG 1" >>confdefs.h
+
+ REPLACE_MBRTOWC=1
+ ;;
+ esac
+ case $gl_cv_C_locale_sans_EILSEQ in
+ *yes) ;;
+ *)
+printf "%s\n" "#define C_LOCALE_MAYBE_EILSEQ 1" >>confdefs.h
+
+ REPLACE_MBRTOWC=1
+ ;;
+ esac
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles incomplete characters" >&5
printf %s "checking whether mbrtowc handles incomplete characters... " >&6; }
-if ${gl_cv_func_mbrtowc_incomplete_state+:} false; then :
+if test ${gl_cv_func_mbrtowc_incomplete_state+y}
+then :
printf %s "(cached) " >&6
else
*) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;;
esac
if test $LOCALE_JA != none; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_mbrtowc_incomplete_state=yes
else
gl_cv_func_mbrtowc_incomplete_state=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works as well as mbtowc" >&5
printf %s "checking whether mbrtowc works as well as mbtowc... " >&6; }
-if ${gl_cv_func_mbrtowc_sanitycheck+:} false; then :
+if test ${gl_cv_func_mbrtowc_sanitycheck+y}
+then :
printf %s "(cached) " >&6
else
*) gl_cv_func_mbrtowc_sanitycheck="guessing yes" ;;
esac
if test $LOCALE_ZH_CN != none; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_mbrtowc_sanitycheck=yes
else
gl_cv_func_mbrtowc_sanitycheck=no
#include <wchar.h>
"
-if test "x$ac_cv_have_decl_mbsinit" = xyes; then :
+if test "x$ac_cv_have_decl_mbsinit" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles incomplete characters" >&5
printf %s "checking whether mbrtowc handles incomplete characters... " >&6; }
-if ${gl_cv_func_mbrtowc_incomplete_state+:} false; then :
+if test ${gl_cv_func_mbrtowc_incomplete_state+y}
+then :
printf %s "(cached) " >&6
else
*) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;;
esac
if test $LOCALE_JA != none; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_mbrtowc_incomplete_state=yes
else
gl_cv_func_mbrtowc_incomplete_state=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works as well as mbtowc" >&5
printf %s "checking whether mbrtowc works as well as mbtowc... " >&6; }
-if ${gl_cv_func_mbrtowc_sanitycheck+:} false; then :
+if test ${gl_cv_func_mbrtowc_sanitycheck+y}
+then :
printf %s "(cached) " >&6
else
*) gl_cv_func_mbrtowc_sanitycheck="guessing yes" ;;
esac
if test $LOCALE_ZH_CN != none; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_mbrtowc_sanitycheck=yes
else
gl_cv_func_mbrtowc_sanitycheck=no
#include <wchar.h>
"
-if test "x$ac_cv_have_decl_mbsrtowcs" = xyes; then :
+if test "x$ac_cv_have_decl_mbsrtowcs" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbsrtowcs works" >&5
printf %s "checking whether mbsrtowcs works... " >&6; }
-if ${gl_cv_func_mbsrtowcs_works+:} false; then :
+if test ${gl_cv_func_mbsrtowcs_works+y}
+then :
printf %s "(cached) " >&6
else
*) gl_cv_func_mbsrtowcs_works="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 :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return result;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_mbsrtowcs_works=yes
else
gl_cv_func_mbsrtowcs_works=no
for ac_header in bp-sym.h
do :
- ac_fn_c_check_header_mongrel "$LINENO" "bp-sym.h" "ac_cv_header_bp_sym_h" "$ac_includes_default"
-if test "x$ac_cv_header_bp_sym_h" = xyes; then :
+ ac_fn_c_check_header_compile "$LINENO" "bp-sym.h" "ac_cv_header_bp_sym_h" "$ac_includes_default"
+if test "x$ac_cv_header_bp_sym_h" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_BP_SYM_H 1
_ACEOF
fi
-
done
if test $ac_cv_func_mkstemp = yes; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working mkstemp" >&5
printf %s "checking for working mkstemp... " >&6; }
-if ${gl_cv_func_working_mkstemp+:} false; then :
+if test ${gl_cv_func_working_mkstemp+y}
+then :
printf %s "(cached) " >&6
else
mkdir conftest.mkstemp
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_working_mkstemp="guessing yes" ;;
/* end confdefs.h. */
$ac_includes_default
int
-main ()
+main (void)
{
int result = 0;
int i;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_working_mkstemp=yes
else
gl_cv_func_working_mkstemp=no
+
+
if test $APPLE_UNIVERSAL_BUILD = 1; then
# A universal build on Apple Mac OS X platforms.
# The test result would be 'yes' in 32-bit mode and 'no' in 64-bit mode.
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working mktime" >&5
printf %s "checking for working mktime... " >&6; }
-if ${gl_cv_func_working_mktime+:} false; then :
+if test ${gl_cv_func_working_mktime+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
gl_cv_func_working_mktime=no
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
time_t t, delta;
int i, j;
int time_t_signed_magnitude = (time_t) ~ (time_t) 0 < (time_t) -1;
- int time_t_signed = ! ((time_t) 0 < (time_t) -1);
#if HAVE_DECL_ALARM
/* This test makes some buggy mktime implementations loop.
alarm (60);
#endif
- time_t_max = (! time_t_signed
+ time_t_max = (! TIME_T_IS_SIGNED
? (time_t) -1
: ((((time_t) 1 << (sizeof (time_t) * CHAR_BIT - 2)) - 1)
* 2 + 1));
- time_t_min = (! time_t_signed
+ time_t_min = (! TIME_T_IS_SIGNED
? (time_t) 0
: time_t_signed_magnitude
? ~ (time_t) 0
return result;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_working_mktime=yes
else
gl_cv_func_working_mktime=no
- if test $ac_cv_func__set_invalid_parameter_handler = yes; then
- HAVE_MSVC_INVALID_PARAMETER_HANDLER=1
+ if test $REPLACE_MKTIME = 0; then
+ ac_fn_c_check_func "$LINENO" "__mktime_internal" "ac_cv_func___mktime_internal"
+if test "x$ac_cv_func___mktime_internal" = xyes
+then :
-printf "%s\n" "#define HAVE_MSVC_INVALID_PARAMETER_HANDLER 1" >>confdefs.h
+printf "%s\n" "#define mktime_internal __mktime_internal" >>confdefs.h
+
+
+else
+ REPLACE_MKTIME=1
+
+fi
- else
- HAVE_MSVC_INVALID_PARAMETER_HANDLER=0
fi
+ if test $REPLACE_MKTIME = 1; then
+
+
+
+
+
+
+
+
+ gl_LIBOBJS="$gl_LIBOBJS mktime.$ac_objext"
+
+ :
+ fi
if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then
fi
-
-
if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then
# On Irix 6.5, YESEXPR is defined, but nl_langinfo(YESEXPR) is broken.
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether YESEXPR works" >&5
printf %s "checking whether YESEXPR works... " >&6; }
-if ${gl_cv_func_nl_langinfo_yesexpr_works+:} false; then :
+if test ${gl_cv_func_nl_langinfo_yesexpr_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess no on irix systems.
#include <langinfo.h>
int
-main ()
+main (void)
{
return !*nl_langinfo(YESEXPR);
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_nl_langinfo_yesexpr_works=yes
else
gl_cv_func_nl_langinfo_yesexpr_works=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether open recognizes a trailing slash" >&5
printf %s "checking whether open recognizes a trailing slash... " >&6; }
-if ${gl_cv_func_open_slash+:} false; then :
+if test ${gl_cv_func_open_slash+y}
+then :
printf %s "(cached) " >&6
else
# Assume that if we have lstat, we can also check symlinks.
touch conftest.tmp
ln -s conftest.tmp conftest.lnk
fi
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
freebsd* | aix* | hpux* | solaris2.[0-9] | solaris2.[0-9].*)
return result;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_open_slash=yes
else
gl_cv_func_open_slash=no
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 :
+if test "x$ac_cv_have_decl_program_invocation_name" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
ac_fn_c_check_decl "$LINENO" "program_invocation_short_name" "ac_cv_have_decl_program_invocation_short_name" "#include <errno.h>
"
-if test "x$ac_cv_have_decl_program_invocation_short_name" = xyes; then :
+if test "x$ac_cv_have_decl_program_invocation_short_name" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
for ac_func in raise
do :
ac_fn_c_check_func "$LINENO" "raise" "ac_cv_func_raise"
-if test "x$ac_cv_func_raise" = xyes; then :
+if test "x$ac_cv_func_raise" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_RAISE 1
_ACEOF
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 :
+if test "x$ac_cv_func_sigprocmask" = xyes
+then :
gl_cv_func_sigprocmask=1
fi
+
+ for ac_func in rawmemchr
+do :
+ ac_fn_c_check_func "$LINENO" "rawmemchr" "ac_cv_func_rawmemchr"
+if test "x$ac_cv_func_rawmemchr" = xyes
+then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_RAWMEMCHR 1
+_ACEOF
+
+fi
+done
+
+ if test $ac_cv_func_rawmemchr = no; then
+ HAVE_RAWMEMCHR=0
+ fi
+
+ if test $HAVE_RAWMEMCHR = 0; then
+
+
+
+
+
+
+
+
+ gl_LIBOBJS="$gl_LIBOBJS rawmemchr.$ac_objext"
+
+ :
+ fi
+
+
+
+
+
+ GNULIB_RAWMEMCHR=1
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_RAWMEMCHR 1" >>confdefs.h
+
+
+
+
+
+
if test $ac_cv_func_readlink = no; then
HAVE_READLINK=0
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether readlink signature is correct" >&5
printf %s "checking whether readlink signature is correct... " >&6; }
-if ${gl_cv_decl_readlink_works+:} false; then :
+if test ${gl_cv_decl_readlink_works+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* Cause compilation failure if original declaration has wrong type. */
ssize_t readlink (const char *, char *, size_t);
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_decl_readlink_works=yes
else
gl_cv_decl_readlink_works=no
printf "%s\n" "$gl_cv_decl_readlink_works" >&6; }
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether readlink handles trailing slash correctly" >&5
printf %s "checking whether readlink handles trailing slash correctly... " >&6; }
-if ${gl_cv_func_readlink_works+:} false; then :
+if test ${gl_cv_func_readlink_works+y}
+then :
printf %s "(cached) " >&6
else
# We have readlink, so assume ln -s works.
ln -s conftest.no-such conftest.link
ln -s conftest.link conftest.lnk2
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_readlink_works="guessing yes" ;;
#include <unistd.h>
int
-main ()
+main (void)
{
char buf[20];
return readlink ("conftest.lnk2/", buf, sizeof buf) != -1;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_readlink_works=yes
else
gl_cv_func_readlink_works=no
# Check whether --with-included-regex was given.
-if test "${with_included_regex+set}" = set; then :
+if test ${with_included_regex+y}
+then :
withval=$with_included_regex;
fi
# If cross compiling, assume the test would fail and use the included
# regex.c.
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working re_compile_pattern" >&5
printf %s "checking for working re_compile_pattern... " >&6; }
-if ${gl_cv_func_re_compile_pattern_working+:} false; then :
+if test ${gl_cv_func_re_compile_pattern_working+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
gl_cv_func_re_compile_pattern_working=no
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <locale.h>
#include <limits.h>
#include <string.h>
- #if HAVE_DECL_ALARM
- # include <unistd.h>
+
+ #if defined M_CHECK_ACTION || HAVE_DECL_ALARM
# include <signal.h>
+ # include <unistd.h>
+ #endif
+
+ #if HAVE_MALLOC_H
+ # include <malloc.h>
+ #endif
+
+ #ifdef M_CHECK_ACTION
+ /* Exit with distinguishable exit code. */
+ static void sigabrt_no_core (int sig) { raise (SIGTERM); }
#endif
int
-main ()
+main (void)
{
int result = 0;
static struct re_pattern_buffer regex;
const char *s;
struct re_registers regs;
+ /* Some builds of glibc go into an infinite loop on this
+ test. Use alarm to force death, and mallopt to avoid
+ malloc recursion in diagnosing the corrupted heap. */
#if HAVE_DECL_ALARM
- /* Some builds of glibc go into an infinite loop on this test. */
signal (SIGALRM, SIG_DFL);
alarm (2);
#endif
+#ifdef M_CHECK_ACTION
+ signal (SIGABRT, sigabrt_no_core);
+ mallopt (M_CHECK_ACTION, 2);
+#endif
+
if (setlocale (LC_ALL, "en_US.UTF-8"))
{
{
0, sizeof data - 1, ®s)
!= -1)
result |= 1;
+ regfree (®ex);
}
{
*/
static char const pat[] = "[^x]x";
static char const data[] =
- "\xe1\x80\x80\xe1\x80\xbb\xe1\x80\xbd\xe1\x80\x94\xe1\x80"
- "\xba\xe1\x80\xaf\xe1\x80\x95\xe1\x80\xbax";
+ /* <U1000><U103B><U103D><U1014><U103A><U102F><U1015><U103A> */
+ "\xe1\x80\x80"
+ "\xe1\x80\xbb"
+ "\xe1\x80\xbd"
+ "\xe1\x80\x94"
+ "\xe1\x80\xba"
+ "\xe1\x80\xaf"
+ "\xe1\x80\x95"
+ "\xe1\x80\xba"
+ "x";
re_set_syntax (0);
memset (®ex, 0, sizeof regex);
s = re_compile_pattern (pat, sizeof pat - 1, ®ex);
if (s)
result |= 1;
- else if (re_search (®ex, data, sizeof data - 1,
- 0, sizeof data - 1, 0)
- != 21)
- result |= 1;
+ else
+ {
+ i = re_search (®ex, data, sizeof data - 1,
+ 0, sizeof data - 1, 0);
+ if (i != 0 && i != 21)
+ result |= 1;
+ }
+ regfree (®ex);
}
if (! setlocale (LC_ALL, "C"))
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_re_compile_pattern_working=yes
else
gl_cv_func_re_compile_pattern_working=no
+
for ac_header in libintl.h
do :
- ac_fn_c_check_header_mongrel "$LINENO" "libintl.h" "ac_cv_header_libintl_h" "$ac_includes_default"
-if test "x$ac_cv_header_libintl_h" = xyes; then :
+ ac_fn_c_check_header_compile "$LINENO" "libintl.h" "ac_cv_header_libintl_h" "$ac_includes_default"
+if test "x$ac_cv_header_libintl_h" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_LIBINTL_H 1
_ACEOF
fi
-
done
ac_fn_c_check_decl "$LINENO" "isblank" "ac_cv_have_decl_isblank" "#include <ctype.h>
"
-if test "x$ac_cv_have_decl_isblank" = xyes; then :
+if test "x$ac_cv_have_decl_isblank" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
for ac_func in __secure_getenv
do :
ac_fn_c_check_func "$LINENO" "__secure_getenv" "ac_cv_func___secure_getenv"
-if test "x$ac_cv_func___secure_getenv" = xyes; then :
+if test "x$ac_cv_func___secure_getenv" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE___SECURE_GETENV 1
_ACEOF
for ac_func in issetugid
do :
ac_fn_c_check_func "$LINENO" "issetugid" "ac_cv_func_issetugid"
-if test "x$ac_cv_func_issetugid" = xyes; then :
+if test "x$ac_cv_func_issetugid" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_ISSETUGID 1
_ACEOF
fi
+
fi
+ if test $ac_cv_func_setenv = no; then
+ HAVE_SETENV=0
+ else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether setenv validates arguments" >&5
+printf %s "checking whether setenv validates arguments... " >&6; }
+if test ${gl_cv_func_setenv_works+y}
+then :
+ printf %s "(cached) " >&6
+else
+ if test "$cross_compiling" = yes
+then :
+ case "$host_os" in
+ # Guess yes on glibc systems.
+ *-gnu*) gl_cv_func_setenv_works="guessing yes" ;;
+ # If we don't know, assume the worst.
+ *) gl_cv_func_setenv_works="guessing no" ;;
+ esac
+
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+ #include <stdlib.h>
+ #include <errno.h>
+ #include <string.h>
+
+int
+main (void)
+{
+
+ int result = 0;
+ {
+ if (setenv ("", "", 0) != -1)
+ result |= 1;
+ else if (errno != EINVAL)
+ result |= 2;
+ }
+ {
+ if (setenv ("a", "=", 1) != 0)
+ result |= 4;
+ else if (strcmp (getenv ("a"), "=") != 0)
+ result |= 8;
+ }
+ return result;
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"
+then :
+ gl_cv_func_setenv_works=yes
+else
+ gl_cv_func_setenv_works=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_setenv_works" >&5
+printf "%s\n" "$gl_cv_func_setenv_works" >&6; }
+ case "$gl_cv_func_setenv_works" in
+ *yes) ;;
+ *)
+ REPLACE_SETENV=1
+ ;;
+ esac
+ fi
+
+ if test $HAVE_SETENV = 0 || test $REPLACE_SETENV = 1; then
+
+
+
+
+
+
+
+
+ gl_LIBOBJS="$gl_LIBOBJS setenv.$ac_objext"
+
+ fi
+
+
+
+
+
+ GNULIB_SETENV=1
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_SETENV 1" >>confdefs.h
+
+
+
+
+
if test $ac_cv_func_sigaction = yes; then
ac_fn_c_check_member "$LINENO" "struct sigaction" "sa_sigaction" "ac_cv_member_struct_sigaction_sa_sigaction" "#include <signal.h>
"
-if test "x$ac_cv_member_struct_sigaction_sa_sigaction" = xyes; then :
+if test "x$ac_cv_member_struct_sigaction_sa_sigaction" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRUCT_SIGACTION_SA_SIGACTION 1
#include <signal.h>
"
-if test "x$ac_cv_type_siginfo_t" = xyes; then :
+if test "x$ac_cv_type_siginfo_t" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_SIGINFO_T 1
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <signal.h>" >&5
printf %s "checking absolute name of <signal.h>... " >&6; }
-if ${gl_cv_next_signal_h+:} false; then :
+if test ${gl_cv_next_signal_h+y}
+then :
printf %s "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <signal.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'signal.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_next_signal_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'signal.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_signal_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_signal_h
+ gl_cv_next_signal_h='"'$gl_header'"'
fi
#include <signal.h>
"
-if test "x$ac_cv_type_volatile_sig_atomic_t" = xyes; then :
+if test "x$ac_cv_type_volatile_sig_atomic_t" = xyes
+then :
else
HAVE_TYPE_VOLATILE_SIG_ATOMIC_T=0
#include <signal.h>
"
-if test "x$ac_cv_type_sighandler_t" = xyes; then :
+if test "x$ac_cv_type_sighandler_t" = xyes
+then :
else
HAVE_SIGHANDLER_T=0
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <signal.h>
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
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 :
+if test "x$ac_cv_func_sigprocmask" = xyes
+then :
gl_cv_func_sigprocmask=1
fi
for ac_header in stdint.h
do :
- ac_fn_c_check_header_mongrel "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default"
-if test "x$ac_cv_header_stdint_h" = xyes; then :
+ ac_fn_c_check_header_compile "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default"
+if test "x$ac_cv_header_stdint_h" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STDINT_H 1
_ACEOF
fi
-
done
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SIZE_MAX" >&5
printf %s "checking for SIZE_MAX... " >&6; }
-if ${gl_cv_size_max+:} false; then :
+if test ${gl_cv_size_max+y}
+then :
printf %s "(cached) " >&6
else
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "Found it" >/dev/null 2>&1; then :
+ $EGREP "Found it" >/dev/null 2>&1
+then :
gl_cv_size_max=yes
fi
rm -rf conftest*
if test -z "$gl_cv_size_max"; then
if ac_fn_c_compute_int "$LINENO" "sizeof (size_t) * CHAR_BIT - 1" "size_t_bits_minus_1" "#include <stddef.h>
-#include <limits.h>"; then :
+#include <limits.h>"
+then :
else
size_t_bits_minus_1=
fi
- if ac_fn_c_compute_int "$LINENO" "sizeof (size_t) <= sizeof (unsigned int)" "fits_in_uint" "#include <stddef.h>"; then :
+ if ac_fn_c_compute_int "$LINENO" "sizeof (size_t) <= sizeof (unsigned int)" "fits_in_uint" "#include <stddef.h>"
+then :
else
fits_in_uint=
extern unsigned long foo;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
fits_in_uint=0
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ssize_t" >&5
printf %s "checking for ssize_t... " >&6; }
-if ${gt_cv_ssize_t+:} false; then :
+if test ${gt_cv_ssize_t+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
int
-main ()
+main (void)
{
int x = sizeof (ssize_t *) + sizeof (ssize_t);
return !x;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gt_cv_ssize_t=yes
else
gt_cv_ssize_t=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stat handles trailing slashes on directories" >&5
printf %s "checking whether stat handles trailing slashes on directories... " >&6; }
-if ${gl_cv_func_stat_dir_slash+:} false; then :
+if test ${gl_cv_func_stat_dir_slash+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case $host_os in
mingw*) gl_cv_func_stat_dir_slash="guessing no";;
*) gl_cv_func_stat_dir_slash="guessing yes";;
#include <sys/stat.h>
int
-main ()
+main (void)
{
struct stat st; return stat (".", &st) != stat ("./", &st);
;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_stat_dir_slash=yes
else
gl_cv_func_stat_dir_slash=no
printf "%s\n" "$gl_cv_func_stat_dir_slash" >&6; }
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stat handles trailing slashes on files" >&5
printf %s "checking whether stat handles trailing slashes on files... " >&6; }
-if ${gl_cv_func_stat_file_slash+:} false; then :
+if test ${gl_cv_func_stat_file_slash+y}
+then :
printf %s "(cached) " >&6
else
touch conftest.tmp
if test $ac_cv_func_lstat = yes; then
ln -s conftest.tmp conftest.lnk
fi
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_stat_file_slash="guessing yes" ;;
#include <sys/stat.h>
int
-main ()
+main (void)
{
int result = 0;
struct stat st;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_stat_file_slash=yes
else
gl_cv_func_stat_file_slash=no
ac_fn_c_check_member "$LINENO" "struct stat" "st_atim.tv_nsec" "ac_cv_member_struct_stat_st_atim_tv_nsec" "#include <sys/types.h>
#include <sys/stat.h>
"
-if test "x$ac_cv_member_struct_stat_st_atim_tv_nsec" = xyes; then :
+if test "x$ac_cv_member_struct_stat_st_atim_tv_nsec" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC 1
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether struct stat.st_atim is of type struct timespec" >&5
printf %s "checking whether struct stat.st_atim is of type struct timespec... " >&6; }
-if ${ac_cv_typeof_struct_stat_st_atim_is_struct_timespec+:} false; then :
+if test ${ac_cv_typeof_struct_stat_st_atim_is_struct_timespec+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
struct stat st;
int
-main ()
+main (void)
{
st.st_atim = ts;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=yes
else
ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=no
ac_fn_c_check_member "$LINENO" "struct stat" "st_atimespec.tv_nsec" "ac_cv_member_struct_stat_st_atimespec_tv_nsec" "#include <sys/types.h>
#include <sys/stat.h>
"
-if test "x$ac_cv_member_struct_stat_st_atimespec_tv_nsec" = xyes; then :
+if test "x$ac_cv_member_struct_stat_st_atimespec_tv_nsec" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC 1
ac_fn_c_check_member "$LINENO" "struct stat" "st_atimensec" "ac_cv_member_struct_stat_st_atimensec" "#include <sys/types.h>
#include <sys/stat.h>
"
-if test "x$ac_cv_member_struct_stat_st_atimensec" = xyes; then :
+if test "x$ac_cv_member_struct_stat_st_atimensec" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRUCT_STAT_ST_ATIMENSEC 1
ac_fn_c_check_member "$LINENO" "struct stat" "st_atim.st__tim.tv_nsec" "ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec" "#include <sys/types.h>
#include <sys/stat.h>
"
-if test "x$ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec" = xyes; then :
+if test "x$ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC 1
ac_fn_c_check_member "$LINENO" "struct stat" "st_birthtimespec.tv_nsec" "ac_cv_member_struct_stat_st_birthtimespec_tv_nsec" "#include <sys/types.h>
#include <sys/stat.h>
"
-if test "x$ac_cv_member_struct_stat_st_birthtimespec_tv_nsec" = xyes; then :
+if test "x$ac_cv_member_struct_stat_st_birthtimespec_tv_nsec" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC 1
ac_fn_c_check_member "$LINENO" "struct stat" "st_birthtimensec" "ac_cv_member_struct_stat_st_birthtimensec" "#include <sys/types.h>
#include <sys/stat.h>
"
-if test "x$ac_cv_member_struct_stat_st_birthtimensec" = xyes; then :
+if test "x$ac_cv_member_struct_stat_st_birthtimensec" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC 1
ac_fn_c_check_member "$LINENO" "struct stat" "st_birthtim.tv_nsec" "ac_cv_member_struct_stat_st_birthtim_tv_nsec" "#include <sys/types.h>
#include <sys/stat.h>
"
-if test "x$ac_cv_member_struct_stat_st_birthtim_tv_nsec" = xyes; then :
+if test "x$ac_cv_member_struct_stat_st_birthtim_tv_nsec" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC 1
NEXT_STDARG_H='<stdarg.h>'
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for va_copy" >&5
printf %s "checking for va_copy... " >&6; }
- if ${gl_cv_func_va_copy+:} false; then :
+ if test ${gl_cv_func_va_copy+y}
+then :
printf %s "(cached) " >&6
else
/* end confdefs.h. */
#include <stdarg.h>
int
-main ()
+main (void)
{
#ifndef va_copy
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_func_va_copy=yes
else
gl_cv_func_va_copy=no
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "vaccine" >/dev/null 2>&1; then :
+ $EGREP "vaccine" >/dev/null 2>&1
+then :
gl_aixcc=yes
else
gl_aixcc=no
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <stdarg.h>" >&5
printf %s "checking absolute name of <stdarg.h>... " >&6; }
-if ${gl_cv_next_stdarg_h+:} false; then :
+if test ${gl_cv_next_stdarg_h+y}
+then :
printf %s "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdarg.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'stdarg.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_next_stdarg_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'stdarg.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_stdarg_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_stdarg_h
+ gl_cv_next_stdarg_h='"'$gl_header'"'
fi
saved_as_echo_n="$as_echo_n"
as_echo_n=':'
- if ${gl_cv_func___va_copy+:} false; then :
+ if test ${gl_cv_func___va_copy+y}
+then :
printf %s "(cached) " >&6
else
/* end confdefs.h. */
#include <stdarg.h>
int
-main ()
+main (void)
{
#ifndef __va_copy
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_func___va_copy=yes
else
gl_cv_func___va_copy=no
STDDEF_H=
+ ac_fn_c_check_type "$LINENO" "max_align_t" "ac_cv_type_max_align_t" "#include <stddef.h>
+
+"
+if test "x$ac_cv_type_max_align_t" = xyes
+then :
+
+else
+ HAVE_MAX_ALIGN_T=0; STDDEF_H=stddef.h
+fi
+
if test $gt_cv_c_wchar_t = no; then
HAVE_WCHAR_T=0
STDDEF_H=stddef.h
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether NULL can be used in arbitrary expressions" >&5
printf %s "checking whether NULL can be used in arbitrary expressions... " >&6; }
-if ${gl_cv_decl_null_works+:} false; then :
+if test ${gl_cv_decl_null_works+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
int test[2 * (sizeof NULL == sizeof (void *)) -1];
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_decl_null_works=yes
else
gl_cv_decl_null_works=no
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <stddef.h>" >&5
printf %s "checking absolute name of <stddef.h>... " >&6; }
-if ${gl_cv_next_stddef_h+:} false; then :
+if test ${gl_cv_next_stddef_h+y}
+then :
printf %s "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stddef.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'stddef.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_next_stddef_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'stddef.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_stddef_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_stddef_h
+ gl_cv_next_stddef_h='"'$gl_header'"'
fi
+
+
if test $gl_cv_have_include_next = yes; then
gl_cv_next_stdio_h='<'stdio.h'>'
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <stdio.h>" >&5
printf %s "checking absolute name of <stdio.h>... " >&6; }
-if ${gl_cv_next_stdio_h+:} false; then :
+if test ${gl_cv_next_stdio_h+y}
+then :
printf %s "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdio.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'stdio.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_next_stdio_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'stdio.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_stdio_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_stdio_h
+ gl_cv_next_stdio_h='"'$gl_header'"'
fi
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking which flavor of printf attribute matches inttypes macros" >&5
+printf %s "checking which flavor of printf attribute matches inttypes macros... " >&6; }
+if test ${gl_cv_func_printf_attribute_flavor+y}
+then :
+ printf %s "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+ #define __STDC_FORMAT_MACROS 1
+ #include <stdio.h>
+ #include <inttypes.h>
+ /* For non-mingw systems, compilation will trivially succeed.
+ For mingw, compilation will succeed for older mingw (system
+ printf, "I64d") and fail for newer mingw (gnu printf, "lld"). */
+ #if ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__) && \
+ (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4))
+ extern char PRIdMAX_probe[sizeof PRIdMAX == sizeof "I64d" ? 1 : -1];
+ #endif
+
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_func_printf_attribute_flavor=system
+else
+ gl_cv_func_printf_attribute_flavor=gnu
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_printf_attribute_flavor" >&5
+printf "%s\n" "$gl_cv_func_printf_attribute_flavor" >&6; }
+ if test "$gl_cv_func_printf_attribute_flavor" = gnu; then
+
+printf "%s\n" "#define GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU 1" >>confdefs.h
+
+ fi
+
GNULIB_FSCANF=1
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <stdio.h>
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <stdlib.h>" >&5
printf %s "checking absolute name of <stdlib.h>... " >&6; }
-if ${gl_cv_next_stdlib_h+:} false; then :
+if test ${gl_cv_next_stdlib_h+y}
+then :
printf %s "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdlib.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'stdlib.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_next_stdlib_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'stdlib.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_stdlib_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_stdlib_h
+ gl_cv_next_stdlib_h='"'$gl_header'"'
fi
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
for ac_func in strcasecmp
do :
ac_fn_c_check_func "$LINENO" "strcasecmp" "ac_cv_func_strcasecmp"
-if test "x$ac_cv_func_strcasecmp" = xyes; then :
+if test "x$ac_cv_func_strcasecmp" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRCASECMP 1
_ACEOF
for ac_func in strncasecmp
do :
ac_fn_c_check_func "$LINENO" "strncasecmp" "ac_cv_func_strncasecmp"
-if test "x$ac_cv_func_strncasecmp" = xyes; then :
+if test "x$ac_cv_func_strncasecmp" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRNCASECMP 1
_ACEOF
HAVE_STRNCASECMP=0
fi
ac_fn_c_check_decl "$LINENO" "strncasecmp" "ac_cv_have_decl_strncasecmp" "$ac_includes_default"
-if test "x$ac_cv_have_decl_strncasecmp" = xyes; then :
+if test "x$ac_cv_have_decl_strncasecmp" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
+
+
if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working strerror function" >&5
printf %s "checking for working strerror function... " >&6; }
-if ${gl_cv_func_working_strerror+:} false; then :
+if test ${gl_cv_func_working_strerror+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_working_strerror="guessing yes" ;;
#include <string.h>
int
-main ()
+main (void)
{
if (!*strerror (-2)) return 1;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_working_strerror=yes
else
gl_cv_func_working_strerror=no
;;
esac
+ case "$gl_cv_func_strerror_r_works" in
+ *no) REPLACE_STRERROR=1 ;;
+ esac
+
else
REPLACE_STRERROR=1
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 :
+ ac_fn_c_check_header_compile "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default"
+if test "x$ac_cv_header_winsock2_h" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_WINSOCK2_H 1
_ACEOF
fi
-
done
fi
# AIX 4.3.3, AIX 5.1 have a function that fails to add the terminating '\0'.
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working strndup" >&5
printf %s "checking for working strndup... " >&6; }
-if ${gl_cv_func_strndup_works+:} false; then :
+if test ${gl_cv_func_strndup_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case $host_os in
aix | aix[3-6]*) gl_cv_func_strndup_works="guessing no";;
#include <string.h>
#include <stdlib.h>
int
-main ()
+main (void)
{
#if !HAVE_DECL_STRNDUP
#endif
char *strndup (const char *, size_t);
#endif
+ int result;
char *s;
s = strndup ("some longer string", 15);
free (s);
s = strndup ("shorter string", 13);
- return s[13] != '\0';
+ result = s[13] != '\0';
+ free (s);
+ return result;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_strndup_works=yes
else
gl_cv_func_strndup_works=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working strnlen" >&5
printf %s "checking for working strnlen... " >&6; }
-if ${ac_cv_func_strnlen_working+:} false; then :
+if test ${ac_cv_func_strnlen_working+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
# Guess no on AIX systems, yes otherwise.
case "$host_os" in
aix*) ac_cv_func_strnlen_working=no;;
/* end confdefs.h. */
$ac_includes_default
int
-main ()
+main (void)
{
#define S "foobar"
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
ac_cv_func_strnlen_working=yes
else
ac_cv_func_strnlen_working=no
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 :
+if test "x$ac_cv_func_strtoull" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRTOULL 1
_ACEOF
- if test "$ac_cv_have_decl_strtoumax" != yes; then
+ if test "$ac_cv_have_decl_strtoumax" = yes; then
+ if test "$ac_cv_func_strtoumax" != yes; then
+ # HP-UX 11.11 has "#define strtoimax(...) ..." but no function.
+ REPLACE_STRTOUMAX=1
+ fi
+ else
HAVE_DECL_STRTOUMAX=0
fi
- if test $ac_cv_func_strtoumax = no; then
+ if test $HAVE_DECL_STRTOUMAX = 0 || test $REPLACE_STRTOUMAX = 1; then
ac_fn_c_check_decl "$LINENO" "strtoull" "ac_cv_have_decl_strtoull" "$ac_includes_default"
-if test "x$ac_cv_have_decl_strtoull" = xyes; then :
+if test "x$ac_cv_have_decl_strtoull" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/stat.h>" >&5
printf %s "checking absolute name of <sys/stat.h>... " >&6; }
-if ${gl_cv_next_sys_stat_h+:} false; then :
+if test ${gl_cv_next_sys_stat_h+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_header_sys_stat_h = yes; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/stat.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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/stat.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_next_sys_stat_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ 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/stat.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_stat_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_sys_stat_h
+ gl_cv_next_sys_stat_h='"'$gl_header'"'
else
gl_cv_next_sys_stat_h='<'sys/stat.h'>'
fi
ac_fn_c_check_type "$LINENO" "nlink_t" "ac_cv_type_nlink_t" "#include <sys/types.h>
#include <sys/stat.h>
"
-if test "x$ac_cv_type_nlink_t" = xyes; then :
+if test "x$ac_cv_type_nlink_t" = xyes
+then :
else
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <sys/stat.h>
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/wait.h>" >&5
printf %s "checking absolute name of <sys/wait.h>... " >&6; }
-if ${gl_cv_next_sys_wait_h+:} false; then :
+if test ${gl_cv_next_sys_wait_h+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_header_sys_wait_h = yes; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/wait.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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/wait.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_next_sys_wait_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ 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/wait.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_wait_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_sys_wait_h
+ gl_cv_next_sys_wait_h='"'$gl_header'"'
else
gl_cv_next_sys_wait_h='<'sys/wait.h'>'
fi
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/wait.h>
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
ac_fn_c_check_decl "$LINENO" "localtime_r" "ac_cv_have_decl_localtime_r" "#include <time.h>
"
-if test "x$ac_cv_have_decl_localtime_r" = xyes; then :
+if test "x$ac_cv_have_decl_localtime_r" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
HAVE_LOCALTIME_R=1
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether localtime_r is compatible with its POSIX signature" >&5
printf %s "checking whether localtime_r is compatible with its POSIX signature... " >&6; }
-if ${gl_cv_time_r_posix+:} false; then :
+if test ${gl_cv_time_r_posix+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <time.h>
int
-main ()
+main (void)
{
/* We don't need to append 'restrict's to the argument types,
even though the POSIX signature has the 'restrict's,
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_time_r_posix=yes
else
gl_cv_time_r_posix=no
+
+
+
+
+
+
+ ac_fn_c_check_type "$LINENO" "timezone_t" "ac_cv_type_timezone_t" "#include <time.h>
+"
+if test "x$ac_cv_type_timezone_t" = xyes
+then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_TIMEZONE_T 1
+_ACEOF
+
+
+fi
+
+ if test "$ac_cv_type_timezone_t" = yes; then
+ HAVE_TIMEZONE_T=1
+ fi
+
+ if test "$HAVE_TIMEZONE_T" = 0; then
+
+
+
+
+
+
+
+
+ gl_LIBOBJS="$gl_LIBOBJS time_rz.$ac_objext"
+
+ fi
+
+
+
+
+
+ GNULIB_TIME_RZ=1
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_TIME_RZ 1" >>confdefs.h
+
+
+
+
+
+
+ REPLACE_TIMEGM=0
+
+ if test $ac_cv_func_timegm = yes; then
+ if test $gl_cv_func_working_mktime = no; then
+ # Assume that timegm is buggy if mktime is.
+ REPLACE_TIMEGM=1
+ fi
+ else
+ HAVE_TIMEGM=0
+ fi
+
+ if test $HAVE_TIMEGM = 0 || test $REPLACE_TIMEGM = 1; then
+
+
+
+
+
+
+
+
+ gl_LIBOBJS="$gl_LIBOBJS timegm.$ac_objext"
+
+
+ :
+
+ fi
+
+
+
+
+
+ GNULIB_TIMEGM=1
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_TIMEGM 1" >>confdefs.h
+
+
+
:
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <unistd.h>" >&5
printf %s "checking absolute name of <unistd.h>... " >&6; }
-if ${gl_cv_next_unistd_h+:} false; then :
+if test ${gl_cv_next_unistd_h+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_header_unistd_h = yes; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <unistd.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'unistd.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_next_unistd_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'unistd.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_unistd_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_unistd_h
+ gl_cv_next_unistd_h='"'$gl_header'"'
else
gl_cv_next_unistd_h='<'unistd.h'>'
fi
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
|| { test $LIBUNISTRING_VERSION_MAJOR -eq 0 \
&& { test $LIBUNISTRING_VERSION_MINOR -lt 9 \
|| { test $LIBUNISTRING_VERSION_MINOR -eq 9 \
- && test $LIBUNISTRING_VERSION_SUBMINOR -lt 2
+ && test $LIBUNISTRING_VERSION_SUBMINOR -lt 4
}
}
}
|| { test $LIBUNISTRING_VERSION_MAJOR -eq 0 \
&& { test $LIBUNISTRING_VERSION_MINOR -lt 9 \
|| { test $LIBUNISTRING_VERSION_MINOR -eq 9 \
- && test $LIBUNISTRING_VERSION_SUBMINOR -lt 0
+ && test $LIBUNISTRING_VERSION_SUBMINOR -lt 4
}
}
}
|| { test $LIBUNISTRING_VERSION_MAJOR -eq 0 \
&& { test $LIBUNISTRING_VERSION_MINOR -lt 9 \
|| { test $LIBUNISTRING_VERSION_MINOR -eq 9 \
- && test $LIBUNISTRING_VERSION_SUBMINOR -lt 0
+ && test $LIBUNISTRING_VERSION_SUBMINOR -lt 4
}
}
}
|| { test $LIBUNISTRING_VERSION_MAJOR -eq 0 \
&& { test $LIBUNISTRING_VERSION_MINOR -lt 9 \
|| { test $LIBUNISTRING_VERSION_MINOR -eq 9 \
- && test $LIBUNISTRING_VERSION_SUBMINOR -lt 4
+ && test $LIBUNISTRING_VERSION_SUBMINOR -lt 6
}
}
}
+
+
+ if test $ac_cv_have_decl_unsetenv = no; then
+ HAVE_DECL_UNSETENV=0
+ fi
+ for ac_func in unsetenv
+do :
+ ac_fn_c_check_func "$LINENO" "unsetenv" "ac_cv_func_unsetenv"
+if test "x$ac_cv_func_unsetenv" = xyes
+then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_UNSETENV 1
+_ACEOF
+
+fi
+done
+
+ if test $ac_cv_func_unsetenv = no; then
+ HAVE_UNSETENV=0
+ else
+ HAVE_UNSETENV=1
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for unsetenv() return type" >&5
+printf %s "checking for unsetenv() return type... " >&6; }
+if test ${gt_cv_func_unsetenv_ret+y}
+then :
+ printf %s "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#undef _BSD
+#define _BSD 1 /* unhide unsetenv declaration in OSF/1 5.1 <stdlib.h> */
+#include <stdlib.h>
+extern
+#ifdef __cplusplus
+"C"
+#endif
+int unsetenv (const char *name);
+
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gt_cv_func_unsetenv_ret='int'
+else
+ gt_cv_func_unsetenv_ret='void'
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_unsetenv_ret" >&5
+printf "%s\n" "$gt_cv_func_unsetenv_ret" >&6; }
+ if test $gt_cv_func_unsetenv_ret = 'void'; then
+
+printf "%s\n" "#define VOID_UNSETENV 1" >>confdefs.h
+
+ REPLACE_UNSETENV=1
+ fi
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether unsetenv obeys POSIX" >&5
+printf %s "checking whether unsetenv obeys POSIX... " >&6; }
+if test ${gl_cv_func_unsetenv_works+y}
+then :
+ printf %s "(cached) " >&6
+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
+
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+ #include <stdlib.h>
+ #include <errno.h>
+ extern char **environ;
+
+int
+main (void)
+{
+
+ 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;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"
+then :
+ gl_cv_func_unsetenv_works=yes
+else
+ gl_cv_func_unsetenv_works=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_unsetenv_works" >&5
+printf "%s\n" "$gl_cv_func_unsetenv_works" >&6; }
+ case "$gl_cv_func_unsetenv_works" in
+ *yes) ;;
+ *)
+ REPLACE_UNSETENV=1
+ ;;
+ esac
+ fi
+
+ if test $HAVE_UNSETENV = 0 || test $REPLACE_UNSETENV = 1; then
+
+
+
+
+
+
+
+
+ gl_LIBOBJS="$gl_LIBOBJS unsetenv.$ac_objext"
+
+
+
+
+
+ fi
+
+
+
+
+
+ GNULIB_UNSETENV=1
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_UNSETENV 1" >>confdefs.h
+
+
+
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for variable-length arrays" >&5
printf %s "checking for variable-length arrays... " >&6; }
-if ${ac_cv_c_vararrays+:} false; then :
+if test ${ac_cv_c_vararrays+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
+#ifdef __STDC_NO_VLA__
+ defined
+ #endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "defined" >/dev/null 2>&1
+then :
+ ac_cv_c_vararrays='no: __STDC_NO_VLA__ is defined'
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Test for VLA support. This test is partly inspired
+ from examples in the C standard. Use at least two VLA
+ functions to detect the GCC 3.4.3 bug described in:
+ http://lists.gnu.org/archive/html/bug-gnulib/2014-08/msg00014.html
+ */
+ #ifdef __STDC_NO_VLA__
+ syntax error;
+ #else
+ extern int n;
+ int B[100];
+ int fvla (int m, int C[m][m]);
+
+ int
+ simple (int count, int all[static count])
+ {
+ return all[count - 1];
+ }
+
+ int
+ fvla (int m, int C[m][m])
+ {
+ typedef int VLA[m][m];
+ VLA x;
+ int D[m];
+ static int (*q)[m] = &B;
+ int (*s)[n] = q;
+ return C && &x[0][0] == &D[0] && &D[0] == s[0];
+ }
+ #endif
int
-main ()
+main (void)
{
-static int x; char a[++x]; a[sizeof a - 1] = 0; return a[0];
+
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_c_vararrays=yes
else
ac_cv_c_vararrays=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
+rm -rf conftest*
+
+fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_vararrays" >&5
printf "%s\n" "$ac_cv_c_vararrays" >&6; }
- if test $ac_cv_c_vararrays = yes; then
+ if test "$ac_cv_c_vararrays" = yes; then
printf "%s\n" "#define HAVE_C_VARARRAYS 1" >>confdefs.h
+ elif test "$ac_cv_c_vararrays" = no; then
+
+printf "%s\n" "#define __STDC_NO_VLA__ 1" >>confdefs.h
+
fi
ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default"
-if test "x$ac_cv_type_ptrdiff_t" = xyes; then :
+if test "x$ac_cv_type_ptrdiff_t" = xyes
+then :
else
for ac_func in vasprintf
do :
ac_fn_c_check_func "$LINENO" "vasprintf" "ac_cv_func_vasprintf"
-if test "x$ac_cv_func_vasprintf" = xyes; then :
+if test "x$ac_cv_func_vasprintf" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_VASPRINTF 1
_ACEOF
# Check whether --with-packager was given.
-if test "${with_packager+set}" = set; then :
+if test ${with_packager+y}
+then :
withval=$with_packager; case $withval in
yes|no) ;;
*)
# Check whether --with-packager-version was given.
-if test "${with_packager_version+set}" = set; then :
+if test ${with_packager_version+y}
+then :
withval=$with_packager_version; case $withval in
yes|no) ;;
*)
# Check whether --with-packager-bug-reports was given.
-if test "${with_packager_bug_reports+set}" = set; then :
+if test ${with_packager_bug_reports+y}
+then :
withval=$with_packager_bug_reports; case $withval in
yes|no) ;;
*)
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <wchar.h>" >&5
printf %s "checking absolute name of <wchar.h>... " >&6; }
-if ${gl_cv_next_wchar_h+:} false; then :
+if test ${gl_cv_next_wchar_h+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_header_wchar_h = yes; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <wchar.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ case "$host_os" in
+ aix*) gl_absname_cpp="$ac_cpp -C" ;;
+ *) gl_absname_cpp="$ac_cpp" ;;
+ esac
- case "$host_os" in
- mingw*)
- gl_dirsep_regex='[/\\]'
- ;;
- *)
- gl_dirsep_regex='\/'
- ;;
- esac
- gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
-
- gl_header_literal_regex=`echo 'wchar.h' \
- | sed -e "$gl_make_literal_regex_sed"`
- gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{
- s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/
- s|^/[^/]|//&|
- p
- q
- }'
- gl_cv_next_wchar_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'wchar.h' \
+ | sed -e "$gl_make_literal_regex_sed"`
+ gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{
+ s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/
+ s|^/[^/]|//&|
+ p
+ q
+ }'
+
+ gl_cv_absolute_wchar_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_wchar_h
+ gl_cv_next_wchar_h='"'$gl_header'"'
else
gl_cv_next_wchar_h='<'wchar.h'>'
fi
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <wchar.h>
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles incomplete characters" >&5
printf %s "checking whether mbrtowc handles incomplete characters... " >&6; }
-if ${gl_cv_func_mbrtowc_incomplete_state+:} false; then :
+if test ${gl_cv_func_mbrtowc_incomplete_state+y}
+then :
printf %s "(cached) " >&6
else
*) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;;
esac
if test $LOCALE_JA != none; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_mbrtowc_incomplete_state=yes
else
gl_cv_func_mbrtowc_incomplete_state=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works as well as mbtowc" >&5
printf %s "checking whether mbrtowc works as well as mbtowc... " >&6; }
-if ${gl_cv_func_mbrtowc_sanitycheck+:} false; then :
+if test ${gl_cv_func_mbrtowc_sanitycheck+y}
+then :
printf %s "(cached) " >&6
else
*) gl_cv_func_mbrtowc_sanitycheck="guessing yes" ;;
esac
if test $LOCALE_ZH_CN != none; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_mbrtowc_sanitycheck=yes
else
gl_cv_func_mbrtowc_sanitycheck=no
#include <wchar.h>
"
-if test "x$ac_cv_have_decl_wcrtomb" = xyes; then :
+if test "x$ac_cv_have_decl_wcrtomb" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether wcrtomb return value is correct" >&5
printf %s "checking whether wcrtomb return value is correct... " >&6; }
-if ${gl_cv_func_wcrtomb_retval+:} false; then :
+if test ${gl_cv_func_wcrtomb_retval+y}
+then :
printf %s "(cached) " >&6
else
*) 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 :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return result;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_wcrtomb_retval=yes
else
gl_cv_func_wcrtomb_retval=no
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <wctype.h>" >&5
printf %s "checking absolute name of <wctype.h>... " >&6; }
-if ${gl_cv_next_wctype_h+:} false; then :
+if test ${gl_cv_next_wctype_h+y}
+then :
printf %s "(cached) " >&6
else
if test $ac_cv_header_wctype_h = yes; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <wctype.h>
-
_ACEOF
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
+ 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 'wctype.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_next_wctype_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
- sed -n "$gl_absolute_header_sed"`'"'
+ case "$host_os" in
+ mingw*)
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo 'wctype.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_wctype_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_wctype_h
+ gl_cv_next_wctype_h='"'$gl_header'"'
else
gl_cv_next_wctype_h='<'wctype.h'>'
fi
if test $ac_cv_func_iswcntrl = yes; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether iswcntrl works" >&5
printf %s "checking whether iswcntrl works... " >&6; }
-if ${gl_cv_func_iswcntrl_works+:} false; then :
+if test ${gl_cv_func_iswcntrl_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdlib.h>
Linux libc5 i18n is broken.
#endif
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_func_iswcntrl_works="guessing yes"
else
gl_cv_func_iswcntrl_works="guessing no"
int main () { return iswprint ('x') == 0; }
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_iswcntrl_works=yes
else
gl_cv_func_iswcntrl_works=no
for ac_func in towlower
do :
ac_fn_c_check_func "$LINENO" "towlower" "ac_cv_func_towlower"
-if test "x$ac_cv_func_towlower" = xyes; then :
+if test "x$ac_cv_func_towlower" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_TOWLOWER 1
_ACEOF
#endif
"
-if test "x$ac_cv_have_decl_towlower" = xyes; then :
+if test "x$ac_cv_have_decl_towlower" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wctype_t" >&5
printf %s "checking for wctype_t... " >&6; }
-if ${gl_cv_type_wctype_t+:} false; then :
+if test ${gl_cv_type_wctype_t+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
wctype_t a;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_type_wctype_t=yes
else
gl_cv_type_wctype_t=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wctrans_t" >&5
printf %s "checking for wctrans_t... " >&6; }
-if ${gl_cv_type_wctrans_t+:} false; then :
+if test ${gl_cv_type_wctrans_t+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
wctrans_t a;
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_type_wctrans_t=yes
else
gl_cv_type_wctrans_t=no
as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
printf %s "checking whether $gl_func is declared without a macro... " >&6; }
-if eval \${$as_gl_Symbol+:} false; then :
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <wctype.h>
int
-main ()
+main (void)
{
#undef $gl_func
(void) $gl_func;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_gl_Symbol=yes"
else
eval "$as_gl_Symbol=no"
eval ac_res=\$$as_gl_Symbol
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
- if eval test \"x\$"$as_gl_Symbol"\" = x"yes"; then :
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
_ACEOF
#include <wchar.h>
"
-if test "x$ac_cv_have_decl_wcwidth" = xyes; then :
+if test "x$ac_cv_have_decl_wcwidth" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
if test $ac_cv_func_wcwidth = yes; then
HAVE_WCWIDTH=1
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether wcwidth works reasonably in UTF-8 locales" >&5
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether wcwidth works reasonably in UTF-8 locales" >&5
printf %s "checking whether wcwidth works reasonably in UTF-8 locales... " >&6; }
-if ${gl_cv_func_wcwidth_works+:} false; then :
+if test ${gl_cv_func_wcwidth_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess yes on glibc and AIX 7 systems.
result |= 2;
if (wcwidth (0x200B) > 0)
result |= 4;
+ if (wcwidth (0xFF1A) == 0)
+ result |= 8;
}
return result;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_wcwidth_works=yes
else
gl_cv_func_wcwidth_works=no
for ac_header in stdint.h
do :
- ac_fn_c_check_header_mongrel "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default"
-if test "x$ac_cv_header_stdint_h" = xyes; then :
+ ac_fn_c_check_header_compile "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default"
+if test "x$ac_cv_header_stdint_h" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STDINT_H 1
_ACEOF
fi
-
done
- :
+ :
+
+ :
+
+
+ XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=xasprintf:1:c-format"
+
+ # End of code from modules
+
+
+
+
+
+
+
+
+
+ gltests_libdeps=
+ gltests_ltlibdeps=
+
+
+
+
+
+
+
+
+
+ gl_source_base='gnulib-tests'
+ gltests_WITNESS=IN_`echo "${PACKAGE-$PACKAGE_TARNAME}" | LC_ALL=C tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ | LC_ALL=C sed -e 's/[^A-Z0-9_]/_/g'`_GNULIB_TESTS
+
+ gl_module_indicator_condition=$gltests_WITNESS
+
+
+ if test "$ac_cv_header_winsock2_h" = yes; then
+
+
+
+
+
+
+
+
+ gltests_LIBOBJS="$gltests_LIBOBJS accept.$ac_objext"
+
+ fi
+
+
+
+
+
+ if test "$GNULIB_ACCEPT" != 1; then
+ if test "$GNULIB_ACCEPT" = 0; then
+ GNULIB_ACCEPT=$gl_module_indicator_condition
+ else
+ GNULIB_ACCEPT="($GNULIB_ACCEPT || $gl_module_indicator_condition)"
+ fi
+ fi
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_ACCEPT 1" >>confdefs.h
+
+
+
+
+
+
+
+ if test $ac_cv_header_arpa_inet_h = yes; then
+ HAVE_ARPA_INET_H=1
+ else
+ HAVE_ARPA_INET_H=0
+ fi
+
+
+
+
+
+
+
+
+
+
+ if test $gl_cv_have_include_next = yes; then
+ gl_cv_next_arpa_inet_h='<'arpa/inet.h'>'
+ else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <arpa/inet.h>" >&5
+printf %s "checking absolute name of <arpa/inet.h>... " >&6; }
+if test ${gl_cv_next_arpa_inet_h+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ if test $ac_cv_header_arpa_inet_h = yes; then
+
+
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <arpa/inet.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 'arpa/inet.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_arpa_inet_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_arpa_inet_h
+ gl_cv_next_arpa_inet_h='"'$gl_header'"'
+ else
+ gl_cv_next_arpa_inet_h='<'arpa/inet.h'>'
+ fi
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_arpa_inet_h" >&5
+printf "%s\n" "$gl_cv_next_arpa_inet_h" >&6; }
+ fi
+ NEXT_ARPA_INET_H=$gl_cv_next_arpa_inet_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='<'arpa/inet.h'>'
+ else
+ # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
+ gl_next_as_first_directive=$gl_cv_next_arpa_inet_h
+ fi
+ NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H=$gl_next_as_first_directive
+
+
+
+
+
+
+
+
+ for gl_func in inet_ntop inet_pton; do
+ as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
+printf %s "checking whether $gl_func is declared without a macro... " >&6; }
+if eval test \${$as_gl_Symbol+y}
+then :
+ printf %s "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* On some systems, this header is not self-consistent. */
+#if !(defined __GLIBC__ || defined __UCLIBC__)
+# include <sys/socket.h>
+#endif
+#ifdef __TANDEM
+# include <netdb.h>
+#endif
+#include <arpa/inet.h>
+
+int
+main (void)
+{
+#undef $gl_func
+ (void) $gl_func;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ eval "$as_gl_Symbol=yes"
+else
+ eval "$as_gl_Symbol=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$as_gl_Symbol
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
+ cat >>confdefs.h <<_ACEOF
+#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
+_ACEOF
+
+ eval ac_cv_have_decl_$gl_func=yes
+fi
+ done
+
+
- :
+ if test "$ac_cv_header_winsock2_h" = yes; then
- XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=xasprintf:1:c-format"
- # End of code from modules
+ gltests_LIBOBJS="$gltests_LIBOBJS bind.$ac_objext"
+ fi
- gltests_libdeps=
- gltests_ltlibdeps=
+ if test "$GNULIB_BIND" != 1; then
+ if test "$GNULIB_BIND" = 0; then
+ GNULIB_BIND=$gl_module_indicator_condition
+ else
+ GNULIB_BIND="($GNULIB_BIND || $gl_module_indicator_condition)"
+ fi
+ fi
+printf "%s\n" "#define GNULIB_TEST_BIND 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
- gl_module_indicator_condition=$gltests_WITNESS
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5
printf %s "checking for a traditional french locale... " >&6; }
-if ${gt_cv_locale_fr+:} false; then :
+if test ${gt_cv_locale_fr+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5
printf %s "checking for a french Unicode locale... " >&6; }
-if ${gt_cv_locale_fr_utf8+:} false; then :
+if test ${gt_cv_locale_fr_utf8+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5
printf %s "checking for a traditional french locale... " >&6; }
-if ${gt_cv_locale_fr+:} false; then :
+if test ${gt_cv_locale_fr+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a turkish Unicode locale" >&5
printf %s "checking for a turkish Unicode locale... " >&6; }
-if ${gt_cv_locale_tr_utf8+:} false; then :
+if test ${gt_cv_locale_tr_utf8+y}
+then :
printf %s "(cached) " >&6
else
+ if test "$ac_cv_header_winsock2_h" = yes; then
+
+
+
+
+
+
+
+
+ gltests_LIBOBJS="$gltests_LIBOBJS connect.$ac_objext"
+
+ fi
- if test "$GNULIB_ENVIRON" != 1; then
- if test "$GNULIB_ENVIRON" = 0; then
- GNULIB_ENVIRON=$gl_module_indicator_condition
+ if test "$GNULIB_CONNECT" != 1; then
+ if test "$GNULIB_CONNECT" = 0; then
+ GNULIB_CONNECT=$gl_module_indicator_condition
else
- GNULIB_ENVIRON="($GNULIB_ENVIRON || $gl_module_indicator_condition)"
+ GNULIB_CONNECT="($GNULIB_CONNECT || $gl_module_indicator_condition)"
fi
fi
-printf "%s\n" "#define GNULIB_TEST_ENVIRON 1" >>confdefs.h
+printf "%s\n" "#define GNULIB_TEST_CONNECT 1" >>confdefs.h
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether fdopen sets errno" >&5
printf %s "checking whether fdopen sets errno... " >&6; }
-if ${gl_cv_func_fdopen_works+:} false; then :
+if test ${gl_cv_func_fdopen_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
mingw*) gl_cv_func_fdopen_works="guessing no" ;;
*) gl_cv_func_fdopen_works="guessing yes" ;;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_fdopen_works=yes
else
gl_cv_func_fdopen_works=no
+ if test $ac_cv_func_ftruncate = yes; then
+
+
+ case "$host_os" in
+ mingw*)
+ REPLACE_FTRUNCATE=1
+ ;;
+ esac
+
+ else
+ HAVE_FTRUNCATE=0
+ fi
+
+ if test $HAVE_FTRUNCATE = 0 || test $REPLACE_FTRUNCATE = 1; then
+
+
+
+
+
+
+
+
+ gltests_LIBOBJS="$gltests_LIBOBJS ftruncate.$ac_objext"
+
+
+ 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 :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_CHSIZE 1
+_ACEOF
+
+fi
+done
+
+
+ fi
+
+
+
+
+
+ if test "$GNULIB_FTRUNCATE" != 1; then
+ if test "$GNULIB_FTRUNCATE" = 0; then
+ GNULIB_FTRUNCATE=$gl_module_indicator_condition
+ else
+ GNULIB_FTRUNCATE="($GNULIB_FTRUNCATE || $gl_module_indicator_condition)"
+ fi
+ fi
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_FTRUNCATE 1" >>confdefs.h
+
+
+
+
+
+
case $gl_cv_func_getcwd_null,$gl_cv_func_getcwd_posix_signature in
for ac_func in getpagesize
do :
ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize"
-if test "x$ac_cv_func_getpagesize" = xyes; then :
+if test "x$ac_cv_func_getpagesize" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_GETPAGESIZE 1
_ACEOF
HAVE_GETPAGESIZE=0
for ac_header in OS.h
do :
- ac_fn_c_check_header_mongrel "$LINENO" "OS.h" "ac_cv_header_OS_h" "$ac_includes_default"
-if test "x$ac_cv_header_OS_h" = xyes; then :
+ ac_fn_c_check_header_compile "$LINENO" "OS.h" "ac_cv_header_OS_h" "$ac_includes_default"
+if test "x$ac_cv_header_OS_h" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_OS_H 1
_ACEOF
fi
-
done
if test $ac_cv_header_OS_h = yes; then
fi
for ac_header in sys/param.h
do :
- ac_fn_c_check_header_mongrel "$LINENO" "sys/param.h" "ac_cv_header_sys_param_h" "$ac_includes_default"
-if test "x$ac_cv_header_sys_param_h" = xyes; then :
+ ac_fn_c_check_header_compile "$LINENO" "sys/param.h" "ac_cv_header_sys_param_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_param_h" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_SYS_PARAM_H 1
_ACEOF
fi
-
done
if test $ac_cv_header_sys_param_h = yes; then
;;
esac
ac_fn_c_check_decl "$LINENO" "getpagesize" "ac_cv_have_decl_getpagesize" "$ac_includes_default"
-if test "x$ac_cv_have_decl_getpagesize" = xyes; then :
+if test "x$ac_cv_have_decl_getpagesize" = xyes
+then :
else
HAVE_DECL_GETPAGESIZE=0
+
+
+
+ HAVE_INET_PTON=1
+ INET_PTON_LIB=
+
+
+
+
+ if test $ac_cv_header_sys_socket_h != yes; then
+ for ac_header in winsock2.h
+do :
+ ac_fn_c_check_header_compile "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default"
+if test "x$ac_cv_header_winsock2_h" = xyes
+then :
+ 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
+
+
+ if test $HAVE_WINSOCK2_H = 1; then
+ ac_fn_c_check_decl "$LINENO" "inet_pton" "ac_cv_have_decl_inet_pton" "#include <ws2tcpip.h>
+"
+if test "x$ac_cv_have_decl_inet_pton" = xyes
+then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_INET_PTON $ac_have_decl
+_ACEOF
+
+ if test $ac_cv_have_decl_inet_pton = yes; then
+ REPLACE_INET_PTON=1
+ INET_PTON_LIB="-lws2_32"
+ else
+ HAVE_DECL_INET_PTON=0
+ HAVE_INET_PTON=0
+ fi
+ else
+ gl_save_LIBS=$LIBS
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing inet_pton" >&5
+printf %s "checking for library containing inet_pton... " >&6; }
+if test ${ac_cv_search_inet_pton+y}
+then :
+ printf %s "(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 inet_pton ();
+int
+main (void)
+{
+return inet_pton ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' nsl resolv
+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_inet_pton=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if test ${ac_cv_search_inet_pton+y}
+then :
+ break
+fi
+done
+if test ${ac_cv_search_inet_pton+y}
+then :
+
+else
+ ac_cv_search_inet_pton=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_inet_pton" >&5
+printf "%s\n" "$ac_cv_search_inet_pton" >&6; }
+ac_res=$ac_cv_search_inet_pton
+if test "$ac_res" != no
+then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+
+else
+ for ac_func in inet_pton
+do :
+ ac_fn_c_check_func "$LINENO" "inet_pton" "ac_cv_func_inet_pton"
+if test "x$ac_cv_func_inet_pton" = xyes
+then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_INET_PTON 1
+_ACEOF
+
+fi
+done
+
+ if test $ac_cv_func_inet_pton = no; then
+ HAVE_INET_PTON=0
+ fi
+
+fi
+
+ LIBS=$gl_save_LIBS
+
+ if test "$ac_cv_search_inet_pton" != "no" \
+ && test "$ac_cv_search_inet_pton" != "none required"; then
+ INET_PTON_LIB="$ac_cv_search_inet_pton"
+ fi
+
+
+ ac_fn_c_check_decl "$LINENO" "inet_pton" "ac_cv_have_decl_inet_pton" "#include <arpa/inet.h>
+ #if HAVE_NETDB_H
+ # include <netdb.h>
+ #endif
+
+"
+if test "x$ac_cv_have_decl_inet_pton" = xyes
+then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_INET_PTON $ac_have_decl
+_ACEOF
+
+ if test $ac_cv_have_decl_inet_pton = no; then
+ HAVE_DECL_INET_PTON=0
+ fi
+ fi
+
+
+ if test $HAVE_INET_PTON = 0 || test $REPLACE_INET_NTOP = 1; then
+
+
+
+
+
+
+
+
+ gltests_LIBOBJS="$gltests_LIBOBJS inet_pton.$ac_objext"
+
+
+
+
+ fi
+
+
+
+
+
+ if test "$GNULIB_INET_PTON" != 1; then
+ if test "$GNULIB_INET_PTON" = 0; then
+ GNULIB_INET_PTON=$gl_module_indicator_condition
+ else
+ GNULIB_INET_PTON="($GNULIB_INET_PTON || $gl_module_indicator_condition)"
+ fi
+ fi
+
+
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
+printf %s "checking whether byte ordering is bigendian... " >&6; }
+if test ${ac_cv_c_bigendian+y}
+then :
+ printf %s "(cached) " >&6
+else
+ ac_cv_c_bigendian=unknown
+ # See if we're dealing with a universal compiler.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#ifndef __APPLE_CC__
+ not a universal capable compiler
+ #endif
+ typedef int dummy;
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+
+ # Check for potential -arch flags. It is not universal unless
+ # there are at least two -arch flags with different values.
+ ac_arch=
+ ac_prev=
+ for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do
+ if test -n "$ac_prev"; then
+ case $ac_word in
+ i?86 | x86_64 | ppc | ppc64)
+ if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then
+ ac_arch=$ac_word
+ else
+ ac_cv_c_bigendian=universal
+ break
+ fi
+ ;;
+ esac
+ ac_prev=
+ elif test "x$ac_word" = "x-arch"; then
+ ac_prev=arch
+ fi
+ done
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ if test $ac_cv_c_bigendian = unknown; then
+ # See if sys/param.h defines the BYTE_ORDER macro.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/types.h>
+ #include <sys/param.h>
+
+int
+main (void)
+{
+#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \
+ && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \
+ && LITTLE_ENDIAN)
+ bogus endian macros
+ #endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ # It does; now see whether it defined to BIG_ENDIAN or not.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/types.h>
+ #include <sys/param.h>
+
+int
+main (void)
+{
+#if BYTE_ORDER != BIG_ENDIAN
+ not big endian
+ #endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ ac_cv_c_bigendian=yes
+else
+ ac_cv_c_bigendian=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
+ if test $ac_cv_c_bigendian = unknown; then
+ # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris).
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <limits.h>
+
+int
+main (void)
+{
+#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)
+ bogus endian macros
+ #endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ # It does; now see whether it defined to _BIG_ENDIAN or not.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <limits.h>
+
+int
+main (void)
+{
+#ifndef _BIG_ENDIAN
+ not big endian
+ #endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ ac_cv_c_bigendian=yes
+else
+ ac_cv_c_bigendian=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
+ if test $ac_cv_c_bigendian = unknown; then
+ # Compile a test program.
+ if test "$cross_compiling" = yes
+then :
+ # Try to guess by grepping values from an object file.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+short int ascii_mm[] =
+ { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
+ short int ascii_ii[] =
+ { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
+ int use_ascii (int i) {
+ return ascii_mm[i] + ascii_ii[i];
+ }
+ short int ebcdic_ii[] =
+ { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
+ short int ebcdic_mm[] =
+ { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
+ int use_ebcdic (int i) {
+ return ebcdic_mm[i] + ebcdic_ii[i];
+ }
+ extern int foo;
+
+int
+main (void)
+{
+return use_ascii (foo) == use_ebcdic (foo);
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then
+ ac_cv_c_bigendian=yes
+ fi
+ if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then
+ if test "$ac_cv_c_bigendian" = unknown; then
+ ac_cv_c_bigendian=no
+ else
+ # finding both strings is unlikely to happen, but who knows?
+ ac_cv_c_bigendian=unknown
+ fi
+ fi
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$ac_includes_default
+int
+main (void)
+{
+
+ /* Are we little or big endian? From Harbison&Steele. */
+ union
+ {
+ long int l;
+ char c[sizeof (long int)];
+ } u;
+ u.l = 1;
+ return u.c[sizeof (long int) - 1] == 1;
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"
+then :
+ ac_cv_c_bigendian=no
+else
+ ac_cv_c_bigendian=yes
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+ fi
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5
+printf "%s\n" "$ac_cv_c_bigendian" >&6; }
+ case $ac_cv_c_bigendian in #(
+ yes)
+ printf "%s\n" "#define WORDS_BIGENDIAN 1" >>confdefs.h
+;; #(
+ no)
+ ;; #(
+ universal)
+
+printf "%s\n" "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
+
+ ;; #(
+ *)
+ as_fn_error $? "unknown endianness
+ presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;;
+ esac
+
+
+
+
+ HAVE_IOCTL=1
+ if test "$ac_cv_header_winsock2_h" = yes; then
+ HAVE_IOCTL=0
+ else
+ for ac_func in ioctl
+do :
+ ac_fn_c_check_func "$LINENO" "ioctl" "ac_cv_func_ioctl"
+if test "x$ac_cv_func_ioctl" = xyes
+then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_IOCTL 1
+_ACEOF
+
+fi
+done
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ioctl with POSIX signature" >&5
+printf %s "checking for ioctl with POSIX signature... " >&6; }
+if test ${gl_cv_func_ioctl_posix_signature+y}
+then :
+ printf %s "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/ioctl.h>
+int
+main (void)
+{
+extern
+ #ifdef __cplusplus
+ "C"
+ #endif
+ int ioctl (int, int, ...);
+
+ ;
+ return 0;
+}
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_func_ioctl_posix_signature=yes
+else
+ gl_cv_func_ioctl_posix_signature=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ioctl_posix_signature" >&5
+printf "%s\n" "$gl_cv_func_ioctl_posix_signature" >&6; }
+ if test $gl_cv_func_ioctl_posix_signature != yes; then
+ REPLACE_IOCTL=1
+ fi
+ fi
+
+ if test $HAVE_IOCTL = 0 || test $REPLACE_IOCTL = 1; then
+
+
+
+
+
+
+
+
+ gltests_LIBOBJS="$gltests_LIBOBJS ioctl.$ac_objext"
+
+ fi
+
+
+
+
+
+ if test "$GNULIB_IOCTL" != 1; then
+ if test "$GNULIB_IOCTL" = 0; then
+ GNULIB_IOCTL=$gl_module_indicator_condition
+ else
+ GNULIB_IOCTL="($GNULIB_IOCTL || $gl_module_indicator_condition)"
+ fi
+ fi
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_IOCTL 1" >>confdefs.h
+
+
+
+
+ if test "$ac_cv_header_winsock2_h" = yes; then
+
+
+
+
+
+
+
+
+ gltests_LIBOBJS="$gltests_LIBOBJS listen.$ac_objext"
+
+ fi
+
+
+
+
+
+ if test "$GNULIB_LISTEN" != 1; then
+ if test "$GNULIB_LISTEN" = 0; then
+ GNULIB_LISTEN=$gl_module_indicator_condition
+ else
+ GNULIB_LISTEN="($GNULIB_LISTEN || $gl_module_indicator_condition)"
+ fi
+ fi
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_LISTEN 1" >>confdefs.h
+
+
+
+
+
+
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5
printf %s "checking for a traditional french locale... " >&6; }
-if ${gt_cv_locale_fr+:} false; then :
+if test ${gt_cv_locale_fr+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5
printf %s "checking for a french Unicode locale... " >&6; }
-if ${gt_cv_locale_fr_utf8+:} false; then :
+if test ${gt_cv_locale_fr_utf8+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional japanese locale" >&5
printf %s "checking for a traditional japanese locale... " >&6; }
-if ${gt_cv_locale_ja+:} false; then :
+if test ${gt_cv_locale_ja+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5
printf %s "checking for a transitional chinese locale... " >&6; }
-if ${gt_cv_locale_zh_CN+:} false; then :
+if test ${gt_cv_locale_zh_CN+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a turkish Unicode locale" >&5
printf %s "checking for a turkish Unicode locale... " >&6; }
-if ${gt_cv_locale_tr_utf8+:} false; then :
+if test ${gt_cv_locale_tr_utf8+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5
printf %s "checking for a french Unicode locale... " >&6; }
-if ${gt_cv_locale_fr_utf8+:} false; then :
+if test ${gt_cv_locale_fr_utf8+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5
printf %s "checking for a traditional french locale... " >&6; }
-if ${gt_cv_locale_fr+:} false; then :
+if test ${gt_cv_locale_fr+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5
printf %s "checking for a french Unicode locale... " >&6; }
-if ${gt_cv_locale_fr_utf8+:} false; then :
+if test ${gt_cv_locale_fr_utf8+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional japanese locale" >&5
printf %s "checking for a traditional japanese locale... " >&6; }
-if ${gt_cv_locale_ja+:} false; then :
+if test ${gt_cv_locale_ja+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5
printf %s "checking for a transitional chinese locale... " >&6; }
-if ${gt_cv_locale_zh_CN+:} false; then :
+if test ${gt_cv_locale_zh_CN+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5
printf %s "checking for a french Unicode locale... " >&6; }
-if ${gt_cv_locale_fr_utf8+:} false; then :
+if test ${gt_cv_locale_fr_utf8+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5
printf %s "checking for a transitional chinese locale... " >&6; }
-if ${gt_cv_locale_zh_CN+:} false; then :
+if test ${gt_cv_locale_zh_CN+y}
+then :
printf %s "(cached) " >&6
else
# fails on HP-UX 11, because MAP_FIXED mappings do not work. But this is
# irrelevant for anonymous mappings.
ac_fn_c_check_func "$LINENO" "mmap" "ac_cv_func_mmap"
-if test "x$ac_cv_func_mmap" = xyes; then :
+if test "x$ac_cv_func_mmap" = xyes
+then :
gl_have_mmap=yes
else
gl_have_mmap=no
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "I cannot identify this map" >/dev/null 2>&1; then :
+ $EGREP "I cannot identify this map" >/dev/null 2>&1
+then :
gl_have_mmap_anonymous=yes
fi
rm -rf conftest*
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "I cannot identify this map" >/dev/null 2>&1; then :
+ $EGREP "I cannot identify this map" >/dev/null 2>&1
+then :
printf "%s\n" "#define MAP_ANONYMOUS MAP_ANON" >>confdefs.h
+
+
+
+
+
+ nanosleep_save_libs=$LIBS
+
+ # Solaris 2.5.1 needs -lposix4 to get the nanosleep function.
+ # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4.
+ LIB_NANOSLEEP=
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing nanosleep" >&5
+printf %s "checking for library containing nanosleep... " >&6; }
+if test ${ac_cv_search_nanosleep+y}
+then :
+ printf %s "(cached) " >&6
+else
+ 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 nanosleep ();
+int
+main (void)
+{
+return nanosleep ();
+ ;
+ 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_nanosleep=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if test ${ac_cv_search_nanosleep+y}
+then :
+ break
+fi
+done
+if test ${ac_cv_search_nanosleep+y}
+then :
+
+else
+ ac_cv_search_nanosleep=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_nanosleep" >&5
+printf "%s\n" "$ac_cv_search_nanosleep" >&6; }
+ac_res=$ac_cv_search_nanosleep
+if test "$ac_res" != no
+then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ test "$ac_cv_search_nanosleep" = "none required" ||
+ LIB_NANOSLEEP=$ac_cv_search_nanosleep
+fi
+
+ if test "x$ac_cv_search_nanosleep" != xno; then
+
+
+ if test $APPLE_UNIVERSAL_BUILD = 1; then
+ # A universal build on Apple Mac OS X platforms.
+ # The test result would be 'no (mishandles large arguments)' in 64-bit
+ # mode but 'yes' in 32-bit mode. But we need a configuration result that
+ # is valid in both modes.
+ gl_cv_func_nanosleep='no (mishandles large arguments)'
+ fi
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working nanosleep" >&5
+printf %s "checking for working nanosleep... " >&6; }
+if test ${gl_cv_func_nanosleep+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes
+then :
+ case "$host_os" in linux*) # Guess it halfway works when the kernel is Linux.
+ gl_cv_func_nanosleep='guessing no (mishandles large arguments)' ;;
+ *) # If we don't know, assume the worst.
+ gl_cv_func_nanosleep='guessing no' ;;
+ esac
+
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+ #include <errno.h>
+ #include <limits.h>
+ #include <signal.h>
+ #if HAVE_SYS_TIME_H
+ #include <sys/time.h>
+ #endif
+ #include <time.h>
+ #include <unistd.h>
+ #define TYPE_SIGNED(t) (! ((t) 0 < (t) -1))
+ #define TYPE_MAXIMUM(t) \
+ ((t) (! TYPE_SIGNED (t) \
+ ? (t) -1 \
+ : ((((t) 1 << (sizeof (t) * CHAR_BIT - 2)) - 1) * 2 + 1)))
+
+ static void
+ check_for_SIGALRM (int sig)
+ {
+ if (sig != SIGALRM)
+ _exit (1);
+ }
+
+ int
+ main ()
+ {
+ static struct timespec ts_sleep;
+ static struct timespec ts_remaining;
+ static struct sigaction act;
+ /* Test for major problems first. */
+ if (! nanosleep)
+ return 2;
+ act.sa_handler = check_for_SIGALRM;
+ sigemptyset (&act.sa_mask);
+ sigaction (SIGALRM, &act, NULL);
+ ts_sleep.tv_sec = 0;
+ ts_sleep.tv_nsec = 1;
+ alarm (1);
+ if (nanosleep (&ts_sleep, NULL) != 0)
+ return 3;
+ /* Test for a minor problem: the handling of large arguments. */
+ ts_sleep.tv_sec = TYPE_MAXIMUM (time_t);
+ ts_sleep.tv_nsec = 999999999;
+ alarm (1);
+ if (nanosleep (&ts_sleep, &ts_remaining) != -1)
+ return 4;
+ if (errno != EINTR)
+ return 5;
+ if (ts_remaining.tv_sec <= TYPE_MAXIMUM (time_t) - 10)
+ return 6;
+ return 0;
+ }
+_ACEOF
+if ac_fn_c_try_run "$LINENO"
+then :
+ gl_cv_func_nanosleep=yes
+else
+ case $? in 4|5|6) gl_cv_func_nanosleep='no (mishandles large arguments)';; *) gl_cv_func_nanosleep=no;;
+ esac
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_nanosleep" >&5
+printf "%s\n" "$gl_cv_func_nanosleep" >&6; }
+ case "$gl_cv_func_nanosleep" in
+ *yes)
+ REPLACE_NANOSLEEP=0
+ ;;
+ *)
+ REPLACE_NANOSLEEP=1
+ case "$gl_cv_func_nanosleep" in
+ *"mishandles large arguments"*)
+
+printf "%s\n" "#define HAVE_BUG_BIG_NANOSLEEP 1" >>confdefs.h
+
+ ;;
+ *)
+ # The replacement uses select(). Add $LIBSOCKET to $LIB_NANOSLEEP.
+ for ac_lib in $LIBSOCKET; do
+ case " $LIB_NANOSLEEP " in
+ *" $ac_lib "*) ;;
+ *) LIB_NANOSLEEP="$LIB_NANOSLEEP $ac_lib";;
+ esac
+ done
+ ;;
+ esac
+ ;;
+ esac
+ else
+ HAVE_NANOSLEEP=0
+ fi
+ LIBS=$nanosleep_save_libs
+
+ if test $HAVE_NANOSLEEP = 0 || test $REPLACE_NANOSLEEP = 1; then
+
+
+
+
+
+
+
+
+ gltests_LIBOBJS="$gltests_LIBOBJS nanosleep.$ac_objext"
+
+
+
+ :
+
+ fi
+
+
+
+
+
+ if test "$GNULIB_NANOSLEEP" != 1; then
+ if test "$GNULIB_NANOSLEEP" = 0; then
+ GNULIB_NANOSLEEP=$gl_module_indicator_condition
+ else
+ GNULIB_NANOSLEEP="($GNULIB_NANOSLEEP || $gl_module_indicator_condition)"
+ fi
+ fi
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_NANOSLEEP 1" >>confdefs.h
+
+
+
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether <netinet/in.h> is self-contained" >&5
+printf %s "checking whether <netinet/in.h> is self-contained... " >&6; }
+if test ${gl_cv_header_netinet_in_h_selfcontained+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <netinet/in.h>
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_header_netinet_in_h_selfcontained=yes
+else
+ gl_cv_header_netinet_in_h_selfcontained=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_netinet_in_h_selfcontained" >&5
+printf "%s\n" "$gl_cv_header_netinet_in_h_selfcontained" >&6; }
+ if test $gl_cv_header_netinet_in_h_selfcontained = yes; then
+ NETINET_IN_H=''
+ else
+ NETINET_IN_H='netinet/in.h'
+ for ac_header in netinet/in.h
+do :
+ ac_fn_c_check_header_compile "$LINENO" "netinet/in.h" "ac_cv_header_netinet_in_h" "$ac_includes_default"
+if test "x$ac_cv_header_netinet_in_h" = xyes
+then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_NETINET_IN_H 1
+_ACEOF
+
+fi
+done
+
+
+
+
+
+
+
+
+
+
+ if test $gl_cv_have_include_next = yes; then
+ gl_cv_next_netinet_in_h='<'netinet/in.h'>'
+ else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <netinet/in.h>" >&5
+printf %s "checking absolute name of <netinet/in.h>... " >&6; }
+if test ${gl_cv_next_netinet_in_h+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ if test $ac_cv_header_netinet_in_h = yes; then
+
+
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <netinet/in.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 'netinet/in.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_netinet_in_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_netinet_in_h
+ gl_cv_next_netinet_in_h='"'$gl_header'"'
+ else
+ gl_cv_next_netinet_in_h='<'netinet/in.h'>'
+ fi
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_netinet_in_h" >&5
+printf "%s\n" "$gl_cv_next_netinet_in_h" >&6; }
+ fi
+ NEXT_NETINET_IN_H=$gl_cv_next_netinet_in_h
+
+ if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then
+ # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next'
+ gl_next_as_first_directive='<'netinet/in.h'>'
+ else
+ # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
+ gl_next_as_first_directive=$gl_cv_next_netinet_in_h
+ fi
+ NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H=$gl_next_as_first_directive
+
+
+
+
+ if test $ac_cv_header_netinet_in_h = yes; then
+ HAVE_NETINET_IN_H=1
+ else
+ HAVE_NETINET_IN_H=0
+ fi
+
+ fi
+
+ if test -n "$NETINET_IN_H"; then
+ GL_GENERATE_NETINET_IN_H_TRUE=
+ GL_GENERATE_NETINET_IN_H_FALSE='#'
+else
+ GL_GENERATE_NETINET_IN_H_TRUE='#'
+ GL_GENERATE_NETINET_IN_H_FALSE=
+fi
+
+
+
+
+
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5
printf %s "checking for a traditional french locale... " >&6; }
-if ${gt_cv_locale_fr+:} false; then :
+if test ${gt_cv_locale_fr+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5
printf %s "checking for a french Unicode locale... " >&6; }
-if ${gt_cv_locale_fr_utf8+:} false; then :
+if test ${gt_cv_locale_fr_utf8+y}
+then :
printf %s "(cached) " >&6
else
+
+
+
+ if test "$ERRNO_H:$REPLACE_STRERROR_0" != :0; then
+ REPLACE_PERROR=1
+ fi
+ case ${gl_cv_func_strerror_r_works-unset} in
+ unset|*yes)
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether perror matches strerror" >&5
+printf %s "checking whether perror matches strerror... " >&6; }
+if test ${gl_cv_func_perror_works+y}
+then :
+ printf %s "(cached) " >&6
+else
+ if test "$cross_compiling" = yes
+then :
+ gl_cv_func_perror_works="guessing no"
+
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <errno.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+
+int
+main (void)
+{
+char *str = strerror (-1);
+ if (!getenv("CONFTEST_OUTPUT")) return 0;
+ if (!str) str = "";
+ puts (str);
+ errno = -1;
+ perror ("");
+ return 0;
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"
+then :
+ if CONFTEST_OUTPUT=1 ./conftest$EXEEXT >conftest.txt1 2>conftest.txt2 \
+ && cmp conftest.txt1 conftest.txt2 >/dev/null; then
+ gl_cv_func_perror_works=yes
+ else
+ gl_cv_func_perror_works=no
+ fi
+ rm -rf conftest.txt1 conftest.txt2
+else
+ gl_cv_func_perror_works=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_perror_works" >&5
+printf "%s\n" "$gl_cv_func_perror_works" >&6; }
+ if test "$gl_cv_func_perror_works" != yes; then
+ REPLACE_PERROR=1
+ fi
+ ;;
+ *)
+ REPLACE_PERROR=1
+ ;;
+ esac
+
+ if test $REPLACE_PERROR = 1; then
+
+
+
+
+
+
+
+
+ gltests_LIBOBJS="$gltests_LIBOBJS perror.$ac_objext"
+
+ fi
+
+
+
+
+
+ if test "$GNULIB_PERROR" != 1; then
+ if test "$GNULIB_PERROR" = 0; then
+ GNULIB_PERROR=$gl_module_indicator_condition
+ else
+ GNULIB_PERROR="($GNULIB_PERROR || $gl_module_indicator_condition)"
+ fi
+ fi
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_PERROR 1" >>confdefs.h
+
+
+
+
+
+
+
+ if test $ac_cv_func_pipe != yes; then
+ HAVE_PIPE=0
+ fi
+
+ if test $HAVE_PIPE = 0; then
+
+
+
+
+
+
+
+
+ gltests_LIBOBJS="$gltests_LIBOBJS pipe.$ac_objext"
+
+ fi
+
+
+
+
+
+ if test "$GNULIB_PIPE" != 1; then
+ if test "$GNULIB_PIPE" = 0; then
+ GNULIB_PIPE=$gl_module_indicator_condition
+ else
+ GNULIB_PIPE="($GNULIB_PIPE || $gl_module_indicator_condition)"
+ fi
+ fi
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_PIPE 1" >>confdefs.h
+
+
+
+
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for putenv compatible with GNU and SVID" >&5
printf %s "checking for putenv compatible with GNU and SVID... " >&6; }
-if ${gl_cv_func_svid_putenv+:} false; then :
+if test ${gl_cv_func_svid_putenv+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_svid_putenv="guessing yes" ;;
/* end confdefs.h. */
$ac_includes_default
int
-main ()
+main (void)
{
/* Put it in env. */
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_svid_putenv=yes
else
gl_cv_func_svid_putenv=no
ac_fn_c_check_decl "$LINENO" "_putenv" "ac_cv_have_decl__putenv" "$ac_includes_default"
-if test "x$ac_cv_have_decl__putenv" = xyes; then :
+if test "x$ac_cv_have_decl__putenv" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
- if test $ac_cv_func_setenv = no; then
- HAVE_SETENV=0
+
+ # Check for mmap(). Don't use AC_FUNC_MMAP, because it checks too much: it
+ # fails on HP-UX 11, because MAP_FIXED mappings do not work. But this is
+ # irrelevant for anonymous mappings.
+ ac_fn_c_check_func "$LINENO" "mmap" "ac_cv_func_mmap"
+if test "x$ac_cv_func_mmap" = xyes
+then :
+ gl_have_mmap=yes
+else
+ gl_have_mmap=no
+fi
+
+
+ # Try to allow MAP_ANONYMOUS.
+ gl_have_mmap_anonymous=no
+ if test $gl_have_mmap = yes; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for MAP_ANONYMOUS" >&5
+printf %s "checking for MAP_ANONYMOUS... " >&6; }
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#include <sys/mman.h>
+#ifdef MAP_ANONYMOUS
+ I cannot identify this map
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "I cannot identify this map" >/dev/null 2>&1
+then :
+ gl_have_mmap_anonymous=yes
+fi
+rm -rf conftest*
+
+ if test $gl_have_mmap_anonymous != yes; then
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#include <sys/mman.h>
+#ifdef MAP_ANON
+ I cannot identify this map
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "I cannot identify this map" >/dev/null 2>&1
+then :
+
+printf "%s\n" "#define MAP_ANONYMOUS MAP_ANON" >>confdefs.h
+
+ gl_have_mmap_anonymous=yes
+fi
+rm -rf conftest*
+
+ fi
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_have_mmap_anonymous" >&5
+printf "%s\n" "$gl_have_mmap_anonymous" >&6; }
+ if test $gl_have_mmap_anonymous = yes; then
+
+printf "%s\n" "#define HAVE_MAP_ANONYMOUS 1" >>confdefs.h
+
+ fi
+ fi
+
+
+
+
+
+
+ # Check for mmap(). Don't use AC_FUNC_MMAP, because it checks too much: it
+ # fails on HP-UX 11, because MAP_FIXED mappings do not work. But this is
+ # irrelevant for anonymous mappings.
+ ac_fn_c_check_func "$LINENO" "mmap" "ac_cv_func_mmap"
+if test "x$ac_cv_func_mmap" = xyes
+then :
+ gl_have_mmap=yes
+else
+ gl_have_mmap=no
+fi
+
+
+ # Try to allow MAP_ANONYMOUS.
+ gl_have_mmap_anonymous=no
+ if test $gl_have_mmap = yes; then
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for MAP_ANONYMOUS" >&5
+printf %s "checking for MAP_ANONYMOUS... " >&6; }
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#include <sys/mman.h>
+#ifdef MAP_ANONYMOUS
+ I cannot identify this map
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "I cannot identify this map" >/dev/null 2>&1
+then :
+ gl_have_mmap_anonymous=yes
+fi
+rm -rf conftest*
+
+ if test $gl_have_mmap_anonymous != yes; then
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#include <sys/mman.h>
+#ifdef MAP_ANON
+ I cannot identify this map
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "I cannot identify this map" >/dev/null 2>&1
+then :
+
+printf "%s\n" "#define MAP_ANONYMOUS MAP_ANON" >>confdefs.h
+
+ gl_have_mmap_anonymous=yes
+fi
+rm -rf conftest*
+
+ fi
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_have_mmap_anonymous" >&5
+printf "%s\n" "$gl_have_mmap_anonymous" >&6; }
+ if test $gl_have_mmap_anonymous = yes; then
+
+printf "%s\n" "#define HAVE_MAP_ANONYMOUS 1" >>confdefs.h
+
+ fi
+ fi
+
+
+
+
+
+
+
+ if test "$ac_cv_header_winsock2_h" = yes; then
+ REPLACE_SELECT=1
else
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether setenv validates arguments" >&5
-printf %s "checking whether setenv validates arguments... " >&6; }
-if ${gl_cv_func_setenv_works+:} false; then :
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether select supports a 0 argument" >&5
+printf %s "checking whether select supports a 0 argument... " >&6; }
+if test ${gl_cv_func_select_supports0+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
- case "$host_os" in
- # Guess yes on glibc systems.
- *-gnu*) gl_cv_func_setenv_works="guessing yes" ;;
- # If we don't know, assume the worst.
- *) gl_cv_func_setenv_works="guessing no" ;;
- esac
+
+ if test "$cross_compiling" = yes
+then :
+
+ case "$host_os" in
+ # Guess no on Interix.
+ interix*) gl_cv_func_select_supports0="guessing no";;
+ # Guess yes otherwise.
+ *) gl_cv_func_select_supports0="guessing yes";;
+ esac
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
- #include <stdlib.h>
- #include <errno.h>
- #include <string.h>
+#include <sys/types.h>
+#include <sys/time.h>
+#if HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#endif
+int main ()
+{
+ struct timeval timeout;
+ timeout.tv_sec = 0;
+ timeout.tv_usec = 5;
+ return select (0, (fd_set *)0, (fd_set *)0, (fd_set *)0, &timeout) < 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"
+then :
+ gl_cv_func_select_supports0=yes
+else
+ gl_cv_func_select_supports0=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_select_supports0" >&5
+printf "%s\n" "$gl_cv_func_select_supports0" >&6; }
+ case "$gl_cv_func_select_supports0" in
+ *yes) ;;
+ *) REPLACE_SELECT=1 ;;
+ esac
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether select detects invalid fds" >&5
+printf %s "checking whether select detects invalid fds... " >&6; }
+if test ${gl_cv_func_select_detects_ebadf+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes
+then :
+
+ case "$host_os" in
+ # Guess yes on glibc systems.
+ *-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" ;;
+ esac
+
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#include <sys/types.h>
+#include <sys/time.h>
+#if HAVE_SYS_SELECT_H
+# include <sys/select.h>
+#endif
+#include <unistd.h>
+#include <errno.h>
int
-main ()
+main (void)
{
- int result = 0;
- {
- if (setenv ("", "", 0) != -1)
- result |= 1;
- else if (errno != EINVAL)
- result |= 2;
- }
- {
- if (setenv ("a", "=", 1) != 0)
- result |= 4;
- else if (strcmp (getenv ("a"), "=") != 0)
- result |= 8;
- }
- return result;
+ fd_set set;
+ dup2(0, 16);
+ FD_ZERO(&set);
+ FD_SET(16, &set);
+ close(16);
+ struct timeval timeout;
+ timeout.tv_sec = 0;
+ timeout.tv_usec = 5;
+ return select (17, &set, NULL, NULL, &timeout) != -1 || errno != EBADF;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- gl_cv_func_setenv_works=yes
+if ac_fn_c_try_run "$LINENO"
+then :
+ gl_cv_func_select_detects_ebadf=yes
else
- gl_cv_func_setenv_works=no
+ gl_cv_func_select_detects_ebadf=no
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
+
fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_setenv_works" >&5
-printf "%s\n" "$gl_cv_func_setenv_works" >&6; }
- case "$gl_cv_func_setenv_works" in
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_select_detects_ebadf" >&5
+printf "%s\n" "$gl_cv_func_select_detects_ebadf" >&6; }
+ case $gl_cv_func_select_detects_ebadf in
*yes) ;;
- *)
- REPLACE_SETENV=1
+ *) REPLACE_SELECT=1 ;;
+ esac
+ fi
+
+ LIB_SELECT="$LIBSOCKET"
+ if test $REPLACE_SELECT = 1; then
+ case "$host_os" in
+ mingw*)
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#define WIN32_LEAN_AND_MEAN
+#include <windows.h>
+int
+main ()
+{
+ MsgWaitForMultipleObjects (0, NULL, 0, 0, 0);
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"
+then :
+
+else
+ LIB_SELECT="$LIB_SELECT -luser32"
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
;;
esac
fi
- if test $HAVE_SETENV = 0 || test $REPLACE_SETENV = 1; then
+ if test $REPLACE_SELECT = 1; then
- gltests_LIBOBJS="$gltests_LIBOBJS setenv.$ac_objext"
+
+ gltests_LIBOBJS="$gltests_LIBOBJS select.$ac_objext"
fi
- if test "$GNULIB_SETENV" != 1; then
- if test "$GNULIB_SETENV" = 0; then
- GNULIB_SETENV=$gl_module_indicator_condition
+ if test "$GNULIB_SELECT" != 1; then
+ if test "$GNULIB_SELECT" = 0; then
+ GNULIB_SELECT=$gl_module_indicator_condition
else
- GNULIB_SETENV="($GNULIB_SETENV || $gl_module_indicator_condition)"
+ GNULIB_SELECT="($GNULIB_SELECT || $gl_module_indicator_condition)"
fi
fi
-printf "%s\n" "#define GNULIB_TEST_SETENV 1" >>confdefs.h
+printf "%s\n" "#define GNULIB_TEST_SELECT 1" >>confdefs.h
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5
printf %s "checking for a traditional french locale... " >&6; }
-if ${gt_cv_locale_fr+:} false; then :
+if test ${gt_cv_locale_fr+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5
printf %s "checking for a french Unicode locale... " >&6; }
-if ${gt_cv_locale_fr_utf8+:} false; then :
+if test ${gt_cv_locale_fr_utf8+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional japanese locale" >&5
printf %s "checking for a traditional japanese locale... " >&6; }
-if ${gt_cv_locale_ja+:} false; then :
+if test ${gt_cv_locale_ja+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5
printf %s "checking for a transitional chinese locale... " >&6; }
-if ${gt_cv_locale_zh_CN+:} false; then :
+if test ${gt_cv_locale_zh_CN+y}
+then :
printf %s "(cached) " >&6
else
+ if test "$ac_cv_header_winsock2_h" = yes; then
+
+
+
+
+
+
+
+
+ gltests_LIBOBJS="$gltests_LIBOBJS setsockopt.$ac_objext"
+
+ fi
+
+
+
+
+
+ if test "$GNULIB_SETSOCKOPT" != 1; then
+ if test "$GNULIB_SETSOCKOPT" = 0; then
+ GNULIB_SETSOCKOPT=$gl_module_indicator_condition
+ else
+ GNULIB_SETSOCKOPT="($GNULIB_SETSOCKOPT || $gl_module_indicator_condition)"
+ fi
+ fi
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_SETSOCKOPT 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 :
+if test "x$ac_cv_have_decl_sleep" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working sleep" >&5
printf %s "checking for working sleep... " >&6; }
-if ${gl_cv_func_sleep_works+:} false; then :
+if test ${gl_cv_func_sleep_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_sleep_works="guessing yes" ;;
}
int
-main ()
+main (void)
{
/* Failure to compile this test due to missing alarm is okay,
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_sleep_works=yes
else
gl_cv_func_sleep_works=no
for ac_func in snprintf
do :
ac_fn_c_check_func "$LINENO" "snprintf" "ac_cv_func_snprintf"
-if test "x$ac_cv_func_snprintf" = xyes; then :
+if test "x$ac_cv_func_snprintf" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_SNPRINTF 1
_ACEOF
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether snprintf respects a size of 1" >&5
printf %s "checking whether snprintf respects a size of 1... " >&6; }
-if ${gl_cv_func_snprintf_size1+:} false; then :
+if test ${gl_cv_func_snprintf_size1+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
gl_cv_func_snprintf_size1="guessing yes"
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return buf[1] != 'E';
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_snprintf_size1=yes
else
gl_cv_func_snprintf_size1=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether printf supports POSIX/XSI format strings with positions" >&5
printf %s "checking whether printf supports POSIX/XSI format strings with positions... " >&6; }
-if ${gl_cv_func_printf_positions+:} false; then :
+if test ${gl_cv_func_printf_positions+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
netbsd[1-3]* | netbsdelf[1-3]* | netbsdaout[1-3]* | netbsdcoff[1-3]*)
return (strcmp (buf, "55 33") != 0);
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_printf_positions=yes
else
gl_cv_func_printf_positions=no
+ if test "$ac_cv_header_winsock2_h" = yes; then
+
+
+
+
+
+
+
+
+ gltests_LIBOBJS="$gltests_LIBOBJS socket.$ac_objext"
+
+ fi
+ # When this module is used, sockets may actually occur as file descriptors,
+ # hence it is worth warning if the modules 'close' and 'ioctl' are not used.
+
+
+
+ if test "$ac_cv_header_winsock2_h" = yes; then
+ UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=1
+ SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=1
+ fi
+
+
+
+
+
+ if test "$GNULIB_SOCKET" != 1; then
+ if test "$GNULIB_SOCKET" = 0; then
+ GNULIB_SOCKET=$gl_module_indicator_condition
+ else
+ GNULIB_SOCKET="($GNULIB_SOCKET || $gl_module_indicator_condition)"
+ fi
+ fi
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_SOCKET 1" >>confdefs.h
+
+
+
+
+
+ ac_fn_c_check_type "$LINENO" "socklen_t" "ac_cv_type_socklen_t" "
+/* <sys/types.h> is not needed according to POSIX, but the
+ <sys/socket.h> in i386-unknown-freebsd4.10 and
+ powerpc-apple-darwin5.5 required it. */
+#include <sys/types.h>
+#if HAVE_SYS_SOCKET_H
+# include <sys/socket.h>
+#elif HAVE_WS2TCPIP_H
+# include <ws2tcpip.h>
+#endif
+
+"
+if test "x$ac_cv_type_socklen_t" = xyes
+then :
+
+else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for socklen_t equivalent" >&5
+printf %s "checking for socklen_t equivalent... " >&6; }
+ if test ${gl_cv_socklen_t_equiv+y}
+then :
+ printf %s "(cached) " >&6
+else
+ # Systems have either "struct sockaddr *" or
+ # "void *" as the second argument to getpeername
+ gl_cv_socklen_t_equiv=
+ for arg2 in "struct sockaddr" void; do
+ for t in int size_t "unsigned int" "long int" "unsigned long int"; do
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/types.h>
+ #include <sys/socket.h>
+
+ int getpeername (int, $arg2 *, $t *);
+int
+main (void)
+{
+$t len;
+ getpeername (0, 0, &len);
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_socklen_t_equiv="$t"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ test "$gl_cv_socklen_t_equiv" != "" && break
+ done
+ test "$gl_cv_socklen_t_equiv" != "" && break
+ done
+
+fi
+
+ if test "$gl_cv_socklen_t_equiv" = ""; then
+ as_fn_error $? "Cannot find a type to use in place of socklen_t" "$LINENO" 5
+ fi
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_socklen_t_equiv" >&5
+printf "%s\n" "$gl_cv_socklen_t_equiv" >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define socklen_t $gl_cv_socklen_t_equiv
+_ACEOF
+
+fi
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working stdalign.h" >&5
+printf %s "checking for working stdalign.h... " >&6; }
+if test ${gl_cv_header_working_stdalign_h+y}
+then :
+ printf %s "(cached) " >&6
+else
+ 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
+ <http://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__) \
+ || __HP_cc || __HP_aCC || __IBMC__ || __IBMCPP__ \
+ || __ICC || 0x5110 <= __SUNPRO_C \
+ || 1300 <= _MSC_VER)
+ struct alignas_test { char c; char alignas (8) alignas_8; };
+ char test_alignas[offsetof (struct alignas_test, alignas_8) == 8
+ ? 1 : -1];
+ #endif
+
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_header_working_stdalign_h=yes
+else
+ gl_cv_header_working_stdalign_h=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_working_stdalign_h" >&5
+printf "%s\n" "$gl_cv_header_working_stdalign_h" >&6; }
+
+ if test $gl_cv_header_working_stdalign_h = yes; then
+ STDALIGN_H=''
+ else
+ STDALIGN_H='stdalign.h'
+ fi
+
+
+ if test -n "$STDALIGN_H"; then
+ GL_GENERATE_STDALIGN_H_TRUE=
+ GL_GENERATE_STDALIGN_H_FALSE='#'
+else
+ GL_GENERATE_STDALIGN_H_TRUE='#'
+ GL_GENERATE_STDALIGN_H_FALSE=
+fi
+
+
+
+
+
+
+
+
+
+
+
+ if test $ac_cv_have_decl_strerror_r = no; then
+ HAVE_DECL_STRERROR_R=0
+ fi
+
+ if test $ac_cv_func_strerror_r = yes; then
+ if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then
+ if test $gl_cv_func_strerror_r_posix_signature = yes; then
+ case "$gl_cv_func_strerror_r_works" in
+ *no) REPLACE_STRERROR_R=1 ;;
+ esac
+ else
+ REPLACE_STRERROR_R=1
+ fi
+ else
+ REPLACE_STRERROR_R=1
+ fi
+ fi
+
+ if test $HAVE_DECL_STRERROR_R = 0 || test $REPLACE_STRERROR_R = 1; then
+
+
+
+
+
+
+
+
+ gltests_LIBOBJS="$gltests_LIBOBJS strerror_r.$ac_objext"
+
+
+
+
+
+
+ fi
+
+
+
+
+
+ if test "$GNULIB_STRERROR_R" != 1; then
+ if test "$GNULIB_STRERROR_R" = 0; then
+ GNULIB_STRERROR_R=$gl_module_indicator_condition
+ else
+ GNULIB_STRERROR_R="($GNULIB_STRERROR_R || $gl_module_indicator_condition)"
+ fi
+ fi
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_STRERROR_R 1" >>confdefs.h
+
+
# fails on HP-UX 11, because MAP_FIXED mappings do not work. But this is
# irrelevant for anonymous mappings.
ac_fn_c_check_func "$LINENO" "mmap" "ac_cv_func_mmap"
-if test "x$ac_cv_func_mmap" = xyes; then :
+if test "x$ac_cv_func_mmap" = xyes
+then :
gl_have_mmap=yes
else
gl_have_mmap=no
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "I cannot identify this map" >/dev/null 2>&1; then :
+ $EGREP "I cannot identify this map" >/dev/null 2>&1
+then :
gl_have_mmap_anonymous=yes
fi
rm -rf conftest*
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "I cannot identify this map" >/dev/null 2>&1; then :
+ $EGREP "I cannot identify this map" >/dev/null 2>&1
+then :
printf "%s\n" "#define MAP_ANONYMOUS MAP_ANON" >>confdefs.h
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether symlink handles trailing slash correctly" >&5
printf %s "checking whether symlink handles trailing slash correctly... " >&6; }
-if ${gl_cv_func_symlink_works+:} false; then :
+if test ${gl_cv_func_symlink_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
case "$host_os" in
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_symlink_works="guessing yes" ;;
#include <unistd.h>
int
-main ()
+main (void)
{
int result = 0;
if (!symlink ("a", "conftest.link/"))
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_symlink_works=yes
else
gl_cv_func_symlink_works=no
- gltests_LIBOBJS="$gltests_LIBOBJS symlink.$ac_objext"
+ gltests_LIBOBJS="$gltests_LIBOBJS symlink.$ac_objext"
+
+ fi
+
+
+
+
+
+ if test "$GNULIB_SYMLINK" != 1; then
+ if test "$GNULIB_SYMLINK" = 0; then
+ GNULIB_SYMLINK=$gl_module_indicator_condition
+ else
+ GNULIB_SYMLINK="($GNULIB_SYMLINK || $gl_module_indicator_condition)"
+ fi
+ fi
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_SYMLINK 1" >>confdefs.h
+
+
+
+
+
+
+
+ if test $ac_cv_header_sys_ioctl_h = yes; then
+ HAVE_SYS_IOCTL_H=1
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether <sys/ioctl.h> declares ioctl" >&5
+printf %s "checking whether <sys/ioctl.h> declares ioctl... " >&6; }
+if test ${gl_cv_decl_ioctl_in_sys_ioctl_h+y}
+then :
+ printf %s "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/ioctl.h>
+
+int
+main (void)
+{
+(void) ioctl;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_decl_ioctl_in_sys_ioctl_h=yes
+else
+ gl_cv_decl_ioctl_in_sys_ioctl_h=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_decl_ioctl_in_sys_ioctl_h" >&5
+printf "%s\n" "$gl_cv_decl_ioctl_in_sys_ioctl_h" >&6; }
+ else
+ HAVE_SYS_IOCTL_H=0
+ fi
+
+
+
+
+
+
- fi
+ if test $gl_cv_have_include_next = yes; then
+ gl_cv_next_sys_ioctl_h='<'sys/ioctl.h'>'
+ else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/ioctl.h>" >&5
+printf %s "checking absolute name of <sys/ioctl.h>... " >&6; }
+if test ${gl_cv_next_sys_ioctl_h+y}
+then :
+ printf %s "(cached) " >&6
+else
+ if test $ac_cv_header_sys_ioctl_h = yes; then
- if test "$GNULIB_SYMLINK" != 1; then
- if test "$GNULIB_SYMLINK" = 0; then
- GNULIB_SYMLINK=$gl_module_indicator_condition
- else
- GNULIB_SYMLINK="($GNULIB_SYMLINK || $gl_module_indicator_condition)"
- fi
- fi
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/ioctl.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/ioctl.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_ioctl_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_sys_ioctl_h
+ gl_cv_next_sys_ioctl_h='"'$gl_header'"'
+ else
+ gl_cv_next_sys_ioctl_h='<'sys/ioctl.h'>'
+ fi
-printf "%s\n" "#define GNULIB_TEST_SYMLINK 1" >>confdefs.h
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_ioctl_h" >&5
+printf "%s\n" "$gl_cv_next_sys_ioctl_h" >&6; }
+ fi
+ NEXT_SYS_IOCTL_H=$gl_cv_next_sys_ioctl_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/ioctl.h'>'
+ else
+ # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
+ gl_next_as_first_directive=$gl_cv_next_sys_ioctl_h
+ fi
+ NEXT_AS_FIRST_DIRECTIVE_SYS_IOCTL_H=$gl_next_as_first_directive
- if test $ac_cv_have_decl_unsetenv = no; then
- HAVE_DECL_UNSETENV=0
- fi
- for ac_func in unsetenv
-do :
- ac_fn_c_check_func "$LINENO" "unsetenv" "ac_cv_func_unsetenv"
-if test "x$ac_cv_func_unsetenv" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_UNSETENV 1
-_ACEOF
-fi
-done
- if test $ac_cv_func_unsetenv = no; then
- HAVE_UNSETENV=0
- else
- HAVE_UNSETENV=1
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for unsetenv() return type" >&5
-printf %s "checking for unsetenv() return type... " >&6; }
-if ${gt_cv_func_unsetenv_ret+:} false; then :
+ for gl_func in ioctl; do
+ as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
+printf %s "checking whether $gl_func is declared without a macro... " >&6; }
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-
-#undef _BSD
-#define _BSD 1 /* unhide unsetenv declaration in OSF/1 5.1 <stdlib.h> */
-#include <stdlib.h>
-extern
-#ifdef __cplusplus
-"C"
+#include <sys/ioctl.h>
+/* Some platforms declare ioctl in the wrong header. */
+#if !(defined __GLIBC__ && !defined __UCLIBC__)
+# include <unistd.h>
#endif
-int unsetenv (const char *name);
int
-main ()
+main (void)
{
-
+#undef $gl_func
+ (void) $gl_func;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- gt_cv_func_unsetenv_ret='int'
+if ac_fn_c_try_compile "$LINENO"
+then :
+ eval "$as_gl_Symbol=yes"
else
- gt_cv_func_unsetenv_ret='void'
+ eval "$as_gl_Symbol=no"
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_unsetenv_ret" >&5
-printf "%s\n" "$gt_cv_func_unsetenv_ret" >&6; }
- if test $gt_cv_func_unsetenv_ret = 'void'; then
+eval ac_res=\$$as_gl_Symbol
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
+ cat >>confdefs.h <<_ACEOF
+#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
+_ACEOF
-printf "%s\n" "#define VOID_UNSETENV 1" >>confdefs.h
+ eval ac_cv_have_decl_$gl_func=yes
+fi
+ done
- REPLACE_UNSETENV=1
- fi
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether unsetenv obeys POSIX" >&5
-printf %s "checking whether unsetenv obeys POSIX... " >&6; }
-if ${gl_cv_func_unsetenv_works+:} false; then :
+
+
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether <sys/select.h> is self-contained" >&5
+printf %s "checking whether <sys/select.h> is self-contained... " >&6; }
+if test ${gl_cv_header_sys_select_h_selfcontained+y}
+then :
printf %s "(cached) " >&6
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
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/select.h>
+int
+main (void)
+{
+struct timeval b;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ gl_cv_header_sys_select_h_selfcontained=yes
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ gl_cv_header_sys_select_h_selfcontained=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ if test $gl_cv_header_sys_select_h_selfcontained = yes; then
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
+#include <sys/select.h>
+int
+main (void)
+{
+int memset; int bzero;
+ ;
+ return 0;
+}
- #include <stdlib.h>
- #include <errno.h>
- extern char **environ;
-
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/select.h>
int
-main ()
+main (void)
{
- 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;
+ #undef memset
+ #define memset nonexistent_memset
+ extern
+ #ifdef __cplusplus
+ "C"
+ #endif
+ void *memset (void *, int, unsigned long);
+ #undef bzero
+ #define bzero nonexistent_bzero
+ extern
+ #ifdef __cplusplus
+ "C"
+ #endif
+ void bzero (void *, unsigned long);
+ fd_set fds;
+ FD_ZERO (&fds);
;
return 0;
}
+
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- gl_cv_func_unsetenv_works=yes
+if ac_fn_c_try_link "$LINENO"
+then :
+
else
- gl_cv_func_unsetenv_works=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
+ gl_cv_header_sys_select_h_selfcontained=no
fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_unsetenv_works" >&5
-printf "%s\n" "$gl_cv_func_unsetenv_works" >&6; }
- case "$gl_cv_func_unsetenv_works" in
- *yes) ;;
- *)
- REPLACE_UNSETENV=1
- ;;
- esac
- fi
-
- if test $HAVE_UNSETENV = 0 || test $REPLACE_UNSETENV = 1; then
-
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ fi
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_sys_select_h_selfcontained" >&5
+printf "%s\n" "$gl_cv_header_sys_select_h_selfcontained" >&6; }
- gltests_LIBOBJS="$gltests_LIBOBJS unsetenv.$ac_objext"
+ if test $gl_cv_have_include_next = yes; then
+ gl_cv_next_sys_select_h='<'sys/select.h'>'
+ else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/select.h>" >&5
+printf %s "checking absolute name of <sys/select.h>... " >&6; }
+if test ${gl_cv_next_sys_select_h+y}
+then :
+ printf %s "(cached) " >&6
+else
+ if test $ac_cv_header_sys_select_h = yes; then
- fi
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/select.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/select.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_select_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_sys_select_h
+ gl_cv_next_sys_select_h='"'$gl_header'"'
+ else
+ gl_cv_next_sys_select_h='<'sys/select.h'>'
+ fi
- if test "$GNULIB_UNSETENV" != 1; then
- if test "$GNULIB_UNSETENV" = 0; then
- GNULIB_UNSETENV=$gl_module_indicator_condition
- else
- GNULIB_UNSETENV="($GNULIB_UNSETENV || $gl_module_indicator_condition)"
- fi
- fi
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_select_h" >&5
+printf "%s\n" "$gl_cv_next_sys_select_h" >&6; }
+ fi
+ NEXT_SYS_SELECT_H=$gl_cv_next_sys_select_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/select.h'>'
+ else
+ # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
+ gl_next_as_first_directive=$gl_cv_next_sys_select_h
+ fi
+ NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H=$gl_next_as_first_directive
-printf "%s\n" "#define GNULIB_TEST_UNSETENV 1" >>confdefs.h
+ if test $ac_cv_header_sys_select_h = yes; then
+ HAVE_SYS_SELECT_H=1
+ else
+ HAVE_SYS_SELECT_H=0
+ fi
- abs_aux_dir=`cd "$ac_aux_dir"; pwd`
+ if test $ac_cv_header_sys_socket_h != yes; then
+ for ac_header in winsock2.h
+do :
+ ac_fn_c_check_header_compile "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default"
+if test "x$ac_cv_header_winsock2_h" = xyes
+then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_WINSOCK2_H 1
+_ACEOF
+fi
+done
- ac_fn_c_check_type "$LINENO" "useconds_t" "ac_cv_type_useconds_t" "$ac_includes_default"
-if test "x$ac_cv_type_useconds_t" = xyes; then :
+ 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
-else
-printf "%s\n" "#define useconds_t unsigned int" >>confdefs.h
-fi
- if test $ac_cv_func_usleep = no; then
- HAVE_USLEEP=0
- else
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether usleep allows large arguments" >&5
-printf %s "checking whether usleep allows large arguments... " >&6; }
-if ${gl_cv_func_usleep_works+:} false; then :
+ for gl_func in pselect select; do
+ as_gl_Symbol=`printf "%s\n" "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh`
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $gl_func is declared without a macro" >&5
+printf %s "checking whether $gl_func is declared without a macro... " >&6; }
+if eval test \${$as_gl_Symbol+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
- case "$host_os" in
- # Guess yes on glibc systems.
- *-gnu*) gl_cv_func_usleep_works="guessing yes" ;;
- # If we don't know, assume the worst.
- *) gl_cv_func_usleep_works="guessing no" ;;
- esac
-
-else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#include <unistd.h>
+/* Some systems require prerequisite headers. */
+#include <sys/types.h>
+#if !(defined __GLIBC__ && !defined __UCLIBC__) && HAVE_SYS_TIME_H
+# include <sys/time.h>
+#endif
+#include <sys/select.h>
int
-main ()
+main (void)
{
-return !!usleep (1000000);
+#undef $gl_func
+ (void) $gl_func;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- gl_cv_func_usleep_works=yes
+if ac_fn_c_try_compile "$LINENO"
+then :
+ eval "$as_gl_Symbol=yes"
else
- gl_cv_func_usleep_works=no
+ eval "$as_gl_Symbol=no"
fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
+eval ac_res=\$$as_gl_Symbol
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
+ if eval test \"x\$"$as_gl_Symbol"\" = x"yes"
+then :
+ cat >>confdefs.h <<_ACEOF
+#define `printf "%s\n" "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1
+_ACEOF
+ eval ac_cv_have_decl_$gl_func=yes
fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_usleep_works" >&5
-printf "%s\n" "$gl_cv_func_usleep_works" >&6; }
- case "$gl_cv_func_usleep_works" in
- *yes) ;;
- *)
- REPLACE_USLEEP=1
- ;;
- esac
- fi
+ done
- if test $HAVE_USLEEP = 0 || test $REPLACE_USLEEP = 1; then
- gltests_LIBOBJS="$gltests_LIBOBJS usleep.$ac_objext"
- fi
- if test "$GNULIB_USLEEP" != 1; then
- if test "$GNULIB_USLEEP" = 0; then
- GNULIB_USLEEP=$gl_module_indicator_condition
- else
- GNULIB_USLEEP="($GNULIB_USLEEP || $gl_module_indicator_condition)"
- fi
- fi
+
+
+ if test $gl_cv_have_include_next = yes; then
+ gl_cv_next_sys_uio_h='<'sys/uio.h'>'
+ else
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of <sys/uio.h>" >&5
+printf %s "checking absolute name of <sys/uio.h>... " >&6; }
+if test ${gl_cv_next_sys_uio_h+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ if test $ac_cv_header_sys_uio_h = yes; then
+
+
+
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/uio.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/uio.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_uio_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
+ sed -n "$gl_absolute_header_sed"`
+
+ gl_header=$gl_cv_absolute_sys_uio_h
+ gl_cv_next_sys_uio_h='"'$gl_header'"'
+ else
+ gl_cv_next_sys_uio_h='<'sys/uio.h'>'
+ fi
+
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_uio_h" >&5
+printf "%s\n" "$gl_cv_next_sys_uio_h" >&6; }
+ fi
+ NEXT_SYS_UIO_H=$gl_cv_next_sys_uio_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/uio.h'>'
+ else
+ # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
+ gl_next_as_first_directive=$gl_cv_next_sys_uio_h
+ fi
+ NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H=$gl_next_as_first_directive
+ if test $ac_cv_header_sys_uio_h = yes; then
+ HAVE_SYS_UIO_H=1
+ else
+ HAVE_SYS_UIO_H=0
+ fi
-printf "%s\n" "#define GNULIB_TEST_USLEEP 1" >>confdefs.h
+ abs_aux_dir=`cd "$ac_aux_dir"; pwd`
abs_aux_dir=`cd "$ac_aux_dir"; pwd`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5
printf %s "checking for a traditional french locale... " >&6; }
-if ${gt_cv_locale_fr+:} false; then :
+if test ${gt_cv_locale_fr+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5
printf %s "checking for a french Unicode locale... " >&6; }
-if ${gt_cv_locale_fr_utf8+:} false; then :
+if test ${gt_cv_locale_fr_utf8+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional japanese locale" >&5
printf %s "checking for a traditional japanese locale... " >&6; }
-if ${gt_cv_locale_ja+:} false; then :
+if test ${gt_cv_locale_ja+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5
printf %s "checking for a transitional chinese locale... " >&6; }
-if ${gt_cv_locale_zh_CN+:} false; then :
+if test ${gt_cv_locale_zh_CN+y}
+then :
printf %s "(cached) " >&6
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether wctob works" >&5
printf %s "checking whether wctob works... " >&6; }
-if ${gl_cv_func_wctob_works+:} false; then :
+if test ${gl_cv_func_wctob_works+y}
+then :
printf %s "(cached) " >&6
else
esac
case "$host_os" in
cygwin*)
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
:
else
gl_cv_func_wctob_works=no
;;
esac
if test "$gl_cv_func_wctob_works" != no && test $LOCALE_FR != none; then
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
:
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
gl_cv_func_wctob_works=yes
else
gl_cv_func_wctob_works=no
#include <wchar.h>
"
-if test "x$ac_cv_have_decl_wctob" = xyes; then :
+if test "x$ac_cv_have_decl_wctob" = xyes
+then :
ac_have_decl=1
else
ac_have_decl=0
# Check whether --enable-gcc-warnings was given.
-if test "${enable_gcc_warnings+set}" = set; then :
+if test ${enable_gcc_warnings+y}
+then :
enableval=$enable_gcc_warnings; case $enableval in
yes|no) ;;
*) as_fn_error $? "bad value $enableval for gcc-warnings option" "$LINENO" 5 ;;
if test "$gl_gcc_warnings" = yes; then
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Werror" >&5
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Werror -Wunknown-warning-option" >&5
+printf %s "checking whether C compiler handles -Werror -Wunknown-warning-option... " >&6; }
+if test ${gl_cv_warn_c__Werror__Wunknown_warning_option+y}
+then :
+ printf %s "(cached) " >&6
+else
+
+ gl_save_compiler_FLAGS="$CFLAGS"
+ as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Werror -Wunknown-warning-option"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"
+then :
+ gl_cv_warn_c__Werror__Wunknown_warning_option=yes
+else
+ gl_cv_warn_c__Werror__Wunknown_warning_option=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ CFLAGS="$gl_save_compiler_FLAGS"
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Werror__Wunknown_warning_option" >&5
+printf "%s\n" "$gl_cv_warn_c__Werror__Wunknown_warning_option" >&6; }
+if test "x$gl_cv_warn_c__Werror__Wunknown_warning_option" = xyes
+then :
+ gl_unknown_warnings_are_errors='-Wunknown-warning-option -Werror'
+else
+ gl_unknown_warnings_are_errors=
+fi
+
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Werror" >&5
printf %s "checking whether C compiler handles -Werror... " >&6; }
-if ${gl_cv_warn_c__Werror+:} false; then :
+if test ${gl_cv_warn_c__Werror+y}
+then :
printf %s "(cached) " >&6
else
gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " -Werror"
+ as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Werror"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
gl_cv_warn_c__Werror=yes
else
gl_cv_warn_c__Werror=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
CFLAGS="$gl_save_compiler_FLAGS"
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Werror" >&5
printf "%s\n" "$gl_cv_warn_c__Werror" >&6; }
-if test "x$gl_cv_warn_c__Werror" = xyes; then :
+if test "x$gl_cv_warn_c__Werror" = xyes
+then :
as_fn_append WERROR_CFLAGS " -Werror"
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -Wno-missing-field-initializers is supported" >&5
printf %s "checking whether -Wno-missing-field-initializers is supported... " >&6; }
- if ${gl_cv_cc_nomfi_supported+:} false; then :
+ if test ${gl_cv_cc_nomfi_supported+y}
+then :
printf %s "(cached) " >&6
else
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_cc_nomfi_supported=yes
else
gl_cv_cc_nomfi_supported=no
if test "$gl_cv_cc_nomfi_supported" = yes; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -Wno-missing-field-initializers is needed" >&5
printf %s "checking whether -Wno-missing-field-initializers is needed... " >&6; }
- if ${gl_cv_cc_nomfi_needed+:} false; then :
+ if test ${gl_cv_cc_nomfi_needed+y}
+then :
printf %s "(cached) " >&6
else
}
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_cc_nomfi_needed=no
else
gl_cv_cc_nomfi_needed=yes
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -Wuninitialized is supported" >&5
printf %s "checking whether -Wuninitialized is supported... " >&6; }
- if ${gl_cv_cc_uninitialized_supported+:} false; then :
+ if test ${gl_cv_cc_uninitialized_supported+y}
+then :
printf %s "(cached) " >&6
else
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
gl_cv_cc_uninitialized_supported=yes
else
gl_cv_cc_uninitialized_supported=no
fi
# List all gcc warning categories.
+ # To compare this list to your installed GCC's, run this Bash command:
+ #
+ # comm -3 \
+ # <(sed -n 's/^ *\(-[^ ]*\) .*/\1/p' manywarnings.m4 | sort) \
+ # <(gcc --help=warnings | sed -n 's/^ \(-[^ ]*\) .*/\1/p' | sort |
+ # grep -v -x -f <(
+ # awk '/^[^#]/ {print ws}' ../build-aux/gcc-warning.spec))
+
gl_manywarn_set=
for gl_manywarn_item in \
-W \
-Wabi \
-Waddress \
+ -Waggressive-loop-optimizations \
-Wall \
- -Warray-bounds \
-Wattributes \
-Wbad-function-cast \
+ -Wbool-compare \
-Wbuiltin-macro-redefined \
-Wcast-align \
-Wchar-subscripts \
+ -Wchkp \
-Wclobbered \
-Wcomment \
-Wcomments \
-Wcoverage-mismatch \
-Wcpp \
+ -Wdate-time \
-Wdeprecated \
-Wdeprecated-declarations \
+ -Wdesignated-init \
-Wdisabled-optimization \
+ -Wdiscarded-array-qualifiers \
+ -Wdiscarded-qualifiers \
-Wdiv-by-zero \
-Wdouble-promotion \
+ -Wduplicated-cond \
-Wempty-body \
-Wendif-labels \
-Wenum-compare \
-Wformat-extra-args \
-Wformat-nonliteral \
-Wformat-security \
+ -Wformat-signedness \
-Wformat-y2k \
-Wformat-zero-length \
- -Wformat=2 \
+ -Wframe-address \
-Wfree-nonheap-object \
+ -Whsa \
+ -Wignored-attributes \
-Wignored-qualifiers \
-Wimplicit \
-Wimplicit-function-declaration \
-Wimplicit-int \
+ -Wincompatible-pointer-types \
-Winit-self \
-Winline \
+ -Wint-conversion \
-Wint-to-pointer-cast \
-Winvalid-memory-model \
-Winvalid-pch \
-Wjump-misses-init \
+ -Wlogical-not-parentheses \
-Wlogical-op \
-Wmain \
-Wmaybe-uninitialized \
+ -Wmemset-transposed-args \
+ -Wmisleading-indentation \
-Wmissing-braces \
-Wmissing-declarations \
-Wmissing-field-initializers \
- -Wmissing-format-attribute \
-Wmissing-include-dirs \
- -Wmissing-noreturn \
-Wmissing-parameter-type \
-Wmissing-prototypes \
- -Wmudflap \
-Wmultichar \
-Wnarrowing \
-Wnested-externs \
-Wnonnull \
- -Wnormalized=nfc \
+ -Wnonnull-compare \
+ -Wnull-dereference \
+ -Wodr \
-Wold-style-declaration \
-Wold-style-definition \
+ -Wopenmp-simd \
-Woverflow \
-Woverlength-strings \
-Woverride-init \
-Wpointer-sign \
-Wpointer-to-int-cast \
-Wpragmas \
+ -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-memaccess \
-Wstack-protector \
-Wstrict-aliasing \
-Wsuggest-attribute=format \
-Wsuggest-attribute=noreturn \
-Wsuggest-attribute=pure \
+ -Wsuggest-final-methods \
+ -Wsuggest-final-types \
-Wswitch \
+ -Wswitch-bool \
-Wswitch-default \
-Wsync-nand \
-Wsystem-headers \
+ -Wtautological-compare \
-Wtrampolines \
-Wtrigraphs \
-Wtype-limits \
-Wuninitialized \
-Wunknown-pragmas \
- -Wunreachable-code \
-Wunsafe-loop-optimizations \
-Wunused \
-Wunused-but-set-parameter \
gl_manywarn_set="$gl_manywarn_set $gl_manywarn_item"
done
+ # gcc --help=warnings outputs an unusual form for these options; list
+ # them here so that the above 'comm' command doesn't report a false match.
+ gl_manywarn_set="$gl_manywarn_set -Warray-bounds=2"
+ gl_manywarn_set="$gl_manywarn_set -Wnormalized=nfc"
+ gl_manywarn_set="$gl_manywarn_set -Wshift-overflow=2"
+ gl_manywarn_set="$gl_manywarn_set -Wunused-const-variable=2"
+
+ # These are needed for older GCC versions.
+ if test -n "$GCC"; then
+ case `($CC --version) 2>/dev/null` in
+ 'gcc (GCC) '[0-3].* | \
+ 'gcc (GCC) '4.[0-7].*)
+ gl_manywarn_set="$gl_manywarn_set -fdiagnostics-show-option"
+ gl_manywarn_set="$gl_manywarn_set -funit-at-a-time"
+ ;;
+ esac
+ fi
+
# Disable specific options as needed.
if test "$gl_cv_cc_nomfi_needed" = yes; then
gl_manywarn_set="$gl_manywarn_set -Wno-missing-field-initializers"
ws=$gl_warn_set
for w in $ws; do
- as_gl_Warn=`printf "%s\n" "gl_cv_warn_c_$w" | $as_tr_sh`
+
+as_gl_Warn=`printf "%s\n" "gl_cv_warn_c_$w" | $as_tr_sh`
+gl_positive="$w"
+case $gl_positive in
+ -Wno-*) gl_positive=-W`expr "X$gl_positive" : 'X-Wno-\(.*\)'` ;;
+esac
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles $w" >&5
printf %s "checking whether C compiler handles $w... " >&6; }
-if eval \${$as_gl_Warn+:} false; then :
+if eval test \${$as_gl_Warn+y}
+then :
printf %s "(cached) " >&6
else
gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " $w"
+ as_fn_append CFLAGS " $gl_unknown_warnings_are_errors $gl_positive"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
eval "$as_gl_Warn=yes"
else
eval "$as_gl_Warn=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
CFLAGS="$gl_save_compiler_FLAGS"
fi
eval ac_res=\$$as_gl_Warn
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
-if eval test \"x\$"$as_gl_Warn"\" = x"yes"; then :
+if eval test \"x\$"$as_gl_Warn"\" = x"yes"
+then :
as_fn_append WARN_CFLAGS " $w"
fi
done
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wno-missing-field-initializers" >&5
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wno-missing-field-initializers" >&5
printf %s "checking whether C compiler handles -Wno-missing-field-initializers... " >&6; }
-if ${gl_cv_warn_c__Wno_missing_field_initializers+:} false; then :
+if test ${gl_cv_warn_c__Wno_missing_field_initializers+y}
+then :
printf %s "(cached) " >&6
else
gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " -Wno-missing-field-initializers"
+ as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wmissing-field-initializers"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
gl_cv_warn_c__Wno_missing_field_initializers=yes
else
gl_cv_warn_c__Wno_missing_field_initializers=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
CFLAGS="$gl_save_compiler_FLAGS"
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wno_missing_field_initializers" >&5
printf "%s\n" "$gl_cv_warn_c__Wno_missing_field_initializers" >&6; }
-if test "x$gl_cv_warn_c__Wno_missing_field_initializers" = xyes; then :
+if test "x$gl_cv_warn_c__Wno_missing_field_initializers" = xyes
+then :
as_fn_append WARN_CFLAGS " -Wno-missing-field-initializers"
fi
# We need this one
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wno-sign-compare" >&5
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wno-sign-compare" >&5
printf %s "checking whether C compiler handles -Wno-sign-compare... " >&6; }
-if ${gl_cv_warn_c__Wno_sign_compare+:} false; then :
+if test ${gl_cv_warn_c__Wno_sign_compare+y}
+then :
printf %s "(cached) " >&6
else
gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " -Wno-sign-compare"
+ as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wsign-compare"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
gl_cv_warn_c__Wno_sign_compare=yes
else
gl_cv_warn_c__Wno_sign_compare=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
CFLAGS="$gl_save_compiler_FLAGS"
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wno_sign_compare" >&5
printf "%s\n" "$gl_cv_warn_c__Wno_sign_compare" >&6; }
-if test "x$gl_cv_warn_c__Wno_sign_compare" = xyes; then :
+if test "x$gl_cv_warn_c__Wno_sign_compare" = xyes
+then :
as_fn_append WARN_CFLAGS " -Wno-sign-compare"
fi
# Too many warnings for now
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wno-pointer-sign" >&5
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wno-pointer-sign" >&5
printf %s "checking whether C compiler handles -Wno-pointer-sign... " >&6; }
-if ${gl_cv_warn_c__Wno_pointer_sign+:} false; then :
+if test ${gl_cv_warn_c__Wno_pointer_sign+y}
+then :
printf %s "(cached) " >&6
else
gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " -Wno-pointer-sign"
+ as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wpointer-sign"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
gl_cv_warn_c__Wno_pointer_sign=yes
else
gl_cv_warn_c__Wno_pointer_sign=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
CFLAGS="$gl_save_compiler_FLAGS"
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wno_pointer_sign" >&5
printf "%s\n" "$gl_cv_warn_c__Wno_pointer_sign" >&6; }
-if test "x$gl_cv_warn_c__Wno_pointer_sign" = xyes; then :
+if test "x$gl_cv_warn_c__Wno_pointer_sign" = xyes
+then :
as_fn_append WARN_CFLAGS " -Wno-pointer-sign"
fi
# Too many warnings for now
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wno-unused-parameter" >&5
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wno-unused-parameter" >&5
printf %s "checking whether C compiler handles -Wno-unused-parameter... " >&6; }
-if ${gl_cv_warn_c__Wno_unused_parameter+:} false; then :
+if test ${gl_cv_warn_c__Wno_unused_parameter+y}
+then :
printf %s "(cached) " >&6
else
gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " -Wno-unused-parameter"
+ as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wunused-parameter"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
gl_cv_warn_c__Wno_unused_parameter=yes
else
gl_cv_warn_c__Wno_unused_parameter=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
CFLAGS="$gl_save_compiler_FLAGS"
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wno_unused_parameter" >&5
printf "%s\n" "$gl_cv_warn_c__Wno_unused_parameter" >&6; }
-if test "x$gl_cv_warn_c__Wno_unused_parameter" = xyes; then :
+if test "x$gl_cv_warn_c__Wno_unused_parameter" = xyes
+then :
as_fn_append WARN_CFLAGS " -Wno-unused-parameter"
fi
# Too many warnings for now
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wno-format-nonliteral" >&5
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wno-format-nonliteral" >&5
printf %s "checking whether C compiler handles -Wno-format-nonliteral... " >&6; }
-if ${gl_cv_warn_c__Wno_format_nonliteral+:} false; then :
+if test ${gl_cv_warn_c__Wno_format_nonliteral+y}
+then :
printf %s "(cached) " >&6
else
gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " -Wno-format-nonliteral"
+ as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wformat-nonliteral"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
gl_cv_warn_c__Wno_format_nonliteral=yes
else
gl_cv_warn_c__Wno_format_nonliteral=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
CFLAGS="$gl_save_compiler_FLAGS"
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wno_format_nonliteral" >&5
printf "%s\n" "$gl_cv_warn_c__Wno_format_nonliteral" >&6; }
-if test "x$gl_cv_warn_c__Wno_format_nonliteral" = xyes; then :
+if test "x$gl_cv_warn_c__Wno_format_nonliteral" = xyes
+then :
as_fn_append WARN_CFLAGS " -Wno-format-nonliteral"
fi
# In spite of excluding -Wlogical-op above, it is enabled, as of
# gcc 4.5.0 20090517, and it provokes warnings in cat.c, dd.c, truncate.c
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wno-logical-op" >&5
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wno-logical-op" >&5
printf %s "checking whether C compiler handles -Wno-logical-op... " >&6; }
-if ${gl_cv_warn_c__Wno_logical_op+:} false; then :
+if test ${gl_cv_warn_c__Wno_logical_op+y}
+then :
printf %s "(cached) " >&6
else
gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " -Wno-logical-op"
+ as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wlogical-op"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
gl_cv_warn_c__Wno_logical_op=yes
else
gl_cv_warn_c__Wno_logical_op=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
CFLAGS="$gl_save_compiler_FLAGS"
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wno_logical_op" >&5
printf "%s\n" "$gl_cv_warn_c__Wno_logical_op" >&6; }
-if test "x$gl_cv_warn_c__Wno_logical_op" = xyes; then :
+if test "x$gl_cv_warn_c__Wno_logical_op" = xyes
+then :
as_fn_append WARN_CFLAGS " -Wno-logical-op"
fi
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -fdiagnostics-show-option" >&5
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -fdiagnostics-show-option" >&5
printf %s "checking whether C compiler handles -fdiagnostics-show-option... " >&6; }
-if ${gl_cv_warn_c__fdiagnostics_show_option+:} false; then :
+if test ${gl_cv_warn_c__fdiagnostics_show_option+y}
+then :
printf %s "(cached) " >&6
else
gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " -fdiagnostics-show-option"
+ as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -fdiagnostics-show-option"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
gl_cv_warn_c__fdiagnostics_show_option=yes
else
gl_cv_warn_c__fdiagnostics_show_option=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
CFLAGS="$gl_save_compiler_FLAGS"
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__fdiagnostics_show_option" >&5
printf "%s\n" "$gl_cv_warn_c__fdiagnostics_show_option" >&6; }
-if test "x$gl_cv_warn_c__fdiagnostics_show_option" = xyes; then :
+if test "x$gl_cv_warn_c__fdiagnostics_show_option" = xyes
+then :
as_fn_append WARN_CFLAGS " -fdiagnostics-show-option"
fi
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -funit-at-a-time" >&5
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -funit-at-a-time" >&5
printf %s "checking whether C compiler handles -funit-at-a-time... " >&6; }
-if ${gl_cv_warn_c__funit_at_a_time+:} false; then :
+if test ${gl_cv_warn_c__funit_at_a_time+y}
+then :
printf %s "(cached) " >&6
else
gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " -funit-at-a-time"
+ as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -funit-at-a-time"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-main ()
+main (void)
{
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
gl_cv_warn_c__funit_at_a_time=yes
else
gl_cv_warn_c__funit_at_a_time=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
CFLAGS="$gl_save_compiler_FLAGS"
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__funit_at_a_time" >&5
printf "%s\n" "$gl_cv_warn_c__funit_at_a_time" >&6; }
-if test "x$gl_cv_warn_c__funit_at_a_time" = xyes; then :
+if test "x$gl_cv_warn_c__funit_at_a_time" = xyes
+then :
as_fn_append WARN_CFLAGS " -funit-at-a-time"
fi
nw="$nw -Wunused-macros"
nw="$nw -Wmissing-prototypes"
nw="$nw -Wold-style-definition"
+ nw="$nw -Wsuggest-attribute=pure"
gl_warn_set=
set x $WARN_CFLAGS; shift
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
printf %s "checking for inline... " >&6; }
-if ${ac_cv_c_inline+:} false; then :
+if test ${ac_cv_c_inline+y}
+then :
printf %s "(cached) " >&6
else
ac_cv_c_inline=no
#endif
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_c_inline=$ac_kw
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for variable-length arrays" >&5
printf %s "checking for variable-length arrays... " >&6; }
-if ${ac_cv_c_vararrays+:} false; then :
+if test ${ac_cv_c_vararrays+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
+#ifdef __STDC_NO_VLA__
+ defined
+ #endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "defined" >/dev/null 2>&1
+then :
+ ac_cv_c_vararrays='no: __STDC_NO_VLA__ is defined'
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Test for VLA support. This test is partly inspired
+ from examples in the C standard. Use at least two VLA
+ functions to detect the GCC 3.4.3 bug described in:
+ http://lists.gnu.org/archive/html/bug-gnulib/2014-08/msg00014.html
+ */
+ #ifdef __STDC_NO_VLA__
+ syntax error;
+ #else
+ extern int n;
+ int B[100];
+ int fvla (int m, int C[m][m]);
+
+ int
+ simple (int count, int all[static count])
+ {
+ return all[count - 1];
+ }
+
+ int
+ fvla (int m, int C[m][m])
+ {
+ typedef int VLA[m][m];
+ VLA x;
+ int D[m];
+ static int (*q)[m] = &B;
+ int (*s)[n] = q;
+ return C && &x[0][0] == &D[0] && &D[0] == s[0];
+ }
+ #endif
int
-main ()
+main (void)
{
-static int x; char a[++x]; a[sizeof a - 1] = 0; return a[0];
+
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_c_vararrays=yes
else
ac_cv_c_vararrays=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
+rm -rf conftest*
+
+fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_vararrays" >&5
printf "%s\n" "$ac_cv_c_vararrays" >&6; }
- if test $ac_cv_c_vararrays = yes; then
+ if test "$ac_cv_c_vararrays" = yes; then
printf "%s\n" "#define HAVE_C_VARARRAYS 1" >>confdefs.h
+ elif test "$ac_cv_c_vararrays" = no; then
+
+printf "%s\n" "#define __STDC_NO_VLA__ 1" >>confdefs.h
+
fi
set dummy pr; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PR_PROGRAM+:} false; then :
+if test ${ac_cv_path_PR_PROGRAM+y}
+then :
printf %s "(cached) " >&6
else
case $PR_PROGRAM in
ac_fn_c_check_member "$LINENO" "struct stat" "st_blksize" "ac_cv_member_struct_stat_st_blksize" "$ac_includes_default"
-if test "x$ac_cv_member_struct_stat_st_blksize" = xyes; then :
+if test "x$ac_cv_member_struct_stat_st_blksize" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRUCT_STAT_ST_BLKSIZE 1
fi
ac_fn_c_check_member "$LINENO" "struct stat" "st_rdev" "ac_cv_member_struct_stat_st_rdev" "$ac_includes_default"
-if test "x$ac_cv_member_struct_stat_st_rdev" = xyes; then :
+if test "x$ac_cv_member_struct_stat_st_rdev" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRUCT_STAT_ST_RDEV 1
as_ac_Header=`printf "%s\n" "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_hdr that defines DIR" >&5
printf %s "checking for $ac_hdr that defines DIR... " >&6; }
-if eval \${$as_ac_Header+:} false; then :
+if eval test \${$as_ac_Header+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#include <$ac_hdr>
int
-main ()
+main (void)
{
if ((DIR *) 0)
return 0;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
eval "$as_ac_Header=yes"
else
eval "$as_ac_Header=no"
eval ac_res=\$$as_ac_Header
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
printf "%s\n" "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+if eval test \"x\$"$as_ac_Header"\" = x"yes"
+then :
cat >>confdefs.h <<_ACEOF
#define `printf "%s\n" "HAVE_$ac_hdr" | $as_tr_cpp` 1
_ACEOF
if test $ac_header_dirent = dirent.h; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
printf %s "checking for library containing opendir... " >&6; }
-if ${ac_cv_search_opendir+:} false; then :
+if test ${ac_cv_search_opendir+y}
+then :
printf %s "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
#endif
char opendir ();
int
-main ()
+main (void)
{
return opendir ();
;
return 0;
}
_ACEOF
-for ac_lib in '' dir; do
+for ac_lib in '' dir
+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 :
+ if ac_fn_c_try_link "$LINENO"
+then :
ac_cv_search_opendir=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_opendir+:} false; then :
+ if test ${ac_cv_search_opendir+y}
+then :
break
fi
done
-if ${ac_cv_search_opendir+:} false; then :
+if test ${ac_cv_search_opendir+y}
+then :
else
ac_cv_search_opendir=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
printf "%s\n" "$ac_cv_search_opendir" >&6; }
ac_res=$ac_cv_search_opendir
-if test "$ac_res" != no; then :
+if test "$ac_res" != no
+then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
fi
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
printf %s "checking for library containing opendir... " >&6; }
-if ${ac_cv_search_opendir+:} false; then :
+if test ${ac_cv_search_opendir+y}
+then :
printf %s "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
#endif
char opendir ();
int
-main ()
+main (void)
{
return opendir ();
;
return 0;
}
_ACEOF
-for ac_lib in '' x; do
+for ac_lib in '' x
+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 :
+ if ac_fn_c_try_link "$LINENO"
+then :
ac_cv_search_opendir=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_opendir+:} false; then :
+ if test ${ac_cv_search_opendir+y}
+then :
break
fi
done
-if ${ac_cv_search_opendir+:} false; then :
+if test ${ac_cv_search_opendir+y}
+then :
else
ac_cv_search_opendir=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
printf "%s\n" "$ac_cv_search_opendir" >&6; }
ac_res=$ac_cv_search_opendir
-if test "$ac_res" != no; then :
+if test "$ac_res" != no
+then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sys/wait.h that is POSIX.1 compatible" >&5
printf %s "checking for sys/wait.h that is POSIX.1 compatible... " >&6; }
-if ${ac_cv_header_sys_wait_h+:} false; then :
+if test ${ac_cv_header_sys_wait_h+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int
-main ()
+main (void)
{
int s;
wait (&s);
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
ac_cv_header_sys_wait_h=yes
else
ac_cv_header_sys_wait_h=no
fi
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 :
+if test "x$ac_cv_type_pid_t" = xyes
+then :
else
for ac_func in sigblock
do :
ac_fn_c_check_func "$LINENO" "sigblock" "ac_cv_func_sigblock"
-if test "x$ac_cv_func_sigblock" = xyes; then :
+if test "x$ac_cv_func_sigblock" = xyes
+then :
cat >>confdefs.h <<_ACEOF
#define HAVE_SIGBLOCK 1
_ACEOF
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether closedir returns void" >&5
printf %s "checking whether closedir returns void... " >&6; }
-if ${ac_cv_func_closedir_void+:} false; then :
+if test ${ac_cv_func_closedir_void+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
ac_cv_func_closedir_void=yes
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#endif
int
-main ()
+main (void)
{
return closedir (opendir (".")) != 0;
;
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
ac_cv_func_closedir_void=no
else
ac_cv_func_closedir_void=yes
fi
-for ac_header in vfork.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "vfork.h" "ac_cv_header_vfork_h" "$ac_includes_default"
-if test "x$ac_cv_header_vfork_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_VFORK_H 1
-_ACEOF
-fi
-done
-for ac_func in fork vfork
-do :
- as_ac_var=`printf "%s\n" "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 `printf "%s\n" "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-fi
-done
+
+
+
if test "x$ac_cv_func_fork" = xyes; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working fork" >&5
printf %s "checking for working fork... " >&6; }
-if ${ac_cv_func_fork_works+:} false; then :
+if test ${ac_cv_func_fork_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
ac_cv_func_fork_works=cross
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$ac_includes_default
int
-main ()
+main (void)
{
/* By Ruediger Kuhlmann. */
return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
ac_cv_func_fork_works=yes
else
ac_cv_func_fork_works=no
if test "x$ac_cv_func_vfork" = xyes; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working vfork" >&5
printf %s "checking for working vfork... " >&6; }
-if ${ac_cv_func_vfork_works+:} false; then :
+if test ${ac_cv_func_vfork_works+y}
+then :
printf %s "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
+ if test "$cross_compiling" = yes
+then :
ac_cv_func_vfork_works=cross
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
}
int
-main ()
+main (void)
{
pid_t parent = getpid ();
pid_t child;
}
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
ac_cv_func_vfork_works=yes
else
ac_cv_func_vfork_works=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
printf %s "checking whether NLS is requested... " >&6; }
# Check whether --enable-nls was given.
-if test "${enable_nls+set}" = set; then :
+if test ${enable_nls+y}
+then :
enableval=$enable_nls; USE_NLS=$enableval
else
USE_NLS=yes
- GETTEXT_MACRO_VERSION=0.18
+ GETTEXT_MACRO_VERSION=0.19
set dummy msgfmt; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_path_MSGFMT+:} false; then :
+if test ${ac_cv_path_MSGFMT+y}
+then :
printf %s "(cached) " >&6
else
case "$MSGFMT" in
set dummy gmsgfmt; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_path_GMSGFMT+:} false; then :
+if test ${ac_cv_path_GMSGFMT+y}
+then :
printf %s "(cached) " >&6
else
case $GMSGFMT in
set dummy xgettext; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_path_XGETTEXT+:} false; then :
+if test ${ac_cv_path_XGETTEXT+y}
+then :
printf %s "(cached) " >&6
else
case "$XGETTEXT" in
set dummy msgmerge; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
-if ${ac_cv_path_MSGMERGE+:} false; then :
+if test ${ac_cv_path_MSGMERGE+y}
+then :
printf %s "(cached) " >&6
else
case "$MSGMERGE" in
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5
printf %s "checking for CFPreferencesCopyAppValue... " >&6; }
-if ${gt_cv_func_CFPreferencesCopyAppValue+:} false; then :
+if test ${gt_cv_func_CFPreferencesCopyAppValue+y}
+then :
printf %s "(cached) " >&6
else
gt_save_LIBS="$LIBS"
/* end confdefs.h. */
#include <CoreFoundation/CFPreferences.h>
int
-main ()
+main (void)
{
CFPreferencesCopyAppValue(NULL, NULL)
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
gt_cv_func_CFPreferencesCopyAppValue=yes
else
gt_cv_func_CFPreferencesCopyAppValue=no
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyCurrent" >&5
printf %s "checking for CFLocaleCopyCurrent... " >&6; }
-if ${gt_cv_func_CFLocaleCopyCurrent+:} false; then :
+if test ${gt_cv_func_CFLocaleCopyCurrent+y}
+then :
printf %s "(cached) " >&6
else
gt_save_LIBS="$LIBS"
/* end confdefs.h. */
#include <CoreFoundation/CFLocale.h>
int
-main ()
+main (void)
{
CFLocaleCopyCurrent();
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
gt_cv_func_CFLocaleCopyCurrent=yes
else
gt_cv_func_CFLocaleCopyCurrent=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5
printf %s "checking for GNU gettext in libc... " >&6; }
-if eval \${$gt_func_gnugettext_libc+:} false; then :
+if eval test \${$gt_func_gnugettext_libc+y}
+then :
printf %s "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
extern int *_nl_domain_bindings;
int
-main ()
+main (void)
{
bindtextdomain ("", "");
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
eval "$gt_func_gnugettext_libc=yes"
else
eval "$gt_func_gnugettext_libc=no"
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
printf %s "checking for iconv... " >&6; }
-if ${am_cv_func_iconv+:} false; then :
+if test ${am_cv_func_iconv+y}
+then :
printf %s "(cached) " >&6
else
#include <iconv.h>
int
-main ()
+main (void)
{
iconv_t cd = iconv_open("","");
iconv(cd,NULL,NULL,NULL,NULL);
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
am_cv_func_iconv=yes
fi
rm -f core conftest.err conftest.$ac_objext \
#include <iconv.h>
int
-main ()
+main (void)
{
iconv_t cd = iconv_open("","");
iconv(cd,NULL,NULL,NULL,NULL);
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
am_cv_lib_iconv=yes
am_cv_func_iconv=yes
fi
if test "$am_cv_func_iconv" = yes; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working iconv" >&5
printf %s "checking for working iconv... " >&6; }
-if ${am_cv_func_iconv_works+:} false; then :
+if test ${am_cv_func_iconv_works+y}
+then :
printf %s "(cached) " >&6
else
if test $am_cv_lib_iconv = yes; then
LIBS="$LIBS $LIBICONV"
fi
- if test "$cross_compiling" = yes; then :
-
- case "$host_os" in
- aix* | hpux*) am_cv_func_iconv_works="guessing no" ;;
- *) am_cv_func_iconv_works="guessing yes" ;;
- esac
-
+ am_cv_func_iconv_works=no
+ for ac_iconv_const in '' 'const'; do
+ if test "$cross_compiling" = yes
+then :
+ case "$host_os" in
+ aix* | hpux*) am_cv_func_iconv_works="guessing no" ;;
+ *) am_cv_func_iconv_works="guessing yes" ;;
+ esac
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <iconv.h>
#include <string.h>
-int main ()
+
+#ifndef ICONV_CONST
+# define ICONV_CONST $ac_iconv_const
+#endif
+
+int
+main (void)
{
- int result = 0;
+int result = 0;
/* Test against AIX 5.1 bug: Failures are not distinguishable from successful
returns. */
{
iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8");
if (cd_utf8_to_88591 != (iconv_t)(-1))
{
- static const char input[] = "\342\202\254"; /* EURO SIGN */
+ static ICONV_CONST char input[] = "\342\202\254"; /* EURO SIGN */
char buf[10];
- const char *inptr = input;
+ ICONV_CONST char *inptr = input;
size_t inbytesleft = strlen (input);
char *outptr = buf;
size_t outbytesleft = sizeof (buf);
size_t res = iconv (cd_utf8_to_88591,
- (char **) &inptr, &inbytesleft,
+ &inptr, &inbytesleft,
&outptr, &outbytesleft);
if (res == 0)
result |= 1;
iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646");
if (cd_ascii_to_88591 != (iconv_t)(-1))
{
- static const char input[] = "\263";
+ static ICONV_CONST char input[] = "\263";
char buf[10];
- const char *inptr = input;
+ ICONV_CONST char *inptr = input;
size_t inbytesleft = strlen (input);
char *outptr = buf;
size_t outbytesleft = sizeof (buf);
size_t res = iconv (cd_ascii_to_88591,
- (char **) &inptr, &inbytesleft,
+ &inptr, &inbytesleft,
&outptr, &outbytesleft);
if (res == 0)
result |= 2;
iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1");
if (cd_88591_to_utf8 != (iconv_t)(-1))
{
- static const char input[] = "\304";
+ static ICONV_CONST char input[] = "\304";
static char buf[2] = { (char)0xDE, (char)0xAD };
- const char *inptr = input;
+ ICONV_CONST char *inptr = input;
size_t inbytesleft = 1;
char *outptr = buf;
size_t outbytesleft = 1;
size_t res = iconv (cd_88591_to_utf8,
- (char **) &inptr, &inbytesleft,
+ &inptr, &inbytesleft,
&outptr, &outbytesleft);
if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD)
result |= 4;
iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591");
if (cd_88591_to_utf8 != (iconv_t)(-1))
{
- static const char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337";
+ static ICONV_CONST char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337";
char buf[50];
- const char *inptr = input;
+ ICONV_CONST char *inptr = input;
size_t inbytesleft = strlen (input);
char *outptr = buf;
size_t outbytesleft = sizeof (buf);
size_t res = iconv (cd_88591_to_utf8,
- (char **) &inptr, &inbytesleft,
+ &inptr, &inbytesleft,
&outptr, &outbytesleft);
if ((int)res > 0)
result |= 8;
&& iconv_open ("utf8", "eucJP") == (iconv_t)(-1))
result |= 16;
return result;
+
+ ;
+ return 0;
}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
am_cv_func_iconv_works=yes
-else
- am_cv_func_iconv_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
+ test "$am_cv_func_iconv_works" = no || break
+ done
LIBS="$am_save_LIBS"
fi
# Check whether --with-libintl-prefix was given.
-if test "${with_libintl_prefix+set}" = set; then :
+if test ${with_libintl_prefix+y}
+then :
withval=$with_libintl_prefix;
if test "X$withval" = "Xno"; then
use_additional=no
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5
printf %s "checking for GNU gettext in libintl... " >&6; }
-if eval \${$gt_func_gnugettext_libintl+:} false; then :
+if eval test \${$gt_func_gnugettext_libintl+y}
+then :
printf %s "(cached) " >&6
else
gt_save_CPPFLAGS="$CPPFLAGS"
const char *_nl_expand_alias (const char *);
int
-main ()
+main (void)
{
bindtextdomain ("", "");
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
eval "$gt_func_gnugettext_libintl=yes"
else
eval "$gt_func_gnugettext_libintl=no"
const char *_nl_expand_alias (const char *);
int
-main ()
+main (void)
{
bindtextdomain ("", "");
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
LIBINTL="$LIBINTL $LIBICONV"
LTLIBINTL="$LTLIBINTL $LTLIBICONV"
eval "$gt_func_gnugettext_libintl=yes"
/^ac_cv_env_/b end
t clear
:clear
- s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+ s/^\([^=]*\)=\(.*[{}].*\)$/test ${\1+y} || &/
t end
s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
:end' >>confcache
+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=
gltests_ltlibobjs=
if test -n "$gltests_LIBOBJS"; then
# Be more Bourne compatible
DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
+if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
+if ${PATH_SEPARATOR+false} :; then
PATH_SEPARATOR=:
(PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
(PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
# suppresses any "Segmentation fault" message there. '((' could
# trigger a bug in pdksh 5.2.14.
for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
+do eval test \${$as_var+y} \
&& ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
done
PS1='$ '
# advantage of any shell optimizations that allow amortized linear growth over
# repeated appends, instead of the typical quadratic growth present in naive
# implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null
+then :
eval 'as_fn_append ()
{
eval $1+=\$2
# Perform arithmetic evaluation on the ARGs, and store the result in the
# global $as_val. Take advantage of shells that can avoid forks. The arguments
# must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null
+then :
eval 'as_fn_arith ()
{
as_val=$(( $* ))
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by GNU diffutils $as_me 3.3, which was
-generated by GNU Autoconf 2.69.79-0bdae. Invocation command line was
+This file was extended by GNU diffutils $as_me 3.4, which was
+generated by GNU Autoconf 2.69.147-5ad35. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`printf "%s\n" "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-GNU diffutils config.status 3.3
-configured by $0, generated by GNU Autoconf 2.69.79-0bdae,
+GNU diffutils config.status 3.4
+configured by $0, generated by GNU Autoconf 2.69.147-5ad35,
with options \\"\$ac_cs_config\\"
-Copyright (C) Free Software Foundation, Inc.
+Copyright (C) 2015 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
#
# INIT-COMMANDS
#
-AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
+AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"
GNUmakefile=$GNUmakefile
# Capture the value of obsolete ALL_LINGUAS because we need it to compute
# POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it
# We use the long form for the default assignment because of an extremely
# bizarre bug on SunOS 4.1.3.
if $ac_need_defaults; then
- test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
- test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
- test "${CONFIG_LINKS+set}" = set || CONFIG_LINKS=$config_links
- test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
+ test ${CONFIG_FILES+y} || CONFIG_FILES=$config_files
+ test ${CONFIG_HEADERS+y} || CONFIG_HEADERS=$config_headers
+ test ${CONFIG_LINKS+y} || CONFIG_LINKS=$config_links
+ test ${CONFIG_COMMANDS+y} || CONFIG_COMMANDS=$config_commands
fi
# Have a temporary directory for convenience. Make it in the build tree
# Older Autoconf quotes --file arguments for eval, but not when files
# are listed without --file. Let's play safe and only enable the eval
# if we detect the quoting.
- case $CONFIG_FILES in
- *\'*) eval set x "$CONFIG_FILES" ;;
- *) set x $CONFIG_FILES ;;
- esac
+ # TODO: see whether this extra hack can be removed once we start
+ # requiring Autoconf 2.70 or later.
+ case $CONFIG_FILES in #(
+ *\'*) :
+ eval set x "$CONFIG_FILES" ;; #(
+ *) :
+ set x $CONFIG_FILES ;; #(
+ *) :
+ ;;
+esac
shift
- for mf
+ # Used to flag and report bootstrapping failures.
+ am_rc=0
+ for am_mf
do
# Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named 'Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
+ am_mf=`printf "%s\n" "$am_mf" | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile which includes
+ # dependency-tracking related rules and includes.
+ # Grep'ing the whole file directly is not great: AIX grep has a line
# limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`$as_dirname -- "$mf" ||
-$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$mf" : 'X\(//\)[^/]' \| \
- X"$mf" : 'X\(//\)$' \| \
- X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
-printf "%s\n" X"$mf" |
+ sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
+ || continue
+ am_dirpart=`$as_dirname -- "$am_mf" ||
+$as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$am_mf" : 'X\(//\)[^/]' \| \
+ X"$am_mf" : 'X\(//\)$' \| \
+ X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
+printf "%s\n" X"$am_mf" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
q
}
s/.*/./; q'`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running 'make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`$as_dirname -- "$file" ||
-$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$file" : 'X\(//\)[^/]' \| \
- X"$file" : 'X\(//\)$' \| \
- X"$file" : 'X\(/\)' \| . 2>/dev/null ||
-printf "%s\n" X"$file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
+ am_filepart=`$as_basename -- "$am_mf" ||
+$as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \
+ X"$am_mf" : 'X\(//\)$' \| \
+ X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
+printf "%s\n" X/"$am_mf" |
+ sed '/^.*\/\([^/][^/]*\)\/*$/{
s//\1/
q
}
- /^X\(\/\/\)$/{
+ /^X\/\(\/\/\)$/{
s//\1/
q
}
- /^X\(\/\).*/{
+ /^X\/\(\/\).*/{
s//\1/
q
}
s/.*/./; q'`
- as_dir=$dirpart/$fdir; as_fn_mkdir_p
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
- done
+ { echo "$as_me:$LINENO: cd "$am_dirpart" \
+ && sed -e '/# am--include-marker/d' "$am_filepart" \
+ | $MAKE -f - am--depfiles" >&5
+ (cd "$am_dirpart" \
+ && sed -e '/# am--include-marker/d' "$am_filepart" \
+ | $MAKE -f - am--depfiles) >&5 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } || am_rc=$?
done
+ if test $am_rc -ne 0; then
+ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "Something went wrong bootstrapping makefile fragments
+ for automatic dependency tracking. Try re-running configure with the
+ '--disable-dependency-tracking' option to at least be able to build
+ the package (albeit without support for automatic dependency tracking).
+See \`config.log' for more details" "$LINENO" 5; }
+ fi
+ { am_dirpart=; unset am_dirpart;}
+ { am_filepart=; unset am_filepart;}
+ { am_mf=; unset am_mf;}
+ { am_rc=; unset am_rc;}
+ rm -f conftest-deps.mk
}
;;
"po-directories":C)
# Configure template for GNU Diffutils.
-# Copyright (C) 1994-1995, 1998, 2001-2002, 2004, 2006, 2009-2013 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-1995, 1998, 2001-2002, 2004, 2006, 2009-2013, 2015-2016
+# Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_MACRO_DIR([m4])
-AM_INIT_AUTOMAKE([1.11 dist-xz no-dist-gzip color-tests parallel-tests])
+AM_INIT_AUTOMAKE([1.11 dist-xz no-dist-gzip subdir-objects
+ color-tests parallel-tests])
AM_SILENT_RULES([yes]) # make --enable-silent-rules the default.
AC_CONFIG_HEADER([lib/config.h:lib/config.hin])
AC_PROG_AWK
AC_PROG_CC
+AM_PROG_CC_C_O
AM_MISSING_PROG([HELP2MAN], [help2man])
AC_PROG_RANLIB
gl_EARLY
nw="$nw -Wunused-macros"
nw="$nw -Wmissing-prototypes"
nw="$nw -Wold-style-definition"
+ nw="$nw -Wsuggest-attribute=pure"
gl_MANYWARN_COMPLEMENT([GNULIB_WARN_CFLAGS], [$WARN_CFLAGS], [$nw])
AC_SUBST([GNULIB_WARN_CFLAGS])
fi
|| SRC_VERSION_C=../src/version.c
AM_GNU_GETTEXT([external], [need-ngettext])
-AM_GNU_GETTEXT_VERSION([0.18.2])
+AM_GNU_GETTEXT_VERSION([0.19.2])
XGETTEXT="AWK='$AWK' \$(SHELL) \$(top_srcdir)/exgettext $XGETTEXT"
AC_CONFIG_FILES([
)
(cd $(t) && mv $(distdir) $(distdir).old \
&& $(amtar_extract_) - ) < $(preferred_tarball_)
+ find $(t)/$(distdir).old $(t)/$(distdir) -name .deps | xargs rm -rf
diff -ur $(t)/$(distdir).old $(t)/$(distdir)
-rm -rf $(t)
rmdir $(tmpdir)/$(PACKAGE) $(tmpdir)
# Makefile for GNU diffutils documentation.
-# Copyright (C) 2001-2002, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2002, 2009-2013, 2015-2016 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
-# Makefile.in generated by automake 1.13a from Makefile.am.
+# Makefile.in generated by automake 1.99a from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+# Copyright (C) 1994-2015 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Makefile for GNU diffutils documentation.
-# Copyright (C) 2001-2002, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2002, 2009-2013, 2015-2016 Free Software Foundation, Inc.
# This 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 <http://www.gnu.org/licenses/>.
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = { \
+ if test -z '$(MAKELEVEL)'; then \
+ false; \
+ elif test -n '$(MAKE_HOST)'; then \
+ true; \
+ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+ true; \
+ else \
+ false; \
+ fi; \
+}
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
build_triplet = @build@
host_triplet = @host@
subdir = doc
-DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
- $(diffutils_TEXINFOS) $(top_srcdir)/build-aux/mdate-sh \
- $(srcdir)/version.texi $(srcdir)/stamp-vti \
- $(top_srcdir)/build-aux/texinfo.tex
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
- $(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/btowc.m4 \
+ $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \
+ $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/btowc.m4 \
$(top_srcdir)/m4/c-stack.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/dirname.m4 \
+ $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
$(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
$(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
$(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
$(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fcntl-o.m4 \
$(top_srcdir)/m4/fcntl.m4 $(top_srcdir)/m4/fcntl_h.m4 \
$(top_srcdir)/m4/fdopen.m4 $(top_srcdir)/m4/filenamecat.m4 \
- $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fnmatch.m4 \
- $(top_srcdir)/m4/fpieee.m4 $(top_srcdir)/m4/freopen.m4 \
- $(top_srcdir)/m4/fstat.m4 $(top_srcdir)/m4/getcwd.m4 \
+ $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \
+ $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fpieee.m4 \
+ $(top_srcdir)/m4/freopen.m4 $(top_srcdir)/m4/fstat.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/gettext.m4 \
$(top_srcdir)/m4/gettime.m4 $(top_srcdir)/m4/gettimeofday.m4 \
$(top_srcdir)/m4/gnulib-comp.m4 \
$(top_srcdir)/m4/hard-locale.m4 $(top_srcdir)/m4/iconv.m4 \
$(top_srcdir)/m4/iconv_h.m4 $(top_srcdir)/m4/iconv_open.m4 \
- $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inline.m4 \
- $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \
- $(top_srcdir)/m4/inttostr.m4 $(top_srcdir)/m4/inttypes-pri.m4 \
- $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \
- $(top_srcdir)/m4/iswblank.m4 $(top_srcdir)/m4/langinfo_h.m4 \
- $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \
- $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/libsigsegv.m4 \
+ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
+ $(top_srcdir)/m4/inline.m4 $(top_srcdir)/m4/intlmacosx.m4 \
+ $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttostr.m4 \
+ $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+ $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/ioctl.m4 \
+ $(top_srcdir)/m4/isblank.m4 $(top_srcdir)/m4/iswblank.m4 \
+ $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
+ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
+ $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \
$(top_srcdir)/m4/libunistring-base.m4 \
$(top_srcdir)/m4/localcharset.m4 $(top_srcdir)/m4/locale-fr.m4 \
$(top_srcdir)/m4/locale-ja.m4 $(top_srcdir)/m4/locale-tr.m4 \
$(top_srcdir)/m4/mktime.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/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
$(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/off_t.m4 \
$(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
+ $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
$(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/putenv.m4 \
$(top_srcdir)/m4/quote.m4 $(top_srcdir)/m4/quotearg.m4 \
- $(top_srcdir)/m4/raise.m4 $(top_srcdir)/m4/readlink.m4 \
- $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/secure_getenv.m4 \
+ $(top_srcdir)/m4/raise.m4 $(top_srcdir)/m4/rawmemchr.m4 \
+ $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/regex.m4 \
+ $(top_srcdir)/m4/secure_getenv.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/signalblocking.m4 \
$(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \
- $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/ssize_t.m4 \
+ $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/socketlib.m4 \
+ $(top_srcdir)/m4/sockets.m4 $(top_srcdir)/m4/socklen.m4 \
+ $(top_srcdir)/m4/sockpfaf.m4 $(top_srcdir)/m4/ssize_t.m4 \
$(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \
- $(top_srcdir)/m4/stdarg.m4 $(top_srcdir)/m4/stdbool.m4 \
- $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \
- $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \
- $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/strcase.m4 \
- $(top_srcdir)/m4/strerror.m4 $(top_srcdir)/m4/strftime.m4 \
+ $(top_srcdir)/m4/stdalign.m4 $(top_srcdir)/m4/stdarg.m4 \
+ $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \
+ $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \
+ $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \
+ $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strerror.m4 \
+ $(top_srcdir)/m4/strerror_r.m4 $(top_srcdir)/m4/strftime.m4 \
$(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \
$(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \
$(top_srcdir)/m4/strptime.m4 $(top_srcdir)/m4/strtoull.m4 \
$(top_srcdir)/m4/strtoumax.m4 $(top_srcdir)/m4/symlink.m4 \
+ $(top_srcdir)/m4/sys_ioctl_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 \
- $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_wait_h.m4 \
- $(top_srcdir)/m4/tempname.m4 $(top_srcdir)/m4/time_h.m4 \
- $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/timespec.m4 \
- $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/unistd_h.m4 \
- $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/usleep.m4 \
+ $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_uio_h.m4 \
+ $(top_srcdir)/m4/sys_wait_h.m4 $(top_srcdir)/m4/tempname.m4 \
+ $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \
+ $(top_srcdir)/m4/time_rz.m4 $(top_srcdir)/m4/timegm.m4 \
+ $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \
+ $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlocked-io.m4 \
$(top_srcdir)/m4/vararrays.m4 $(top_srcdir)/m4/vasnprintf.m4 \
$(top_srcdir)/m4/vasprintf.m4 $(top_srcdir)/m4/version-etc.m4 \
$(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
$(top_srcdir)/m4/xvasprintf.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/version.texi \
+ $(srcdir)/stamp-vti $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/lib/config.h
CONFIG_CLEAN_FILES =
$(am__cd) "$$dir" && rm -f $$files; }; \
}
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+am__DIST_COMMON = $(diffutils_TEXINFOS) $(srcdir)/Makefile.in \
+ $(top_srcdir)/build-aux/mdate-sh \
+ $(top_srcdir)/build-aux/texinfo.tex
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
pkglibexecdir = @pkglibexecdir@
ACLOCAL = @ACLOCAL@
GLIBC21 = @GLIBC21@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
+GNULIB_ACCEPT = @GNULIB_ACCEPT@
+GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
GNULIB_ATOLL = @GNULIB_ATOLL@
+GNULIB_BIND = @GNULIB_BIND@
GNULIB_BTOWC = @GNULIB_BTOWC@
GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@
GNULIB_CANONICALIZE_FILE_NAME = @GNULIB_CANONICALIZE_FILE_NAME@
GNULIB_CHDIR = @GNULIB_CHDIR@
GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
+GNULIB_CONNECT = @GNULIB_CONNECT@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
GNULIB_DUP = @GNULIB_DUP@
GNULIB_DUP2 = @GNULIB_DUP2@
GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
+GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
+GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
GNULIB_ICONV = @GNULIB_ICONV@
GNULIB_IMAXABS = @GNULIB_IMAXABS@
GNULIB_IMAXDIV = @GNULIB_IMAXDIV@
+GNULIB_INET_NTOP = @GNULIB_INET_NTOP@
+GNULIB_INET_PTON = @GNULIB_INET_PTON@
+GNULIB_IOCTL = @GNULIB_IOCTL@
GNULIB_ISATTY = @GNULIB_ISATTY@
+GNULIB_ISBLANK = @GNULIB_ISBLANK@
GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
GNULIB_LCHMOD = @GNULIB_LCHMOD@
GNULIB_LCHOWN = @GNULIB_LCHOWN@
GNULIB_LINK = @GNULIB_LINK@
GNULIB_LINKAT = @GNULIB_LINKAT@
+GNULIB_LISTEN = @GNULIB_LISTEN@
GNULIB_LOCALECONV = @GNULIB_LOCALECONV@
GNULIB_LSEEK = @GNULIB_LSEEK@
GNULIB_LSTAT = @GNULIB_LSTAT@
GNULIB_PREAD = @GNULIB_PREAD@
GNULIB_PRINTF = @GNULIB_PRINTF@
GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@
+GNULIB_PSELECT = @GNULIB_PSELECT@
GNULIB_PTHREAD_SIGMASK = @GNULIB_PTHREAD_SIGMASK@
GNULIB_PTSNAME = @GNULIB_PTSNAME@
GNULIB_PTSNAME_R = @GNULIB_PTSNAME_R@
GNULIB_PUTENV = @GNULIB_PUTENV@
GNULIB_PUTS = @GNULIB_PUTS@
GNULIB_PWRITE = @GNULIB_PWRITE@
+GNULIB_QSORT_R = @GNULIB_QSORT_R@
GNULIB_RAISE = @GNULIB_RAISE@
GNULIB_RANDOM = @GNULIB_RANDOM@
GNULIB_RANDOM_R = @GNULIB_RANDOM_R@
GNULIB_READLINKAT = @GNULIB_READLINKAT@
GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@
GNULIB_REALPATH = @GNULIB_REALPATH@
+GNULIB_RECV = @GNULIB_RECV@
+GNULIB_RECVFROM = @GNULIB_RECVFROM@
GNULIB_REMOVE = @GNULIB_REMOVE@
GNULIB_RENAME = @GNULIB_RENAME@
GNULIB_RENAMEAT = @GNULIB_RENAMEAT@
GNULIB_RPMATCH = @GNULIB_RPMATCH@
GNULIB_SCANF = @GNULIB_SCANF@
GNULIB_SECURE_GETENV = @GNULIB_SECURE_GETENV@
+GNULIB_SELECT = @GNULIB_SELECT@
+GNULIB_SEND = @GNULIB_SEND@
+GNULIB_SENDTO = @GNULIB_SENDTO@
GNULIB_SETENV = @GNULIB_SETENV@
GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
+GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
GNULIB_SIGACTION = @GNULIB_SIGACTION@
GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
GNULIB_SLEEP = @GNULIB_SLEEP@
GNULIB_SNPRINTF = @GNULIB_SNPRINTF@
+GNULIB_SOCKET = @GNULIB_SOCKET@
GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@
GNULIB_STAT = @GNULIB_STAT@
GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@
GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@
GNULIB_TIMEGM = @GNULIB_TIMEGM@
GNULIB_TIME_R = @GNULIB_TIME_R@
+GNULIB_TIME_RZ = @GNULIB_TIME_RZ@
GNULIB_TMPFILE = @GNULIB_TMPFILE@
GNULIB_TOWCTRANS = @GNULIB_TOWCTRANS@
GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@
GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
+HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@
HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@
HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@
+HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@
+HAVE_DECL_INET_PTON = @HAVE_DECL_INET_PTON@
HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@
HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@
HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
+HAVE_ISBLANK = @HAVE_ISBLANK@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@
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@
HAVE_MBRTOWC = @HAVE_MBRTOWC@
HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MKSTEMPS = @HAVE_MKSTEMPS@
HAVE_MSVC_INVALID_PARAMETER_HANDLER = @HAVE_MSVC_INVALID_PARAMETER_HANDLER@
HAVE_NANOSLEEP = @HAVE_NANOSLEEP@
+HAVE_NETINET_IN_H = @HAVE_NETINET_IN_H@
HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@
HAVE_OPENAT = @HAVE_OPENAT@
HAVE_OS_H = @HAVE_OS_H@
HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
HAVE_PREAD = @HAVE_PREAD@
+HAVE_PSELECT = @HAVE_PSELECT@
HAVE_PTHREAD_SIGMASK = @HAVE_PTHREAD_SIGMASK@
HAVE_PTSNAME = @HAVE_PTSNAME@
HAVE_PTSNAME_R = @HAVE_PTSNAME_R@
HAVE_REALPATH = @HAVE_REALPATH@
HAVE_RENAMEAT = @HAVE_RENAMEAT@
HAVE_RPMATCH = @HAVE_RPMATCH@
+HAVE_SA_FAMILY_T = @HAVE_SA_FAMILY_T@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
HAVE_STRUCT_SIGACTION_SA_SIGACTION = @HAVE_STRUCT_SIGACTION_SA_SIGACTION@
+HAVE_STRUCT_SOCKADDR_STORAGE = @HAVE_STRUCT_SOCKADDR_STORAGE@
+HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY = @HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY@
HAVE_STRUCT_TIMEVAL = @HAVE_STRUCT_TIMEVAL@
HAVE_STRVERSCMP = @HAVE_STRVERSCMP@
HAVE_SYMLINK = @HAVE_SYMLINK@
HAVE_SYMLINKAT = @HAVE_SYMLINKAT@
HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@
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_SELECT_H = @HAVE_SYS_SELECT_H@
+HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@
+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_UNISTD_H = @HAVE_UNISTD_H@
HAVE_UNLINKAT = @HAVE_UNLINKAT@
HAVE_WMEMCPY = @HAVE_WMEMCPY@
HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
HAVE_WMEMSET = @HAVE_WMEMSET@
+HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
HAVE__BOOL = @HAVE__BOOL@
HAVE__EXIT = @HAVE__EXIT@
ICONV_H = @ICONV_H@
INCLUDE_NEXT = @INCLUDE_NEXT@
INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@
+INET_PTON_LIB = @INET_PTON_LIB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
LIBS = @LIBS@
LIBSIGSEGV = @LIBSIGSEGV@
LIBSIGSEGV_PREFIX = @LIBSIGSEGV_PREFIX@
+LIBSOCKET = @LIBSOCKET@
LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
LIBUNISTRING_UNISTR_H = @LIBUNISTRING_UNISTR_H@
LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@
LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@
LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_SELECT = @LIB_SELECT@
LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@
LOCALE_FR = @LOCALE_FR@
LOCALE_FR_UTF8 = @LOCALE_FR_UTF8@
MSGFMT = @MSGFMT@
MSGFMT_015 = @MSGFMT_015@
MSGMERGE = @MSGMERGE@
+NETINET_IN_H = @NETINET_IN_H@
+NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@
NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@
NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@
NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@
NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H = @NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H@
NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H = @NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H@
NEXT_AS_FIRST_DIRECTIVE_LOCALE_H = @NEXT_AS_FIRST_DIRECTIVE_LOCALE_H@
+NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H = @NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H@
NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H = @NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H@
NEXT_AS_FIRST_DIRECTIVE_STDARG_H = @NEXT_AS_FIRST_DIRECTIVE_STDARG_H@
NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@
NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_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_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@
NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H@
NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@
NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@
NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@
NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@
+NEXT_CTYPE_H = @NEXT_CTYPE_H@
NEXT_ERRNO_H = @NEXT_ERRNO_H@
NEXT_FCNTL_H = @NEXT_FCNTL_H@
NEXT_FLOAT_H = @NEXT_FLOAT_H@
NEXT_INTTYPES_H = @NEXT_INTTYPES_H@
NEXT_LANGINFO_H = @NEXT_LANGINFO_H@
NEXT_LOCALE_H = @NEXT_LOCALE_H@
+NEXT_NETINET_IN_H = @NEXT_NETINET_IN_H@
NEXT_SIGNAL_H = @NEXT_SIGNAL_H@
NEXT_STDARG_H = @NEXT_STDARG_H@
NEXT_STDDEF_H = @NEXT_STDDEF_H@
NEXT_STDLIB_H = @NEXT_STDLIB_H@
NEXT_STRINGS_H = @NEXT_STRINGS_H@
NEXT_STRING_H = @NEXT_STRING_H@
+NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_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@
NEXT_SYS_TIME_H = @NEXT_SYS_TIME_H@
NEXT_SYS_TYPES_H = @NEXT_SYS_TYPES_H@
+NEXT_SYS_UIO_H = @NEXT_SYS_UIO_H@
NEXT_SYS_WAIT_H = @NEXT_SYS_WAIT_H@
NEXT_TIME_H = @NEXT_TIME_H@
NEXT_UNISTD_H = @NEXT_UNISTD_H@
REPLACE_GETCWD = @REPLACE_GETCWD@
REPLACE_GETDELIM = @REPLACE_GETDELIM@
REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@
+REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@
REPLACE_GETGROUPS = @REPLACE_GETGROUPS@
REPLACE_GETLINE = @REPLACE_GETLINE@
REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
+REPLACE_GMTIME = @REPLACE_GMTIME@
REPLACE_ICONV = @REPLACE_ICONV@
REPLACE_ICONV_OPEN = @REPLACE_ICONV_OPEN@
REPLACE_ICONV_UTF = @REPLACE_ICONV_UTF@
+REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
+REPLACE_INET_PTON = @REPLACE_INET_PTON@
+REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
REPLACE_LINK = @REPLACE_LINK@
REPLACE_LINKAT = @REPLACE_LINKAT@
REPLACE_LOCALECONV = @REPLACE_LOCALECONV@
+REPLACE_LOCALTIME = @REPLACE_LOCALTIME@
REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@
REPLACE_LSEEK = @REPLACE_LSEEK@
REPLACE_LSTAT = @REPLACE_LSTAT@
REPLACE_POPEN = @REPLACE_POPEN@
REPLACE_PREAD = @REPLACE_PREAD@
REPLACE_PRINTF = @REPLACE_PRINTF@
+REPLACE_PSELECT = @REPLACE_PSELECT@
REPLACE_PTHREAD_SIGMASK = @REPLACE_PTHREAD_SIGMASK@
REPLACE_PTSNAME = @REPLACE_PTSNAME@
REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@
REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
+REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
+REPLACE_READLINKAT = @REPLACE_READLINKAT@
REPLACE_REALLOC = @REPLACE_REALLOC@
REPLACE_REALPATH = @REPLACE_REALPATH@
REPLACE_REMOVE = @REPLACE_REMOVE@
REPLACE_RENAME = @REPLACE_RENAME@
REPLACE_RENAMEAT = @REPLACE_RENAMEAT@
REPLACE_RMDIR = @REPLACE_RMDIR@
+REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOIMAX = @REPLACE_STRTOIMAX@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOUMAX = @REPLACE_STRTOUMAX@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
+REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@
REPLACE_TIMEGM = @REPLACE_TIMEGM@
REPLACE_TMPFILE = @REPLACE_TMPFILE@
REPLACE_TOWLOWER = @REPLACE_TOWLOWER@
REPLACE_WCTOMB = @REPLACE_WCTOMB@
REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
REPLACE_WRITE = @REPLACE_WRITE@
+SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
SIZE_T_SUFFIX = @SIZE_T_SUFFIX@
SRC_VERSION_C = @SRC_VERSION_C@
+STDALIGN_H = @STDALIGN_H@
STDARG_H = @STDARG_H@
STDBOOL_H = @STDBOOL_H@
STDDEF_H = @STDDEF_H@
STDINT_H = @STDINT_H@
STRIP = @STRIP@
+SYS_IOCTL_H_HAVE_WINSOCK2_H = @SYS_IOCTL_H_HAVE_WINSOCK2_H@
+SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@
TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@
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_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@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
am__include = @am__include@
am__quote = @am__quote@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
+mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu doc/Makefile
-.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
echo "@set UPDATED $$1 $$2 $$3"; \
echo "@set UPDATED-MONTH $$2 $$3"; \
echo "@set EDITION $(VERSION)"; \
- echo "@set VERSION $(VERSION)") > vti.tmp
- @cmp -s vti.tmp $(srcdir)/version.texi \
- || (echo "Updating $(srcdir)/version.texi"; \
- cp vti.tmp $(srcdir)/version.texi)
- -@rm -f vti.tmp
+ echo "@set VERSION $(VERSION)") > vti.tmp$$$$ && \
+ (cmp -s vti.tmp$$$$ $(srcdir)/version.texi \
+ || (echo "Updating $(srcdir)/version.texi" && \
+ cp vti.tmp$$$$ $(srcdir)/version.texi.tmp$$$$ && \
+ mv $(srcdir)/version.texi.tmp$$$$ $(srcdir)/version.texi)) && \
+ rm -f vti.tmp$$$$ $(srcdir)/version.texi.$$$$
@cp $(srcdir)/version.texi $@
mostlyclean-vti:
- -rm -f vti.tmp
+ -rm -f vti.tmp* $(srcdir)/version.texi.tmp*
maintainer-clean-vti:
-rm -f $(srcdir)/stamp-vti $(srcdir)/version.texi
uninstall-dvi-am uninstall-html-am uninstall-info-am \
uninstall-pdf-am uninstall-ps-am
+.PRECIOUS: Makefile
+
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
-This is diffutils.info-t, produced by makeinfo version 4.13 from
+This is diffutils.info-t, produced by makeinfo version 6.1 from
diffutils.texi.
-This manual is for GNU Diffutils (version 3.3, 23 March 2013), and
-documents the GNU `diff', `diff3', `sdiff', and `cmp' commands for
-showing the differences between files and the GNU `patch' command for
+This manual is for GNU Diffutils (version 3.4, 4 August 2016), and
+documents the GNU 'diff', 'diff3', 'sdiff', and 'cmp' commands for
+showing the differences between files and the GNU 'patch' command for
using their output to update files.
- Copyright (C) 1992-1994, 1998, 2001-2002, 2004, 2006, 2009-2013 Free
+ Copyright (C) 1992-1994, 1998, 2001-2002, 2004, 2006, 2009-2016 Free
Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this
Foundation; with no Invariant Sections, no Front-Cover Texts, and
no Back-Cover Texts. A copy of the license is included in the
section entitled "GNU Free Documentation License."
-
INFO-DIR-SECTION Individual utilities
START-INFO-DIR-ENTRY
* cmp: (diffutils)Invoking cmp. Compare 2 files byte by byte.
Comparing and Merging Files
***************************
-This manual is for GNU Diffutils (version 3.3, 23 March 2013), and
-documents the GNU `diff', `diff3', `sdiff', and `cmp' commands for
-showing the differences between files and the GNU `patch' command for
+This manual is for GNU Diffutils (version 3.4, 4 August 2016), and
+documents the GNU 'diff', 'diff3', 'sdiff', and 'cmp' commands for
+showing the differences between files and the GNU 'patch' command for
using their output to update files.
- Copyright (C) 1992-1994, 1998, 2001-2002, 2004, 2006, 2009-2013 Free
+ Copyright (C) 1992-1994, 1998, 2001-2002, 2004, 2006, 2009-2016 Free
Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this
* Output Formats:: Formats for two-way difference reports.
* Incomplete Lines:: Lines that lack trailing newlines.
* Comparing Directories:: Comparing files and directories.
-* Adjusting Output:: Making `diff' output prettier.
-* diff Performance:: Making `diff' smarter or faster.
+* Adjusting Output:: Making 'diff' output prettier.
+* diff Performance:: Making 'diff' smarter or faster.
* Comparing Three Files:: Formats for three-way difference reports.
* diff3 Merging:: Merging from a common ancestor.
-* Interactive Merging:: Interactive merging with `sdiff'.
+* Interactive Merging:: Interactive merging with 'sdiff'.
-* Merging with patch:: Using `patch' to change old files into new ones.
+* Merging with patch:: Using 'patch' to change old files into new ones.
* Making Patches:: Tips for making and using patch distributions.
* Invoking cmp:: Compare two files byte by byte.
one file is a newer version of the other file. Or maybe the two files
started out as identical copies but were changed by different people.
- You can use the `diff' command to show differences between two
-files, or each corresponding file in two directories. `diff' outputs
+ You can use the 'diff' command to show differences between two files,
+or each corresponding file in two directories. 'diff' outputs
differences between files line by line in any of several formats,
selectable by command line options. This set of differences is often
-called a "diff" or "patch". For files that are identical, `diff'
-normally produces no output; for binary (non-text) files, `diff'
+called a "diff" or "patch". For files that are identical, 'diff'
+normally produces no output; for binary (non-text) files, 'diff'
normally reports only that they are different.
- You can use the `cmp' command to show the byte and line numbers
-where two files differ. `cmp' can also show all the bytes that differ
-between the two files, side by side. A way to compare two files
-character by character is the Emacs command `M-x compare-windows'.
-*Note Other Window: (emacs)Other Window, for more information on that
-command.
+ You can use the 'cmp' command to show the byte and line numbers where
+two files differ. 'cmp' can also show all the bytes that differ between
+the two files, side by side. A way to compare two files character by
+character is the Emacs command 'M-x compare-windows'. *Note Other
+Window: (emacs)Other Window, for more information on that command.
- You can use the `diff3' command to show differences among three
+ You can use the 'diff3' command to show differences among three
files. When two people have made independent changes to a common
-original, `diff3' can report the differences between the original and
+original, 'diff3' can report the differences between the original and
the two changed versions, and can produce a merged file that contains
both persons' changes together with warnings about conflicts.
- You can use the `sdiff' command to merge two files interactively.
+ You can use the 'sdiff' command to merge two files interactively.
- You can use the set of differences produced by `diff' to distribute
+ You can use the set of differences produced by 'diff' to distribute
updates to text files (such as program source code) to other people.
This method is especially useful when the differences are small compared
-to the complete files. Given `diff' output, you can use the `patch'
+to the complete files. Given 'diff' output, you can use the 'patch'
program to update, or "patch", a copy of the file. If you think of
-`diff' as subtracting one file from another to produce their
-difference, you can think of `patch' as adding the difference to one
-file to reproduce the other.
+'diff' as subtracting one file from another to produce their difference,
+you can think of 'patch' as adding the difference to one file to
+reproduce the other.
This manual first concentrates on making diffs, and later shows how
to use diffs to update files.
- GNU `diff' was written by Paul Eggert, Mike Haertel, David Hayes,
-Richard Stallman, and Len Tower. Wayne Davison designed and
-implemented the unified output format. The basic algorithm is described
-by Eugene W. Myers in "An O(ND) Difference Algorithm and its
-Variations", `Algorithmica' Vol. 1 No. 2, 1986, pp. 251-266; and in "A
-File Comparison Program", Webb Miller and Eugene W. Myers,
-`Software--Practice and Experience' Vol. 15 No. 11, 1985, pp. 1025-1040.
-The algorithm was independently discovered as described by E. Ukkonen in
-"Algorithms for Approximate String Matching", `Information and Control'
-Vol. 64, 1985, pp. 100-118. Unless the `--minimal' option is used,
-`diff' uses a heuristic by Paul Eggert that limits the cost to O(N^1.5
-log N) at the price of producing suboptimal output for large inputs
-with many differences. Related algorithms are surveyed by Alfred V.
-Aho in section 6.3 of "Algorithms for Finding Patterns in Strings",
-`Handbook of Theoretical Computer Science' (Jan Van Leeuwen, ed.), Vol.
-A, `Algorithms and Complexity', Elsevier/MIT Press, 1990, pp. 255-300.
-
- GNU `diff3' was written by Randy Smith. GNU `sdiff' was written by
-Thomas Lord. GNU `cmp' was written by Torbjo"rn Granlund and David
+ GNU 'diff' was written by Paul Eggert, Mike Haertel, David Hayes,
+Richard Stallman, and Len Tower. Wayne Davison designed and implemented
+the unified output format. The basic algorithm is described by Eugene
+W. Myers in "An O(ND) Difference Algorithm and its Variations",
+'Algorithmica' Vol. 1, 1986, pp. 251-266,
+<http://dx.doi.org/10.1007/BF01840446>; and in "A File Comparison
+Program", Webb Miller and Eugene W. Myers, 'Software--Practice and
+Experience' Vol. 15, 1985, pp. 1025-1040,
+<http://dx.doi.org/10.1002/spe.4380151102>. The algorithm was
+independently discovered as described by Esko Ukkonen in "Algorithms for
+Approximate String Matching", 'Information and Control' Vol. 64, 1985,
+pp. 100-118, <http://dx.doi.org/10.1016/S0019-9958(85)80046-2>. Related
+algorithms are surveyed by Alfred V. Aho in section 6.3 of "Algorithms
+for Finding Patterns in Strings", 'Handbook of Theoretical Computer
+Science' (Jan Van Leeuwen, ed.), Vol. A, 'Algorithms and Complexity',
+Elsevier/MIT Press, 1990, pp. 255-300.
+
+ GNU 'diff3' was written by Randy Smith. GNU 'sdiff' was written by
+Thomas Lord. GNU 'cmp' was written by Torbjo"rn Granlund and David
MacKenzie.
- GNU `patch' was written mainly by Larry Wall and Paul Eggert;
-several GNU enhancements were contributed by Wayne Davison and David
-MacKenzie. Parts of this manual are adapted from a manual page written
-by Larry Wall, with his permission.
+ GNU 'patch' was written mainly by Larry Wall and Paul Eggert; several
+GNU enhancements were contributed by Wayne Davison and David MacKenzie.
+Parts of this manual are adapted from a manual page written by Larry
+Wall, with his permission.
\1f
File: diffutils.info-t, Node: Comparison, Next: Output Formats, Prev: Overview, Up: Top
There are several ways to think about the differences between two files.
One way to think of the differences is as a series of lines that were
deleted from, inserted in, or changed in one file to produce the other
-file. `diff' compares two files line by line, finds groups of lines
+file. 'diff' compares two files line by line, finds groups of lines
that differ, and reports each group of differing lines. It can report
the differing lines in several formats, which have different purposes.
- GNU `diff' can show whether files are different without detailing
-the differences. It also provides ways to suppress certain kinds of
+ GNU 'diff' can show whether files are different without detailing the
+differences. It also provides ways to suppress certain kinds of
differences that are not important to you. Most commonly, such
differences are changes in the amount of white space between words or
-lines. `diff' also provides ways to suppress differences in alphabetic
+lines. 'diff' also provides ways to suppress differences in alphabetic
case or in lines that match a regular expression that you provide.
These options can accumulate; for example, you can ignore changes in
both white space and alphabetic case.
Another way to think of the differences between two files is as a
sequence of pairs of bytes that can be either identical or different.
-`cmp' reports the differences between two files byte by byte, instead
-of line by line. As a result, it is often more useful than `diff' for
-comparing binary files. For text files, `cmp' is useful mainly when
-you want to know only whether two files are identical, or whether one
-file is a prefix of the other.
+'cmp' reports the differences between two files byte by byte, instead of
+line by line. As a result, it is often more useful than 'diff' for
+comparing binary files. For text files, 'cmp' is useful mainly when you
+want to know only whether two files are identical, or whether one file
+is a prefix of the other.
To illustrate the effect that considering changes byte by byte can
have compared with considering them line by line, think of what happens
if a single newline character is added to the beginning of a file. If
that file is then compared with an otherwise identical file that lacks
-the newline at the beginning, `diff' will report that a blank line has
-been added to the file, while `cmp' will report that almost every byte
+the newline at the beginning, 'diff' will report that a blank line has
+been added to the file, while 'cmp' will report that almost every byte
of the two files differs.
- `diff3' normally compares three input files line by line, finds
+ 'diff3' normally compares three input files line by line, finds
groups of lines that differ, and reports each group of differing lines.
Its output is designed to make it easy to inspect two different sets of
changes to the same file.
+ These commands compare input files without necessarily reading them.
+For example, if 'diff' is asked simply to report whether two files
+differ, and it discovers that the files have different sizes, it need
+not read them to do its job.
+
* Menu:
* Hunks:: Groups of differing lines.
1.1 Hunks
=========
-When comparing two files, `diff' finds sequences of lines common to
-both files, interspersed with groups of differing lines called "hunks".
-Comparing two identical files yields one sequence of common lines and
-no hunks, because no lines differ. Comparing two entirely different
-files yields no common lines and one large hunk that contains all lines
-of both files. In general, there are many ways to match up lines
-between two given files. `diff' tries to minimize the total hunk size
-by finding large sequences of common lines interspersed with small
-hunks of differing lines.
-
- For example, suppose the file `F' contains the three lines `a', `b',
-`c', and the file `G' contains the same three lines in reverse order
-`c', `b', `a'. If `diff' finds the line `c' as common, then the command
-`diff F G' produces this output:
+When comparing two files, 'diff' finds sequences of lines common to both
+files, interspersed with groups of differing lines called "hunks".
+Comparing two identical files yields one sequence of common lines and no
+hunks, because no lines differ. Comparing two entirely different files
+yields no common lines and one large hunk that contains all lines of
+both files. In general, there are many ways to match up lines between
+two given files. 'diff' tries to minimize the total hunk size by
+finding large sequences of common lines interspersed with small hunks of
+differing lines.
+
+ For example, suppose the file 'F' contains the three lines 'a', 'b',
+'c', and the file 'G' contains the same three lines in reverse order
+'c', 'b', 'a'. If 'diff' finds the line 'c' as common, then the command
+'diff F G' produces this output:
1,2d0
< a
> b
> a
-But if `diff' notices the common line `b' instead, it produces this
+But if 'diff' notices the common line 'b' instead, it produces this
output:
1c1
---
> a
-It is also possible to find `a' as the common line. `diff' does not
-always find an optimal matching between the files; it takes shortcuts
-to run faster. But its output is usually close to the shortest
-possible. You can adjust this tradeoff with the `--minimal' (`-d')
-option (*note diff Performance::).
+It is also possible to find 'a' as the common line. 'diff' does not
+always find an optimal matching between the files; it takes shortcuts to
+run faster. But its output is usually close to the shortest possible.
+You can adjust this tradeoff with the '--minimal' ('-d') option (*note
+diff Performance::).
\1f
File: diffutils.info-t, Node: White Space, Next: Blank Lines, Prev: Hunks, Up: Comparison
1.2 Suppressing Differences in Blank and Tab Spacing
====================================================
-The `--ignore-tab-expansion' (`-E') option ignores the distinction
+The '--ignore-tab-expansion' ('-E') option ignores the distinction
between tabs and spaces on input. A tab is considered to be equivalent
to the number of spaces to the next tab stop (*note Tabs::).
- The `--ignore-trailing-space' (`-Z') option ignores white space at
+ The '--ignore-trailing-space' ('-Z') option ignores white space at
line end.
- The `--ignore-space-change' (`-b') option is stronger than `-E' and
-`-Z' combined. It ignores white space at line end, and considers all
+ The '--ignore-space-change' ('-b') option is stronger than '-E' and
+'-Z' combined. It ignores white space at line end, and considers all
other sequences of one or more white space characters within a line to
-be equivalent. With this option, `diff' considers the following two
-lines to be equivalent, where `$' denotes the line end:
+be equivalent. With this option, 'diff' considers the following two
+lines to be equivalent, where '$' denotes the line end:
Here lyeth muche rychnesse in lytell space. -- John Heywood$
Here lyeth muche rychnesse in lytell space. -- John Heywood $
- The `--ignore-all-space' (`-w') option is stronger still. It
-ignores differences even if one line has white space where the other
-line has none. "White space" characters include tab, vertical tab,
-form feed, carriage return, and space; some locales may define
-additional characters to be white space. With this option, `diff'
-considers the following two lines to be equivalent, where `$' denotes
-the line end and `^M' denotes a carriage return:
+ The '--ignore-all-space' ('-w') option is stronger still. It ignores
+differences even if one line has white space where the other line has
+none. "White space" characters include tab, vertical tab, form feed,
+carriage return, and space; some locales may define additional
+characters to be white space. With this option, 'diff' considers the
+following two lines to be equivalent, where '$' denotes the line end and
+'^M' denotes a carriage return:
Here lyeth muche rychnesse in lytell space.-- John Heywood$
He relyeth much erychnes seinly tells pace. --John Heywood ^M$
For many other programs newline is also a white space character, but
-`diff' is a line-oriented program and a newline character always ends a
-line. Hence the `-w' or `--ignore-all-space' option does not ignore
+'diff' is a line-oriented program and a newline character always ends a
+line. Hence the '-w' or '--ignore-all-space' option does not ignore
newline-related changes; it ignores only other white space changes.
\1f
1.3 Suppressing Differences Whose Lines Are All Blank
=====================================================
-The `--ignore-blank-lines' (`-B') option ignores changes that consist
+The '--ignore-blank-lines' ('-B') option ignores changes that consist
entirely of blank lines. With this option, for example, a file
containing
1. A point is that which has no part.
2. A line is breadthless length.
-- Euclid, The Elements, I
- is considered identical to a file containing
+is considered identical to a file containing
1. A point is that which has no part.
2. A line is breadthless length.
Normally this option affects only lines that are completely empty,
but if you also specify an option that ignores trailing spaces, lines
are also affected if they look empty but contain white space. In other
-words, `-B' is equivalent to `-I '^$'' by default, but it is equivalent
-to `-I '^[[:space:]]*$'' if `-b', `-w' or `-Z' is also specified.
+words, '-B' is equivalent to '-I '^$'' by default, but it is equivalent
+to '-I '^[[:space:]]*$'' if '-b', '-w' or '-Z' is also specified.
\1f
File: diffutils.info-t, Node: Specified Lines, Next: Case Folding, Prev: Blank Lines, Up: Comparison
1.4 Suppressing Differences Whose Lines All Match a Regular Expression
======================================================================
-To ignore insertions and deletions of lines that match a `grep'-style
-regular expression, use the `--ignore-matching-lines=REGEXP' (`-I
+To ignore insertions and deletions of lines that match a 'grep'-style
+regular expression, use the '--ignore-matching-lines=REGEXP' ('-I
REGEXP') option. You should escape regular expressions that contain
shell metacharacters to prevent the shell from expanding them. For
-example, `diff -I '^[[:digit:]]'' ignores all changes to lines
-beginning with a digit.
+example, 'diff -I '^[[:digit:]]'' ignores all changes to lines beginning
+with a digit.
- However, `-I' only ignores the insertion or deletion of lines that
+ However, '-I' only ignores the insertion or deletion of lines that
contain the regular expression if every changed line in the hunk--every
insertion and every deletion--matches the regular expression. In other
-words, for each nonignorable change, `diff' prints the complete set of
+words, for each nonignorable change, 'diff' prints the complete set of
changes in its vicinity, including the ignorable ones.
You can specify more than one regular expression for lines to ignore
-by using more than one `-I' option. `diff' tries to match each line
+by using more than one '-I' option. 'diff' tries to match each line
against each regular expression.
\1f
1.5 Suppressing Case Differences
================================
-GNU `diff' can treat lower case letters as equivalent to their upper
-case counterparts, so that, for example, it considers `Funky Stuff',
-`funky STUFF', and `fUNKy stuFf' to all be the same. To request this,
-use the `-i' or `--ignore-case' option.
+GNU 'diff' can treat lower case letters as equivalent to their upper
+case counterparts, so that, for example, it considers 'Funky Stuff',
+'funky STUFF', and 'fUNKy stuFf' to all be the same. To request this,
+use the '-i' or '--ignore-case' option.
\1f
File: diffutils.info-t, Node: Brief, Next: Binary, Prev: Case Folding, Up: Comparison
When you only want to find out whether files are different, and you
don't care what the differences are, you can use the summary output
format. In this format, instead of showing the differences between the
-files, `diff' simply reports whether files differ. The `--brief'
-(`-q') option selects this output format.
+files, 'diff' simply reports whether files differ. The '--brief' ('-q')
+option selects this output format.
This format is especially useful when comparing the contents of two
directories. It is also much faster than doing the normal line by line
-comparisons, because `diff' can stop analyzing the files as soon as it
+comparisons, because 'diff' can stop analyzing the files as soon as it
knows that there are any differences.
You can also get a brief indication of whether two files differ by
-using `cmp'. For files that are identical, `cmp' produces no output.
-When the files differ, by default, `cmp' outputs the byte and line
+using 'cmp'. For files that are identical, 'cmp' produces no output.
+When the files differ, by default, 'cmp' outputs the byte and line
number where the first difference occurs, or reports that one file is a
-prefix of the other. You can use the `-s', `--quiet', or `--silent'
-option to suppress that information, so that `cmp' produces no output
+prefix of the other. You can use the '-s', '--quiet', or '--silent'
+option to suppress that information, so that 'cmp' produces no output
and reports whether the files differ using only its exit status (*note
Invoking cmp::).
- Unlike `diff', `cmp' cannot compare directories; it can only compare
+ Unlike 'diff', 'cmp' cannot compare directories; it can only compare
two files.
\1f
1.7 Binary Files and Forcing Text Comparisons
=============================================
-If `diff' thinks that either of the two files it is comparing is binary
+If 'diff' thinks that either of the two files it is comparing is binary
(a non-text file), it normally treats that pair of files much as if the
summary output format had been selected (*note Brief::), and reports
only that the binary files are different. This is because line by line
-comparisons are usually not meaningful for binary files.
+comparisons are usually not meaningful for binary files. This does not
+count as trouble, even though the resulting output does not capture all
+the differences.
- `diff' determines whether a file is text or binary by checking the
+ 'diff' determines whether a file is text or binary by checking the
first few bytes in the file; the exact number of bytes is system
dependent, but it is typically several thousand. If every byte in that
-part of the file is non-null, `diff' considers the file to be text;
+part of the file is non-null, 'diff' considers the file to be text;
otherwise it considers the file to be binary.
- Sometimes you might want to force `diff' to consider files to be
+ Sometimes you might want to force 'diff' to consider files to be
text. For example, you might be comparing text files that contain null
-characters; `diff' would erroneously decide that those are non-text
-files. Or you might be comparing documents that are in a format used
-by a word processing system that uses null characters to indicate
-special formatting. You can force `diff' to consider all files to be
-text files, and compare them line by line, by using the `--text' (`-a')
+characters; 'diff' would erroneously decide that those are non-text
+files. Or you might be comparing documents that are in a format used by
+a word processing system that uses null characters to indicate special
+formatting. You can force 'diff' to consider all files to be text
+files, and compare them line by line, by using the '--text' ('-a')
option. If the files you compare using this option do not in fact
-contain text, they will probably contain few newline characters, and
-the `diff' output will consist of hunks showing differences between
-long lines of whatever characters the files contain.
-
- You can also force `diff' to report only whether files differ (but
-not how). Use the `--brief' (`-q') option for this.
+contain text, they will probably contain few newline characters, and the
+'diff' output will consist of hunks showing differences between long
+lines of whatever characters the files contain.
- Normally, differing binary files count as trouble because the
-resulting `diff' output does not capture all the differences. This
-trouble causes `diff' to exit with status 2. However, this trouble
-cannot occur with the `--text' (`-a') option, or with the `--brief'
-(`-q') option, as these options both cause `diff' to generate a form of
-output that represents differences as requested.
+ You can also force 'diff' to report only whether files differ (but
+not how). Use the '--brief' ('-q') option for this.
In operating systems that distinguish between text and binary files,
-`diff' normally reads and writes all data as text. Use the `--binary'
-option to force `diff' to read and write binary data instead. This
-option has no effect on a POSIX-compliant system like GNU or
-traditional Unix. However, many personal computer operating systems
-represent the end of a line with a carriage return followed by a
-newline. On such systems, `diff' normally ignores these carriage
-returns on input and generates them at the end of each output line, but
-with the `--binary' option `diff' treats each carriage return as just
-another input character, and does not generate a carriage return at the
-end of each output line. This can be useful when dealing with non-text
-files that are meant to be interchanged with POSIX-compliant systems.
-
- The `--strip-trailing-cr' causes `diff' to treat input lines that
-end in carriage return followed by newline as if they end in plain
-newline. This can be useful when comparing text that is imperfectly
-imported from many personal computer operating systems. This option
-affects how lines are read, which in turn affects how they are compared
-and output.
-
- If you want to compare two files byte by byte, you can use the `cmp'
-program with the `--verbose' (`-l') option to show the values of each
-differing byte in the two files. With GNU `cmp', you can also use the
-`-b' or `--print-bytes' option to show the ASCII representation of
-those bytes. *Note Invoking cmp::, for more information.
-
- If `diff3' thinks that any of the files it is comparing is binary (a
+'diff' normally reads and writes all data as text. Use the '--binary'
+option to force 'diff' to read and write binary data instead. This
+option has no effect on a POSIX-compliant system like GNU or traditional
+Unix. However, many personal computer operating systems represent the
+end of a line with a carriage return followed by a newline. On such
+systems, 'diff' normally ignores these carriage returns on input and
+generates them at the end of each output line, but with the '--binary'
+option 'diff' treats each carriage return as just another input
+character, and does not generate a carriage return at the end of each
+output line. This can be useful when dealing with non-text files that
+are meant to be interchanged with POSIX-compliant systems.
+
+ The '--strip-trailing-cr' causes 'diff' to treat input lines that end
+in carriage return followed by newline as if they end in plain newline.
+This can be useful when comparing text that is imperfectly imported from
+many personal computer operating systems. This option affects how lines
+are read, which in turn affects how they are compared and output.
+
+ If you want to compare two files byte by byte, you can use the 'cmp'
+program with the '--verbose' ('-l') option to show the values of each
+differing byte in the two files. With GNU 'cmp', you can also use the
+'-b' or '--print-bytes' option to show the ASCII representation of those
+bytes. *Note Invoking cmp::, for more information.
+
+ If 'diff3' thinks that any of the files it is comparing is binary (a
non-text file), it normally reports an error, because such comparisons
-are usually not useful. `diff3' uses the same test as `diff' to decide
-whether a file is binary. As with `diff', if the input files contain a
+are usually not useful. 'diff3' uses the same test as 'diff' to decide
+whether a file is binary. As with 'diff', if the input files contain a
few non-text bytes but otherwise are like text files, you can force
-`diff3' to consider all files to be text files and compare them line by
-line by using the `-a' or `--text' option.
+'diff3' to consider all files to be text files and compare them line by
+line by using the '-a' or '--text' option.
\1f
File: diffutils.info-t, Node: Output Formats, Next: Incomplete Lines, Prev: Comparison, Up: Top
-2 `diff' Output Formats
+2 'diff' Output Formats
***********************
-`diff' has several mutually exclusive options for output format. The
-following sections describe each format, illustrating how `diff'
-reports the differences between two sample input files.
+'diff' has several mutually exclusive options for output format. The
+following sections describe each format, illustrating how 'diff' reports
+the differences between two sample input files.
* Menu:
-* Sample diff Input:: Sample `diff' input files for examples.
+* Sample diff Input:: Sample 'diff' input files for examples.
* Context:: Showing differences with the surrounding text.
* Side by Side:: Showing differences in two columns.
* Normal:: Showing differences without surrounding text.
==========================
Here are two sample files that we will use in numerous examples to
-illustrate the output of `diff' and how various options can change it.
+illustrate the output of 'diff' and how various options can change it.
- This is the file `lao':
+ This is the file 'lao':
The Way that can be told of is not the eternal Way;
The name that can be named is not the eternal name.
But after they are produced,
they have different names.
- This is the file `tzu':
+ This is the file 'tzu':
The Nameless is the origin of Heaven and Earth;
The named is the mother of all things.
The door of all subtleties!
In this example, the first hunk contains just the first two lines of
-`lao', the second hunk contains the fourth line of `lao' opposing the
-second and third lines of `tzu', and the last hunk contains just the
-last three lines of `tzu'.
+'lao', the second hunk contains the fourth line of 'lao' opposing the
+second and third lines of 'tzu', and the last hunk contains just the
+last three lines of 'tzu'.
\1f
File: diffutils.info-t, Node: Context, Next: Side by Side, Prev: Sample diff Input, Up: Output Formats
help you understand exactly what has changed. These nearby parts of the
files are called the "context".
- GNU `diff' provides two output formats that show context around the
+ GNU 'diff' provides two output formats that show context around the
differing lines: "context format" and "unified format". It can
optionally show in which function or section of the file the differing
lines are found.
If you are distributing new versions of files to other people in the
-form of `diff' output, you should use one of the output formats that
+form of 'diff' output, you should use one of the output formats that
show context so that they can apply the diffs even if they have made
-small changes of their own to the files. `patch' can apply the diffs
-in this case by searching in the files for the lines of context around
-the differing lines; if those lines are actually a few lines away from
-where the diff says they are, `patch' can adjust the line numbers
-accordingly and still apply the diff correctly. *Note Imperfect::, for
-more information on using `patch' to apply imperfect diffs.
+small changes of their own to the files. 'patch' can apply the diffs in
+this case by searching in the files for the lines of context around the
+differing lines; if those lines are actually a few lines away from where
+the diff says they are, 'patch' can adjust the line numbers accordingly
+and still apply the diff correctly. *Note Imperfect::, for more
+information on using 'patch' to apply imperfect diffs.
* Menu:
lines that differ. It is the standard format for distributing updates
to source code.
- To select this output format, use the `--context[=LINES]' (`-C
-LINES') or `-c' option. The argument LINES that some of these options
+ To select this output format, use the '--context[=LINES]' ('-C
+LINES') or '-c' option. The argument LINES that some of these options
take is the number of lines of context to show. If you do not specify
-LINES, it defaults to three. For proper operation, `patch' typically
+LINES, it defaults to three. For proper operation, 'patch' typically
needs at least two lines of context.
* Menu:
2.2.1.1 An Example of Context Format
....................................
-Here is the output of `diff -c lao tzu' (*note Sample diff Input::, for
+Here is the output of 'diff -c lao tzu' (*note Sample diff Input::, for
the complete contents of the two files). Notice that up to three lines
that are not different are shown around each line that is different;
they are the context lines. Also notice that the first two hunks have
--- 1,6 ----
The Nameless is the origin of Heaven and Earth;
! The named is the mother of all things.
- !
+ !
Therefore let there always be non-being,
so we may see their subtlety,
And let there always be being,
2.2.1.2 An Example of Context Format with Less Context
......................................................
-Here is the output of `diff -C 1 lao tzu' (*note Sample diff Input::,
+Here is the output of 'diff -C 1 lao tzu' (*note Sample diff Input::,
for the complete contents of the two files). Notice that at most one
context line is reported here.
--- 1,4 ----
The Nameless is the origin of Heaven and Earth;
! The named is the mother of all things.
- !
+ !
Therefore let there always be non-being,
***************
*** 11 ****
*** FROM-FILE FROM-FILE-MODIFICATION-TIME
--- TO-FILE TO-FILE-MODIFICATION TIME
-The time stamp normally looks like `2002-02-21 23:30:39.942229878
--0800' to indicate the date, time with fractional seconds, and time
-zone in Internet RFC 2822 format
-(ftp://ftp.isi.edu/in-notes/rfc2822.txt). (The fractional seconds are
-omitted on hosts that do not support fractional time stamps.) However,
-a traditional time stamp like `Thu Feb 21 23:30:39 2002' is used if the
-`LC_TIME' locale category is either `C' or `POSIX'.
+The time stamp normally looks like '2002-02-21 23:30:39.942229878 -0800'
+to indicate the date, time with fractional seconds, and time zone in
+Internet RFC 2822 format (ftp://ftp.isi.edu/in-notes/rfc2822.txt). (The
+fractional seconds are omitted on hosts that do not support fractional
+time stamps.) However, a traditional time stamp like 'Thu Feb 21
+23:30:39 2002' is used if the 'LC_TIME' locale category is either 'C' or
+'POSIX'.
- You can change the header's content with the `--label=LABEL' option;
+ You can change the header's content with the '--label=LABEL' option;
see *note Alternate Names::.
Next come one or more hunks of differences; each hunk shows one area
TO-FILE-LINE...
If a hunk contains two or more lines, its line numbers look like
-`START,END'. Otherwise only its end line number appears. An empty
-hunk is considered to end at the line that precedes the hunk.
+'START,END'. Otherwise only its end line number appears. An empty hunk
+is considered to end at the line that precedes the hunk.
The lines of context around the lines that differ start with two
space characters. The lines that differ between the two files start
with one of the following indicator characters, followed by a space
character:
-`!'
+'!'
A line that is part of a group of one or more lines that changed
between the two files. There is a corresponding group of lines
- marked with `!' in the part of this hunk for the other file.
+ marked with '!' in the part of this hunk for the other file.
-`+'
+'+'
An "inserted" line in the second file that corresponds to nothing
in the first file.
-`-'
+'-'
A "deleted" line in the first file that corresponds to nothing in
the second file.
The unified output format is a variation on the context format that is
more compact because it omits redundant context lines. To select this
-output format, use the `--unified[=LINES]' (`-U LINES'), or `-u' option.
+output format, use the '--unified[=LINES]' ('-U LINES'), or '-u' option.
The argument LINES is the number of lines of context to show. When it
is not given, it defaults to three.
- At present, only GNU `diff' can produce this format and only GNU
-`patch' can automatically apply diffs in this format. For proper
-operation, `patch' typically needs at least three lines of context.
+ At present, only GNU 'diff' can produce this format and only GNU
+'patch' can automatically apply diffs in this format. For proper
+operation, 'patch' typically needs at least three lines of context.
* Menu:
2.2.2.1 An Example of Unified Format
....................................
-Here is the output of the command `diff -u lao tzu' (*note Sample diff
+Here is the output of the command 'diff -u lao tzu' (*note Sample diff
Input::, for the complete contents of the two files):
--- lao 2002-02-21 23:30:39.942229878 -0800
--- FROM-FILE FROM-FILE-MODIFICATION-TIME
+++ TO-FILE TO-FILE-MODIFICATION-TIME
-The time stamp looks like `2002-02-21 23:30:39.942229878 -0800' to
+The time stamp looks like '2002-02-21 23:30:39.942229878 -0800' to
indicate the date, time with fractional seconds, and time zone. The
fractional seconds are omitted on hosts that do not support fractional
time stamps.
- You can change the header's content with the `--label=LABEL' option.
+ You can change the header's content with the '--label=LABEL' option.
*Note Alternate Names::.
Next come one or more hunks of differences; each hunk shows one area
LINE-FROM-EITHER-FILE...
If a hunk contains just one line, only its start line number appears.
-Otherwise its line numbers look like `START,COUNT'. An empty hunk is
+Otherwise its line numbers look like 'START,COUNT'. An empty hunk is
considered to start at the line that follows the hunk.
- If a hunk and its context contain two or more lines, its line
-numbers look like `START,COUNT'. Otherwise only its end line number
-appears. An empty hunk is considered to end at the line that precedes
-the hunk.
+ If a hunk and its context contain two or more lines, its line numbers
+look like 'START,COUNT'. Otherwise only its end line number appears.
+An empty hunk is considered to end at the line that precedes the hunk.
The lines common to both files begin with a space character. The
lines that actually differ between the two files have one of the
following indicator characters in the left print column:
-`+'
+'+'
A line was added here to the first file.
-`-'
+'-'
A line was removed here from the first file.
\1f
Sometimes you might want to know which part of the files each change
falls in. If the files are source code, this could mean which function
-was changed. If the files are documents, it could mean which chapter
-or appendix was changed. GNU `diff' can show this by displaying the
+was changed. If the files are documents, it could mean which chapter or
+appendix was changed. GNU 'diff' can show this by displaying the
nearest section heading line that precedes the differing lines. Which
lines are "section headings" is determined by a regular expression.
To show in which sections differences occur for files that are not
source code for C or similar languages, use the
-`--show-function-line=REGEXP' (`-F REGEXP') option. `diff' considers
-lines that match the `grep'-style regular expression REGEXP to be the
+'--show-function-line=REGEXP' ('-F REGEXP') option. 'diff' considers
+lines that match the 'grep'-style regular expression REGEXP to be the
beginning of a section of the file. Here are suggested regular
expressions for some common languages:
-`^[[:alpha:]$_]'
+'^[[:alpha:]$_]'
C, C++, Prolog
-
-`^('
+'^('
Lisp
-
-`^@node'
+'^@node'
Texinfo
This option does not automatically select an output format; in order
or unified format (*note Unified Format::). In other output formats it
has no effect.
- The `--show-function-line' (`-F') option finds the nearest unchanged
+ The '--show-function-line' ('-F') option finds the nearest unchanged
line that precedes each hunk of differences and matches the given
regular expression. Then it adds that line to the end of the line of
-asterisks in the context format, or to the `@@' line in unified format.
+asterisks in the context format, or to the '@@' line in unified format.
If no matching line exists, this option leaves the output for that hunk
unchanged. If that line is more than 40 characters long, it outputs
only the first 40 characters. You can specify more than one regular
-expression for such lines; `diff' tries to match each line against each
+expression for such lines; 'diff' tries to match each line against each
regular expression, starting with the last one given. This means that
-you can use `-p' and `-F' together, if you wish.
+you can use '-p' and '-F' together, if you wish.
\1f
File: diffutils.info-t, Node: C Function Headings, Prev: Specified Headings, Up: Sections
...................................
To show in which functions differences occur for C and similar
-languages, you can use the `--show-c-function' (`-p') option. This
+languages, you can use the '--show-c-function' ('-p') option. This
option automatically defaults to the context output format (*note
-Context Format::), with the default number of lines of context. You
-can override that number with `-C LINES' elsewhere in the command line.
-You can override both the format and the number with `-U LINES'
-elsewhere in the command line.
-
- The `--show-c-function' (`-p') option is equivalent to `-F
-'^[[:alpha:]$_]'' if the unified format is specified, otherwise `-c -F
-'^[[:alpha:]$_]'' (*note Specified Headings::). GNU `diff' provides
+Context Format::), with the default number of lines of context. You can
+override that number with '-C LINES' elsewhere in the command line. You
+can override both the format and the number with '-U LINES' elsewhere in
+the command line.
+
+ The '--show-c-function' ('-p') option is equivalent to '-F
+'^[[:alpha:]$_]'' if the unified format is specified, otherwise '-c -F
+'^[[:alpha:]$_]'' (*note Specified Headings::). GNU 'diff' provides
this option for the sake of convenience.
\1f
----------------------------------
If you are comparing two files that have meaningless or uninformative
-names, you might want `diff' to show alternate names in the header of
+names, you might want 'diff' to show alternate names in the header of
the context and unified output formats. To do this, use the
-`--label=LABEL' option. The first time you give this option, its
-argument replaces the name and date of the first file in the header;
-the second time, its argument replaces the name and date of the second
-file. If you give this option more than twice, `diff' reports an
-error. The `--label' option does not affect the file names in the `pr'
-header when the `-l' or `--paginate' option is used (*note
-Pagination::).
-
- Here are the first two lines of the output from `diff -C 2
+'--label=LABEL' option. The first time you give this option, its
+argument replaces the name and date of the first file in the header; the
+second time, its argument replaces the name and date of the second file.
+If you give this option more than twice, 'diff' reports an error. The
+'--label' option does not affect the file names in the 'pr' header when
+the '-l' or '--paginate' option is used (*note Pagination::).
+
+ Here are the first two lines of the output from 'diff -C 2
--label=original --label=modified lao tzu':
*** original
2.3 Showing Differences Side by Side
====================================
-`diff' can produce a side by side difference listing of two files. The
+'diff' can produce a side by side difference listing of two files. The
files are listed in two columns with a gutter between them. The gutter
contains one of the following markers:
white space
The corresponding lines are in common. That is, either the lines
are identical, or the difference is ignored because of one of the
- `--ignore' options (*note White Space::).
+ '--ignore' options (*note White Space::).
-`|'
+'|'
The corresponding lines differ, and they are either both complete
or both incomplete.
-`<'
+'<'
The files differ and only the first file contains the line.
-`>'
+'>'
The files differ and only the second file contains the line.
-`('
+'('
Only the first file contains the line, but the difference is
ignored.
-`)'
+')'
Only the second file contains the line, but the difference is
ignored.
-`\'
+'\'
The corresponding lines differ, and only the first line is
incomplete.
-`/'
+'/'
The corresponding lines differ, and only the second line is
incomplete.
it contains are incomplete. *Note Incomplete Lines::. However, when an
output line represents two differing lines, one might be incomplete
while the other is not. In this case, the output line is complete, but
-its the gutter is marked `\' if the first line is incomplete, `/' if
-the second line is.
+its the gutter is marked '\' if the first line is incomplete, '/' if the
+second line is.
Side by side format is sometimes easiest to read, but it has
limitations. It generates much wider output than usual, and truncates
lines that are too long to fit. Also, it relies on lining up output
-more heavily than usual, so its output looks particularly bad if you
-use varying width fonts, nonstandard tab stops, or nonprinting
-characters.
+more heavily than usual, so its output looks particularly bad if you use
+varying width fonts, nonstandard tab stops, or nonprinting characters.
- You can use the `sdiff' command to interactively merge side by side
+ You can use the 'sdiff' command to interactively merge side by side
differences. *Note Interactive Merging::, for more information on
merging files.
2.3.1 Controlling Side by Side Format
-------------------------------------
-The `--side-by-side' (`-y') option selects side by side format.
-Because side by side output lines contain two input lines, the output
-is wider than usual: normally 130 print columns, which can fit onto a
-traditional printer line. You can set the width of the output with the
-`--width=COLUMNS' (`-W COLUMNS') option. The output is split into two
+The '--side-by-side' ('-y') option selects side by side format. Because
+side by side output lines contain two input lines, the output is wider
+than usual: normally 130 print columns, which can fit onto a traditional
+printer line. You can set the width of the output with the
+'--width=COLUMNS' ('-W COLUMNS') option. The output is split into two
halves of equal width, separated by a small gutter to mark differences;
the right half is aligned to a tab stop so that tabs line up. Input
lines that are too long to fit in half of an output line are truncated
for output.
- The `--left-column' option prints only the left column of two common
-lines. The `--suppress-common-lines' option suppresses common lines
+ The '--left-column' option prints only the left column of two common
+lines. The '--suppress-common-lines' option suppresses common lines
entirely.
\1f
2.3.2 An Example of Side by Side Format
---------------------------------------
-Here is the output of the command `diff -y -W 72 lao tzu' (*note Sample
+Here is the output of the command 'diff -y -W 72 lao tzu' (*note Sample
diff Input::, for the complete contents of the two files).
The Way that can be told of is n <
2.4 Showing Differences Without Context
=======================================
-The "normal" `diff' output format shows each hunk of differences
-without any surrounding context. Sometimes such output is the clearest
-way to see how lines have changed, without the clutter of nearby
-unchanged lines (although you can get similar results with the context
-or unified formats by using 0 lines of context). However, this format
-is no longer widely used for sending out patches; for that purpose, the
-context format (*note Context Format::) and the unified format (*note
-Unified Format::) are superior. Normal format is the default for
-compatibility with older versions of `diff' and the POSIX standard.
-Use the `--normal' option to select this output format explicitly.
+The "normal" 'diff' output format shows each hunk of differences without
+any surrounding context. Sometimes such output is the clearest way to
+see how lines have changed, without the clutter of nearby unchanged
+lines (although you can get similar results with the context or unified
+formats by using 0 lines of context). However, this format is no longer
+widely used for sending out patches; for that purpose, the context
+format (*note Context Format::) and the unified format (*note Unified
+Format::) are superior. Normal format is the default for compatibility
+with older versions of 'diff' and the POSIX standard. Use the
+'--normal' option to select this output format explicitly.
* Menu:
2.4.1 An Example of Normal Format
---------------------------------
-Here is the output of the command `diff lao tzu' (*note Sample diff
+Here is the output of the command 'diff lao tzu' (*note Sample diff
Input::, for the complete contents of the two files). Notice that it
shows only the lines that are different between the two files.
< The Named is the mother of all things.
---
> The named is the mother of all things.
- >
+ >
11a11,13
> They both may be called deep and profound.
> Deeper and more profound,
the original line numbers in each file. The types of change commands
are:
-`LaR'
+'LaR'
Add the lines in range R of the second file after line L of the
- first file. For example, `8a12,15' means append lines 12-15 of
+ first file. For example, '8a12,15' means append lines 12-15 of
file 2 after line 8 of file 1; or, if changing file 2 into file 1,
delete lines 12-15 of file 2.
-`FcT'
+'FcT'
Replace the lines in range F of the first file with lines in range
T of the second file. This is like a combined add and delete, but
- more compact. For example, `5,7c8,10' means change lines 5-7 of
+ more compact. For example, '5,7c8,10' means change lines 5-7 of
file 1 to read as lines 8-10 of file 2; or, if changing file 2 into
file 1, change lines 8-10 of file 2 to read as lines 5-7 of file 1.
-`RdL'
+'RdL'
Delete the lines in range R from the first file; line L is where
they would have appeared in the second file had they not been
- deleted. For example, `5,7d3' means delete lines 5-7 of file 1;
+ deleted. For example, '5,7d3' means delete lines 5-7 of file 1;
or, if changing file 2 into file 1, append lines 5-7 of file 1
after line 3 of file 2.
* Menu:
-* ed Scripts:: Using `diff' to produce commands for `ed'.
-* Forward ed:: Making forward `ed' scripts.
-* RCS:: A special `diff' output format used by RCS.
+* ed Scripts:: Using 'diff' to produce commands for 'ed'.
+* Forward ed:: Making forward 'ed' scripts.
+* RCS:: A special 'diff' output format used by RCS.
\1f
File: diffutils.info-t, Node: ed Scripts, Next: Forward ed, Up: Scripts
-2.5.1 `ed' Scripts
+2.5.1 'ed' Scripts
------------------
-`diff' can produce commands that direct the `ed' text editor to change
-the first file into the second file. Long ago, this was the only
-output mode that was suitable for editing one file into another
-automatically; today, with `patch', it is almost obsolete. Use the
-`--ed' (`-e') option to select this output format.
+'diff' can produce commands that direct the 'ed' text editor to change
+the first file into the second file. Long ago, this was the only output
+mode that was suitable for editing one file into another automatically;
+today, with 'patch', it is almost obsolete. Use the '--ed' ('-e')
+option to select this output format.
Like the normal format (*note Normal::), this output format does not
show any context; unlike the normal format, it does not include the
information necessary to apply the diff in reverse (to produce the first
file if all you have is the second file and the diff).
- If the file `d' contains the output of `diff -e old new', then the
-command `(cat d && echo w) | ed - old' edits `old' to make it a copy of
-`new'. More generally, if `d1', `d2', ..., `dN' contain the outputs of
-`diff -e old new1', `diff -e new1 new2', ..., `diff -e newN-1 newN',
-respectively, then the command `(cat d1 d2 ... dN && echo w) | ed -
-old' edits `old' to make it a copy of `newN'.
+ If the file 'd' contains the output of 'diff -e old new', then the
+command '(cat d && echo w) | ed - old' edits 'old' to make it a copy of
+'new'. More generally, if 'd1', 'd2', ..., 'dN' contain the outputs of
+'diff -e old new1', 'diff -e new1 new2', ..., 'diff -e newN-1 newN',
+respectively, then the command '(cat d1 d2 ... dN && echo w) | ed - old'
+edits 'old' to make it a copy of 'newN'.
* Menu:
-* Example ed:: A sample `ed' script.
-* Detailed ed:: A detailed description of `ed' format.
+* Example ed:: A sample 'ed' script.
+* Detailed ed:: A detailed description of 'ed' format.
\1f
File: diffutils.info-t, Node: Example ed, Next: Detailed ed, Up: ed Scripts
-2.5.1.1 Example `ed' Script
+2.5.1.1 Example 'ed' Script
...........................
-Here is the output of `diff -e lao tzu' (*note Sample diff Input::, for
+Here is the output of 'diff -e lao tzu' (*note Sample diff Input::, for
the complete contents of the two files):
11a
\1f
File: diffutils.info-t, Node: Detailed ed, Prev: Example ed, Up: ed Scripts
-2.5.1.2 Detailed Description of `ed' Format
+2.5.1.2 Detailed Description of 'ed' Format
...........................................
-The `ed' output format consists of one or more hunks of differences.
-The changes closest to the ends of the files come first so that
-commands that change the number of lines do not affect how `ed'
-interprets line numbers in succeeding commands. `ed' format hunks look
-like this:
+The 'ed' output format consists of one or more hunks of differences.
+The changes closest to the ends of the files come first so that commands
+that change the number of lines do not affect how 'ed' interprets line
+numbers in succeeding commands. 'ed' format hunks look like this:
CHANGE-COMMAND
TO-FILE-LINE
TO-FILE-LINE...
.
- Because `ed' uses a single period on a line to indicate the end of
-input, GNU `diff' protects lines of changes that contain a single
-period on a line by writing two periods instead, then writing a
-subsequent `ed' command to change the two periods into one. The `ed'
-format cannot represent an incomplete line, so if the second file ends
-in a changed incomplete line, `diff' reports an error and then pretends
-that a newline was appended.
+ Because 'ed' uses a single period on a line to indicate the end of
+input, GNU 'diff' protects lines of changes that contain a single period
+on a line by writing two periods instead, then writing a subsequent 'ed'
+command to change the two periods into one. The 'ed' format cannot
+represent an incomplete line, so if the second file ends in a changed
+incomplete line, 'diff' reports an error and then pretends that a
+newline was appended.
There are three types of change commands. Each consists of a line
number or comma-separated range of lines in the first file and a single
the original line numbers in the file. The types of change commands
are:
-`La'
+'La'
Add text from the second file after line L in the first file. For
- example, `8a' means to add the following lines after line 8 of file
+ example, '8a' means to add the following lines after line 8 of file
1.
-`Rc'
+'Rc'
Replace the lines in range R in the first file with the following
lines. Like a combined add and delete, but more compact. For
- example, `5,7c' means change lines 5-7 of file 1 to read as the
+ example, '5,7c' means change lines 5-7 of file 1 to read as the
text file 2.
-`Rd'
+'Rd'
Delete the lines in range R from the first file. For example,
- `5,7d' means delete lines 5-7 of file 1.
+ '5,7d' means delete lines 5-7 of file 1.
\1f
File: diffutils.info-t, Node: Forward ed, Next: RCS, Prev: ed Scripts, Up: Scripts
-2.5.2 Forward `ed' Scripts
+2.5.2 Forward 'ed' Scripts
--------------------------
-`diff' can produce output that is like an `ed' script, but with hunks
-in forward (front to back) order. The format of the commands is also
+'diff' can produce output that is like an 'ed' script, but with hunks in
+forward (front to back) order. The format of the commands is also
changed slightly: command characters precede the lines they modify,
spaces separate line numbers in ranges, and no attempt is made to
-disambiguate hunk lines consisting of a single period. Like `ed'
-format, forward `ed' format cannot represent incomplete lines.
+disambiguate hunk lines consisting of a single period. Like 'ed'
+format, forward 'ed' format cannot represent incomplete lines.
- Forward `ed' format is not very useful, because neither `ed' nor
-`patch' can apply diffs in this format. It exists mainly for
-compatibility with older versions of `diff'. Use the `-f' or
-`--forward-ed' option to select it.
+ Forward 'ed' format is not very useful, because neither 'ed' nor
+'patch' can apply diffs in this format. It exists mainly for
+compatibility with older versions of 'diff'. Use the '-f' or
+'--forward-ed' option to select it.
\1f
File: diffutils.info-t, Node: RCS, Prev: Forward ed, Up: Scripts
The RCS output format is designed specifically for use by the Revision
Control System, which is a set of free programs used for organizing
-different versions and systems of files. Use the `--rcs' (`-n') option
-to select this output format. It is like the forward `ed' format
-(*note Forward ed::), but it can represent arbitrary changes to the
-contents of a file because it avoids the forward `ed' format's problems
-with lines consisting of a single period and with incomplete lines.
-Instead of ending text sections with a line consisting of a single
-period, each command specifies the number of lines it affects; a
-combination of the `a' and `d' commands are used instead of `c'. Also,
-if the second file ends in a changed incomplete line, then the output
-also ends in an incomplete line.
-
- Here is the output of `diff -n lao tzu' (*note Sample diff Input::,
+different versions and systems of files. Use the '--rcs' ('-n') option
+to select this output format. It is like the forward 'ed' format (*note
+Forward ed::), but it can represent arbitrary changes to the contents of
+a file because it avoids the forward 'ed' format's problems with lines
+consisting of a single period and with incomplete lines. Instead of
+ending text sections with a line consisting of a single period, each
+command specifies the number of lines it affects; a combination of the
+'a' and 'd' commands are used instead of 'c'. Also, if the second file
+ends in a changed incomplete line, then the output also ends in an
+incomplete line.
+
+ Here is the output of 'diff -n lao tzu' (*note Sample diff Input::,
for the complete contents of the two files):
d1 2
2.6 Merging Files with If-then-else
===================================
-You can use `diff' to merge two files of C source code. The output of
-`diff' in this format contains all the lines of both files. Lines
+You can use 'diff' to merge two files of C source code. The output of
+'diff' in this format contains all the lines of both files. Lines
common to both files are output just once; the differing parts are
-separated by the C preprocessor directives `#ifdef NAME' or `#ifndef
-NAME', `#else', and `#endif'. When compiling the output, you select
+separated by the C preprocessor directives '#ifdef NAME' or '#ifndef
+NAME', '#else', and '#endif'. When compiling the output, you select
which version to use by either defining or leaving undefined the macro
NAME.
- To merge two files, use `diff' with the `-D NAME' or `--ifdef=NAME'
+ To merge two files, use 'diff' with the '-D NAME' or '--ifdef=NAME'
option. The argument NAME is the C preprocessor identifier to use in
-the `#ifdef' and `#ifndef' directives.
+the '#ifdef' and '#ifndef' directives.
- For example, if you change an instance of `wait (&s)' to `waitpid
+ For example, if you change an instance of 'wait (&s)' to 'waitpid
(-1, &s, 0)' and then merge the old and new files with the
-`--ifdef=HAVE_WAITPID' option, then the affected part of your code
-might look like this:
+'--ifdef=HAVE_WAITPID' option, then the affected part of your code might
+look like this:
do {
#ifndef HAVE_WAITPID
languages and text formatting languages. A line group format specifies
the output format for a contiguous group of similar lines.
- For example, the following command compares the TeX files `old' and
-`new', and outputs a merged file in which old regions are surrounded by
-`\begin{em}'-`\end{em}' lines, and new regions are surrounded by
-`\begin{bf}'-`\end{bf}' lines.
+ For example, the following command compares the TeX files 'old' and
+'new', and outputs a merged file in which old regions are surrounded by
+'\begin{em}'-'\end{em}' lines, and new regions are surrounded by
+'\begin{bf}'-'\end{bf}' lines.
diff \
--old-group-format='\begin{em}
%>' \
old new
- To specify a line group format, use `diff' with one of the options
+ To specify a line group format, use 'diff' with one of the options
listed below. You can specify up to four line group formats, one for
each kind of line group. You should quote FORMAT, because it typically
contains shell metacharacters.
-`--old-group-format=FORMAT'
+'--old-group-format=FORMAT'
These line groups are hunks containing only lines from the first
file. The default old group format is the same as the changed
group format if it is specified; otherwise it is a format that
outputs the line group as-is.
-`--new-group-format=FORMAT'
+'--new-group-format=FORMAT'
These line groups are hunks containing only lines from the second
file. The default new group format is same as the changed group
format if it is specified; otherwise it is a format that outputs
the line group as-is.
-`--changed-group-format=FORMAT'
+'--changed-group-format=FORMAT'
These line groups are hunks containing lines from both files. The
default changed group format is the concatenation of the old and
new group formats.
-`--unchanged-group-format=FORMAT'
+'--unchanged-group-format=FORMAT'
These line groups contain lines common to both files. The default
unchanged group format is a format that outputs the line group
as-is.
In a line group format, ordinary characters represent themselves;
-conversion specifications start with `%' and have one of the following
+conversion specifications start with '%' and have one of the following
forms.
-`%<'
+'%<'
stands for the lines from the first file, including the trailing
newline. Each line is formatted according to the old line format
(*note Line Formats::).
-`%>'
+'%>'
stands for the lines from the second file, including the trailing
newline. Each line is formatted according to the new line format.
-`%='
+'%='
stands for the lines common to both files, including the trailing
newline. Each line is formatted according to the unchanged line
format.
-`%%'
- stands for `%'.
+'%%'
+ stands for '%'.
-`%c'C''
+'%c'C''
where C is a single character, stands for C. C may not be a
- backslash or an apostrophe. For example, `%c':'' stands for a
- colon, even inside the then-part of an if-then-else format, which
- a colon would normally terminate.
+ backslash or an apostrophe. For example, '%c':'' stands for a
+ colon, even inside the then-part of an if-then-else format, which a
+ colon would normally terminate.
-`%c'\O''
+'%c'\O''
where O is a string of 1, 2, or 3 octal digits, stands for the
- character with octal code O. For example, `%c'\0'' stands for a
+ character with octal code O. For example, '%c'\0'' stands for a
null character.
-`FN'
- where F is a `printf' conversion specification and N is one of the
+'FN'
+ where F is a 'printf' conversion specification and N is one of the
following letters, stands for N's value formatted with F.
- `e'
+ 'e'
The line number of the line just before the group in the old
file.
- `f'
+ 'f'
The line number of the first line in the group in the old
file; equals E + 1.
- `l'
+ 'l'
The line number of the last line in the group in the old file.
- `m'
+ 'm'
The line number of the line just after the group in the old
file; equals L + 1.
- `n'
- The number of lines in the group in the old file; equals L -
- F + 1.
+ 'n'
+ The number of lines in the group in the old file; equals L - F
+ + 1.
- `E, F, L, M, N'
+ 'E, F, L, M, N'
Likewise, for lines in the new file.
-
- The `printf' conversion specification can be `%d', `%o', `%x', or
- `%X', specifying decimal, octal, lower case hexadecimal, or upper
- case hexadecimal output respectively. After the `%' the following
+ The 'printf' conversion specification can be '%d', '%o', '%x', or
+ '%X', specifying decimal, octal, lower case hexadecimal, or upper
+ case hexadecimal output respectively. After the '%' the following
options can appear in sequence: a series of zero or more flags; an
integer specifying the minimum field width; and a period followed
by an optional integer specifying the minimum number of digits.
- The flags are `-' for left-justification, `'' for separating the
- digit into groups as specified by the `LC_NUMERIC' locale category,
- and `0' for padding with zeros instead of spaces. For example,
- `%5dN' prints the number of new lines in the group in a field of
- width 5 characters, using the `printf' format `"%5d"'.
+ The flags are '-' for left-justification, ''' for separating the
+ digit into groups as specified by the 'LC_NUMERIC' locale category,
+ and '0' for padding with zeros instead of spaces. For example,
+ '%5dN' prints the number of new lines in the group in a field of
+ width 5 characters, using the 'printf' format '"%5d"'.
-`(A=B?T:E)'
+'(A=B?T:E)'
If A equals B then T else E. A and B are each either a decimal
- constant or a single letter interpreted as above. This format
- spec is equivalent to T if A's value equals B's; otherwise it is
+ constant or a single letter interpreted as above. This format spec
+ is equivalent to T if A's value equals B's; otherwise it is
equivalent to E.
- For example, `%(N=0?no:%dN) line%(N=1?:s)' is equivalent to `no
+ For example, '%(N=0?no:%dN) line%(N=1?:s)' is equivalent to 'no
lines' if N (the number of lines in the group in the new file) is
- 0, to `1 line' if N is 1, and to `%dN lines' otherwise.
+ 0, to '1 line' if N is 1, and to '%dN lines' otherwise.
\1f
File: diffutils.info-t, Node: Line Formats, Next: Example If-then-else, Prev: Line Group Formats, Up: If-then-else
2.6.2 Line Formats
------------------
-Line formats control how each line taken from an input file is output
-as part of a line group in if-then-else format.
+Line formats control how each line taken from an input file is output as
+part of a line group in if-then-else format.
For example, the following command outputs text with a one-character
change indicator to the left of the text. The first character of output
-is `-' for deleted lines, `|' for added lines, and a space for
-unchanged lines. The formats contain newline characters where newlines
-are desired on output.
+is '-' for deleted lines, '|' for added lines, and a space for unchanged
+lines. The formats contain newline characters where newlines are
+desired on output.
diff \
--old-line-format='-%l
To specify a line format, use one of the following options. You
should quote FORMAT, since it often contains shell metacharacters.
-`--old-line-format=FORMAT'
+'--old-line-format=FORMAT'
formats lines just from the first file.
-`--new-line-format=FORMAT'
+'--new-line-format=FORMAT'
formats lines just from the second file.
-`--unchanged-line-format=FORMAT'
+'--unchanged-line-format=FORMAT'
formats lines common to both files.
-`--line-format=FORMAT'
+'--line-format=FORMAT'
formats all lines; in effect, it sets all three above options
simultaneously.
In a line format, ordinary characters represent themselves;
-conversion specifications start with `%' and have one of the following
+conversion specifications start with '%' and have one of the following
forms.
-`%l'
+'%l'
stands for the contents of the line, not counting its trailing
newline (if any). This format ignores whether the line is
incomplete; *Note Incomplete Lines::.
-`%L'
+'%L'
stands for the contents of the line, including its trailing newline
(if any). If a line is incomplete, this format preserves its
incompleteness.
-`%%'
- stands for `%'.
+'%%'
+ stands for '%'.
-`%c'C''
+'%c'C''
where C is a single character, stands for C. C may not be a
- backslash or an apostrophe. For example, `%c':'' stands for a
+ backslash or an apostrophe. For example, '%c':'' stands for a
colon.
-`%c'\O''
+'%c'\O''
where O is a string of 1, 2, or 3 octal digits, stands for the
- character with octal code O. For example, `%c'\0'' stands for a
+ character with octal code O. For example, '%c'\0'' stands for a
null character.
-`Fn'
- where F is a `printf' conversion specification, stands for the
- line number formatted with F. For example, `%.5dn' prints the
- line number using the `printf' format `"%.5d"'. *Note Line Group
+'Fn'
+ where F is a 'printf' conversion specification, stands for the line
+ number formatted with F. For example, '%.5dn' prints the line
+ number using the 'printf' format '"%.5d"'. *Note Line Group
Formats::, for more about printf conversion specifications.
-
- The default line format is `%l' followed by a newline character.
+ The default line format is '%l' followed by a newline character.
If the input contains tab characters and it is important that they
-line up on output, you should ensure that `%l' or `%L' in a line format
-is just after a tab stop (e.g. by preceding `%l' or `%L' with a tab
-character), or you should use the `-t' or `--expand-tabs' option.
+line up on output, you should ensure that '%l' or '%L' in a line format
+is just after a tab stop (e.g. by preceding '%l' or '%L' with a tab
+character), or you should use the '-t' or '--expand-tabs' option.
Taken together, the line and line group formats let you specify many
different formats. For example, the following command uses a format
-similar to normal `diff' format. You can tailor this command to get
-fine control over `diff' output.
+similar to normal 'diff' format. You can tailor this command to get
+fine control over 'diff' output.
diff \
--old-line-format='< %l
2.6.3 An Example of If-then-else Format
---------------------------------------
-Here is the output of `diff -DTWO lao tzu' (*note Sample diff Input::,
+Here is the output of 'diff -DTWO lao tzu' (*note Sample diff Input::,
for the complete contents of the two files):
#ifndef TWO
2.6.4 Detailed Description of If-then-else Format
-------------------------------------------------
-For lines common to both files, `diff' uses the unchanged line group
+For lines common to both files, 'diff' uses the unchanged line group
format. For each hunk of differences in the merged output format, if
-the hunk contains only lines from the first file, `diff' uses the old
-line group format; if the hunk contains only lines from the second
-file, `diff' uses the new group format; otherwise, `diff' uses the
-changed group format.
+the hunk contains only lines from the first file, 'diff' uses the old
+line group format; if the hunk contains only lines from the second file,
+'diff' uses the new group format; otherwise, 'diff' uses the changed
+group format.
The old, new, and unchanged line formats specify the output format of
lines from the first file, lines from the second file, and lines common
to both files, respectively.
- The option `--ifdef=NAME' is equivalent to the following sequence of
+ The option '--ifdef=NAME' is equivalent to the following sequence of
options using shell syntax:
--old-group-format='#ifndef NAME
%>#endif /* NAME */
'
- You should carefully check the `diff' output for proper nesting.
-For example, when using the `-D NAME' or `--ifdef=NAME' option, you
-should check that if the differing lines contain any of the C
-preprocessor directives `#ifdef', `#ifndef', `#else', `#elif', or
-`#endif', they are nested properly and match. If they don't, you must
-make corrections manually. It is a good idea to carefully check the
-resulting code anyway to make sure that it really does what you want it
-to; depending on how the input files were produced, the output might
-contain duplicate or otherwise incorrect code.
-
- The `patch' `-D NAME' option behaves like the `diff' `-D NAME'
+ You should carefully check the 'diff' output for proper nesting. For
+example, when using the '-D NAME' or '--ifdef=NAME' option, you should
+check that if the differing lines contain any of the C preprocessor
+directives '#ifdef', '#ifndef', '#else', '#elif', or '#endif', they are
+nested properly and match. If they don't, you must make corrections
+manually. It is a good idea to carefully check the resulting code
+anyway to make sure that it really does what you want it to; depending
+on how the input files were produced, the output might contain duplicate
+or otherwise incorrect code.
+
+ The 'patch' '-D NAME' option behaves like the 'diff' '-D NAME'
option, except it operates on a file and a diff to produce a merged
file. *Note patch Options::.
******************
When an input file ends in a non-newline character, its last line is
-called an "incomplete line" because its last character is not a
-newline. All other lines are called "full lines" and end in a newline
-character. Incomplete lines do not match full lines unless differences
-in white space are ignored (*note White Space::).
+called an "incomplete line" because its last character is not a newline.
+All other lines are called "full lines" and end in a newline character.
+Incomplete lines do not match full lines unless differences in white
+space are ignored (*note White Space::).
An incomplete line is normally distinguished on output from a full
-line by a following line that starts with `\'. However, the RCS format
+line by a following line that starts with '\'. However, the RCS format
(*note RCS::) outputs the incomplete line as-is, without any trailing
newline or following line. The side by side format normally represents
-incomplete lines as-is, but in some cases uses a `\' or `/' gutter
-marker. *Note Side by Side::. The if-then-else line format preserves
-a line's incompleteness with `%L', and discards the newline with `%l'.
-*Note Line Formats::. Finally, with the `ed' and forward `ed' output
-formats (*note Output Formats::) `diff' cannot represent an incomplete
+incomplete lines as-is, but in some cases uses a '\' or '/' gutter
+marker. *Note Side by Side::. The if-then-else line format preserves a
+line's incompleteness with '%L', and discards the newline with '%l'.
+*Note Line Formats::. Finally, with the 'ed' and forward 'ed' output
+formats (*note Output Formats::) 'diff' cannot represent an incomplete
line, so it pretends there was a newline and reports an error.
- For example, suppose `F' and `G' are one-byte files that contain
-just `f' and `g', respectively. Then `diff F G' outputs
+ For example, suppose 'F' and 'G' are one-byte files that contain just
+'f' and 'g', respectively. Then 'diff F G' outputs
1c1
< f
> g
\ No newline at end of file
-(The exact message may differ in non-English locales.) `diff -n F G'
+(The exact message may differ in non-English locales.) 'diff -n F G'
outputs the following without a trailing newline:
d1 1
a1 1
g
-`diff -e F G' reports two errors and outputs the following:
+'diff -e F G' reports two errors and outputs the following:
1c
g
4 Comparing Directories
***********************
-You can use `diff' to compare some or all of the files in two directory
-trees. When both file name arguments to `diff' are directories, it
-compares each file that is contained in both directories, examining
-file names in alphabetical order as specified by the `LC_COLLATE'
-locale category. Normally `diff' is silent about pairs of files that
-contain no differences, but if you use the `--report-identical-files'
-(`-s') option, it reports pairs of identical files. Normally `diff'
-reports subdirectories common to both directories without comparing
-subdirectories' files, but if you use the `-r' or `--recursive' option,
-it compares every corresponding pair of files in the directory trees,
-as many levels deep as they go.
-
- If only one file exists, `diff' normally does not show its contents;
+You can use 'diff' to compare some or all of the files in two directory
+trees. When both file name arguments to 'diff' are directories, it
+compares each file that is contained in both directories, examining file
+names in alphabetical order as specified by the 'LC_COLLATE' locale
+category. Normally 'diff' is silent about pairs of files that contain
+no differences, but if you use the '--report-identical-files' ('-s')
+option, it reports pairs of identical files. Normally 'diff' reports
+subdirectories common to both directories without comparing
+subdirectories' files, but if you use the '-r' or '--recursive' option,
+it compares every corresponding pair of files in the directory trees, as
+many levels deep as they go.
+
+ If only one file exists, 'diff' normally does not show its contents;
it merely reports that one file exists but the other does not. You can
-make `diff' act as though the missing file is empty, so that it outputs
+make 'diff' act as though the missing file is empty, so that it outputs
the entire contents of the file that actually exists. (It is output as
-either an insertion or a deletion, depending on whether the missing
-file is in the first or the second position.) To do this, use the
-`--new-file' (`-N') option. This option affects command-line arguments
-as well as files found via directory traversal; for example, `diff -N a
-b' treats `a' as empty if `a' does not exist but `b' does, and
-similarly `diff -N - b' treats standard input as empty if it is closed
-but `b' exists.
-
- If the older directory contains large files that are not in the
-newer directory, you can make the patch smaller by using the
-`--unidirectional-new-file' option instead of `-N'. This option is
-like `-N' except that it inserts the contents only of files that appear
-in the second directory but not the first (that is, files that were
-added). At the top of the patch, write instructions for the user
-applying the patch to remove the files that were deleted before
-applying the patch. *Note Making Patches::, for more discussion of
-making patches for distribution.
+either an insertion or a deletion, depending on whether the missing file
+is in the first or the second position.) To do this, use the
+'--new-file' ('-N') option. This option affects command-line arguments
+as well as files found via directory traversal; for example, 'diff -N a
+b' treats 'a' as empty if 'a' does not exist but 'b' does, and similarly
+'diff -N - b' treats standard input as empty if it is closed but 'b'
+exists.
+
+ If the older directory contains large files that are not in the newer
+directory, you can make the patch smaller by using the
+'--unidirectional-new-file' option instead of '-N'. This option is like
+'-N' except that it inserts the contents only of files that appear in
+the second directory but not the first (that is, files that were added).
+At the top of the patch, write instructions for the user applying the
+patch to remove the files that were deleted before applying the patch.
+*Note Making Patches::, for more discussion of making patches for
+distribution.
To ignore some files while comparing directories, use the
-`--exclude=PATTERN' (`-x PATTERN') option. This option ignores any
+'--exclude=PATTERN' ('-x PATTERN') option. This option ignores any
files or subdirectories whose base names match the shell pattern
PATTERN. Unlike in the shell, a period at the start of the base of a
file name matches a wildcard at the start of a pattern. You should
enclose PATTERN in quotes so that the shell does not expand it. For
-example, the option `-x '*.[ao]'' ignores any file whose name ends with
-`.a' or `.o'.
+example, the option '-x '*.[ao]'' ignores any file whose name ends with
+'.a' or '.o'.
This option accumulates if you specify it more than once. For
-example, using the options `-x 'RCS' -x '*,v'' ignores any file or
-subdirectory whose base name is `RCS' or ends with `,v'.
+example, using the options '-x 'RCS' -x '*,v'' ignores any file or
+subdirectory whose base name is 'RCS' or ends with ',v'.
If you need to give this option many times, you can instead put the
patterns in a file, one pattern per line, and use the
-`--exclude-from=FILE' (`-X FILE') option. Trailing white space and
+'--exclude-from=FILE' ('-X FILE') option. Trailing white space and
empty lines are ignored in the pattern file.
If you have been comparing two directories and stopped partway
through, later you might want to continue where you left off. You can
-do this by using the `--starting-file=FILE' (`-S FILE') option. This
+do this by using the '--starting-file=FILE' ('-S FILE') option. This
compares only the file FILE and all alphabetically later files in the
topmost directory level.
If two directories differ only in that file names are lower case in
-one directory and upper case in the upper, `diff' normally reports many
+one directory and upper case in the upper, 'diff' normally reports many
differences because it compares file names in a case sensitive way.
-With the `--ignore-file-name-case' option, `diff' ignores case
+With the '--ignore-file-name-case' option, 'diff' ignores case
differences in file names, so that for example the contents of the file
-`Tao' in one directory are compared to the contents of the file `TAO'
-in the other. The `--no-ignore-file-name-case' option cancels the
-effect of the `--ignore-file-name-case' option, reverting to the default
+'Tao' in one directory are compared to the contents of the file 'TAO' in
+the other. The '--no-ignore-file-name-case' option cancels the effect
+of the '--ignore-file-name-case' option, reverting to the default
behavior.
- If an `--exclude=PATTERN' (`-x PATTERN') option, or an
-`--exclude-from=FILE' (`-X FILE') option, is specified while the
-`--ignore-file-name-case' option is in effect, case is ignored when
+ If an '--exclude=PATTERN' ('-x PATTERN') option, or an
+'--exclude-from=FILE' ('-X FILE') option, is specified while the
+'--ignore-file-name-case' option is in effect, case is ignored when
excluding file names matching the specified patterns.
- To avoid that `diff' follows symbolic links, use the
-`--no-dereference'. When this option is in use, symbolic links will be
-treated like a special kind of files, rather than comparing the target
-of each symbolic link.
+ To tell 'diff' not to follow a symbolic link, use the
+'--no-dereference' option.
\1f
File: diffutils.info-t, Node: Adjusting Output, Next: diff Performance, Prev: Comparing Directories, Up: Top
-5 Making `diff' Output Prettier
+5 Making 'diff' Output Prettier
*******************************
-`diff' provides several ways to adjust the appearance of its output.
+'diff' provides several ways to adjust the appearance of its output.
These adjustments can be applied to any output format.
* Menu:
* Tabs:: Preserving the alignment of tab stops.
* Trailing Blanks:: Suppressing blanks before empty output lines.
-* Pagination:: Page numbering and time-stamping `diff' output.
+* Pagination:: Page numbering and time-stamping 'diff' output.
\1f
File: diffutils.info-t, Node: Tabs, Next: Trailing Blanks, Up: Adjusting Output
5.1 Preserving Tab Stop Alignment
=================================
-The lines of text in some of the `diff' output formats are preceded by
+The lines of text in some of the 'diff' output formats are preceded by
one or two characters that indicate whether the text is inserted,
-deleted, or changed. The addition of those characters can cause tabs
-to move to the next tab stop, throwing off the alignment of columns in
-the line. GNU `diff' provides two ways to make tab-aligned columns
-line up correctly.
+deleted, or changed. The addition of those characters can cause tabs to
+move to the next tab stop, throwing off the alignment of columns in the
+line. GNU 'diff' provides two ways to make tab-aligned columns line up
+correctly.
- The first way is to have `diff' convert all tabs into the correct
+ The first way is to have 'diff' convert all tabs into the correct
number of spaces before outputting them; select this method with the
-`--expand-tabs' (`-t') option. To use this form of output with
-`patch', you must give `patch' the `-l' or `--ignore-white-space'
-option (*note Changed White Space::, for more information). `diff'
-normally assumes that tab stops are set every 8 print columns, but this
-can be altered by the `--tabsize=COLUMNS' option.
+'--expand-tabs' ('-t') option. To use this form of output with 'patch',
+you must give 'patch' the '-l' or '--ignore-white-space' option (*note
+Changed White Space::, for more information). 'diff' normally assumes
+that tab stops are set every 8 print columns, but this can be altered by
+the '--tabsize=COLUMNS' option.
The other method for making tabs line up correctly is to add a tab
character instead of a space after the indicator character at the
disadvantage is that it can make long lines too long to fit on one line
of the screen or the paper. It also does not work with the unified
output format, which does not have a space character after the change
-type indicator character. Select this method with the `-T' or
-`--initial-tab' option.
+type indicator character. Select this method with the '-T' or
+'--initial-tab' option.
\1f
File: diffutils.info-t, Node: Trailing Blanks, Next: Pagination, Prev: Tabs, Up: Adjusting Output
============================
When outputting lines in normal or context format, or outputting an
-unchanged line in unified format, `diff' normally outputs a blank just
-before each line. If the line is empty, the output of `diff' therefore
+unchanged line in unified format, 'diff' normally outputs a blank just
+before each line. If the line is empty, the output of 'diff' therefore
contains trailing blanks even though the input does not contain them.
For example, when outputting an unchanged empty line in context format,
-`diff' normally outputs a line with two leading spaces.
+'diff' normally outputs a line with two leading spaces.
Some text editors and email agents routinely delete trailing blanks,
-so it can be a problem to deal with diff output files that contain
-them. You can avoid this problem with the `--suppress-blank-empty'
-option. It causes `diff' to omit trailing blanks at the end of output
-lines in normal, context, and unified format, unless the trailing
-blanks were already present in the input. This changes the output
-format slightly, so that output lines are guaranteed to never end in a
-blank unless an input line ends in a blank. This format is less likely
-to be munged by text editors or by transmission via email. It is
-accepted by GNU `patch' as well.
+so it can be a problem to deal with diff output files that contain them.
+You can avoid this problem with the '--suppress-blank-empty' option. It
+causes 'diff' to omit trailing blanks at the end of output lines in
+normal, context, and unified format, unless the trailing blanks were
+already present in the input. This changes the output format slightly,
+so that output lines are guaranteed to never end in a blank unless an
+input line ends in a blank. This format is less likely to be munged by
+text editors or by transmission via email. It is accepted by GNU
+'patch' as well.
\1f
File: diffutils.info-t, Node: Pagination, Prev: Trailing Blanks, Up: Adjusting Output
-5.3 Paginating `diff' Output
+5.3 Paginating 'diff' Output
============================
It can be convenient to have long output page-numbered and time-stamped.
-The `--paginate' (`-l') option does this by sending the `diff' output
-through the `pr' program. Here is what the page header might look like
-for `diff -lc lao tzu':
+The '--paginate' ('-l') option does this by sending the 'diff' output
+through the 'pr' program. Here is what the page header might look like
+for 'diff -lc lao tzu':
2002-02-22 14:20 diff -lc lao tzu Page 1
\1f
File: diffutils.info-t, Node: diff Performance, Next: Comparing Three Files, Prev: Adjusting Output, Up: Top
-6 `diff' Performance Tradeoffs
+6 'diff' Performance Tradeoffs
******************************
-GNU `diff' runs quite efficiently; however, in some circumstances you
+GNU 'diff' runs quite efficiently; however, in some circumstances you
can cause it to run faster or produce a more compact set of changes.
- One way to improve `diff' performance is to use hard or symbolic
+ One way to improve 'diff' performance is to use hard or symbolic
links to files instead of copies. This improves performance because
-`diff' normally does not need to read two hard or symbolic links to the
-same file, since their contents must be identical. For example,
-suppose you copy a large directory hierarchy, make a few changes to the
-copy, and then often use `diff -r' to compare the original to the copy.
-If the original files are read-only, you can greatly improve
-performance by creating the copy using hard or symbolic links (e.g.,
-with GNU `cp -lR' or `cp -sR'). Before editing a file in the copy for
-the first time, you should break the link and replace it with a regular
-copy.
-
- You can also affect the performance of GNU `diff' by giving it
+'diff' normally does not need to read two hard or symbolic links to the
+same file, since their contents must be identical. For example, suppose
+you copy a large directory hierarchy, make a few changes to the copy,
+and then often use 'diff -r' to compare the original to the copy. If
+the original files are read-only, you can greatly improve performance by
+creating the copy using hard or symbolic links (e.g., with GNU 'cp -lR'
+or 'cp -sR'). Before editing a file in the copy for the first time, you
+should break the link and replace it with a regular copy.
+
+ You can also affect the performance of GNU 'diff' by giving it
options that change the way it compares files. Performance has more
than one dimension. These options improve one aspect of performance at
the cost of another, or they improve performance in some cases while
hurting it in others.
- The way that GNU `diff' determines which lines have changed always
+ The way that GNU 'diff' determines which lines have changed always
comes up with a near-minimal set of differences. Usually it is good
-enough for practical purposes. If the `diff' output is large, you
-might want `diff' to use a modified algorithm that sometimes produces a
-smaller set of differences. The `--minimal' (`-d') option does this;
-however, it can also cause `diff' to run more slowly than usual, so it
+enough for practical purposes. If the 'diff' output is large, you might
+want 'diff' to use a modified algorithm that sometimes produces a
+smaller set of differences. The '--minimal' ('-d') option does this;
+however, it can also cause 'diff' to run more slowly than usual, so it
is not the default behavior.
When the files you are comparing are large and have small groups of
-changes scattered throughout them, you can use the
-`--speed-large-files' option to make a different modification to the
-algorithm that `diff' uses. If the input files have a constant small
-density of changes, this option speeds up the comparisons without
-changing the output. If not, `diff' might produce a larger set of
-differences; however, the output will still be correct.
-
- Normally `diff' discards the prefix and suffix that is common to
-both files before it attempts to find a minimal set of differences.
-This makes `diff' run faster, but occasionally it may produce
-non-minimal output. The `--horizon-lines=LINES' option prevents `diff'
-from discarding the last LINES lines of the prefix and the first LINES
-lines of the suffix. This gives `diff' further opportunities to find a
+changes scattered throughout them, you can use the '--speed-large-files'
+option to make a different modification to the algorithm that 'diff'
+uses. If the input files have a constant small density of changes, this
+option speeds up the comparisons without changing the output. If not,
+'diff' might produce a larger set of differences; however, the output
+will still be correct.
+
+ Normally 'diff' discards the prefix and suffix that is common to both
+files before it attempts to find a minimal set of differences. This
+makes 'diff' run faster, but occasionally it may produce non-minimal
+output. The '--horizon-lines=LINES' option prevents 'diff' from
+discarding the last LINES lines of the prefix and the first LINES lines
+of the suffix. This gives 'diff' further opportunities to find a
minimal output.
Suppose a run of changed lines includes a sequence of lines at one
end and there is an identical sequence of lines just outside the other
-end. The `diff' command is free to choose which identical sequence is
-included in the hunk. In this case, `diff' normally shifts the hunk's
+end. The 'diff' command is free to choose which identical sequence is
+included in the hunk. In this case, 'diff' normally shifts the hunk's
boundaries when this merges adjacent hunks, or shifts a hunk's lines
towards the end of the file. Merging hunks can make the output look
nicer in some cases.
7 Comparing Three Files
***********************
-Use the program `diff3' to compare three files and show any differences
-among them. (`diff3' can also merge files; see *note diff3 Merging::).
+Use the program 'diff3' to compare three files and show any differences
+among them. ('diff3' can also merge files; see *note diff3 Merging::).
- The "normal" `diff3' output format shows each hunk of differences
+ The "normal" 'diff3' output format shows each hunk of differences
without surrounding context. Hunks are labeled depending on whether
-they are two-way or three-way, and lines are annotated by their
-location in the input files.
+they are two-way or three-way, and lines are annotated by their location
+in the input files.
- *Note Invoking diff3::, for more information on how to run `diff3'.
+ *Note Invoking diff3::, for more information on how to run 'diff3'.
* Menu:
-* Sample diff3 Input:: Sample `diff3' input for examples.
+* Sample diff3 Input:: Sample 'diff3' input for examples.
* Example diff3 Normal:: Sample output in the normal format.
* Detailed diff3 Normal:: A detailed description of normal output format.
* diff3 Hunks:: The format of normal output format.
=============================
Here is a third sample file that will be used in examples to illustrate
-the output of `diff3' and how various options can change it. The first
-two files are the same that we used for `diff' (*note Sample diff
-Input::). This is the third sample file, called `tao':
+the output of 'diff3' and how various options can change it. The first
+two files are the same that we used for 'diff' (*note Sample diff
+Input::). This is the third sample file, called 'tao':
The Way that can be told of is not the eternal Way;
The name that can be named is not the eternal name.
\1f
File: diffutils.info-t, Node: Example diff3 Normal, Next: Detailed diff3 Normal, Prev: Sample diff3 Input, Up: Comparing Three Files
-7.2 An Example of `diff3' Normal Format
+7.2 An Example of 'diff3' Normal Format
=======================================
-Here is the output of the command `diff3 lao tzu tao' (*note Sample
+Here is the output of the command 'diff3 lao tzu tao' (*note Sample
diff3 Input::, for the complete contents of the files). Notice that it
shows only the lines that are different among the three files.
2:2,3c
3:4,5c
The named is the mother of all things.
-
+
====3
1:8c
2:7c
Deeper and more profound,
The door of all subtleties!
3:13,14c
-
+
-- The Way of Lao-Tzu, tr. Wing-tsit Chan
\1f
File: diffutils.info-t, Node: Detailed diff3 Normal, Next: diff3 Hunks, Prev: Example diff3 Normal, Up: Comparing Three Files
-7.3 Detailed Description of `diff3' Normal Format
+7.3 Detailed Description of 'diff3' Normal Format
=================================================
-Each hunk begins with a line marked `===='. Three-way hunks have plain
-`====' lines, and two-way hunks have `1', `2', or `3' appended to
+Each hunk begins with a line marked '===='. Three-way hunks have plain
+'====' lines, and two-way hunks have '1', '2', or '3' appended to
specify which of the three input files differ in that hunk. The hunks
contain copies of two or three sets of input lines each preceded by one
or two commands identifying where the lines came from.
Normally, two spaces precede each copy of an input line to
-distinguish it from the commands. But with the `--initial-tab' (`-T')
-option, `diff3' uses a tab instead of two spaces; this lines up tabs
+distinguish it from the commands. But with the '--initial-tab' ('-T')
+option, 'diff3' uses a tab instead of two spaces; this lines up tabs
correctly. *Note Tabs::, for more information.
Commands take the following forms:
-`FILE:La'
+'FILE:La'
This hunk appears after line L of file FILE, and contains no lines
- in that file. To edit this file to yield the other files, one
- must append hunk lines taken from the other files. For example,
- `1:11a' means that the hunk follows line 11 in the first file and
- contains no lines from that file.
+ in that file. To edit this file to yield the other files, one must
+ append hunk lines taken from the other files. For example, '1:11a'
+ means that the hunk follows line 11 in the first file and contains
+ no lines from that file.
-`FILE:Rc'
+'FILE:Rc'
This hunk contains the lines in the range R of file FILE. The
range R is a comma-separated pair of line numbers, or just one
number if there is only one line. To edit this file to yield the
other files, one must change the specified lines to be the lines
- taken from the other files. For example, `2:11,13c' means that
- the hunk contains lines 11 through 13 from the second file.
+ taken from the other files. For example, '2:11,13c' means that the
+ hunk contains lines 11 through 13 from the second file.
If the last line in a set of input lines is incomplete (*note
-Incomplete Lines::), it is distinguished on output from a full line by
-a following line that starts with `\'.
+Incomplete Lines::), it is distinguished on output from a full line by a
+following line that starts with '\'.
\1f
File: diffutils.info-t, Node: diff3 Hunks, Prev: Detailed diff3 Normal, Up: Comparing Three Files
-7.4 `diff3' Hunks
+7.4 'diff3' Hunks
=================
Groups of lines that differ in two or three of the input files are
-called "diff3 hunks", by analogy with `diff' hunks (*note Hunks::). If
-all three input files differ in a `diff3' hunk, the hunk is called a
+called "diff3 hunks", by analogy with 'diff' hunks (*note Hunks::). If
+all three input files differ in a 'diff3' hunk, the hunk is called a
"three-way hunk"; if just two input files differ, it is a "two-way
hunk".
- As with `diff', several solutions are possible. When comparing the
-files `A', `B', and `C', `diff3' normally finds `diff3' hunks by
-merging the two-way hunks output by the two commands `diff A B' and
-`diff A C'. This does not necessarily minimize the size of the output,
-but exceptions should be rare.
+ As with 'diff', several solutions are possible. When comparing the
+files 'A', 'B', and 'C', 'diff3' normally finds 'diff3' hunks by merging
+the two-way hunks output by the two commands 'diff A B' and 'diff A C'.
+This does not necessarily minimize the size of the output, but
+exceptions should be rare.
- For example, suppose `F' contains the three lines `a', `b', `f', `G'
-contains the lines `g', `b', `g', and `H' contains the lines `a', `b',
-`h'. `diff3 F G H' might output the following:
+ For example, suppose 'F' contains the three lines 'a', 'b', 'f', 'G'
+contains the lines 'g', 'b', 'g', and 'H' contains the lines 'a', 'b',
+'h'. 'diff3 F G H' might output the following:
====2
1:1c
3:3c
h
-because it found a two-way hunk containing `a' in the first and third
-files and `g' in the second file, then the single line `b' common to
-all three files, then a three-way hunk containing the last line of each
+because it found a two-way hunk containing 'a' in the first and third
+files and 'g' in the second file, then the single line 'b' common to all
+three files, then a three-way hunk containing the last line of each
file.
\1f
8 Merging From a Common Ancestor
********************************
-When two people have made changes to copies of the same file, `diff3'
+When two people have made changes to copies of the same file, 'diff3'
can produce a merged output that contains both sets of changes together
with warnings about conflicts.
- One might imagine programs with names like `diff4' and `diff5' to
+ One might imagine programs with names like 'diff4' and 'diff5' to
compare more than three files simultaneously, but in practice the need
-rarely arises. You can use `diff3' to merge three or more sets of
+rarely arises. You can use 'diff3' to merge three or more sets of
changes to a file by merging two change sets at a time.
- `diff3' can incorporate changes from two modified versions into a
+ 'diff3' can incorporate changes from two modified versions into a
common preceding version. This lets you merge the sets of changes
represented by the two newer files. Specify the common ancestor version
as the second argument and the two newer versions as the first and third
call this a "conflict". When all three input files differ, we call the
conflict an "overlap".
- `diff3' gives you several ways to handle overlaps and conflicts.
-You can omit overlaps or conflicts, or select only overlaps, or mark
-conflicts with special `<<<<<<<' and `>>>>>>>' lines.
+ 'diff3' gives you several ways to handle overlaps and conflicts. You
+can omit overlaps or conflicts, or select only overlaps, or mark
+conflicts with special '<<<<<<<' and '>>>>>>>' lines.
- `diff3' can output the merge results as an `ed' script that that can
-be applied to the first file to yield the merged output. However, it
-is usually better to have `diff3' generate the merged output directly;
-this bypasses some problems with `ed'.
+ 'diff3' can output the merge results as an 'ed' script that that can
+be applied to the first file to yield the merged output. However, it is
+usually better to have 'diff3' generate the merged output directly; this
+bypasses some problems with 'ed'.
* Menu:
* Which Changes:: Selecting changes to incorporate.
* Marking Conflicts:: Marking conflicts.
* Bypassing ed:: Generating merged output directly.
-* Merging Incomplete Lines:: How `diff3' merges incomplete lines.
+* Merging Incomplete Lines:: How 'diff3' merges incomplete lines.
* Saving the Changed File:: Emulating System V behavior.
\1f
8.1 Selecting Which Changes to Incorporate
==========================================
-You can select all unmerged changes from OLDER to YOURS for merging
-into MINE with the `--ed' (`-e') option. You can select only the
-nonoverlapping unmerged changes with `--easy-only' (`-3'), and you can
-select only the overlapping changes with `--overlap-only' (`-x').
+You can select all unmerged changes from OLDER to YOURS for merging into
+MINE with the '--ed' ('-e') option. You can select only the
+nonoverlapping unmerged changes with '--easy-only' ('-3'), and you can
+select only the overlapping changes with '--overlap-only' ('-x').
- The `-e', `-3' and `-x' options select only "unmerged changes", i.e.
+ The '-e', '-3' and '-x' options select only "unmerged changes", i.e.
changes where MINE and YOURS differ; they ignore changes from OLDER to
YOURS where MINE and YOURS are identical, because they assume that such
-changes have already been merged. If this assumption is not a safe
-one, you can use the `--show-all' (`-A') option (*note Marking
-Conflicts::).
+changes have already been merged. If this assumption is not a safe one,
+you can use the '--show-all' ('-A') option (*note Marking Conflicts::).
- Here is the output of the command `diff3' with each of these three
+ Here is the output of the command 'diff3' with each of these three
options (*note Sample diff3 Input::, for the complete contents of the
-files). Notice that `-e' outputs the union of the disjoint sets of
-changes output by `-3' and `-x'.
+files). Notice that '-e' outputs the union of the disjoint sets of
+changes output by '-3' and '-x'.
- Output of `diff3 -e lao tzu tao':
+ Output of 'diff3 -e lao tzu tao':
11a
-- The Way of Lao-Tzu, tr. Wing-tsit Chan
so we may see their result.
.
- Output of `diff3 -3 lao tzu tao':
+ Output of 'diff3 -3 lao tzu tao':
8c
so we may see their result.
.
- Output of `diff3 -x lao tzu tao':
+ Output of 'diff3 -x lao tzu tao':
11a
-- The Way of Lao-Tzu, tr. Wing-tsit Chan
8.2 Marking Conflicts
=====================
-`diff3' can mark conflicts in the merged output by bracketing them with
+'diff3' can mark conflicts in the merged output by bracketing them with
special marker lines. A conflict that comes from two files A and B is
marked as follows:
lines from C
>>>>>>> C
- The `--show-all' (`-A') option acts like the `-e' option, except
-that it brackets conflicts, and it outputs all changes from OLDER to
-YOURS, not just the unmerged changes. Thus, given the sample input
-files (*note Sample diff3 Input::), `diff3 -A lao tzu tao' puts
-brackets around the conflict where only `tzu' differs:
+ The '--show-all' ('-A') option acts like the '-e' option, except that
+it brackets conflicts, and it outputs all changes from OLDER to YOURS,
+not just the unmerged changes. Thus, given the sample input files
+(*note Sample diff3 Input::), 'diff3 -A lao tzu tao' puts brackets
+around the conflict where only 'tzu' differs:
<<<<<<< tzu
=======
-- The Way of Lao-Tzu, tr. Wing-tsit Chan
>>>>>>> tao
- The `--show-overlap' (`-E') option outputs less information than the
-`--show-all' (`-A') option, because it outputs only unmerged changes,
-and it never outputs the contents of the second file. Thus the `-E'
-option acts like the `-e' option, except that it brackets the first and
-third files from three-way overlapping changes. Similarly, `-X' acts
-like `-x', except it brackets all its (necessarily overlapping)
-changes. For example, for the three-way overlapping change above, the
-`-E' and `-X' options output the following:
+ The '--show-overlap' ('-E') option outputs less information than the
+'--show-all' ('-A') option, because it outputs only unmerged changes,
+and it never outputs the contents of the second file. Thus the '-E'
+option acts like the '-e' option, except that it brackets the first and
+third files from three-way overlapping changes. Similarly, '-X' acts
+like '-x', except it brackets all its (necessarily overlapping) changes.
+For example, for the three-way overlapping change above, the '-E' and
+'-X' options output the following:
<<<<<<< lao
=======
>>>>>>> tao
If you are comparing files that have meaningless or uninformative
-names, you can use the `--label=LABEL' option to show alternate names
-in the `<<<<<<<', `|||||||' and `>>>>>>>' brackets. This option can be
-given up to three times, once for each input file. Thus `diff3 -A
---label X --label Y --label Z A B C' acts like `diff3 -A A B C', except
-that the output looks like it came from files named `X', `Y' and `Z'
-rather than from files named `A', `B' and `C'.
+names, you can use the '--label=LABEL' option to show alternate names in
+the '<<<<<<<', '|||||||' and '>>>>>>>' brackets. This option can be
+given up to three times, once for each input file. Thus 'diff3 -A
+--label X --label Y --label Z A B C' acts like 'diff3 -A A B C', except
+that the output looks like it came from files named 'X', 'Y' and 'Z'
+rather than from files named 'A', 'B' and 'C'.
\1f
File: diffutils.info-t, Node: Bypassing ed, Next: Merging Incomplete Lines, Prev: Marking Conflicts, Up: diff3 Merging
8.3 Generating the Merged Output Directly
=========================================
-With the `--merge' (`-m') option, `diff3' outputs the merged file
-directly. This is more efficient than using `ed' to generate it, and
-works even with non-text files that `ed' would reject. If you specify
-`-m' without an `ed' script option, `-A' is assumed.
+With the '--merge' ('-m') option, 'diff3' outputs the merged file
+directly. This is more efficient than using 'ed' to generate it, and
+works even with non-text files that 'ed' would reject. If you specify
+'-m' without an 'ed' script option, '-A' is assumed.
- For example, the command `diff3 -m lao tzu tao' (*note Sample diff3
+ For example, the command 'diff3 -m lao tzu tao' (*note Sample diff3
Input:: for a copy of the input files) would output the following:
<<<<<<< tzu
\1f
File: diffutils.info-t, Node: Merging Incomplete Lines, Next: Saving the Changed File, Prev: Bypassing ed, Up: diff3 Merging
-8.4 How `diff3' Merges Incomplete Lines
+8.4 How 'diff3' Merges Incomplete Lines
=======================================
-With `-m', incomplete lines (*note Incomplete Lines::) are simply
-copied to the output as they are found; if the merged output ends in an
+With '-m', incomplete lines (*note Incomplete Lines::) are simply copied
+to the output as they are found; if the merged output ends in an
conflict and one of the input files ends in an incomplete line,
-succeeding `|||||||', `=======' or `>>>>>>>' brackets appear somewhere
+succeeding '|||||||', '=======' or '>>>>>>>' brackets appear somewhere
other than the start of a line because they are appended to the
incomplete line.
- Without `-m', if an `ed' script option is specified and an
-incomplete line is found, `diff3' generates a warning and acts as if a
-newline had been present.
+ Without '-m', if an 'ed' script option is specified and an incomplete
+line is found, 'diff3' generates a warning and acts as if a newline had
+been present.
\1f
File: diffutils.info-t, Node: Saving the Changed File, Prev: Merging Incomplete Lines, Up: diff3 Merging
8.5 Saving the Changed File
===========================
-Traditional Unix `diff3' generates an `ed' script without the trailing
-`w' and `q' commands that save the changes. System V `diff3' generates
-these extra commands. GNU `diff3' normally behaves like traditional
-Unix `diff3', but with the `-i' option it behaves like System V `diff3'
-and appends the `w' and `q' commands.
+Traditional Unix 'diff3' generates an 'ed' script without the trailing
+'w' and 'q' commands that save the changes. System V 'diff3' generates
+these extra commands. GNU 'diff3' normally behaves like traditional
+Unix 'diff3', but with the '-i' option it behaves like System V 'diff3'
+and appends the 'w' and 'q' commands.
- The `-i' option requires one of the `ed' script options `-AeExX3',
-and is incompatible with the merged output option `-m'.
+ The '-i' option requires one of the 'ed' script options '-AeExX3',
+and is incompatible with the merged output option '-m'.
\1f
File: diffutils.info-t, Node: Interactive Merging, Next: Merging with patch, Prev: diff3 Merging, Up: Top
-9 Interactive Merging with `sdiff'
+9 Interactive Merging with 'sdiff'
**********************************
-With `sdiff', you can merge two files interactively based on a
-side-by-side `-y' format comparison (*note Side by Side::). Use
-`--output=FILE' (`-o FILE') to specify where to put the merged text.
-*Note Invoking sdiff::, for more details on the options to `sdiff'.
+With 'sdiff', you can merge two files interactively based on a
+side-by-side '-y' format comparison (*note Side by Side::). Use
+'--output=FILE' ('-o FILE') to specify where to put the merged text.
+*Note Invoking sdiff::, for more details on the options to 'sdiff'.
Another way to merge files interactively is to use the Emacs Lisp
-package `emerge'. *Note emerge: (emacs)emerge, for more information.
+package 'emerge'. *Note Emerge: (emacs)Emerge, for more information.
* Menu:
-* sdiff Option Summary:: Summary of `sdiff' options.
+* sdiff Option Summary:: Summary of 'sdiff' options.
* Merge Commands:: Merging two files interactively.
\1f
File: diffutils.info-t, Node: sdiff Option Summary, Next: Merge Commands, Up: Interactive Merging
-9.1 Specifying `diff' Options to `sdiff'
+9.1 Specifying 'diff' Options to 'sdiff'
========================================
-The following `sdiff' options have the same meaning as for `diff'.
+The following 'sdiff' options have the same meaning as for 'diff'.
*Note diff Options::, for the use of these options.
-a -b -d -i -t -v
--strip-trailing-cr --suppress-common-lines
--tabsize=COLUMNS --text --version --width=COLUMNS
- For historical reasons, `sdiff' has alternate names for some
-options. The `-l' option is equivalent to the `--left-column' option,
-and similarly `-s' is equivalent to `--suppress-common-lines'. The
-meaning of the `sdiff' `-w' and `-W' options is interchanged from that
-of `diff': with `sdiff', `-w COLUMNS' is equivalent to
-`--width=COLUMNS', and `-W' is equivalent to `--ignore-all-space'.
-`sdiff' without the `-o' option is equivalent to `diff' with the
-`--side-by-side' (`-y') option (*note Side by Side::).
+ For historical reasons, 'sdiff' has alternate names for some options.
+The '-l' option is equivalent to the '--left-column' option, and
+similarly '-s' is equivalent to '--suppress-common-lines'. The meaning
+of the 'sdiff' '-w' and '-W' options is interchanged from that of
+'diff': with 'sdiff', '-w COLUMNS' is equivalent to '--width=COLUMNS',
+and '-W' is equivalent to '--ignore-all-space'. 'sdiff' without the
+'-o' option is equivalent to 'diff' with the '--side-by-side' ('-y')
+option (*note Side by Side::).
\1f
File: diffutils.info-t, Node: Merge Commands, Prev: sdiff Option Summary, Up: Interactive Merging
==================
Groups of common lines, with a blank gutter, are copied from the first
-file to the output. After each group of differing lines, `sdiff'
-prompts with `%' and pauses, waiting for one of the following commands.
+file to the output. After each group of differing lines, 'sdiff'
+prompts with '%' and pauses, waiting for one of the following commands.
Follow each command with <RET>.
-`e'
+'e'
Discard both versions. Invoke a text editor on an empty temporary
file, then copy the resulting file to the output.
-`eb'
+'eb'
Concatenate the two versions, edit the result in a temporary file,
then copy the edited result to the output.
-`ed'
- Like `eb', except precede each version with a header that shows
+'ed'
+ Like 'eb', except precede each version with a header that shows
what file and lines the version came from.
-`el'
-`e1'
+'el'
+'e1'
Edit a copy of the left version, then copy the result to the
output.
-`er'
-`e2'
+'er'
+'e2'
Edit a copy of the right version, then copy the result to the
output.
-`l'
-`1'
+'l'
+'1'
Copy the left version to the output.
-`q'
+'q'
Quit.
-`r'
-`2'
+'r'
+'2'
Copy the right version to the output.
-`s'
+'s'
Silently copy common lines.
-`v'
+'v'
Verbosely copy common lines. This is the default.
- The text editor invoked is specified by the `EDITOR' environment
+ The text editor invoked is specified by the 'EDITOR' environment
variable if it is set. The default is system-dependent.
\1f
File: diffutils.info-t, Node: Merging with patch, Next: Making Patches, Prev: Interactive Merging, Up: Top
-10 Merging with `patch'
+10 Merging with 'patch'
***********************
-`patch' takes comparison output produced by `diff' and applies the
-differences to a copy of the original file, producing a patched
-version. With `patch', you can distribute just the changes to a set of
-files instead of distributing the entire file set; your correspondents
-can apply `patch' to update their copy of the files with your changes.
-`patch' automatically determines the diff format, skips any leading or
-trailing headers, and uses the headers to determine which file to
-patch. This lets your correspondents feed a mail message containing a
-difference listing directly to `patch'.
-
- `patch' detects and warns about common problems like forward
-patches. It saves any patches that it could not apply. It can also
-maintain a `patchlevel.h' file to ensure that your correspondents apply
-diffs in the proper order.
-
- `patch' accepts a series of diffs in its standard input, usually
+'patch' takes comparison output produced by 'diff' and applies the
+differences to a copy of the original file, producing a patched version.
+With 'patch', you can distribute just the changes to a set of files
+instead of distributing the entire file set; your correspondents can
+apply 'patch' to update their copy of the files with your changes.
+'patch' automatically determines the diff format, skips any leading or
+trailing headers, and uses the headers to determine which file to patch.
+This lets your correspondents feed a mail message containing a
+difference listing directly to 'patch'.
+
+ 'patch' detects and warns about common problems like forward patches.
+It saves any patches that it could not apply. It can also maintain a
+'patchlevel.h' file to ensure that your correspondents apply diffs in
+the proper order.
+
+ 'patch' accepts a series of diffs in its standard input, usually
separated by headers that specify which file to patch. It applies
-`diff' hunks (*note Hunks::) one by one. If a hunk does not exactly
-match the original file, `patch' uses heuristics to try to patch the
-file as well as it can. If no approximate match can be found, `patch'
-rejects the hunk and skips to the next hunk. `patch' normally replaces
+'diff' hunks (*note Hunks::) one by one. If a hunk does not exactly
+match the original file, 'patch' uses heuristics to try to patch the
+file as well as it can. If no approximate match can be found, 'patch'
+rejects the hunk and skips to the next hunk. 'patch' normally replaces
each file F with its new version, putting reject hunks (if any) into
-`F.rej'.
+'F.rej'.
*Note Invoking patch::, for detailed information on the options to
-`patch'.
+'patch'.
* Menu:
-* patch Input:: Selecting the type of `patch' input.
+* patch Input:: Selecting the type of 'patch' input.
* Revision Control:: Getting files from RCS, SCCS, etc.
* Imperfect:: Dealing with imperfect patches.
* Creating and Removing:: Creating and removing files with a patch.
* Backups:: Whether backup files are made.
* Backup Names:: Backup file names.
* Reject Names:: Reject file names.
-* patch Messages:: Messages and questions `patch' can produce.
+* patch Messages:: Messages and questions 'patch' can produce.
* patch and POSIX:: Conformance to the POSIX standard.
-* patch and Tradition:: GNU versus traditional `patch'.
+* patch and Tradition:: GNU versus traditional 'patch'.
\1f
File: diffutils.info-t, Node: patch Input, Next: Revision Control, Up: Merging with patch
-10.1 Selecting the `patch' Input Format
+10.1 Selecting the 'patch' Input Format
=======================================
-`patch' normally determines which `diff' format the patch file uses by
+'patch' normally determines which 'diff' format the patch file uses by
examining its contents. For patch files that contain particularly
confusing leading text, you might need to use one of the following
-options to force `patch' to interpret the patch file as a certain
-format of diff. The output formats listed here are the only ones that
-`patch' can understand.
+options to force 'patch' to interpret the patch file as a certain format
+of diff. The output formats listed here are the only ones that 'patch'
+can understand.
-`-c'
-`--context'
+'-c'
+'--context'
context diff.
-`-e'
-`--ed'
- `ed' script.
+'-e'
+'--ed'
+ 'ed' script.
-`-n'
-`--normal'
+'-n'
+'--normal'
normal diff.
-`-u'
-`--unified'
+'-u'
+'--unified'
unified diff.
\1f
10.2 Revision Control
=====================
-If a nonexistent input file is under a revision control system
-supported by `patch', `patch' normally asks the user whether to get (or
-check out) the file from the revision control system. Patch currently
-supports RCS, ClearCase and SCCS. Under RCS and SCCS, `patch' also
-asks when the input file is read-only and matches the default version
-in the revision control system.
-
- The `--get=NUM' (`-g NUM') option affects access to files under
-supported revision control systems. If NUM is positive, `patch' gets
-the file without asking the user; if zero, `patch' neither asks the
-user nor gets the file; and if negative, `patch' asks the user before
-getting the file. The default value of NUM is given by the value of the
-`PATCH_GET' environment variable if it is set; if not, the default
-value is zero if `patch' is conforming to POSIX, negative otherwise.
-*Note patch and POSIX::.
+If a nonexistent input file is under a revision control system supported
+by 'patch', 'patch' normally asks the user whether to get (or check out)
+the file from the revision control system. Patch currently supports
+RCS, ClearCase and SCCS. Under RCS and SCCS, 'patch' also asks when the
+input file is read-only and matches the default version in the revision
+control system.
+
+ The '--get=NUM' ('-g NUM') option affects access to files under
+supported revision control systems. If NUM is positive, 'patch' gets
+the file without asking the user; if zero, 'patch' neither asks the user
+nor gets the file; and if negative, 'patch' asks the user before getting
+the file. The default value of NUM is given by the value of the
+'PATCH_GET' environment variable if it is set; if not, the default value
+is zero if 'patch' is conforming to POSIX, negative otherwise. *Note
+patch and POSIX::.
The choice of revision control system is unaffected by the
-`VERSION_CONTROL' environment variable (*note Backup Names::).
+'VERSION_CONTROL' environment variable (*note Backup Names::).
\1f
File: diffutils.info-t, Node: Imperfect, Next: Creating and Removing, Prev: Revision Control, Up: Merging with patch
10.3 Applying Imperfect Patches
===============================
-`patch' tries to skip any leading text in the patch file, apply the
-diff, and then skip any trailing text. Thus you can feed a mail
-message directly to `patch', and it should work. If the entire diff is
-indented by a constant amount of white space, `patch' automatically
-ignores the indentation. If a context diff contains trailing carriage
-return on each line, `patch' automatically ignores the carriage return.
-If a context diff has been encapsulated by prepending `- ' to lines
-beginning with `-' as per Internet RFC 934
-(ftp://ftp.isi.edu/in-notes/rfc934.txt), `patch' automatically
+'patch' tries to skip any leading text in the patch file, apply the
+diff, and then skip any trailing text. Thus you can feed a mail message
+directly to 'patch', and it should work. If the entire diff is indented
+by a constant amount of white space, 'patch' automatically ignores the
+indentation. If a context diff contains trailing carriage return on
+each line, 'patch' automatically ignores the carriage return. If a
+context diff has been encapsulated by prepending '- ' to lines beginning
+with '-' as per Internet RFC 934
+(ftp://ftp.isi.edu/in-notes/rfc934.txt), 'patch' automatically
unencapsulates the input.
However, certain other types of imperfect input require user
* Changed White Space:: When tabs and spaces don't match exactly.
* Reversed Patches:: Applying reversed patches correctly.
-* Inexact:: Helping `patch' find close matches.
-* Dry Runs:: Predicting what `patch' will do.
+* Inexact:: Helping 'patch' find close matches.
+* Dry Runs:: Predicting what 'patch' will do.
\1f
File: diffutils.info-t, Node: Changed White Space, Next: Reversed Patches, Up: Imperfect
Sometimes mailers, editors, or other programs change spaces into tabs,
or vice versa. If this happens to a patch file or an input file, the
-files might look the same, but `patch' will not be able to match them
-properly. If this problem occurs, use the `-l' or
-`--ignore-white-space' option, which makes `patch' compare blank
+files might look the same, but 'patch' will not be able to match them
+properly. If this problem occurs, use the '-l' or
+'--ignore-white-space' option, which makes 'patch' compare blank
characters (i.e. spaces and tabs) loosely so that any nonempty sequence
of blanks in the patch file matches any nonempty sequence of blanks in
the input files. Non-blank characters must still match exactly. Each
10.3.2 Applying Reversed Patches
--------------------------------
-Sometimes people run `diff' with the new file first instead of second.
+Sometimes people run 'diff' with the new file first instead of second.
This creates a diff that is "reversed". To apply such patches, give
-`patch' the `--reverse' (`-R') option. `patch' then attempts to swap
+'patch' the '--reverse' ('-R') option. 'patch' then attempts to swap
each hunk around before applying it. Rejects come out in the swapped
format.
- Often `patch' can guess that the patch is reversed. If the first
-hunk of a patch fails, `patch' reverses the hunk to see if it can apply
-it that way. If it can, `patch' asks you if you want to have the `-R'
-option set; if it can't, `patch' continues to apply the patch normally.
+ Often 'patch' can guess that the patch is reversed. If the first
+hunk of a patch fails, 'patch' reverses the hunk to see if it can apply
+it that way. If it can, 'patch' asks you if you want to have the '-R'
+option set; if it can't, 'patch' continues to apply the patch normally.
This method cannot detect a reversed patch if it is a normal diff and
the first command is an append (which should have been a delete) since
appends always succeed, because a null context matches anywhere. But
most patches add or change lines rather than delete them, so most
-reversed normal diffs begin with a delete, which fails, and `patch'
+reversed normal diffs begin with a delete, which fails, and 'patch'
notices.
- If you apply a patch that you have already applied, `patch' thinks
-it is a reversed patch and offers to un-apply the patch. This could be
+ If you apply a patch that you have already applied, 'patch' thinks it
+is a reversed patch and offers to un-apply the patch. This could be
construed as a feature. If you did this inadvertently and you don't
-want to un-apply the patch, just answer `n' to this offer and to the
-subsequent "apply anyway" question--or type `C-c' to kill the `patch'
+want to un-apply the patch, just answer 'n' to this offer and to the
+subsequent "apply anyway" question--or type 'C-c' to kill the 'patch'
process.
\1f
File: diffutils.info-t, Node: Inexact, Next: Dry Runs, Prev: Reversed Patches, Up: Imperfect
-10.3.3 Helping `patch' Find Inexact Matches
+10.3.3 Helping 'patch' Find Inexact Matches
-------------------------------------------
-For context diffs, and to a lesser extent normal diffs, `patch' can
+For context diffs, and to a lesser extent normal diffs, 'patch' can
detect when the line numbers mentioned in the patch are incorrect, and
it attempts to find the correct place to apply each hunk of the patch.
As a first guess, it takes the line number mentioned in the hunk, plus
or minus any offset used in applying the previous hunk. If that is not
-the correct place, `patch' scans both forward and backward for a set of
+the correct place, 'patch' scans both forward and backward for a set of
lines matching the context given in the hunk.
- First `patch' looks for a place where all lines of the context
-match. If it cannot find such a place, and it is reading a context or
-unified diff, and the maximum fuzz factor is set to 1 or more, then
-`patch' makes another scan, ignoring the first and last line of
-context. If that fails, and the maximum fuzz factor is set to 2 or
-more, it makes another scan, ignoring the first two and last two lines
-of context are ignored. It continues similarly if the maximum fuzz
-factor is larger.
+ First 'patch' looks for a place where all lines of the context match.
+If it cannot find such a place, and it is reading a context or unified
+diff, and the maximum fuzz factor is set to 1 or more, then 'patch'
+makes another scan, ignoring the first and last line of context. If
+that fails, and the maximum fuzz factor is set to 2 or more, it makes
+another scan, ignoring the first two and last two lines of context are
+ignored. It continues similarly if the maximum fuzz factor is larger.
- The `--fuzz=LINES' (`-F LINES') option sets the maximum fuzz factor
+ The '--fuzz=LINES' ('-F LINES') option sets the maximum fuzz factor
to LINES. This option only applies to context and unified diffs; it
-ignores up to LINES lines while looking for the place to install a
-hunk. Note that a larger fuzz factor increases the odds of making a
-faulty patch. The default fuzz factor is 2; there is no point to
-setting it to more than the number of lines of context in the diff,
-ordinarily 3.
+ignores up to LINES lines while looking for the place to install a hunk.
+Note that a larger fuzz factor increases the odds of making a faulty
+patch. The default fuzz factor is 2; there is no point to setting it to
+more than the number of lines of context in the diff, ordinarily 3.
- If `patch' cannot find a place to install a hunk of the patch, it
+ If 'patch' cannot find a place to install a hunk of the patch, it
writes the hunk out to a reject file (*note Reject Names::, for
information on how reject files are named). It writes out rejected
hunks in context format no matter what form the input patch is in. If
-the input is a normal or `ed' diff, many of the contexts are simply
-null. The line numbers on the hunks in the reject file may be
-different from those in the patch file: they show the approximate
-location where `patch' thinks the failed hunks belong in the new file
-rather than in the old one.
-
- If the `--verbose' option is given, then as it completes each hunk
-`patch' tells you whether the hunk succeeded or failed, and if it
-failed, on which line (in the new file) `patch' thinks the hunk should
-go. If this is different from the line number specified in the diff,
-it tells you the offset. A single large offset _may_ indicate that
-`patch' installed a hunk in the wrong place. `patch' also tells you if
-it used a fuzz factor to make the match, in which case you should also
-be slightly suspicious.
-
- `patch' cannot tell if the line numbers are off in an `ed' script,
+the input is a normal or 'ed' diff, many of the contexts are simply
+null. The line numbers on the hunks in the reject file may be different
+from those in the patch file: they show the approximate location where
+'patch' thinks the failed hunks belong in the new file rather than in
+the old one.
+
+ If the '--verbose' option is given, then as it completes each hunk
+'patch' tells you whether the hunk succeeded or failed, and if it
+failed, on which line (in the new file) 'patch' thinks the hunk should
+go. If this is different from the line number specified in the diff, it
+tells you the offset. A single large offset _may_ indicate that 'patch'
+installed a hunk in the wrong place. 'patch' also tells you if it used
+a fuzz factor to make the match, in which case you should also be
+slightly suspicious.
+
+ 'patch' cannot tell if the line numbers are off in an 'ed' script,
and can only detect wrong line numbers in a normal diff when it finds a
change or delete command. It may have the same problem with a context
-diff using a fuzz factor equal to or greater than the number of lines
-of context shown in the diff (typically 3). In these cases, you should
+diff using a fuzz factor equal to or greater than the number of lines of
+context shown in the diff (typically 3). In these cases, you should
probably look at a context diff between your original and patched input
files to see if the changes make sense. Compiling without errors is a
pretty good indication that the patch worked, but not a guarantee.
A patch against an empty file applies to a nonexistent file, and vice
versa. *Note Creating and Removing::.
- `patch' usually produces the correct results, even when it must make
+ 'patch' usually produces the correct results, even when it must make
many guesses. However, the results are guaranteed only when the patch
is applied to an exact copy of the file that the patch was generated
from.
\1f
File: diffutils.info-t, Node: Dry Runs, Prev: Inexact, Up: Imperfect
-10.3.4 Predicting what `patch' will do
+10.3.4 Predicting what 'patch' will do
--------------------------------------
-It may not be obvious in advance what `patch' will do with a
-complicated or poorly formatted patch. If you are concerned that the
-input might cause `patch' to modify the wrong files, you can use the
-`--dry-run' option, which causes `patch' to print the results of
-applying patches without actually changing any files. You can then
-inspect the diagnostics generated by the dry run to see whether `patch'
-will modify the files that you expect. If the patch does not do what
-you want, you can modify the patch (or the other options to `patch')
-and try another dry run. Once you are satisfied with the proposed
-patch you can apply it by invoking `patch' as before, but this time
-without the `--dry-run' option.
+It may not be obvious in advance what 'patch' will do with a complicated
+or poorly formatted patch. If you are concerned that the input might
+cause 'patch' to modify the wrong files, you can use the '--dry-run'
+option, which causes 'patch' to print the results of applying patches
+without actually changing any files. You can then inspect the
+diagnostics generated by the dry run to see whether 'patch' will modify
+the files that you expect. If the patch does not do what you want, you
+can modify the patch (or the other options to 'patch') and try another
+dry run. Once you are satisfied with the proposed patch you can apply
+it by invoking 'patch' as before, but this time without the '--dry-run'
+option.
\1f
File: diffutils.info-t, Node: Creating and Removing, Next: Patching Time Stamps, Prev: Imperfect, Up: Merging with patch
================================
Sometimes when comparing two directories, a file may exist in one
-directory but not the other. If you give `diff' the `--new-file'
-(`-N') option, or if you supply an old or new file that is named
-`/dev/null' or is empty and is dated the Epoch (1970-01-01 00:00:00
-UTC), `diff' outputs a patch that adds or deletes the contents of this
-file. When given such a patch, `patch' normally creates a new file or
-removes the old file. However, when conforming to POSIX (*note patch
-and POSIX::), `patch' does not remove the old file, but leaves it empty.
-The `--remove-empty-files' (`-E') option causes `patch' to remove
-output files that are empty after applying a patch, even if the patch
-does not appear to be one that removed the file.
-
- If the patch appears to create a file that already exists, `patch'
+directory but not the other. If you give 'diff' the '--new-file' ('-N')
+option, or if you supply an old or new file that is named '/dev/null' or
+is empty and is dated the Epoch (1970-01-01 00:00:00 UTC), 'diff'
+outputs a patch that adds or deletes the contents of this file. When
+given such a patch, 'patch' normally creates a new file or removes the
+old file. However, when conforming to POSIX (*note patch and POSIX::),
+'patch' does not remove the old file, but leaves it empty. The
+'--remove-empty-files' ('-E') option causes 'patch' to remove output
+files that are empty after applying a patch, even if the patch does not
+appear to be one that removed the file.
+
+ If the patch appears to create a file that already exists, 'patch'
asks for confirmation before applying the patch.
\1f
10.5 Updating Time Stamps on Patched Files
==========================================
-When `patch' updates a file, it normally sets the file's last-modified
-time stamp to the current time of day. If you are using `patch' to
-track a software distribution, this can cause `make' to incorrectly
-conclude that a patched file is out of date. For example, if
-`syntax.c' depends on `syntax.y', and `patch' updates `syntax.c' and
-then `syntax.y', then `syntax.c' will normally appear to be out of date
-with respect to `syntax.y' even though its contents are actually up to
-date.
+When 'patch' updates a file, it normally sets the file's last-modified
+time stamp to the current time of day. If you are using 'patch' to
+track a software distribution, this can cause 'make' to incorrectly
+conclude that a patched file is out of date. For example, if 'syntax.c'
+depends on 'syntax.y', and 'patch' updates 'syntax.c' and then
+'syntax.y', then 'syntax.c' will normally appear to be out of date with
+respect to 'syntax.y' even though its contents are actually up to date.
- The `--set-utc' (`-Z') option causes `patch' to set a patched file's
+ The '--set-utc' ('-Z') option causes 'patch' to set a patched file's
modification and access times to the time stamps given in context diff
headers. If the context diff headers do not specify a time zone, they
are assumed to use Coordinated Universal Time (UTC, often known as GMT).
- The `--set-time' (`-T') option acts like `-Z' or `--set-utc', except
+ The '--set-time' ('-T') option acts like '-Z' or '--set-utc', except
that it assumes that the context diff headers' time stamps use local
time instead of UTC. This option is not recommended, because patches
using local time cannot easily be used by people in other time zones,
and because local time stamps are ambiguous when local clocks move
backwards during daylight-saving time adjustments. If the context diff
-headers specify a time zone, this option is equivalent to `--set-utc'
-(`-Z').
+headers specify a time zone, this option is equivalent to '--set-utc'
+('-Z').
- `patch' normally refrains from setting a file's time stamps if the
+ 'patch' normally refrains from setting a file's time stamps if the
file's original last-modified time stamp does not match the time given
in the diff header, of if the file's contents do not exactly match the
-patch. However, if the `--force' (`-f') option is given, the file's
+patch. However, if the '--force' ('-f') option is given, the file's
time stamps are set regardless.
- Due to the limitations of the current `diff' format, `patch' cannot
-update the times of files whose contents have not changed. Also, if
-you set file time stamps to values other than the current time of day,
-you should also remove (e.g., with `make clean') all files that depend
-on the patched files, so that later invocations of `make' do not get
+ Due to the limitations of the current 'diff' format, 'patch' cannot
+update the times of files whose contents have not changed. Also, if you
+set file time stamps to values other than the current time of day, you
+should also remove (e.g., with 'make clean') all files that depend on
+the patched files, so that later invocations of 'make' do not get
confused by the patched files' times.
\1f
===============================
If the patch file contains more than one patch, and if you do not
-specify an input file on the command line, `patch' tries to apply each
+specify an input file on the command line, 'patch' tries to apply each
patch as if they came from separate patch files. This means that it
determines the name of the file to patch for each patch, and that it
examines the leading text before each patch for file names and
prerequisite revision level (*note Making Patches::, for more on that
topic).
- `patch' uses the following rules to intuit a file name from the
-leading text before a patch. First, `patch' takes an ordered list of
+ 'patch' uses the following rules to intuit a file name from the
+leading text before a patch. First, 'patch' takes an ordered list of
candidate file names as follows:
- * If the header is that of a context diff, `patch' takes the old and
+ * If the header is that of a context diff, 'patch' takes the old and
new file names in the header. A name is ignored if it does not
- have enough slashes to satisfy the `-pNUM' or `--strip=NUM'
- option. The name `/dev/null' is also ignored.
+ have enough slashes to satisfy the '-pNUM' or '--strip=NUM' option.
+ The name '/dev/null' is also ignored.
- * If there is an `Index:' line in the leading garbage and if either
- the old and new names are both absent or if `patch' is conforming
- to POSIX, `patch' takes the name in the `Index:' line.
+ * If there is an 'Index:' line in the leading garbage and if either
+ the old and new names are both absent or if 'patch' is conforming
+ to POSIX, 'patch' takes the name in the 'Index:' line.
* For the purpose of the following rules, the candidate file names
are considered to be in the order (old, new, index), regardless of
the order that they appear in the header.
-Then `patch' selects a file name from the candidate list as follows:
+Then 'patch' selects a file name from the candidate list as follows:
- * If some of the named files exist, `patch' selects the first name
- if conforming to POSIX, and the best name otherwise.
+ * If some of the named files exist, 'patch' selects the first name if
+ conforming to POSIX, and the best name otherwise.
- * If `patch' is not ignoring RCS, ClearCase, and SCCS (*note
- Revision Control::), and no named files exist but an RCS,
- ClearCase, or SCCS master is found, `patch' selects the first
- named file with an RCS, ClearCase, or SCCS master.
+ * If 'patch' is not ignoring RCS, ClearCase, and SCCS (*note Revision
+ Control::), and no named files exist but an RCS, ClearCase, or SCCS
+ master is found, 'patch' selects the first named file with an RCS,
+ ClearCase, or SCCS master.
* If no named files exist, no RCS, ClearCase, or SCCS master was
- found, some names are given, `patch' is not conforming to POSIX,
- and the patch appears to create a file, `patch' selects the best
+ found, some names are given, 'patch' is not conforming to POSIX,
+ and the patch appears to create a file, 'patch' selects the best
name requiring the creation of the fewest directories.
* If no file name results from the above heuristics, you are asked
- for the name of the file to patch, and `patch' selects that name.
+ for the name of the file to patch, and 'patch' selects that name.
- To determine the "best" of a nonempty list of file names, `patch'
+ To determine the "best" of a nonempty list of file names, 'patch'
first takes all the names with the fewest path name components; of
-those, it then takes all the names with the shortest basename; of
-those, it then takes all the shortest names; finally, it takes the
-first remaining name.
+those, it then takes all the names with the shortest basename; of those,
+it then takes all the shortest names; finally, it takes the first
+remaining name.
- *Note patch and POSIX::, to see whether `patch' is conforming to
+ *Note patch and POSIX::, to see whether 'patch' is conforming to
POSIX.
\1f
10.7 Applying Patches in Other Directories
==========================================
-The `--directory=DIRECTORY' (`-d DIRECTORY') option to `patch' makes
+The '--directory=DIRECTORY' ('-d DIRECTORY') option to 'patch' makes
directory DIRECTORY the current directory for interpreting both file
names in the patch file, and file names given as arguments to other
-options (such as `-B' and `-o'). For example, while in a mail reading
-program, you can patch a file in the `/usr/src/emacs' directory
-directly from a message containing the patch like this:
+options (such as '-B' and '-o'). For example, while in a mail reading
+program, you can patch a file in the '/usr/src/emacs' directory directly
+from a message containing the patch like this:
| patch -d /usr/src/emacs
Sometimes the file names given in a patch contain leading
directories, but you keep your files in a directory different from the
one given in the patch. In those cases, you can use the
-`--strip=NUMBER' (`-pNUMBER') option to set the file name strip count
-to NUMBER. The strip count tells `patch' how many slashes, along with
-the directory names between them, to strip from the front of file
-names. A sequence of one or more adjacent slashes is counted as a
-single slash. By default, `patch' strips off all leading directories,
-leaving just the base file names.
+'--strip=NUMBER' ('-pNUMBER') option to set the file name strip count to
+NUMBER. The strip count tells 'patch' how many slashes, along with the
+directory names between them, to strip from the front of file names. A
+sequence of one or more adjacent slashes is counted as a single slash.
+By default, 'patch' strips off all leading directories, leaving just the
+base file names.
For example, suppose the file name in the patch file is
-`/gnu/src/emacs/etc/NEWS'. Using `-p0' gives the entire file name
-unmodified, `-p1' gives `gnu/src/emacs/etc/NEWS' (no leading slash),
-`-p4' gives `etc/NEWS', and not specifying `-p' at all gives `NEWS'.
+'/gnu/src/emacs/etc/NEWS'. Using '-p0' gives the entire file name
+unmodified, '-p1' gives 'gnu/src/emacs/etc/NEWS' (no leading slash),
+'-p4' gives 'etc/NEWS', and not specifying '-p' at all gives 'NEWS'.
- `patch' looks for each file (after any slashes have been stripped)
-in the current directory, or if you used the `-d DIRECTORY' option, in
-that directory.
+ 'patch' looks for each file (after any slashes have been stripped) in
+the current directory, or if you used the '-d DIRECTORY' option, in that
+directory.
\1f
File: diffutils.info-t, Node: Backups, Next: Backup Names, Prev: patch Directories, Up: Merging with patch
10.8 Backup Files
=================
-Normally, `patch' creates a backup file if the patch does not exactly
+Normally, 'patch' creates a backup file if the patch does not exactly
match the original input file, because in that case the original data
-might not be recovered if you undo the patch with `patch -R' (*note
-Reversed Patches::). However, when conforming to POSIX, `patch' does
+might not be recovered if you undo the patch with 'patch -R' (*note
+Reversed Patches::). However, when conforming to POSIX, 'patch' does
not create backup files by default. *Note patch and POSIX::.
- The `--backup' (`-b') option causes `patch' to make a backup file
+ The '--backup' ('-b') option causes 'patch' to make a backup file
regardless of whether the patch matches the original input. The
-`--backup-if-mismatch' option causes `patch' to create backup files for
+'--backup-if-mismatch' option causes 'patch' to create backup files for
mismatches files; this is the default when not conforming to POSIX. The
-`--no-backup-if-mismatch' option causes `patch' to not create backup
+'--no-backup-if-mismatch' option causes 'patch' to not create backup
files, even for mismatched patches; this is the default when conforming
to POSIX.
10.9 Backup File Names
======================
-Normally, `patch' renames an original input file into a backup file by
-appending to its name the extension `.orig', or `~' if using `.orig'
-would make the backup file name too long.(1) The `-z BACKUP-SUFFIX' or
-`--suffix=BACKUP-SUFFIX' option causes `patch' to use BACKUP-SUFFIX as
+Normally, 'patch' renames an original input file into a backup file by
+appending to its name the extension '.orig', or '~' if using '.orig'
+would make the backup file name too long.(1) The '-z BACKUP-SUFFIX' or
+'--suffix=BACKUP-SUFFIX' option causes 'patch' to use BACKUP-SUFFIX as
the backup extension instead.
Alternately, you can specify the extension for backup files with the
-`SIMPLE_BACKUP_SUFFIX' environment variable, which the options override.
+'SIMPLE_BACKUP_SUFFIX' environment variable, which the options override.
- `patch' can also create numbered backup files the way GNU Emacs
-does. With this method, instead of having a single backup of each
-file, `patch' makes a new backup file name each time it patches a file.
-For example, the backups of a file named `sink' would be called,
-successively, `sink.~1~', `sink.~2~', `sink.~3~', etc.
+ 'patch' can also create numbered backup files the way GNU Emacs does.
+With this method, instead of having a single backup of each file,
+'patch' makes a new backup file name each time it patches a file. For
+example, the backups of a file named 'sink' would be called,
+successively, 'sink.~1~', 'sink.~2~', 'sink.~3~', etc.
- The `-V BACKUP-STYLE' or `--version-control=BACKUP-STYLE' option
+ The '-V BACKUP-STYLE' or '--version-control=BACKUP-STYLE' option
takes as an argument a method for creating backup file names. You can
-alternately control the type of backups that `patch' makes with the
-`PATCH_VERSION_CONTROL' environment variable, which the `-V' option
-overrides. If `PATCH_VERSION_CONTROL' is not set, the
-`VERSION_CONTROL' environment variable is used instead. Please note
-that these options and variables control backup file names; they do not
-affect the choice of revision control system (*note Revision Control::).
+alternately control the type of backups that 'patch' makes with the
+'PATCH_VERSION_CONTROL' environment variable, which the '-V' option
+overrides. If 'PATCH_VERSION_CONTROL' is not set, the 'VERSION_CONTROL'
+environment variable is used instead. Please note that these options
+and variables control backup file names; they do not affect the choice
+of revision control system (*note Revision Control::).
The values of these environment variables and the argument to the
-`-V' option are like the GNU Emacs `version-control' variable (*note
-Backup Names: (emacs)Backup Names, for more information on backup
-versions in Emacs). They also recognize synonyms that are more
-descriptive. The valid values are listed below; unique abbreviations
-are acceptable.
-
-`t'
-`numbered'
+'-V' option are like the GNU Emacs 'version-control' variable (*note
+(emacs)Backup Names::, for more information on backup versions in
+Emacs). They also recognize synonyms that are more descriptive. The
+valid values are listed below; unique abbreviations are acceptable.
+
+'t'
+'numbered'
Always make numbered backups.
-`nil'
-`existing'
+'nil'
+'existing'
Make numbered backups of files that already have them, simple
backups of the others. This is the default.
-`never'
-`simple'
+'never'
+'simple'
Always make simple backups.
- You can also tell `patch' to prepend a prefix, such as a directory
-name, to produce backup file names. The `--prefix=PREFIX' (`-B
-PREFIX') option makes backup files by prepending PREFIX to them. The
-`--basename-prefix=PREFIX' (`-Y PREFIX') prepends PREFIX to the last
-file name component of backup file names instead; for example, `-Y ~'
-causes the backup name for `dir/file.c' to be `dir/~file.c'. If you
-use either of these prefix options, the suffix-based options are
-ignored.
+ You can also tell 'patch' to prepend a prefix, such as a directory
+name, to produce backup file names. The '--prefix=PREFIX' ('-B PREFIX')
+option makes backup files by prepending PREFIX to them. The
+'--basename-prefix=PREFIX' ('-Y PREFIX') prepends PREFIX to the last
+file name component of backup file names instead; for example, '-Y ~'
+causes the backup name for 'dir/file.c' to be 'dir/~file.c'. If you use
+either of these prefix options, the suffix-based options are ignored.
- If you specify the output file with the `-o' option, that file is
-the one that is backed up, not the input file.
+ If you specify the output file with the '-o' option, that file is the
+one that is backed up, not the input file.
Options that affect the names of backup files do not affect whether
backups are made. For example, if you specify the
-`--no-backup-if-mismatch' option, none of the options described in this
+'--no-backup-if-mismatch' option, none of the options described in this
section have any affect, because no backups are made.
---------- Footnotes ----------
- (1) A coding error in GNU `patch' version 2.5.4 causes it to always
-use `~', but this should be fixed in the next release.
+ (1) A coding error in GNU 'patch' version 2.5.4 causes it to always
+use '~', but this should be fixed in the next release.
\1f
File: diffutils.info-t, Node: Reject Names, Next: patch Messages, Prev: Backup Names, Up: Merging with patch
10.10 Reject File Names
=======================
-The names for reject files (files containing patches that `patch' could
-not find a place to apply) are normally the name of the output file
-with `.rej' appended (or `#' if using `.rej' would make the backup file
-name too long).
+The names for reject files (files containing patches that 'patch' could
+not find a place to apply) are normally the name of the output file with
+'.rej' appended (or '#' if using '.rej' would make the backup file name
+too long).
- Alternatively, you can tell `patch' to place all of the rejected
-patches in a single file. The `-r REJECT-FILE' or
-`--reject-file=REJECT-FILE' option uses REJECT-FILE as the reject file
+ Alternatively, you can tell 'patch' to place all of the rejected
+patches in a single file. The '-r REJECT-FILE' or
+'--reject-file=REJECT-FILE' option uses REJECT-FILE as the reject file
name.
\1f
File: diffutils.info-t, Node: patch Messages, Next: patch and POSIX, Prev: Reject Names, Up: Merging with patch
-10.11 Messages and Questions from `patch'
+10.11 Messages and Questions from 'patch'
=========================================
-`patch' can produce a variety of messages, especially if it has trouble
+'patch' can produce a variety of messages, especially if it has trouble
decoding its input. In a few situations where it's not sure how to
-proceed, `patch' normally prompts you for more information from the
+proceed, 'patch' normally prompts you for more information from the
keyboard. There are options to produce more or fewer messages, to have
-it not ask for keyboard input, and to affect the way that file names
-are quoted in messages.
+it not ask for keyboard input, and to affect the way that file names are
+quoted in messages.
* Menu:
-* More or Fewer Messages:: Controlling the verbosity of `patch'.
+* More or Fewer Messages:: Controlling the verbosity of 'patch'.
* patch and Keyboard Input:: Inhibiting keyboard input.
* patch Quoting Style:: Quoting file names in diagnostics.
- `patch' exits with status 0 if all hunks are applied successfully, 1
+ 'patch' exits with status 0 if all hunks are applied successfully, 1
if some hunks cannot be applied, and 2 if there is more serious trouble.
When applying a set of patches in a loop, you should check the exit
status, so you don't apply a later patch to a partially patched file.
\1f
File: diffutils.info-t, Node: More or Fewer Messages, Next: patch and Keyboard Input, Up: patch Messages
-10.11.1 Controlling the Verbosity of `patch'
+10.11.1 Controlling the Verbosity of 'patch'
--------------------------------------------
-You can cause `patch' to produce more messages by using the `--verbose'
-option. For example, when you give this option, the message `Hmm...'
-indicates that `patch' is reading text in the patch file, attempting to
-determine whether there is a patch in that text, and if so, what kind
-of patch it is.
+You can cause 'patch' to produce more messages by using the '--verbose'
+option. For example, when you give this option, the message 'Hmm...'
+indicates that 'patch' is reading text in the patch file, attempting to
+determine whether there is a patch in that text, and if so, what kind of
+patch it is.
- You can inhibit all terminal output from `patch', unless an error
-occurs, by using the `-s', `--quiet', or `--silent' option.
+ You can inhibit all terminal output from 'patch', unless an error
+occurs, by using the '-s', '--quiet', or '--silent' option.
\1f
File: diffutils.info-t, Node: patch and Keyboard Input, Next: patch Quoting Style, Prev: More or Fewer Messages, Up: patch Messages
10.11.2 Inhibiting Keyboard Input
---------------------------------
-There are two ways you can prevent `patch' from asking you any
-questions. The `--force' (`-f') option assumes that you know what you
-are doing. It causes `patch' to do the following:
+There are two ways you can prevent 'patch' from asking you any
+questions. The '--force' ('-f') option assumes that you know what you
+are doing. It causes 'patch' to do the following:
* Skip patches that do not contain file names in their headers.
* Patch files even though they have the wrong version for the
- `Prereq:' line in the patch;
+ 'Prereq:' line in the patch;
* Assume that patches are not reversed even if they look like they
are.
-The `--batch' (`-t') option is similar to `-f', in that it suppresses
+The '--batch' ('-t') option is similar to '-f', in that it suppresses
questions, but it makes somewhat different assumptions:
* Skip patches that do not contain file names in their headers (the
- same as `-f').
+ same as '-f').
* Skip patches for which the file has the wrong version for the
- `Prereq:' line in the patch;
+ 'Prereq:' line in the patch;
* Assume that patches are reversed if they look like they are.
\1f
File: diffutils.info-t, Node: patch Quoting Style, Prev: patch and Keyboard Input, Up: patch Messages
-10.11.3 `patch' Quoting Style
+10.11.3 'patch' Quoting Style
-----------------------------
-When `patch' outputs a file name in a diagnostic message, it can format
+When 'patch' outputs a file name in a diagnostic message, it can format
the name in any of several ways. This can be useful to output file
names unambiguously, even if they contain punctuation or special
-characters like newlines. The `--quoting-style=WORD' option controls
+characters like newlines. The '--quoting-style=WORD' option controls
how names are output. The WORD should be one of the following:
-`literal'
+'literal'
Output names as-is.
-
-`shell'
+'shell'
Quote names for the shell if they contain shell metacharacters or
would cause ambiguous output.
-
-`shell-always'
+'shell-always'
Quote names for the shell, even if they would normally not require
quoting.
-
-`c'
+'c'
Quote names as for a C language string.
-
-`escape'
- Quote as with `c' except omit the surrounding double-quote
+'escape'
+ Quote as with 'c' except omit the surrounding double-quote
characters.
- You can specify the default value of the `--quoting-style' option
-with the environment variable `QUOTING_STYLE'. If that environment
-variable is not set, the default value is `shell', but this default may
-change in a future version of `patch'.
+ You can specify the default value of the '--quoting-style' option
+with the environment variable 'QUOTING_STYLE'. If that environment
+variable is not set, the default value is 'shell', but this default may
+change in a future version of 'patch'.
\1f
File: diffutils.info-t, Node: patch and POSIX, Next: patch and Tradition, Prev: patch Messages, Up: Merging with patch
-10.12 `patch' and the POSIX Standard
+10.12 'patch' and the POSIX Standard
====================================
-If you specify the `--posix' option, or set the `POSIXLY_CORRECT'
-environment variable, `patch' conforms more strictly to the POSIX
+If you specify the '--posix' option, or set the 'POSIXLY_CORRECT'
+environment variable, 'patch' conforms more strictly to the POSIX
standard, as follows:
* Take the first existing file from the list (old, new, index) when
intuiting file names from diff headers. *Note Multiple Patches::.
- * Do not remove files that are removed by a diff. *Note Creating
- and Removing::.
+ * Do not remove files that are removed by a diff. *Note Creating and
+ Removing::.
* Do not ask whether to get files from RCS, ClearCase, or SCCS.
*Note Revision Control::.
* Do not backup files, even when there is a mismatch. *Note
Backups::.
-
\1f
File: diffutils.info-t, Node: patch and Tradition, Prev: patch and POSIX, Up: Merging with patch
-10.13 GNU `patch' and Traditional `patch'
+10.13 GNU 'patch' and Traditional 'patch'
=========================================
-The current version of GNU `patch' normally follows the POSIX standard.
+The current version of GNU 'patch' normally follows the POSIX standard.
*Note patch and POSIX::, for the few exceptions to this general rule.
- Unfortunately, POSIX redefined the behavior of `patch' in several
-important ways. You should be aware of the following differences if
-you must interoperate with traditional `patch', or with GNU `patch'
-version 2.1 and earlier.
+ Unfortunately, POSIX redefined the behavior of 'patch' in several
+important ways. You should be aware of the following differences if you
+must interoperate with traditional 'patch', or with GNU 'patch' version
+2.1 and earlier.
- * In traditional `patch', the `-p' option's operand was optional,
- and a bare `-p' was equivalent to `-p0'. The `-p' option now
- requires an operand, and `-p 0' is now equivalent to `-p0'. For
- maximum compatibility, use options like `-p0' and `-p1'.
+ * In traditional 'patch', the '-p' option's operand was optional, and
+ a bare '-p' was equivalent to '-p0'. The '-p' option now requires
+ an operand, and '-p 0' is now equivalent to '-p0'. For maximum
+ compatibility, use options like '-p0' and '-p1'.
- Also, traditional `patch' simply counted slashes when stripping
- path prefixes; `patch' now counts pathname components. That is, a
+ Also, traditional 'patch' simply counted slashes when stripping
+ path prefixes; 'patch' now counts pathname components. That is, a
sequence of one or more adjacent slashes now counts as a single
slash. For maximum portability, avoid sending patches containing
- `//' in file names.
+ '//' in file names.
- * In traditional `patch', backups were enabled by default. This
- behavior is now enabled with the `--backup' (`-b') option.
+ * In traditional 'patch', backups were enabled by default. This
+ behavior is now enabled with the '--backup' ('-b') option.
- Conversely, in POSIX `patch', backups are never made, even when
- there is a mismatch. In GNU `patch', this behavior is enabled
- with the `--no-backup-if-mismatch' option, or by conforming to
- POSIX.
+ Conversely, in POSIX 'patch', backups are never made, even when
+ there is a mismatch. In GNU 'patch', this behavior is enabled with
+ the '--no-backup-if-mismatch' option, or by conforming to POSIX.
- The `-b SUFFIX' option of traditional `patch' is equivalent to the
- `-b -z SUFFIX' options of GNU `patch'.
+ The '-b SUFFIX' option of traditional 'patch' is equivalent to the
+ '-b -z SUFFIX' options of GNU 'patch'.
- * Traditional `patch' used a complicated (and incompletely
+ * Traditional 'patch' used a complicated (and incompletely
documented) method to intuit the name of the file to be patched
from the patch header. This method did not conform to POSIX, and
- had a few gotchas. Now `patch' uses a different, equally
+ had a few gotchas. Now 'patch' uses a different, equally
complicated (but better documented) method that is optionally
POSIX-conforming; we hope it has fewer gotchas. The two methods
are compatible if the file names in the context diff header and the
- `Index:' line are all identical after prefix-stripping. Your
- patch is normally compatible if each header's file names all
- contain the same number of slashes.
+ 'Index:' line are all identical after prefix-stripping. Your patch
+ is normally compatible if each header's file names all contain the
+ same number of slashes.
- * When traditional `patch' asked the user a question, it sent the
+ * When traditional 'patch' asked the user a question, it sent the
question to standard error and looked for an answer from the first
file in the following list that was a terminal: standard error,
- standard output, `/dev/tty', and standard input. Now `patch'
- sends questions to standard output and gets answers from
- `/dev/tty'. Defaults for some answers have been changed so that
- `patch' never goes into an infinite loop when using default
- answers.
+ standard output, '/dev/tty', and standard input. Now 'patch' sends
+ questions to standard output and gets answers from '/dev/tty'.
+ Defaults for some answers have been changed so that 'patch' never
+ goes into an infinite loop when using default answers.
- * Traditional `patch' exited with a status value that counted the
+ * Traditional 'patch' exited with a status value that counted the
number of bad hunks, or with status 1 if there was real trouble.
- Now `patch' exits with status 1 if some hunks failed, or with 2 if
+ Now 'patch' exits with status 1 if some hunks failed, or with 2 if
there was real trouble.
* Limit yourself to the following options when sending instructions
- meant to be executed by anyone running GNU `patch', traditional
- `patch', or a `patch' that conforms to POSIX. Spaces are
+ meant to be executed by anyone running GNU 'patch', traditional
+ 'patch', or a 'patch' that conforms to POSIX. Spaces are
significant in the following list, and operands are required.
- `-c'
- `-d DIR'
- `-D DEFINE'
- `-e'
- `-l'
- `-n'
- `-N'
- `-o OUTFILE'
- `-pNUM'
- `-R'
- `-r REJECTFILE'
-
+ -c
+ -d DIR
+ -D DEFINE
+ -e
+ -l
+ -n
+ -N
+ -o OUTFILE
+ -pNUM
+ -R
+ -r REJECTFILE
\1f
File: diffutils.info-t, Node: Making Patches, Next: Invoking cmp, Prev: Merging with patch, Up: Top
************************************
Use some common sense when making and using patches. For example, when
-sending bug fixes to a program's maintainer, send several small
-patches, one per independent subject, instead of one large,
-harder-to-digest patch that covers all the subjects.
+sending bug fixes to a program's maintainer, send several small patches,
+one per independent subject, instead of one large, harder-to-digest
+patch that covers all the subjects.
Here are some other things you should keep in mind if you are going
to distribute patches for updating a software package.
* Tips for Patch Producers:: Advice for making patches.
* Tips for Patch Consumers:: Advice for using patches.
-* Avoiding Common Mistakes:: Avoiding common mistakes when using `patch'.
+* Avoiding Common Mistakes:: Avoiding common mistakes when using 'patch'.
* Generating Smaller Patches:: How to generate smaller patches.
\1f
To create a patch that changes an older version of a package into a
newer version, first make a copy of the older and newer versions in
-adjacent subdirectories. It is common to do that by unpacking `tar'
+adjacent subdirectories. It is common to do that by unpacking 'tar'
archives of the two versions.
- To generate the patch, use the command `diff -Naur OLD NEW' where
-OLD and NEW identify the old and new directories. The names OLD and
-NEW should not contain any slashes. The `-N' option lets the patch
-create and remove files; `-a' lets the patch update non-text files; `-u'
-generates useful time stamps and enough context; and `-r' lets the
-patch update subdirectories. Here is an example command, using Bourne
-shell syntax:
+ To generate the patch, use the command 'diff -Naur OLD NEW' where OLD
+and NEW identify the old and new directories. The names OLD and NEW
+should not contain any slashes. The '-N' option lets the patch create
+and remove files; '-a' lets the patch update non-text files; '-u'
+generates useful time stamps and enough context; and '-r' lets the patch
+update subdirectories. Here is an example command, using Bourne shell
+syntax:
diff -Naur gcc-3.0.3 gcc-3.0.4
Tell your recipients how to apply the patches. This should include
-which working directory to use, and which `patch' options to use; the
-option `-p1' is recommended. Test your procedure by pretending to be a
+which working directory to use, and which 'patch' options to use; the
+option '-p1' is recommended. Test your procedure by pretending to be a
recipient and applying your patches to a copy of the original files.
*Note Avoiding Common Mistakes::, for how to avoid common mistakes
11.2 Tips for Patch Consumers
=============================
-A patch producer should tell recipients how to apply the patches, so
-the first rule of thumb for a patch consumer is to follow the
-instructions supplied with the patch.
+A patch producer should tell recipients how to apply the patches, so the
+first rule of thumb for a patch consumer is to follow the instructions
+supplied with the patch.
- GNU `diff' can analyze files with arbitrarily long lines and files
-that end in incomplete lines. However, older versions of `patch'
-cannot patch such files. If you are having trouble applying such
-patches, try upgrading to a recent version of GNU `patch'.
+ GNU 'diff' can analyze files with arbitrarily long lines and files
+that end in incomplete lines. However, older versions of 'patch' cannot
+patch such files. If you are having trouble applying such patches, try
+upgrading to a recent version of GNU 'patch'.
\1f
File: diffutils.info-t, Node: Avoiding Common Mistakes, Next: Generating Smaller Patches, Prev: Tips for Patch Consumers, Up: Making Patches
11.3 Avoiding Common Mistakes
=============================
-When producing a patch for multiple files, apply `diff' to directories
+When producing a patch for multiple files, apply 'diff' to directories
whose names do not have slashes. This reduces confusion when the patch
-consumer specifies the `-pNUMBER' option, since this option can have
+consumer specifies the '-pNUMBER' option, since this option can have
surprising results when the old and new file names have different
-numbers of slashes. For example, do not send a patch with a header
-that looks like this:
+numbers of slashes. For example, do not send a patch with a header that
+looks like this:
diff -Naur v2.0.29/prog/README prog/README
--- v2.0.29/prog/README 2002-03-10 23:30:39.942229878 -0800
+++ prog/README 2002-03-17 20:49:32.442260588 -0800
because the two file names have different numbers of slashes, and
-different versions of `patch' interpret the file names differently. To
+different versions of 'patch' interpret the file names differently. To
avoid confusion, send output that looks like this instead:
diff -Naur v2.0.29/prog/README v2.0.30/prog/README
+++ v2.0.30/prog/README 2002-03-17 20:49:32.442260588 -0800
Make sure you have specified the file names correctly, either in a
-context diff header or with an `Index:' line. Take care to not send out
+context diff header or with an 'Index:' line. Take care to not send out
reversed patches, since these make people wonder whether they have
already applied the patch.
Avoid sending patches that compare backup file names like
-`README.orig' or `README~', since this might confuse `patch' into
+'README.orig' or 'README~', since this might confuse 'patch' into
patching a backup file instead of the real file. Instead, send patches
that compare the same base file names in different directories, e.g.
-`old/README' and `new/README'.
+'old/README' and 'new/README'.
To save people from partially applying a patch before other patches
that should have gone before it, you can make the first patch in the
-patch file update a file with a name like `patchlevel.h' or
-`version.c', which contains a patch level or version number. If the
-input file contains the wrong version number, `patch' will complain
-immediately.
+patch file update a file with a name like 'patchlevel.h' or 'version.c',
+which contains a patch level or version number. If the input file
+contains the wrong version number, 'patch' will complain immediately.
- An even clearer way to prevent this problem is to put a `Prereq:'
+ An even clearer way to prevent this problem is to put a 'Prereq:'
line before the patch. If the leading text in the patch file contains a
-line that starts with `Prereq:', `patch' takes the next word from that
+line that starts with 'Prereq:', 'patch' takes the next word from that
line (normally a version number) and checks whether the next input file
contains that word, preceded and followed by either white space or a
-newline. If not, `patch' prompts you for confirmation before
+newline. If not, 'patch' prompts you for confirmation before
proceeding. This makes it difficult to accidentally apply patches in
the wrong order.
11.4 Generating Smaller Patches
===============================
-The simplest way to generate a patch is to use `diff -Naur' (*note Tips
+The simplest way to generate a patch is to use 'diff -Naur' (*note Tips
for Patch Producers::), but you might be able to reduce the size of the
patch by renaming or removing some files before making the patch. If
the older version of the package contains any files that the newer
version does not, or if any files have been renamed between the two
-versions, make a list of `rm' and `mv' commands for the user to execute
+versions, make a list of 'rm' and 'mv' commands for the user to execute
in the old version directory before applying the patch. Then run those
commands yourself in the scratch directory.
If there are any files that you don't need to include in the patch
-because they can easily be rebuilt from other files (for example,
-`TAGS' and output from `yacc' and `makeinfo'), exclude them from the
-patch by giving `diff' the `-x PATTERN' option (*note Comparing
-Directories::). If you want your patch to modify a derived file
-because your recipients lack tools to build it, make sure that the
-patch for the derived file follows any patches for files that it
-depends on, so that the recipients' time stamps will not confuse `make'.
-
- Now you can create the patch using `diff -Naur'. Make sure to
+because they can easily be rebuilt from other files (for example, 'TAGS'
+and output from 'yacc' and 'makeinfo'), exclude them from the patch by
+giving 'diff' the '-x PATTERN' option (*note Comparing Directories::).
+If you want your patch to modify a derived file because your recipients
+lack tools to build it, make sure that the patch for the derived file
+follows any patches for files that it depends on, so that the
+recipients' time stamps will not confuse 'make'.
+
+ Now you can create the patch using 'diff -Naur'. Make sure to
specify the scratch directory first and the newer directory second.
- Add to the top of the patch a note telling the user any `rm' and
-`mv' commands to run before applying the patch. Then you can remove
-the scratch directory.
+ Add to the top of the patch a note telling the user any 'rm' and 'mv'
+commands to run before applying the patch. Then you can remove the
+scratch directory.
You can also shrink the patch size by using fewer lines of context,
-but bear in mind that `patch' typically needs at least two lines for
+but bear in mind that 'patch' typically needs at least two lines for
proper operation when patches do not exactly match the input files.
\1f
File: diffutils.info-t, Node: Invoking cmp, Next: Invoking diff, Prev: Making Patches, Up: Top
-12 Invoking `cmp'
+12 Invoking 'cmp'
*****************
-The `cmp' command compares two files, and if they differ, tells the
-first byte and line number where they differ or reports that one file
-is a prefix of the other. Bytes and lines are numbered starting with
-1. The arguments of `cmp' are as follows:
+The 'cmp' command compares two files, and if they differ, tells the
+first byte and line number where they differ or reports that one file is
+a prefix of the other. Bytes and lines are numbered starting with 1.
+The arguments of 'cmp' are as follows:
cmp OPTIONS... FROM-FILE [TO-FILE [FROM-SKIP [TO-SKIP]]]
- The file name `-' is always the standard input. `cmp' also uses the
+ The file name '-' is always the standard input. 'cmp' also uses the
standard input if one file name is omitted. The FROM-SKIP and TO-SKIP
operands specify how many bytes to ignore at the start of each file;
-they are equivalent to the `--ignore-initial=FROM-SKIP:TO-SKIP' option.
+they are equivalent to the '--ignore-initial=FROM-SKIP:TO-SKIP' option.
- By default, `cmp' outputs nothing if the two files have the same
-contents. If one file is a prefix of the other, `cmp' prints to
+ By default, 'cmp' outputs nothing if the two files have the same
+contents. If one file is a prefix of the other, 'cmp' prints to
standard error a message of the following form:
cmp: EOF on SHORTER-FILE
- Otherwise, `cmp' prints to standard output a message of the
-following form:
+ Otherwise, 'cmp' prints to standard output a message of the following
+form:
FROM-FILE TO-FILE differ: char BYTE-NUMBER, line LINE-NUMBER
- The message formats can differ outside the POSIX locale. Also,
-POSIX allows the EOF message to be followed by a blank and some
-additional information.
+ The message formats can differ outside the POSIX locale. Also, POSIX
+allows the EOF message to be followed by a blank and some additional
+information.
An exit status of 0 means no differences were found, 1 means some
differences were found, and 2 means trouble.
* Menu:
-* cmp Options:: Summary of options to `cmp'.
+* cmp Options:: Summary of options to 'cmp'.
\1f
File: diffutils.info-t, Node: cmp Options, Up: Invoking cmp
-12.1 Options to `cmp'
+12.1 Options to 'cmp'
=====================
-Below is a summary of all of the options that GNU `cmp' accepts. Most
+Below is a summary of all of the options that GNU 'cmp' accepts. Most
options have two equivalent names, one of which is a single letter
-preceded by `-', and the other of which is a long name preceded by
-`--'. Multiple single letter options (unless they take an argument)
-can be combined into a single command line word: `-bl' is equivalent to
-`-b -l'.
-
-`-b'
-`--print-bytes'
- Print the differing bytes. Display control bytes as a `^'
- followed by a letter of the alphabet and precede bytes that have
- the high bit set with `M-' (which stands for "meta").
-
-`--help'
+preceded by '-', and the other of which is a long name preceded by '--'.
+Multiple single letter options (unless they take an argument) can be
+combined into a single command line word: '-bl' is equivalent to '-b
+-l'.
+
+'-b'
+'--print-bytes'
+ Print the differing bytes. Display control bytes as a '^' followed
+ by a letter of the alphabet and precede bytes that have the high
+ bit set with 'M-' (which stands for "meta").
+
+'--help'
Output a summary of usage and then exit.
-`-i SKIP'
-`--ignore-initial=SKIP'
+'-i SKIP'
+'--ignore-initial=SKIP'
Ignore any differences in the first SKIP bytes of the input files.
Treat files with fewer than SKIP bytes as if they are empty. If
- SKIP is of the form `FROM-SKIP:TO-SKIP', skip the first FROM-SKIP
+ SKIP is of the form 'FROM-SKIP:TO-SKIP', skip the first FROM-SKIP
bytes of the first input file and the first TO-SKIP bytes of the
second.
-`-l'
-`--verbose'
+'-l'
+'--verbose'
Output the (decimal) byte numbers and (octal) values of all
differing bytes, instead of the default standard output. Each
output line contains a differing byte's number relative to the
numbers start at 1. Also, output the EOF message if one file is
shorter than the other.
-`-n COUNT'
-`--bytes=COUNT'
+'-n COUNT'
+'--bytes=COUNT'
Compare at most COUNT input bytes.
-`-s'
-`--quiet'
-`--silent'
+'-s'
+'--quiet'
+'--silent'
Do not print anything; only return an exit status indicating
whether the files differ.
-`-v'
-`--version'
+'-v'
+'--version'
Output version information and then exit.
In the above table, operands that are byte counts are normally
-decimal, but may be preceded by `0' for octal and `0x' for hexadecimal.
+decimal, but may be preceded by '0' for octal and '0x' for hexadecimal.
A byte count can be followed by a suffix to specify a multiple of
that count; in this case an omitted integer is understood to be 1. A
-bare size letter, or one followed by `iB', specifies a multiple using
-powers of 1024. A size letter followed by `B' specifies powers of 1000
-instead. For example, `-n 4M' and `-n 4MiB' are equivalent to `-n
-4194304', whereas `-n 4MB' is equivalent to `-n 4000000'. This
-notation is upward compatible with the SI prefixes
+bare size letter, or one followed by 'iB', specifies a multiple using
+powers of 1024. A size letter followed by 'B' specifies powers of 1000
+instead. For example, '-n 4M' and '-n 4MiB' are equivalent to '-n
+4194304', whereas '-n 4MB' is equivalent to '-n 4000000'. This notation
+is upward compatible with the SI prefixes
(http://www.bipm.fr/enus/3_SI/si-prefixes.html) for decimal multiples
and with the IEC 60027-2 prefixes for binary multiples
(http://physics.nist.gov/cuu/Units/binary.html).
- The following suffixes are defined. Large sizes like `1Y' may be
+ The following suffixes are defined. Large sizes like '1Y' may be
rejected by your computer due to limitations of its arithmetic.
-`kB'
+'kB'
kilobyte: 10^3 = 1000.
-
-`k'
-`K'
-`KiB'
- kibibyte: 2^10 = 1024. `K' is special: the SI prefix is `k' and
- the IEC 60027-2 prefix is `Ki', but tradition and POSIX use `k' to
- mean `KiB'.
-
-`MB'
+'k'
+'K'
+'KiB'
+ kibibyte: 2^10 = 1024. 'K' is special: the SI prefix is 'k' and
+ the IEC 60027-2 prefix is 'Ki', but tradition and POSIX use 'k' to
+ mean 'KiB'.
+'MB'
megabyte: 10^6 = 1,000,000.
-
-`M'
-`MiB'
+'M'
+'MiB'
mebibyte: 2^20 = 1,048,576.
-
-`GB'
+'GB'
gigabyte: 10^9 = 1,000,000,000.
-
-`G'
-`GiB'
+'G'
+'GiB'
gibibyte: 2^30 = 1,073,741,824.
-
-`TB'
- terabyte: 10^12 = 1,000,000,000,000.
-
-`T'
-`TiB'
+'TB'
+ terabyte: 10^12 = 1,000,000,000,000.
+'T'
+'TiB'
tebibyte: 2^40 = 1,099,511,627,776.
-
-`PB'
+'PB'
petabyte: 10^15 = 1,000,000,000,000,000.
-
-`P'
-`PiB'
+'P'
+'PiB'
pebibyte: 2^50 = 1,125,899,906,842,624.
-
-`EB'
+'EB'
exabyte: 10^18 = 1,000,000,000,000,000,000.
-
-`E'
-`EiB'
+'E'
+'EiB'
exbibyte: 2^60 = 1,152,921,504,606,846,976.
-
-`ZB'
+'ZB'
zettabyte: 10^21 = 1,000,000,000,000,000,000,000
-
-`Z'
-`ZiB'
- 2^70 = 1,180,591,620,717,411,303,424. (`Zi' is a GNU extension to
+'Z'
+'ZiB'
+ 2^70 = 1,180,591,620,717,411,303,424. ('Zi' is a GNU extension to
IEC 60027-2.)
-
-`YB'
+'YB'
yottabyte: 10^24 = 1,000,000,000,000,000,000,000,000.
-
-`Y'
-`YiB'
- 2^80 = 1,208,925,819,614,629,174,706,176. (`Yi' is a GNU
- extension to IEC 60027-2.)
+'Y'
+'YiB'
+ 2^80 = 1,208,925,819,614,629,174,706,176. ('Yi' is a GNU extension
+ to IEC 60027-2.)
\1f
File: diffutils.info-t, Node: Invoking diff, Next: Invoking diff3, Prev: Invoking cmp, Up: Top
-13 Invoking `diff'
+13 Invoking 'diff'
******************
-The format for running the `diff' command is:
+The format for running the 'diff' command is:
diff OPTIONS... FILES...
- In the simplest case, two file names FROM-FILE and TO-FILE are
-given, and `diff' compares the contents of FROM-FILE and TO-FILE. A
-file name of `-' stands for text read from the standard input. As a
-special case, `diff - -' compares a copy of standard input to itself.
+ In the simplest case, two file names FROM-FILE and TO-FILE are given,
+and 'diff' compares the contents of FROM-FILE and TO-FILE. A file name
+of '-' stands for the standard input.
- If one file is a directory and the other is not, `diff' compares the
+ If one file is a directory and the other is not, 'diff' compares the
file in the directory whose name is that of the non-directory. The
-non-directory file must not be `-'.
+non-directory file must not be '-'.
- If two file names are given and both are directories, `diff'
-compares corresponding files in both directories, in alphabetical
-order; this comparison is not recursive unless the `--recursive' (`-r')
-option is given. `diff' never compares the actual contents of a
-directory as if it were a file. The file that is fully specified may
-not be standard input, because standard input is nameless and the
-notion of "file with the same name" does not apply.
+ If two file names are given and both are directories, 'diff' compares
+corresponding files in both directories, in alphabetical order; this
+comparison is not recursive unless the '--recursive' ('-r') option is
+given. 'diff' never compares the actual contents of a directory as if
+it were a file. The file that is fully specified may not be standard
+input, because standard input is nameless and the notion of "file with
+the same name" does not apply.
- If the `--from-file=FILE' option is given, the number of file names
+ If the '--from-file=FILE' option is given, the number of file names
is arbitrary, and FILE is compared to each named file. Similarly, if
-the `--to-file=FILE' option is given, each named file is compared to
+the '--to-file=FILE' option is given, each named file is compared to
FILE.
- `diff' options begin with `-', so normally file names may not begin
-with `-'. However, `--' as an argument by itself treats the remaining
-arguments as file names even if they begin with `-'.
+ 'diff' options begin with '-', so normally file names may not begin
+with '-'. However, '--' as an argument by itself treats the remaining
+arguments as file names even if they begin with '-'.
An exit status of 0 means no differences were found, 1 means some
-differences were found, and 2 means trouble. Normally, differing
-binary files count as trouble, but this can be altered by using the
-`--text' (`-a') option, or the `-q' or `--brief' option.
+differences were found, and 2 means trouble.
* Menu:
-* diff Options:: Summary of options to `diff'.
+* diff Options:: Summary of options to 'diff'.
\1f
File: diffutils.info-t, Node: diff Options, Up: Invoking diff
-13.1 Options to `diff'
+13.1 Options to 'diff'
======================
-Below is a summary of all of the options that GNU `diff' accepts. Most
+Below is a summary of all of the options that GNU 'diff' accepts. Most
options have two equivalent names, one of which is a single letter
-preceded by `-', and the other of which is a long name preceded by
-`--'. Multiple single letter options (unless they take an argument)
-can be combined into a single command line word: `-ac' is equivalent to
-`-a -c'. Long named options can be abbreviated to any unique prefix of
+preceded by '-', and the other of which is a long name preceded by '--'.
+Multiple single letter options (unless they take an argument) can be
+combined into a single command line word: '-ac' is equivalent to '-a
+-c'. Long named options can be abbreviated to any unique prefix of
their name. Brackets ([ and ]) indicate that an option takes an
optional argument.
-`-a'
-`--text'
+'-a'
+'--text'
Treat all files as text and compare them line-by-line, even if they
do not seem to be text. *Note Binary::.
-`-b'
-`--ignore-space-change'
+'-b'
+'--ignore-space-change'
Ignore changes in amount of white space. *Note White Space::.
-`-B'
-`--ignore-blank-lines'
- Ignore changes that just insert or delete blank lines. *Note
- Blank Lines::.
+'-B'
+'--ignore-blank-lines'
+ Ignore changes that just insert or delete blank lines. *Note Blank
+ Lines::.
-`--binary'
+'--binary'
Read and write data in binary mode. *Note Binary::.
-`-c'
+'-c'
Use the context output format, showing three lines of context.
*Note Context Format::.
-`-C LINES'
-`--context[=LINES]'
+'--color [=WHEN]'
+ Specify whether to use color for distinguishing different contexts,
+ like header, added or removed lines. WHEN may be omitted, or one
+ of:
+ * none Do not use color at all. This is the default when no
+ -color option is specified.
+ * auto Use color only if standard output is a terminal.
+ * always Always use color.
+ Specifying '--color' and no WHEN is equivalent to '--color=auto'.
+
+'-C LINES'
+'--context[=LINES]'
Use the context output format, showing LINES (an integer) lines of
context, or three if LINES is not given. *Note Context Format::.
- For proper operation, `patch' typically needs at least two lines of
+ For proper operation, 'patch' typically needs at least two lines of
context.
- For compatibility `diff' also supports an obsolete option syntax
- `-LINES' that has effect when combined with `-c', `-p', or `-u'.
- New scripts should use `-U LINES' (`-C LINES') instead.
+ For compatibility 'diff' also supports an obsolete option syntax
+ '-LINES' that has effect when combined with '-c', '-p', or '-u'.
+ New scripts should use '-U LINES' ('-C LINES') instead.
-`--changed-group-format=FORMAT'
+'--changed-group-format=FORMAT'
Use FORMAT to output a line group containing differing lines from
both files in if-then-else format. *Note Line Group Formats::.
-`-d'
-`--minimal'
+'-d'
+'--minimal'
Change the algorithm perhaps find a smaller set of changes. This
- makes `diff' slower (sometimes much slower). *Note diff
+ makes 'diff' slower (sometimes much slower). *Note diff
Performance::.
-`-D NAME'
-`--ifdef=NAME'
- Make merged `#ifdef' format output, conditional on the preprocessor
+'-D NAME'
+'--ifdef=NAME'
+ Make merged '#ifdef' format output, conditional on the preprocessor
macro NAME. *Note If-then-else::.
-`-e'
-`--ed'
- Make output that is a valid `ed' script. *Note ed Scripts::.
+'-e'
+'--ed'
+ Make output that is a valid 'ed' script. *Note ed Scripts::.
-`-E'
-`--ignore-tab-expansion'
+'-E'
+'--ignore-tab-expansion'
Ignore changes due to tab expansion. *Note White Space::.
-`-f'
-`--forward-ed'
- Make output that looks vaguely like an `ed' script but has changes
+'-f'
+'--forward-ed'
+ Make output that looks vaguely like an 'ed' script but has changes
in the order they appear in the file. *Note Forward ed::.
-`-F REGEXP'
-`--show-function-line=REGEXP'
+'-F REGEXP'
+'--show-function-line=REGEXP'
In context and unified format, for each hunk of differences, show
some of the last preceding line that matches REGEXP. *Note
Specified Headings::.
-`--from-file=FILE'
+'--from-file=FILE'
Compare FILE to each operand; FILE may be a directory.
-`--help'
+'--help'
Output a summary of usage and then exit.
-`--horizon-lines=LINES'
+'--horizon-lines=LINES'
Do not discard the last LINES lines of the common prefix and the
first LINES lines of the common suffix. *Note diff Performance::.
-`-i'
-`--ignore-case'
+'-i'
+'--ignore-case'
Ignore changes in case; consider upper- and lower-case letters
equivalent. *Note Case Folding::.
-`-I REGEXP'
-`--ignore-matching-lines=REGEXP'
+'-I REGEXP'
+'--ignore-matching-lines=REGEXP'
Ignore changes that just insert or delete lines that match REGEXP.
*Note Specified Lines::.
-`--ignore-file-name-case'
+'--ignore-file-name-case'
Ignore case when comparing file names. For example, recursive
- comparison of `d' to `e' might compare the contents of `d/Init'
- and `e/inIt'. At the top level, `diff d inIt' might compare the
- contents of `d/Init' and `inIt'. *Note Comparing Directories::.
+ comparison of 'd' to 'e' might compare the contents of 'd/Init' and
+ 'e/inIt'. At the top level, 'diff d inIt' might compare the
+ contents of 'd/Init' and 'inIt'. *Note Comparing Directories::.
-`-l'
-`--paginate'
- Pass the output through `pr' to paginate it. *Note Pagination::.
+'-l'
+'--paginate'
+ Pass the output through 'pr' to paginate it. *Note Pagination::.
-`-L LABEL'
-`--label=LABEL'
+'-L LABEL'
+'--label=LABEL'
Use LABEL instead of the file name in the context format (*note
Context Format::) and unified format (*note Unified Format::)
headers. *Note RCS::.
-`--left-column'
+'--left-column'
Print only the left column of two common lines in side by side
format. *Note Side by Side Format::.
-`--line-format=FORMAT'
- Use FORMAT to output all input lines in if-then-else format.
- *Note Line Formats::.
+'--line-format=FORMAT'
+ Use FORMAT to output all input lines in if-then-else format. *Note
+ Line Formats::.
-`-n'
-`--rcs'
- Output RCS-format diffs; like `-f' except that each command
+'-n'
+'--rcs'
+ Output RCS-format diffs; like '-f' except that each command
specifies the number of lines affected. *Note RCS::.
-`-N'
-`--new-file'
+'-N'
+'--new-file'
If one file is missing, treat it as present but empty. *Note
Comparing Directories::.
-`--new-group-format=FORMAT'
+'--new-group-format=FORMAT'
Use FORMAT to output a group of lines taken from just the second
file in if-then-else format. *Note Line Group Formats::.
-`--new-line-format=FORMAT'
+'--new-line-format=FORMAT'
Use FORMAT to output a line taken from just the second file in
if-then-else format. *Note Line Formats::.
-`--no-dereference'
+'--no-dereference'
Act on symbolic links themselves instead of what they point to.
+ Two symbolic links are deemed equal only when each points to
+ precisely the same name.
-`--old-group-format=FORMAT'
+'--old-group-format=FORMAT'
Use FORMAT to output a group of lines taken from just the first
file in if-then-else format. *Note Line Group Formats::.
-`--old-line-format=FORMAT'
+'--old-line-format=FORMAT'
Use FORMAT to output a line taken from just the first file in
if-then-else format. *Note Line Formats::.
-`-p'
-`--show-c-function'
+'-p'
+'--show-c-function'
Show which C function each change is in. *Note C Function
Headings::.
-`-q'
-`--brief'
+'--palette=PALETTE'
+ Specify what color palette to use when colored output is enabled.
+ It defaults to 'rs=0:hd=1:ad=32:de=31:ln=36' for red deleted lines,
+ green added lines, cyan line numbers, bold header.
+
+ Supported capabilities are as follows.
+
+ 'ad=32'
+
+ SGR substring for added lines. The default is green
+ foreground.
+
+ 'de=31'
+
+ SGR substring for deleted lines. The default is red
+ foreground.
+
+ 'hd=1'
+
+ SGR substring for chunk header. The default is bold
+ foreground.
+
+ 'ln=36'
+
+ SGR substring for line numbers. The default is cyan
+ foreground.
+
+'-q'
+'--brief'
Report only whether the files differ, not the details of the
differences. *Note Brief::.
-`-r'
-`--recursive'
+'-r'
+'--recursive'
When comparing directories, recursively compare any subdirectories
found. *Note Comparing Directories::.
-`-s'
-`--report-identical-files'
+'-s'
+'--report-identical-files'
Report when two files are the same. *Note Comparing Directories::.
-`-S FILE'
-`--starting-file=FILE'
- When comparing directories, start with the file FILE. This is
- used for resuming an aborted comparison. *Note Comparing
- Directories::.
+'-S FILE'
+'--starting-file=FILE'
+ When comparing directories, start with the file FILE. This is used
+ for resuming an aborted comparison. *Note Comparing Directories::.
-`--speed-large-files'
+'--speed-large-files'
Use heuristics to speed handling of large files that have numerous
scattered small changes. *Note diff Performance::.
-`--strip-trailing-cr'
+'--strip-trailing-cr'
Strip any trailing carriage return at the end of an input line.
*Note Binary::.
-`--suppress-common-lines'
+'--suppress-common-lines'
Do not print common lines in side by side format. *Note Side by
Side Format::.
-`-t'
-`--expand-tabs'
+'-t'
+'--expand-tabs'
Expand tabs to spaces in the output, to preserve the alignment of
tabs in the input files. *Note Tabs::.
-`-T'
-`--initial-tab'
+'-T'
+'--initial-tab'
Output a tab rather than a space before the text of a line in
- normal or context format. This causes the alignment of tabs in
- the line to look normal. *Note Tabs::.
+ normal or context format. This causes the alignment of tabs in the
+ line to look normal. *Note Tabs::.
-`--tabsize=COLUMNS'
+'--tabsize=COLUMNS'
Assume that tab stops are set every COLUMNS (default 8) print
columns. *Note Tabs::.
-`--suppress-blank-empty'
+'--suppress-blank-empty'
Suppress any blanks before newlines when printing the
representation of an empty line, when outputting normal, context,
or unified format. *Note Trailing Blanks::.
-`--to-file=FILE'
+'--to-file=FILE'
Compare each operand to FILE; FILE may be a directory.
-`-u'
+'-u'
Use the unified output format, showing three lines of context.
*Note Unified Format::.
-`--unchanged-group-format=FORMAT'
+'--unchanged-group-format=FORMAT'
Use FORMAT to output a group of common lines taken from both files
in if-then-else format. *Note Line Group Formats::.
-`--unchanged-line-format=FORMAT'
+'--unchanged-line-format=FORMAT'
Use FORMAT to output a line common to both files in if-then-else
format. *Note Line Formats::.
-`--unidirectional-new-file'
+'--unidirectional-new-file'
If a first file is missing, treat it as present but empty. *Note
Comparing Directories::.
-`-U LINES'
-`--unified[=LINES]'
+'-U LINES'
+'--unified[=LINES]'
Use the unified output format, showing LINES (an integer) lines of
context, or three if LINES is not given. *Note Unified Format::.
- For proper operation, `patch' typically needs at least two lines of
+ For proper operation, 'patch' typically needs at least two lines of
context.
- On older systems, `diff' supports an obsolete option `-LINES' that
- has effect when combined with `-u'. POSIX 1003.1-2001 (*note
- Standards conformance::) does not allow this; use `-U LINES'
+ On older systems, 'diff' supports an obsolete option '-LINES' that
+ has effect when combined with '-u'. POSIX 1003.1-2001 (*note
+ Standards conformance::) does not allow this; use '-U LINES'
instead.
-`-v'
-`--version'
+'-v'
+'--version'
Output version information and then exit.
-`-w'
-`--ignore-all-space'
+'-w'
+'--ignore-all-space'
Ignore white space when comparing lines. *Note White Space::.
-`-W COLUMNS'
-`--width=COLUMNS'
- Output at most COLUMNS (default 130) print columns per line in
- side by side format. *Note Side by Side Format::.
+'-W COLUMNS'
+'--width=COLUMNS'
+ Output at most COLUMNS (default 130) print columns per line in side
+ by side format. *Note Side by Side Format::.
-`-x PATTERN'
-`--exclude=PATTERN'
+'-x PATTERN'
+'--exclude=PATTERN'
When comparing directories, ignore files and subdirectories whose
basenames match PATTERN. *Note Comparing Directories::.
-`-X FILE'
-`--exclude-from=FILE'
+'-X FILE'
+'--exclude-from=FILE'
When comparing directories, ignore files and subdirectories whose
basenames match any pattern contained in FILE. *Note Comparing
Directories::.
-`-y'
-`--side-by-side'
+'-y'
+'--side-by-side'
Use the side by side output format. *Note Side by Side Format::.
-`-Z'
-`--ignore-trailing-space'
+'-Z'
+'--ignore-trailing-space'
Ignore white space at line end. *Note White Space::.
\1f
File: diffutils.info-t, Node: Invoking diff3, Next: Invoking patch, Prev: Invoking diff, Up: Top
-14 Invoking `diff3'
+14 Invoking 'diff3'
*******************
-The `diff3' command compares three files and outputs descriptions of
+The 'diff3' command compares three files and outputs descriptions of
their differences. Its arguments are as follows:
diff3 OPTIONS... MINE OLDER YOURS
The files to compare are MINE, OLDER, and YOURS. At most one of
-these three file names may be `-', which tells `diff3' to read the
+these three file names may be '-', which tells 'diff3' to read the
standard input for that file.
- An exit status of 0 means `diff3' was successful, 1 means some
+ An exit status of 0 means 'diff3' was successful, 1 means some
conflicts were found, and 2 means trouble.
* Menu:
-* diff3 Options:: Summary of options to `diff3'.
+* diff3 Options:: Summary of options to 'diff3'.
\1f
File: diffutils.info-t, Node: diff3 Options, Up: Invoking diff3
-14.1 Options to `diff3'
+14.1 Options to 'diff3'
=======================
-Below is a summary of all of the options that GNU `diff3' accepts.
+Below is a summary of all of the options that GNU 'diff3' accepts.
Multiple single letter options (unless they take an argument) can be
combined into a single command line argument.
-`-a'
-`--text'
+'-a'
+'--text'
Treat all files as text and compare them line-by-line, even if they
do not appear to be text. *Note Binary::.
-`-A'
-`--show-all'
+'-A'
+'--show-all'
Incorporate all unmerged changes from OLDER to YOURS into MINE,
surrounding conflicts with bracket lines. *Note Marking
Conflicts::.
-`--diff-program=PROGRAM'
+'--diff-program=PROGRAM'
Use the compatible comparison program PROGRAM to compare files
- instead of `diff'.
+ instead of 'diff'.
-`-e'
-`--ed'
- Generate an `ed' script that incorporates all the changes from
+'-e'
+'--ed'
+ Generate an 'ed' script that incorporates all the changes from
OLDER to YOURS into MINE. *Note Which Changes::.
-`-E'
-`--show-overlap'
- Like `-e', except bracket lines from overlapping changes' first
- and third files. *Note Marking Conflicts::. With `-E', an
- overlapping change looks like this:
+'-E'
+'--show-overlap'
+ Like '-e', except bracket lines from overlapping changes' first and
+ third files. *Note Marking Conflicts::. With '-E', an overlapping
+ change looks like this:
<<<<<<< MINE
lines from MINE
lines from YOURS
>>>>>>> YOURS
-`--help'
+'--help'
Output a summary of usage and then exit.
-`-i'
- Generate `w' and `q' commands at the end of the `ed' script for
+'-i'
+ Generate 'w' and 'q' commands at the end of the 'ed' script for
System V compatibility. This option must be combined with one of
- the `-AeExX3' options, and may not be combined with `-m'. *Note
+ the '-AeExX3' options, and may not be combined with '-m'. *Note
Saving the Changed File::.
-`--label=LABEL'
- Use the label LABEL for the brackets output by the `-A', `-E' and
- `-X' options. This option may be given up to three times, one for
+'--label=LABEL'
+ Use the label LABEL for the brackets output by the '-A', '-E' and
+ '-X' options. This option may be given up to three times, one for
each input file. The default labels are the names of the input
- files. Thus `diff3 --label X --label Y --label Z -m A B C' acts
- like `diff3 -m A B C', except that the output looks like it came
- from files named `X', `Y' and `Z' rather than from files named
- `A', `B' and `C'. *Note Marking Conflicts::.
+ files. Thus 'diff3 --label X --label Y --label Z -m A B C' acts
+ like 'diff3 -m A B C', except that the output looks like it came
+ from files named 'X', 'Y' and 'Z' rather than from files named 'A',
+ 'B' and 'C'. *Note Marking Conflicts::.
-`-m'
-`--merge'
+'-m'
+'--merge'
Apply the edit script to the first file and send the result to
- standard output. Unlike piping the output from `diff3' to `ed',
- this works even for binary files and incomplete lines. `-A' is
+ standard output. Unlike piping the output from 'diff3' to 'ed',
+ this works even for binary files and incomplete lines. '-A' is
assumed if no edit script option is specified. *Note Bypassing
ed::.
-`--strip-trailing-cr'
+'--strip-trailing-cr'
Strip any trailing carriage return at the end of an input line.
*Note Binary::.
-`-T'
-`--initial-tab'
+'-T'
+'--initial-tab'
Output a tab rather than two spaces before the text of a line in
normal format. This causes the alignment of tabs in the line to
look normal. *Note Tabs::.
-`-v'
-`--version'
+'-v'
+'--version'
Output version information and then exit.
-`-x'
-`--overlap-only'
- Like `-e', except output only the overlapping changes. *Note
- Which Changes::.
+'-x'
+'--overlap-only'
+ Like '-e', except output only the overlapping changes. *Note Which
+ Changes::.
-`-X'
- Like `-E', except output only the overlapping changes. In other
- words, like `-x', except bracket changes as in `-E'. *Note
- Marking Conflicts::.
+'-X'
+ Like '-E', except output only the overlapping changes. In other
+ words, like '-x', except bracket changes as in '-E'. *Note Marking
+ Conflicts::.
-`-3'
-`--easy-only'
- Like `-e', except output only the nonoverlapping changes. *Note
+'-3'
+'--easy-only'
+ Like '-e', except output only the nonoverlapping changes. *Note
Which Changes::.
\1f
File: diffutils.info-t, Node: Invoking patch, Next: Invoking sdiff, Prev: Invoking diff3, Up: Top
-15 Invoking `patch'
+15 Invoking 'patch'
*******************
-Normally `patch' is invoked like this:
+Normally 'patch' is invoked like this:
patch <PATCHFILE
- The full format for invoking `patch' is:
+ The full format for invoking 'patch' is:
patch OPTIONS... [ORIGFILE [PATCHFILE]]
- You can also specify where to read the patch from with the `-i
-PATCHFILE' or `--input=PATCHFILE' option. If you do not specify
-PATCHFILE, or if PATCHFILE is `-', `patch' reads the patch (that is,
-the `diff' output) from the standard input.
+ You can also specify where to read the patch from with the '-i
+PATCHFILE' or '--input=PATCHFILE' option. If you do not specify
+PATCHFILE, or if PATCHFILE is '-', 'patch' reads the patch (that is, the
+'diff' output) from the standard input.
- If you do not specify an input file on the command line, `patch'
+ If you do not specify an input file on the command line, 'patch'
tries to intuit from the "leading text" (any text in the patch that
-comes before the `diff' output) which file to edit. *Note Multiple
+comes before the 'diff' output) which file to edit. *Note Multiple
Patches::.
- By default, `patch' replaces the original input file with the
-patched version, possibly after renaming the original file into a
-backup file (*note Backup Names::, for a description of how `patch'
-names backup files). You can also specify where to put the output with
-the `-o FILE' or `--output=FILE' option; however, do not use this option
-if FILE is one of the input files.
+ By default, 'patch' replaces the original input file with the patched
+version, possibly after renaming the original file into a backup file
+(*note Backup Names::, for a description of how 'patch' names backup
+files). You can also specify where to put the output with the '-o FILE'
+or '--output=FILE' option; however, do not use this option if FILE is
+one of the input files.
* Menu:
-* patch Options:: Summary table of options to `patch'.
+* patch Options:: Summary table of options to 'patch'.
\1f
File: diffutils.info-t, Node: patch Options, Up: Invoking patch
-15.1 Options to `patch'
+15.1 Options to 'patch'
=======================
-Here is a summary of all of the options that GNU `patch' accepts.
-*Note patch and Tradition::, for which of these options are safe to use
-in older versions of `patch'.
+Here is a summary of all of the options that GNU 'patch' accepts. *Note
+patch and Tradition::, for which of these options are safe to use in
+older versions of 'patch'.
Multiple single-letter options that do not take an argument can be
combined into a single command line argument with only one dash.
-`-b'
-`--backup'
+'-b'
+'--backup'
Back up the original contents of each file, even if backups would
normally not be made. *Note Backups::.
-`-B PREFIX'
-`--prefix=PREFIX'
+'-B PREFIX'
+'--prefix=PREFIX'
Prepend PREFIX to backup file names. *Note Backup Names::.
-`--backup-if-mismatch'
+'--backup-if-mismatch'
Back up the original contents of each file if the patch does not
exactly match the file. This is the default behavior when not
conforming to POSIX. *Note Backups::.
-`--binary'
+'--binary'
Read and write all files in binary mode, except for standard output
- and `/dev/tty'. This option has no effect on POSIX-conforming
+ and '/dev/tty'. This option has no effect on POSIX-conforming
systems like GNU/Linux. On systems where this option makes a
- difference, the patch should be generated by `diff -a --binary'.
+ difference, the patch should be generated by 'diff -a --binary'.
*Note Binary::.
-`-c'
-`--context'
+'-c'
+'--context'
Interpret the patch file as a context diff. *Note patch Input::.
-`-d DIRECTORY'
-`--directory=DIRECTORY'
+'-d DIRECTORY'
+'--directory=DIRECTORY'
Make directory DIRECTORY the current directory for interpreting
both file names in the patch file, and file names given as
arguments to other options. *Note patch Directories::.
-`-D NAME'
-`--ifdef=NAME'
+'-D NAME'
+'--ifdef=NAME'
Make merged if-then-else output using NAME. *Note If-then-else::.
-`--dry-run'
+'--dry-run'
Print the results of applying the patches without actually changing
any files. *Note Dry Runs::.
-`-e'
-`--ed'
- Interpret the patch file as an `ed' script. *Note patch Input::.
+'-e'
+'--ed'
+ Interpret the patch file as an 'ed' script. *Note patch Input::.
-`-E'
-`--remove-empty-files'
+'-E'
+'--remove-empty-files'
Remove output files that are empty after the patches have been
applied. *Note Creating and Removing::.
-`-f'
-`--force'
+'-f'
+'--force'
Assume that the user knows exactly what he or she is doing, and do
not ask any questions. *Note patch Messages::.
-`-F LINES'
-`--fuzz=LINES'
+'-F LINES'
+'--fuzz=LINES'
Set the maximum fuzz factor to LINES. *Note Inexact::.
-`-g NUM'
-`--get=NUM'
+'-g NUM'
+'--get=NUM'
If NUM is positive, get input files from a revision control system
as necessary; if zero, do not get the files; if negative, ask the
user whether to get the files. *Note Revision Control::.
-`--help'
+'--help'
Output a summary of usage and then exit.
-`-i PATCHFILE'
-`--input=PATCHFILE'
+'-i PATCHFILE'
+'--input=PATCHFILE'
Read the patch from PATCHFILE rather than from standard input.
*Note patch Options::.
-`-l'
-`--ignore-white-space'
+'-l'
+'--ignore-white-space'
Let any sequence of blanks (spaces or tabs) in the patch file match
any sequence of blanks in the input file. *Note Changed White
Space::.
-`-n'
-`--normal'
+'-n'
+'--normal'
Interpret the patch file as a normal diff. *Note patch Input::.
-`-N'
-`--forward'
- Ignore patches that `patch' thinks are reversed or already applied.
- See also `-R'. *Note Reversed Patches::.
+'-N'
+'--forward'
+ Ignore patches that 'patch' thinks are reversed or already applied.
+ See also '-R'. *Note Reversed Patches::.
-`--no-backup-if-mismatch'
+'--no-backup-if-mismatch'
Do not back up the original contents of files. This is the default
behavior when conforming to POSIX. *Note Backups::.
-`-o FILE'
-`--output=FILE'
+'-o FILE'
+'--output=FILE'
Use FILE as the output file name. *Note patch Options::.
-`-pNUMBER'
-`--strip=NUMBER'
+'-pNUMBER'
+'--strip=NUMBER'
Set the file name strip count to NUMBER. *Note patch
Directories::.
-`--posix'
- Conform to POSIX, as if the `POSIXLY_CORRECT' environment variable
+'--posix'
+ Conform to POSIX, as if the 'POSIXLY_CORRECT' environment variable
had been set. *Note patch and POSIX::.
-`--quoting-style=WORD'
+'--quoting-style=WORD'
Use style WORD to quote names in diagnostics, as if the
- `QUOTING_STYLE' environment variable had been set to WORD. *Note
+ 'QUOTING_STYLE' environment variable had been set to WORD. *Note
patch Quoting Style::.
-`-r REJECT-FILE'
-`--reject-file=REJECT-FILE'
+'-r REJECT-FILE'
+'--reject-file=REJECT-FILE'
Use REJECT-FILE as the reject file name. *Note Reject Names::.
-`-R'
-`--reverse'
+'-R'
+'--reverse'
Assume that this patch was created with the old and new files
swapped. *Note Reversed Patches::.
-`-s'
-`--quiet'
-`--silent'
+'-s'
+'--quiet'
+'--silent'
Work silently unless an error occurs. *Note patch Messages::.
-`-t'
-`--batch'
+'-t'
+'--batch'
Do not ask any questions. *Note patch Messages::.
-`-T'
-`--set-time'
+'-T'
+'--set-time'
Set the modification and access times of patched files from time
stamps given in context diff headers, assuming that the context
diff headers use local time. *Note Patching Time Stamps::.
-`-u'
-`--unified'
+'-u'
+'--unified'
Interpret the patch file as a unified diff. *Note patch Input::.
-`-v'
-`--version'
+'-v'
+'--version'
Output version information and then exit.
-`-V BACKUP-STYLE'
-`--version=control=BACKUP-STYLE'
+'-V BACKUP-STYLE'
+'--version=control=BACKUP-STYLE'
Select the naming convention for backup file names. *Note Backup
Names::.
-`--verbose'
+'--verbose'
Print more diagnostics than usual. *Note patch Messages::.
-`-x NUMBER'
-`--debug=NUMBER'
- Set internal debugging flags. Of interest only to `patch'
+'-x NUMBER'
+'--debug=NUMBER'
+ Set internal debugging flags. Of interest only to 'patch'
patchers.
-`-Y PREFIX'
-`--basename-prefix=PREFIX'
+'-Y PREFIX'
+'--basename-prefix=PREFIX'
Prepend PREFIX to base names of backup files. *Note Backup
Names::.
-`-z SUFFIX'
-`--suffix=SUFFIX'
- Use SUFFIX as the backup extension instead of `.orig' or `~'.
+'-z SUFFIX'
+'--suffix=SUFFIX'
+ Use SUFFIX as the backup extension instead of '.orig' or '~'.
*Note Backup Names::.
-`-Z'
-`--set-utc'
+'-Z'
+'--set-utc'
Set the modification and access times of patched files from time
stamps given in context diff headers, assuming that the context
diff headers use UTC. *Note Patching Time Stamps::.
-
\1f
File: diffutils.info-t, Node: Invoking sdiff, Next: Standards conformance, Prev: Invoking patch, Up: Top
-16 Invoking `sdiff'
+16 Invoking 'sdiff'
*******************
-The `sdiff' command merges two files and interactively outputs the
+The 'sdiff' command merges two files and interactively outputs the
results. Its arguments are as follows:
sdiff -o OUTFILE OPTIONS... FROM-FILE TO-FILE
This merges FROM-FILE with TO-FILE, with output to OUTFILE. If
-FROM-FILE is a directory and TO-FILE is not, `sdiff' compares the file
+FROM-FILE is a directory and TO-FILE is not, 'sdiff' compares the file
in FROM-FILE whose file name is that of TO-FILE, and vice versa.
FROM-FILE and TO-FILE may not both be directories.
- `sdiff' options begin with `-', so normally FROM-FILE and TO-FILE
-may not begin with `-'. However, `--' as an argument by itself treats
-the remaining arguments as file names even if they begin with `-'. You
-may not use `-' as an input file.
+ 'sdiff' options begin with '-', so normally FROM-FILE and TO-FILE may
+not begin with '-'. However, '--' as an argument by itself treats the
+remaining arguments as file names even if they begin with '-'. You may
+not use '-' as an input file.
- `sdiff' without `--output' (`-o') produces a side-by-side
-difference. This usage is obsolete; use the `--side-by-side' (`-y')
-option of `diff' instead.
+ 'sdiff' without '--output' ('-o') produces a side-by-side difference.
+This usage is obsolete; use the '--side-by-side' ('-y') option of 'diff'
+instead.
An exit status of 0 means no differences were found, 1 means some
differences were found, and 2 means trouble.
* Menu:
-* sdiff Options:: Summary of options to `diff'.
+* sdiff Options:: Summary of options to 'diff'.
\1f
File: diffutils.info-t, Node: sdiff Options, Up: Invoking sdiff
-16.1 Options to `sdiff'
+16.1 Options to 'sdiff'
=======================
-Below is a summary of all of the options that GNU `sdiff' accepts.
-Each option has two equivalent names, one of which is a single letter
-preceded by `-', and the other of which is a long name preceded by
-`--'. Multiple single letter options (unless they take an argument)
-can be combined into a single command line argument. Long named
-options can be abbreviated to any unique prefix of their name.
+Below is a summary of all of the options that GNU 'sdiff' accepts. Each
+option has two equivalent names, one of which is a single letter
+preceded by '-', and the other of which is a long name preceded by '--'.
+Multiple single letter options (unless they take an argument) can be
+combined into a single command line argument. Long named options can be
+abbreviated to any unique prefix of their name.
-`-a'
-`--text'
+'-a'
+'--text'
Treat all files as text and compare them line-by-line, even if they
do not appear to be text. *Note Binary::.
-`-b'
-`--ignore-space-change'
+'-b'
+'--ignore-space-change'
Ignore changes in amount of white space. *Note White Space::.
-`-B'
-`--ignore-blank-lines'
- Ignore changes that just insert or delete blank lines. *Note
- Blank Lines::.
+'-B'
+'--ignore-blank-lines'
+ Ignore changes that just insert or delete blank lines. *Note Blank
+ Lines::.
-`-d'
-`--minimal'
+'-d'
+'--minimal'
Change the algorithm to perhaps find a smaller set of changes.
- This makes `sdiff' slower (sometimes much slower). *Note diff
+ This makes 'sdiff' slower (sometimes much slower). *Note diff
Performance::.
-`--diff-program=PROGRAM'
+'--diff-program=PROGRAM'
Use the compatible comparison program PROGRAM to compare files
- instead of `diff'.
+ instead of 'diff'.
-`-E'
-`--ignore-tab-expansion'
+'-E'
+'--ignore-tab-expansion'
Ignore changes due to tab expansion. *Note White Space::.
-`--help'
+'--help'
Output a summary of usage and then exit.
-`-i'
-`--ignore-case'
+'-i'
+'--ignore-case'
Ignore changes in case; consider upper- and lower-case to be the
same. *Note Case Folding::.
-`-I REGEXP'
-`--ignore-matching-lines=REGEXP'
+'-I REGEXP'
+'--ignore-matching-lines=REGEXP'
Ignore changes that just insert or delete lines that match REGEXP.
*Note Specified Lines::.
-`-l'
-`--left-column'
- Print only the left column of two common lines. *Note Side by
- Side Format::.
+'-l'
+'--left-column'
+ Print only the left column of two common lines. *Note Side by Side
+ Format::.
-`-o FILE'
-`--output=FILE'
+'-o FILE'
+'--output=FILE'
Put merged output into FILE. This option is required for merging.
-`-s'
-`--suppress-common-lines'
+'-s'
+'--suppress-common-lines'
Do not print common lines. *Note Side by Side Format::.
-`--speed-large-files'
+'--speed-large-files'
Use heuristics to speed handling of large files that have numerous
scattered small changes. *Note diff Performance::.
-`--strip-trailing-cr'
+'--strip-trailing-cr'
Strip any trailing carriage return at the end of an input line.
*Note Binary::.
-`-t'
-`--expand-tabs'
+'-t'
+'--expand-tabs'
Expand tabs to spaces in the output, to preserve the alignment of
tabs in the input files. *Note Tabs::.
-`--tabsize=COLUMNS'
+'--tabsize=COLUMNS'
Assume that tab stops are set every COLUMNS (default 8) print
columns. *Note Tabs::.
-`-v'
-`--version'
+'-v'
+'--version'
Output version information and then exit.
-`-w COLUMNS'
-`--width=COLUMNS'
- Output at most COLUMNS (default 130) print columns per line.
- *Note Side by Side Format::. Note that for historical reasons,
- this option is `-W' in `diff', `-w' in `sdiff'.
+'-w COLUMNS'
+'--width=COLUMNS'
+ Output at most COLUMNS (default 130) print columns per line. *Note
+ Side by Side Format::. Note that for historical reasons, this
+ option is '-W' in 'diff', '-w' in 'sdiff'.
-`-W'
-`--ignore-all-space'
+'-W'
+'--ignore-all-space'
Ignore white space when comparing lines. *Note White Space::.
- Note that for historical reasons, this option is `-w' in `diff',
- `-W' in `sdiff'.
+ Note that for historical reasons, this option is '-w' in 'diff',
+ '-W' in 'sdiff'.
-`-Z'
-`--ignore-trailing-space'
+'-Z'
+'--ignore-trailing-space'
Ignore white space at line end. *Note White Space::.
\1f
17 Standards conformance
************************
-In a few cases, the GNU utilities' default behavior is incompatible
-with the POSIX standard. To suppress these incompatibilities, define
-the `POSIXLY_CORRECT' environment variable. Unless you are checking
-for POSIX conformance, you probably do not need to define
-`POSIXLY_CORRECT'.
+In a few cases, the GNU utilities' default behavior is incompatible with
+the POSIX standard. To suppress these incompatibilities, define the
+'POSIXLY_CORRECT' environment variable. Unless you are checking for
+POSIX conformance, you probably do not need to define 'POSIXLY_CORRECT'.
Normally options and operands can appear in any order, and programs
act as if all the options appear before any operands. For example,
-`diff lao tzu -C 2' acts like `diff -C 2 lao tzu', since `2' is an
-option-argument of `-C'. However, if the `POSIXLY_CORRECT' environment
+'diff lao tzu -C 2' acts like 'diff -C 2 lao tzu', since '2' is an
+option-argument of '-C'. However, if the 'POSIXLY_CORRECT' environment
variable is set, options must appear before operands, unless otherwise
specified for a particular command.
Newer versions of POSIX are occasionally incompatible with older
versions. For example, older versions of POSIX allowed the command
-`diff -c -10' to have the same meaning as `diff -C 10', but POSIX
-1003.1-2001 `diff' no longer allows digit-string options like `-10'.
+'diff -c -10' to have the same meaning as 'diff -C 10', but POSIX
+1003.1-2001 'diff' no longer allows digit-string options like '-10'.
The GNU utilities normally conform to the version of POSIX that is
standard for your system. To cause them to conform to a different
-version of POSIX, define the `_POSIX2_VERSION' environment variable to
-a value of the form YYYYMM specifying the year and month the standard
-was adopted. Two values are currently supported for `_POSIX2_VERSION':
-`199209' stands for POSIX 1003.2-1992, and `200112' stands for POSIX
+version of POSIX, define the '_POSIX2_VERSION' environment variable to a
+value of the form YYYYMM specifying the year and month the standard was
+adopted. Two values are currently supported for '_POSIX2_VERSION':
+'199209' stands for POSIX 1003.2-1992, and '200112' stands for POSIX
1003.1-2001. For example, if you are running older software that
-assumes an older version of POSIX and uses `diff -c -10', you can work
-around the compatibility problems by setting `_POSIX2_VERSION=199209'
-in your environment.
+assumes an older version of POSIX and uses 'diff -c -10', you can work
+around the compatibility problems by setting '_POSIX2_VERSION=199209' in
+your environment.
\1f
File: diffutils.info-t, Node: Projects, Next: Copying This Manual, Prev: Standards conformance, Up: Top
18 Future Projects
******************
-Here are some ideas for improving GNU `diff' and `patch'. The GNU
+Here are some ideas for improving GNU 'diff' and 'patch'. The GNU
project has identified some improvements as potential programming
projects for volunteers. You can also help by reporting any bugs that
you find.
If you are a programmer and would like to contribute something to the
-GNU project, please consider volunteering for one of these projects.
-If you are seriously contemplating work, please write to <gvc@gnu.org>
-to coordinate with other volunteers.
+GNU project, please consider volunteering for one of these projects. If
+you are seriously contemplating work, please write to <gvc@gnu.org> to
+coordinate with other volunteers.
* Menu:
\1f
File: diffutils.info-t, Node: Shortcomings, Next: Bugs, Up: Projects
-18.1 Suggested Projects for Improving GNU `diff' and `patch'
+18.1 Suggested Projects for Improving GNU 'diff' and 'patch'
============================================================
-One should be able to use GNU `diff' to generate a patch from any pair
-of directory trees, and given the patch and a copy of one such tree,
-use `patch' to generate a faithful copy of the other. Unfortunately,
-some changes to directory trees cannot be expressed using current patch
-formats; also, `patch' does not handle some of the existing formats.
+One should be able to use GNU 'diff' to generate a patch from any pair
+of directory trees, and given the patch and a copy of one such tree, use
+'patch' to generate a faithful copy of the other. Unfortunately, some
+changes to directory trees cannot be expressed using current patch
+formats; also, 'patch' does not handle some of the existing formats.
These shortcomings motivate the following suggested projects.
* Menu:
18.1.1 Handling Multibyte and Varying-Width Characters
------------------------------------------------------
-`diff', `diff3' and `sdiff' treat each line of input as a string of
+'diff', 'diff3' and 'sdiff' treat each line of input as a string of
unibyte characters. This can mishandle multibyte characters in some
-cases. For example, when asked to ignore spaces, `diff' does not
+cases. For example, when asked to ignore spaces, 'diff' does not
properly ignore a multibyte space character.
- Also, `diff' currently assumes that each byte is one column wide,
-and this assumption is incorrect in some locales, e.g., locales that
-use UTF-8 encoding. This causes problems with the `-y' or
-`--side-by-side' option of `diff'.
+ Also, 'diff' currently assumes that each byte is one column wide, and
+this assumption is incorrect in some locales, e.g., locales that use
+UTF-8 encoding. This causes problems with the '-y' or '--side-by-side'
+option of 'diff'.
These problems need to be fixed without unduly affecting the
performance of the utilities in unibyte environments.
The IBM GNU/Linux Technology Center Internationalization Team has
-proposed patches to support internationalized `diff'
+proposed patches to support internationalized 'diff'
(http://oss.software.ibm.com/developer/opensource/linux/patches/i18n/diffutils-2.7.2-i18n-0.1.patch.gz).
Unfortunately, these patches are incomplete and are to an older version
-of `diff', so more work needs to be done in this area.
+of 'diff', so more work needs to be done in this area.
\1f
File: diffutils.info-t, Node: Changing Structure, Next: Special Files, Prev: Internationalization, Up: Shortcomings
18.1.2 Handling Changes to the Directory Structure
--------------------------------------------------
-`diff' and `patch' do not handle some changes to directory structure.
-For example, suppose one directory tree contains a directory named `D'
+'diff' and 'patch' do not handle some changes to directory structure.
+For example, suppose one directory tree contains a directory named 'D'
with some subsidiary files, and another contains a file with the same
-name `D'. `diff -r' does not output enough information for `patch' to
+name 'D'. 'diff -r' does not output enough information for 'patch' to
transform the directory subtree into the file.
There should be a way to specify that a file has been removed without
having to include its entire contents in the patch file. There should
-also be a way to tell `patch' that a file was renamed, even if there is
-no way for `diff' to generate such information. There should be a way
-to tell `patch' that a file's time stamp has changed, even if its
+also be a way to tell 'patch' that a file was renamed, even if there is
+no way for 'diff' to generate such information. There should be a way
+to tell 'patch' that a file's time stamp has changed, even if its
contents have not changed.
- These problems can be fixed by extending the `diff' output format to
-represent changes in directory structure, and extending `patch' to
+ These problems can be fixed by extending the 'diff' output format to
+represent changes in directory structure, and extending 'patch' to
understand these extensions.
\1f
Some files are neither directories nor regular files: they are unusual
files like symbolic links, device special files, named pipes, and
-sockets. Currently, `diff' treats symbolic links as if they were the
-pointed-to files, except that a recursive `diff' reports an error if it
-detects infinite loops of symbolic links (e.g., symbolic links to
-`..'). `diff' treats other special files like regular files if they
-are specified at the top level, but simply reports their presence when
-comparing directories. This means that `patch' cannot represent
-changes to such files. For example, if you change which file a
-symbolic link points to, `diff' outputs the difference between the two
-files, instead of the change to the symbolic link.
-
- `diff' should optionally report changes to special files specially,
-and `patch' should be extended to understand these extensions.
+sockets. Currently, 'diff' treats symbolic links as if they were the
+pointed-to files, except that a recursive 'diff' reports an error if it
+detects infinite loops of symbolic links (e.g., symbolic links to '..').
+'diff' treats other special files like regular files if they are
+specified at the top level, but simply reports their presence when
+comparing directories. This means that 'patch' cannot represent changes
+to such files. For example, if you change which file a symbolic link
+points to, 'diff' outputs the difference between the two files, instead
+of the change to the symbolic link.
+
+ 'diff' should optionally report changes to special files specially,
+and 'patch' should be extended to understand these extensions.
\1f
File: diffutils.info-t, Node: Unusual File Names, Next: Time Stamp Order, Prev: Special Files, Up: Shortcomings
-------------------------------------------------
When a file name contains an unusual character like a newline or white
-space, `diff -r' generates a patch that `patch' cannot parse. The
-problem is with format of `diff' output, not just with `patch', because
-with odd enough file names one can cause `diff' to generate a patch
-that is syntactically correct but patches the wrong files. The format
-of `diff' output should be extended to handle all possible file names.
+space, 'diff -r' generates a patch that 'patch' cannot parse. The
+problem is with format of 'diff' output, not just with 'patch', because
+with odd enough file names one can cause 'diff' to generate a patch that
+is syntactically correct but patches the wrong files. The format of
+'diff' output should be extended to handle all possible file names.
\1f
File: diffutils.info-t, Node: Time Stamp Order, Next: Ignoring Changes, Prev: Unusual File Names, Up: Shortcomings
18.1.5 Outputting Diffs in Time Stamp Order
-------------------------------------------
-Applying `patch' to a multiple-file diff can result in files whose time
-stamps are out of order. GNU `patch' has options to restore the time
+Applying 'patch' to a multiple-file diff can result in files whose time
+stamps are out of order. GNU 'patch' has options to restore the time
stamps of the updated files (*note Patching Time Stamps::), but
sometimes it is useful to generate a patch that works even if the
recipient does not have GNU patch, or does not use these options. One
-way to do this would be to implement a `diff' option to output diffs in
+way to do this would be to implement a 'diff' option to output diffs in
time stamp order.
\1f
It would be nice to have a feature for specifying two strings, one in
FROM-FILE and one in TO-FILE, which should be considered to match.
-Thus, if the two strings are `foo' and `bar', then if two lines differ
-only in that `foo' in file 1 corresponds to `bar' in file 2, the lines
+Thus, if the two strings are 'foo' and 'bar', then if two lines differ
+only in that 'foo' in file 1 corresponds to 'bar' in file 2, the lines
are treated as identical.
It is not clear how general this feature can or should be, or what
When comparing two large directory structures, one of which was
originally copied from the other with time stamps preserved (e.g., with
-`cp -pR'), it would greatly improve performance if an option told
-`diff' to assume that two files with the same size and time stamps have
-the same content. *Note diff Performance::.
+'cp -pR'), it would greatly improve performance if an option told 'diff'
+to assume that two files with the same size and time stamps have the
+same content. *Note diff Performance::.
\1f
File: diffutils.info-t, Node: Bugs, Prev: Shortcomings, Up: Projects
18.2 Reporting Bugs
===================
-If you think you have found a bug in GNU `cmp', `diff', `diff3', or
-`sdiff', please report it by electronic mail to the GNU utilities bug
-report mailing list
-(http://mail.gnu.org/mailman/listinfo/bug-gnu-utils)
-<bug-gnu-utils@gnu.org>. Please send bug reports for GNU `patch' to
+If you think you have found a bug in GNU 'cmp', 'diff', 'diff3', or
+'sdiff', please report it by electronic mail to the GNU utilities bug
+report mailing list (http://mail.gnu.org/mailman/listinfo/bug-diffutils)
+<bug-diffutils@gnu.org>. Please send bug reports for GNU 'patch' to
<bug-patch@gnu.org>. Send as precise a description of the problem as
-you can, including the output of the `--version' option and sample
-input files that produce the bug, if applicable. If you have a
-nontrivial fix for the bug, please send it as well. If you have a
-patch, please send it too. It may simplify the maintainer's job if the
-patch is relative to a recent test release, which you can find in the
-directory `ftp://alpha.gnu.org/gnu/diffutils/'.
+you can, including the output of the '--version' option and sample input
+files that produce the bug, if applicable. If you have a nontrivial fix
+for the bug, please send it as well. If you have a patch, please send
+it too. It may simplify the maintainer's job if the patch is relative
+to a recent test release, which you can find in the directory
+<ftp://alpha.gnu.org/gnu/diffutils/>.
\1f
File: diffutils.info-t, Node: Copying This Manual, Next: Translations, Prev: Projects, Up: Top
Version 1.3, 3 November 2008
Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
- `http://fsf.org/'
+ <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
free program should come with manuals providing the same freedoms
that the software does. But this License is not limited to
software manuals; it can be used for any textual work, regardless
- of subject matter or whether it is published as a printed book.
- We recommend this License principally for works whose purpose is
+ of subject matter or whether it is published as a printed book. We
+ recommend this License principally for works whose purpose is
instruction or reference.
1. APPLICABILITY AND DEFINITIONS
This License applies to any manual or other work, in any medium,
- that contains a notice placed by the copyright holder saying it
- can be distributed under the terms of this License. Such a notice
+ that contains a notice placed by the copyright holder saying it can
+ be distributed under the terms of this License. Such a notice
grants a world-wide, royalty-free license, unlimited in duration,
to use that work under the conditions stated herein. The
"Document", below, refers to any such manual or work. Any member
- of the public is a licensee, and is addressed as "you". You
- accept the license if you copy, modify or distribute the work in a
- way requiring permission under copyright law.
+ of the public is a licensee, and is addressed as "you". You accept
+ the license if you copy, modify or distribute the work in a way
+ requiring permission under copyright law.
A "Modified Version" of the Document means any work containing the
Document or a portion of it, either copied verbatim, or with
regarding them.
The "Invariant Sections" are certain Secondary Sections whose
- titles are designated, as being those of Invariant Sections, in
- the notice that says that the Document is released under this
- License. If a section does not fit the above definition of
- Secondary then it is not allowed to be designated as Invariant.
- The Document may contain zero Invariant Sections. If the Document
- does not identify any Invariant Sections then there are none.
+ titles are designated, as being those of Invariant Sections, in the
+ notice that says that the Document is released under this License.
+ If a section does not fit the above definition of Secondary then it
+ is not allowed to be designated as Invariant. The Document may
+ contain zero Invariant Sections. If the Document does not identify
+ any Invariant Sections then there are none.
The "Cover Texts" are certain short passages of text that are
listed, as Front-Cover Texts or Back-Cover Texts, in the notice
A "Transparent" copy of the Document means a machine-readable copy,
represented in a format whose specification is available to the
general public, that is suitable for revising the document
- straightforwardly with generic text editors or (for images
- composed of pixels) generic paint programs or (for drawings) some
- widely available drawing editor, and that is suitable for input to
- text formatters or for automatic translation to a variety of
- formats suitable for input to text formatters. A copy made in an
- otherwise Transparent file format whose markup, or absence of
- markup, has been arranged to thwart or discourage subsequent
- modification by readers is not Transparent. An image format is
- not Transparent if used for any substantial amount of text. A
- copy that is not "Transparent" is called "Opaque".
+ straightforwardly with generic text editors or (for images composed
+ of pixels) generic paint programs or (for drawings) some widely
+ available drawing editor, and that is suitable for input to text
+ formatters or for automatic translation to a variety of formats
+ suitable for input to text formatters. A copy made in an otherwise
+ Transparent file format whose markup, or absence of markup, has
+ been arranged to thwart or discourage subsequent modification by
+ readers is not Transparent. An image format is not Transparent if
+ used for any substantial amount of text. A copy that is not
+ "Transparent" is called "Opaque".
Examples of suitable formats for Transparent copies include plain
ASCII without markup, Texinfo input format, LaTeX input format,
- SGML or XML using a publicly available DTD, and
- standard-conforming simple HTML, PostScript or PDF designed for
- human modification. Examples of transparent image formats include
- PNG, XCF and JPG. Opaque formats include proprietary formats that
- can be read and edited only by proprietary word processors, SGML or
- XML for which the DTD and/or processing tools are not generally
- available, and the machine-generated HTML, PostScript or PDF
- produced by some word processors for output purposes only.
+ SGML or XML using a publicly available DTD, and standard-conforming
+ simple HTML, PostScript or PDF designed for human modification.
+ Examples of transparent image formats include PNG, XCF and JPG.
+ Opaque formats include proprietary formats that can be read and
+ edited only by proprietary word processors, SGML or XML for which
+ the DTD and/or processing tools are not generally available, and
+ the machine-generated HTML, PostScript or PDF produced by some word
+ processors for output purposes only.
The "Title Page" means, for a printed book, the title page itself,
plus such following pages as are needed to hold, legibly, the
may not use technical measures to obstruct or control the reading
or further copying of the copies you make or distribute. However,
you may accept compensation in exchange for copies. If you
- distribute a large enough number of copies you must also follow
- the conditions in section 3.
+ distribute a large enough number of copies you must also follow the
+ conditions in section 3.
You may also lend copies, under the same conditions stated above,
and you may publicly display copies.
these Cover Texts: Front-Cover Texts on the front cover, and
Back-Cover Texts on the back cover. Both covers must also clearly
and legibly identify you as the publisher of these copies. The
- front cover must present the full title with all words of the
- title equally prominent and visible. You may add other material
- on the covers in addition. Copying with changes limited to the
- covers, as long as they preserve the title of the Document and
- satisfy these conditions, can be treated as verbatim copying in
- other respects.
+ front cover must present the full title with all words of the title
+ equally prominent and visible. You may add other material on the
+ covers in addition. Copying with changes limited to the covers, as
+ long as they preserve the title of the Document and satisfy these
+ conditions, can be treated as verbatim copying in other respects.
If the required texts for either cover are too voluminous to fit
legibly, you should put the first ones listed (as many as fit
adjacent pages.
If you publish or distribute Opaque copies of the Document
- numbering more than 100, you must either include a
- machine-readable Transparent copy along with each Opaque copy, or
- state in or with each Opaque copy a computer-network location from
- which the general network-using public has access to download
- using public-standard network protocols a complete Transparent
- copy of the Document, free of added material. If you use the
- latter option, you must take reasonably prudent steps, when you
- begin distribution of Opaque copies in quantity, to ensure that
- this Transparent copy will remain thus accessible at the stated
- location until at least one year after the last time you
- distribute an Opaque copy (directly or through your agents or
- retailers) of that edition to the public.
+ numbering more than 100, you must either include a machine-readable
+ Transparent copy along with each Opaque copy, or state in or with
+ each Opaque copy a computer-network location from which the general
+ network-using public has access to download using public-standard
+ network protocols a complete Transparent copy of the Document, free
+ of added material. If you use the latter option, you must take
+ reasonably prudent steps, when you begin distribution of Opaque
+ copies in quantity, to ensure that this Transparent copy will
+ remain thus accessible at the stated location until at least one
+ year after the last time you distribute an Opaque copy (directly or
+ through your agents or retailers) of that edition to the public.
It is requested, but not required, that you contact the authors of
- the Document well before redistributing any large number of
- copies, to give them a chance to provide you with an updated
- version of the Document.
+ the Document well before redistributing any large number of copies,
+ to give them a chance to provide you with an updated version of the
+ Document.
4. MODIFICATIONS
You may copy and distribute a Modified Version of the Document
under the conditions of sections 2 and 3 above, provided that you
- release the Modified Version under precisely this License, with
- the Modified Version filling the role of the Document, thus
- licensing distribution and modification of the Modified Version to
- whoever possesses a copy of it. In addition, you must do these
- things in the Modified Version:
+ release the Modified Version under precisely this License, with the
+ Modified Version filling the role of the Document, thus licensing
+ distribution and modification of the Modified Version to whoever
+ possesses a copy of it. In addition, you must do these things in
+ the Modified Version:
A. Use in the Title Page (and on the covers, if any) a title
- distinct from that of the Document, and from those of
- previous versions (which should, if there were any, be listed
- in the History section of the Document). You may use the
- same title as a previous version if the original publisher of
- that version gives permission.
+ distinct from that of the Document, and from those of previous
+ versions (which should, if there were any, be listed in the
+ History section of the Document). You may use the same title
+ as a previous version if the original publisher of that
+ version gives permission.
B. List on the Title Page, as authors, one or more persons or
entities responsible for authorship of the modifications in
I. Preserve the section Entitled "History", Preserve its Title,
and add to it an item stating at least the title, year, new
- authors, and publisher of the Modified Version as given on
- the Title Page. If there is no section Entitled "History" in
- the Document, create one stating the title, year, authors,
- and publisher of the Document as given on its Title Page,
- then add an item describing the Modified Version as stated in
- the previous sentence.
+ authors, and publisher of the Modified Version as given on the
+ Title Page. If there is no section Entitled "History" in the
+ Document, create one stating the title, year, authors, and
+ publisher of the Document as given on its Title Page, then add
+ an item describing the Modified Version as stated in the
+ previous sentence.
J. Preserve the network location, if any, given in the Document
for public access to a Transparent copy of the Document, and
likewise the network locations given in the Document for
- previous versions it was based on. These may be placed in
- the "History" section. You may omit a network location for a
- work that was published at least four years before the
- Document itself, or if the original publisher of the version
- it refers to gives permission.
+ previous versions it was based on. These may be placed in the
+ "History" section. You may omit a network location for a work
+ that was published at least four years before the Document
+ itself, or if the original publisher of the version it refers
+ to gives permission.
K. For any section Entitled "Acknowledgements" or "Dedications",
- Preserve the Title of the section, and preserve in the
- section all the substance and tone of each of the contributor
+ Preserve the Title of the section, and preserve in the section
+ all the substance and tone of each of the contributor
acknowledgements and/or dedications given therein.
- L. Preserve all the Invariant Sections of the Document,
- unaltered in their text and in their titles. Section numbers
- or the equivalent are not considered part of the section
- titles.
+ L. Preserve all the Invariant Sections of the Document, unaltered
+ in their text and in their titles. Section numbers or the
+ equivalent are not considered part of the section titles.
M. Delete any section Entitled "Endorsements". Such a section
may not be included in the Modified Version.
If the Modified Version includes new front-matter sections or
appendices that qualify as Secondary Sections and contain no
- material copied from the Document, you may at your option
- designate some or all of these sections as invariant. To do this,
- add their titles to the list of Invariant Sections in the Modified
- Version's license notice. These titles must be distinct from any
- other section titles.
+ material copied from the Document, you may at your option designate
+ some or all of these sections as invariant. To do this, add their
+ titles to the list of Invariant Sections in the Modified Version's
+ license notice. These titles must be distinct from any other
+ section titles.
You may add a section Entitled "Endorsements", provided it contains
nothing but endorsements of your Modified Version by various
definition of a standard.
You may add a passage of up to five words as a Front-Cover Text,
- and a passage of up to 25 words as a Back-Cover Text, to the end
- of the list of Cover Texts in the Modified Version. Only one
- passage of Front-Cover Text and one of Back-Cover Text may be
- added by (or through arrangements made by) any one entity. If the
- Document already includes a cover text for the same cover,
- previously added by you or by arrangement made by the same entity
- you are acting on behalf of, you may not add another; but you may
- replace the old one, on explicit permission from the previous
- publisher that added the old one.
+ and a passage of up to 25 words as a Back-Cover Text, to the end of
+ the list of Cover Texts in the Modified Version. Only one passage
+ of Front-Cover Text and one of Back-Cover Text may be added by (or
+ through arrangements made by) any one entity. If the Document
+ already includes a cover text for the same cover, previously added
+ by you or by arrangement made by the same entity you are acting on
+ behalf of, you may not add another; but you may replace the old
+ one, on explicit permission from the previous publisher that added
+ the old one.
The author(s) and publisher(s) of the Document do not by this
License give permission to use their names for publicity for or to
You may combine the Document with other documents released under
this License, under the terms defined in section 4 above for
- modified versions, provided that you include in the combination
- all of the Invariant Sections of all of the original documents,
+ modified versions, provided that you include in the combination all
+ of the Invariant Sections of all of the original documents,
unmodified, and list them all as Invariant Sections of your
combined work in its license notice, and that you preserve all
their Warranty Disclaimers.
documents released under this License, and replace the individual
copies of this License in the various documents with a single copy
that is included in the collection, provided that you follow the
- rules of this License for verbatim copying of each of the
- documents in all other respects.
+ rules of this License for verbatim copying of each of the documents
+ in all other respects.
You may extract a single document from such a collection, and
distribute it individually under this License, provided you insert
- a copy of this License into the extracted document, and follow
- this License in all other respects regarding verbatim copying of
- that document.
+ a copy of this License into the extracted document, and follow this
+ License in all other respects regarding verbatim copying of that
+ document.
7. AGGREGATION WITH INDEPENDENT WORKS
A compilation of the Document or its derivatives with other
- separate and independent documents or works, in or on a volume of
- a storage or distribution medium, is called an "aggregate" if the
+ separate and independent documents or works, in or on a volume of a
+ storage or distribution medium, is called an "aggregate" if the
copyright resulting from the compilation is not used to limit the
legal rights of the compilation's users beyond what the individual
works permit. When the Document is included in an aggregate, this
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
- provisionally, unless and until the copyright holder explicitly
- and finally terminates your license, and (b) permanently, if the
+ provisionally, unless and until the copyright holder explicitly and
+ finally terminates your license, and (b) permanently, if the
copyright holder fails to notify you of the violation by some
reasonable means prior to 60 days after the cessation.
after your receipt of the notice.
Termination of your rights under this section does not terminate
- the licenses of parties who have received copies or rights from
- you under this License. If your rights have been terminated and
- not permanently reinstated, receipt of a copy of some or all of
- the same material does not give you any rights to use it.
+ the licenses of parties who have received copies or rights from you
+ under this License. If your rights have been terminated and not
+ permanently reinstated, receipt of a copy of some or all of the
+ same material does not give you any rights to use it.
- 10. FUTURE REVISIONS OF THIS LICENSE
+ 10. FUTURE REVISIONS OF THIS LICENSE
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
- `http://www.gnu.org/copyleft/'.
+ <http://www.gnu.org/copyleft/>.
Each version of the License is given a distinguishing version
number. If the Document specifies that a particular numbered
version of this License "or any later version" applies to it, you
have the option of following the terms and conditions either of
that specified version or of any later version that has been
- published (not as a draft) by the Free Software Foundation. If
- the Document does not specify a version number of this License,
- you may choose any version ever published (not as a draft) by the
- Free Software Foundation. If the Document specifies that a proxy
- can decide which future versions of this License can be used, that
+ published (not as a draft) by the Free Software Foundation. If the
+ Document does not specify a version number of this License, you may
+ choose any version ever published (not as a draft) by the Free
+ Software Foundation. If the Document specifies that a proxy can
+ decide which future versions of this License can be used, that
proxy's public statement of acceptance of a version permanently
authorizes you to choose that version for the Document.
- 11. RELICENSING
+ 11. RELICENSING
"Massive Multiauthor Collaboration Site" (or "MMC Site") means any
World Wide Web server that publishes copyrightable works and also
site under CC-BY-SA on the same site at any time before August 1,
2009, provided the MMC is eligible for relicensing.
-
ADDENDUM: How to use this License for your documents
====================================================
situation.
If your document contains nontrivial examples of program code, we
-recommend releasing these examples in parallel under your choice of
-free software license, such as the GNU General Public License, to
-permit their use in free software.
+recommend releasing these examples in parallel under your choice of free
+software license, such as the GNU General Public License, to permit
+their use in free software.
\1f
File: diffutils.info-t, Node: Translations, Next: Index, Prev: Copying This Manual, Up: Top
Nishio Futoshi of the GNUjdoc project has prepared a Japanese
translation of this manual. Its most recent version can be found at
-`http://openlab.ring.gr.jp/gnujdoc/cvsweb/cvsweb.cgi/gnujdoc/'.
+<http://openlab.ring.gr.jp/gnujdoc/cvsweb/cvsweb.cgi/gnujdoc/>.
\1f
File: diffutils.info-t, Node: Index, Prev: Translations, Up: Top
* < output format: Normal. (line 6)
* <<<<<<< for marking conflicts: Marking Conflicts. (line 6)
* _POSIX2_VERSION: Standards conformance.
- (line 24)
+ (line 23)
+* ad capability: diff Options. (line 179)
* aligning tab stops: Tabs. (line 6)
* alternate file names: Alternate Names. (line 6)
+* always color option: diff Options. (line 43)
+* auto color option: diff Options. (line 42)
* backup file names: Backup Names. (line 6)
* backup file strategy: Backups. (line 6)
* binary file diff: Binary. (line 6)
* ClearCase: Revision Control. (line 6)
* cmp invocation: Invoking cmp. (line 6)
* cmp options: cmp Options. (line 6)
+* color, distinguishing different context: diff Options. (line 37)
* columnar output: Side by Side. (line 6)
* common mistakes with patches: Avoiding Common Mistakes.
(line 6)
* context output format: Context. (line 6)
* creating files: Creating and Removing.
(line 6)
+* de capability: diff Options. (line 184)
* diagnostics from patch: patch Messages. (line 6)
* diff invocation: Invoking diff. (line 6)
* diff merging: Interactive Merging. (line 6)
* EDITOR: Merge Commands. (line 50)
* empty files, removing: Creating and Removing.
(line 6)
-* exabyte, definition of: cmp Options. (line 109)
-* exbibyte, definition of: cmp Options. (line 113)
+* exabyte, definition of: cmp Options. (line 99)
+* exbibyte, definition of: cmp Options. (line 102)
* file name alternates: Alternate Names. (line 6)
* file names with unusual characters: Unusual File Names. (line 6)
* format of diff output: Output Formats. (line 6)
* full lines: Incomplete Lines. (line 6)
* function headings, C: C Function Headings. (line 6)
* fuzz factor when patching: Inexact. (line 6)
-* gibibyte, definition of: cmp Options. (line 92)
-* gigabyte, definition of: cmp Options. (line 88)
+* gibibyte, definition of: cmp Options. (line 87)
+* gigabyte, definition of: cmp Options. (line 84)
+* hd capability: diff Options. (line 189)
* headings: Sections. (line 6)
* hunks: Hunks. (line 6)
* hunks for diff3: diff3 Hunks. (line 6)
* invoking sdiff: Invoking sdiff. (line 6)
* keyboard input to patch: patch and Keyboard Input.
(line 6)
-* kibibyte, definition of: cmp Options. (line 76)
+* kibibyte, definition of: cmp Options. (line 75)
* kilobyte, definition of: cmp Options. (line 71)
* LC_COLLATE: Comparing Directories.
(line 6)
-* LC_NUMERIC: Line Group Formats. (line 144)
+* LC_NUMERIC: Line Group Formats. (line 143)
* LC_TIME: Detailed Context. (line 12)
* line formats: Line Formats. (line 6)
* line group formats: Line Group Formats. (line 6)
-* mebibyte, definition of: cmp Options. (line 85)
-* megabyte, definition of: cmp Options. (line 81)
+* ln capability: diff Options. (line 194)
+* mebibyte, definition of: cmp Options. (line 82)
+* megabyte, definition of: cmp Options. (line 79)
* merge commands: Merge Commands. (line 6)
* merged diff3 format: Bypassing ed. (line 6)
* merged output format: If-then-else. (line 6)
(line 6)
* multiple patches: Multiple Patches. (line 6)
* newline treatment by diff: Incomplete Lines. (line 6)
+* none color option: diff Options. (line 40)
* normal output format: Normal. (line 6)
* options for cmp: cmp Options. (line 6)
* options for diff: diff Options. (line 6)
(line 6)
* patch, common mistakes: Avoiding Common Mistakes.
(line 6)
-* PATCH_GET: Revision Control. (line 13)
-* PATCH_VERSION_CONTROL: Backup Names. (line 21)
* patches, shrinking: Generating Smaller Patches.
(line 6)
* patching directories: patch Directories. (line 6)
-* pebibyte, definition of: cmp Options. (line 106)
+* PATCH_GET: Revision Control. (line 13)
+* PATCH_VERSION_CONTROL: Backup Names. (line 21)
+* pebibyte, definition of: cmp Options. (line 97)
* performance of diff: diff Performance. (line 6)
-* petabyte, definition of: cmp Options. (line 102)
+* petabyte, definition of: cmp Options. (line 94)
+* POSIX: patch and POSIX. (line 6)
* POSIX <1>: Standards conformance.
(line 6)
-* POSIX: patch and POSIX. (line 6)
+* POSIXLY_CORRECT: patch and POSIX. (line 6)
* POSIXLY_CORRECT <1>: Standards conformance.
(line 6)
-* POSIXLY_CORRECT: patch and POSIX. (line 6)
* projects for directories: Shortcomings. (line 6)
* quoting style: patch Quoting Style. (line 6)
-* QUOTING_STYLE: patch Quoting Style. (line 30)
+* QUOTING_STYLE: patch Quoting Style. (line 26)
* RCS: Revision Control. (line 6)
* RCS script output format: RCS. (line 6)
* regular expression matching headings: Specified Headings. (line 6)
(line 6)
* tab and blank difference suppression: White Space. (line 6)
* tab stop alignment: Tabs. (line 6)
-* tebibyte, definition of: cmp Options. (line 99)
-* terabyte, definition of: cmp Options. (line 95)
+* tebibyte, definition of: cmp Options. (line 92)
+* terabyte, definition of: cmp Options. (line 89)
+* terminal, using color iff: diff Options. (line 42)
* testing patch: Dry Runs. (line 6)
* text versus binary diff: Binary. (line 6)
* time stamp format, context diffs: Detailed Context. (line 12)
* verbose messages from patch: More or Fewer Messages.
(line 6)
* version control: Revision Control. (line 6)
-* VERSION_CONTROL <1>: Backup Names. (line 21)
* VERSION_CONTROL: Revision Control. (line 22)
+* VERSION_CONTROL <1>: Backup Names. (line 21)
* white space in patches: Changed White Space. (line 6)
-* yottabyte, definition of: cmp Options. (line 124)
-* zettabyte, definition of: cmp Options. (line 116)
+* yottabyte, definition of: cmp Options. (line 110)
+* zettabyte, definition of: cmp Options. (line 104)
\1f
Tag Table:
-Node: Top\7f1434
-Node: Overview\7f3648
-Node: Comparison\7f7279
-Node: Hunks\7f9984
-Node: White Space\7f11428
-Node: Blank Lines\7f13269
-Node: Specified Lines\7f14263
-Node: Case Folding\7f15391
-Node: Brief\7f15810
-Node: Binary\7f17135
-Node: Output Formats\7f21222
-Node: Sample diff Input\7f21949
-Node: Context\7f23450
-Node: Context Format\7f25029
-Node: Example Context\7f25823
-Node: Less Context\7f27332
-Node: Detailed Context\7f28523
-Node: Unified Format\7f30723
-Node: Example Unified\7f31522
-Node: Detailed Unified\7f32562
-Node: Sections\7f34207
-Node: Specified Headings\7f34968
-Node: C Function Headings\7f36521
-Node: Alternate Names\7f37368
-Node: Side by Side\7f38284
-Node: Side by Side Format\7f40436
-Node: Example Side by Side\7f41339
-Node: Normal\7f42681
-Node: Example Normal\7f43683
-Node: Detailed Normal\7f44421
-Node: Scripts\7f46162
-Node: ed Scripts\7f46569
-Node: Example ed\7f47777
-Node: Detailed ed\7f48229
-Node: Forward ed\7f49990
-Node: RCS\7f50768
-Node: If-then-else\7f51985
-Node: Line Group Formats\7f53665
-Node: Line Formats\7f59543
-Node: Example If-then-else\7f62815
-Node: Detailed If-then-else\7f63896
-Node: Incomplete Lines\7f65782
-Node: Comparing Directories\7f67422
-Node: Adjusting Output\7f71856
-Node: Tabs\7f72365
-Node: Trailing Blanks\7f73981
-Node: Pagination\7f75209
-Node: diff Performance\7f75679
-Node: Comparing Three Files\7f78768
-Node: Sample diff3 Input\7f79648
-Node: Example diff3 Normal\7f80598
-Node: Detailed diff3 Normal\7f81660
-Node: diff3 Hunks\7f83450
-Node: diff3 Merging\7f84719
-Node: Which Changes\7f86965
-Node: Marking Conflicts\7f88367
-Node: Bypassing ed\7f90825
-Node: Merging Incomplete Lines\7f92170
-Node: Saving the Changed File\7f92898
-Node: Interactive Merging\7f93516
-Node: sdiff Option Summary\7f94227
-Node: Merge Commands\7f95432
-Node: Merging with patch\7f96723
-Node: patch Input\7f99097
-Node: Revision Control\7f99781
-Node: Imperfect\7f100953
-Node: Changed White Space\7f102103
-Node: Reversed Patches\7f102902
-Node: Inexact\7f104368
-Node: Dry Runs\7f107928
-Node: Creating and Removing\7f108794
-Node: Patching Time Stamps\7f109845
-Node: Multiple Patches\7f112046
-Node: patch Directories\7f114711
-Node: Backups\7f116338
-Node: Backup Names\7f117405
-Ref: Backup Names-Footnote-1\7f120374
-Node: Reject Names\7f120501
-Node: patch Messages\7f121092
-Node: More or Fewer Messages\7f122154
-Node: patch and Keyboard Input\7f122787
-Node: patch Quoting Style\7f123818
-Node: patch and POSIX\7f124970
-Node: patch and Tradition\7f125812
-Node: Making Patches\7f129270
-Node: Tips for Patch Producers\7f130098
-Node: Tips for Patch Consumers\7f131356
-Node: Avoiding Common Mistakes\7f131995
-Node: Generating Smaller Patches\7f134522
-Node: Invoking cmp\7f136285
-Node: cmp Options\7f137710
-Node: Invoking diff\7f141373
-Node: diff Options\7f143231
-Node: Invoking diff3\7f151877
-Node: diff3 Options\7f152517
-Node: Invoking patch\7f155552
-Node: patch Options\7f156762
-Node: Invoking sdiff\7f161991
-Node: sdiff Options\7f163136
-Node: Standards conformance\7f166109
-Node: Projects\7f167857
-Node: Shortcomings\7f168570
-Node: Internationalization\7f169674
-Node: Changing Structure\7f170842
-Node: Special Files\7f171948
-Node: Unusual File Names\7f173062
-Node: Time Stamp Order\7f173703
-Node: Ignoring Changes\7f174348
-Node: Speedups\7f175120
-Node: Bugs\7f175586
-Node: Copying This Manual\7f176441
-Node: Translations\7f201582
-Node: Index\7f201956
+Node: Top\7f1432
+Node: Overview\7f3646
+Node: Comparison\7f7200
+Node: Hunks\7f10144
+Node: White Space\7f11587
+Node: Blank Lines\7f13428
+Node: Specified Lines\7f14419
+Node: Case Folding\7f15547
+Node: Brief\7f15966
+Node: Binary\7f17291
+Node: Output Formats\7f21090
+Node: Sample diff Input\7f21817
+Node: Context\7f23318
+Node: Context Format\7f24897
+Node: Example Context\7f25691
+Node: Less Context\7f27201
+Node: Detailed Context\7f28393
+Node: Unified Format\7f30593
+Node: Example Unified\7f31392
+Node: Detailed Unified\7f32432
+Node: Sections\7f34076
+Node: Specified Headings\7f34837
+Node: C Function Headings\7f36388
+Node: Alternate Names\7f37236
+Node: Side by Side\7f38151
+Node: Side by Side Format\7f40303
+Node: Example Side by Side\7f41207
+Node: Normal\7f42549
+Node: Example Normal\7f43552
+Node: Detailed Normal\7f44291
+Node: Scripts\7f46032
+Node: ed Scripts\7f46439
+Node: Example ed\7f47647
+Node: Detailed ed\7f48099
+Node: Forward ed\7f49860
+Node: RCS\7f50638
+Node: If-then-else\7f51856
+Node: Line Group Formats\7f53536
+Node: Line Formats\7f59419
+Node: Example If-then-else\7f62690
+Node: Detailed If-then-else\7f63771
+Node: Incomplete Lines\7f65658
+Node: Comparing Directories\7f67296
+Node: Adjusting Output\7f71590
+Node: Tabs\7f72099
+Node: Trailing Blanks\7f73715
+Node: Pagination\7f74942
+Node: diff Performance\7f75412
+Node: Comparing Three Files\7f78503
+Node: Sample diff3 Input\7f79383
+Node: Example diff3 Normal\7f80333
+Node: Detailed diff3 Normal\7f81399
+Node: diff3 Hunks\7f83189
+Node: diff3 Merging\7f84457
+Node: Which Changes\7f86704
+Node: Marking Conflicts\7f88106
+Node: Bypassing ed\7f90563
+Node: Merging Incomplete Lines\7f91908
+Node: Saving the Changed File\7f92636
+Node: Interactive Merging\7f93254
+Node: sdiff Option Summary\7f93965
+Node: Merge Commands\7f95170
+Node: Merging with patch\7f96461
+Node: patch Input\7f98832
+Node: Revision Control\7f99516
+Node: Imperfect\7f100689
+Node: Changed White Space\7f101840
+Node: Reversed Patches\7f102639
+Node: Inexact\7f104105
+Node: Dry Runs\7f107663
+Node: Creating and Removing\7f108529
+Node: Patching Time Stamps\7f109581
+Node: Multiple Patches\7f111782
+Node: patch Directories\7f114446
+Node: Backups\7f116072
+Node: Backup Names\7f117139
+Ref: Backup Names-Footnote-1\7f120096
+Node: Reject Names\7f120223
+Node: patch Messages\7f120814
+Node: More or Fewer Messages\7f121876
+Node: patch and Keyboard Input\7f122509
+Node: patch Quoting Style\7f123540
+Node: patch and POSIX\7f124688
+Node: patch and Tradition\7f125529
+Node: Making Patches\7f128953
+Node: Tips for Patch Producers\7f129781
+Node: Tips for Patch Consumers\7f131039
+Node: Avoiding Common Mistakes\7f131678
+Node: Generating Smaller Patches\7f134205
+Node: Invoking cmp\7f135967
+Node: cmp Options\7f137391
+Node: Invoking diff\7f141037
+Node: diff Options\7f142658
+Node: Invoking diff3\7f152509
+Node: diff3 Options\7f153149
+Node: Invoking patch\7f156184
+Node: patch Options\7f157394
+Node: Invoking sdiff\7f162623
+Node: sdiff Options\7f163767
+Node: Standards conformance\7f166741
+Node: Projects\7f168489
+Node: Shortcomings\7f169203
+Node: Internationalization\7f170307
+Node: Changing Structure\7f171475
+Node: Special Files\7f172581
+Node: Unusual File Names\7f173694
+Node: Time Stamp Order\7f174335
+Node: Ignoring Changes\7f174980
+Node: Speedups\7f175752
+Node: Bugs\7f176218
+Node: Copying This Manual\7f177073
+Node: Translations\7f202194
+Node: Index\7f202568
\1f
End Tag Table
differences between files and the @acronym{GNU} @command{patch} command for
using their output to update files.
-Copyright @copyright{} 1992-1994, 1998, 2001-2002, 2004, 2006, 2009-2013 Free
+Copyright @copyright{} 1992-1994, 1998, 2001-2002, 2004, 2006, 2009-2016 Free
Software Foundation, Inc.
@quotation
David Hayes, Richard Stallman, and Len Tower. Wayne Davison designed and
implemented the unified output format. The basic algorithm is described
by Eugene W. Myers in ``An O(ND) Difference Algorithm and its Variations'',
-@cite{Algorithmica} Vol.@: 1 No.@: 2, 1986, pp.@: 251--266; and in ``A File
+@cite{Algorithmica} Vol.@: 1, 1986, pp.@: 251--266,
+@url{http://dx.doi.org/10.1007/BF01840446}; and in ``A File
Comparison Program'', Webb Miller and Eugene W. Myers,
-@cite{Software---Practice and Experience} Vol.@: 15 No.@: 11, 1985,
-pp.@: 1025--1040.
+@cite{Software---Practice and Experience} Vol.@: 15, 1985,
+pp.@: 1025--1040,
+@url{http://dx.doi.org/10.1002/spe.4380151102}.
@c From: "Gene Myers" <gene@cs.arizona.edu>
@c They are about the same basic algorithm; the Algorithmica
@c paper gives a rigorous treatment and the sub-algorithm for
@c delivering scripts and should be the primary reference, but
@c both should be mentioned.
-The algorithm was independently discovered as described by E. Ukkonen in
+The algorithm was independently discovered as described by Esko Ukkonen in
``Algorithms for Approximate String Matching'',
-@cite{Information and Control} Vol.@: 64, 1985, pp.@: 100--118.
+@cite{Information and Control} Vol.@: 64, 1985, pp.@: 100--118,
+@url{http://dx.doi.org/10.1016/S0019-9958(85)80046-2}.
@c From: "Gene Myers" <gene@cs.arizona.edu>
@c Date: Wed, 29 Sep 1993 08:27:55 MST
@c Ukkonen should be given credit for also discovering the algorithm used
@c in GNU diff.
-Unless the @option{--minimal} option is used, @command{diff} uses a
-heuristic by Paul Eggert that limits the cost to @math{O(N^1.5 log N)}
-at the price of producing suboptimal output for large inputs with many
-differences. Related algorithms are surveyed by Alfred V. Aho in
+Related algorithms are surveyed by Alfred V. Aho in
section 6.3 of ``Algorithms for Finding Patterns in Strings'',
@cite{Handbook of Theoretical Computer Science} (Jan Van Leeuwen,
ed.), Vol.@: A, @cite{Algorithms and Complexity}, Elsevier/MIT Press,
Its output is designed to make it easy to inspect two different sets of
changes to the same file.
+These commands compare input files without necessarily reading them.
+For example, if @command{diff} is asked simply to report whether two
+files differ, and it discovers that the files have different sizes, it
+need not read them to do its job.
+
@menu
* Hunks:: Groups of differing lines.
* White Space:: Suppressing differences in white space.
if the summary output format had been selected (@pxref{Brief}), and
reports only that the binary files are different. This is because line
by line comparisons are usually not meaningful for binary files.
+This does not count as trouble, even though the resulting output does
+not capture all the differences.
@command{diff} determines whether a file is text or binary by checking the
first few bytes in the file; the exact number of bytes is system
(but not how). Use the @option{--brief} (@option{-q}) option for
this.
-Normally, differing binary files count as trouble because the
-resulting @command{diff} output does not capture all the differences.
-This trouble causes @command{diff} to exit with status 2. However,
-this trouble cannot occur with the @option{--text} (@option{-a})
-option, or with the @option{--brief} (@option{-q}) option, as these
-options both cause @command{diff} to generate a form of output that
-represents differences as requested.
-
In operating systems that distinguish between text and binary files,
@command{diff} normally reads and writes all data as text. Use the
@option{--binary} option to force @command{diff} to read and write binary
effect, case is ignored when excluding file names matching the
specified patterns.
-To avoid that @command{diff} follows symbolic links, use the
+To tell @command{diff} not to follow a symbolic link, use the
@c later: @option{--no-dereference} (@option{-P}).
-@option{--no-dereference}.
-When this option is in use,
-symbolic links will be treated like a special kind of files, rather than
-comparing the target of each symbolic link.
+@option{--no-dereference} option.
@node Adjusting Output
@chapter Making @command{diff} Output Prettier
options to @command{sdiff}.
Another way to merge files interactively is to use the Emacs Lisp
-package @command{emerge}. @xref{emerge, , emerge, emacs, The
+package @command{emerge}. @xref{Emerge, , Emerge, emacs, The
@acronym{GNU} Emacs Manual}, for more information.
@menu
In the simplest case, two file names @var{from-file} and
@var{to-file} are given, and @command{diff} compares the contents of
@var{from-file} and @var{to-file}. A file name of @file{-} stands for
-text read from the standard input. As a special case, @samp{diff - -}
-compares a copy of standard input to itself.
+the standard input.
If one file is a directory and the other is not, @command{diff} compares
the file in the directory whose name is that of the non-directory.
they begin with @samp{-}.
An exit status of 0 means no differences were found, 1 means some
-differences were found, and 2 means trouble. Normally, differing
-binary files count as trouble, but this can be altered by using the
-@option{--text} (@option{-a}) option, or the @option{-q} or
-@option{--brief} option.
+differences were found, and 2 means trouble.
@menu
* diff Options:: Summary of options to @command{diff}.
Use the context output format, showing three lines of context.
@xref{Context Format}.
+@item --color [=@var{when}]
+@cindex color, distinguishing different context
+Specify whether to use color for distinguishing different contexts,
+like header, added or removed lines. @var{when} may be omitted, or
+one of:
+@itemize @bullet
+@item none
+@vindex none @r{color option}
+Do not use color at all. This is the default when no --color option
+is specified.
+@item auto
+@vindex auto @r{color option}
+@cindex terminal, using color iff
+Use color only if standard output is a terminal.
+@item always
+@vindex always @r{color option}
+Always use color.
+@end itemize
+Specifying @option{--color} and no @var{when} is equivalent to
+@option{--color=auto}.
+
@item -C @var{lines}
@itemx --context@r{[}=@var{lines}@r{]}
Use the context output format, showing @var{lines} (an integer) lines of
@item --no-dereference
Act on symbolic links themselves instead of what they point to.
+Two symbolic links are deemed equal only when each points to
+precisely the same name.
@item --old-group-format=@var{format}
Use @var{format} to output a group of lines taken from just the first
@itemx --show-c-function
Show which C function each change is in. @xref{C Function Headings}.
+@item --palette=@var{palette}
+Specify what color palette to use when colored output is enabled. It
+defaults to @samp{rs=0:hd=1:ad=32:de=31:ln=36} for red deleted lines,
+green added lines, cyan line numbers, bold header.
+
+Supported capabilities are as follows.
+
+@table @code
+@item ad=32
+@vindex ad @r{capability}
+
+SGR substring for added lines.
+The default is green foreground.
+
+@item de=31
+@vindex de @r{capability}
+
+SGR substring for deleted lines.
+The default is red foreground.
+
+@item hd=1
+@vindex hd @r{capability}
+
+SGR substring for chunk header.
+The default is bold foreground.
+
+@item ln=36
+@vindex ln @r{capability}
+
+SGR substring for line numbers.
+The default is cyan foreground.
+@end table
+
+
@item -q
@itemx --brief
Report only whether the files differ, not the details of the
If you think you have found a bug in @acronym{GNU} @command{cmp},
@command{diff}, @command{diff3}, or @command{sdiff}, please report it
by electronic mail to the
-@uref{http://mail.gnu.org/mailman/listinfo/bug-gnu-utils,GNU utilities
-bug report mailing list} @email{bug-gnu-utils@@gnu.org}. Please send
+@uref{http://mail.gnu.org/mailman/listinfo/bug-diffutils,GNU utilities
+bug report mailing list} @email{bug-diffutils@@gnu.org}. Please send
bug reports for @acronym{GNU} @command{patch} to
@email{bug-patch@@gnu.org}. Send as precise a description of the
problem as you can, including the output of the @option{--version}
DTD, and standard-conforming simple HTML,
PostScript or PDF designed for human modification. Examples
of transparent image formats include PNG, XCF and
-JPG. Opaque formats include proprietary formats that can be
+JPG@. Opaque formats include proprietary formats that can be
read and edited only by proprietary word processors, SGML or
XML for which the DTD and/or processing tools are
not generally available, and the machine-generated HTML,
-@set UPDATED 23 March 2013
-@set UPDATED-MONTH March 2013
-@set EDITION 3.3
-@set VERSION 3.3
+@set UPDATED 4 August 2016
+@set UPDATED-MONTH August 2016
+@set EDITION 3.4
+@set VERSION 3.4
-@set UPDATED 23 March 2013
-@set UPDATED-MONTH March 2013
-@set EDITION 3.3
-@set VERSION 3.3
+@set UPDATED 4 August 2016
+@set UPDATED-MONTH August 2016
+@set EDITION 3.4
+@set VERSION 3.4
#! /bin/sh
# Wrapper around gettext for programs using the msgid convention.
-# Copyright (C) 1998, 2001, 2004, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 1998, 2001, 2004, 2009-2013, 2015-2016 Free Software
+# Foundation, Inc.
# Written by Paul Eggert <eggert@twinsun.com>.
-# Makefile.in generated by automake 1.13a from Makefile.am.
+# Makefile.in generated by automake 1.99a from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+# Copyright (C) 1994-2015 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@SET_MAKE@
-# Copyright (C) 2002-2013 Free Software Foundation, Inc.
+# Copyright (C) 2002-2016 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
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = { \
+ if test -z '$(MAKELEVEL)'; then \
+ false; \
+ elif test -n '$(MAKE_HOST)'; then \
+ true; \
+ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+ true; \
+ else \
+ false; \
+ fi; \
+}
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-DIST_COMMON = $(srcdir)/gnulib.mk $(srcdir)/Makefile.in \
- $(srcdir)/Makefile.am $(top_srcdir)/build-aux/depcomp \
- $(noinst_HEADERS) $(top_srcdir)/build-aux/test-driver
-TESTS = test-alloca-opt$(EXEEXT) test-areadlink$(EXEEXT) \
- test-argmatch$(EXEEXT) test-binary-io.sh \
+TESTS = test-accept$(EXEEXT) test-alloca-opt$(EXEEXT) \
+ test-areadlink$(EXEEXT) test-argmatch$(EXEEXT) \
+ test-arpa_inet$(EXEEXT) test-binary-io.sh test-bind$(EXEEXT) \
test-bitrotate$(EXEEXT) test-btowc1.sh test-btowc2.sh \
test-c-ctype$(EXEEXT) test-c-stack.sh test-c-stack2.sh \
- test-c-strcase.sh test-close$(EXEEXT) test-dirname$(EXEEXT) \
- test-dup2$(EXEEXT) test-environ$(EXEEXT) test-errno$(EXEEXT) \
- test-exclude1.sh test-exclude2.sh test-exclude3.sh \
- test-exclude4.sh test-exclude5.sh test-exclude6.sh \
- test-exclude7.sh test-exclude8.sh test-fcntl-h$(EXEEXT) \
- test-fcntl$(EXEEXT) test-fdopen$(EXEEXT) test-fgetc$(EXEEXT) \
+ test-c-strcase.sh test-close$(EXEEXT) test-connect$(EXEEXT) \
+ test-ctype$(EXEEXT) test-dirname$(EXEEXT) test-dup2$(EXEEXT) \
+ test-environ$(EXEEXT) test-errno$(EXEEXT) test-exclude1.sh \
+ test-exclude2.sh test-exclude3.sh test-exclude4.sh \
+ test-exclude5.sh test-exclude6.sh test-exclude7.sh \
+ test-exclude8.sh test-fcntl-h$(EXEEXT) test-fcntl$(EXEEXT) \
+ test-fdopen$(EXEEXT) test-fgetc$(EXEEXT) \
test-filenamecat$(EXEEXT) test-float$(EXEEXT) \
test-fnmatch$(EXEEXT) test-fputc$(EXEEXT) test-fread$(EXEEXT) \
test-freopen-safer$(EXEEXT) test-freopen$(EXEEXT) \
- test-fstat$(EXEEXT) test-fwrite$(EXEEXT) \
+ test-fstat$(EXEEXT) test-ftruncate.sh test-fwrite$(EXEEXT) \
test-getcwd-lgpl$(EXEEXT) test-getdtablesize$(EXEEXT) \
test-getopt$(EXEEXT) test-gettimeofday$(EXEEXT) \
test-hash$(EXEEXT) test-iconv-h$(EXEEXT) test-iconv$(EXEEXT) \
- test-ignore-value$(EXEEXT) test-intprops$(EXEEXT) \
- test-inttostr$(EXEEXT) test-inttypes$(EXEEXT) \
- test-iswblank$(EXEEXT) test-langinfo$(EXEEXT) \
+ test-ignore-value$(EXEEXT) test-inet_pton$(EXEEXT) \
+ test-intprops$(EXEEXT) test-inttostr$(EXEEXT) \
+ test-inttypes$(EXEEXT) test-ioctl$(EXEEXT) \
+ test-isblank$(EXEEXT) test-iswblank$(EXEEXT) \
+ test-langinfo$(EXEEXT) test-listen$(EXEEXT) \
test-locale$(EXEEXT) test-localeconv$(EXEEXT) \
- test-lstat$(EXEEXT) test-malloc-gnu$(EXEEXT) \
- test-malloca$(EXEEXT) test-mbrtowc1.sh test-mbrtowc2.sh \
- test-mbrtowc3.sh test-mbrtowc4.sh test-mbrtowc-w32-1.sh \
- test-mbrtowc-w32-2.sh test-mbrtowc-w32-3.sh \
- test-mbrtowc-w32-4.sh test-mbrtowc-w32-5.sh test-mbscasecmp.sh \
- test-mbsinit.sh test-mbsrtowcs1.sh test-mbsrtowcs2.sh \
- test-mbsrtowcs3.sh test-mbsrtowcs4.sh test-mbsstr1$(EXEEXT) \
- test-mbsstr2.sh test-mbsstr3.sh test-memchr$(EXEEXT) \
- test-nl_langinfo.sh test-open$(EXEEXT) test-pathmax$(EXEEXT) \
+ test-lstat$(EXEEXT) test-malloca$(EXEEXT) test-mbrtowc1.sh \
+ test-mbrtowc2.sh test-mbrtowc3.sh test-mbrtowc4.sh \
+ test-mbrtowc5.sh test-mbrtowc-w32-1.sh test-mbrtowc-w32-2.sh \
+ test-mbrtowc-w32-3.sh test-mbrtowc-w32-4.sh \
+ test-mbrtowc-w32-5.sh test-mbscasecmp.sh test-mbsinit.sh \
+ test-mbsrtowcs1.sh test-mbsrtowcs2.sh test-mbsrtowcs3.sh \
+ test-mbsrtowcs4.sh test-mbsstr1$(EXEEXT) test-mbsstr2.sh \
+ test-mbsstr3.sh test-memchr$(EXEEXT) test-nanosleep$(EXEEXT) \
+ test-netinet_in$(EXEEXT) test-nl_langinfo.sh \
+ test-open$(EXEEXT) test-pathmax$(EXEEXT) test-perror.sh \
+ test-perror2$(EXEEXT) test-pipe$(EXEEXT) \
test-quotearg-simple$(EXEEXT) test-raise$(EXEEXT) \
- test-readlink$(EXEEXT) test-regex$(EXEEXT) \
- test-setenv$(EXEEXT) test-setlocale1.sh test-setlocale2.sh \
+ test-rawmemchr$(EXEEXT) test-readlink$(EXEEXT) \
+ test-regex$(EXEEXT) test-select$(EXEEXT) test-select-in.sh \
+ test-select-out.sh test-setenv$(EXEEXT) test-setlocale1.sh \
+ test-setlocale2.sh test-setsockopt$(EXEEXT) \
test-sh-quote$(EXEEXT) test-sigaction$(EXEEXT) \
test-signal-h$(EXEEXT) test-sigprocmask$(EXEEXT) \
- test-sleep$(EXEEXT) test-snprintf$(EXEEXT) test-stat$(EXEEXT) \
- test-stat-time$(EXEEXT) test-stdbool$(EXEEXT) \
- test-stddef$(EXEEXT) test-stdint$(EXEEXT) test-stdio$(EXEEXT) \
- test-stdlib$(EXEEXT) test-strerror$(EXEEXT) \
+ test-sleep$(EXEEXT) test-snprintf$(EXEEXT) \
+ test-sockets$(EXEEXT) test-stat$(EXEEXT) \
+ test-stat-time$(EXEEXT) test-stdalign$(EXEEXT) \
+ test-stdbool$(EXEEXT) test-stddef$(EXEEXT) \
+ test-stdint$(EXEEXT) test-stdio$(EXEEXT) test-stdlib$(EXEEXT) \
+ test-strerror$(EXEEXT) test-strerror_r$(EXEEXT) \
test-strftime$(EXEEXT) test-striconv$(EXEEXT) \
test-string$(EXEEXT) test-strings$(EXEEXT) \
test-strnlen$(EXEEXT) test-strtoull$(EXEEXT) \
test-strtoumax$(EXEEXT) test-symlink$(EXEEXT) \
- test-sys_stat$(EXEEXT) test-sys_time$(EXEEXT) \
- test-sys_types$(EXEEXT) test-sys_wait$(EXEEXT) test-init.sh \
- test-time$(EXEEXT) test-unistd$(EXEEXT) \
+ test-sys_ioctl$(EXEEXT) test-sys_select$(EXEEXT) \
+ test-sys_socket$(EXEEXT) test-sys_stat$(EXEEXT) \
+ test-sys_time$(EXEEXT) test-sys_types$(EXEEXT) \
+ test-sys_uio$(EXEEXT) test-sys_wait$(EXEEXT) test-init.sh \
+ test-time$(EXEEXT) test-timespec$(EXEEXT) test-unistd$(EXEEXT) \
test-u8-mbtoucr$(EXEEXT) test-u8-uctomb$(EXEEXT) \
test-uc_width$(EXEEXT) uniwidth/test-uc_width2.sh \
test-unsetenv$(EXEEXT) test-update-copyright.sh \
- test-usleep$(EXEEXT) test-vasnprintf$(EXEEXT) \
- test-vasprintf$(EXEEXT) test-vc-list-files-git.sh \
- test-vc-list-files-cvs.sh test-verify$(EXEEXT) test-verify.sh \
- test-version-etc.sh test-wchar$(EXEEXT) test-wcrtomb.sh \
- test-wcrtomb-w32-1.sh test-wcrtomb-w32-2.sh \
- test-wcrtomb-w32-3.sh test-wcrtomb-w32-4.sh \
- test-wcrtomb-w32-5.sh test-wctype-h$(EXEEXT) \
- test-wcwidth$(EXEEXT) test-xalloc-die.sh test-xstrtol.sh \
- test-xstrtoumax.sh test-xvasprintf$(EXEEXT)
+ test-vasnprintf$(EXEEXT) test-vasprintf$(EXEEXT) \
+ test-vc-list-files-git.sh test-vc-list-files-cvs.sh \
+ test-verify$(EXEEXT) test-verify.sh test-version-etc.sh \
+ test-wchar$(EXEEXT) test-wcrtomb.sh test-wcrtomb-w32-1.sh \
+ test-wcrtomb-w32-2.sh test-wcrtomb-w32-3.sh \
+ test-wcrtomb-w32-4.sh test-wcrtomb-w32-5.sh \
+ test-wctype-h$(EXEEXT) test-wcwidth$(EXEEXT) \
+ test-xalloc-die.sh test-xstrtol.sh test-xstrtoumax.sh \
+ test-xvasprintf$(EXEEXT)
XFAIL_TESTS =
noinst_PROGRAMS =
-check_PROGRAMS = test-alloca-opt$(EXEEXT) test-areadlink$(EXEEXT) \
- test-argmatch$(EXEEXT) test-binary-io$(EXEEXT) \
- test-bitrotate$(EXEEXT) test-btowc$(EXEEXT) \
+check_PROGRAMS = test-accept$(EXEEXT) test-alloca-opt$(EXEEXT) \
+ test-areadlink$(EXEEXT) test-argmatch$(EXEEXT) \
+ test-arpa_inet$(EXEEXT) test-binary-io$(EXEEXT) \
+ test-bind$(EXEEXT) test-bitrotate$(EXEEXT) test-btowc$(EXEEXT) \
test-c-ctype$(EXEEXT) test-c-stack$(EXEEXT) \
test-c-strcasecmp$(EXEEXT) test-c-strncasecmp$(EXEEXT) \
- test-close$(EXEEXT) test-dirname$(EXEEXT) test-dup2$(EXEEXT) \
- test-environ$(EXEEXT) test-errno$(EXEEXT) \
- test-exclude$(EXEEXT) test-fcntl-h$(EXEEXT) \
- test-fcntl$(EXEEXT) test-fdopen$(EXEEXT) test-fgetc$(EXEEXT) \
- test-filenamecat$(EXEEXT) test-float$(EXEEXT) \
- test-fnmatch$(EXEEXT) test-fputc$(EXEEXT) test-fread$(EXEEXT) \
- test-freopen-safer$(EXEEXT) test-freopen$(EXEEXT) \
- test-fstat$(EXEEXT) test-fwrite$(EXEEXT) \
+ test-close$(EXEEXT) test-connect$(EXEEXT) test-ctype$(EXEEXT) \
+ test-dirname$(EXEEXT) test-dup2$(EXEEXT) test-environ$(EXEEXT) \
+ test-errno$(EXEEXT) test-exclude$(EXEEXT) \
+ test-fcntl-h$(EXEEXT) test-fcntl$(EXEEXT) test-fdopen$(EXEEXT) \
+ test-fgetc$(EXEEXT) test-filenamecat$(EXEEXT) \
+ test-float$(EXEEXT) test-fnmatch$(EXEEXT) test-fputc$(EXEEXT) \
+ test-fread$(EXEEXT) test-freopen-safer$(EXEEXT) \
+ test-freopen$(EXEEXT) test-fstat$(EXEEXT) \
+ test-ftruncate$(EXEEXT) test-fwrite$(EXEEXT) \
test-getcwd-lgpl$(EXEEXT) test-getdtablesize$(EXEEXT) \
test-getopt$(EXEEXT) test-gettimeofday$(EXEEXT) \
test-hash$(EXEEXT) test-iconv-h$(EXEEXT) test-iconv$(EXEEXT) \
- test-ignore-value$(EXEEXT) test-intprops$(EXEEXT) \
- test-inttostr$(EXEEXT) test-inttypes$(EXEEXT) \
- test-iswblank$(EXEEXT) test-langinfo$(EXEEXT) \
+ test-ignore-value$(EXEEXT) test-inet_pton$(EXEEXT) \
+ test-intprops$(EXEEXT) test-inttostr$(EXEEXT) \
+ test-inttypes$(EXEEXT) test-ioctl$(EXEEXT) \
+ test-isblank$(EXEEXT) test-iswblank$(EXEEXT) \
+ test-langinfo$(EXEEXT) test-listen$(EXEEXT) \
test-locale$(EXEEXT) test-localeconv$(EXEEXT) \
- test-lstat$(EXEEXT) test-malloc-gnu$(EXEEXT) \
- test-malloca$(EXEEXT) test-mbrtowc$(EXEEXT) \
- test-mbrtowc-w32$(EXEEXT) test-mbscasecmp$(EXEEXT) \
- test-mbsinit$(EXEEXT) test-mbsrtowcs$(EXEEXT) \
- test-mbsstr1$(EXEEXT) test-mbsstr2$(EXEEXT) \
- test-mbsstr3$(EXEEXT) test-memchr$(EXEEXT) \
- test-nl_langinfo$(EXEEXT) test-open$(EXEEXT) \
- test-pathmax$(EXEEXT) test-quotearg-simple$(EXEEXT) \
- test-raise$(EXEEXT) test-readlink$(EXEEXT) test-regex$(EXEEXT) \
+ test-lstat$(EXEEXT) test-malloca$(EXEEXT) \
+ test-mbrtowc$(EXEEXT) test-mbrtowc-w32$(EXEEXT) \
+ test-mbscasecmp$(EXEEXT) test-mbsinit$(EXEEXT) \
+ test-mbsrtowcs$(EXEEXT) test-mbsstr1$(EXEEXT) \
+ test-mbsstr2$(EXEEXT) test-mbsstr3$(EXEEXT) \
+ test-memchr$(EXEEXT) test-nanosleep$(EXEEXT) \
+ test-netinet_in$(EXEEXT) test-nl_langinfo$(EXEEXT) \
+ test-open$(EXEEXT) test-pathmax$(EXEEXT) test-perror$(EXEEXT) \
+ test-perror2$(EXEEXT) test-pipe$(EXEEXT) \
+ test-quotearg-simple$(EXEEXT) test-raise$(EXEEXT) \
+ test-rawmemchr$(EXEEXT) test-readlink$(EXEEXT) \
+ test-regex$(EXEEXT) test-select$(EXEEXT) \
+ test-select-fd$(EXEEXT) test-select-stdin$(EXEEXT) \
test-setenv$(EXEEXT) test-setlocale1$(EXEEXT) \
- test-setlocale2$(EXEEXT) test-sh-quote$(EXEEXT) \
- test-sigaction$(EXEEXT) test-signal-h$(EXEEXT) \
- test-sigprocmask$(EXEEXT) test-sleep$(EXEEXT) \
- test-snprintf$(EXEEXT) test-stat$(EXEEXT) \
- test-stat-time$(EXEEXT) test-stdbool$(EXEEXT) \
- test-stddef$(EXEEXT) test-stdint$(EXEEXT) test-stdio$(EXEEXT) \
- test-stdlib$(EXEEXT) test-strerror$(EXEEXT) \
+ test-setlocale2$(EXEEXT) test-setsockopt$(EXEEXT) \
+ test-sh-quote$(EXEEXT) test-sigaction$(EXEEXT) \
+ test-signal-h$(EXEEXT) test-sigprocmask$(EXEEXT) \
+ test-sleep$(EXEEXT) test-snprintf$(EXEEXT) \
+ test-sockets$(EXEEXT) test-stat$(EXEEXT) \
+ test-stat-time$(EXEEXT) test-stdalign$(EXEEXT) \
+ test-stdbool$(EXEEXT) test-stddef$(EXEEXT) \
+ test-stdint$(EXEEXT) test-stdio$(EXEEXT) test-stdlib$(EXEEXT) \
+ test-strerror$(EXEEXT) test-strerror_r$(EXEEXT) \
test-strftime$(EXEEXT) test-striconv$(EXEEXT) \
test-string$(EXEEXT) test-strings$(EXEEXT) \
test-strnlen$(EXEEXT) test-strtoull$(EXEEXT) \
test-strtoumax$(EXEEXT) test-symlink$(EXEEXT) \
- test-sys_stat$(EXEEXT) test-sys_time$(EXEEXT) \
- test-sys_types$(EXEEXT) test-sys_wait$(EXEEXT) \
- test-time$(EXEEXT) test-unistd$(EXEEXT) \
+ test-sys_ioctl$(EXEEXT) test-sys_select$(EXEEXT) \
+ test-sys_socket$(EXEEXT) test-sys_stat$(EXEEXT) \
+ test-sys_time$(EXEEXT) test-sys_types$(EXEEXT) \
+ test-sys_uio$(EXEEXT) test-sys_wait$(EXEEXT) \
+ test-time$(EXEEXT) test-timespec$(EXEEXT) test-unistd$(EXEEXT) \
test-u8-mbtoucr$(EXEEXT) test-u8-uctomb$(EXEEXT) \
test-uc_width$(EXEEXT) test-uc_width2$(EXEEXT) \
- test-unsetenv$(EXEEXT) test-usleep$(EXEEXT) \
- test-vasnprintf$(EXEEXT) test-vasprintf$(EXEEXT) \
- test-verify$(EXEEXT) test-version-etc$(EXEEXT) \
- test-wchar$(EXEEXT) test-wcrtomb$(EXEEXT) \
- test-wcrtomb-w32$(EXEEXT) test-wctype-h$(EXEEXT) \
- test-wcwidth$(EXEEXT) test-xalloc-die$(EXEEXT) \
- test-xstrtol$(EXEEXT) test-xstrtoul$(EXEEXT) \
- test-xstrtoumax$(EXEEXT) test-xvasprintf$(EXEEXT)
+ test-unsetenv$(EXEEXT) test-vasnprintf$(EXEEXT) \
+ test-vasprintf$(EXEEXT) test-verify$(EXEEXT) \
+ test-version-etc$(EXEEXT) test-wchar$(EXEEXT) \
+ test-wcrtomb$(EXEEXT) test-wcrtomb-w32$(EXEEXT) \
+ test-wctype-h$(EXEEXT) test-wcwidth$(EXEEXT) \
+ test-xalloc-die$(EXEEXT) test-xstrtol$(EXEEXT) \
+ test-xstrtoul$(EXEEXT) test-xstrtoumax$(EXEEXT) \
+ test-xvasprintf$(EXEEXT)
subdir = gnulib-tests
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
- $(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/btowc.m4 \
+ $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \
+ $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/btowc.m4 \
$(top_srcdir)/m4/c-stack.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/dirname.m4 \
+ $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
$(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
$(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
$(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
$(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fcntl-o.m4 \
$(top_srcdir)/m4/fcntl.m4 $(top_srcdir)/m4/fcntl_h.m4 \
$(top_srcdir)/m4/fdopen.m4 $(top_srcdir)/m4/filenamecat.m4 \
- $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fnmatch.m4 \
- $(top_srcdir)/m4/fpieee.m4 $(top_srcdir)/m4/freopen.m4 \
- $(top_srcdir)/m4/fstat.m4 $(top_srcdir)/m4/getcwd.m4 \
+ $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \
+ $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fpieee.m4 \
+ $(top_srcdir)/m4/freopen.m4 $(top_srcdir)/m4/fstat.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/gettext.m4 \
$(top_srcdir)/m4/gettime.m4 $(top_srcdir)/m4/gettimeofday.m4 \
$(top_srcdir)/m4/gnulib-comp.m4 \
$(top_srcdir)/m4/hard-locale.m4 $(top_srcdir)/m4/iconv.m4 \
$(top_srcdir)/m4/iconv_h.m4 $(top_srcdir)/m4/iconv_open.m4 \
- $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inline.m4 \
- $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \
- $(top_srcdir)/m4/inttostr.m4 $(top_srcdir)/m4/inttypes-pri.m4 \
- $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \
- $(top_srcdir)/m4/iswblank.m4 $(top_srcdir)/m4/langinfo_h.m4 \
- $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \
- $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/libsigsegv.m4 \
+ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
+ $(top_srcdir)/m4/inline.m4 $(top_srcdir)/m4/intlmacosx.m4 \
+ $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttostr.m4 \
+ $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+ $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/ioctl.m4 \
+ $(top_srcdir)/m4/isblank.m4 $(top_srcdir)/m4/iswblank.m4 \
+ $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
+ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
+ $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \
$(top_srcdir)/m4/libunistring-base.m4 \
$(top_srcdir)/m4/localcharset.m4 $(top_srcdir)/m4/locale-fr.m4 \
$(top_srcdir)/m4/locale-ja.m4 $(top_srcdir)/m4/locale-tr.m4 \
$(top_srcdir)/m4/mktime.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/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
$(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/off_t.m4 \
$(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
+ $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
$(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/putenv.m4 \
$(top_srcdir)/m4/quote.m4 $(top_srcdir)/m4/quotearg.m4 \
- $(top_srcdir)/m4/raise.m4 $(top_srcdir)/m4/readlink.m4 \
- $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/secure_getenv.m4 \
+ $(top_srcdir)/m4/raise.m4 $(top_srcdir)/m4/rawmemchr.m4 \
+ $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/regex.m4 \
+ $(top_srcdir)/m4/secure_getenv.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/signalblocking.m4 \
$(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \
- $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/ssize_t.m4 \
+ $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/socketlib.m4 \
+ $(top_srcdir)/m4/sockets.m4 $(top_srcdir)/m4/socklen.m4 \
+ $(top_srcdir)/m4/sockpfaf.m4 $(top_srcdir)/m4/ssize_t.m4 \
$(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \
- $(top_srcdir)/m4/stdarg.m4 $(top_srcdir)/m4/stdbool.m4 \
- $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \
- $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \
- $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/strcase.m4 \
- $(top_srcdir)/m4/strerror.m4 $(top_srcdir)/m4/strftime.m4 \
+ $(top_srcdir)/m4/stdalign.m4 $(top_srcdir)/m4/stdarg.m4 \
+ $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \
+ $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \
+ $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \
+ $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strerror.m4 \
+ $(top_srcdir)/m4/strerror_r.m4 $(top_srcdir)/m4/strftime.m4 \
$(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \
$(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \
$(top_srcdir)/m4/strptime.m4 $(top_srcdir)/m4/strtoull.m4 \
$(top_srcdir)/m4/strtoumax.m4 $(top_srcdir)/m4/symlink.m4 \
+ $(top_srcdir)/m4/sys_ioctl_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 \
- $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_wait_h.m4 \
- $(top_srcdir)/m4/tempname.m4 $(top_srcdir)/m4/time_h.m4 \
- $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/timespec.m4 \
- $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/unistd_h.m4 \
- $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/usleep.m4 \
+ $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_uio_h.m4 \
+ $(top_srcdir)/m4/sys_wait_h.m4 $(top_srcdir)/m4/tempname.m4 \
+ $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \
+ $(top_srcdir)/m4/time_rz.m4 $(top_srcdir)/m4/timegm.m4 \
+ $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \
+ $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlocked-io.m4 \
$(top_srcdir)/m4/vararrays.m4 $(top_srcdir)/m4/vasnprintf.m4 \
$(top_srcdir)/m4/vasprintf.m4 $(top_srcdir)/m4/version-etc.m4 \
$(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
$(top_srcdir)/m4/xvasprintf.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(noinst_HEADERS) \
+ $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/lib/config.h
CONFIG_CLEAN_FILES =
am__v_AR_1 =
libtests_a_AR = $(AR) $(ARFLAGS)
am__DEPENDENCIES_1 =
-am_libtests_a_OBJECTS = argmatch.$(OBJEXT) hash-pjw.$(OBJEXT)
+am_libtests_a_OBJECTS = dtotimespec.$(OBJEXT) hash-pjw.$(OBJEXT) \
+ sockets.$(OBJEXT) sys_socket.$(OBJEXT) timespec-add.$(OBJEXT) \
+ timespec-sub.$(OBJEXT)
libtests_a_OBJECTS = $(am_libtests_a_OBJECTS)
PROGRAMS = $(noinst_PROGRAMS)
+test_accept_SOURCES = test-accept.c
+test_accept_OBJECTS = test-accept.$(OBJEXT)
+am__DEPENDENCIES_2 = libtests.a ../lib/libdiffutils.a libtests.a \
+ $(am__DEPENDENCIES_1)
+test_accept_DEPENDENCIES = $(am__DEPENDENCIES_2)
test_alloca_opt_SOURCES = test-alloca-opt.c
test_alloca_opt_OBJECTS = test-alloca-opt.$(OBJEXT)
test_alloca_opt_LDADD = $(LDADD)
libtests.a $(am__DEPENDENCIES_1)
test_argmatch_SOURCES = test-argmatch.c
test_argmatch_OBJECTS = test-argmatch.$(OBJEXT)
-am__DEPENDENCIES_2 = libtests.a ../lib/libdiffutils.a libtests.a \
- $(am__DEPENDENCIES_1)
test_argmatch_DEPENDENCIES = $(am__DEPENDENCIES_2)
+test_arpa_inet_SOURCES = test-arpa_inet.c
+test_arpa_inet_OBJECTS = test-arpa_inet.$(OBJEXT)
+test_arpa_inet_LDADD = $(LDADD)
+test_arpa_inet_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
+ libtests.a $(am__DEPENDENCIES_1)
test_binary_io_SOURCES = test-binary-io.c
test_binary_io_OBJECTS = test-binary-io.$(OBJEXT)
test_binary_io_LDADD = $(LDADD)
test_binary_io_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
libtests.a $(am__DEPENDENCIES_1)
+test_bind_SOURCES = test-bind.c
+test_bind_OBJECTS = test-bind.$(OBJEXT)
+test_bind_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1)
test_bitrotate_SOURCES = test-bitrotate.c
test_bitrotate_OBJECTS = test-bitrotate.$(OBJEXT)
test_bitrotate_LDADD = $(LDADD)
test_close_LDADD = $(LDADD)
test_close_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \
$(am__DEPENDENCIES_1)
+test_connect_SOURCES = test-connect.c
+test_connect_OBJECTS = test-connect.$(OBJEXT)
+test_connect_DEPENDENCIES = $(am__DEPENDENCIES_2) \
+ $(am__DEPENDENCIES_1)
+test_ctype_SOURCES = test-ctype.c
+test_ctype_OBJECTS = test-ctype.$(OBJEXT)
+test_ctype_LDADD = $(LDADD)
+test_ctype_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \
+ $(am__DEPENDENCIES_1)
test_dirname_SOURCES = test-dirname.c
test_dirname_OBJECTS = test-dirname.$(OBJEXT)
test_dirname_DEPENDENCIES = $(am__DEPENDENCIES_2)
test_fstat_LDADD = $(LDADD)
test_fstat_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \
$(am__DEPENDENCIES_1)
+test_ftruncate_SOURCES = test-ftruncate.c
+test_ftruncate_OBJECTS = test-ftruncate.$(OBJEXT)
+test_ftruncate_LDADD = $(LDADD)
+test_ftruncate_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
+ libtests.a $(am__DEPENDENCIES_1)
test_fwrite_SOURCES = test-fwrite.c
test_fwrite_OBJECTS = test-fwrite.$(OBJEXT)
test_fwrite_LDADD = $(LDADD)
test_ignore_value_LDADD = $(LDADD)
test_ignore_value_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
libtests.a $(am__DEPENDENCIES_1)
+test_inet_pton_SOURCES = test-inet_pton.c
+test_inet_pton_OBJECTS = test-inet_pton.$(OBJEXT)
+test_inet_pton_DEPENDENCIES = $(am__DEPENDENCIES_2)
test_intprops_SOURCES = test-intprops.c
test_intprops_OBJECTS = test-intprops.$(OBJEXT)
test_intprops_LDADD = $(LDADD)
test_inttypes_LDADD = $(LDADD)
test_inttypes_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
libtests.a $(am__DEPENDENCIES_1)
+test_ioctl_SOURCES = test-ioctl.c
+test_ioctl_OBJECTS = test-ioctl.$(OBJEXT)
+test_ioctl_LDADD = $(LDADD)
+test_ioctl_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \
+ $(am__DEPENDENCIES_1)
+test_isblank_SOURCES = test-isblank.c
+test_isblank_OBJECTS = test-isblank.$(OBJEXT)
+test_isblank_LDADD = $(LDADD)
+test_isblank_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
+ libtests.a $(am__DEPENDENCIES_1)
test_iswblank_SOURCES = test-iswblank.c
test_iswblank_OBJECTS = test-iswblank.$(OBJEXT)
test_iswblank_LDADD = $(LDADD)
test_langinfo_LDADD = $(LDADD)
test_langinfo_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
libtests.a $(am__DEPENDENCIES_1)
+test_listen_SOURCES = test-listen.c
+test_listen_OBJECTS = test-listen.$(OBJEXT)
+test_listen_DEPENDENCIES = $(am__DEPENDENCIES_2)
test_locale_SOURCES = test-locale.c
test_locale_OBJECTS = test-locale.$(OBJEXT)
test_locale_LDADD = $(LDADD)
test_lstat_LDADD = $(LDADD)
test_lstat_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \
$(am__DEPENDENCIES_1)
-test_malloc_gnu_SOURCES = test-malloc-gnu.c
-test_malloc_gnu_OBJECTS = test-malloc-gnu.$(OBJEXT)
-test_malloc_gnu_LDADD = $(LDADD)
-test_malloc_gnu_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
- libtests.a $(am__DEPENDENCIES_1)
test_malloca_SOURCES = test-malloca.c
test_malloca_OBJECTS = test-malloca.$(OBJEXT)
test_malloca_LDADD = $(LDADD)
test_memchr_LDADD = $(LDADD)
test_memchr_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \
$(am__DEPENDENCIES_1)
+test_nanosleep_SOURCES = test-nanosleep.c
+test_nanosleep_OBJECTS = test-nanosleep.$(OBJEXT)
+test_nanosleep_DEPENDENCIES = $(am__DEPENDENCIES_2) \
+ $(am__DEPENDENCIES_1)
+test_netinet_in_SOURCES = test-netinet_in.c
+test_netinet_in_OBJECTS = test-netinet_in.$(OBJEXT)
+test_netinet_in_LDADD = $(LDADD)
+test_netinet_in_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
+ libtests.a $(am__DEPENDENCIES_1)
test_nl_langinfo_SOURCES = test-nl_langinfo.c
test_nl_langinfo_OBJECTS = test-nl_langinfo.$(OBJEXT)
test_nl_langinfo_LDADD = $(LDADD)
test_pathmax_LDADD = $(LDADD)
test_pathmax_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
libtests.a $(am__DEPENDENCIES_1)
+test_perror_SOURCES = test-perror.c
+test_perror_OBJECTS = test-perror.$(OBJEXT)
+test_perror_LDADD = $(LDADD)
+test_perror_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \
+ $(am__DEPENDENCIES_1)
+test_perror2_SOURCES = test-perror2.c
+test_perror2_OBJECTS = test-perror2.$(OBJEXT)
+test_perror2_LDADD = $(LDADD)
+test_perror2_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
+ libtests.a $(am__DEPENDENCIES_1)
+test_pipe_SOURCES = test-pipe.c
+test_pipe_OBJECTS = test-pipe.$(OBJEXT)
+test_pipe_LDADD = $(LDADD)
+test_pipe_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \
+ $(am__DEPENDENCIES_1)
test_quotearg_simple_SOURCES = test-quotearg-simple.c
test_quotearg_simple_OBJECTS = test-quotearg-simple.$(OBJEXT)
test_quotearg_simple_DEPENDENCIES = $(am__DEPENDENCIES_2)
test_raise_LDADD = $(LDADD)
test_raise_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \
$(am__DEPENDENCIES_1)
+test_rawmemchr_SOURCES = test-rawmemchr.c
+test_rawmemchr_OBJECTS = test-rawmemchr.$(OBJEXT)
+test_rawmemchr_LDADD = $(LDADD)
+test_rawmemchr_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
+ libtests.a $(am__DEPENDENCIES_1)
test_readlink_SOURCES = test-readlink.c
test_readlink_OBJECTS = test-readlink.$(OBJEXT)
test_readlink_LDADD = $(LDADD)
test_regex_SOURCES = test-regex.c
test_regex_OBJECTS = test-regex.$(OBJEXT)
test_regex_DEPENDENCIES = $(am__DEPENDENCIES_2)
+test_select_SOURCES = test-select.c
+test_select_OBJECTS = test-select.$(OBJEXT)
+test_select_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1)
+test_select_fd_SOURCES = test-select-fd.c
+test_select_fd_OBJECTS = test-select-fd.$(OBJEXT)
+test_select_fd_DEPENDENCIES = $(am__DEPENDENCIES_2)
+test_select_stdin_SOURCES = test-select-stdin.c
+test_select_stdin_OBJECTS = test-select-stdin.$(OBJEXT)
+test_select_stdin_DEPENDENCIES = $(am__DEPENDENCIES_2)
test_setenv_SOURCES = test-setenv.c
test_setenv_OBJECTS = test-setenv.$(OBJEXT)
test_setenv_LDADD = $(LDADD)
test_setlocale2_LDADD = $(LDADD)
test_setlocale2_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
libtests.a $(am__DEPENDENCIES_1)
+test_setsockopt_SOURCES = test-setsockopt.c
+test_setsockopt_OBJECTS = test-setsockopt.$(OBJEXT)
+test_setsockopt_DEPENDENCIES = $(am__DEPENDENCIES_2)
test_sh_quote_SOURCES = test-sh-quote.c
test_sh_quote_OBJECTS = test-sh-quote.$(OBJEXT)
test_sh_quote_DEPENDENCIES = $(am__DEPENDENCIES_2)
test_snprintf_LDADD = $(LDADD)
test_snprintf_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
libtests.a $(am__DEPENDENCIES_1)
+test_sockets_SOURCES = test-sockets.c
+test_sockets_OBJECTS = test-sockets.$(OBJEXT)
+test_sockets_DEPENDENCIES = $(am__DEPENDENCIES_2)
test_stat_SOURCES = test-stat.c
test_stat_OBJECTS = test-stat.$(OBJEXT)
test_stat_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1)
test_stat_time_SOURCES = test-stat-time.c
test_stat_time_OBJECTS = test-stat-time.$(OBJEXT)
-test_stat_time_LDADD = $(LDADD)
-test_stat_time_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
+test_stat_time_DEPENDENCIES = $(am__DEPENDENCIES_2) \
+ $(am__DEPENDENCIES_1)
+test_stdalign_SOURCES = test-stdalign.c
+test_stdalign_OBJECTS = test-stdalign.$(OBJEXT)
+test_stdalign_LDADD = $(LDADD)
+test_stdalign_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
libtests.a $(am__DEPENDENCIES_1)
test_stdbool_SOURCES = test-stdbool.c
test_stdbool_OBJECTS = test-stdbool.$(OBJEXT)
test_strerror_LDADD = $(LDADD)
test_strerror_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
libtests.a $(am__DEPENDENCIES_1)
+test_strerror_r_SOURCES = test-strerror_r.c
+test_strerror_r_OBJECTS = test-strerror_r.$(OBJEXT)
+test_strerror_r_LDADD = $(LDADD)
+test_strerror_r_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
+ libtests.a $(am__DEPENDENCIES_1)
test_strftime_SOURCES = test-strftime.c
test_strftime_OBJECTS = test-strftime.$(OBJEXT)
test_strftime_LDADD = $(LDADD)
test_symlink_LDADD = $(LDADD)
test_symlink_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
libtests.a $(am__DEPENDENCIES_1)
+test_sys_ioctl_SOURCES = test-sys_ioctl.c
+test_sys_ioctl_OBJECTS = test-sys_ioctl.$(OBJEXT)
+test_sys_ioctl_LDADD = $(LDADD)
+test_sys_ioctl_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
+ libtests.a $(am__DEPENDENCIES_1)
+test_sys_select_SOURCES = test-sys_select.c
+test_sys_select_OBJECTS = test-sys_select.$(OBJEXT)
+test_sys_select_LDADD = $(LDADD)
+test_sys_select_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
+ libtests.a $(am__DEPENDENCIES_1)
+test_sys_socket_SOURCES = test-sys_socket.c
+test_sys_socket_OBJECTS = test-sys_socket.$(OBJEXT)
+test_sys_socket_LDADD = $(LDADD)
+test_sys_socket_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
+ libtests.a $(am__DEPENDENCIES_1)
test_sys_stat_SOURCES = test-sys_stat.c
test_sys_stat_OBJECTS = test-sys_stat.$(OBJEXT)
test_sys_stat_LDADD = $(LDADD)
test_sys_types_LDADD = $(LDADD)
test_sys_types_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
libtests.a $(am__DEPENDENCIES_1)
+test_sys_uio_SOURCES = test-sys_uio.c
+test_sys_uio_OBJECTS = test-sys_uio.$(OBJEXT)
+test_sys_uio_LDADD = $(LDADD)
+test_sys_uio_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
+ libtests.a $(am__DEPENDENCIES_1)
test_sys_wait_SOURCES = test-sys_wait.c
test_sys_wait_OBJECTS = test-sys_wait.$(OBJEXT)
test_sys_wait_LDADD = $(LDADD)
test_time_LDADD = $(LDADD)
test_time_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \
$(am__DEPENDENCIES_1)
+test_timespec_SOURCES = test-timespec.c
+test_timespec_OBJECTS = test-timespec.$(OBJEXT)
+test_timespec_LDADD = $(LDADD)
+test_timespec_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
+ libtests.a $(am__DEPENDENCIES_1)
am__dirstamp = .dirstamp
am_test_u8_mbtoucr_OBJECTS = unistr/test-u8-mbtoucr.$(OBJEXT)
test_u8_mbtoucr_OBJECTS = $(am_test_u8_mbtoucr_OBJECTS)
test_unsetenv_LDADD = $(LDADD)
test_unsetenv_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \
libtests.a $(am__DEPENDENCIES_1)
-test_usleep_SOURCES = test-usleep.c
-test_usleep_OBJECTS = test-usleep.$(OBJEXT)
-test_usleep_LDADD = $(LDADD)
-test_usleep_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \
- $(am__DEPENDENCIES_1)
test_vasnprintf_SOURCES = test-vasnprintf.c
test_vasnprintf_OBJECTS = test-vasnprintf.$(OBJEXT)
test_vasnprintf_LDADD = $(LDADD)
am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/lib
depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp
-am__depfiles_maybe = depfiles
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade = ./$(DEPDIR)/accept.Po ./$(DEPDIR)/bind.Po \
+ ./$(DEPDIR)/connect.Po ./$(DEPDIR)/dtotimespec.Po \
+ ./$(DEPDIR)/fdopen.Po ./$(DEPDIR)/ftruncate.Po \
+ ./$(DEPDIR)/getcwd-lgpl.Po ./$(DEPDIR)/getpagesize.Po \
+ ./$(DEPDIR)/hash-pjw.Po ./$(DEPDIR)/inet_pton.Po \
+ ./$(DEPDIR)/ioctl.Po ./$(DEPDIR)/listen.Po \
+ ./$(DEPDIR)/nanosleep.Po ./$(DEPDIR)/perror.Po \
+ ./$(DEPDIR)/pipe.Po ./$(DEPDIR)/putenv.Po \
+ ./$(DEPDIR)/select.Po ./$(DEPDIR)/setlocale.Po \
+ ./$(DEPDIR)/setsockopt.Po ./$(DEPDIR)/sleep.Po \
+ ./$(DEPDIR)/snprintf.Po ./$(DEPDIR)/socket.Po \
+ ./$(DEPDIR)/sockets.Po ./$(DEPDIR)/strerror_r.Po \
+ ./$(DEPDIR)/symlink.Po ./$(DEPDIR)/sys_socket.Po \
+ ./$(DEPDIR)/test-accept.Po ./$(DEPDIR)/test-alloca-opt.Po \
+ ./$(DEPDIR)/test-areadlink.Po ./$(DEPDIR)/test-argmatch.Po \
+ ./$(DEPDIR)/test-arpa_inet.Po ./$(DEPDIR)/test-binary-io.Po \
+ ./$(DEPDIR)/test-bind.Po ./$(DEPDIR)/test-bitrotate.Po \
+ ./$(DEPDIR)/test-btowc.Po ./$(DEPDIR)/test-c-ctype.Po \
+ ./$(DEPDIR)/test-c-stack.Po ./$(DEPDIR)/test-c-strcasecmp.Po \
+ ./$(DEPDIR)/test-c-strncasecmp.Po ./$(DEPDIR)/test-close.Po \
+ ./$(DEPDIR)/test-connect.Po ./$(DEPDIR)/test-ctype.Po \
+ ./$(DEPDIR)/test-dirname.Po ./$(DEPDIR)/test-dup2.Po \
+ ./$(DEPDIR)/test-environ.Po ./$(DEPDIR)/test-errno.Po \
+ ./$(DEPDIR)/test-exclude.Po ./$(DEPDIR)/test-fcntl-h.Po \
+ ./$(DEPDIR)/test-fcntl.Po ./$(DEPDIR)/test-fdopen.Po \
+ ./$(DEPDIR)/test-fgetc.Po ./$(DEPDIR)/test-filenamecat.Po \
+ ./$(DEPDIR)/test-float.Po ./$(DEPDIR)/test-fnmatch.Po \
+ ./$(DEPDIR)/test-fputc.Po ./$(DEPDIR)/test-fread.Po \
+ ./$(DEPDIR)/test-freopen-safer.Po ./$(DEPDIR)/test-freopen.Po \
+ ./$(DEPDIR)/test-fstat.Po ./$(DEPDIR)/test-ftruncate.Po \
+ ./$(DEPDIR)/test-fwrite.Po ./$(DEPDIR)/test-getcwd-lgpl.Po \
+ ./$(DEPDIR)/test-getdtablesize.Po ./$(DEPDIR)/test-getopt.Po \
+ ./$(DEPDIR)/test-gettimeofday.Po ./$(DEPDIR)/test-hash.Po \
+ ./$(DEPDIR)/test-iconv-h.Po ./$(DEPDIR)/test-iconv.Po \
+ ./$(DEPDIR)/test-ignore-value.Po ./$(DEPDIR)/test-inet_pton.Po \
+ ./$(DEPDIR)/test-intprops.Po ./$(DEPDIR)/test-inttostr.Po \
+ ./$(DEPDIR)/test-inttypes.Po ./$(DEPDIR)/test-ioctl.Po \
+ ./$(DEPDIR)/test-isblank.Po ./$(DEPDIR)/test-iswblank.Po \
+ ./$(DEPDIR)/test-langinfo.Po ./$(DEPDIR)/test-listen.Po \
+ ./$(DEPDIR)/test-locale.Po ./$(DEPDIR)/test-localeconv.Po \
+ ./$(DEPDIR)/test-lstat.Po ./$(DEPDIR)/test-malloca.Po \
+ ./$(DEPDIR)/test-mbrtowc-w32.Po ./$(DEPDIR)/test-mbrtowc.Po \
+ ./$(DEPDIR)/test-mbscasecmp.Po ./$(DEPDIR)/test-mbsinit.Po \
+ ./$(DEPDIR)/test-mbsrtowcs.Po ./$(DEPDIR)/test-mbsstr1.Po \
+ ./$(DEPDIR)/test-mbsstr2.Po ./$(DEPDIR)/test-mbsstr3.Po \
+ ./$(DEPDIR)/test-memchr.Po ./$(DEPDIR)/test-nanosleep.Po \
+ ./$(DEPDIR)/test-netinet_in.Po ./$(DEPDIR)/test-nl_langinfo.Po \
+ ./$(DEPDIR)/test-open.Po ./$(DEPDIR)/test-pathmax.Po \
+ ./$(DEPDIR)/test-perror.Po ./$(DEPDIR)/test-perror2.Po \
+ ./$(DEPDIR)/test-pipe.Po ./$(DEPDIR)/test-quotearg-simple.Po \
+ ./$(DEPDIR)/test-raise.Po ./$(DEPDIR)/test-rawmemchr.Po \
+ ./$(DEPDIR)/test-readlink.Po ./$(DEPDIR)/test-regex.Po \
+ ./$(DEPDIR)/test-select-fd.Po ./$(DEPDIR)/test-select-stdin.Po \
+ ./$(DEPDIR)/test-select.Po ./$(DEPDIR)/test-setenv.Po \
+ ./$(DEPDIR)/test-setlocale1.Po ./$(DEPDIR)/test-setlocale2.Po \
+ ./$(DEPDIR)/test-setsockopt.Po ./$(DEPDIR)/test-sh-quote.Po \
+ ./$(DEPDIR)/test-sigaction.Po ./$(DEPDIR)/test-signal-h.Po \
+ ./$(DEPDIR)/test-sigprocmask.Po ./$(DEPDIR)/test-sleep.Po \
+ ./$(DEPDIR)/test-snprintf.Po ./$(DEPDIR)/test-sockets.Po \
+ ./$(DEPDIR)/test-stat-time.Po ./$(DEPDIR)/test-stat.Po \
+ ./$(DEPDIR)/test-stdalign.Po ./$(DEPDIR)/test-stdbool.Po \
+ ./$(DEPDIR)/test-stddef.Po ./$(DEPDIR)/test-stdint.Po \
+ ./$(DEPDIR)/test-stdio.Po ./$(DEPDIR)/test-stdlib.Po \
+ ./$(DEPDIR)/test-strerror.Po ./$(DEPDIR)/test-strerror_r.Po \
+ ./$(DEPDIR)/test-strftime.Po ./$(DEPDIR)/test-striconv.Po \
+ ./$(DEPDIR)/test-string.Po ./$(DEPDIR)/test-strings.Po \
+ ./$(DEPDIR)/test-strnlen.Po ./$(DEPDIR)/test-strtoull.Po \
+ ./$(DEPDIR)/test-strtoumax.Po ./$(DEPDIR)/test-symlink.Po \
+ ./$(DEPDIR)/test-sys_ioctl.Po ./$(DEPDIR)/test-sys_select.Po \
+ ./$(DEPDIR)/test-sys_socket.Po ./$(DEPDIR)/test-sys_stat.Po \
+ ./$(DEPDIR)/test-sys_time.Po ./$(DEPDIR)/test-sys_types.Po \
+ ./$(DEPDIR)/test-sys_uio.Po ./$(DEPDIR)/test-sys_wait.Po \
+ ./$(DEPDIR)/test-time.Po ./$(DEPDIR)/test-timespec.Po \
+ ./$(DEPDIR)/test-unistd.Po ./$(DEPDIR)/test-unsetenv.Po \
+ ./$(DEPDIR)/test-vasnprintf.Po ./$(DEPDIR)/test-vasprintf.Po \
+ ./$(DEPDIR)/test-verify.Po ./$(DEPDIR)/test-version-etc.Po \
+ ./$(DEPDIR)/test-wchar.Po ./$(DEPDIR)/test-wcrtomb-w32.Po \
+ ./$(DEPDIR)/test-wcrtomb.Po ./$(DEPDIR)/test-wctype-h.Po \
+ ./$(DEPDIR)/test-wcwidth.Po ./$(DEPDIR)/test-xalloc-die.Po \
+ ./$(DEPDIR)/test-xstrtol.Po ./$(DEPDIR)/test-xstrtoul.Po \
+ ./$(DEPDIR)/test-xstrtoumax.Po ./$(DEPDIR)/test-xvasprintf.Po \
+ ./$(DEPDIR)/timespec-add.Po ./$(DEPDIR)/timespec-sub.Po \
+ ./$(DEPDIR)/wctob.Po ./$(DEPDIR)/wctomb.Po \
+ unistr/$(DEPDIR)/test-u8-mbtoucr.Po \
+ unistr/$(DEPDIR)/test-u8-uctomb.Po \
+ uniwidth/$(DEPDIR)/test-uc_width.Po \
+ uniwidth/$(DEPDIR)/test-uc_width2.Po
am__mv = mv -f
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
- $(AM_CFLAGS) $(CFLAGS)
+am__set_depbase = depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.[^.]*$$||'`
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
AM_V_CC = $(am__v_CC_@AM_V@)
am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
am__v_CC_0 = @echo " CC " $@;
am__v_CCLD_0 = @echo " CCLD " $@;
am__v_CCLD_1 =
SOURCES = $(libtests_a_SOURCES) $(EXTRA_libtests_a_SOURCES) \
- test-alloca-opt.c test-areadlink.c test-argmatch.c \
- test-binary-io.c test-bitrotate.c test-btowc.c test-c-ctype.c \
- test-c-stack.c test-c-strcasecmp.c test-c-strncasecmp.c \
- test-close.c test-dirname.c test-dup2.c test-environ.c \
- test-errno.c test-exclude.c test-fcntl.c test-fcntl-h.c \
- test-fdopen.c test-fgetc.c test-filenamecat.c test-float.c \
- test-fnmatch.c test-fputc.c test-fread.c test-freopen.c \
- test-freopen-safer.c test-fstat.c test-fwrite.c \
- test-getcwd-lgpl.c test-getdtablesize.c test-getopt.c \
- test-gettimeofday.c test-hash.c test-iconv.c test-iconv-h.c \
- test-ignore-value.c test-intprops.c test-inttostr.c \
- test-inttypes.c test-iswblank.c test-langinfo.c test-locale.c \
- test-localeconv.c test-lstat.c test-malloc-gnu.c \
- test-malloca.c test-mbrtowc.c test-mbrtowc-w32.c \
+ test-accept.c test-alloca-opt.c test-areadlink.c \
+ test-argmatch.c test-arpa_inet.c test-binary-io.c test-bind.c \
+ test-bitrotate.c test-btowc.c test-c-ctype.c test-c-stack.c \
+ test-c-strcasecmp.c test-c-strncasecmp.c test-close.c \
+ test-connect.c test-ctype.c test-dirname.c test-dup2.c \
+ test-environ.c test-errno.c test-exclude.c test-fcntl.c \
+ test-fcntl-h.c test-fdopen.c test-fgetc.c test-filenamecat.c \
+ test-float.c test-fnmatch.c test-fputc.c test-fread.c \
+ test-freopen.c test-freopen-safer.c test-fstat.c \
+ test-ftruncate.c test-fwrite.c test-getcwd-lgpl.c \
+ test-getdtablesize.c test-getopt.c test-gettimeofday.c \
+ test-hash.c test-iconv.c test-iconv-h.c test-ignore-value.c \
+ test-inet_pton.c test-intprops.c test-inttostr.c \
+ test-inttypes.c test-ioctl.c test-isblank.c test-iswblank.c \
+ test-langinfo.c test-listen.c test-locale.c test-localeconv.c \
+ test-lstat.c test-malloca.c test-mbrtowc.c test-mbrtowc-w32.c \
test-mbscasecmp.c test-mbsinit.c test-mbsrtowcs.c \
test-mbsstr1.c test-mbsstr2.c test-mbsstr3.c test-memchr.c \
- test-nl_langinfo.c test-open.c test-pathmax.c \
- test-quotearg-simple.c test-raise.c test-readlink.c \
- test-regex.c test-setenv.c test-setlocale1.c test-setlocale2.c \
+ test-nanosleep.c test-netinet_in.c test-nl_langinfo.c \
+ test-open.c test-pathmax.c test-perror.c test-perror2.c \
+ test-pipe.c test-quotearg-simple.c test-raise.c \
+ test-rawmemchr.c test-readlink.c test-regex.c test-select.c \
+ test-select-fd.c test-select-stdin.c test-setenv.c \
+ test-setlocale1.c test-setlocale2.c test-setsockopt.c \
test-sh-quote.c test-sigaction.c test-signal-h.c \
- test-sigprocmask.c test-sleep.c test-snprintf.c test-stat.c \
- test-stat-time.c test-stdbool.c test-stddef.c test-stdint.c \
- test-stdio.c test-stdlib.c test-strerror.c test-strftime.c \
+ test-sigprocmask.c test-sleep.c test-snprintf.c test-sockets.c \
+ test-stat.c test-stat-time.c test-stdalign.c test-stdbool.c \
+ test-stddef.c test-stdint.c test-stdio.c test-stdlib.c \
+ test-strerror.c test-strerror_r.c test-strftime.c \
test-striconv.c test-string.c test-strings.c test-strnlen.c \
test-strtoull.c test-strtoumax.c test-symlink.c \
+ test-sys_ioctl.c test-sys_select.c test-sys_socket.c \
test-sys_stat.c test-sys_time.c test-sys_types.c \
- test-sys_wait.c test-time.c $(test_u8_mbtoucr_SOURCES) \
- $(test_u8_uctomb_SOURCES) $(test_uc_width_SOURCES) \
- $(test_uc_width2_SOURCES) test-unistd.c test-unsetenv.c \
- test-usleep.c test-vasnprintf.c test-vasprintf.c test-verify.c \
- test-version-etc.c test-wchar.c test-wcrtomb.c \
- test-wcrtomb-w32.c test-wctype-h.c test-wcwidth.c \
- test-xalloc-die.c test-xstrtol.c test-xstrtoul.c \
- test-xstrtoumax.c test-xvasprintf.c
+ test-sys_uio.c test-sys_wait.c test-time.c test-timespec.c \
+ $(test_u8_mbtoucr_SOURCES) $(test_u8_uctomb_SOURCES) \
+ $(test_uc_width_SOURCES) $(test_uc_width2_SOURCES) \
+ test-unistd.c test-unsetenv.c test-vasnprintf.c \
+ test-vasprintf.c test-verify.c test-version-etc.c test-wchar.c \
+ test-wcrtomb.c test-wcrtomb-w32.c test-wctype-h.c \
+ test-wcwidth.c test-xalloc-die.c test-xstrtol.c \
+ test-xstrtoul.c test-xstrtoumax.c test-xvasprintf.c
DIST_SOURCES = $(libtests_a_SOURCES) $(EXTRA_libtests_a_SOURCES) \
- test-alloca-opt.c test-areadlink.c test-argmatch.c \
- test-binary-io.c test-bitrotate.c test-btowc.c test-c-ctype.c \
- test-c-stack.c test-c-strcasecmp.c test-c-strncasecmp.c \
- test-close.c test-dirname.c test-dup2.c test-environ.c \
- test-errno.c test-exclude.c test-fcntl.c test-fcntl-h.c \
- test-fdopen.c test-fgetc.c test-filenamecat.c test-float.c \
- test-fnmatch.c test-fputc.c test-fread.c test-freopen.c \
- test-freopen-safer.c test-fstat.c test-fwrite.c \
- test-getcwd-lgpl.c test-getdtablesize.c test-getopt.c \
- test-gettimeofday.c test-hash.c test-iconv.c test-iconv-h.c \
- test-ignore-value.c test-intprops.c test-inttostr.c \
- test-inttypes.c test-iswblank.c test-langinfo.c test-locale.c \
- test-localeconv.c test-lstat.c test-malloc-gnu.c \
- test-malloca.c test-mbrtowc.c test-mbrtowc-w32.c \
+ test-accept.c test-alloca-opt.c test-areadlink.c \
+ test-argmatch.c test-arpa_inet.c test-binary-io.c test-bind.c \
+ test-bitrotate.c test-btowc.c test-c-ctype.c test-c-stack.c \
+ test-c-strcasecmp.c test-c-strncasecmp.c test-close.c \
+ test-connect.c test-ctype.c test-dirname.c test-dup2.c \
+ test-environ.c test-errno.c test-exclude.c test-fcntl.c \
+ test-fcntl-h.c test-fdopen.c test-fgetc.c test-filenamecat.c \
+ test-float.c test-fnmatch.c test-fputc.c test-fread.c \
+ test-freopen.c test-freopen-safer.c test-fstat.c \
+ test-ftruncate.c test-fwrite.c test-getcwd-lgpl.c \
+ test-getdtablesize.c test-getopt.c test-gettimeofday.c \
+ test-hash.c test-iconv.c test-iconv-h.c test-ignore-value.c \
+ test-inet_pton.c test-intprops.c test-inttostr.c \
+ test-inttypes.c test-ioctl.c test-isblank.c test-iswblank.c \
+ test-langinfo.c test-listen.c test-locale.c test-localeconv.c \
+ test-lstat.c test-malloca.c test-mbrtowc.c test-mbrtowc-w32.c \
test-mbscasecmp.c test-mbsinit.c test-mbsrtowcs.c \
test-mbsstr1.c test-mbsstr2.c test-mbsstr3.c test-memchr.c \
- test-nl_langinfo.c test-open.c test-pathmax.c \
- test-quotearg-simple.c test-raise.c test-readlink.c \
- test-regex.c test-setenv.c test-setlocale1.c test-setlocale2.c \
+ test-nanosleep.c test-netinet_in.c test-nl_langinfo.c \
+ test-open.c test-pathmax.c test-perror.c test-perror2.c \
+ test-pipe.c test-quotearg-simple.c test-raise.c \
+ test-rawmemchr.c test-readlink.c test-regex.c test-select.c \
+ test-select-fd.c test-select-stdin.c test-setenv.c \
+ test-setlocale1.c test-setlocale2.c test-setsockopt.c \
test-sh-quote.c test-sigaction.c test-signal-h.c \
- test-sigprocmask.c test-sleep.c test-snprintf.c test-stat.c \
- test-stat-time.c test-stdbool.c test-stddef.c test-stdint.c \
- test-stdio.c test-stdlib.c test-strerror.c test-strftime.c \
+ test-sigprocmask.c test-sleep.c test-snprintf.c test-sockets.c \
+ test-stat.c test-stat-time.c test-stdalign.c test-stdbool.c \
+ test-stddef.c test-stdint.c test-stdio.c test-stdlib.c \
+ test-strerror.c test-strerror_r.c test-strftime.c \
test-striconv.c test-string.c test-strings.c test-strnlen.c \
test-strtoull.c test-strtoumax.c test-symlink.c \
+ test-sys_ioctl.c test-sys_select.c test-sys_socket.c \
test-sys_stat.c test-sys_time.c test-sys_types.c \
- test-sys_wait.c test-time.c $(test_u8_mbtoucr_SOURCES) \
- $(test_u8_uctomb_SOURCES) $(test_uc_width_SOURCES) \
- $(test_uc_width2_SOURCES) test-unistd.c test-unsetenv.c \
- test-usleep.c test-vasnprintf.c test-vasprintf.c test-verify.c \
- test-version-etc.c test-wchar.c test-wcrtomb.c \
- test-wcrtomb-w32.c test-wctype-h.c test-wcwidth.c \
- test-xalloc-die.c test-xstrtol.c test-xstrtoul.c \
- test-xstrtoumax.c test-xvasprintf.c
+ test-sys_uio.c test-sys_wait.c test-time.c test-timespec.c \
+ $(test_u8_mbtoucr_SOURCES) $(test_u8_uctomb_SOURCES) \
+ $(test_uc_width_SOURCES) $(test_uc_width2_SOURCES) \
+ test-unistd.c test-unsetenv.c test-vasnprintf.c \
+ test-vasprintf.c test-verify.c test-version-etc.c test-wchar.c \
+ test-wcrtomb.c test-wcrtomb-w32.c test-wctype-h.c \
+ test-wcwidth.c test-xalloc-die.c test-xstrtol.c \
+ test-xstrtoul.c test-xstrtoumax.c test-xvasprintf.c
RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
ctags-recursive dvi-recursive html-recursive info-recursive \
install-data-recursive install-dvi-recursive \
TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \
$(TEST_LOG_FLAGS)
DIST_SUBDIRS = $(SUBDIRS)
+am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/gnulib.mk \
+ $(top_srcdir)/build-aux/depcomp \
+ $(top_srcdir)/build-aux/test-driver
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
GLIBC21 = @GLIBC21@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
+GNULIB_ACCEPT = @GNULIB_ACCEPT@
+GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
GNULIB_ATOLL = @GNULIB_ATOLL@
+GNULIB_BIND = @GNULIB_BIND@
GNULIB_BTOWC = @GNULIB_BTOWC@
GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@
GNULIB_CANONICALIZE_FILE_NAME = @GNULIB_CANONICALIZE_FILE_NAME@
GNULIB_CHDIR = @GNULIB_CHDIR@
GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
+GNULIB_CONNECT = @GNULIB_CONNECT@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
GNULIB_DUP = @GNULIB_DUP@
GNULIB_DUP2 = @GNULIB_DUP2@
GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
+GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
+GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
GNULIB_ICONV = @GNULIB_ICONV@
GNULIB_IMAXABS = @GNULIB_IMAXABS@
GNULIB_IMAXDIV = @GNULIB_IMAXDIV@
+GNULIB_INET_NTOP = @GNULIB_INET_NTOP@
+GNULIB_INET_PTON = @GNULIB_INET_PTON@
+GNULIB_IOCTL = @GNULIB_IOCTL@
GNULIB_ISATTY = @GNULIB_ISATTY@
+GNULIB_ISBLANK = @GNULIB_ISBLANK@
GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
GNULIB_LCHMOD = @GNULIB_LCHMOD@
GNULIB_LCHOWN = @GNULIB_LCHOWN@
GNULIB_LINK = @GNULIB_LINK@
GNULIB_LINKAT = @GNULIB_LINKAT@
+GNULIB_LISTEN = @GNULIB_LISTEN@
GNULIB_LOCALECONV = @GNULIB_LOCALECONV@
GNULIB_LSEEK = @GNULIB_LSEEK@
GNULIB_LSTAT = @GNULIB_LSTAT@
GNULIB_PREAD = @GNULIB_PREAD@
GNULIB_PRINTF = @GNULIB_PRINTF@
GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@
+GNULIB_PSELECT = @GNULIB_PSELECT@
GNULIB_PTHREAD_SIGMASK = @GNULIB_PTHREAD_SIGMASK@
GNULIB_PTSNAME = @GNULIB_PTSNAME@
GNULIB_PTSNAME_R = @GNULIB_PTSNAME_R@
GNULIB_PUTENV = @GNULIB_PUTENV@
GNULIB_PUTS = @GNULIB_PUTS@
GNULIB_PWRITE = @GNULIB_PWRITE@
+GNULIB_QSORT_R = @GNULIB_QSORT_R@
GNULIB_RAISE = @GNULIB_RAISE@
GNULIB_RANDOM = @GNULIB_RANDOM@
GNULIB_RANDOM_R = @GNULIB_RANDOM_R@
GNULIB_READLINKAT = @GNULIB_READLINKAT@
GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@
GNULIB_REALPATH = @GNULIB_REALPATH@
+GNULIB_RECV = @GNULIB_RECV@
+GNULIB_RECVFROM = @GNULIB_RECVFROM@
GNULIB_REMOVE = @GNULIB_REMOVE@
GNULIB_RENAME = @GNULIB_RENAME@
GNULIB_RENAMEAT = @GNULIB_RENAMEAT@
GNULIB_RPMATCH = @GNULIB_RPMATCH@
GNULIB_SCANF = @GNULIB_SCANF@
GNULIB_SECURE_GETENV = @GNULIB_SECURE_GETENV@
+GNULIB_SELECT = @GNULIB_SELECT@
+GNULIB_SEND = @GNULIB_SEND@
+GNULIB_SENDTO = @GNULIB_SENDTO@
GNULIB_SETENV = @GNULIB_SETENV@
GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
+GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
GNULIB_SIGACTION = @GNULIB_SIGACTION@
GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
GNULIB_SLEEP = @GNULIB_SLEEP@
GNULIB_SNPRINTF = @GNULIB_SNPRINTF@
+GNULIB_SOCKET = @GNULIB_SOCKET@
GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@
GNULIB_STAT = @GNULIB_STAT@
GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@
GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@
GNULIB_TIMEGM = @GNULIB_TIMEGM@
GNULIB_TIME_R = @GNULIB_TIME_R@
+GNULIB_TIME_RZ = @GNULIB_TIME_RZ@
GNULIB_TMPFILE = @GNULIB_TMPFILE@
GNULIB_TOWCTRANS = @GNULIB_TOWCTRANS@
GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@
GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
+HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@
HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@
HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@
+HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@
+HAVE_DECL_INET_PTON = @HAVE_DECL_INET_PTON@
HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@
HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@
HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
+HAVE_ISBLANK = @HAVE_ISBLANK@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@
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@
HAVE_MBRTOWC = @HAVE_MBRTOWC@
HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MKSTEMPS = @HAVE_MKSTEMPS@
HAVE_MSVC_INVALID_PARAMETER_HANDLER = @HAVE_MSVC_INVALID_PARAMETER_HANDLER@
HAVE_NANOSLEEP = @HAVE_NANOSLEEP@
+HAVE_NETINET_IN_H = @HAVE_NETINET_IN_H@
HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@
HAVE_OPENAT = @HAVE_OPENAT@
HAVE_OS_H = @HAVE_OS_H@
HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
HAVE_PREAD = @HAVE_PREAD@
+HAVE_PSELECT = @HAVE_PSELECT@
HAVE_PTHREAD_SIGMASK = @HAVE_PTHREAD_SIGMASK@
HAVE_PTSNAME = @HAVE_PTSNAME@
HAVE_PTSNAME_R = @HAVE_PTSNAME_R@
HAVE_REALPATH = @HAVE_REALPATH@
HAVE_RENAMEAT = @HAVE_RENAMEAT@
HAVE_RPMATCH = @HAVE_RPMATCH@
+HAVE_SA_FAMILY_T = @HAVE_SA_FAMILY_T@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
HAVE_STRUCT_SIGACTION_SA_SIGACTION = @HAVE_STRUCT_SIGACTION_SA_SIGACTION@
+HAVE_STRUCT_SOCKADDR_STORAGE = @HAVE_STRUCT_SOCKADDR_STORAGE@
+HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY = @HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY@
HAVE_STRUCT_TIMEVAL = @HAVE_STRUCT_TIMEVAL@
HAVE_STRVERSCMP = @HAVE_STRVERSCMP@
HAVE_SYMLINK = @HAVE_SYMLINK@
HAVE_SYMLINKAT = @HAVE_SYMLINKAT@
HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@
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_SELECT_H = @HAVE_SYS_SELECT_H@
+HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@
+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_UNISTD_H = @HAVE_UNISTD_H@
HAVE_UNLINKAT = @HAVE_UNLINKAT@
HAVE_WMEMCPY = @HAVE_WMEMCPY@
HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
HAVE_WMEMSET = @HAVE_WMEMSET@
+HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
HAVE__BOOL = @HAVE__BOOL@
HAVE__EXIT = @HAVE__EXIT@
ICONV_H = @ICONV_H@
INCLUDE_NEXT = @INCLUDE_NEXT@
INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@
+INET_PTON_LIB = @INET_PTON_LIB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
LIBS = @LIBS@
LIBSIGSEGV = @LIBSIGSEGV@
LIBSIGSEGV_PREFIX = @LIBSIGSEGV_PREFIX@
+LIBSOCKET = @LIBSOCKET@
LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
LIBUNISTRING_UNISTR_H = @LIBUNISTRING_UNISTR_H@
LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@
LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@
LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_SELECT = @LIB_SELECT@
LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@
LOCALE_FR = @LOCALE_FR@
LOCALE_FR_UTF8 = @LOCALE_FR_UTF8@
MSGFMT = @MSGFMT@
MSGFMT_015 = @MSGFMT_015@
MSGMERGE = @MSGMERGE@
+NETINET_IN_H = @NETINET_IN_H@
+NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@
NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@
NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@
NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@
NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H = @NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H@
NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H = @NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H@
NEXT_AS_FIRST_DIRECTIVE_LOCALE_H = @NEXT_AS_FIRST_DIRECTIVE_LOCALE_H@
+NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H = @NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H@
NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H = @NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H@
NEXT_AS_FIRST_DIRECTIVE_STDARG_H = @NEXT_AS_FIRST_DIRECTIVE_STDARG_H@
NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@
NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_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_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@
NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H@
NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@
NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@
NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@
NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@
+NEXT_CTYPE_H = @NEXT_CTYPE_H@
NEXT_ERRNO_H = @NEXT_ERRNO_H@
NEXT_FCNTL_H = @NEXT_FCNTL_H@
NEXT_FLOAT_H = @NEXT_FLOAT_H@
NEXT_INTTYPES_H = @NEXT_INTTYPES_H@
NEXT_LANGINFO_H = @NEXT_LANGINFO_H@
NEXT_LOCALE_H = @NEXT_LOCALE_H@
+NEXT_NETINET_IN_H = @NEXT_NETINET_IN_H@
NEXT_SIGNAL_H = @NEXT_SIGNAL_H@
NEXT_STDARG_H = @NEXT_STDARG_H@
NEXT_STDDEF_H = @NEXT_STDDEF_H@
NEXT_STDLIB_H = @NEXT_STDLIB_H@
NEXT_STRINGS_H = @NEXT_STRINGS_H@
NEXT_STRING_H = @NEXT_STRING_H@
+NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_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@
NEXT_SYS_TIME_H = @NEXT_SYS_TIME_H@
NEXT_SYS_TYPES_H = @NEXT_SYS_TYPES_H@
+NEXT_SYS_UIO_H = @NEXT_SYS_UIO_H@
NEXT_SYS_WAIT_H = @NEXT_SYS_WAIT_H@
NEXT_TIME_H = @NEXT_TIME_H@
NEXT_UNISTD_H = @NEXT_UNISTD_H@
REPLACE_GETCWD = @REPLACE_GETCWD@
REPLACE_GETDELIM = @REPLACE_GETDELIM@
REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@
+REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@
REPLACE_GETGROUPS = @REPLACE_GETGROUPS@
REPLACE_GETLINE = @REPLACE_GETLINE@
REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
+REPLACE_GMTIME = @REPLACE_GMTIME@
REPLACE_ICONV = @REPLACE_ICONV@
REPLACE_ICONV_OPEN = @REPLACE_ICONV_OPEN@
REPLACE_ICONV_UTF = @REPLACE_ICONV_UTF@
+REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
+REPLACE_INET_PTON = @REPLACE_INET_PTON@
+REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
REPLACE_LINK = @REPLACE_LINK@
REPLACE_LINKAT = @REPLACE_LINKAT@
REPLACE_LOCALECONV = @REPLACE_LOCALECONV@
+REPLACE_LOCALTIME = @REPLACE_LOCALTIME@
REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@
REPLACE_LSEEK = @REPLACE_LSEEK@
REPLACE_LSTAT = @REPLACE_LSTAT@
REPLACE_POPEN = @REPLACE_POPEN@
REPLACE_PREAD = @REPLACE_PREAD@
REPLACE_PRINTF = @REPLACE_PRINTF@
+REPLACE_PSELECT = @REPLACE_PSELECT@
REPLACE_PTHREAD_SIGMASK = @REPLACE_PTHREAD_SIGMASK@
REPLACE_PTSNAME = @REPLACE_PTSNAME@
REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@
REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
+REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
+REPLACE_READLINKAT = @REPLACE_READLINKAT@
REPLACE_REALLOC = @REPLACE_REALLOC@
REPLACE_REALPATH = @REPLACE_REALPATH@
REPLACE_REMOVE = @REPLACE_REMOVE@
REPLACE_RENAME = @REPLACE_RENAME@
REPLACE_RENAMEAT = @REPLACE_RENAMEAT@
REPLACE_RMDIR = @REPLACE_RMDIR@
+REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOIMAX = @REPLACE_STRTOIMAX@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOUMAX = @REPLACE_STRTOUMAX@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
+REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@
REPLACE_TIMEGM = @REPLACE_TIMEGM@
REPLACE_TMPFILE = @REPLACE_TMPFILE@
REPLACE_TOWLOWER = @REPLACE_TOWLOWER@
REPLACE_WCTOMB = @REPLACE_WCTOMB@
REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
REPLACE_WRITE = @REPLACE_WRITE@
+SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
SIZE_T_SUFFIX = @SIZE_T_SUFFIX@
SRC_VERSION_C = @SRC_VERSION_C@
+STDALIGN_H = @STDALIGN_H@
STDARG_H = @STDARG_H@
STDBOOL_H = @STDBOOL_H@
STDDEF_H = @STDDEF_H@
STDINT_H = @STDINT_H@
STRIP = @STRIP@
+SYS_IOCTL_H_HAVE_WINSOCK2_H = @SYS_IOCTL_H_HAVE_WINSOCK2_H@
+SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@
TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@
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_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@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
am__include = @am__include@
am__quote = @am__quote@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
+mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-AUTOMAKE_OPTIONS = 1.5 foreign subdir-objects
+AUTOMAKE_OPTIONS = 1.9.6 foreign subdir-objects
SUBDIRS = .
TESTS_ENVIRONMENT = EXEEXT='@EXEEXT@' srcdir='$(srcdir)' \
LOCALE_FR='@LOCALE_FR@' LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' \
noinst_HEADERS =
noinst_LIBRARIES =
check_LIBRARIES = libtests.a
-EXTRA_DIST = test-alloca-opt.c test-areadlink.h test-areadlink.c \
- macros.h argmatch.h test-argmatch.c macros.h test-binary-io.sh \
- test-binary-io.c macros.h test-bitrotate.c macros.h \
+EXTRA_DIST = accept.c w32sock.h test-accept.c signature.h macros.h \
+ test-alloca-opt.c test-areadlink.h test-areadlink.c macros.h \
+ test-argmatch.c macros.h arpa_inet.in.h test-arpa_inet.c \
+ test-binary-io.sh test-binary-io.c macros.h bind.c w32sock.h \
+ test-bind.c signature.h macros.h test-bitrotate.c macros.h \
test-btowc1.sh test-btowc2.sh test-btowc.c signature.h \
macros.h test-c-ctype.c macros.h test-c-stack.c \
test-c-stack.sh test-c-stack2.sh macros.h test-c-strcase.sh \
test-c-strcasecmp.c test-c-strncasecmp.c macros.h test-close.c \
- signature.h macros.h test-dirname.c test-dup2.c signature.h \
- macros.h test-environ.c test-errno.c test-exclude.c \
- test-exclude1.sh test-exclude2.sh test-exclude3.sh \
- test-exclude4.sh test-exclude5.sh test-exclude6.sh \
- test-exclude7.sh test-exclude8.sh test-fcntl-h.c test-fcntl.c \
- signature.h macros.h fdopen.c test-fdopen.c signature.h \
- macros.h test-fgetc.c signature.h macros.h test-filenamecat.c \
- test-float.c macros.h test-fnmatch.c signature.h macros.h \
- fpucw.h test-fputc.c signature.h macros.h test-fread.c \
- signature.h macros.h test-freopen-safer.c macros.h \
- test-freopen.c signature.h macros.h test-fstat.c signature.h \
- macros.h test-fwrite.c signature.h macros.h getcwd-lgpl.c \
+ signature.h macros.h connect.c w32sock.h test-connect.c \
+ signature.h macros.h test-ctype.c test-dirname.c test-dup2.c \
+ signature.h macros.h test-environ.c test-errno.c \
+ test-exclude.c test-exclude1.sh test-exclude2.sh \
+ test-exclude3.sh test-exclude4.sh test-exclude5.sh \
+ test-exclude6.sh test-exclude7.sh test-exclude8.sh \
+ test-fcntl-h.c test-fcntl.c signature.h macros.h fdopen.c \
+ test-fdopen.c signature.h macros.h test-fgetc.c signature.h \
+ macros.h test-filenamecat.c test-float.c macros.h \
+ test-fnmatch.c signature.h macros.h fpucw.h test-fputc.c \
+ signature.h macros.h test-fread.c signature.h macros.h \
+ test-freopen-safer.c macros.h test-freopen.c signature.h \
+ macros.h test-fstat.c signature.h macros.h ftruncate.c \
+ test-ftruncate.c test-ftruncate.sh signature.h macros.h \
+ test-fwrite.c signature.h macros.h getcwd-lgpl.c \
test-getcwd-lgpl.c signature.h macros.h test-getdtablesize.c \
signature.h macros.h macros.h signature.h test-getopt.c \
test-getopt.h test-getopt_long.h getpagesize.c signature.h \
test-gettimeofday.c test-hash.c macros.h test-iconv-h.c \
test-iconv.c signature.h macros.h test-ignore-value.c \
+ inet_pton.c test-inet_pton.c signature.h macros.h \
test-intprops.c macros.h macros.h test-inttostr.c \
- test-inttypes.c test-iswblank.c macros.h test-langinfo.c \
- test-locale.c test-localeconv.c signature.h macros.h \
- test-lstat.h test-lstat.c signature.h macros.h \
- test-malloc-gnu.c test-malloca.c test-mbrtowc1.sh \
- test-mbrtowc2.sh test-mbrtowc3.sh test-mbrtowc4.sh \
+ test-inttypes.c ioctl.c w32sock.h test-ioctl.c signature.h \
+ macros.h test-isblank.c signature.h macros.h test-iswblank.c \
+ macros.h test-langinfo.c listen.c w32sock.h test-listen.c \
+ signature.h macros.h test-locale.c test-localeconv.c \
+ signature.h macros.h test-lstat.h test-lstat.c signature.h \
+ macros.h test-malloca.c test-mbrtowc1.sh test-mbrtowc2.sh \
+ test-mbrtowc3.sh test-mbrtowc4.sh test-mbrtowc5.sh \
test-mbrtowc.c test-mbrtowc-w32-1.sh test-mbrtowc-w32-2.sh \
test-mbrtowc-w32-3.sh test-mbrtowc-w32-4.sh \
test-mbrtowc-w32-5.sh test-mbrtowc-w32.c signature.h macros.h \
test-mbsrtowcs.c signature.h macros.h test-mbsstr1.c \
test-mbsstr2.sh test-mbsstr2.c test-mbsstr3.sh test-mbsstr3.c \
macros.h test-memchr.c zerosize-ptr.h signature.h macros.h \
- test-nl_langinfo.sh test-nl_langinfo.c signature.h macros.h \
- test-open.h test-open.c signature.h macros.h test-pathmax.c \
+ nanosleep.c test-nanosleep.c signature.h macros.h \
+ netinet_in.in.h test-netinet_in.c test-nl_langinfo.sh \
+ test-nl_langinfo.c signature.h macros.h test-open.h \
+ test-open.c signature.h macros.h test-pathmax.c perror.c \
+ macros.h signature.h test-perror.c test-perror2.c \
+ test-perror.sh pipe.c test-pipe.c signature.h macros.h \
putenv.c test-quotearg-simple.c test-quotearg.h macros.h \
- test-raise.c signature.h macros.h test-readlink.h \
- test-readlink.c signature.h macros.h test-regex.c macros.h \
- same-inode.h setenv.c test-setenv.c signature.h macros.h \
- setlocale.c test-setlocale1.sh test-setlocale1.c \
- test-setlocale2.sh test-setlocale2.c signature.h macros.h \
- test-sh-quote.c test-sigaction.c signature.h macros.h \
- test-signal-h.c test-sigprocmask.c signature.h macros.h \
- sleep.c test-sleep.c signature.h macros.h \
+ zerosize-ptr.h test-raise.c signature.h macros.h \
+ test-rawmemchr.c zerosize-ptr.h signature.h macros.h \
+ test-readlink.h test-readlink.c signature.h macros.h \
+ test-regex.c macros.h same-inode.h select.c macros.h \
+ signature.h test-select.c test-select.h test-select-fd.c \
+ test-select-in.sh test-select-out.sh test-select-stdin.c \
+ test-setenv.c signature.h macros.h setlocale.c \
+ test-setlocale1.sh test-setlocale1.c test-setlocale2.sh \
+ test-setlocale2.c signature.h macros.h setsockopt.c w32sock.h \
+ test-setsockopt.c signature.h macros.h test-sh-quote.c \
+ test-sigaction.c signature.h macros.h test-signal-h.c \
+ test-sigprocmask.c signature.h macros.h sleep.c test-sleep.c \
+ signature.h macros.h \
$(top_srcdir)/build-aux/snippet/_Noreturn.h \
$(top_srcdir)/build-aux/snippet/arg-nonnull.h \
$(top_srcdir)/build-aux/snippet/c++defs.h \
$(top_srcdir)/build-aux/snippet/unused-parameter.h \
$(top_srcdir)/build-aux/snippet/warn-on-use.h snprintf.c \
- test-snprintf.c signature.h macros.h test-stat.h test-stat.c \
- signature.h macros.h test-stat-time.c macros.h test-stdbool.c \
- test-stddef.c test-stdint.c test-stdio.c test-stdlib.c \
- test-sys_wait.h test-strerror.c signature.h macros.h \
- test-strftime.c macros.h test-striconv.c macros.h \
- test-string.c test-strings.c test-strnlen.c zerosize-ptr.h \
- signature.h macros.h test-strtoull.c signature.h macros.h \
- test-strtoumax.c signature.h macros.h symlink.c test-symlink.h \
- test-symlink.c signature.h macros.h test-sys_stat.c \
- test-sys_time.c test-sys_types.c test-sys_wait.c \
- test-sys_wait.h init.sh test-init.sh test-time.c test-unistd.c \
+ test-snprintf.c signature.h macros.h socket.c w32sock.h \
+ w32sock.h test-sockets.c test-stat.h test-stat.c signature.h \
+ macros.h test-stat-time.c macros.h nap.h stdalign.in.h \
+ test-stdalign.c macros.h test-stdbool.c test-stddef.c \
+ test-stdint.c test-stdio.c test-stdlib.c test-sys_wait.h \
+ test-strerror.c signature.h macros.h strerror_r.c \
+ test-strerror_r.c signature.h macros.h test-strftime.c \
+ macros.h test-striconv.c macros.h test-string.c test-strings.c \
+ test-strnlen.c zerosize-ptr.h signature.h macros.h \
+ test-strtoull.c signature.h macros.h test-strtoumax.c \
+ signature.h macros.h symlink.c test-symlink.h test-symlink.c \
+ signature.h macros.h sys_ioctl.in.h test-sys_ioctl.c \
+ sys_select.in.h test-sys_select.c signature.h sys_socket.in.h \
+ test-sys_socket.c test-sys_stat.c test-sys_time.c \
+ test-sys_types.c sys_uio.in.h test-sys_uio.c test-sys_wait.c \
+ test-sys_wait.h init.sh test-init.sh test-time.c \
+ test-timespec.c macros.h test-unistd.c \
unistr/test-u8-mbtoucr.c macros.h unistr/test-u8-uctomb.c \
macros.h uniwidth/test-uc_width.c uniwidth/test-uc_width2.c \
- uniwidth/test-uc_width2.sh macros.h unsetenv.c test-unsetenv.c \
- signature.h macros.h test-update-copyright.sh usleep.c \
- test-usleep.c signature.h macros.h test-vasnprintf.c macros.h \
- test-vasprintf.c signature.h macros.h \
- test-vc-list-files-git.sh test-vc-list-files-cvs.sh \
+ uniwidth/test-uc_width2.sh macros.h test-unsetenv.c \
+ signature.h macros.h test-update-copyright.sh \
+ test-vasnprintf.c macros.h test-vasprintf.c signature.h \
+ macros.h test-vc-list-files-git.sh test-vc-list-files-cvs.sh \
test-verify.c test-verify.sh test-version-etc.c \
test-version-etc.sh test-wchar.c test-wcrtomb.sh \
test-wcrtomb.c test-wcrtomb-w32-1.sh test-wcrtomb-w32-2.sh \
# statements but through direct file reference. Therefore this snippet must be
# present in all Makefile.am that need it. This is ensured by the applicability
# 'all' defined above.
-BUILT_SOURCES = arg-nonnull.h c++defs.h unused-parameter.h \
- warn-on-use.h
+BUILT_SOURCES = arpa/inet.h $(NETINET_IN_H) arg-nonnull.h c++defs.h \
+ unused-parameter.h warn-on-use.h $(STDALIGN_H) sys/ioctl.h \
+ sys/select.h sys/socket.h sys/uio.h
SUFFIXES =
-MOSTLYCLEANFILES = core *.stackdump t-c-stack.tmp t-c-stack2.tmp \
+
+# This test expects compilation of test-verify.c to fail, and
+# each time it fails, the makefile rule does not perform the usual
+# "mv -f $name.Tpo $name.po, so tell make clean to remove that file.
+MOSTLYCLEANFILES = core *.stackdump arpa/inet.h arpa/inet.h-t \
+ t-c-stack.tmp t-c-stack2.tmp netinet/in.h netinet/in.h-t \
arg-nonnull.h arg-nonnull.h-t c++defs.h c++defs.h-t \
unused-parameter.h unused-parameter.h-t warn-on-use.h \
- warn-on-use.h-t
-MOSTLYCLEANDIRS =
+ warn-on-use.h-t stdalign.h stdalign.h-t sys/ioctl.h \
+ sys/ioctl.h-t sys/select.h sys/select.h-t sys/socket.h \
+ sys/socket.h-t sys/uio.h sys/uio.h-t .deps/test-verify.Tpo
+MOSTLYCLEANDIRS = arpa netinet sys sys sys sys
CLEANFILES =
DISTCLEANFILES =
MAINTAINERCLEANFILES =
-I../lib -I$(srcdir)/../lib
LDADD = libtests.a ../lib/libdiffutils.a libtests.a $(LIBTESTS_LIBDEPS)
-libtests_a_SOURCES = argmatch.c hash-pjw.h hash-pjw.c
+libtests_a_SOURCES = dtotimespec.c hash-pjw.h hash-pjw.c sockets.h \
+ sockets.c sys_socket.c timespec-add.c timespec-sub.c
libtests_a_LIBADD = $(gltests_LIBOBJS)
libtests_a_DEPENDENCIES = $(gltests_LIBOBJS)
-EXTRA_libtests_a_SOURCES = fdopen.c getcwd-lgpl.c getpagesize.c \
- putenv.c setenv.c setlocale.c sleep.c snprintf.c symlink.c \
- unsetenv.c usleep.c wctob.c wctomb.c
+EXTRA_libtests_a_SOURCES = accept.c bind.c connect.c fdopen.c \
+ ftruncate.c getcwd-lgpl.c getpagesize.c inet_pton.c ioctl.c \
+ listen.c nanosleep.c perror.c pipe.c putenv.c select.c \
+ setlocale.c setsockopt.c sleep.c snprintf.c socket.c \
+ strerror_r.c symlink.c wctob.c wctomb.c
AM_LIBTOOLFLAGS = --preserve-dup-deps
+test_accept_LDADD = $(LDADD) @LIBSOCKET@
test_argmatch_LDADD = $(LDADD) @LIBINTL@
+test_bind_LDADD = $(LDADD) @LIBSOCKET@ $(INET_PTON_LIB)
test_c_stack_LDADD = $(LDADD) $(LIBCSTACK) @LIBINTL@
+test_connect_LDADD = $(LDADD) @LIBSOCKET@ $(INET_PTON_LIB)
test_dirname_LDADD = $(LDADD) @LIBINTL@
-test_exclude_LDADD = $(LDADD) @LIBINTL@
+test_exclude_LDADD = $(LDADD) @LIBINTL@ $(LIBTHREAD)
test_filenamecat_LDADD = $(LDADD) @LIBINTL@
test_getcwd_lgpl_LDADD = $(LDADD) $(LIBINTL)
test_getopt_LDADD = $(LDADD) $(LIBINTL)
test_iconv_LDADD = $(LDADD) @LIBICONV@
+test_inet_pton_LDADD = $(LDADD) @INET_PTON_LIB@
+test_listen_LDADD = $(LDADD) @LIBSOCKET@
+test_nanosleep_LDADD = $(LDADD) $(LIB_NANOSLEEP)
test_quotearg_simple_LDADD = $(LDADD) @LIBINTL@
-test_regex_LDADD = $(LDADD) @LIBINTL@
+test_regex_LDADD = $(LDADD) @LIBINTL@ $(LIBTHREAD) $(LIB_PTHREAD)
+test_select_LDADD = $(LDADD) @LIB_SELECT@ @LIBSOCKET@ $(INET_PTON_LIB)
+test_select_fd_LDADD = $(LDADD) @LIB_SELECT@
+test_select_stdin_LDADD = $(LDADD) @LIB_SELECT@
+test_setsockopt_LDADD = $(LDADD) @LIBSOCKET@
test_sh_quote_LDADD = $(LDADD) @LIBINTL@
# Because this Makefile snippet defines a variable used by other
CXXDEFS_H = c++defs.h
UNUSED_PARAMETER_H = unused-parameter.h
WARN_ON_USE_H = warn-on-use.h
+test_sockets_LDADD = $(LDADD) @LIBSOCKET@
test_stat_LDADD = $(LDADD) $(LIBINTL)
+test_stat_time_LDADD = $(LDADD) $(LIB_NANOSLEEP)
test_striconv_LDADD = $(LDADD) @LIBICONV@
test_u8_mbtoucr_SOURCES = unistr/test-u8-mbtoucr.c
test_u8_mbtoucr_LDADD = $(LDADD) $(LIBUNISTRING)
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign gnulib-tests/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign gnulib-tests/Makefile
-.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
esac;
-$(srcdir)/gnulib.mk:
+$(srcdir)/gnulib.mk $(am__empty):
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
clean-noinstLIBRARIES:
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
+
libtests.a: $(libtests_a_OBJECTS) $(libtests_a_DEPENDENCIES) $(EXTRA_libtests_a_DEPENDENCIES)
$(AM_V_at)-rm -f libtests.a
$(AM_V_AR)$(libtests_a_AR) libtests.a $(libtests_a_OBJECTS) $(libtests_a_LIBADD)
clean-noinstPROGRAMS:
-test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS)
+
+test-accept$(EXEEXT): $(test_accept_OBJECTS) $(test_accept_DEPENDENCIES) $(EXTRA_test_accept_DEPENDENCIES)
+ @rm -f test-accept$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_accept_OBJECTS) $(test_accept_LDADD) $(LIBS)
+
test-alloca-opt$(EXEEXT): $(test_alloca_opt_OBJECTS) $(test_alloca_opt_DEPENDENCIES) $(EXTRA_test_alloca_opt_DEPENDENCIES)
@rm -f test-alloca-opt$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_alloca_opt_OBJECTS) $(test_alloca_opt_LDADD) $(LIBS)
+
test-areadlink$(EXEEXT): $(test_areadlink_OBJECTS) $(test_areadlink_DEPENDENCIES) $(EXTRA_test_areadlink_DEPENDENCIES)
@rm -f test-areadlink$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_areadlink_OBJECTS) $(test_areadlink_LDADD) $(LIBS)
+
test-argmatch$(EXEEXT): $(test_argmatch_OBJECTS) $(test_argmatch_DEPENDENCIES) $(EXTRA_test_argmatch_DEPENDENCIES)
@rm -f test-argmatch$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_argmatch_OBJECTS) $(test_argmatch_LDADD) $(LIBS)
+
+test-arpa_inet$(EXEEXT): $(test_arpa_inet_OBJECTS) $(test_arpa_inet_DEPENDENCIES) $(EXTRA_test_arpa_inet_DEPENDENCIES)
+ @rm -f test-arpa_inet$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_arpa_inet_OBJECTS) $(test_arpa_inet_LDADD) $(LIBS)
+
test-binary-io$(EXEEXT): $(test_binary_io_OBJECTS) $(test_binary_io_DEPENDENCIES) $(EXTRA_test_binary_io_DEPENDENCIES)
@rm -f test-binary-io$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_binary_io_OBJECTS) $(test_binary_io_LDADD) $(LIBS)
+
+test-bind$(EXEEXT): $(test_bind_OBJECTS) $(test_bind_DEPENDENCIES) $(EXTRA_test_bind_DEPENDENCIES)
+ @rm -f test-bind$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_bind_OBJECTS) $(test_bind_LDADD) $(LIBS)
+
test-bitrotate$(EXEEXT): $(test_bitrotate_OBJECTS) $(test_bitrotate_DEPENDENCIES) $(EXTRA_test_bitrotate_DEPENDENCIES)
@rm -f test-bitrotate$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_bitrotate_OBJECTS) $(test_bitrotate_LDADD) $(LIBS)
+
test-btowc$(EXEEXT): $(test_btowc_OBJECTS) $(test_btowc_DEPENDENCIES) $(EXTRA_test_btowc_DEPENDENCIES)
@rm -f test-btowc$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_btowc_OBJECTS) $(test_btowc_LDADD) $(LIBS)
+
test-c-ctype$(EXEEXT): $(test_c_ctype_OBJECTS) $(test_c_ctype_DEPENDENCIES) $(EXTRA_test_c_ctype_DEPENDENCIES)
@rm -f test-c-ctype$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_c_ctype_OBJECTS) $(test_c_ctype_LDADD) $(LIBS)
+
test-c-stack$(EXEEXT): $(test_c_stack_OBJECTS) $(test_c_stack_DEPENDENCIES) $(EXTRA_test_c_stack_DEPENDENCIES)
@rm -f test-c-stack$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_c_stack_OBJECTS) $(test_c_stack_LDADD) $(LIBS)
+
test-c-strcasecmp$(EXEEXT): $(test_c_strcasecmp_OBJECTS) $(test_c_strcasecmp_DEPENDENCIES) $(EXTRA_test_c_strcasecmp_DEPENDENCIES)
@rm -f test-c-strcasecmp$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_c_strcasecmp_OBJECTS) $(test_c_strcasecmp_LDADD) $(LIBS)
+
test-c-strncasecmp$(EXEEXT): $(test_c_strncasecmp_OBJECTS) $(test_c_strncasecmp_DEPENDENCIES) $(EXTRA_test_c_strncasecmp_DEPENDENCIES)
@rm -f test-c-strncasecmp$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_c_strncasecmp_OBJECTS) $(test_c_strncasecmp_LDADD) $(LIBS)
+
test-close$(EXEEXT): $(test_close_OBJECTS) $(test_close_DEPENDENCIES) $(EXTRA_test_close_DEPENDENCIES)
@rm -f test-close$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_close_OBJECTS) $(test_close_LDADD) $(LIBS)
+
+test-connect$(EXEEXT): $(test_connect_OBJECTS) $(test_connect_DEPENDENCIES) $(EXTRA_test_connect_DEPENDENCIES)
+ @rm -f test-connect$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_connect_OBJECTS) $(test_connect_LDADD) $(LIBS)
+
+test-ctype$(EXEEXT): $(test_ctype_OBJECTS) $(test_ctype_DEPENDENCIES) $(EXTRA_test_ctype_DEPENDENCIES)
+ @rm -f test-ctype$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_ctype_OBJECTS) $(test_ctype_LDADD) $(LIBS)
+
test-dirname$(EXEEXT): $(test_dirname_OBJECTS) $(test_dirname_DEPENDENCIES) $(EXTRA_test_dirname_DEPENDENCIES)
@rm -f test-dirname$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_dirname_OBJECTS) $(test_dirname_LDADD) $(LIBS)
+
test-dup2$(EXEEXT): $(test_dup2_OBJECTS) $(test_dup2_DEPENDENCIES) $(EXTRA_test_dup2_DEPENDENCIES)
@rm -f test-dup2$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_dup2_OBJECTS) $(test_dup2_LDADD) $(LIBS)
+
test-environ$(EXEEXT): $(test_environ_OBJECTS) $(test_environ_DEPENDENCIES) $(EXTRA_test_environ_DEPENDENCIES)
@rm -f test-environ$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_environ_OBJECTS) $(test_environ_LDADD) $(LIBS)
+
test-errno$(EXEEXT): $(test_errno_OBJECTS) $(test_errno_DEPENDENCIES) $(EXTRA_test_errno_DEPENDENCIES)
@rm -f test-errno$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_errno_OBJECTS) $(test_errno_LDADD) $(LIBS)
+
test-exclude$(EXEEXT): $(test_exclude_OBJECTS) $(test_exclude_DEPENDENCIES) $(EXTRA_test_exclude_DEPENDENCIES)
@rm -f test-exclude$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_exclude_OBJECTS) $(test_exclude_LDADD) $(LIBS)
+
test-fcntl$(EXEEXT): $(test_fcntl_OBJECTS) $(test_fcntl_DEPENDENCIES) $(EXTRA_test_fcntl_DEPENDENCIES)
@rm -f test-fcntl$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_fcntl_OBJECTS) $(test_fcntl_LDADD) $(LIBS)
+
test-fcntl-h$(EXEEXT): $(test_fcntl_h_OBJECTS) $(test_fcntl_h_DEPENDENCIES) $(EXTRA_test_fcntl_h_DEPENDENCIES)
@rm -f test-fcntl-h$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_fcntl_h_OBJECTS) $(test_fcntl_h_LDADD) $(LIBS)
+
test-fdopen$(EXEEXT): $(test_fdopen_OBJECTS) $(test_fdopen_DEPENDENCIES) $(EXTRA_test_fdopen_DEPENDENCIES)
@rm -f test-fdopen$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_fdopen_OBJECTS) $(test_fdopen_LDADD) $(LIBS)
+
test-fgetc$(EXEEXT): $(test_fgetc_OBJECTS) $(test_fgetc_DEPENDENCIES) $(EXTRA_test_fgetc_DEPENDENCIES)
@rm -f test-fgetc$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_fgetc_OBJECTS) $(test_fgetc_LDADD) $(LIBS)
+
test-filenamecat$(EXEEXT): $(test_filenamecat_OBJECTS) $(test_filenamecat_DEPENDENCIES) $(EXTRA_test_filenamecat_DEPENDENCIES)
@rm -f test-filenamecat$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_filenamecat_OBJECTS) $(test_filenamecat_LDADD) $(LIBS)
+
test-float$(EXEEXT): $(test_float_OBJECTS) $(test_float_DEPENDENCIES) $(EXTRA_test_float_DEPENDENCIES)
@rm -f test-float$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_float_OBJECTS) $(test_float_LDADD) $(LIBS)
+
test-fnmatch$(EXEEXT): $(test_fnmatch_OBJECTS) $(test_fnmatch_DEPENDENCIES) $(EXTRA_test_fnmatch_DEPENDENCIES)
@rm -f test-fnmatch$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_fnmatch_OBJECTS) $(test_fnmatch_LDADD) $(LIBS)
+
test-fputc$(EXEEXT): $(test_fputc_OBJECTS) $(test_fputc_DEPENDENCIES) $(EXTRA_test_fputc_DEPENDENCIES)
@rm -f test-fputc$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_fputc_OBJECTS) $(test_fputc_LDADD) $(LIBS)
+
test-fread$(EXEEXT): $(test_fread_OBJECTS) $(test_fread_DEPENDENCIES) $(EXTRA_test_fread_DEPENDENCIES)
@rm -f test-fread$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_fread_OBJECTS) $(test_fread_LDADD) $(LIBS)
+
test-freopen$(EXEEXT): $(test_freopen_OBJECTS) $(test_freopen_DEPENDENCIES) $(EXTRA_test_freopen_DEPENDENCIES)
@rm -f test-freopen$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_freopen_OBJECTS) $(test_freopen_LDADD) $(LIBS)
+
test-freopen-safer$(EXEEXT): $(test_freopen_safer_OBJECTS) $(test_freopen_safer_DEPENDENCIES) $(EXTRA_test_freopen_safer_DEPENDENCIES)
@rm -f test-freopen-safer$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_freopen_safer_OBJECTS) $(test_freopen_safer_LDADD) $(LIBS)
+
test-fstat$(EXEEXT): $(test_fstat_OBJECTS) $(test_fstat_DEPENDENCIES) $(EXTRA_test_fstat_DEPENDENCIES)
@rm -f test-fstat$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_fstat_OBJECTS) $(test_fstat_LDADD) $(LIBS)
+
+test-ftruncate$(EXEEXT): $(test_ftruncate_OBJECTS) $(test_ftruncate_DEPENDENCIES) $(EXTRA_test_ftruncate_DEPENDENCIES)
+ @rm -f test-ftruncate$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_ftruncate_OBJECTS) $(test_ftruncate_LDADD) $(LIBS)
+
test-fwrite$(EXEEXT): $(test_fwrite_OBJECTS) $(test_fwrite_DEPENDENCIES) $(EXTRA_test_fwrite_DEPENDENCIES)
@rm -f test-fwrite$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_fwrite_OBJECTS) $(test_fwrite_LDADD) $(LIBS)
+
test-getcwd-lgpl$(EXEEXT): $(test_getcwd_lgpl_OBJECTS) $(test_getcwd_lgpl_DEPENDENCIES) $(EXTRA_test_getcwd_lgpl_DEPENDENCIES)
@rm -f test-getcwd-lgpl$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_getcwd_lgpl_OBJECTS) $(test_getcwd_lgpl_LDADD) $(LIBS)
+
test-getdtablesize$(EXEEXT): $(test_getdtablesize_OBJECTS) $(test_getdtablesize_DEPENDENCIES) $(EXTRA_test_getdtablesize_DEPENDENCIES)
@rm -f test-getdtablesize$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_getdtablesize_OBJECTS) $(test_getdtablesize_LDADD) $(LIBS)
+
test-getopt$(EXEEXT): $(test_getopt_OBJECTS) $(test_getopt_DEPENDENCIES) $(EXTRA_test_getopt_DEPENDENCIES)
@rm -f test-getopt$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_getopt_OBJECTS) $(test_getopt_LDADD) $(LIBS)
+
test-gettimeofday$(EXEEXT): $(test_gettimeofday_OBJECTS) $(test_gettimeofday_DEPENDENCIES) $(EXTRA_test_gettimeofday_DEPENDENCIES)
@rm -f test-gettimeofday$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_gettimeofday_OBJECTS) $(test_gettimeofday_LDADD) $(LIBS)
+
test-hash$(EXEEXT): $(test_hash_OBJECTS) $(test_hash_DEPENDENCIES) $(EXTRA_test_hash_DEPENDENCIES)
@rm -f test-hash$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_hash_OBJECTS) $(test_hash_LDADD) $(LIBS)
+
test-iconv$(EXEEXT): $(test_iconv_OBJECTS) $(test_iconv_DEPENDENCIES) $(EXTRA_test_iconv_DEPENDENCIES)
@rm -f test-iconv$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_iconv_OBJECTS) $(test_iconv_LDADD) $(LIBS)
+
test-iconv-h$(EXEEXT): $(test_iconv_h_OBJECTS) $(test_iconv_h_DEPENDENCIES) $(EXTRA_test_iconv_h_DEPENDENCIES)
@rm -f test-iconv-h$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_iconv_h_OBJECTS) $(test_iconv_h_LDADD) $(LIBS)
+
test-ignore-value$(EXEEXT): $(test_ignore_value_OBJECTS) $(test_ignore_value_DEPENDENCIES) $(EXTRA_test_ignore_value_DEPENDENCIES)
@rm -f test-ignore-value$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_ignore_value_OBJECTS) $(test_ignore_value_LDADD) $(LIBS)
+
+test-inet_pton$(EXEEXT): $(test_inet_pton_OBJECTS) $(test_inet_pton_DEPENDENCIES) $(EXTRA_test_inet_pton_DEPENDENCIES)
+ @rm -f test-inet_pton$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_inet_pton_OBJECTS) $(test_inet_pton_LDADD) $(LIBS)
+
test-intprops$(EXEEXT): $(test_intprops_OBJECTS) $(test_intprops_DEPENDENCIES) $(EXTRA_test_intprops_DEPENDENCIES)
@rm -f test-intprops$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_intprops_OBJECTS) $(test_intprops_LDADD) $(LIBS)
+
test-inttostr$(EXEEXT): $(test_inttostr_OBJECTS) $(test_inttostr_DEPENDENCIES) $(EXTRA_test_inttostr_DEPENDENCIES)
@rm -f test-inttostr$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_inttostr_OBJECTS) $(test_inttostr_LDADD) $(LIBS)
+
test-inttypes$(EXEEXT): $(test_inttypes_OBJECTS) $(test_inttypes_DEPENDENCIES) $(EXTRA_test_inttypes_DEPENDENCIES)
@rm -f test-inttypes$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_inttypes_OBJECTS) $(test_inttypes_LDADD) $(LIBS)
+
+test-ioctl$(EXEEXT): $(test_ioctl_OBJECTS) $(test_ioctl_DEPENDENCIES) $(EXTRA_test_ioctl_DEPENDENCIES)
+ @rm -f test-ioctl$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_ioctl_OBJECTS) $(test_ioctl_LDADD) $(LIBS)
+
+test-isblank$(EXEEXT): $(test_isblank_OBJECTS) $(test_isblank_DEPENDENCIES) $(EXTRA_test_isblank_DEPENDENCIES)
+ @rm -f test-isblank$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_isblank_OBJECTS) $(test_isblank_LDADD) $(LIBS)
+
test-iswblank$(EXEEXT): $(test_iswblank_OBJECTS) $(test_iswblank_DEPENDENCIES) $(EXTRA_test_iswblank_DEPENDENCIES)
@rm -f test-iswblank$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_iswblank_OBJECTS) $(test_iswblank_LDADD) $(LIBS)
+
test-langinfo$(EXEEXT): $(test_langinfo_OBJECTS) $(test_langinfo_DEPENDENCIES) $(EXTRA_test_langinfo_DEPENDENCIES)
@rm -f test-langinfo$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_langinfo_OBJECTS) $(test_langinfo_LDADD) $(LIBS)
+
+test-listen$(EXEEXT): $(test_listen_OBJECTS) $(test_listen_DEPENDENCIES) $(EXTRA_test_listen_DEPENDENCIES)
+ @rm -f test-listen$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_listen_OBJECTS) $(test_listen_LDADD) $(LIBS)
+
test-locale$(EXEEXT): $(test_locale_OBJECTS) $(test_locale_DEPENDENCIES) $(EXTRA_test_locale_DEPENDENCIES)
@rm -f test-locale$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_locale_OBJECTS) $(test_locale_LDADD) $(LIBS)
+
test-localeconv$(EXEEXT): $(test_localeconv_OBJECTS) $(test_localeconv_DEPENDENCIES) $(EXTRA_test_localeconv_DEPENDENCIES)
@rm -f test-localeconv$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_localeconv_OBJECTS) $(test_localeconv_LDADD) $(LIBS)
+
test-lstat$(EXEEXT): $(test_lstat_OBJECTS) $(test_lstat_DEPENDENCIES) $(EXTRA_test_lstat_DEPENDENCIES)
@rm -f test-lstat$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_lstat_OBJECTS) $(test_lstat_LDADD) $(LIBS)
-test-malloc-gnu$(EXEEXT): $(test_malloc_gnu_OBJECTS) $(test_malloc_gnu_DEPENDENCIES) $(EXTRA_test_malloc_gnu_DEPENDENCIES)
- @rm -f test-malloc-gnu$(EXEEXT)
- $(AM_V_CCLD)$(LINK) $(test_malloc_gnu_OBJECTS) $(test_malloc_gnu_LDADD) $(LIBS)
+
test-malloca$(EXEEXT): $(test_malloca_OBJECTS) $(test_malloca_DEPENDENCIES) $(EXTRA_test_malloca_DEPENDENCIES)
@rm -f test-malloca$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_malloca_OBJECTS) $(test_malloca_LDADD) $(LIBS)
+
test-mbrtowc$(EXEEXT): $(test_mbrtowc_OBJECTS) $(test_mbrtowc_DEPENDENCIES) $(EXTRA_test_mbrtowc_DEPENDENCIES)
@rm -f test-mbrtowc$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_mbrtowc_OBJECTS) $(test_mbrtowc_LDADD) $(LIBS)
+
test-mbrtowc-w32$(EXEEXT): $(test_mbrtowc_w32_OBJECTS) $(test_mbrtowc_w32_DEPENDENCIES) $(EXTRA_test_mbrtowc_w32_DEPENDENCIES)
@rm -f test-mbrtowc-w32$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_mbrtowc_w32_OBJECTS) $(test_mbrtowc_w32_LDADD) $(LIBS)
+
test-mbscasecmp$(EXEEXT): $(test_mbscasecmp_OBJECTS) $(test_mbscasecmp_DEPENDENCIES) $(EXTRA_test_mbscasecmp_DEPENDENCIES)
@rm -f test-mbscasecmp$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_mbscasecmp_OBJECTS) $(test_mbscasecmp_LDADD) $(LIBS)
+
test-mbsinit$(EXEEXT): $(test_mbsinit_OBJECTS) $(test_mbsinit_DEPENDENCIES) $(EXTRA_test_mbsinit_DEPENDENCIES)
@rm -f test-mbsinit$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_mbsinit_OBJECTS) $(test_mbsinit_LDADD) $(LIBS)
+
test-mbsrtowcs$(EXEEXT): $(test_mbsrtowcs_OBJECTS) $(test_mbsrtowcs_DEPENDENCIES) $(EXTRA_test_mbsrtowcs_DEPENDENCIES)
@rm -f test-mbsrtowcs$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_mbsrtowcs_OBJECTS) $(test_mbsrtowcs_LDADD) $(LIBS)
+
test-mbsstr1$(EXEEXT): $(test_mbsstr1_OBJECTS) $(test_mbsstr1_DEPENDENCIES) $(EXTRA_test_mbsstr1_DEPENDENCIES)
@rm -f test-mbsstr1$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_mbsstr1_OBJECTS) $(test_mbsstr1_LDADD) $(LIBS)
+
test-mbsstr2$(EXEEXT): $(test_mbsstr2_OBJECTS) $(test_mbsstr2_DEPENDENCIES) $(EXTRA_test_mbsstr2_DEPENDENCIES)
@rm -f test-mbsstr2$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_mbsstr2_OBJECTS) $(test_mbsstr2_LDADD) $(LIBS)
+
test-mbsstr3$(EXEEXT): $(test_mbsstr3_OBJECTS) $(test_mbsstr3_DEPENDENCIES) $(EXTRA_test_mbsstr3_DEPENDENCIES)
@rm -f test-mbsstr3$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_mbsstr3_OBJECTS) $(test_mbsstr3_LDADD) $(LIBS)
+
test-memchr$(EXEEXT): $(test_memchr_OBJECTS) $(test_memchr_DEPENDENCIES) $(EXTRA_test_memchr_DEPENDENCIES)
@rm -f test-memchr$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_memchr_OBJECTS) $(test_memchr_LDADD) $(LIBS)
+
+test-nanosleep$(EXEEXT): $(test_nanosleep_OBJECTS) $(test_nanosleep_DEPENDENCIES) $(EXTRA_test_nanosleep_DEPENDENCIES)
+ @rm -f test-nanosleep$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_nanosleep_OBJECTS) $(test_nanosleep_LDADD) $(LIBS)
+
+test-netinet_in$(EXEEXT): $(test_netinet_in_OBJECTS) $(test_netinet_in_DEPENDENCIES) $(EXTRA_test_netinet_in_DEPENDENCIES)
+ @rm -f test-netinet_in$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_netinet_in_OBJECTS) $(test_netinet_in_LDADD) $(LIBS)
+
test-nl_langinfo$(EXEEXT): $(test_nl_langinfo_OBJECTS) $(test_nl_langinfo_DEPENDENCIES) $(EXTRA_test_nl_langinfo_DEPENDENCIES)
@rm -f test-nl_langinfo$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_nl_langinfo_OBJECTS) $(test_nl_langinfo_LDADD) $(LIBS)
+
test-open$(EXEEXT): $(test_open_OBJECTS) $(test_open_DEPENDENCIES) $(EXTRA_test_open_DEPENDENCIES)
@rm -f test-open$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_open_OBJECTS) $(test_open_LDADD) $(LIBS)
+
test-pathmax$(EXEEXT): $(test_pathmax_OBJECTS) $(test_pathmax_DEPENDENCIES) $(EXTRA_test_pathmax_DEPENDENCIES)
@rm -f test-pathmax$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_pathmax_OBJECTS) $(test_pathmax_LDADD) $(LIBS)
+
+test-perror$(EXEEXT): $(test_perror_OBJECTS) $(test_perror_DEPENDENCIES) $(EXTRA_test_perror_DEPENDENCIES)
+ @rm -f test-perror$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_perror_OBJECTS) $(test_perror_LDADD) $(LIBS)
+
+test-perror2$(EXEEXT): $(test_perror2_OBJECTS) $(test_perror2_DEPENDENCIES) $(EXTRA_test_perror2_DEPENDENCIES)
+ @rm -f test-perror2$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_perror2_OBJECTS) $(test_perror2_LDADD) $(LIBS)
+
+test-pipe$(EXEEXT): $(test_pipe_OBJECTS) $(test_pipe_DEPENDENCIES) $(EXTRA_test_pipe_DEPENDENCIES)
+ @rm -f test-pipe$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_pipe_OBJECTS) $(test_pipe_LDADD) $(LIBS)
+
test-quotearg-simple$(EXEEXT): $(test_quotearg_simple_OBJECTS) $(test_quotearg_simple_DEPENDENCIES) $(EXTRA_test_quotearg_simple_DEPENDENCIES)
@rm -f test-quotearg-simple$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_quotearg_simple_OBJECTS) $(test_quotearg_simple_LDADD) $(LIBS)
+
test-raise$(EXEEXT): $(test_raise_OBJECTS) $(test_raise_DEPENDENCIES) $(EXTRA_test_raise_DEPENDENCIES)
@rm -f test-raise$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_raise_OBJECTS) $(test_raise_LDADD) $(LIBS)
+
+test-rawmemchr$(EXEEXT): $(test_rawmemchr_OBJECTS) $(test_rawmemchr_DEPENDENCIES) $(EXTRA_test_rawmemchr_DEPENDENCIES)
+ @rm -f test-rawmemchr$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_rawmemchr_OBJECTS) $(test_rawmemchr_LDADD) $(LIBS)
+
test-readlink$(EXEEXT): $(test_readlink_OBJECTS) $(test_readlink_DEPENDENCIES) $(EXTRA_test_readlink_DEPENDENCIES)
@rm -f test-readlink$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_readlink_OBJECTS) $(test_readlink_LDADD) $(LIBS)
+
test-regex$(EXEEXT): $(test_regex_OBJECTS) $(test_regex_DEPENDENCIES) $(EXTRA_test_regex_DEPENDENCIES)
@rm -f test-regex$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_regex_OBJECTS) $(test_regex_LDADD) $(LIBS)
+
+test-select$(EXEEXT): $(test_select_OBJECTS) $(test_select_DEPENDENCIES) $(EXTRA_test_select_DEPENDENCIES)
+ @rm -f test-select$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_select_OBJECTS) $(test_select_LDADD) $(LIBS)
+
+test-select-fd$(EXEEXT): $(test_select_fd_OBJECTS) $(test_select_fd_DEPENDENCIES) $(EXTRA_test_select_fd_DEPENDENCIES)
+ @rm -f test-select-fd$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_select_fd_OBJECTS) $(test_select_fd_LDADD) $(LIBS)
+
+test-select-stdin$(EXEEXT): $(test_select_stdin_OBJECTS) $(test_select_stdin_DEPENDENCIES) $(EXTRA_test_select_stdin_DEPENDENCIES)
+ @rm -f test-select-stdin$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_select_stdin_OBJECTS) $(test_select_stdin_LDADD) $(LIBS)
+
test-setenv$(EXEEXT): $(test_setenv_OBJECTS) $(test_setenv_DEPENDENCIES) $(EXTRA_test_setenv_DEPENDENCIES)
@rm -f test-setenv$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_setenv_OBJECTS) $(test_setenv_LDADD) $(LIBS)
+
test-setlocale1$(EXEEXT): $(test_setlocale1_OBJECTS) $(test_setlocale1_DEPENDENCIES) $(EXTRA_test_setlocale1_DEPENDENCIES)
@rm -f test-setlocale1$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_setlocale1_OBJECTS) $(test_setlocale1_LDADD) $(LIBS)
+
test-setlocale2$(EXEEXT): $(test_setlocale2_OBJECTS) $(test_setlocale2_DEPENDENCIES) $(EXTRA_test_setlocale2_DEPENDENCIES)
@rm -f test-setlocale2$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_setlocale2_OBJECTS) $(test_setlocale2_LDADD) $(LIBS)
+
+test-setsockopt$(EXEEXT): $(test_setsockopt_OBJECTS) $(test_setsockopt_DEPENDENCIES) $(EXTRA_test_setsockopt_DEPENDENCIES)
+ @rm -f test-setsockopt$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_setsockopt_OBJECTS) $(test_setsockopt_LDADD) $(LIBS)
+
test-sh-quote$(EXEEXT): $(test_sh_quote_OBJECTS) $(test_sh_quote_DEPENDENCIES) $(EXTRA_test_sh_quote_DEPENDENCIES)
@rm -f test-sh-quote$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_sh_quote_OBJECTS) $(test_sh_quote_LDADD) $(LIBS)
+
test-sigaction$(EXEEXT): $(test_sigaction_OBJECTS) $(test_sigaction_DEPENDENCIES) $(EXTRA_test_sigaction_DEPENDENCIES)
@rm -f test-sigaction$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_sigaction_OBJECTS) $(test_sigaction_LDADD) $(LIBS)
+
test-signal-h$(EXEEXT): $(test_signal_h_OBJECTS) $(test_signal_h_DEPENDENCIES) $(EXTRA_test_signal_h_DEPENDENCIES)
@rm -f test-signal-h$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_signal_h_OBJECTS) $(test_signal_h_LDADD) $(LIBS)
+
test-sigprocmask$(EXEEXT): $(test_sigprocmask_OBJECTS) $(test_sigprocmask_DEPENDENCIES) $(EXTRA_test_sigprocmask_DEPENDENCIES)
@rm -f test-sigprocmask$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_sigprocmask_OBJECTS) $(test_sigprocmask_LDADD) $(LIBS)
+
test-sleep$(EXEEXT): $(test_sleep_OBJECTS) $(test_sleep_DEPENDENCIES) $(EXTRA_test_sleep_DEPENDENCIES)
@rm -f test-sleep$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_sleep_OBJECTS) $(test_sleep_LDADD) $(LIBS)
+
test-snprintf$(EXEEXT): $(test_snprintf_OBJECTS) $(test_snprintf_DEPENDENCIES) $(EXTRA_test_snprintf_DEPENDENCIES)
@rm -f test-snprintf$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_snprintf_OBJECTS) $(test_snprintf_LDADD) $(LIBS)
+
+test-sockets$(EXEEXT): $(test_sockets_OBJECTS) $(test_sockets_DEPENDENCIES) $(EXTRA_test_sockets_DEPENDENCIES)
+ @rm -f test-sockets$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_sockets_OBJECTS) $(test_sockets_LDADD) $(LIBS)
+
test-stat$(EXEEXT): $(test_stat_OBJECTS) $(test_stat_DEPENDENCIES) $(EXTRA_test_stat_DEPENDENCIES)
@rm -f test-stat$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_stat_OBJECTS) $(test_stat_LDADD) $(LIBS)
+
test-stat-time$(EXEEXT): $(test_stat_time_OBJECTS) $(test_stat_time_DEPENDENCIES) $(EXTRA_test_stat_time_DEPENDENCIES)
@rm -f test-stat-time$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_stat_time_OBJECTS) $(test_stat_time_LDADD) $(LIBS)
+
+test-stdalign$(EXEEXT): $(test_stdalign_OBJECTS) $(test_stdalign_DEPENDENCIES) $(EXTRA_test_stdalign_DEPENDENCIES)
+ @rm -f test-stdalign$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_stdalign_OBJECTS) $(test_stdalign_LDADD) $(LIBS)
+
test-stdbool$(EXEEXT): $(test_stdbool_OBJECTS) $(test_stdbool_DEPENDENCIES) $(EXTRA_test_stdbool_DEPENDENCIES)
@rm -f test-stdbool$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_stdbool_OBJECTS) $(test_stdbool_LDADD) $(LIBS)
+
test-stddef$(EXEEXT): $(test_stddef_OBJECTS) $(test_stddef_DEPENDENCIES) $(EXTRA_test_stddef_DEPENDENCIES)
@rm -f test-stddef$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_stddef_OBJECTS) $(test_stddef_LDADD) $(LIBS)
+
test-stdint$(EXEEXT): $(test_stdint_OBJECTS) $(test_stdint_DEPENDENCIES) $(EXTRA_test_stdint_DEPENDENCIES)
@rm -f test-stdint$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_stdint_OBJECTS) $(test_stdint_LDADD) $(LIBS)
+
test-stdio$(EXEEXT): $(test_stdio_OBJECTS) $(test_stdio_DEPENDENCIES) $(EXTRA_test_stdio_DEPENDENCIES)
@rm -f test-stdio$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_stdio_OBJECTS) $(test_stdio_LDADD) $(LIBS)
+
test-stdlib$(EXEEXT): $(test_stdlib_OBJECTS) $(test_stdlib_DEPENDENCIES) $(EXTRA_test_stdlib_DEPENDENCIES)
@rm -f test-stdlib$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_stdlib_OBJECTS) $(test_stdlib_LDADD) $(LIBS)
+
test-strerror$(EXEEXT): $(test_strerror_OBJECTS) $(test_strerror_DEPENDENCIES) $(EXTRA_test_strerror_DEPENDENCIES)
@rm -f test-strerror$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_strerror_OBJECTS) $(test_strerror_LDADD) $(LIBS)
+
+test-strerror_r$(EXEEXT): $(test_strerror_r_OBJECTS) $(test_strerror_r_DEPENDENCIES) $(EXTRA_test_strerror_r_DEPENDENCIES)
+ @rm -f test-strerror_r$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_strerror_r_OBJECTS) $(test_strerror_r_LDADD) $(LIBS)
+
test-strftime$(EXEEXT): $(test_strftime_OBJECTS) $(test_strftime_DEPENDENCIES) $(EXTRA_test_strftime_DEPENDENCIES)
@rm -f test-strftime$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_strftime_OBJECTS) $(test_strftime_LDADD) $(LIBS)
+
test-striconv$(EXEEXT): $(test_striconv_OBJECTS) $(test_striconv_DEPENDENCIES) $(EXTRA_test_striconv_DEPENDENCIES)
@rm -f test-striconv$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_striconv_OBJECTS) $(test_striconv_LDADD) $(LIBS)
+
test-string$(EXEEXT): $(test_string_OBJECTS) $(test_string_DEPENDENCIES) $(EXTRA_test_string_DEPENDENCIES)
@rm -f test-string$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_string_OBJECTS) $(test_string_LDADD) $(LIBS)
+
test-strings$(EXEEXT): $(test_strings_OBJECTS) $(test_strings_DEPENDENCIES) $(EXTRA_test_strings_DEPENDENCIES)
@rm -f test-strings$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_strings_OBJECTS) $(test_strings_LDADD) $(LIBS)
+
test-strnlen$(EXEEXT): $(test_strnlen_OBJECTS) $(test_strnlen_DEPENDENCIES) $(EXTRA_test_strnlen_DEPENDENCIES)
@rm -f test-strnlen$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_strnlen_OBJECTS) $(test_strnlen_LDADD) $(LIBS)
+
test-strtoull$(EXEEXT): $(test_strtoull_OBJECTS) $(test_strtoull_DEPENDENCIES) $(EXTRA_test_strtoull_DEPENDENCIES)
@rm -f test-strtoull$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_strtoull_OBJECTS) $(test_strtoull_LDADD) $(LIBS)
+
test-strtoumax$(EXEEXT): $(test_strtoumax_OBJECTS) $(test_strtoumax_DEPENDENCIES) $(EXTRA_test_strtoumax_DEPENDENCIES)
@rm -f test-strtoumax$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_strtoumax_OBJECTS) $(test_strtoumax_LDADD) $(LIBS)
+
test-symlink$(EXEEXT): $(test_symlink_OBJECTS) $(test_symlink_DEPENDENCIES) $(EXTRA_test_symlink_DEPENDENCIES)
@rm -f test-symlink$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_symlink_OBJECTS) $(test_symlink_LDADD) $(LIBS)
+
+test-sys_ioctl$(EXEEXT): $(test_sys_ioctl_OBJECTS) $(test_sys_ioctl_DEPENDENCIES) $(EXTRA_test_sys_ioctl_DEPENDENCIES)
+ @rm -f test-sys_ioctl$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_sys_ioctl_OBJECTS) $(test_sys_ioctl_LDADD) $(LIBS)
+
+test-sys_select$(EXEEXT): $(test_sys_select_OBJECTS) $(test_sys_select_DEPENDENCIES) $(EXTRA_test_sys_select_DEPENDENCIES)
+ @rm -f test-sys_select$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_sys_select_OBJECTS) $(test_sys_select_LDADD) $(LIBS)
+
+test-sys_socket$(EXEEXT): $(test_sys_socket_OBJECTS) $(test_sys_socket_DEPENDENCIES) $(EXTRA_test_sys_socket_DEPENDENCIES)
+ @rm -f test-sys_socket$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_sys_socket_OBJECTS) $(test_sys_socket_LDADD) $(LIBS)
+
test-sys_stat$(EXEEXT): $(test_sys_stat_OBJECTS) $(test_sys_stat_DEPENDENCIES) $(EXTRA_test_sys_stat_DEPENDENCIES)
@rm -f test-sys_stat$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_sys_stat_OBJECTS) $(test_sys_stat_LDADD) $(LIBS)
+
test-sys_time$(EXEEXT): $(test_sys_time_OBJECTS) $(test_sys_time_DEPENDENCIES) $(EXTRA_test_sys_time_DEPENDENCIES)
@rm -f test-sys_time$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_sys_time_OBJECTS) $(test_sys_time_LDADD) $(LIBS)
+
test-sys_types$(EXEEXT): $(test_sys_types_OBJECTS) $(test_sys_types_DEPENDENCIES) $(EXTRA_test_sys_types_DEPENDENCIES)
@rm -f test-sys_types$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_sys_types_OBJECTS) $(test_sys_types_LDADD) $(LIBS)
+
+test-sys_uio$(EXEEXT): $(test_sys_uio_OBJECTS) $(test_sys_uio_DEPENDENCIES) $(EXTRA_test_sys_uio_DEPENDENCIES)
+ @rm -f test-sys_uio$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_sys_uio_OBJECTS) $(test_sys_uio_LDADD) $(LIBS)
+
test-sys_wait$(EXEEXT): $(test_sys_wait_OBJECTS) $(test_sys_wait_DEPENDENCIES) $(EXTRA_test_sys_wait_DEPENDENCIES)
@rm -f test-sys_wait$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_sys_wait_OBJECTS) $(test_sys_wait_LDADD) $(LIBS)
+
test-time$(EXEEXT): $(test_time_OBJECTS) $(test_time_DEPENDENCIES) $(EXTRA_test_time_DEPENDENCIES)
@rm -f test-time$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_time_OBJECTS) $(test_time_LDADD) $(LIBS)
+
+test-timespec$(EXEEXT): $(test_timespec_OBJECTS) $(test_timespec_DEPENDENCIES) $(EXTRA_test_timespec_DEPENDENCIES)
+ @rm -f test-timespec$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(test_timespec_OBJECTS) $(test_timespec_LDADD) $(LIBS)
unistr/$(am__dirstamp):
@$(MKDIR_P) unistr
@: > unistr/$(am__dirstamp)
@: > unistr/$(DEPDIR)/$(am__dirstamp)
unistr/test-u8-mbtoucr.$(OBJEXT): unistr/$(am__dirstamp) \
unistr/$(DEPDIR)/$(am__dirstamp)
+
test-u8-mbtoucr$(EXEEXT): $(test_u8_mbtoucr_OBJECTS) $(test_u8_mbtoucr_DEPENDENCIES) $(EXTRA_test_u8_mbtoucr_DEPENDENCIES)
@rm -f test-u8-mbtoucr$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_u8_mbtoucr_OBJECTS) $(test_u8_mbtoucr_LDADD) $(LIBS)
unistr/test-u8-uctomb.$(OBJEXT): unistr/$(am__dirstamp) \
unistr/$(DEPDIR)/$(am__dirstamp)
+
test-u8-uctomb$(EXEEXT): $(test_u8_uctomb_OBJECTS) $(test_u8_uctomb_DEPENDENCIES) $(EXTRA_test_u8_uctomb_DEPENDENCIES)
@rm -f test-u8-uctomb$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_u8_uctomb_OBJECTS) $(test_u8_uctomb_LDADD) $(LIBS)
@: > uniwidth/$(DEPDIR)/$(am__dirstamp)
uniwidth/test-uc_width.$(OBJEXT): uniwidth/$(am__dirstamp) \
uniwidth/$(DEPDIR)/$(am__dirstamp)
+
test-uc_width$(EXEEXT): $(test_uc_width_OBJECTS) $(test_uc_width_DEPENDENCIES) $(EXTRA_test_uc_width_DEPENDENCIES)
@rm -f test-uc_width$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_uc_width_OBJECTS) $(test_uc_width_LDADD) $(LIBS)
uniwidth/test-uc_width2.$(OBJEXT): uniwidth/$(am__dirstamp) \
uniwidth/$(DEPDIR)/$(am__dirstamp)
+
test-uc_width2$(EXEEXT): $(test_uc_width2_OBJECTS) $(test_uc_width2_DEPENDENCIES) $(EXTRA_test_uc_width2_DEPENDENCIES)
@rm -f test-uc_width2$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_uc_width2_OBJECTS) $(test_uc_width2_LDADD) $(LIBS)
+
test-unistd$(EXEEXT): $(test_unistd_OBJECTS) $(test_unistd_DEPENDENCIES) $(EXTRA_test_unistd_DEPENDENCIES)
@rm -f test-unistd$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_unistd_OBJECTS) $(test_unistd_LDADD) $(LIBS)
+
test-unsetenv$(EXEEXT): $(test_unsetenv_OBJECTS) $(test_unsetenv_DEPENDENCIES) $(EXTRA_test_unsetenv_DEPENDENCIES)
@rm -f test-unsetenv$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_unsetenv_OBJECTS) $(test_unsetenv_LDADD) $(LIBS)
-test-usleep$(EXEEXT): $(test_usleep_OBJECTS) $(test_usleep_DEPENDENCIES) $(EXTRA_test_usleep_DEPENDENCIES)
- @rm -f test-usleep$(EXEEXT)
- $(AM_V_CCLD)$(LINK) $(test_usleep_OBJECTS) $(test_usleep_LDADD) $(LIBS)
+
test-vasnprintf$(EXEEXT): $(test_vasnprintf_OBJECTS) $(test_vasnprintf_DEPENDENCIES) $(EXTRA_test_vasnprintf_DEPENDENCIES)
@rm -f test-vasnprintf$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_vasnprintf_OBJECTS) $(test_vasnprintf_LDADD) $(LIBS)
+
test-vasprintf$(EXEEXT): $(test_vasprintf_OBJECTS) $(test_vasprintf_DEPENDENCIES) $(EXTRA_test_vasprintf_DEPENDENCIES)
@rm -f test-vasprintf$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_vasprintf_OBJECTS) $(test_vasprintf_LDADD) $(LIBS)
+
test-verify$(EXEEXT): $(test_verify_OBJECTS) $(test_verify_DEPENDENCIES) $(EXTRA_test_verify_DEPENDENCIES)
@rm -f test-verify$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_verify_OBJECTS) $(test_verify_LDADD) $(LIBS)
+
test-version-etc$(EXEEXT): $(test_version_etc_OBJECTS) $(test_version_etc_DEPENDENCIES) $(EXTRA_test_version_etc_DEPENDENCIES)
@rm -f test-version-etc$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_version_etc_OBJECTS) $(test_version_etc_LDADD) $(LIBS)
+
test-wchar$(EXEEXT): $(test_wchar_OBJECTS) $(test_wchar_DEPENDENCIES) $(EXTRA_test_wchar_DEPENDENCIES)
@rm -f test-wchar$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_wchar_OBJECTS) $(test_wchar_LDADD) $(LIBS)
+
test-wcrtomb$(EXEEXT): $(test_wcrtomb_OBJECTS) $(test_wcrtomb_DEPENDENCIES) $(EXTRA_test_wcrtomb_DEPENDENCIES)
@rm -f test-wcrtomb$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_wcrtomb_OBJECTS) $(test_wcrtomb_LDADD) $(LIBS)
+
test-wcrtomb-w32$(EXEEXT): $(test_wcrtomb_w32_OBJECTS) $(test_wcrtomb_w32_DEPENDENCIES) $(EXTRA_test_wcrtomb_w32_DEPENDENCIES)
@rm -f test-wcrtomb-w32$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_wcrtomb_w32_OBJECTS) $(test_wcrtomb_w32_LDADD) $(LIBS)
+
test-wctype-h$(EXEEXT): $(test_wctype_h_OBJECTS) $(test_wctype_h_DEPENDENCIES) $(EXTRA_test_wctype_h_DEPENDENCIES)
@rm -f test-wctype-h$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_wctype_h_OBJECTS) $(test_wctype_h_LDADD) $(LIBS)
+
test-wcwidth$(EXEEXT): $(test_wcwidth_OBJECTS) $(test_wcwidth_DEPENDENCIES) $(EXTRA_test_wcwidth_DEPENDENCIES)
@rm -f test-wcwidth$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_wcwidth_OBJECTS) $(test_wcwidth_LDADD) $(LIBS)
+
test-xalloc-die$(EXEEXT): $(test_xalloc_die_OBJECTS) $(test_xalloc_die_DEPENDENCIES) $(EXTRA_test_xalloc_die_DEPENDENCIES)
@rm -f test-xalloc-die$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_xalloc_die_OBJECTS) $(test_xalloc_die_LDADD) $(LIBS)
+
test-xstrtol$(EXEEXT): $(test_xstrtol_OBJECTS) $(test_xstrtol_DEPENDENCIES) $(EXTRA_test_xstrtol_DEPENDENCIES)
@rm -f test-xstrtol$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_xstrtol_OBJECTS) $(test_xstrtol_LDADD) $(LIBS)
+
test-xstrtoul$(EXEEXT): $(test_xstrtoul_OBJECTS) $(test_xstrtoul_DEPENDENCIES) $(EXTRA_test_xstrtoul_DEPENDENCIES)
@rm -f test-xstrtoul$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_xstrtoul_OBJECTS) $(test_xstrtoul_LDADD) $(LIBS)
+
test-xstrtoumax$(EXEEXT): $(test_xstrtoumax_OBJECTS) $(test_xstrtoumax_DEPENDENCIES) $(EXTRA_test_xstrtoumax_DEPENDENCIES)
@rm -f test-xstrtoumax$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_xstrtoumax_OBJECTS) $(test_xstrtoumax_LDADD) $(LIBS)
+
test-xvasprintf$(EXEEXT): $(test_xvasprintf_OBJECTS) $(test_xvasprintf_DEPENDENCIES) $(EXTRA_test_xvasprintf_DEPENDENCIES)
@rm -f test-xvasprintf$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(test_xvasprintf_OBJECTS) $(test_xvasprintf_LDADD) $(LIBS)
distclean-compile:
-rm -f *.tab.c
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argmatch.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdopen.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getcwd-lgpl.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getpagesize.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hash-pjw.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/putenv.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setenv.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setlocale.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sleep.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/snprintf.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/symlink.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-alloca-opt.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-areadlink.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-argmatch.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-binary-io.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-bitrotate.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-btowc.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-c-ctype.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-c-stack.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-c-strcasecmp.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-c-strncasecmp.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-close.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-dirname.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-dup2.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-environ.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-errno.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-exclude.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fcntl-h.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fcntl.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fdopen.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fgetc.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-filenamecat.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-float.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fnmatch.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fputc.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fread.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-freopen-safer.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-freopen.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fstat.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fwrite.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-getcwd-lgpl.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-getdtablesize.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-getopt.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-gettimeofday.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-hash.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-iconv-h.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-iconv.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-ignore-value.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-intprops.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-inttostr.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-inttypes.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-iswblank.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-langinfo.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-locale.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-localeconv.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-lstat.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-malloc-gnu.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-malloca.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbrtowc-w32.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbrtowc.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbscasecmp.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbsinit.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbsrtowcs.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbsstr1.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbsstr2.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbsstr3.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-memchr.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-nl_langinfo.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-open.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pathmax.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-quotearg-simple.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-raise.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-readlink.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-regex.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-setenv.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-setlocale1.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-setlocale2.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sh-quote.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sigaction.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-signal-h.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sigprocmask.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sleep.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-snprintf.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stat-time.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stat.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdbool.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stddef.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdint.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdio.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdlib.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-strerror.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-strftime.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-striconv.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-string.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-strings.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-strnlen.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-strtoull.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-strtoumax.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-symlink.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sys_stat.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sys_time.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sys_types.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sys_wait.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-time.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-unistd.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-unsetenv.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-usleep.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-vasnprintf.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-vasprintf.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-verify.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-version-etc.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-wchar.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-wcrtomb-w32.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-wcrtomb.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-wctype-h.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-wcwidth.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-xalloc-die.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-xstrtol.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-xstrtoul.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-xstrtoumax.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-xvasprintf.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unsetenv.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/usleep.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wctob.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wctomb.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/test-u8-mbtoucr.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/test-u8-uctomb.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@uniwidth/$(DEPDIR)/test-uc_width.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@uniwidth/$(DEPDIR)/test-uc_width2.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/accept.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bind.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/connect.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dtotimespec.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdopen.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ftruncate.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getcwd-lgpl.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getpagesize.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hash-pjw.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/inet_pton.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ioctl.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/listen.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nanosleep.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/perror.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pipe.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/putenv.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/select.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setlocale.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setsockopt.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sleep.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/snprintf.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/socket.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sockets.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strerror_r.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/symlink.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sys_socket.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-accept.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-alloca-opt.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-areadlink.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-argmatch.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-arpa_inet.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-binary-io.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-bind.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-bitrotate.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-btowc.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-c-ctype.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-c-stack.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-c-strcasecmp.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-c-strncasecmp.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-close.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-connect.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-ctype.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-dirname.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-dup2.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-environ.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-errno.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-exclude.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fcntl-h.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fcntl.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fdopen.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fgetc.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-filenamecat.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-float.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fnmatch.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fputc.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fread.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-freopen-safer.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-freopen.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fstat.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-ftruncate.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fwrite.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-getcwd-lgpl.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-getdtablesize.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-getopt.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-gettimeofday.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-hash.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-iconv-h.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-iconv.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-ignore-value.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-inet_pton.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-intprops.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-inttostr.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-inttypes.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-ioctl.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-isblank.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-iswblank.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-langinfo.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-listen.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-locale.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-localeconv.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-lstat.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-malloca.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbrtowc-w32.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbrtowc.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbscasecmp.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbsinit.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbsrtowcs.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbsstr1.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbsstr2.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-mbsstr3.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-memchr.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-nanosleep.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-netinet_in.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-nl_langinfo.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-open.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pathmax.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-perror.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-perror2.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pipe.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-quotearg-simple.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-raise.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-rawmemchr.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-readlink.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-regex.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-select-fd.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-select-stdin.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-select.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-setenv.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-setlocale1.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-setlocale2.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-setsockopt.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sh-quote.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sigaction.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-signal-h.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sigprocmask.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sleep.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-snprintf.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sockets.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stat-time.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stat.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdalign.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdbool.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stddef.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdint.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdio.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdlib.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-strerror.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-strerror_r.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-strftime.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-striconv.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-string.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-strings.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-strnlen.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-strtoull.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-strtoumax.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-symlink.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sys_ioctl.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sys_select.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sys_socket.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sys_stat.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sys_time.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sys_types.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sys_uio.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sys_wait.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-time.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-timespec.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-unistd.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-unsetenv.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-vasnprintf.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-vasprintf.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-verify.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-version-etc.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-wchar.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-wcrtomb-w32.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-wcrtomb.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-wctype-h.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-wcwidth.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-xalloc-die.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-xstrtol.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-xstrtoul.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-xstrtoumax.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-xvasprintf.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timespec-add.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timespec-sub.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wctob.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wctomb.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/test-u8-mbtoucr.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/test-u8-uctomb.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@uniwidth/$(DEPDIR)/test-uc_width.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@uniwidth/$(DEPDIR)/test-uc_width2.Po@am__quote@ # am--include-marker
+
+$(am__depfiles_remade):
+ @$(MKDIR_P) $(@D)
+ @echo '# dummy' >$@-t && $(am__mv) $@-t $@
+
+am--depfiles: $(am__depfiles_remade)
.c.o:
-@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
-@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(am__set_depbase) && \
+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $<; \
+@am__fastdepCC_TRUE@ if test $$? = 0; then $(am__mv) $$depbase.Tpo $$depbase.Po; \
+@am__fastdepCC_TRUE@ else rm -f $$depbase.Tpo; false; fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
-@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
-@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(am__set_depbase) && \
+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $$($(CYGPATH_W) $<); \
+@am__fastdepCC_TRUE@ if test $$? = 0; then $(am__mv) $$depbase.Tpo $$depbase.Po; \
+@am__fastdepCC_TRUE@ else rm -f $$depbase.Tpo; false; fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $$($(CYGPATH_W) $<)
# This directory's subdirectories are mostly independent; you can cd
# into them and run 'make' without going through this Makefile.
# (which will cause the Makefiles to be regenerated when you run 'make');
# (2) otherwise, pass the desired values on the 'make' command line.
$(am__recursive_targets):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
+ @fail=; \
+ if $(am__make_keepgoing); then \
+ failcom='fail=yes'; \
+ else \
+ failcom='exit 1'; \
+ fi; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
case "$@" in \
$(MAKE) $(AM_MAKEFLAGS) $<
# Leading 'am--fnord' is there to ensure the list of targets does not
-# exand to empty, as could happen e.g. with make check TESTS=''.
+# expand to empty, as could happen e.g. with make check TESTS=''.
am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck)
am--force-recheck:
@:
if test -n "$$am__remaking_logs"; then \
echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \
"recursion detected" >&2; \
- else \
+ elif test -n "$$redo_logs"; then \
am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \
fi; \
if $(am__make_dryrun); then :; else \
am__force_recheck=am--force-recheck \
TEST_LOGS="$$log_list"; \
exit $$?
+test-accept.log: test-accept$(EXEEXT)
+ @p='test-accept$(EXEEXT)'; \
+ b='test-accept'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-alloca-opt.log: test-alloca-opt$(EXEEXT)
@p='test-alloca-opt$(EXEEXT)'; \
b='test-alloca-opt'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-arpa_inet.log: test-arpa_inet$(EXEEXT)
+ @p='test-arpa_inet$(EXEEXT)'; \
+ b='test-arpa_inet'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-binary-io.sh.log: test-binary-io.sh
@p='test-binary-io.sh'; \
b='test-binary-io.sh'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-bind.log: test-bind$(EXEEXT)
+ @p='test-bind$(EXEEXT)'; \
+ b='test-bind'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-bitrotate.log: test-bitrotate$(EXEEXT)
@p='test-bitrotate$(EXEEXT)'; \
b='test-bitrotate'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-connect.log: test-connect$(EXEEXT)
+ @p='test-connect$(EXEEXT)'; \
+ b='test-connect'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-ctype.log: test-ctype$(EXEEXT)
+ @p='test-ctype$(EXEEXT)'; \
+ b='test-ctype'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-dirname.log: test-dirname$(EXEEXT)
@p='test-dirname$(EXEEXT)'; \
b='test-dirname'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-ftruncate.sh.log: test-ftruncate.sh
+ @p='test-ftruncate.sh'; \
+ b='test-ftruncate.sh'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-fwrite.log: test-fwrite$(EXEEXT)
@p='test-fwrite$(EXEEXT)'; \
b='test-fwrite'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-inet_pton.log: test-inet_pton$(EXEEXT)
+ @p='test-inet_pton$(EXEEXT)'; \
+ b='test-inet_pton'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-intprops.log: test-intprops$(EXEEXT)
@p='test-intprops$(EXEEXT)'; \
b='test-intprops'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-ioctl.log: test-ioctl$(EXEEXT)
+ @p='test-ioctl$(EXEEXT)'; \
+ b='test-ioctl'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-isblank.log: test-isblank$(EXEEXT)
+ @p='test-isblank$(EXEEXT)'; \
+ b='test-isblank'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-iswblank.log: test-iswblank$(EXEEXT)
@p='test-iswblank$(EXEEXT)'; \
b='test-iswblank'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-listen.log: test-listen$(EXEEXT)
+ @p='test-listen$(EXEEXT)'; \
+ b='test-listen'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-locale.log: test-locale$(EXEEXT)
@p='test-locale$(EXEEXT)'; \
b='test-locale'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-test-malloc-gnu.log: test-malloc-gnu$(EXEEXT)
- @p='test-malloc-gnu$(EXEEXT)'; \
- b='test-malloc-gnu'; \
- $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
- --log-file $$b.log --trs-file $$b.trs \
- $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
- "$$tst" $(AM_TESTS_FD_REDIRECT)
test-malloca.log: test-malloca$(EXEEXT)
@p='test-malloca$(EXEEXT)'; \
b='test-malloca'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-mbrtowc5.sh.log: test-mbrtowc5.sh
+ @p='test-mbrtowc5.sh'; \
+ b='test-mbrtowc5.sh'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-mbrtowc-w32-1.sh.log: test-mbrtowc-w32-1.sh
@p='test-mbrtowc-w32-1.sh'; \
b='test-mbrtowc-w32-1.sh'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-nanosleep.log: test-nanosleep$(EXEEXT)
+ @p='test-nanosleep$(EXEEXT)'; \
+ b='test-nanosleep'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-netinet_in.log: test-netinet_in$(EXEEXT)
+ @p='test-netinet_in$(EXEEXT)'; \
+ b='test-netinet_in'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-nl_langinfo.sh.log: test-nl_langinfo.sh
@p='test-nl_langinfo.sh'; \
b='test-nl_langinfo.sh'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-perror.sh.log: test-perror.sh
+ @p='test-perror.sh'; \
+ b='test-perror.sh'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-perror2.log: test-perror2$(EXEEXT)
+ @p='test-perror2$(EXEEXT)'; \
+ b='test-perror2'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-pipe.log: test-pipe$(EXEEXT)
+ @p='test-pipe$(EXEEXT)'; \
+ b='test-pipe'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-quotearg-simple.log: test-quotearg-simple$(EXEEXT)
@p='test-quotearg-simple$(EXEEXT)'; \
b='test-quotearg-simple'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-rawmemchr.log: test-rawmemchr$(EXEEXT)
+ @p='test-rawmemchr$(EXEEXT)'; \
+ b='test-rawmemchr'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-readlink.log: test-readlink$(EXEEXT)
@p='test-readlink$(EXEEXT)'; \
b='test-readlink'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-select.log: test-select$(EXEEXT)
+ @p='test-select$(EXEEXT)'; \
+ b='test-select'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-select-in.sh.log: test-select-in.sh
+ @p='test-select-in.sh'; \
+ b='test-select-in.sh'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-select-out.sh.log: test-select-out.sh
+ @p='test-select-out.sh'; \
+ b='test-select-out.sh'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-setenv.log: test-setenv$(EXEEXT)
@p='test-setenv$(EXEEXT)'; \
b='test-setenv'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-setsockopt.log: test-setsockopt$(EXEEXT)
+ @p='test-setsockopt$(EXEEXT)'; \
+ b='test-setsockopt'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-sh-quote.log: test-sh-quote$(EXEEXT)
@p='test-sh-quote$(EXEEXT)'; \
b='test-sh-quote'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-sockets.log: test-sockets$(EXEEXT)
+ @p='test-sockets$(EXEEXT)'; \
+ b='test-sockets'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-stat.log: test-stat$(EXEEXT)
@p='test-stat$(EXEEXT)'; \
b='test-stat'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-stdalign.log: test-stdalign$(EXEEXT)
+ @p='test-stdalign$(EXEEXT)'; \
+ b='test-stdalign'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-stdbool.log: test-stdbool$(EXEEXT)
@p='test-stdbool$(EXEEXT)'; \
b='test-stdbool'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-strerror_r.log: test-strerror_r$(EXEEXT)
+ @p='test-strerror_r$(EXEEXT)'; \
+ b='test-strerror_r'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-strftime.log: test-strftime$(EXEEXT)
@p='test-strftime$(EXEEXT)'; \
b='test-strftime'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-sys_ioctl.log: test-sys_ioctl$(EXEEXT)
+ @p='test-sys_ioctl$(EXEEXT)'; \
+ b='test-sys_ioctl'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-sys_select.log: test-sys_select$(EXEEXT)
+ @p='test-sys_select$(EXEEXT)'; \
+ b='test-sys_select'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
+test-sys_socket.log: test-sys_socket$(EXEEXT)
+ @p='test-sys_socket$(EXEEXT)'; \
+ b='test-sys_socket'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-sys_stat.log: test-sys_stat$(EXEEXT)
@p='test-sys_stat$(EXEEXT)'; \
b='test-sys_stat'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-sys_uio.log: test-sys_uio$(EXEEXT)
+ @p='test-sys_uio$(EXEEXT)'; \
+ b='test-sys_uio'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-sys_wait.log: test-sys_wait$(EXEEXT)
@p='test-sys_wait$(EXEEXT)'; \
b='test-sys_wait'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+test-timespec.log: test-timespec$(EXEEXT)
+ @p='test-timespec$(EXEEXT)'; \
+ b='test-timespec'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
test-unistd.log: test-unistd$(EXEEXT)
@p='test-unistd$(EXEEXT)'; \
b='test-unistd'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-test-usleep.log: test-usleep$(EXEEXT)
- @p='test-usleep$(EXEEXT)'; \
- b='test-usleep'; \
- $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
- --log-file $$b.log --trs-file $$b.trs \
- $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
- "$$tst" $(AM_TESTS_FD_REDIRECT)
test-vasnprintf.log: test-vasnprintf$(EXEEXT)
@p='test-vasnprintf$(EXEEXT)'; \
b='test-vasnprintf'; \
mostlyclean-am
distclean: distclean-recursive
- -rm -rf ./$(DEPDIR) unistr/$(DEPDIR) uniwidth/$(DEPDIR)
+ -rm -f ./$(DEPDIR)/accept.Po
+ -rm -f ./$(DEPDIR)/bind.Po
+ -rm -f ./$(DEPDIR)/connect.Po
+ -rm -f ./$(DEPDIR)/dtotimespec.Po
+ -rm -f ./$(DEPDIR)/fdopen.Po
+ -rm -f ./$(DEPDIR)/ftruncate.Po
+ -rm -f ./$(DEPDIR)/getcwd-lgpl.Po
+ -rm -f ./$(DEPDIR)/getpagesize.Po
+ -rm -f ./$(DEPDIR)/hash-pjw.Po
+ -rm -f ./$(DEPDIR)/inet_pton.Po
+ -rm -f ./$(DEPDIR)/ioctl.Po
+ -rm -f ./$(DEPDIR)/listen.Po
+ -rm -f ./$(DEPDIR)/nanosleep.Po
+ -rm -f ./$(DEPDIR)/perror.Po
+ -rm -f ./$(DEPDIR)/pipe.Po
+ -rm -f ./$(DEPDIR)/putenv.Po
+ -rm -f ./$(DEPDIR)/select.Po
+ -rm -f ./$(DEPDIR)/setlocale.Po
+ -rm -f ./$(DEPDIR)/setsockopt.Po
+ -rm -f ./$(DEPDIR)/sleep.Po
+ -rm -f ./$(DEPDIR)/snprintf.Po
+ -rm -f ./$(DEPDIR)/socket.Po
+ -rm -f ./$(DEPDIR)/sockets.Po
+ -rm -f ./$(DEPDIR)/strerror_r.Po
+ -rm -f ./$(DEPDIR)/symlink.Po
+ -rm -f ./$(DEPDIR)/sys_socket.Po
+ -rm -f ./$(DEPDIR)/test-accept.Po
+ -rm -f ./$(DEPDIR)/test-alloca-opt.Po
+ -rm -f ./$(DEPDIR)/test-areadlink.Po
+ -rm -f ./$(DEPDIR)/test-argmatch.Po
+ -rm -f ./$(DEPDIR)/test-arpa_inet.Po
+ -rm -f ./$(DEPDIR)/test-binary-io.Po
+ -rm -f ./$(DEPDIR)/test-bind.Po
+ -rm -f ./$(DEPDIR)/test-bitrotate.Po
+ -rm -f ./$(DEPDIR)/test-btowc.Po
+ -rm -f ./$(DEPDIR)/test-c-ctype.Po
+ -rm -f ./$(DEPDIR)/test-c-stack.Po
+ -rm -f ./$(DEPDIR)/test-c-strcasecmp.Po
+ -rm -f ./$(DEPDIR)/test-c-strncasecmp.Po
+ -rm -f ./$(DEPDIR)/test-close.Po
+ -rm -f ./$(DEPDIR)/test-connect.Po
+ -rm -f ./$(DEPDIR)/test-ctype.Po
+ -rm -f ./$(DEPDIR)/test-dirname.Po
+ -rm -f ./$(DEPDIR)/test-dup2.Po
+ -rm -f ./$(DEPDIR)/test-environ.Po
+ -rm -f ./$(DEPDIR)/test-errno.Po
+ -rm -f ./$(DEPDIR)/test-exclude.Po
+ -rm -f ./$(DEPDIR)/test-fcntl-h.Po
+ -rm -f ./$(DEPDIR)/test-fcntl.Po
+ -rm -f ./$(DEPDIR)/test-fdopen.Po
+ -rm -f ./$(DEPDIR)/test-fgetc.Po
+ -rm -f ./$(DEPDIR)/test-filenamecat.Po
+ -rm -f ./$(DEPDIR)/test-float.Po
+ -rm -f ./$(DEPDIR)/test-fnmatch.Po
+ -rm -f ./$(DEPDIR)/test-fputc.Po
+ -rm -f ./$(DEPDIR)/test-fread.Po
+ -rm -f ./$(DEPDIR)/test-freopen-safer.Po
+ -rm -f ./$(DEPDIR)/test-freopen.Po
+ -rm -f ./$(DEPDIR)/test-fstat.Po
+ -rm -f ./$(DEPDIR)/test-ftruncate.Po
+ -rm -f ./$(DEPDIR)/test-fwrite.Po
+ -rm -f ./$(DEPDIR)/test-getcwd-lgpl.Po
+ -rm -f ./$(DEPDIR)/test-getdtablesize.Po
+ -rm -f ./$(DEPDIR)/test-getopt.Po
+ -rm -f ./$(DEPDIR)/test-gettimeofday.Po
+ -rm -f ./$(DEPDIR)/test-hash.Po
+ -rm -f ./$(DEPDIR)/test-iconv-h.Po
+ -rm -f ./$(DEPDIR)/test-iconv.Po
+ -rm -f ./$(DEPDIR)/test-ignore-value.Po
+ -rm -f ./$(DEPDIR)/test-inet_pton.Po
+ -rm -f ./$(DEPDIR)/test-intprops.Po
+ -rm -f ./$(DEPDIR)/test-inttostr.Po
+ -rm -f ./$(DEPDIR)/test-inttypes.Po
+ -rm -f ./$(DEPDIR)/test-ioctl.Po
+ -rm -f ./$(DEPDIR)/test-isblank.Po
+ -rm -f ./$(DEPDIR)/test-iswblank.Po
+ -rm -f ./$(DEPDIR)/test-langinfo.Po
+ -rm -f ./$(DEPDIR)/test-listen.Po
+ -rm -f ./$(DEPDIR)/test-locale.Po
+ -rm -f ./$(DEPDIR)/test-localeconv.Po
+ -rm -f ./$(DEPDIR)/test-lstat.Po
+ -rm -f ./$(DEPDIR)/test-malloca.Po
+ -rm -f ./$(DEPDIR)/test-mbrtowc-w32.Po
+ -rm -f ./$(DEPDIR)/test-mbrtowc.Po
+ -rm -f ./$(DEPDIR)/test-mbscasecmp.Po
+ -rm -f ./$(DEPDIR)/test-mbsinit.Po
+ -rm -f ./$(DEPDIR)/test-mbsrtowcs.Po
+ -rm -f ./$(DEPDIR)/test-mbsstr1.Po
+ -rm -f ./$(DEPDIR)/test-mbsstr2.Po
+ -rm -f ./$(DEPDIR)/test-mbsstr3.Po
+ -rm -f ./$(DEPDIR)/test-memchr.Po
+ -rm -f ./$(DEPDIR)/test-nanosleep.Po
+ -rm -f ./$(DEPDIR)/test-netinet_in.Po
+ -rm -f ./$(DEPDIR)/test-nl_langinfo.Po
+ -rm -f ./$(DEPDIR)/test-open.Po
+ -rm -f ./$(DEPDIR)/test-pathmax.Po
+ -rm -f ./$(DEPDIR)/test-perror.Po
+ -rm -f ./$(DEPDIR)/test-perror2.Po
+ -rm -f ./$(DEPDIR)/test-pipe.Po
+ -rm -f ./$(DEPDIR)/test-quotearg-simple.Po
+ -rm -f ./$(DEPDIR)/test-raise.Po
+ -rm -f ./$(DEPDIR)/test-rawmemchr.Po
+ -rm -f ./$(DEPDIR)/test-readlink.Po
+ -rm -f ./$(DEPDIR)/test-regex.Po
+ -rm -f ./$(DEPDIR)/test-select-fd.Po
+ -rm -f ./$(DEPDIR)/test-select-stdin.Po
+ -rm -f ./$(DEPDIR)/test-select.Po
+ -rm -f ./$(DEPDIR)/test-setenv.Po
+ -rm -f ./$(DEPDIR)/test-setlocale1.Po
+ -rm -f ./$(DEPDIR)/test-setlocale2.Po
+ -rm -f ./$(DEPDIR)/test-setsockopt.Po
+ -rm -f ./$(DEPDIR)/test-sh-quote.Po
+ -rm -f ./$(DEPDIR)/test-sigaction.Po
+ -rm -f ./$(DEPDIR)/test-signal-h.Po
+ -rm -f ./$(DEPDIR)/test-sigprocmask.Po
+ -rm -f ./$(DEPDIR)/test-sleep.Po
+ -rm -f ./$(DEPDIR)/test-snprintf.Po
+ -rm -f ./$(DEPDIR)/test-sockets.Po
+ -rm -f ./$(DEPDIR)/test-stat-time.Po
+ -rm -f ./$(DEPDIR)/test-stat.Po
+ -rm -f ./$(DEPDIR)/test-stdalign.Po
+ -rm -f ./$(DEPDIR)/test-stdbool.Po
+ -rm -f ./$(DEPDIR)/test-stddef.Po
+ -rm -f ./$(DEPDIR)/test-stdint.Po
+ -rm -f ./$(DEPDIR)/test-stdio.Po
+ -rm -f ./$(DEPDIR)/test-stdlib.Po
+ -rm -f ./$(DEPDIR)/test-strerror.Po
+ -rm -f ./$(DEPDIR)/test-strerror_r.Po
+ -rm -f ./$(DEPDIR)/test-strftime.Po
+ -rm -f ./$(DEPDIR)/test-striconv.Po
+ -rm -f ./$(DEPDIR)/test-string.Po
+ -rm -f ./$(DEPDIR)/test-strings.Po
+ -rm -f ./$(DEPDIR)/test-strnlen.Po
+ -rm -f ./$(DEPDIR)/test-strtoull.Po
+ -rm -f ./$(DEPDIR)/test-strtoumax.Po
+ -rm -f ./$(DEPDIR)/test-symlink.Po
+ -rm -f ./$(DEPDIR)/test-sys_ioctl.Po
+ -rm -f ./$(DEPDIR)/test-sys_select.Po
+ -rm -f ./$(DEPDIR)/test-sys_socket.Po
+ -rm -f ./$(DEPDIR)/test-sys_stat.Po
+ -rm -f ./$(DEPDIR)/test-sys_time.Po
+ -rm -f ./$(DEPDIR)/test-sys_types.Po
+ -rm -f ./$(DEPDIR)/test-sys_uio.Po
+ -rm -f ./$(DEPDIR)/test-sys_wait.Po
+ -rm -f ./$(DEPDIR)/test-time.Po
+ -rm -f ./$(DEPDIR)/test-timespec.Po
+ -rm -f ./$(DEPDIR)/test-unistd.Po
+ -rm -f ./$(DEPDIR)/test-unsetenv.Po
+ -rm -f ./$(DEPDIR)/test-vasnprintf.Po
+ -rm -f ./$(DEPDIR)/test-vasprintf.Po
+ -rm -f ./$(DEPDIR)/test-verify.Po
+ -rm -f ./$(DEPDIR)/test-version-etc.Po
+ -rm -f ./$(DEPDIR)/test-wchar.Po
+ -rm -f ./$(DEPDIR)/test-wcrtomb-w32.Po
+ -rm -f ./$(DEPDIR)/test-wcrtomb.Po
+ -rm -f ./$(DEPDIR)/test-wctype-h.Po
+ -rm -f ./$(DEPDIR)/test-wcwidth.Po
+ -rm -f ./$(DEPDIR)/test-xalloc-die.Po
+ -rm -f ./$(DEPDIR)/test-xstrtol.Po
+ -rm -f ./$(DEPDIR)/test-xstrtoul.Po
+ -rm -f ./$(DEPDIR)/test-xstrtoumax.Po
+ -rm -f ./$(DEPDIR)/test-xvasprintf.Po
+ -rm -f ./$(DEPDIR)/timespec-add.Po
+ -rm -f ./$(DEPDIR)/timespec-sub.Po
+ -rm -f ./$(DEPDIR)/wctob.Po
+ -rm -f ./$(DEPDIR)/wctomb.Po
+ -rm -f unistr/$(DEPDIR)/test-u8-mbtoucr.Po
+ -rm -f unistr/$(DEPDIR)/test-u8-uctomb.Po
+ -rm -f uniwidth/$(DEPDIR)/test-uc_width.Po
+ -rm -f uniwidth/$(DEPDIR)/test-uc_width2.Po
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-tags
installcheck-am:
maintainer-clean: maintainer-clean-recursive
- -rm -rf ./$(DEPDIR) unistr/$(DEPDIR) uniwidth/$(DEPDIR)
+ -rm -f ./$(DEPDIR)/accept.Po
+ -rm -f ./$(DEPDIR)/bind.Po
+ -rm -f ./$(DEPDIR)/connect.Po
+ -rm -f ./$(DEPDIR)/dtotimespec.Po
+ -rm -f ./$(DEPDIR)/fdopen.Po
+ -rm -f ./$(DEPDIR)/ftruncate.Po
+ -rm -f ./$(DEPDIR)/getcwd-lgpl.Po
+ -rm -f ./$(DEPDIR)/getpagesize.Po
+ -rm -f ./$(DEPDIR)/hash-pjw.Po
+ -rm -f ./$(DEPDIR)/inet_pton.Po
+ -rm -f ./$(DEPDIR)/ioctl.Po
+ -rm -f ./$(DEPDIR)/listen.Po
+ -rm -f ./$(DEPDIR)/nanosleep.Po
+ -rm -f ./$(DEPDIR)/perror.Po
+ -rm -f ./$(DEPDIR)/pipe.Po
+ -rm -f ./$(DEPDIR)/putenv.Po
+ -rm -f ./$(DEPDIR)/select.Po
+ -rm -f ./$(DEPDIR)/setlocale.Po
+ -rm -f ./$(DEPDIR)/setsockopt.Po
+ -rm -f ./$(DEPDIR)/sleep.Po
+ -rm -f ./$(DEPDIR)/snprintf.Po
+ -rm -f ./$(DEPDIR)/socket.Po
+ -rm -f ./$(DEPDIR)/sockets.Po
+ -rm -f ./$(DEPDIR)/strerror_r.Po
+ -rm -f ./$(DEPDIR)/symlink.Po
+ -rm -f ./$(DEPDIR)/sys_socket.Po
+ -rm -f ./$(DEPDIR)/test-accept.Po
+ -rm -f ./$(DEPDIR)/test-alloca-opt.Po
+ -rm -f ./$(DEPDIR)/test-areadlink.Po
+ -rm -f ./$(DEPDIR)/test-argmatch.Po
+ -rm -f ./$(DEPDIR)/test-arpa_inet.Po
+ -rm -f ./$(DEPDIR)/test-binary-io.Po
+ -rm -f ./$(DEPDIR)/test-bind.Po
+ -rm -f ./$(DEPDIR)/test-bitrotate.Po
+ -rm -f ./$(DEPDIR)/test-btowc.Po
+ -rm -f ./$(DEPDIR)/test-c-ctype.Po
+ -rm -f ./$(DEPDIR)/test-c-stack.Po
+ -rm -f ./$(DEPDIR)/test-c-strcasecmp.Po
+ -rm -f ./$(DEPDIR)/test-c-strncasecmp.Po
+ -rm -f ./$(DEPDIR)/test-close.Po
+ -rm -f ./$(DEPDIR)/test-connect.Po
+ -rm -f ./$(DEPDIR)/test-ctype.Po
+ -rm -f ./$(DEPDIR)/test-dirname.Po
+ -rm -f ./$(DEPDIR)/test-dup2.Po
+ -rm -f ./$(DEPDIR)/test-environ.Po
+ -rm -f ./$(DEPDIR)/test-errno.Po
+ -rm -f ./$(DEPDIR)/test-exclude.Po
+ -rm -f ./$(DEPDIR)/test-fcntl-h.Po
+ -rm -f ./$(DEPDIR)/test-fcntl.Po
+ -rm -f ./$(DEPDIR)/test-fdopen.Po
+ -rm -f ./$(DEPDIR)/test-fgetc.Po
+ -rm -f ./$(DEPDIR)/test-filenamecat.Po
+ -rm -f ./$(DEPDIR)/test-float.Po
+ -rm -f ./$(DEPDIR)/test-fnmatch.Po
+ -rm -f ./$(DEPDIR)/test-fputc.Po
+ -rm -f ./$(DEPDIR)/test-fread.Po
+ -rm -f ./$(DEPDIR)/test-freopen-safer.Po
+ -rm -f ./$(DEPDIR)/test-freopen.Po
+ -rm -f ./$(DEPDIR)/test-fstat.Po
+ -rm -f ./$(DEPDIR)/test-ftruncate.Po
+ -rm -f ./$(DEPDIR)/test-fwrite.Po
+ -rm -f ./$(DEPDIR)/test-getcwd-lgpl.Po
+ -rm -f ./$(DEPDIR)/test-getdtablesize.Po
+ -rm -f ./$(DEPDIR)/test-getopt.Po
+ -rm -f ./$(DEPDIR)/test-gettimeofday.Po
+ -rm -f ./$(DEPDIR)/test-hash.Po
+ -rm -f ./$(DEPDIR)/test-iconv-h.Po
+ -rm -f ./$(DEPDIR)/test-iconv.Po
+ -rm -f ./$(DEPDIR)/test-ignore-value.Po
+ -rm -f ./$(DEPDIR)/test-inet_pton.Po
+ -rm -f ./$(DEPDIR)/test-intprops.Po
+ -rm -f ./$(DEPDIR)/test-inttostr.Po
+ -rm -f ./$(DEPDIR)/test-inttypes.Po
+ -rm -f ./$(DEPDIR)/test-ioctl.Po
+ -rm -f ./$(DEPDIR)/test-isblank.Po
+ -rm -f ./$(DEPDIR)/test-iswblank.Po
+ -rm -f ./$(DEPDIR)/test-langinfo.Po
+ -rm -f ./$(DEPDIR)/test-listen.Po
+ -rm -f ./$(DEPDIR)/test-locale.Po
+ -rm -f ./$(DEPDIR)/test-localeconv.Po
+ -rm -f ./$(DEPDIR)/test-lstat.Po
+ -rm -f ./$(DEPDIR)/test-malloca.Po
+ -rm -f ./$(DEPDIR)/test-mbrtowc-w32.Po
+ -rm -f ./$(DEPDIR)/test-mbrtowc.Po
+ -rm -f ./$(DEPDIR)/test-mbscasecmp.Po
+ -rm -f ./$(DEPDIR)/test-mbsinit.Po
+ -rm -f ./$(DEPDIR)/test-mbsrtowcs.Po
+ -rm -f ./$(DEPDIR)/test-mbsstr1.Po
+ -rm -f ./$(DEPDIR)/test-mbsstr2.Po
+ -rm -f ./$(DEPDIR)/test-mbsstr3.Po
+ -rm -f ./$(DEPDIR)/test-memchr.Po
+ -rm -f ./$(DEPDIR)/test-nanosleep.Po
+ -rm -f ./$(DEPDIR)/test-netinet_in.Po
+ -rm -f ./$(DEPDIR)/test-nl_langinfo.Po
+ -rm -f ./$(DEPDIR)/test-open.Po
+ -rm -f ./$(DEPDIR)/test-pathmax.Po
+ -rm -f ./$(DEPDIR)/test-perror.Po
+ -rm -f ./$(DEPDIR)/test-perror2.Po
+ -rm -f ./$(DEPDIR)/test-pipe.Po
+ -rm -f ./$(DEPDIR)/test-quotearg-simple.Po
+ -rm -f ./$(DEPDIR)/test-raise.Po
+ -rm -f ./$(DEPDIR)/test-rawmemchr.Po
+ -rm -f ./$(DEPDIR)/test-readlink.Po
+ -rm -f ./$(DEPDIR)/test-regex.Po
+ -rm -f ./$(DEPDIR)/test-select-fd.Po
+ -rm -f ./$(DEPDIR)/test-select-stdin.Po
+ -rm -f ./$(DEPDIR)/test-select.Po
+ -rm -f ./$(DEPDIR)/test-setenv.Po
+ -rm -f ./$(DEPDIR)/test-setlocale1.Po
+ -rm -f ./$(DEPDIR)/test-setlocale2.Po
+ -rm -f ./$(DEPDIR)/test-setsockopt.Po
+ -rm -f ./$(DEPDIR)/test-sh-quote.Po
+ -rm -f ./$(DEPDIR)/test-sigaction.Po
+ -rm -f ./$(DEPDIR)/test-signal-h.Po
+ -rm -f ./$(DEPDIR)/test-sigprocmask.Po
+ -rm -f ./$(DEPDIR)/test-sleep.Po
+ -rm -f ./$(DEPDIR)/test-snprintf.Po
+ -rm -f ./$(DEPDIR)/test-sockets.Po
+ -rm -f ./$(DEPDIR)/test-stat-time.Po
+ -rm -f ./$(DEPDIR)/test-stat.Po
+ -rm -f ./$(DEPDIR)/test-stdalign.Po
+ -rm -f ./$(DEPDIR)/test-stdbool.Po
+ -rm -f ./$(DEPDIR)/test-stddef.Po
+ -rm -f ./$(DEPDIR)/test-stdint.Po
+ -rm -f ./$(DEPDIR)/test-stdio.Po
+ -rm -f ./$(DEPDIR)/test-stdlib.Po
+ -rm -f ./$(DEPDIR)/test-strerror.Po
+ -rm -f ./$(DEPDIR)/test-strerror_r.Po
+ -rm -f ./$(DEPDIR)/test-strftime.Po
+ -rm -f ./$(DEPDIR)/test-striconv.Po
+ -rm -f ./$(DEPDIR)/test-string.Po
+ -rm -f ./$(DEPDIR)/test-strings.Po
+ -rm -f ./$(DEPDIR)/test-strnlen.Po
+ -rm -f ./$(DEPDIR)/test-strtoull.Po
+ -rm -f ./$(DEPDIR)/test-strtoumax.Po
+ -rm -f ./$(DEPDIR)/test-symlink.Po
+ -rm -f ./$(DEPDIR)/test-sys_ioctl.Po
+ -rm -f ./$(DEPDIR)/test-sys_select.Po
+ -rm -f ./$(DEPDIR)/test-sys_socket.Po
+ -rm -f ./$(DEPDIR)/test-sys_stat.Po
+ -rm -f ./$(DEPDIR)/test-sys_time.Po
+ -rm -f ./$(DEPDIR)/test-sys_types.Po
+ -rm -f ./$(DEPDIR)/test-sys_uio.Po
+ -rm -f ./$(DEPDIR)/test-sys_wait.Po
+ -rm -f ./$(DEPDIR)/test-time.Po
+ -rm -f ./$(DEPDIR)/test-timespec.Po
+ -rm -f ./$(DEPDIR)/test-unistd.Po
+ -rm -f ./$(DEPDIR)/test-unsetenv.Po
+ -rm -f ./$(DEPDIR)/test-vasnprintf.Po
+ -rm -f ./$(DEPDIR)/test-vasprintf.Po
+ -rm -f ./$(DEPDIR)/test-verify.Po
+ -rm -f ./$(DEPDIR)/test-version-etc.Po
+ -rm -f ./$(DEPDIR)/test-wchar.Po
+ -rm -f ./$(DEPDIR)/test-wcrtomb-w32.Po
+ -rm -f ./$(DEPDIR)/test-wcrtomb.Po
+ -rm -f ./$(DEPDIR)/test-wctype-h.Po
+ -rm -f ./$(DEPDIR)/test-wcwidth.Po
+ -rm -f ./$(DEPDIR)/test-xalloc-die.Po
+ -rm -f ./$(DEPDIR)/test-xstrtol.Po
+ -rm -f ./$(DEPDIR)/test-xstrtoul.Po
+ -rm -f ./$(DEPDIR)/test-xstrtoumax.Po
+ -rm -f ./$(DEPDIR)/test-xvasprintf.Po
+ -rm -f ./$(DEPDIR)/timespec-add.Po
+ -rm -f ./$(DEPDIR)/timespec-sub.Po
+ -rm -f ./$(DEPDIR)/wctob.Po
+ -rm -f ./$(DEPDIR)/wctomb.Po
+ -rm -f unistr/$(DEPDIR)/test-u8-mbtoucr.Po
+ -rm -f unistr/$(DEPDIR)/test-u8-uctomb.Po
+ -rm -f uniwidth/$(DEPDIR)/test-uc_width.Po
+ -rm -f uniwidth/$(DEPDIR)/test-uc_width2.Po
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
.MAKE: $(am__recursive_targets) all check check-am install install-am \
install-strip
-.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
- check-TESTS check-am clean clean-checkLIBRARIES \
- clean-checkPROGRAMS clean-generic clean-local \
- clean-noinstLIBRARIES clean-noinstPROGRAMS cscopelist-am ctags \
- ctags-am distclean distclean-compile distclean-generic \
- distclean-tags distdir dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- installdirs-am maintainer-clean maintainer-clean-generic \
- mostlyclean mostlyclean-compile mostlyclean-generic \
- mostlyclean-local pdf pdf-am ps ps-am recheck tags tags-am \
- uninstall uninstall-am
+.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
+ am--depfiles check check-TESTS check-am clean \
+ clean-checkLIBRARIES clean-checkPROGRAMS clean-generic \
+ clean-local clean-noinstLIBRARIES clean-noinstPROGRAMS \
+ cscopelist-am ctags ctags-am distclean distclean-compile \
+ distclean-generic distclean-tags distdir dvi dvi-am html \
+ html-am info info-am install install-am install-data \
+ install-data-am install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-man install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs installdirs-am maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-local pdf pdf-am ps ps-am \
+ recheck tags tags-am uninstall uninstall-am
+
+.PRECIOUS: Makefile
+
+# We need the following in order to create <arpa/inet.h> when the system
+# doesn't have one.
+arpa/inet.h: arpa_inet.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H)
+ $(AM_V_at)$(MKDIR_P) arpa
+ $(AM_V_GEN)rm -f $@-t $@ && \
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+ -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|@''HAVE_FEATURES_H''@|$(HAVE_FEATURES_H)|g' \
+ -e 's|@''NEXT_ARPA_INET_H''@|$(NEXT_ARPA_INET_H)|g' \
+ -e 's|@''HAVE_ARPA_INET_H''@|$(HAVE_ARPA_INET_H)|g' \
+ -e 's/@''GNULIB_INET_NTOP''@/$(GNULIB_INET_NTOP)/g' \
+ -e 's/@''GNULIB_INET_PTON''@/$(GNULIB_INET_PTON)/g' \
+ -e 's|@''HAVE_DECL_INET_NTOP''@|$(HAVE_DECL_INET_NTOP)|g' \
+ -e 's|@''HAVE_DECL_INET_PTON''@|$(HAVE_DECL_INET_PTON)|g' \
+ -e 's|@''REPLACE_INET_NTOP''@|$(REPLACE_INET_NTOP)|g' \
+ -e 's|@''REPLACE_INET_PTON''@|$(REPLACE_INET_PTON)|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)/arpa_inet.in.h; \
+ } > $@-t && \
+ mv $@-t $@
+
+# We need the following in order to create <netinet/in.h> when the system
+# doesn't have one.
+@GL_GENERATE_NETINET_IN_H_TRUE@netinet/in.h: netinet_in.in.h $(top_builddir)/config.status
+@GL_GENERATE_NETINET_IN_H_TRUE@ $(AM_V_at)$(MKDIR_P) netinet
+@GL_GENERATE_NETINET_IN_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \
+@GL_GENERATE_NETINET_IN_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+@GL_GENERATE_NETINET_IN_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+@GL_GENERATE_NETINET_IN_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
+@GL_GENERATE_NETINET_IN_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+@GL_GENERATE_NETINET_IN_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+@GL_GENERATE_NETINET_IN_H_TRUE@ -e 's|@''NEXT_NETINET_IN_H''@|$(NEXT_NETINET_IN_H)|g' \
+@GL_GENERATE_NETINET_IN_H_TRUE@ -e 's|@''HAVE_NETINET_IN_H''@|$(HAVE_NETINET_IN_H)|g' \
+@GL_GENERATE_NETINET_IN_H_TRUE@ < $(srcdir)/netinet_in.in.h; \
+@GL_GENERATE_NETINET_IN_H_TRUE@ } > $@-t && \
+@GL_GENERATE_NETINET_IN_H_TRUE@ mv $@-t $@
+@GL_GENERATE_NETINET_IN_H_FALSE@netinet/in.h: $(top_builddir)/config.status
+@GL_GENERATE_NETINET_IN_H_FALSE@ rm -f $@
# The arg-nonnull.h that gets inserted into generated .h files is the same as
# build-aux/snippet/arg-nonnull.h, except that it has the copyright header cut
# off.
> $@-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 <sys/ioctl.h> when the system
+# does not have a complete one.
+sys/ioctl.h: sys_ioctl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H)
+ $(AM_V_at)$(MKDIR_P) sys
+ $(AM_V_GEN)rm -f $@-t $@ && \
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+ -e 's|@''HAVE_SYS_IOCTL_H''@|$(HAVE_SYS_IOCTL_H)|g' \
+ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
+ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ -e 's|@''NEXT_SYS_IOCTL_H''@|$(NEXT_SYS_IOCTL_H)|g' \
+ -e 's/@''GNULIB_IOCTL''@/$(GNULIB_IOCTL)/g' \
+ -e 's|@''SYS_IOCTL_H_HAVE_WINSOCK2_H''@|$(SYS_IOCTL_H_HAVE_WINSOCK2_H)|g' \
+ -e 's|@''SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS''@|$(SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS)|g' \
+ -e 's|@''REPLACE_IOCTL''@|$(REPLACE_IOCTL)|g' \
+ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
+ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
+ < $(srcdir)/sys_ioctl.in.h; \
+ } > $@-t && \
+ mv $@-t $@
+
+# We need the following in order to create <sys/select.h> when the system
+# doesn't have one that works with the given compiler.
+sys/select.h: sys_select.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H)
+ $(AM_V_at)$(MKDIR_P) sys
+ $(AM_V_GEN)rm -f $@-t $@ && \
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+ -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_SELECT_H''@|$(NEXT_SYS_SELECT_H)|g' \
+ -e 's|@''HAVE_SYS_SELECT_H''@|$(HAVE_SYS_SELECT_H)|g' \
+ -e 's/@''GNULIB_PSELECT''@/$(GNULIB_PSELECT)/g' \
+ -e 's/@''GNULIB_SELECT''@/$(GNULIB_SELECT)/g' \
+ -e 's|@''HAVE_WINSOCK2_H''@|$(HAVE_WINSOCK2_H)|g' \
+ -e 's|@''HAVE_PSELECT''@|$(HAVE_PSELECT)|g' \
+ -e 's|@''REPLACE_PSELECT''@|$(REPLACE_PSELECT)|g' \
+ -e 's|@''REPLACE_SELECT''@|$(REPLACE_SELECT)|g' \
+ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
+ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
+ < $(srcdir)/sys_select.in.h; \
+ } > $@-t && \
+ mv $@-t $@
+
+# We need the following in order to create <sys/socket.h> when the system
+# doesn't have one that works with the given compiler.
+sys/socket.h: sys_socket.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H)
+ $(AM_V_at)$(MKDIR_P) sys
+ $(AM_V_GEN)rm -f $@-t $@ && \
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+ -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_SOCKET_H''@|$(NEXT_SYS_SOCKET_H)|g' \
+ -e 's|@''HAVE_SYS_SOCKET_H''@|$(HAVE_SYS_SOCKET_H)|g' \
+ -e 's/@''GNULIB_CLOSE''@/$(GNULIB_CLOSE)/g' \
+ -e 's/@''GNULIB_SOCKET''@/$(GNULIB_SOCKET)/g' \
+ -e 's/@''GNULIB_CONNECT''@/$(GNULIB_CONNECT)/g' \
+ -e 's/@''GNULIB_ACCEPT''@/$(GNULIB_ACCEPT)/g' \
+ -e 's/@''GNULIB_BIND''@/$(GNULIB_BIND)/g' \
+ -e 's/@''GNULIB_GETPEERNAME''@/$(GNULIB_GETPEERNAME)/g' \
+ -e 's/@''GNULIB_GETSOCKNAME''@/$(GNULIB_GETSOCKNAME)/g' \
+ -e 's/@''GNULIB_GETSOCKOPT''@/$(GNULIB_GETSOCKOPT)/g' \
+ -e 's/@''GNULIB_LISTEN''@/$(GNULIB_LISTEN)/g' \
+ -e 's/@''GNULIB_RECV''@/$(GNULIB_RECV)/g' \
+ -e 's/@''GNULIB_SEND''@/$(GNULIB_SEND)/g' \
+ -e 's/@''GNULIB_RECVFROM''@/$(GNULIB_RECVFROM)/g' \
+ -e 's/@''GNULIB_SENDTO''@/$(GNULIB_SENDTO)/g' \
+ -e 's/@''GNULIB_SETSOCKOPT''@/$(GNULIB_SETSOCKOPT)/g' \
+ -e 's/@''GNULIB_SHUTDOWN''@/$(GNULIB_SHUTDOWN)/g' \
+ -e 's/@''GNULIB_ACCEPT4''@/$(GNULIB_ACCEPT4)/g' \
+ -e 's|@''HAVE_WINSOCK2_H''@|$(HAVE_WINSOCK2_H)|g' \
+ -e 's|@''HAVE_WS2TCPIP_H''@|$(HAVE_WS2TCPIP_H)|g' \
+ -e 's|@''HAVE_STRUCT_SOCKADDR_STORAGE''@|$(HAVE_STRUCT_SOCKADDR_STORAGE)|g' \
+ -e 's|@''HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY''@|$(HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY)|g' \
+ -e 's|@''HAVE_SA_FAMILY_T''@|$(HAVE_SA_FAMILY_T)|g' \
+ -e 's|@''HAVE_ACCEPT4''@|$(HAVE_ACCEPT4)|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_socket.in.h; \
+ } > $@-t && \
+ mv -f $@-t $@
+
+# We need the following in order to create <sys/uio.h> when the system
+# doesn't have one that works with the given compiler.
+sys/uio.h: sys_uio.in.h $(top_builddir)/config.status
+ $(AM_V_at)$(MKDIR_P) sys
+ $(AM_V_GEN)rm -f $@-t $@ && \
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
+ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ -e 's|@''NEXT_SYS_UIO_H''@|$(NEXT_SYS_UIO_H)|g' \
+ -e 's|@''HAVE_SYS_UIO_H''@|$(HAVE_SYS_UIO_H)|g' \
+ < $(srcdir)/sys_uio.in.h; \
+ } > $@-t && \
+ mv -f $@-t $@
+
# Clean up after Solaris cc.
clean-local:
rm -rf SunWS_cache
--- /dev/null
+/* accept.c --- wrappers for Windows accept function
+
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Paolo Bonzini */
+
+#include <config.h>
+
+#define WIN32_LEAN_AND_MEAN
+/* Get winsock2.h. */
+#include <sys/socket.h>
+
+/* Get set_winsock_errno, FD_TO_SOCKET etc. */
+#include "w32sock.h"
+
+#undef accept
+
+int
+rpl_accept (int fd, struct sockaddr *addr, socklen_t *addrlen)
+{
+ SOCKET sock = FD_TO_SOCKET (fd);
+
+ if (sock == INVALID_SOCKET)
+ {
+ errno = EBADF;
+ return -1;
+ }
+ else
+ {
+ SOCKET fh = accept (sock, addr, addrlen);
+ if (fh == INVALID_SOCKET)
+ {
+ set_winsock_errno ();
+ return -1;
+ }
+ else
+ return SOCKET_TO_FD (fh);
+ }
+}
--- /dev/null
+/* A GNU-like <arpa/inet.h>.
+
+ Copyright (C) 2005-2006, 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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 <http://www.gnu.org/licenses/>. */
+
+#ifndef _@GUARD_PREFIX@_ARPA_INET_H
+
+#if __GNUC__ >= 3
+@PRAGMA_SYSTEM_HEADER@
+#endif
+@PRAGMA_COLUMNS@
+
+#if @HAVE_FEATURES_H@
+# include <features.h> /* for __GLIBC__ */
+#endif
+
+/* Gnulib's sys/socket.h is responsible for defining socklen_t (used below) and
+ for pulling in winsock2.h etc. under MinGW.
+ But avoid namespace pollution on glibc systems. */
+#ifndef __GLIBC__
+# include <sys/socket.h>
+#endif
+
+/* On NonStop Kernel, inet_ntop and inet_pton are declared in <netdb.h>.
+ But avoid namespace pollution on glibc systems. */
+#if defined __TANDEM && !defined __GLIBC__
+# include <netdb.h>
+#endif
+
+#if @HAVE_ARPA_INET_H@
+
+/* The include_next requires a split double-inclusion guard. */
+# @INCLUDE_NEXT@ @NEXT_ARPA_INET_H@
+
+#endif
+
+#ifndef _@GUARD_PREFIX@_ARPA_INET_H
+#define _@GUARD_PREFIX@_ARPA_INET_H
+
+/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */
+
+/* The definition of _GL_ARG_NONNULL is copied here. */
+
+/* The definition of _GL_WARN_ON_USE is copied here. */
+
+
+#if @GNULIB_INET_NTOP@
+/* Converts an internet address from internal format to a printable,
+ presentable format.
+ AF is an internet address family, such as AF_INET or AF_INET6.
+ SRC points to a 'struct in_addr' (for AF_INET) or 'struct in6_addr'
+ (for AF_INET6).
+ DST points to a buffer having room for CNT bytes.
+ The printable representation of the address (in numeric form, not
+ surrounded by [...], no reverse DNS is done) is placed in DST, and
+ DST is returned. If an error occurs, the return value is NULL and
+ errno is set. If CNT bytes are not sufficient to hold the result,
+ the return value is NULL and errno is set to ENOSPC. A good value
+ for CNT is 46.
+
+ For more details, see the POSIX:2001 specification
+ <http://www.opengroup.org/susv3xsh/inet_ntop.html>. */
+# if @REPLACE_INET_NTOP@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef inet_ntop
+# define inet_ntop rpl_inet_ntop
+# endif
+_GL_FUNCDECL_RPL (inet_ntop, const char *,
+ (int af, const void *restrict src,
+ char *restrict dst, socklen_t cnt)
+ _GL_ARG_NONNULL ((2, 3)));
+_GL_CXXALIAS_RPL (inet_ntop, const char *,
+ (int af, const void *restrict src,
+ char *restrict dst, socklen_t cnt));
+# else
+# if !@HAVE_DECL_INET_NTOP@
+_GL_FUNCDECL_SYS (inet_ntop, const char *,
+ (int af, const void *restrict src,
+ char *restrict dst, socklen_t cnt)
+ _GL_ARG_NONNULL ((2, 3)));
+# endif
+/* Need to cast, because on NonStop Kernel, the fourth parameter is
+ size_t cnt. */
+_GL_CXXALIAS_SYS_CAST (inet_ntop, const char *,
+ (int af, const void *restrict src,
+ char *restrict dst, socklen_t cnt));
+# endif
+_GL_CXXALIASWARN (inet_ntop);
+#elif defined GNULIB_POSIXCHECK
+# undef inet_ntop
+# if HAVE_RAW_DECL_INET_NTOP
+_GL_WARN_ON_USE (inet_ntop, "inet_ntop is unportable - "
+ "use gnulib module inet_ntop for portability");
+# endif
+#endif
+
+#if @GNULIB_INET_PTON@
+# if @REPLACE_INET_PTON@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef inet_pton
+# define inet_pton rpl_inet_pton
+# endif
+_GL_FUNCDECL_RPL (inet_pton, int,
+ (int af, const char *restrict src, void *restrict dst)
+ _GL_ARG_NONNULL ((2, 3)));
+_GL_CXXALIAS_RPL (inet_pton, int,
+ (int af, const char *restrict src, void *restrict dst));
+# else
+# if !@HAVE_DECL_INET_PTON@
+_GL_FUNCDECL_SYS (inet_pton, int,
+ (int af, const char *restrict src, void *restrict dst)
+ _GL_ARG_NONNULL ((2, 3)));
+# endif
+_GL_CXXALIAS_SYS (inet_pton, int,
+ (int af, const char *restrict src, void *restrict dst));
+# endif
+_GL_CXXALIASWARN (inet_pton);
+#elif defined GNULIB_POSIXCHECK
+# undef inet_pton
+# if HAVE_RAW_DECL_INET_PTON
+_GL_WARN_ON_USE (inet_pton, "inet_pton is unportable - "
+ "use gnulib module inet_pton for portability");
+# endif
+#endif
+
+
+#endif /* _@GUARD_PREFIX@_ARPA_INET_H */
+#endif /* _@GUARD_PREFIX@_ARPA_INET_H */
--- /dev/null
+/* bind.c --- wrappers for Windows bind function
+
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Paolo Bonzini */
+
+#include <config.h>
+
+#define WIN32_LEAN_AND_MEAN
+/* Get winsock2.h. */
+#include <sys/socket.h>
+
+/* Get set_winsock_errno, FD_TO_SOCKET etc. */
+#include "w32sock.h"
+
+#undef bind
+
+int
+rpl_bind (int fd, const struct sockaddr *sockaddr, socklen_t len)
+{
+ SOCKET sock = FD_TO_SOCKET (fd);
+
+ if (sock == INVALID_SOCKET)
+ {
+ errno = EBADF;
+ return -1;
+ }
+ else
+ {
+ int r = bind (sock, sockaddr, len);
+ if (r < 0)
+ set_winsock_errno ();
+
+ return r;
+ }
+}
--- /dev/null
+/* connect.c --- wrappers for Windows connect function
+
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Paolo Bonzini */
+
+#include <config.h>
+
+#define WIN32_LEAN_AND_MEAN
+/* Get winsock2.h. */
+#include <sys/socket.h>
+
+/* Get set_winsock_errno, FD_TO_SOCKET etc. */
+#include "w32sock.h"
+
+#undef connect
+
+int
+rpl_connect (int fd, const struct sockaddr *sockaddr, socklen_t len)
+{
+ SOCKET sock = FD_TO_SOCKET (fd);
+
+ if (sock == INVALID_SOCKET)
+ {
+ errno = EBADF;
+ return -1;
+ }
+ else
+ {
+ int r = connect (sock, sockaddr, len);
+ if (r < 0)
+ {
+ /* EINPROGRESS is not returned by WinSock 2.0; for backwards
+ compatibility, connect(2) uses EWOULDBLOCK. */
+ if (WSAGetLastError () == WSAEWOULDBLOCK)
+ WSASetLastError (WSAEINPROGRESS);
+
+ set_winsock_errno ();
+ }
+
+ return r;
+ }
+}
--- /dev/null
+/* Convert double to timespec.
+
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* written by Paul Eggert */
+
+/* Convert the double value SEC to a struct timespec. Round toward
+ positive infinity. On overflow, return an extremal value. */
+
+#include <config.h>
+
+#include "timespec.h"
+
+#include "intprops.h"
+
+struct timespec
+dtotimespec (double sec)
+{
+ double min_representable = TYPE_MINIMUM (time_t);
+ double max_representable =
+ ((TYPE_MAXIMUM (time_t) * (double) TIMESPEC_RESOLUTION
+ + (TIMESPEC_RESOLUTION - 1))
+ / TIMESPEC_RESOLUTION);
+
+ if (! (min_representable < sec))
+ return make_timespec (TYPE_MINIMUM (time_t), 0);
+ else if (! (sec < max_representable))
+ return make_timespec (TYPE_MAXIMUM (time_t), TIMESPEC_RESOLUTION - 1);
+ else
+ {
+ time_t s = sec;
+ double frac = TIMESPEC_RESOLUTION * (sec - s);
+ long ns = frac;
+ ns += ns < frac;
+ s += ns / TIMESPEC_RESOLUTION;
+ ns %= TIMESPEC_RESOLUTION;
+
+ if (ns < 0)
+ {
+ s--;
+ ns += TIMESPEC_RESOLUTION;
+ }
+
+ return make_timespec (s, ns);
+ }
+}
/* Open a stream with a given file descriptor.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-/* Manipulating the FPU control word.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+/* Manipulating the FPU control word. -*- coding: utf-8 -*-
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2007.
This program is free software: you can redistribute it and/or modify
--- /dev/null
+/* ftruncate emulations for native Windows.
+ Copyright (C) 1992-2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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 <http://www.gnu.org/licenses/>. */
+
+#include <config.h>
+
+/* Specification. */
+#include <unistd.h>
+
+#if HAVE_CHSIZE
+/* A native Windows platform. */
+
+# include <errno.h>
+
+# if _GL_WINDOWS_64_BIT_OFF_T
+
+/* Large File Support: off_t is 64-bit, but chsize() takes only a 32-bit
+ argument. So, define a 64-bit safe SetFileSize function ourselves. */
+
+/* Ensure that <windows.h> declares GetFileSizeEx. */
+# undef _WIN32_WINNT
+# define _WIN32_WINNT 0x500
+
+/* Get declarations of the native Windows API functions. */
+# define WIN32_LEAN_AND_MEAN
+# include <windows.h>
+
+/* Get _get_osfhandle. */
+# include "msvc-nothrow.h"
+
+static BOOL
+SetFileSize (HANDLE h, LONGLONG size)
+{
+ LARGE_INTEGER old_size;
+
+ if (!GetFileSizeEx (h, &old_size))
+ return FALSE;
+
+ if (size != old_size.QuadPart)
+ {
+ /* Duplicate the handle, so we are free to modify its file position. */
+ HANDLE curr_process = GetCurrentProcess ();
+ HANDLE tmph;
+
+ if (!DuplicateHandle (curr_process, /* SourceProcessHandle */
+ h, /* SourceHandle */
+ curr_process, /* TargetProcessHandle */
+ (PHANDLE) &tmph, /* TargetHandle */
+ (DWORD) 0, /* DesiredAccess */
+ FALSE, /* InheritHandle */
+ DUPLICATE_SAME_ACCESS)) /* Options */
+ return FALSE;
+
+ if (size < old_size.QuadPart)
+ {
+ /* Reduce the size. */
+ LONG size_hi = (LONG) (size >> 32);
+ if (SetFilePointer (tmph, (LONG) size, &size_hi, FILE_BEGIN)
+ == INVALID_SET_FILE_POINTER
+ && GetLastError() != NO_ERROR)
+ {
+ CloseHandle (tmph);
+ return FALSE;
+ }
+ if (!SetEndOfFile (tmph))
+ {
+ CloseHandle (tmph);
+ return FALSE;
+ }
+ }
+ else
+ {
+ /* Increase the size by adding zero bytes at the end. */
+ static char zero_bytes[1024];
+ LONG pos_hi = 0;
+ LONG pos_lo = SetFilePointer (tmph, (LONG) 0, &pos_hi, FILE_END);
+ LONGLONG pos;
+ if (pos_lo == INVALID_SET_FILE_POINTER
+ && GetLastError() != NO_ERROR)
+ {
+ CloseHandle (tmph);
+ return FALSE;
+ }
+ pos = ((LONGLONG) pos_hi << 32) | (ULONGLONG) (ULONG) pos_lo;
+ while (pos < size)
+ {
+ DWORD written;
+ LONGLONG count = size - pos;
+ if (count > sizeof (zero_bytes))
+ count = sizeof (zero_bytes);
+ if (!WriteFile (tmph, zero_bytes, (DWORD) count, &written, NULL)
+ || written == 0)
+ {
+ CloseHandle (tmph);
+ return FALSE;
+ }
+ pos += (ULONGLONG) (ULONG) written;
+ }
+ }
+ /* Close the handle. */
+ CloseHandle (tmph);
+ }
+ return TRUE;
+}
+
+int
+ftruncate (int fd, off_t length)
+{
+ HANDLE handle = (HANDLE) _get_osfhandle (fd);
+
+ if (handle == INVALID_HANDLE_VALUE)
+ {
+ errno = EBADF;
+ return -1;
+ }
+ if (length < 0)
+ {
+ errno = EINVAL;
+ return -1;
+ }
+ if (!SetFileSize (handle, length))
+ {
+ switch (GetLastError ())
+ {
+ case ERROR_ACCESS_DENIED:
+ errno = EACCES;
+ break;
+ case ERROR_HANDLE_DISK_FULL:
+ case ERROR_DISK_FULL:
+ case ERROR_DISK_TOO_FRAGMENTED:
+ errno = ENOSPC;
+ break;
+ default:
+ errno = EIO;
+ break;
+ }
+ return -1;
+ }
+ return 0;
+}
+
+# else
+
+# include <io.h>
+
+# if HAVE_MSVC_INVALID_PARAMETER_HANDLER
+# include "msvc-inval.h"
+static int
+chsize_nothrow (int fd, long length)
+{
+ int result;
+
+ TRY_MSVC_INVAL
+ {
+ result = chsize (fd, length);
+ }
+ CATCH_MSVC_INVAL
+ {
+ result = -1;
+ errno = EBADF;
+ }
+ DONE_MSVC_INVAL;
+
+ return result;
+}
+# define chsize chsize_nothrow
+# endif
+
+int
+ftruncate (int fd, off_t length)
+{
+ return chsize (fd, length);
+}
+
+# endif
+#endif
-/* Copyright (C) 2011-2013 Free Software Foundation, Inc.
+/* Copyright (C) 2011-2016 Free Software Foundation, Inc.
This file is part of gnulib.
This program is free software: you can redistribute it and/or modify
#include <unistd.h>
#include <errno.h>
+#include <stdlib.h>
#include <string.h>
#if GNULIB_GETCWD
/* getpagesize emulation for systems where it cannot be done in a C macro.
- Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
## DO NOT EDIT! GENERATED AUTOMATICALLY!
## Process this file with automake to produce Makefile.in.
-# Copyright (C) 2002-2013 Free Software Foundation, Inc.
+# Copyright (C) 2002-2016 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
#
# Generated by gnulib-tool.
-AUTOMAKE_OPTIONS = 1.5 foreign subdir-objects
+AUTOMAKE_OPTIONS = 1.9.6 foreign subdir-objects
SUBDIRS = .
TESTS =
TESTS_ENVIRONMENT += EXEEXT='@EXEEXT@' srcdir='$(srcdir)'
+## begin gnulib module accept
+
+
+EXTRA_DIST += accept.c w32sock.h
+
+EXTRA_libtests_a_SOURCES += accept.c
+
+## end gnulib module accept
+
+## begin gnulib module accept-tests
+
+TESTS += test-accept
+check_PROGRAMS += test-accept
+test_accept_LDADD = $(LDADD) @LIBSOCKET@
+EXTRA_DIST += test-accept.c signature.h macros.h
+
+## end gnulib module accept-tests
+
## begin gnulib module alloca-opt-tests
TESTS += test-alloca-opt
## end gnulib module areadlink-tests
-## begin gnulib module argmatch
-
-libtests_a_SOURCES += argmatch.c
-
-EXTRA_DIST += argmatch.h
-
-## end gnulib module argmatch
-
## begin gnulib module argmatch-tests
TESTS += test-argmatch
## end gnulib module argmatch-tests
+## begin gnulib module arpa_inet
+
+BUILT_SOURCES += arpa/inet.h
+
+# We need the following in order to create <arpa/inet.h> when the system
+# doesn't have one.
+arpa/inet.h: arpa_inet.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H)
+ $(AM_V_at)$(MKDIR_P) arpa
+ $(AM_V_GEN)rm -f $@-t $@ && \
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+ -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|@''HAVE_FEATURES_H''@|$(HAVE_FEATURES_H)|g' \
+ -e 's|@''NEXT_ARPA_INET_H''@|$(NEXT_ARPA_INET_H)|g' \
+ -e 's|@''HAVE_ARPA_INET_H''@|$(HAVE_ARPA_INET_H)|g' \
+ -e 's/@''GNULIB_INET_NTOP''@/$(GNULIB_INET_NTOP)/g' \
+ -e 's/@''GNULIB_INET_PTON''@/$(GNULIB_INET_PTON)/g' \
+ -e 's|@''HAVE_DECL_INET_NTOP''@|$(HAVE_DECL_INET_NTOP)|g' \
+ -e 's|@''HAVE_DECL_INET_PTON''@|$(HAVE_DECL_INET_PTON)|g' \
+ -e 's|@''REPLACE_INET_NTOP''@|$(REPLACE_INET_NTOP)|g' \
+ -e 's|@''REPLACE_INET_PTON''@|$(REPLACE_INET_PTON)|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)/arpa_inet.in.h; \
+ } > $@-t && \
+ mv $@-t $@
+MOSTLYCLEANFILES += arpa/inet.h arpa/inet.h-t
+MOSTLYCLEANDIRS += arpa
+
+EXTRA_DIST += arpa_inet.in.h
+
+## end gnulib module arpa_inet
+
+## begin gnulib module arpa_inet-tests
+
+TESTS += test-arpa_inet
+check_PROGRAMS += test-arpa_inet
+EXTRA_DIST += test-arpa_inet.c
+
+## end gnulib module arpa_inet-tests
+
## begin gnulib module binary-io-tests
TESTS += test-binary-io.sh
## end gnulib module binary-io-tests
+## begin gnulib module bind
+
+
+EXTRA_DIST += bind.c w32sock.h
+
+EXTRA_libtests_a_SOURCES += bind.c
+
+## end gnulib module bind
+
+## begin gnulib module bind-tests
+
+TESTS += test-bind
+check_PROGRAMS += test-bind
+test_bind_LDADD = $(LDADD) @LIBSOCKET@ $(INET_PTON_LIB)
+EXTRA_DIST += test-bind.c signature.h macros.h
+
+## end gnulib module bind-tests
+
## begin gnulib module bitrotate-tests
TESTS += test-bitrotate
TESTS += test-c-ctype
check_PROGRAMS += test-c-ctype
-
EXTRA_DIST += test-c-ctype.c macros.h
## end gnulib module c-ctype-tests
## end gnulib module close-tests
+## begin gnulib module connect
+
+
+EXTRA_DIST += connect.c w32sock.h
+
+EXTRA_libtests_a_SOURCES += connect.c
+
+## end gnulib module connect
+
+## begin gnulib module connect-tests
+
+TESTS += test-connect
+check_PROGRAMS += test-connect
+test_connect_LDADD = $(LDADD) @LIBSOCKET@ $(INET_PTON_LIB)
+EXTRA_DIST += test-connect.c signature.h macros.h
+
+## end gnulib module connect-tests
+
+## begin gnulib module ctype-tests
+
+TESTS += test-ctype
+check_PROGRAMS += test-ctype
+EXTRA_DIST += test-ctype.c
+
+## end gnulib module ctype-tests
+
## begin gnulib module dirname-tests
TESTS += test-dirname
## end gnulib module dirname-tests
+## begin gnulib module dtotimespec
+
+libtests_a_SOURCES += dtotimespec.c
+
+## end gnulib module dtotimespec
+
## begin gnulib module dup2-tests
TESTS += test-dup2
test-exclude8.sh
check_PROGRAMS += test-exclude
-test_exclude_LDADD = $(LDADD) @LIBINTL@
+test_exclude_LDADD = $(LDADD) @LIBINTL@ $(LIBTHREAD)
EXTRA_DIST += test-exclude.c test-exclude1.sh test-exclude2.sh test-exclude3.sh test-exclude4.sh test-exclude5.sh test-exclude6.sh test-exclude7.sh test-exclude8.sh
## end gnulib module exclude-tests
## end gnulib module fstat-tests
+## begin gnulib module ftruncate
+
+
+EXTRA_DIST += ftruncate.c
+
+EXTRA_libtests_a_SOURCES += ftruncate.c
+
+## end gnulib module ftruncate
+
+## begin gnulib module ftruncate-tests
+
+TESTS += test-ftruncate.sh
+check_PROGRAMS += test-ftruncate
+EXTRA_DIST += test-ftruncate.c test-ftruncate.sh signature.h macros.h
+
+## end gnulib module ftruncate-tests
+
## begin gnulib module fwrite-tests
TESTS += test-fwrite
## end gnulib module ignore-value-tests
+## begin gnulib module inet_pton
+
+
+EXTRA_DIST += inet_pton.c
+
+EXTRA_libtests_a_SOURCES += inet_pton.c
+
+## end gnulib module inet_pton
+
+## begin gnulib module inet_pton-tests
+
+TESTS += test-inet_pton
+check_PROGRAMS += test-inet_pton
+test_inet_pton_LDADD = $(LDADD) @INET_PTON_LIB@
+EXTRA_DIST += test-inet_pton.c signature.h macros.h
+
+## end gnulib module inet_pton-tests
+
## begin gnulib module intprops-tests
TESTS += test-intprops
## end gnulib module inttypes-tests
+## begin gnulib module ioctl
+
+
+EXTRA_DIST += ioctl.c w32sock.h
+
+EXTRA_libtests_a_SOURCES += ioctl.c
+
+## end gnulib module ioctl
+
+## begin gnulib module ioctl-tests
+
+TESTS += test-ioctl
+check_PROGRAMS += test-ioctl
+EXTRA_DIST += test-ioctl.c signature.h macros.h
+
+## end gnulib module ioctl-tests
+
+## begin gnulib module isblank-tests
+
+TESTS += test-isblank
+check_PROGRAMS += test-isblank
+EXTRA_DIST += test-isblank.c signature.h macros.h
+
+## end gnulib module isblank-tests
+
## begin gnulib module iswblank-tests
TESTS += test-iswblank
## end gnulib module langinfo-tests
+## begin gnulib module listen
+
+
+EXTRA_DIST += listen.c w32sock.h
+
+EXTRA_libtests_a_SOURCES += listen.c
+
+## end gnulib module listen
+
+## begin gnulib module listen-tests
+
+TESTS += test-listen
+check_PROGRAMS += test-listen
+test_listen_LDADD = $(LDADD) @LIBSOCKET@
+EXTRA_DIST += test-listen.c signature.h macros.h
+
+## end gnulib module listen-tests
+
## begin gnulib module locale-tests
TESTS += test-locale
## end gnulib module lstat-tests
-## begin gnulib module malloc-gnu-tests
-
-TESTS += test-malloc-gnu
-check_PROGRAMS += test-malloc-gnu
-EXTRA_DIST += test-malloc-gnu.c
-
-## end gnulib module malloc-gnu-tests
-
## begin gnulib module malloca-tests
TESTS += test-malloca
TESTS += \
test-mbrtowc1.sh test-mbrtowc2.sh test-mbrtowc3.sh test-mbrtowc4.sh \
+ test-mbrtowc5.sh \
test-mbrtowc-w32-1.sh test-mbrtowc-w32-2.sh test-mbrtowc-w32-3.sh \
test-mbrtowc-w32-4.sh test-mbrtowc-w32-5.sh
TESTS_ENVIRONMENT += \
LOCALE_JA='@LOCALE_JA@' \
LOCALE_ZH_CN='@LOCALE_ZH_CN@'
check_PROGRAMS += test-mbrtowc test-mbrtowc-w32
-
-EXTRA_DIST += test-mbrtowc1.sh test-mbrtowc2.sh test-mbrtowc3.sh test-mbrtowc4.sh test-mbrtowc.c test-mbrtowc-w32-1.sh test-mbrtowc-w32-2.sh test-mbrtowc-w32-3.sh test-mbrtowc-w32-4.sh test-mbrtowc-w32-5.sh test-mbrtowc-w32.c signature.h macros.h
+EXTRA_DIST += test-mbrtowc1.sh test-mbrtowc2.sh test-mbrtowc3.sh test-mbrtowc4.sh test-mbrtowc5.sh test-mbrtowc.c test-mbrtowc-w32-1.sh test-mbrtowc-w32-2.sh test-mbrtowc-w32-3.sh test-mbrtowc-w32-4.sh test-mbrtowc-w32-5.sh test-mbrtowc-w32.c signature.h macros.h
## end gnulib module mbrtowc-tests
## end gnulib module memchr-tests
+## begin gnulib module nanosleep
+
+
+EXTRA_DIST += nanosleep.c
+
+EXTRA_libtests_a_SOURCES += nanosleep.c
+
+## end gnulib module nanosleep
+
+## begin gnulib module nanosleep-tests
+
+TESTS += test-nanosleep
+check_PROGRAMS += test-nanosleep
+test_nanosleep_LDADD = $(LDADD) $(LIB_NANOSLEEP)
+EXTRA_DIST += test-nanosleep.c signature.h macros.h
+
+## end gnulib module nanosleep-tests
+
+## begin gnulib module netinet_in
+
+BUILT_SOURCES += $(NETINET_IN_H)
+
+# We need the following in order to create <netinet/in.h> when the system
+# doesn't have one.
+if GL_GENERATE_NETINET_IN_H
+netinet/in.h: netinet_in.in.h $(top_builddir)/config.status
+ $(AM_V_at)$(MKDIR_P) netinet
+ $(AM_V_GEN)rm -f $@-t $@ && \
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
+ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ -e 's|@''NEXT_NETINET_IN_H''@|$(NEXT_NETINET_IN_H)|g' \
+ -e 's|@''HAVE_NETINET_IN_H''@|$(HAVE_NETINET_IN_H)|g' \
+ < $(srcdir)/netinet_in.in.h; \
+ } > $@-t && \
+ mv $@-t $@
+else
+netinet/in.h: $(top_builddir)/config.status
+ rm -f $@
+endif
+MOSTLYCLEANFILES += netinet/in.h netinet/in.h-t
+MOSTLYCLEANDIRS += netinet
+
+EXTRA_DIST += netinet_in.in.h
+
+## end gnulib module netinet_in
+
+## begin gnulib module netinet_in-tests
+
+TESTS += test-netinet_in
+check_PROGRAMS += test-netinet_in
+EXTRA_DIST += test-netinet_in.c
+
+## end gnulib module netinet_in-tests
+
## begin gnulib module nl_langinfo-tests
TESTS += test-nl_langinfo.sh
## end gnulib module pathmax-tests
+## begin gnulib module perror
+
+
+EXTRA_DIST += perror.c
+
+EXTRA_libtests_a_SOURCES += perror.c
+
+## end gnulib module perror
+
+## begin gnulib module perror-tests
+
+TESTS += test-perror.sh test-perror2
+check_PROGRAMS += test-perror test-perror2
+EXTRA_DIST += macros.h signature.h test-perror.c test-perror2.c test-perror.sh
+
+## end gnulib module perror-tests
+
+## begin gnulib module pipe-posix
+
+
+EXTRA_DIST += pipe.c
+
+EXTRA_libtests_a_SOURCES += pipe.c
+
+## end gnulib module pipe-posix
+
+## begin gnulib module pipe-posix-tests
+
+TESTS += test-pipe
+check_PROGRAMS += test-pipe
+EXTRA_DIST += test-pipe.c signature.h macros.h
+
+## end gnulib module pipe-posix-tests
+
## begin gnulib module putenv
TESTS += test-quotearg-simple
check_PROGRAMS += test-quotearg-simple
test_quotearg_simple_LDADD = $(LDADD) @LIBINTL@
-EXTRA_DIST += test-quotearg-simple.c test-quotearg.h macros.h
+EXTRA_DIST += test-quotearg-simple.c test-quotearg.h macros.h zerosize-ptr.h
## end gnulib module quotearg-simple-tests
## end gnulib module raise-tests
+## begin gnulib module rawmemchr-tests
+
+TESTS += test-rawmemchr
+check_PROGRAMS += test-rawmemchr
+EXTRA_DIST += test-rawmemchr.c zerosize-ptr.h signature.h macros.h
+
+## end gnulib module rawmemchr-tests
+
## begin gnulib module readlink-tests
TESTS += test-readlink
TESTS += test-regex
check_PROGRAMS += test-regex
-test_regex_LDADD = $(LDADD) @LIBINTL@
+test_regex_LDADD = $(LDADD) @LIBINTL@ $(LIBTHREAD) $(LIB_PTHREAD)
EXTRA_DIST += test-regex.c macros.h
## end gnulib module regex-tests
## end gnulib module same-inode
-## begin gnulib module setenv
+## begin gnulib module select
+
+
+EXTRA_DIST += select.c
+EXTRA_libtests_a_SOURCES += select.c
-EXTRA_DIST += setenv.c
+## end gnulib module select
-EXTRA_libtests_a_SOURCES += setenv.c
+## begin gnulib module select-tests
-## end gnulib module setenv
+TESTS += test-select test-select-in.sh test-select-out.sh
+# test-select-stdin has to be run by hand.
+check_PROGRAMS += test-select test-select-fd test-select-stdin
+test_select_LDADD = $(LDADD) @LIB_SELECT@ @LIBSOCKET@ $(INET_PTON_LIB)
+test_select_fd_LDADD = $(LDADD) @LIB_SELECT@
+test_select_stdin_LDADD = $(LDADD) @LIB_SELECT@
+EXTRA_DIST += macros.h signature.h test-select.c test-select.h test-select-fd.c test-select-in.sh test-select-out.sh test-select-stdin.c
+
+## end gnulib module select-tests
## begin gnulib module setenv-tests
## end gnulib module setlocale-tests
+## begin gnulib module setsockopt
+
+
+EXTRA_DIST += setsockopt.c w32sock.h
+
+EXTRA_libtests_a_SOURCES += setsockopt.c
+
+## end gnulib module setsockopt
+
+## begin gnulib module setsockopt-tests
+
+TESTS += test-setsockopt
+check_PROGRAMS += test-setsockopt
+test_setsockopt_LDADD = $(LDADD) @LIBSOCKET@
+EXTRA_DIST += test-setsockopt.c signature.h macros.h
+
+## end gnulib module setsockopt-tests
+
## begin gnulib module sh-quote-tests
TESTS += test-sh-quote
## end gnulib module snprintf-tests
+## begin gnulib module socket
+
+
+EXTRA_DIST += socket.c w32sock.h
+
+EXTRA_libtests_a_SOURCES += socket.c
+
+## end gnulib module socket
+
+## begin gnulib module sockets
+
+libtests_a_SOURCES += sockets.h sockets.c
+
+EXTRA_DIST += w32sock.h
+
+## end gnulib module sockets
+
+## begin gnulib module sockets-tests
+
+TESTS += test-sockets
+check_PROGRAMS += test-sockets
+test_sockets_LDADD = $(LDADD) @LIBSOCKET@
+EXTRA_DIST += test-sockets.c
+
+## end gnulib module sockets-tests
+
## begin gnulib module stat-tests
TESTS += test-stat
TESTS += test-stat-time
check_PROGRAMS += test-stat-time
-EXTRA_DIST += test-stat-time.c macros.h
+test_stat_time_LDADD = $(LDADD) $(LIB_NANOSLEEP)
+EXTRA_DIST += test-stat-time.c macros.h nap.h
## end gnulib module stat-time-tests
+## 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 stdalign-tests
+
+TESTS += test-stdalign
+check_PROGRAMS += test-stdalign
+EXTRA_DIST += test-stdalign.c macros.h
+
+## end gnulib module stdalign-tests
+
## begin gnulib module stdbool-tests
TESTS += test-stdbool
## end gnulib module strerror-tests
+## begin gnulib module strerror_r-posix
+
+
+EXTRA_DIST += strerror_r.c
+
+EXTRA_libtests_a_SOURCES += strerror_r.c
+
+## end gnulib module strerror_r-posix
+
+## begin gnulib module strerror_r-posix-tests
+
+TESTS += test-strerror_r
+check_PROGRAMS += test-strerror_r
+EXTRA_DIST += test-strerror_r.c signature.h macros.h
+
+## end gnulib module strerror_r-posix-tests
+
## begin gnulib module strftime-tests
TESTS += test-strftime
## end gnulib module symlink-tests
+## begin gnulib module sys_ioctl
+
+BUILT_SOURCES += sys/ioctl.h
+
+# We need the following in order to create <sys/ioctl.h> when the system
+# does not have a complete one.
+sys/ioctl.h: sys_ioctl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H)
+ $(AM_V_at)$(MKDIR_P) sys
+ $(AM_V_GEN)rm -f $@-t $@ && \
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+ -e 's|@''HAVE_SYS_IOCTL_H''@|$(HAVE_SYS_IOCTL_H)|g' \
+ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
+ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ -e 's|@''NEXT_SYS_IOCTL_H''@|$(NEXT_SYS_IOCTL_H)|g' \
+ -e 's/@''GNULIB_IOCTL''@/$(GNULIB_IOCTL)/g' \
+ -e 's|@''SYS_IOCTL_H_HAVE_WINSOCK2_H''@|$(SYS_IOCTL_H_HAVE_WINSOCK2_H)|g' \
+ -e 's|@''SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS''@|$(SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS)|g' \
+ -e 's|@''REPLACE_IOCTL''@|$(REPLACE_IOCTL)|g' \
+ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
+ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
+ < $(srcdir)/sys_ioctl.in.h; \
+ } > $@-t && \
+ mv $@-t $@
+MOSTLYCLEANFILES += sys/ioctl.h sys/ioctl.h-t
+MOSTLYCLEANDIRS += sys
+
+EXTRA_DIST += sys_ioctl.in.h
+
+## end gnulib module sys_ioctl
+
+## begin gnulib module sys_ioctl-tests
+
+TESTS += test-sys_ioctl
+check_PROGRAMS += test-sys_ioctl
+EXTRA_DIST += test-sys_ioctl.c
+
+## end gnulib module sys_ioctl-tests
+
+## begin gnulib module sys_select
+
+BUILT_SOURCES += sys/select.h
+
+# We need the following in order to create <sys/select.h> when the system
+# doesn't have one that works with the given compiler.
+sys/select.h: sys_select.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H)
+ $(AM_V_at)$(MKDIR_P) sys
+ $(AM_V_GEN)rm -f $@-t $@ && \
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+ -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_SELECT_H''@|$(NEXT_SYS_SELECT_H)|g' \
+ -e 's|@''HAVE_SYS_SELECT_H''@|$(HAVE_SYS_SELECT_H)|g' \
+ -e 's/@''GNULIB_PSELECT''@/$(GNULIB_PSELECT)/g' \
+ -e 's/@''GNULIB_SELECT''@/$(GNULIB_SELECT)/g' \
+ -e 's|@''HAVE_WINSOCK2_H''@|$(HAVE_WINSOCK2_H)|g' \
+ -e 's|@''HAVE_PSELECT''@|$(HAVE_PSELECT)|g' \
+ -e 's|@''REPLACE_PSELECT''@|$(REPLACE_PSELECT)|g' \
+ -e 's|@''REPLACE_SELECT''@|$(REPLACE_SELECT)|g' \
+ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
+ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
+ < $(srcdir)/sys_select.in.h; \
+ } > $@-t && \
+ mv $@-t $@
+MOSTLYCLEANFILES += sys/select.h sys/select.h-t
+MOSTLYCLEANDIRS += sys
+
+EXTRA_DIST += sys_select.in.h
+
+## end gnulib module sys_select
+
+## begin gnulib module sys_select-tests
+
+TESTS += test-sys_select
+check_PROGRAMS += test-sys_select
+EXTRA_DIST += test-sys_select.c signature.h
+
+## end gnulib module sys_select-tests
+
+## begin gnulib module sys_socket
+
+BUILT_SOURCES += sys/socket.h
+libtests_a_SOURCES += sys_socket.c
+
+# We need the following in order to create <sys/socket.h> when the system
+# doesn't have one that works with the given compiler.
+sys/socket.h: sys_socket.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H)
+ $(AM_V_at)$(MKDIR_P) sys
+ $(AM_V_GEN)rm -f $@-t $@ && \
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+ -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_SOCKET_H''@|$(NEXT_SYS_SOCKET_H)|g' \
+ -e 's|@''HAVE_SYS_SOCKET_H''@|$(HAVE_SYS_SOCKET_H)|g' \
+ -e 's/@''GNULIB_CLOSE''@/$(GNULIB_CLOSE)/g' \
+ -e 's/@''GNULIB_SOCKET''@/$(GNULIB_SOCKET)/g' \
+ -e 's/@''GNULIB_CONNECT''@/$(GNULIB_CONNECT)/g' \
+ -e 's/@''GNULIB_ACCEPT''@/$(GNULIB_ACCEPT)/g' \
+ -e 's/@''GNULIB_BIND''@/$(GNULIB_BIND)/g' \
+ -e 's/@''GNULIB_GETPEERNAME''@/$(GNULIB_GETPEERNAME)/g' \
+ -e 's/@''GNULIB_GETSOCKNAME''@/$(GNULIB_GETSOCKNAME)/g' \
+ -e 's/@''GNULIB_GETSOCKOPT''@/$(GNULIB_GETSOCKOPT)/g' \
+ -e 's/@''GNULIB_LISTEN''@/$(GNULIB_LISTEN)/g' \
+ -e 's/@''GNULIB_RECV''@/$(GNULIB_RECV)/g' \
+ -e 's/@''GNULIB_SEND''@/$(GNULIB_SEND)/g' \
+ -e 's/@''GNULIB_RECVFROM''@/$(GNULIB_RECVFROM)/g' \
+ -e 's/@''GNULIB_SENDTO''@/$(GNULIB_SENDTO)/g' \
+ -e 's/@''GNULIB_SETSOCKOPT''@/$(GNULIB_SETSOCKOPT)/g' \
+ -e 's/@''GNULIB_SHUTDOWN''@/$(GNULIB_SHUTDOWN)/g' \
+ -e 's/@''GNULIB_ACCEPT4''@/$(GNULIB_ACCEPT4)/g' \
+ -e 's|@''HAVE_WINSOCK2_H''@|$(HAVE_WINSOCK2_H)|g' \
+ -e 's|@''HAVE_WS2TCPIP_H''@|$(HAVE_WS2TCPIP_H)|g' \
+ -e 's|@''HAVE_STRUCT_SOCKADDR_STORAGE''@|$(HAVE_STRUCT_SOCKADDR_STORAGE)|g' \
+ -e 's|@''HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY''@|$(HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY)|g' \
+ -e 's|@''HAVE_SA_FAMILY_T''@|$(HAVE_SA_FAMILY_T)|g' \
+ -e 's|@''HAVE_ACCEPT4''@|$(HAVE_ACCEPT4)|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_socket.in.h; \
+ } > $@-t && \
+ mv -f $@-t $@
+MOSTLYCLEANFILES += sys/socket.h sys/socket.h-t
+MOSTLYCLEANDIRS += sys
+
+EXTRA_DIST += sys_socket.in.h
+
+## end gnulib module sys_socket
+
+## begin gnulib module sys_socket-tests
+
+TESTS += test-sys_socket
+check_PROGRAMS += test-sys_socket
+EXTRA_DIST += test-sys_socket.c
+
+## end gnulib module sys_socket-tests
+
## begin gnulib module sys_stat-tests
TESTS += test-sys_stat
## end gnulib module sys_types-tests
+## begin gnulib module sys_uio
+
+BUILT_SOURCES += sys/uio.h
+
+# We need the following in order to create <sys/uio.h> when the system
+# doesn't have one that works with the given compiler.
+sys/uio.h: sys_uio.in.h $(top_builddir)/config.status
+ $(AM_V_at)$(MKDIR_P) sys
+ $(AM_V_GEN)rm -f $@-t $@ && \
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
+ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ -e 's|@''NEXT_SYS_UIO_H''@|$(NEXT_SYS_UIO_H)|g' \
+ -e 's|@''HAVE_SYS_UIO_H''@|$(HAVE_SYS_UIO_H)|g' \
+ < $(srcdir)/sys_uio.in.h; \
+ } > $@-t && \
+ mv -f $@-t $@
+MOSTLYCLEANFILES += sys/uio.h sys/uio.h-t
+MOSTLYCLEANDIRS += sys
+
+EXTRA_DIST += sys_uio.in.h
+
+## end gnulib module sys_uio
+
+## begin gnulib module sys_uio-tests
+
+TESTS += test-sys_uio
+check_PROGRAMS += test-sys_uio
+EXTRA_DIST += test-sys_uio.c
+
+## end gnulib module sys_uio-tests
+
## begin gnulib module sys_wait-tests
TESTS += test-sys_wait
## end gnulib module time-tests
+## begin gnulib module timespec-add
+
+libtests_a_SOURCES += timespec-add.c
+
+## end gnulib module timespec-add
+
+## begin gnulib module timespec-sub
+
+libtests_a_SOURCES += timespec-sub.c
+
+## end gnulib module timespec-sub
+
+## begin gnulib module timespec-tests
+
+TESTS += test-timespec
+check_PROGRAMS += test-timespec
+EXTRA_DIST += test-timespec.c macros.h
+
+## end gnulib module timespec-tests
+
## begin gnulib module unistd-tests
TESTS += test-unistd
## end gnulib module uniwidth/width-tests
-## begin gnulib module unsetenv
-
-
-EXTRA_DIST += unsetenv.c
-
-EXTRA_libtests_a_SOURCES += unsetenv.c
-
-## end gnulib module unsetenv
-
## begin gnulib module unsetenv-tests
TESTS += test-unsetenv
## end gnulib module update-copyright-tests
-## begin gnulib module usleep
-
-
-EXTRA_DIST += usleep.c
-
-EXTRA_libtests_a_SOURCES += usleep.c
-
-## end gnulib module usleep
-
-## begin gnulib module usleep-tests
-
-TESTS += test-usleep
-check_PROGRAMS += test-usleep
-EXTRA_DIST += test-usleep.c signature.h macros.h
-
-## end gnulib module usleep-tests
-
## begin gnulib module vasnprintf-tests
TESTS += test-vasnprintf
TESTS_ENVIRONMENT += MAKE='$(MAKE)'
TESTS += test-verify test-verify.sh
check_PROGRAMS += test-verify
+
+# This test expects compilation of test-verify.c to fail, and
+# each time it fails, the makefile rule does not perform the usual
+# "mv -f $name.Tpo $name.po, so tell make clean to remove that file.
+MOSTLYCLEANFILES += .deps/test-verify.Tpo
EXTRA_DIST += test-verify.c test-verify.sh
## end gnulib module verify-tests
/* hash-pjw.c -- compute a hash value from a NUL-terminated string.
- Copyright (C) 2001, 2003, 2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2003, 2006, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* hash-pjw.h -- declaration for a simple hash function
- Copyright (C) 2001, 2003, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2003, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* inet_pton.c -- convert IPv4 and IPv6 addresses from text to binary form
+
+ Copyright (C) 2006, 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/*
+ * Copyright (c) 1996,1999 by Internet Software Consortium.
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
+ * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
+ * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
+ * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
+ * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
+ * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
+ * SOFTWARE.
+ */
+
+#include <config.h>
+
+/* Specification. */
+#include <arpa/inet.h>
+
+#if HAVE_DECL_INET_PTON
+
+# undef inet_pton
+
+int
+rpl_inet_pton (int af, const char *restrict src, void *restrict dst)
+{
+ return inet_pton (af, src, dst);
+}
+
+#else
+
+# include <c-ctype.h>
+# include <string.h>
+# include <errno.h>
+
+# define NS_INADDRSZ 4
+# define NS_IN6ADDRSZ 16
+# define NS_INT16SZ 2
+
+/*
+ * WARNING: Don't even consider trying to compile this on a system where
+ * sizeof(int) < 4. sizeof(int) > 4 is fine; all the world's not a VAX.
+ */
+
+static int inet_pton4 (const char *src, unsigned char *dst);
+# if HAVE_IPV6
+static int inet_pton6 (const char *src, unsigned char *dst);
+# endif
+
+/* int
+ * inet_pton(af, src, dst)
+ * convert from presentation format (which usually means ASCII printable)
+ * to network format (which is usually some kind of binary format).
+ * return:
+ * 1 if the address was valid for the specified address family
+ * 0 if the address wasn't valid ('dst' is untouched in this case)
+ * -1 if some other error occurred ('dst' is untouched in this case, too)
+ * author:
+ * Paul Vixie, 1996.
+ */
+int
+inet_pton (int af, const char *restrict src, void *restrict dst)
+{
+ switch (af)
+ {
+ case AF_INET:
+ return (inet_pton4 (src, dst));
+
+# if HAVE_IPV6
+ case AF_INET6:
+ return (inet_pton6 (src, dst));
+# endif
+
+ default:
+ errno = EAFNOSUPPORT;
+ return (-1);
+ }
+ /* NOTREACHED */
+}
+
+/* int
+ * inet_pton4(src, dst)
+ * like inet_aton() but without all the hexadecimal, octal (with the
+ * exception of 0) and shorthand.
+ * return:
+ * 1 if 'src' is a valid dotted quad, else 0.
+ * notice:
+ * does not touch 'dst' unless it's returning 1.
+ * author:
+ * Paul Vixie, 1996.
+ */
+static int
+inet_pton4 (const char *restrict src, unsigned char *restrict dst)
+{
+ int saw_digit, octets, ch;
+ unsigned char tmp[NS_INADDRSZ], *tp;
+
+ saw_digit = 0;
+ octets = 0;
+ *(tp = tmp) = 0;
+ while ((ch = *src++) != '\0')
+ {
+
+ if (ch >= '0' && ch <= '9')
+ {
+ unsigned new = *tp * 10 + (ch - '0');
+
+ if (saw_digit && *tp == 0)
+ return (0);
+ if (new > 255)
+ return (0);
+ *tp = new;
+ if (!saw_digit)
+ {
+ if (++octets > 4)
+ return (0);
+ saw_digit = 1;
+ }
+ }
+ else if (ch == '.' && saw_digit)
+ {
+ if (octets == 4)
+ return (0);
+ *++tp = 0;
+ saw_digit = 0;
+ }
+ else
+ return (0);
+ }
+ if (octets < 4)
+ return (0);
+ memcpy (dst, tmp, NS_INADDRSZ);
+ return (1);
+}
+
+# if HAVE_IPV6
+
+/* int
+ * inet_pton6(src, dst)
+ * convert presentation level address to network order binary form.
+ * return:
+ * 1 if 'src' is a valid [RFC1884 2.2] address, else 0.
+ * notice:
+ * (1) does not touch 'dst' unless it's returning 1.
+ * (2) :: in a full address is silently ignored.
+ * credit:
+ * inspired by Mark Andrews.
+ * author:
+ * Paul Vixie, 1996.
+ */
+static int
+inet_pton6 (const char *restrict src, unsigned char *restrict dst)
+{
+ static const char xdigits[] = "0123456789abcdef";
+ unsigned char tmp[NS_IN6ADDRSZ], *tp, *endp, *colonp;
+ const char *curtok;
+ int ch, saw_xdigit;
+ unsigned val;
+
+ tp = memset (tmp, '\0', NS_IN6ADDRSZ);
+ endp = tp + NS_IN6ADDRSZ;
+ colonp = NULL;
+ /* Leading :: requires some special handling. */
+ if (*src == ':')
+ if (*++src != ':')
+ return (0);
+ curtok = src;
+ saw_xdigit = 0;
+ val = 0;
+ while ((ch = c_tolower (*src++)) != '\0')
+ {
+ const char *pch;
+
+ pch = strchr (xdigits, ch);
+ if (pch != NULL)
+ {
+ val <<= 4;
+ val |= (pch - xdigits);
+ if (val > 0xffff)
+ return (0);
+ saw_xdigit = 1;
+ continue;
+ }
+ if (ch == ':')
+ {
+ curtok = src;
+ if (!saw_xdigit)
+ {
+ if (colonp)
+ return (0);
+ colonp = tp;
+ continue;
+ }
+ else if (*src == '\0')
+ {
+ return (0);
+ }
+ if (tp + NS_INT16SZ > endp)
+ return (0);
+ *tp++ = (u_char) (val >> 8) & 0xff;
+ *tp++ = (u_char) val & 0xff;
+ saw_xdigit = 0;
+ val = 0;
+ continue;
+ }
+ if (ch == '.' && ((tp + NS_INADDRSZ) <= endp) &&
+ inet_pton4 (curtok, tp) > 0)
+ {
+ tp += NS_INADDRSZ;
+ saw_xdigit = 0;
+ break; /* '\0' was seen by inet_pton4(). */
+ }
+ return (0);
+ }
+ if (saw_xdigit)
+ {
+ if (tp + NS_INT16SZ > endp)
+ return (0);
+ *tp++ = (u_char) (val >> 8) & 0xff;
+ *tp++ = (u_char) val & 0xff;
+ }
+ if (colonp != NULL)
+ {
+ /*
+ * Since some memmove()'s erroneously fail to handle
+ * overlapping regions, we'll do the shift by hand.
+ */
+ const int n = tp - colonp;
+ int i;
+
+ if (tp == endp)
+ return (0);
+ for (i = 1; i <= n; i++)
+ {
+ endp[-i] = colonp[n - i];
+ colonp[n - i] = 0;
+ }
+ tp = endp;
+ }
+ if (tp != endp)
+ return (0);
+ memcpy (dst, tmp, NS_IN6ADDRSZ);
+ return (1);
+}
+
+# endif
+
+#endif
# source this file; set up for tests
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
fatal_ () { warn_ "$ME_: hard error: $@"; Exit 99; }
framework_failure_ () { warn_ "$ME_: set-up failure: $@"; Exit 99; }
+# This is used to simplify checking of the return value
+# which is useful when ensuring a command fails as desired.
+# I.e., just doing `command ... &&fail=1` will not catch
+# a segfault in command for example. With this helper you
+# instead check an explicit exit code like
+# returns_ 1 command ... || fail
+returns_ () {
+ # Disable tracing so it doesn't interfere with stderr of the wrapped command
+ { set +x; } 2>/dev/null
+
+ local exp_exit="$1"
+ shift
+ "$@"
+ test $? -eq $exp_exit && ret_=0 || ret_=1
+
+ if test "$VERBOSE" = yes && test "$gl_set_x_corrupts_stderr_" = false; then
+ set -x
+ fi
+ { return $ret_; } 2>/dev/null
+}
+
# Sanitize this shell to POSIX mode, if possible.
DUALCASE=1; export DUALCASE
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
# ? - not ok
gl_shell_test_script_='
test $(echo y) = y || exit 1
+f_local_() { local v=1; }; f_local_ || exit 1
score_=10
if test "$VERBOSE" = yes; then
test -n "$( (exec 3>&1; set -x; P=1 true 2>&3) 2> /dev/null)" && score_=9
*x*) opts_=-x ;;
*) opts_= ;;
esac
+ re_shell=$re_shell_
+ export re_shell
exec "$re_shell_" $opts_ "$0" --no-reexec "$@"
echo "$ME_: exec failed" 1>&2
exit 127
fi
}
fi
-elif diff_out_=`exec 2>/dev/null; diff -c "$0" "$0" < /dev/null`; then
+elif
+ for diff_opt_ in -U3 -c '' no; do
+ test "$diff_opt_" = no && break
+ diff_out_=`exec 2>/dev/null; diff $diff_opt_ "$0" "$0" </dev/null` && break
+ done
+ test "$diff_opt_" != no
+then
if test -z "$diff_out_"; then
- compare_ () { diff -c "$@"; }
+ compare_ () { diff $diff_opt_ "$@"; }
else
compare_ ()
{
- if diff -c "$@" > diff.out; then
+ if diff $diff_opt_ "$@" > diff.out; then
# No differences were found, but AIX and HP-UX 'diff' produce output
# "No differences encountered" or "There are no differences between the
# files.". Hide this output.
fi
}
fi
-elif ( cmp --version < /dev/null 2>&1 | grep GNU ) > /dev/null 2>&1; then
+elif cmp -s /dev/null /dev/null 2>/dev/null; then
compare_ () { cmp -s "$@"; }
else
compare_ () { cmp "$@"; }
fi
initial_cwd_=$PWD
- fail=0
pfx_=`testdir_prefix_`
test_dir_=`mktempd_ "$initial_cwd_" "$pfx_-$ME_.XXXX"` \
# Disallow any trailing slash on specified destdir:
# it would subvert the post-mktemp "case"-based destdir test.
case $destdir_ in
- /) ;;
+ / | //) destdir_slash_=$destdir;;
*/) fail_ "invalid destination dir: remove trailing slash(es)";;
+ *) destdir_slash_=$destdir_/;;
esac
case $template_ in
esac
# First, try to use mktemp.
- d=`unset TMPDIR; { mktemp -d -t -p "$destdir_" "$template_"; } 2>/dev/null` \
- || fail=1
+ d=`unset TMPDIR; { mktemp -d -t -p "$destdir_" "$template_"; } 2>/dev/null` &&
# The resulting name must be in the specified directory.
- case $d in "$destdir_"*);; *) fail=1;; esac
+ case $d in "$destdir_slash_"*) :;; *) false;; esac &&
# It must have created the directory.
- test -d "$d" || fail=1
+ test -d "$d" &&
# It must have 0700 permissions. Handle sticky "S" bits.
- perms=`ls -dgo "$d" 2>/dev/null|tr S -` || fail=1
- case $perms in drwx------*) ;; *) fail=1;; esac
-
- test $fail = 0 && {
+ perms=`ls -dgo "$d" 2>/dev/null` &&
+ case $perms in drwx--[-S]---*) :;; *) false;; esac && {
echo "$d"
return
}
i_=1
while :; do
X_=`rand_bytes_ $nx_`
- candidate_dir_="$destdir_/$base_template_$X_"
+ candidate_dir_="$destdir_slash_$base_template_$X_"
err_=`mkdir -m 0700 "$candidate_dir_" 2>&1` \
&& { echo "$candidate_dir_"; return; }
test $MAX_TRIES_ -le $i_ && break;
--- /dev/null
+/* ioctl.c --- wrappers for Windows ioctl function
+
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Paolo Bonzini */
+
+#include <config.h>
+
+#include <sys/ioctl.h>
+
+#include <stdarg.h>
+
+#if HAVE_IOCTL
+
+/* Provide a wrapper with the POSIX prototype. */
+# undef ioctl
+int
+rpl_ioctl (int fd, int request, ... /* {void *,char *} arg */)
+{
+ void *buf;
+ va_list args;
+
+ va_start (args, request);
+ buf = va_arg (args, void *);
+ va_end (args);
+
+ /* Cast 'request' so that when the system's ioctl function takes a 64-bit
+ request argument, the value gets zero-extended, not sign-extended. */
+ return ioctl (fd, (unsigned int) request, buf);
+}
+
+#else /* mingw */
+
+# include <errno.h>
+
+/* Get HANDLE. */
+# define WIN32_LEAN_AND_MEAN
+# include <windows.h>
+
+# include "fd-hook.h"
+/* Get _get_osfhandle. */
+# include "msvc-nothrow.h"
+
+static int
+primary_ioctl (int fd, int request, void *arg)
+{
+ /* We don't support FIONBIO on pipes here. If you want to make pipe
+ fds non-blocking, use the gnulib 'nonblocking' module, until
+ gnulib implements fcntl F_GETFL / F_SETFL with O_NONBLOCK. */
+
+ if ((HANDLE) _get_osfhandle (fd) != INVALID_HANDLE_VALUE)
+ errno = ENOSYS;
+ else
+ errno = EBADF;
+ return -1;
+}
+
+int
+ioctl (int fd, int request, ... /* {void *,char *} arg */)
+{
+ void *arg;
+ va_list args;
+
+ va_start (args, request);
+ arg = va_arg (args, void *);
+ va_end (args);
+
+# if WINDOWS_SOCKETS
+ return execute_all_ioctl_hooks (primary_ioctl, fd, request, arg);
+# else
+ return primary_ioctl (fd, request, arg);
+# endif
+}
+
+#endif
--- /dev/null
+/* listen.c --- wrappers for Windows listen function
+
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Paolo Bonzini */
+
+#include <config.h>
+
+#define WIN32_LEAN_AND_MEAN
+/* Get winsock2.h. */
+#include <sys/socket.h>
+
+/* Get set_winsock_errno, FD_TO_SOCKET etc. */
+#include "w32sock.h"
+
+#undef listen
+
+int
+rpl_listen (int fd, int backlog)
+{
+ SOCKET sock = FD_TO_SOCKET (fd);
+
+ if (sock == INVALID_SOCKET)
+ {
+ errno = EBADF;
+ return -1;
+ }
+ else
+ {
+ int r = listen (sock, backlog);
+ if (r < 0)
+ set_winsock_errno ();
+
+ return r;
+ }
+}
/* Common macros used by gnulib tests.
- Copyright (C) 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 2006-2016 Free Software Foundation, Inc.
This 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 (!(expr)) \
{ \
- fprintf (ASSERT_STREAM, "%s:%d: assertion failed\n", \
- __FILE__, __LINE__); \
+ fprintf (ASSERT_STREAM, "%s:%d: assertion '%s' failed\n", \
+ __FILE__, __LINE__, #expr); \
fflush (ASSERT_STREAM); \
abort (); \
} \
--- /dev/null
+/* Provide a replacement for the POSIX nanosleep function.
+
+ Copyright (C) 1999-2000, 2002, 2004-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* written by Jim Meyering
+ and Bruno Haible for the native Windows part */
+
+#include <config.h>
+
+#include <time.h>
+
+#include "intprops.h"
+#include "sig-handler.h"
+#include "verify.h"
+
+#include <stdbool.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/select.h>
+#include <signal.h>
+
+#include <sys/time.h>
+#include <errno.h>
+
+#include <unistd.h>
+
+
+enum { BILLION = 1000 * 1000 * 1000 };
+
+#if HAVE_BUG_BIG_NANOSLEEP
+
+int
+nanosleep (const struct timespec *requested_delay,
+ struct timespec *remaining_delay)
+# undef nanosleep
+{
+ /* nanosleep mishandles large sleeps due to internal overflow problems.
+ The worst known case of this is Linux 2.6.9 with glibc 2.3.4, which
+ can't sleep more than 24.85 days (2^31 milliseconds). Similarly,
+ cygwin 1.5.x, which can't sleep more than 49.7 days (2^32 milliseconds).
+ Solve this by breaking the sleep up into smaller chunks. */
+
+ if (requested_delay->tv_nsec < 0 || BILLION <= requested_delay->tv_nsec)
+ {
+ errno = EINVAL;
+ return -1;
+ }
+
+ {
+ /* Verify that time_t is large enough. */
+ verify (TYPE_MAXIMUM (time_t) / 24 / 24 / 60 / 60);
+ const time_t limit = 24 * 24 * 60 * 60;
+ time_t seconds = requested_delay->tv_sec;
+ struct timespec intermediate;
+ intermediate.tv_nsec = requested_delay->tv_nsec;
+
+ while (limit < seconds)
+ {
+ int result;
+ intermediate.tv_sec = limit;
+ result = nanosleep (&intermediate, remaining_delay);
+ seconds -= limit;
+ if (result)
+ {
+ if (remaining_delay)
+ remaining_delay->tv_sec += seconds;
+ return result;
+ }
+ intermediate.tv_nsec = 0;
+ }
+ intermediate.tv_sec = seconds;
+ return nanosleep (&intermediate, remaining_delay);
+ }
+}
+
+#elif (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
+/* Native Windows platforms. */
+
+# define WIN32_LEAN_AND_MEAN
+# include <windows.h>
+
+/* The Windows API function Sleep() has a resolution of about 15 ms and takes
+ at least 5 ms to execute. We use this function for longer time periods.
+ Additionally, we use busy-looping over short time periods, to get a
+ resolution of about 0.01 ms. In order to measure such short timespans,
+ we use the QueryPerformanceCounter() function. */
+
+int
+nanosleep (const struct timespec *requested_delay,
+ struct timespec *remaining_delay)
+{
+ static bool initialized;
+ /* Number of performance counter increments per nanosecond,
+ or zero if it could not be determined. */
+ static double ticks_per_nanosecond;
+
+ if (requested_delay->tv_nsec < 0 || BILLION <= requested_delay->tv_nsec)
+ {
+ errno = EINVAL;
+ return -1;
+ }
+
+ /* For requested delays of one second or more, 15ms resolution is
+ sufficient. */
+ if (requested_delay->tv_sec == 0)
+ {
+ if (!initialized)
+ {
+ /* Initialize ticks_per_nanosecond. */
+ LARGE_INTEGER ticks_per_second;
+
+ if (QueryPerformanceFrequency (&ticks_per_second))
+ ticks_per_nanosecond =
+ (double) ticks_per_second.QuadPart / 1000000000.0;
+
+ initialized = true;
+ }
+ if (ticks_per_nanosecond)
+ {
+ /* QueryPerformanceFrequency worked. We can use
+ QueryPerformanceCounter. Use a combination of Sleep and
+ busy-looping. */
+ /* Number of milliseconds to pass to the Sleep function.
+ Since Sleep can take up to 8 ms less or 8 ms more than requested
+ (or maybe more if the system is loaded), we subtract 10 ms. */
+ int sleep_millis = (int) requested_delay->tv_nsec / 1000000 - 10;
+ /* Determine how many ticks to delay. */
+ LONGLONG wait_ticks = requested_delay->tv_nsec * ticks_per_nanosecond;
+ /* Start. */
+ LARGE_INTEGER counter_before;
+ if (QueryPerformanceCounter (&counter_before))
+ {
+ /* Wait until the performance counter has reached this value.
+ We don't need to worry about overflow, because the performance
+ counter is reset at reboot, and with a frequency of 3.6E6
+ ticks per second 63 bits suffice for over 80000 years. */
+ LONGLONG wait_until = counter_before.QuadPart + wait_ticks;
+ /* Use Sleep for the longest part. */
+ if (sleep_millis > 0)
+ Sleep (sleep_millis);
+ /* Busy-loop for the rest. */
+ for (;;)
+ {
+ LARGE_INTEGER counter_after;
+ if (!QueryPerformanceCounter (&counter_after))
+ /* QueryPerformanceCounter failed, but succeeded earlier.
+ Should not happen. */
+ break;
+ if (counter_after.QuadPart >= wait_until)
+ /* The requested time has elapsed. */
+ break;
+ }
+ goto done;
+ }
+ }
+ }
+ /* Implementation for long delays and as fallback. */
+ Sleep (requested_delay->tv_sec * 1000 + requested_delay->tv_nsec / 1000000);
+
+ done:
+ /* Sleep is not interruptible. So there is no remaining delay. */
+ if (remaining_delay != NULL)
+ {
+ remaining_delay->tv_sec = 0;
+ remaining_delay->tv_nsec = 0;
+ }
+ return 0;
+}
+
+#else
+/* Unix platforms lacking nanosleep. */
+
+/* Some systems (MSDOS) don't have SIGCONT.
+ Using SIGTERM here turns the signal-handling code below
+ into a no-op on such systems. */
+# ifndef SIGCONT
+# define SIGCONT SIGTERM
+# endif
+
+static sig_atomic_t volatile suspended;
+
+/* Handle SIGCONT. */
+
+static void
+sighandler (int sig)
+{
+ suspended = 1;
+}
+
+/* Suspend execution for at least *TS_DELAY seconds. */
+
+static int
+my_usleep (const struct timespec *ts_delay)
+{
+ struct timeval tv_delay;
+ tv_delay.tv_sec = ts_delay->tv_sec;
+ tv_delay.tv_usec = (ts_delay->tv_nsec + 999) / 1000;
+ if (tv_delay.tv_usec == 1000000)
+ {
+ if (tv_delay.tv_sec == TYPE_MAXIMUM (time_t))
+ tv_delay.tv_usec = 1000000 - 1; /* close enough */
+ else
+ {
+ tv_delay.tv_sec++;
+ tv_delay.tv_usec = 0;
+ }
+ }
+ return select (0, NULL, NULL, NULL, &tv_delay);
+}
+
+/* Suspend execution for at least *REQUESTED_DELAY seconds. The
+ *REMAINING_DELAY part isn't implemented yet. */
+
+int
+nanosleep (const struct timespec *requested_delay,
+ struct timespec *remaining_delay)
+{
+ static bool initialized;
+
+ if (requested_delay->tv_nsec < 0 || BILLION <= requested_delay->tv_nsec)
+ {
+ errno = EINVAL;
+ return -1;
+ }
+
+ /* set up sig handler */
+ if (! initialized)
+ {
+ struct sigaction oldact;
+
+ sigaction (SIGCONT, NULL, &oldact);
+ if (get_handler (&oldact) != SIG_IGN)
+ {
+ struct sigaction newact;
+
+ newact.sa_handler = sighandler;
+ sigemptyset (&newact.sa_mask);
+ newact.sa_flags = 0;
+ sigaction (SIGCONT, &newact, NULL);
+ }
+ initialized = true;
+ }
+
+ suspended = 0;
+
+ if (my_usleep (requested_delay) == -1)
+ {
+ if (suspended)
+ {
+ /* Calculate time remaining. */
+ /* FIXME: the code in sleep doesn't use this, so there's no
+ rush to implement it. */
+
+ errno = EINTR;
+ }
+ return -1;
+ }
+
+ /* FIXME: Restore sig handler? */
+
+ return 0;
+}
+#endif
--- /dev/null
+/* Assist in file system timestamp tests.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Eric Blake <ebb9@byu.net>, 2009. */
+
+#ifndef GLTEST_NAP_H
+# define GLTEST_NAP_H
+
+# include <limits.h>
+# include <stdbool.h>
+
+/* File descriptor used for the witness file. */
+static int nap_fd = -1;
+
+/* Return A - B, in ns.
+ Return 0 if the true result would be negative.
+ Return INT_MAX if the true result would be greater than INT_MAX. */
+static int
+diff_timespec (struct timespec a, struct timespec b)
+{
+ time_t as = a.tv_sec;
+ time_t bs = b.tv_sec;
+ int ans = a.tv_nsec;
+ int bns = b.tv_nsec;
+
+ if (! (bs < as || (bs == as && bns < ans)))
+ return 0;
+ if (as - bs <= INT_MAX / 1000000000)
+ {
+ int sdiff = (as - bs) * 1000000000;
+ int usdiff = ans - bns;
+ if (usdiff < INT_MAX - sdiff)
+ return sdiff + usdiff;
+ }
+ return INT_MAX;
+}
+
+static void
+get_stat (int fd, struct stat *st, int do_write)
+{
+ if (do_write)
+ ASSERT (write (fd, "\n", 1) == 1);
+ ASSERT (fstat (fd, st) == 0);
+}
+
+/* Given a file whose descriptor is FD, see whether delaying by DELAY
+ nanoseconds causes a change in a file's ctime and mtime.
+ OLD_ST is the file's status, recently gotten. */
+static bool
+nap_works (int fd, int delay, struct stat old_st)
+{
+ struct stat st;
+ struct timespec delay_spec;
+ delay_spec.tv_sec = delay / 1000000000;
+ delay_spec.tv_nsec = delay % 1000000000;
+ ASSERT (nanosleep (&delay_spec, 0) == 0);
+ get_stat (fd, &st, 1);
+
+ if ( diff_timespec (get_stat_ctime (&st), get_stat_ctime (&old_st))
+ && diff_timespec (get_stat_mtime (&st), get_stat_mtime (&old_st)))
+ return true;
+
+ return false;
+}
+
+#define TEMPFILE BASE "nap.tmp"
+
+static void
+clear_temp_file (void)
+{
+ if (0 <= nap_fd)
+ {
+ ASSERT (close (nap_fd) != -1);
+ ASSERT (unlink (TEMPFILE) != -1);
+ }
+}
+
+/* Sleep long enough to notice a timestamp difference on the file
+ system in the current directory. Use an adaptive approach, trying
+ to find the smallest delay which works on the current file system
+ to make the timestamp difference appear. Assert a maximum delay of
+ ~2 seconds, more precisely sum(2^n) from 0 to 30 = 2^31 - 1 = 2.1s.
+ Assumes that BASE is defined, and requires that the test module
+ depends on nanosleep. */
+static void
+nap (void)
+{
+ struct stat old_st;
+ static int delay = 1;
+
+ if (-1 == nap_fd)
+ {
+ atexit (clear_temp_file);
+ ASSERT ((nap_fd = creat (TEMPFILE, 0600)) != -1);
+ get_stat (nap_fd, &old_st, 0);
+ }
+ else
+ {
+ ASSERT (0 <= nap_fd);
+ get_stat (nap_fd, &old_st, 1);
+ }
+
+ if (1 < delay)
+ delay = delay / 2; /* Try half of the previous delay. */
+ ASSERT (0 < delay);
+
+ for ( ; delay <= 2147483647; delay = delay * 2)
+ if (nap_works (nap_fd, delay, old_st))
+ return;
+
+ /* Bummer: even the highest nap delay didn't work. */
+ ASSERT (0);
+}
+
+#endif /* GLTEST_NAP_H */
--- /dev/null
+/* Substitute for <netinet/in.h>.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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 <http://www.gnu.org/licenses/>. */
+
+#ifndef _@GUARD_PREFIX@_NETINET_IN_H
+
+#if __GNUC__ >= 3
+@PRAGMA_SYSTEM_HEADER@
+#endif
+@PRAGMA_COLUMNS@
+
+#if @HAVE_NETINET_IN_H@
+
+/* On many platforms, <netinet/in.h> assumes prior inclusion of
+ <sys/types.h>. */
+# include <sys/types.h>
+
+/* The include_next requires a split double-inclusion guard. */
+# @INCLUDE_NEXT@ @NEXT_NETINET_IN_H@
+
+#endif
+
+#ifndef _@GUARD_PREFIX@_NETINET_IN_H
+#define _@GUARD_PREFIX@_NETINET_IN_H
+
+#if !@HAVE_NETINET_IN_H@
+
+/* A platform that lacks <netinet/in.h>. */
+
+# include <sys/socket.h>
+
+#endif
+
+#endif /* _@GUARD_PREFIX@_NETINET_IN_H */
+#endif /* _@GUARD_PREFIX@_NETINET_IN_H */
--- /dev/null
+/* Print a message describing error code.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+ Written by Bruno Haible and Simon Josefsson.
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (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>
+
+/* Specification. */
+#include <stdio.h>
+
+#include <errno.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "strerror-override.h"
+
+/* Use the system functions, not the gnulib overrides in this file. */
+#undef fprintf
+
+void
+perror (const char *string)
+{
+ char stackbuf[STACKBUF_LEN];
+ int ret;
+
+ /* Our implementation guarantees that this will be a non-empty
+ string, even if it returns EINVAL; and stackbuf should be sized
+ large enough to avoid ERANGE. */
+ ret = strerror_r (errno, stackbuf, sizeof stackbuf);
+ if (ret == ERANGE)
+ abort ();
+
+ if (string != NULL && *string != '\0')
+ fprintf (stderr, "%s: %s\n", string, stackbuf);
+ else
+ fprintf (stderr, "%s\n", stackbuf);
+}
--- /dev/null
+/* Create a pipe.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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 <http://www.gnu.org/licenses/>. */
+
+#include <config.h>
+
+/* Specification. */
+#include <unistd.h>
+
+#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
+/* Native Windows API. */
+
+/* Get _pipe(). */
+# include <io.h>
+
+/* Get _O_BINARY. */
+# include <fcntl.h>
+
+int
+pipe (int fd[2])
+{
+ /* Mingw changes fd to {-1,-1} on failure, but this violates
+ http://austingroupbugs.net/view.php?id=467 */
+ int tmp[2];
+ int result = _pipe (tmp, 4096, _O_BINARY);
+ if (!result)
+ {
+ fd[0] = tmp[0];
+ fd[1] = tmp[1];
+ }
+ return result;
+}
+
+#else
+
+# error "This platform lacks a pipe function, and Gnulib doesn't provide a replacement. This is a bug in Gnulib."
+
+#endif
-/* Copyright (C) 1991, 1994, 1997-1998, 2000, 2003-2013 Free Software
+/* Copyright (C) 1991, 1994, 1997-1998, 2000, 2003-2016 Free Software
Foundation, Inc.
NOTE: The canonical source of this file is maintained with the GNU C
/* Determine whether two stat buffers refer to the same file.
- Copyright (C) 2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2006, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Emulation for select(2)
+ Contributed by Paolo Bonzini.
+
+ Copyright 2008-2016 Free Software Foundation, Inc.
+
+ This file is part of gnulib.
+
+ This program is free software; you can redistribute 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 <http://www.gnu.org/licenses/>. */
+
+#include <config.h>
+#include <alloca.h>
+#include <assert.h>
+
+#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
+/* Native Windows. */
+
+#include <sys/types.h>
+#include <errno.h>
+#include <limits.h>
+
+#include <winsock2.h>
+#include <windows.h>
+#include <io.h>
+#include <stdio.h>
+#include <conio.h>
+#include <time.h>
+
+/* Get the overridden 'struct timeval'. */
+#include <sys/time.h>
+
+#include "msvc-nothrow.h"
+
+#undef select
+
+struct bitset {
+ unsigned char in[FD_SETSIZE / CHAR_BIT];
+ unsigned char out[FD_SETSIZE / CHAR_BIT];
+};
+
+/* Declare data structures for ntdll functions. */
+typedef struct _FILE_PIPE_LOCAL_INFORMATION {
+ ULONG NamedPipeType;
+ ULONG NamedPipeConfiguration;
+ ULONG MaximumInstances;
+ ULONG CurrentInstances;
+ ULONG InboundQuota;
+ ULONG ReadDataAvailable;
+ ULONG OutboundQuota;
+ ULONG WriteQuotaAvailable;
+ ULONG NamedPipeState;
+ ULONG NamedPipeEnd;
+} FILE_PIPE_LOCAL_INFORMATION, *PFILE_PIPE_LOCAL_INFORMATION;
+
+typedef struct _IO_STATUS_BLOCK
+{
+ union {
+ DWORD Status;
+ PVOID Pointer;
+ } u;
+ ULONG_PTR Information;
+} IO_STATUS_BLOCK, *PIO_STATUS_BLOCK;
+
+typedef enum _FILE_INFORMATION_CLASS {
+ FilePipeLocalInformation = 24
+} FILE_INFORMATION_CLASS, *PFILE_INFORMATION_CLASS;
+
+typedef DWORD (WINAPI *PNtQueryInformationFile)
+ (HANDLE, IO_STATUS_BLOCK *, VOID *, ULONG, FILE_INFORMATION_CLASS);
+
+#ifndef PIPE_BUF
+#define PIPE_BUF 512
+#endif
+
+static BOOL IsConsoleHandle (HANDLE h)
+{
+ DWORD mode;
+ return GetConsoleMode (h, &mode) != 0;
+}
+
+static BOOL
+IsSocketHandle (HANDLE h)
+{
+ WSANETWORKEVENTS ev;
+
+ if (IsConsoleHandle (h))
+ return FALSE;
+
+ /* Under Wine, it seems that getsockopt returns 0 for pipes too.
+ WSAEnumNetworkEvents instead distinguishes the two correctly. */
+ ev.lNetworkEvents = 0xDEADBEEF;
+ WSAEnumNetworkEvents ((SOCKET) h, NULL, &ev);
+ return ev.lNetworkEvents != 0xDEADBEEF;
+}
+
+/* Compute output fd_sets for libc descriptor FD (whose Windows handle is
+ H). */
+
+static int
+windows_poll_handle (HANDLE h, int fd,
+ struct bitset *rbits,
+ struct bitset *wbits,
+ struct bitset *xbits)
+{
+ BOOL read, write, except;
+ int i, ret;
+ INPUT_RECORD *irbuffer;
+ DWORD avail, nbuffer;
+ BOOL bRet;
+ IO_STATUS_BLOCK iosb;
+ FILE_PIPE_LOCAL_INFORMATION fpli;
+ static PNtQueryInformationFile NtQueryInformationFile;
+ static BOOL once_only;
+
+ read = write = except = FALSE;
+ switch (GetFileType (h))
+ {
+ case FILE_TYPE_DISK:
+ read = TRUE;
+ write = TRUE;
+ break;
+
+ case FILE_TYPE_PIPE:
+ if (!once_only)
+ {
+ NtQueryInformationFile = (PNtQueryInformationFile)
+ GetProcAddress (GetModuleHandle ("ntdll.dll"),
+ "NtQueryInformationFile");
+ once_only = TRUE;
+ }
+
+ if (PeekNamedPipe (h, NULL, 0, NULL, &avail, NULL) != 0)
+ {
+ if (avail)
+ read = TRUE;
+ }
+ else if (GetLastError () == ERROR_BROKEN_PIPE)
+ ;
+
+ else
+ {
+ /* It was the write-end of the pipe. Check if it is writable.
+ If NtQueryInformationFile fails, optimistically assume the pipe is
+ writable. This could happen on Windows 9x, where
+ NtQueryInformationFile is not available, or if we inherit a pipe
+ that doesn't permit FILE_READ_ATTRIBUTES access on the write end
+ (I think this should not happen since Windows XP SP2; WINE seems
+ fine too). Otherwise, ensure that enough space is available for
+ atomic writes. */
+ memset (&iosb, 0, sizeof (iosb));
+ memset (&fpli, 0, sizeof (fpli));
+
+ if (!NtQueryInformationFile
+ || NtQueryInformationFile (h, &iosb, &fpli, sizeof (fpli),
+ FilePipeLocalInformation)
+ || fpli.WriteQuotaAvailable >= PIPE_BUF
+ || (fpli.OutboundQuota < PIPE_BUF &&
+ fpli.WriteQuotaAvailable == fpli.OutboundQuota))
+ write = TRUE;
+ }
+ break;
+
+ case FILE_TYPE_CHAR:
+ write = TRUE;
+ if (!(rbits->in[fd / CHAR_BIT] & (1 << (fd & (CHAR_BIT - 1)))))
+ break;
+
+ ret = WaitForSingleObject (h, 0);
+ if (ret == WAIT_OBJECT_0)
+ {
+ if (!IsConsoleHandle (h))
+ {
+ read = TRUE;
+ break;
+ }
+
+ nbuffer = avail = 0;
+ bRet = GetNumberOfConsoleInputEvents (h, &nbuffer);
+
+ /* Screen buffers handles are filtered earlier. */
+ assert (bRet);
+ if (nbuffer == 0)
+ {
+ except = TRUE;
+ break;
+ }
+
+ irbuffer = (INPUT_RECORD *) alloca (nbuffer * sizeof (INPUT_RECORD));
+ bRet = PeekConsoleInput (h, irbuffer, nbuffer, &avail);
+ if (!bRet || avail == 0)
+ {
+ except = TRUE;
+ break;
+ }
+
+ for (i = 0; i < avail; i++)
+ if (irbuffer[i].EventType == KEY_EVENT)
+ read = TRUE;
+ }
+ break;
+
+ default:
+ ret = WaitForSingleObject (h, 0);
+ write = TRUE;
+ if (ret == WAIT_OBJECT_0)
+ read = TRUE;
+
+ break;
+ }
+
+ ret = 0;
+ if (read && (rbits->in[fd / CHAR_BIT] & (1 << (fd & (CHAR_BIT - 1)))))
+ {
+ rbits->out[fd / CHAR_BIT] |= (1 << (fd & (CHAR_BIT - 1)));
+ ret++;
+ }
+
+ if (write && (wbits->in[fd / CHAR_BIT] & (1 << (fd & (CHAR_BIT - 1)))))
+ {
+ wbits->out[fd / CHAR_BIT] |= (1 << (fd & (CHAR_BIT - 1)));
+ ret++;
+ }
+
+ if (except && (xbits->in[fd / CHAR_BIT] & (1 << (fd & (CHAR_BIT - 1)))))
+ {
+ xbits->out[fd / CHAR_BIT] |= (1 << (fd & (CHAR_BIT - 1)));
+ ret++;
+ }
+
+ return ret;
+}
+
+int
+rpl_select (int nfds, fd_set *rfds, fd_set *wfds, fd_set *xfds,
+ struct timeval *timeout)
+#undef timeval
+{
+ static struct timeval tv0;
+ static HANDLE hEvent;
+ HANDLE h, handle_array[FD_SETSIZE + 2];
+ fd_set handle_rfds, handle_wfds, handle_xfds;
+ struct bitset rbits, wbits, xbits;
+ unsigned char anyfds_in[FD_SETSIZE / CHAR_BIT];
+ DWORD ret, wait_timeout, nhandles, nsock, nbuffer;
+ MSG msg;
+ int i, fd, rc;
+ clock_t tend;
+
+ if (nfds > FD_SETSIZE)
+ nfds = FD_SETSIZE;
+
+ if (!timeout)
+ wait_timeout = INFINITE;
+ else
+ {
+ wait_timeout = timeout->tv_sec * 1000 + timeout->tv_usec / 1000;
+
+ /* select is also used as a portable usleep. */
+ if (!rfds && !wfds && !xfds)
+ {
+ Sleep (wait_timeout);
+ return 0;
+ }
+ }
+
+ if (!hEvent)
+ hEvent = CreateEvent (NULL, FALSE, FALSE, NULL);
+
+ handle_array[0] = hEvent;
+ nhandles = 1;
+ nsock = 0;
+
+ /* Copy descriptors to bitsets. At the same time, eliminate
+ bits in the "wrong" direction for console input buffers
+ and screen buffers, because screen buffers are waitable
+ and they will block until a character is available. */
+ memset (&rbits, 0, sizeof (rbits));
+ memset (&wbits, 0, sizeof (wbits));
+ memset (&xbits, 0, sizeof (xbits));
+ memset (anyfds_in, 0, sizeof (anyfds_in));
+ if (rfds)
+ for (i = 0; i < rfds->fd_count; i++)
+ {
+ fd = rfds->fd_array[i];
+ h = (HANDLE) _get_osfhandle (fd);
+ if (IsConsoleHandle (h)
+ && !GetNumberOfConsoleInputEvents (h, &nbuffer))
+ continue;
+
+ rbits.in[fd / CHAR_BIT] |= 1 << (fd & (CHAR_BIT - 1));
+ anyfds_in[fd / CHAR_BIT] |= 1 << (fd & (CHAR_BIT - 1));
+ }
+ else
+ rfds = (fd_set *) alloca (sizeof (fd_set));
+
+ if (wfds)
+ for (i = 0; i < wfds->fd_count; i++)
+ {
+ fd = wfds->fd_array[i];
+ h = (HANDLE) _get_osfhandle (fd);
+ if (IsConsoleHandle (h)
+ && GetNumberOfConsoleInputEvents (h, &nbuffer))
+ continue;
+
+ wbits.in[fd / CHAR_BIT] |= 1 << (fd & (CHAR_BIT - 1));
+ anyfds_in[fd / CHAR_BIT] |= 1 << (fd & (CHAR_BIT - 1));
+ }
+ else
+ wfds = (fd_set *) alloca (sizeof (fd_set));
+
+ if (xfds)
+ for (i = 0; i < xfds->fd_count; i++)
+ {
+ fd = xfds->fd_array[i];
+ xbits.in[fd / CHAR_BIT] |= 1 << (fd & (CHAR_BIT - 1));
+ anyfds_in[fd / CHAR_BIT] |= 1 << (fd & (CHAR_BIT - 1));
+ }
+ else
+ xfds = (fd_set *) alloca (sizeof (fd_set));
+
+ /* Zero all the fd_sets, including the application's. */
+ FD_ZERO (rfds);
+ FD_ZERO (wfds);
+ FD_ZERO (xfds);
+ FD_ZERO (&handle_rfds);
+ FD_ZERO (&handle_wfds);
+ FD_ZERO (&handle_xfds);
+
+ /* Classify handles. Create fd sets for sockets, poll the others. */
+ for (i = 0; i < nfds; i++)
+ {
+ if ((anyfds_in[i / CHAR_BIT] & (1 << (i & (CHAR_BIT - 1)))) == 0)
+ continue;
+
+ h = (HANDLE) _get_osfhandle (i);
+ if (!h)
+ {
+ errno = EBADF;
+ return -1;
+ }
+
+ if (IsSocketHandle (h))
+ {
+ int requested = FD_CLOSE;
+
+ /* See above; socket handles are mapped onto select, but we
+ need to map descriptors to handles. */
+ if (rbits.in[i / CHAR_BIT] & (1 << (i & (CHAR_BIT - 1))))
+ {
+ requested |= FD_READ | FD_ACCEPT;
+ FD_SET ((SOCKET) h, rfds);
+ FD_SET ((SOCKET) h, &handle_rfds);
+ }
+ if (wbits.in[i / CHAR_BIT] & (1 << (i & (CHAR_BIT - 1))))
+ {
+ requested |= FD_WRITE | FD_CONNECT;
+ FD_SET ((SOCKET) h, wfds);
+ FD_SET ((SOCKET) h, &handle_wfds);
+ }
+ if (xbits.in[i / CHAR_BIT] & (1 << (i & (CHAR_BIT - 1))))
+ {
+ requested |= FD_OOB;
+ FD_SET ((SOCKET) h, xfds);
+ FD_SET ((SOCKET) h, &handle_xfds);
+ }
+
+ WSAEventSelect ((SOCKET) h, hEvent, requested);
+ nsock++;
+ }
+ else
+ {
+ handle_array[nhandles++] = h;
+
+ /* Poll now. If we get an event, do not wait below. */
+ if (wait_timeout != 0
+ && windows_poll_handle (h, i, &rbits, &wbits, &xbits))
+ wait_timeout = 0;
+ }
+ }
+
+ /* Place a sentinel at the end of the array. */
+ handle_array[nhandles] = NULL;
+
+ /* When will the waiting period expire? */
+ if (wait_timeout != INFINITE)
+ tend = clock () + wait_timeout;
+
+restart:
+ if (wait_timeout == 0 || nsock == 0)
+ rc = 0;
+ else
+ {
+ /* See if we need to wait in the loop below. If any select is ready,
+ do MsgWaitForMultipleObjects anyway to dispatch messages, but
+ no need to call select again. */
+ rc = select (0, &handle_rfds, &handle_wfds, &handle_xfds, &tv0);
+ if (rc == 0)
+ {
+ /* Restore the fd_sets for the other select we do below. */
+ memcpy (&handle_rfds, rfds, sizeof (fd_set));
+ memcpy (&handle_wfds, wfds, sizeof (fd_set));
+ memcpy (&handle_xfds, xfds, sizeof (fd_set));
+ }
+ else
+ wait_timeout = 0;
+ }
+
+ /* How much is left to wait? */
+ if (wait_timeout != INFINITE)
+ {
+ clock_t tnow = clock ();
+ if (tend >= tnow)
+ wait_timeout = tend - tnow;
+ else
+ wait_timeout = 0;
+ }
+
+ for (;;)
+ {
+ ret = MsgWaitForMultipleObjects (nhandles, handle_array, FALSE,
+ wait_timeout, QS_ALLINPUT);
+
+ if (ret == WAIT_OBJECT_0 + nhandles)
+ {
+ /* new input of some other kind */
+ BOOL bRet;
+ while ((bRet = PeekMessage (&msg, NULL, 0, 0, PM_REMOVE)) != 0)
+ {
+ TranslateMessage (&msg);
+ DispatchMessage (&msg);
+ }
+ }
+ else
+ break;
+ }
+
+ /* If we haven't done it yet, check the status of the sockets. */
+ if (rc == 0 && nsock > 0)
+ rc = select (0, &handle_rfds, &handle_wfds, &handle_xfds, &tv0);
+
+ if (nhandles > 1)
+ {
+ /* Count results that are not counted in the return value of select. */
+ nhandles = 1;
+ for (i = 0; i < nfds; i++)
+ {
+ if ((anyfds_in[i / CHAR_BIT] & (1 << (i & (CHAR_BIT - 1)))) == 0)
+ continue;
+
+ h = (HANDLE) _get_osfhandle (i);
+ if (h == handle_array[nhandles])
+ {
+ /* Not a socket. */
+ nhandles++;
+ windows_poll_handle (h, i, &rbits, &wbits, &xbits);
+ if (rbits.out[i / CHAR_BIT] & (1 << (i & (CHAR_BIT - 1)))
+ || wbits.out[i / CHAR_BIT] & (1 << (i & (CHAR_BIT - 1)))
+ || xbits.out[i / CHAR_BIT] & (1 << (i & (CHAR_BIT - 1))))
+ rc++;
+ }
+ }
+
+ if (rc == 0
+ && (wait_timeout == INFINITE
+ /* If NHANDLES > 1, but no bits are set, it means we've
+ been told incorrectly that some handle was signaled.
+ This happens with anonymous pipes, which always cause
+ MsgWaitForMultipleObjects to exit immediately, but no
+ data is found ready to be read by windows_poll_handle.
+ To avoid a total failure (whereby we return zero and
+ don't wait at all), let's poll in a more busy loop. */
+ || (wait_timeout != 0 && nhandles > 1)))
+ {
+ /* Sleep 1 millisecond to avoid busy wait and retry with the
+ original fd_sets. */
+ memcpy (&handle_rfds, rfds, sizeof (fd_set));
+ memcpy (&handle_wfds, wfds, sizeof (fd_set));
+ memcpy (&handle_xfds, xfds, sizeof (fd_set));
+ SleepEx (1, TRUE);
+ goto restart;
+ }
+ if (timeout && wait_timeout == 0 && rc == 0)
+ timeout->tv_sec = timeout->tv_usec = 0;
+ }
+
+ /* Now fill in the results. */
+ FD_ZERO (rfds);
+ FD_ZERO (wfds);
+ FD_ZERO (xfds);
+ nhandles = 1;
+ for (i = 0; i < nfds; i++)
+ {
+ if ((anyfds_in[i / CHAR_BIT] & (1 << (i & (CHAR_BIT - 1)))) == 0)
+ continue;
+
+ h = (HANDLE) _get_osfhandle (i);
+ if (h != handle_array[nhandles])
+ {
+ /* Perform handle->descriptor mapping. */
+ WSAEventSelect ((SOCKET) h, NULL, 0);
+ if (FD_ISSET (h, &handle_rfds))
+ FD_SET (i, rfds);
+ if (FD_ISSET (h, &handle_wfds))
+ FD_SET (i, wfds);
+ if (FD_ISSET (h, &handle_xfds))
+ FD_SET (i, xfds);
+ }
+ else
+ {
+ /* Not a socket. */
+ nhandles++;
+ if (rbits.out[i / CHAR_BIT] & (1 << (i & (CHAR_BIT - 1))))
+ FD_SET (i, rfds);
+ if (wbits.out[i / CHAR_BIT] & (1 << (i & (CHAR_BIT - 1))))
+ FD_SET (i, wfds);
+ if (xbits.out[i / CHAR_BIT] & (1 << (i & (CHAR_BIT - 1))))
+ FD_SET (i, xfds);
+ }
+ }
+
+ return rc;
+}
+
+#else /* ! Native Windows. */
+
+#include <sys/select.h>
+#include <stddef.h> /* NULL */
+#include <errno.h>
+#include <unistd.h>
+
+#undef select
+
+int
+rpl_select (int nfds, fd_set *rfds, fd_set *wfds, fd_set *xfds,
+ struct timeval *timeout)
+{
+ int i;
+
+ /* FreeBSD 8.2 has a bug: it does not always detect invalid fds. */
+ if (nfds < 0 || nfds > FD_SETSIZE)
+ {
+ errno = EINVAL;
+ return -1;
+ }
+ for (i = 0; i < nfds; i++)
+ {
+ if (((rfds && FD_ISSET (i, rfds))
+ || (wfds && FD_ISSET (i, wfds))
+ || (xfds && FD_ISSET (i, xfds)))
+ && dup2 (i, i) != i)
+ return -1;
+ }
+
+ /* Interix 3.5 has a bug: it does not support nfds == 0. */
+ if (nfds == 0)
+ {
+ nfds = 1;
+ rfds = NULL;
+ wfds = NULL;
+ xfds = NULL;
+ }
+ return select (nfds, rfds, wfds, xfds, timeout);
+}
+
+#endif
-/* Set the current locale.
- Copyright (C) 2009, 2011-2013 Free Software Foundation, Inc.
+/* Set the current locale. -*- coding: utf-8 -*-
+ Copyright (C) 2009, 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
{ "sq", "Albanian" },
{ "sr", "Serbian (Latin)" },
{ "sr@cyrillic", "SRB" }, /* Serbian (Cyrillic) */
+ { "sv", "Swedish" },
{ "sw", "Swahili" },
{ "syr", "Syriac" },
{ "ta", "Tamil" },
--- /dev/null
+/* setsockopt.c --- wrappers for Windows setsockopt function
+
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Paolo Bonzini */
+
+#include <config.h>
+
+#define WIN32_LEAN_AND_MEAN
+/* Get winsock2.h. */
+#include <sys/socket.h>
+
+/* Get struct timeval. */
+#include <sys/time.h>
+
+/* Get set_winsock_errno, FD_TO_SOCKET etc. */
+#include "w32sock.h"
+
+#undef setsockopt
+
+int
+rpl_setsockopt (int fd, int level, int optname, const void *optval, socklen_t optlen)
+{
+ SOCKET sock = FD_TO_SOCKET (fd);
+ int r;
+
+ if (sock == INVALID_SOCKET)
+ {
+ errno = EBADF;
+ return -1;
+ }
+ else
+ {
+ if (level == SOL_SOCKET
+ && (optname == SO_RCVTIMEO || optname == SO_SNDTIMEO))
+ {
+ const struct timeval *tv = optval;
+ int milliseconds = tv->tv_sec * 1000 + tv->tv_usec / 1000;
+ optval = &milliseconds;
+ r = setsockopt (sock, level, optname, optval, sizeof (int));
+ }
+ else
+ {
+ r = setsockopt (sock, level, optname, optval, optlen);
+ }
+
+ if (r < 0)
+ set_winsock_errno ();
+
+ return r;
+ }
+}
/* Macro for checking that a function declaration is compliant.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Pausing execution of the current thread.
- Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2007.
This program is free software: you can redistribute it and/or modify
/* Formatted output to strings.
- Copyright (C) 2004, 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 2004, 2006-2016 Free Software Foundation, Inc.
Written by Simon Josefsson and Paul Eggert.
This program is free software; you can redistribute it and/or modify
--- /dev/null
+/* socket.c --- wrappers for Windows socket function
+
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Paolo Bonzini */
+
+#include <config.h>
+
+#define WIN32_LEAN_AND_MEAN
+/* Get winsock2.h. */
+#include <sys/socket.h>
+
+/* Get set_winsock_errno, FD_TO_SOCKET etc. */
+#include "w32sock.h"
+
+#include "sockets.h"
+
+int
+rpl_socket (int domain, int type, int protocol)
+{
+ SOCKET fh;
+
+ gl_sockets_startup (SOCKETS_1_1);
+
+ /* We have to use WSASocket() to create non-overlapped IO sockets.
+ Overlapped IO sockets cannot be used with read/write. */
+ fh = WSASocket (domain, type, protocol, NULL, 0, 0);
+
+ if (fh == INVALID_SOCKET)
+ {
+ set_winsock_errno ();
+ return -1;
+ }
+ else
+ return SOCKET_TO_FD (fh);
+}
--- /dev/null
+/* sockets.c --- wrappers for Windows socket functions
+
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Simon Josefsson */
+
+#include <config.h>
+
+/* Specification. */
+#include "sockets.h"
+
+#if WINDOWS_SOCKETS
+
+/* This includes winsock2.h on MinGW. */
+# include <sys/socket.h>
+
+# include "fd-hook.h"
+# include "msvc-nothrow.h"
+
+/* Get set_winsock_errno, FD_TO_SOCKET etc. */
+# include "w32sock.h"
+
+static int
+close_fd_maybe_socket (const struct fd_hook *remaining_list,
+ gl_close_fn primary,
+ int fd)
+{
+ /* Note about multithread-safety: There is a race condition where, between
+ our calls to closesocket() and the primary close(), some other thread
+ could make system calls that allocate precisely the same HANDLE value
+ as sock; then the primary close() would call CloseHandle() on it. */
+ SOCKET sock;
+ WSANETWORKEVENTS ev;
+
+ /* Test whether fd refers to a socket. */
+ sock = FD_TO_SOCKET (fd);
+ ev.lNetworkEvents = 0xDEADBEEF;
+ WSAEnumNetworkEvents (sock, NULL, &ev);
+ if (ev.lNetworkEvents != 0xDEADBEEF)
+ {
+ /* fd refers to a socket. */
+ /* FIXME: other applications, like squid, use an undocumented
+ _free_osfhnd free function. But this is not enough: The 'osfile'
+ flags for fd also needs to be cleared, but it is hard to access it.
+ Instead, here we just close twice the file descriptor. */
+ if (closesocket (sock))
+ {
+ set_winsock_errno ();
+ return -1;
+ }
+ else
+ {
+ /* This call frees the file descriptor and does a
+ CloseHandle ((HANDLE) _get_osfhandle (fd)), which fails. */
+ _close (fd);
+ return 0;
+ }
+ }
+ else
+ /* Some other type of file descriptor. */
+ return execute_close_hooks (remaining_list, primary, fd);
+}
+
+static int
+ioctl_fd_maybe_socket (const struct fd_hook *remaining_list,
+ gl_ioctl_fn primary,
+ int fd, int request, void *arg)
+{
+ SOCKET sock;
+ WSANETWORKEVENTS ev;
+
+ /* Test whether fd refers to a socket. */
+ sock = FD_TO_SOCKET (fd);
+ ev.lNetworkEvents = 0xDEADBEEF;
+ WSAEnumNetworkEvents (sock, NULL, &ev);
+ if (ev.lNetworkEvents != 0xDEADBEEF)
+ {
+ /* fd refers to a socket. */
+ if (ioctlsocket (sock, request, arg) < 0)
+ {
+ set_winsock_errno ();
+ return -1;
+ }
+ else
+ return 0;
+ }
+ else
+ /* Some other type of file descriptor. */
+ return execute_ioctl_hooks (remaining_list, primary, fd, request, arg);
+}
+
+static struct fd_hook fd_sockets_hook;
+
+static int initialized_sockets_version /* = 0 */;
+
+#endif /* WINDOWS_SOCKETS */
+
+int
+gl_sockets_startup (int version _GL_UNUSED)
+{
+#if WINDOWS_SOCKETS
+ if (version > initialized_sockets_version)
+ {
+ WSADATA data;
+ int err;
+
+ err = WSAStartup (version, &data);
+ if (err != 0)
+ return 1;
+
+ if (data.wVersion != version)
+ {
+ WSACleanup ();
+ return 2;
+ }
+
+ if (initialized_sockets_version == 0)
+ register_fd_hook (close_fd_maybe_socket, ioctl_fd_maybe_socket,
+ &fd_sockets_hook);
+
+ initialized_sockets_version = version;
+ }
+#endif
+
+ return 0;
+}
+
+int
+gl_sockets_cleanup (void)
+{
+#if WINDOWS_SOCKETS
+ int err;
+
+ initialized_sockets_version = 0;
+
+ unregister_fd_hook (&fd_sockets_hook);
+
+ err = WSACleanup ();
+ if (err != 0)
+ return 1;
+#endif
+
+ return 0;
+}
--- /dev/null
+/* sockets.h - wrappers for Windows socket functions
+
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Simon Josefsson */
+
+#ifndef SOCKETS_H
+# define SOCKETS_H 1
+
+#define SOCKETS_1_0 0x0001
+#define SOCKETS_1_1 0x0101
+#define SOCKETS_2_0 0x0002
+#define SOCKETS_2_1 0x0102
+#define SOCKETS_2_2 0x0202
+
+int gl_sockets_startup (int version)
+#if !WINDOWS_SOCKETS
+ _GL_ATTRIBUTE_CONST
+#endif
+ ;
+
+int gl_sockets_cleanup (void)
+#if !WINDOWS_SOCKETS
+ _GL_ATTRIBUTE_CONST
+#endif
+ ;
+
+/* This function is useful it you create a socket using gnulib's
+ Winsock wrappers but needs to pass on the socket handle to some
+ other library that only accepts sockets. */
+#if WINDOWS_SOCKETS
+
+#include <sys/socket.h>
+
+#include "msvc-nothrow.h"
+
+static inline SOCKET
+gl_fd_to_handle (int fd)
+{
+ return _get_osfhandle (fd);
+}
+
+#else
+
+#define gl_fd_to_handle(x) (x)
+
+#endif /* WINDOWS_SOCKETS */
+
+#endif /* SOCKETS_H */
--- /dev/null
+/* A substitute for ISO C11 <stdalign.h>.
+
+ Copyright 2011-2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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 <http://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 __alignof__ operator, which can yield a
+ better-performing alignment for an object of that type. For
+ example, on x86 with GCC, __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
+ <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52023>. */
+#if (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 \
+ || (defined __GNUC__ && __GNUC__ < 4 + (__GNUC_MINOR__ < 9)))
+# 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__) \
+ || 061200 <= __HP_cc || 061200 <= __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 */
--- /dev/null
+/* strerror_r.c --- POSIX compatible system error routine
+
+ Copyright (C) 2010-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2010. */
+
+#include <config.h>
+
+/* Enable declaration of sys_nerr and sys_errlist in <errno.h> on NetBSD. */
+#define _NETBSD_SOURCE 1
+
+/* Specification. */
+#include <string.h>
+
+#include <errno.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+#include "strerror-override.h"
+
+#if (__GLIBC__ >= 2 || defined __UCLIBC__ || defined __CYGWIN__) && HAVE___XPG_STRERROR_R /* glibc >= 2.3.4, cygwin >= 1.7.9 */
+
+# define USE_XPG_STRERROR_R 1
+extern
+#ifdef __cplusplus
+"C"
+#endif
+int __xpg_strerror_r (int errnum, char *buf, size_t buflen);
+
+#elif HAVE_DECL_STRERROR_R && !(__GLIBC__ >= 2 || defined __UCLIBC__ || defined __CYGWIN__)
+
+/* The system's strerror_r function is OK, except that its third argument
+ is 'int', not 'size_t', or its return type is wrong. */
+
+# include <limits.h>
+
+# define USE_SYSTEM_STRERROR_R 1
+
+#else /* (__GLIBC__ >= 2 || defined __UCLIBC__ || defined __CYGWIN__ ? !HAVE___XPG_STRERROR_R : !HAVE_DECL_STRERROR_R) */
+
+/* Use the system's strerror(). Exclude glibc and cygwin because the
+ system strerror_r has the wrong return type, and cygwin 1.7.9
+ strerror_r clobbers strerror. */
+# undef strerror
+
+# define USE_SYSTEM_STRERROR 1
+
+# if defined __NetBSD__ || defined __hpux || ((defined _WIN32 || defined __WIN32__) && !defined __CYGWIN__) || defined __sgi || (defined __sun && !defined _LP64) || defined __CYGWIN__
+
+/* No locking needed. */
+
+/* Get catgets internationalization functions. */
+# if HAVE_CATGETS
+# include <nl_types.h>
+# endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Get sys_nerr, sys_errlist on HP-UX (otherwise only declared in C++ mode).
+ Get sys_nerr, sys_errlist on IRIX (otherwise only declared with _SGIAPI). */
+# if defined __hpux || defined __sgi
+extern int sys_nerr;
+extern char *sys_errlist[];
+# endif
+
+/* Get sys_nerr on Solaris. */
+# if defined __sun && !defined _LP64
+extern int sys_nerr;
+# endif
+
+#ifdef __cplusplus
+}
+#endif
+
+# else
+
+# include "glthread/lock.h"
+
+/* This lock protects the buffer returned by strerror(). We assume that
+ no other uses of strerror() exist in the program. */
+gl_lock_define_initialized(static, strerror_lock)
+
+# endif
+
+#endif
+
+/* On MSVC, there is no snprintf() function, just a _snprintf().
+ It is of lower quality, but sufficient for the simple use here.
+ We only have to make sure to NUL terminate the result (_snprintf
+ does not NUL terminate, like strncpy). */
+#if !HAVE_SNPRINTF
+static int
+local_snprintf (char *buf, size_t buflen, const char *format, ...)
+{
+ va_list args;
+ int result;
+
+ va_start (args, format);
+ result = _vsnprintf (buf, buflen, format, args);
+ va_end (args);
+ if (buflen > 0 && (result < 0 || result >= buflen))
+ buf[buflen - 1] = '\0';
+ return result;
+}
+# define snprintf local_snprintf
+#endif
+
+/* Copy as much of MSG into BUF as possible, without corrupting errno.
+ Return 0 if MSG fit in BUFLEN, otherwise return ERANGE. */
+static int
+safe_copy (char *buf, size_t buflen, const char *msg)
+{
+ size_t len = strlen (msg);
+ int ret;
+
+ if (len < buflen)
+ {
+ /* Although POSIX allows memcpy() to corrupt errno, we don't
+ know of any implementation where this is a real problem. */
+ memcpy (buf, msg, len + 1);
+ ret = 0;
+ }
+ else
+ {
+ memcpy (buf, msg, buflen - 1);
+ buf[buflen - 1] = '\0';
+ ret = ERANGE;
+ }
+ return ret;
+}
+
+
+int
+strerror_r (int errnum, char *buf, size_t buflen)
+#undef strerror_r
+{
+ /* Filter this out now, so that rest of this replacement knows that
+ there is room for a non-empty message and trailing NUL. */
+ if (buflen <= 1)
+ {
+ if (buflen)
+ *buf = '\0';
+ return ERANGE;
+ }
+ *buf = '\0';
+
+ /* Check for gnulib overrides. */
+ {
+ char const *msg = strerror_override (errnum);
+
+ if (msg)
+ return safe_copy (buf, buflen, msg);
+ }
+
+ {
+ int ret;
+ int saved_errno = errno;
+
+#if USE_XPG_STRERROR_R
+
+ {
+ ret = __xpg_strerror_r (errnum, buf, buflen);
+ if (ret < 0)
+ ret = errno;
+ if (!*buf)
+ {
+ /* glibc 2.13 would not touch buf on err, so we have to fall
+ back to GNU strerror_r which always returns a thread-safe
+ untruncated string to (partially) copy into our buf. */
+ safe_copy (buf, buflen, strerror_r (errnum, buf, buflen));
+ }
+ }
+
+#elif USE_SYSTEM_STRERROR_R
+
+ if (buflen > INT_MAX)
+ buflen = INT_MAX;
+
+# ifdef __hpux
+ /* On HP-UX 11.31, strerror_r always fails when buflen < 80; it
+ also fails to change buf on EINVAL. */
+ {
+ char stackbuf[80];
+
+ if (buflen < sizeof stackbuf)
+ {
+ ret = strerror_r (errnum, stackbuf, sizeof stackbuf);
+ if (ret == 0)
+ ret = safe_copy (buf, buflen, stackbuf);
+ }
+ else
+ ret = strerror_r (errnum, buf, buflen);
+ }
+# else
+ ret = strerror_r (errnum, buf, buflen);
+
+ /* Some old implementations may return (-1, EINVAL) instead of EINVAL. */
+ if (ret < 0)
+ ret = errno;
+# endif
+
+# ifdef _AIX
+ /* AIX returns 0 rather than ERANGE when truncating strings; try
+ again until we are sure we got the entire string. */
+ if (!ret && strlen (buf) == buflen - 1)
+ {
+ char stackbuf[STACKBUF_LEN];
+ size_t len;
+ strerror_r (errnum, stackbuf, sizeof stackbuf);
+ len = strlen (stackbuf);
+ /* STACKBUF_LEN should have been large enough. */
+ if (len + 1 == sizeof stackbuf)
+ abort ();
+ if (buflen <= len)
+ ret = ERANGE;
+ }
+# else
+ /* Solaris 10 does not populate buf on ERANGE. OpenBSD 4.7
+ truncates early on ERANGE rather than return a partial integer.
+ We prefer the maximal string. We set buf[0] earlier, and we
+ know of no implementation that modifies buf to be an
+ unterminated string, so this strlen should be portable in
+ practice (rather than pulling in a safer strnlen). */
+ if (ret == ERANGE && strlen (buf) < buflen - 1)
+ {
+ char stackbuf[STACKBUF_LEN];
+
+ /* STACKBUF_LEN should have been large enough. */
+ if (strerror_r (errnum, stackbuf, sizeof stackbuf) == ERANGE)
+ abort ();
+ safe_copy (buf, buflen, stackbuf);
+ }
+# endif
+
+#else /* USE_SYSTEM_STRERROR */
+
+ /* Try to do what strerror (errnum) does, but without clobbering the
+ buffer used by strerror(). */
+
+# if defined __NetBSD__ || defined __hpux || ((defined _WIN32 || defined __WIN32__) && !defined __CYGWIN__) || defined __CYGWIN__ /* NetBSD, HP-UX, native Windows, Cygwin */
+
+ /* NetBSD: sys_nerr, sys_errlist are declared through _NETBSD_SOURCE
+ and <errno.h> above.
+ HP-UX: sys_nerr, sys_errlist are declared explicitly above.
+ native Windows: sys_nerr, sys_errlist are declared in <stdlib.h>.
+ Cygwin: sys_nerr, sys_errlist are declared in <errno.h>. */
+ if (errnum >= 0 && errnum < sys_nerr)
+ {
+# if HAVE_CATGETS && (defined __NetBSD__ || defined __hpux)
+# if defined __NetBSD__
+ nl_catd catd = catopen ("libc", NL_CAT_LOCALE);
+ const char *errmsg =
+ (catd != (nl_catd)-1
+ ? catgets (catd, 1, errnum, sys_errlist[errnum])
+ : sys_errlist[errnum]);
+# endif
+# if defined __hpux
+ nl_catd catd = catopen ("perror", NL_CAT_LOCALE);
+ const char *errmsg =
+ (catd != (nl_catd)-1
+ ? catgets (catd, 1, 1 + errnum, sys_errlist[errnum])
+ : sys_errlist[errnum]);
+# endif
+# else
+ const char *errmsg = sys_errlist[errnum];
+# endif
+ if (errmsg == NULL || *errmsg == '\0')
+ ret = EINVAL;
+ else
+ ret = safe_copy (buf, buflen, errmsg);
+# if HAVE_CATGETS && (defined __NetBSD__ || defined __hpux)
+ if (catd != (nl_catd)-1)
+ catclose (catd);
+# endif
+ }
+ else
+ ret = EINVAL;
+
+# elif defined __sgi || (defined __sun && !defined _LP64) /* IRIX, Solaris <= 9 32-bit */
+
+ /* For a valid error number, the system's strerror() function returns
+ a pointer to a not copied string, not to a buffer. */
+ if (errnum >= 0 && errnum < sys_nerr)
+ {
+ char *errmsg = strerror (errnum);
+
+ if (errmsg == NULL || *errmsg == '\0')
+ ret = EINVAL;
+ else
+ ret = safe_copy (buf, buflen, errmsg);
+ }
+ else
+ ret = EINVAL;
+
+# else
+
+ gl_lock_lock (strerror_lock);
+
+ {
+ char *errmsg = strerror (errnum);
+
+ /* For invalid error numbers, strerror() on
+ - IRIX 6.5 returns NULL,
+ - HP-UX 11 returns an empty string. */
+ if (errmsg == NULL || *errmsg == '\0')
+ ret = EINVAL;
+ else
+ ret = safe_copy (buf, buflen, errmsg);
+ }
+
+ gl_lock_unlock (strerror_lock);
+
+# endif
+
+#endif
+
+ if (ret == EINVAL && !*buf)
+ snprintf (buf, buflen, "Unknown error %d", errnum);
+
+ errno = saved_errno;
+ return ret;
+ }
+}
/* Stub for symlink().
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Substitute for and wrapper around <sys/ioctl.h>.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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 <http://www.gnu.org/licenses/>. */
+
+#ifndef _@GUARD_PREFIX@_SYS_IOCTL_H
+
+#if __GNUC__ >= 3
+@PRAGMA_SYSTEM_HEADER@
+#endif
+@PRAGMA_COLUMNS@
+
+/* The include_next requires a split double-inclusion guard. */
+#if @HAVE_SYS_IOCTL_H@
+# @INCLUDE_NEXT@ @NEXT_SYS_IOCTL_H@
+#endif
+
+#ifndef _@GUARD_PREFIX@_SYS_IOCTL_H
+#define _@GUARD_PREFIX@_SYS_IOCTL_H
+
+/* AIX 5.1 and Solaris 10 declare ioctl() in <unistd.h> and in <stropts.h>,
+ but not in <sys/ioctl.h>.
+ But avoid namespace pollution on glibc systems. */
+#ifndef __GLIBC__
+# include <unistd.h>
+#endif
+
+/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */
+
+/* The definition of _GL_WARN_ON_USE is copied here. */
+
+
+/* Declare overridden functions. */
+
+#if @GNULIB_IOCTL@
+# if @REPLACE_IOCTL@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef ioctl
+# define ioctl rpl_ioctl
+# endif
+_GL_FUNCDECL_RPL (ioctl, int,
+ (int fd, int request, ... /* {void *,char *} arg */));
+_GL_CXXALIAS_RPL (ioctl, int,
+ (int fd, int request, ... /* {void *,char *} arg */));
+# else
+# if @SYS_IOCTL_H_HAVE_WINSOCK2_H@ || 1
+_GL_FUNCDECL_SYS (ioctl, int,
+ (int fd, int request, ... /* {void *,char *} arg */));
+# endif
+_GL_CXXALIAS_SYS (ioctl, int,
+ (int fd, int request, ... /* {void *,char *} arg */));
+# endif
+_GL_CXXALIASWARN (ioctl);
+#elif @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
+# undef ioctl
+# define ioctl ioctl_used_without_requesting_gnulib_module_ioctl
+#elif defined GNULIB_POSIXCHECK
+# undef ioctl
+# if HAVE_RAW_DECL_IOCTL
+_GL_WARN_ON_USE (ioctl, "ioctl does not portably work on sockets - "
+ "use gnulib module ioctl for portability");
+# endif
+#endif
+
+
+#endif /* _@GUARD_PREFIX@_SYS_IOCTL_H */
+#endif /* _@GUARD_PREFIX@_SYS_IOCTL_H */
--- /dev/null
+/* Substitute for <sys/select.h>.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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 <http://www.gnu.org/licenses/>. */
+
+# if __GNUC__ >= 3
+@PRAGMA_SYSTEM_HEADER@
+# endif
+@PRAGMA_COLUMNS@
+
+/* On OSF/1 and Solaris 2.6, <sys/types.h> and <sys/time.h>
+ both include <sys/select.h>.
+ On Cygwin, <sys/time.h> includes <sys/select.h>.
+ Simply delegate to the system's header in this case. */
+#if (@HAVE_SYS_SELECT_H@ \
+ && !defined _GL_SYS_SELECT_H_REDIRECT_FROM_SYS_TYPES_H \
+ && ((defined __osf__ && defined _SYS_TYPES_H_ \
+ && defined _OSF_SOURCE) \
+ || (defined __sun && defined _SYS_TYPES_H \
+ && (! (defined _XOPEN_SOURCE || defined _POSIX_C_SOURCE) \
+ || defined __EXTENSIONS__))))
+
+# define _GL_SYS_SELECT_H_REDIRECT_FROM_SYS_TYPES_H
+# @INCLUDE_NEXT@ @NEXT_SYS_SELECT_H@
+
+#elif (@HAVE_SYS_SELECT_H@ \
+ && (defined _CYGWIN_SYS_TIME_H \
+ || (!defined _GL_SYS_SELECT_H_REDIRECT_FROM_SYS_TIME_H \
+ && ((defined __osf__ && defined _SYS_TIME_H_ \
+ && defined _OSF_SOURCE) \
+ || (defined __sun && defined _SYS_TIME_H \
+ && (! (defined _XOPEN_SOURCE \
+ || defined _POSIX_C_SOURCE) \
+ || defined __EXTENSIONS__))))))
+
+# define _GL_SYS_SELECT_H_REDIRECT_FROM_SYS_TIME_H
+# @INCLUDE_NEXT@ @NEXT_SYS_SELECT_H@
+
+/* On IRIX 6.5, <sys/timespec.h> includes <sys/types.h>, which includes
+ <sys/bsd_types.h>, which includes <sys/select.h>. At this point we cannot
+ include <signal.h>, because that includes <internal/signal_core.h>, which
+ gives a syntax error because <sys/timespec.h> has not been completely
+ processed. Simply delegate to the system's header in this case. */
+#elif @HAVE_SYS_SELECT_H@ && defined __sgi && (defined _SYS_BSD_TYPES_H && !defined _GL_SYS_SELECT_H_REDIRECT_FROM_SYS_BSD_TYPES_H)
+
+# define _GL_SYS_SELECT_H_REDIRECT_FROM_SYS_BSD_TYPES_H
+# @INCLUDE_NEXT@ @NEXT_SYS_SELECT_H@
+
+/* On OpenBSD 5.0, <pthread.h> includes <sys/types.h>, which includes
+ <sys/select.h>. At this point we cannot include <signal.h>, because that
+ includes gnulib's pthread.h override, which gives a syntax error because
+ /usr/include/pthread.h has not been completely processed. Simply delegate
+ to the system's header in this case. */
+#elif @HAVE_SYS_SELECT_H@ && defined __OpenBSD__ && (defined _PTHREAD_H_ && !defined PTHREAD_MUTEX_INITIALIZER)
+
+# @INCLUDE_NEXT@ @NEXT_SYS_SELECT_H@
+
+#else
+
+#ifndef _@GUARD_PREFIX@_SYS_SELECT_H
+
+/* On many platforms, <sys/select.h> assumes prior inclusion of
+ <sys/types.h>. Also, mingw defines sigset_t there, instead of
+ in <signal.h> where it belongs. */
+#include <sys/types.h>
+
+#if @HAVE_SYS_SELECT_H@
+
+/* On OSF/1 4.0, <sys/select.h> provides only a forward declaration
+ of 'struct timeval', and no definition of this type.
+ Also, Mac OS X, AIX, HP-UX, IRIX, Solaris, Interix declare select()
+ in <sys/time.h>.
+ But avoid namespace pollution on glibc systems and "unknown type
+ name" problems on Cygwin. */
+# if !(defined __GLIBC__ || defined __CYGWIN__)
+# include <sys/time.h>
+# endif
+
+/* On AIX 7 and Solaris 10, <sys/select.h> provides an FD_ZERO implementation
+ that relies on memset(), but without including <string.h>.
+ But in any case avoid namespace pollution on glibc systems. */
+# if (defined __OpenBSD__ || defined _AIX || defined __sun || defined __osf__ || defined __BEOS__) \
+ && ! defined __GLIBC__
+# include <string.h>
+# endif
+
+/* The include_next requires a split double-inclusion guard. */
+# @INCLUDE_NEXT@ @NEXT_SYS_SELECT_H@
+
+#endif
+
+/* Get definition of 'sigset_t'.
+ But avoid namespace pollution on glibc systems and "unknown type
+ name" problems on Cygwin.
+ Do this after the include_next (for the sake of OpenBSD 5.0) but before
+ the split double-inclusion guard (for the sake of Solaris). */
+#if !((defined __GLIBC__ || defined __CYGWIN__) && !defined __UCLIBC__)
+# include <signal.h>
+#endif
+
+#ifndef _@GUARD_PREFIX@_SYS_SELECT_H
+#define _@GUARD_PREFIX@_SYS_SELECT_H
+
+#if !@HAVE_SYS_SELECT_H@
+/* A platform that lacks <sys/select.h>. */
+/* Get the 'struct timeval' and 'fd_set' types and the FD_* macros
+ on most platforms. */
+# include <sys/time.h>
+/* On HP-UX 11, <sys/time.h> provides an FD_ZERO implementation
+ that relies on memset(), but without including <string.h>. */
+# if defined __hpux
+# include <string.h>
+# endif
+/* On native Windows platforms:
+ Get the 'fd_set' type.
+ Get the close() declaration before we override it. */
+# if @HAVE_WINSOCK2_H@
+# if !defined _GL_INCLUDING_WINSOCK2_H
+# define _GL_INCLUDING_WINSOCK2_H
+# include <winsock2.h>
+# undef _GL_INCLUDING_WINSOCK2_H
+# endif
+# include <io.h>
+# endif
+#endif
+
+/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */
+
+/* The definition of _GL_WARN_ON_USE is copied here. */
+
+
+/* Fix some definitions from <winsock2.h>. */
+
+#if @HAVE_WINSOCK2_H@
+
+# if !GNULIB_defined_rpl_fd_isset
+
+/* Re-define FD_ISSET to avoid a WSA call while we are not using
+ network sockets. */
+static int
+rpl_fd_isset (SOCKET fd, fd_set * set)
+{
+ u_int i;
+ if (set == NULL)
+ return 0;
+
+ for (i = 0; i < set->fd_count; i++)
+ if (set->fd_array[i] == fd)
+ return 1;
+
+ return 0;
+}
+
+# define GNULIB_defined_rpl_fd_isset 1
+# endif
+
+# undef FD_ISSET
+# define FD_ISSET(fd, set) rpl_fd_isset(fd, set)
+
+#endif
+
+/* Hide some function declarations from <winsock2.h>. */
+
+#if @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
+#endif
+
+
+#if @GNULIB_PSELECT@
+# if @REPLACE_PSELECT@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef pselect
+# define pselect rpl_pselect
+# endif
+_GL_FUNCDECL_RPL (pselect, int,
+ (int, fd_set *restrict, fd_set *restrict, fd_set *restrict,
+ struct timespec const *restrict, const sigset_t *restrict));
+_GL_CXXALIAS_RPL (pselect, int,
+ (int, fd_set *restrict, fd_set *restrict, fd_set *restrict,
+ struct timespec const *restrict, const sigset_t *restrict));
+# else
+# if !@HAVE_PSELECT@
+_GL_FUNCDECL_SYS (pselect, int,
+ (int, fd_set *restrict, fd_set *restrict, fd_set *restrict,
+ struct timespec const *restrict, const sigset_t *restrict));
+# endif
+_GL_CXXALIAS_SYS (pselect, int,
+ (int, fd_set *restrict, fd_set *restrict, fd_set *restrict,
+ struct timespec const *restrict, const sigset_t *restrict));
+# endif
+_GL_CXXALIASWARN (pselect);
+#elif defined GNULIB_POSIXCHECK
+# undef pselect
+# if HAVE_RAW_DECL_PSELECT
+_GL_WARN_ON_USE (pselect, "pselect is not portable - "
+ "use gnulib module pselect for portability");
+# endif
+#endif
+
+#if @GNULIB_SELECT@
+# if @REPLACE_SELECT@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef select
+# define select rpl_select
+# endif
+_GL_FUNCDECL_RPL (select, int,
+ (int, fd_set *restrict, fd_set *restrict, fd_set *restrict,
+ struct timeval *restrict));
+_GL_CXXALIAS_RPL (select, int,
+ (int, fd_set *restrict, fd_set *restrict, fd_set *restrict,
+ struct timeval *restrict));
+# else
+_GL_CXXALIAS_SYS (select, int,
+ (int, fd_set *restrict, fd_set *restrict, fd_set *restrict,
+ struct timeval *restrict));
+# endif
+_GL_CXXALIASWARN (select);
+#elif @HAVE_WINSOCK2_H@
+# undef select
+# define select select_used_without_requesting_gnulib_module_select
+#elif defined GNULIB_POSIXCHECK
+# undef select
+# if HAVE_RAW_DECL_SELECT
+_GL_WARN_ON_USE (select, "select is not always POSIX compliant - "
+ "use gnulib module select for portability");
+# endif
+#endif
+
+
+#endif /* _@GUARD_PREFIX@_SYS_SELECT_H */
+#endif /* _@GUARD_PREFIX@_SYS_SELECT_H */
+#endif /* OSF/1 */
--- /dev/null
+#include <config.h>
+#define _GL_SYS_SOCKET_INLINE _GL_EXTERN_INLINE
+#include "sys/socket.h"
+typedef int dummy;
--- /dev/null
+/* Provide a sys/socket header file for systems lacking it (read: MinGW)
+ and for systems where it is incomplete.
+ Copyright (C) 2005-2016 Free Software Foundation, Inc.
+ Written by Simon Josefsson.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3, 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/>. */
+
+/* This file is supposed to be used on platforms that lack <sys/socket.h>,
+ on platforms where <sys/socket.h> cannot be included standalone, and on
+ platforms where <sys/socket.h> does not provide all necessary definitions.
+ It is intended to provide definitions and prototypes needed by an
+ application. */
+
+#if __GNUC__ >= 3
+@PRAGMA_SYSTEM_HEADER@
+#endif
+@PRAGMA_COLUMNS@
+
+#if defined _GL_ALREADY_INCLUDING_SYS_SOCKET_H
+/* Special invocation convention:
+ - On Cygwin 1.5.x we have a sequence of nested includes
+ <sys/socket.h> -> <cygwin/socket.h> -> <asm/socket.h> -> <cygwin/if.h>,
+ and the latter includes <sys/socket.h>. In this situation, the functions
+ are not yet declared, therefore we cannot provide the C++ aliases. */
+
+#@INCLUDE_NEXT@ @NEXT_SYS_SOCKET_H@
+
+#else
+/* Normal invocation convention. */
+
+#ifndef _@GUARD_PREFIX@_SYS_SOCKET_H
+
+#if @HAVE_SYS_SOCKET_H@
+
+# define _GL_ALREADY_INCLUDING_SYS_SOCKET_H
+
+/* On many platforms, <sys/socket.h> assumes prior inclusion of
+ <sys/types.h>. */
+# include <sys/types.h>
+
+/* On FreeBSD 6.4, <sys/socket.h> defines some macros that assume that NULL
+ is defined. */
+# include <stddef.h>
+
+/* The include_next requires a split double-inclusion guard. */
+# @INCLUDE_NEXT@ @NEXT_SYS_SOCKET_H@
+
+# undef _GL_ALREADY_INCLUDING_SYS_SOCKET_H
+
+#endif
+
+#ifndef _@GUARD_PREFIX@_SYS_SOCKET_H
+#define _@GUARD_PREFIX@_SYS_SOCKET_H
+
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
+_GL_INLINE_HEADER_BEGIN
+#ifndef _GL_SYS_SOCKET_INLINE
+# define _GL_SYS_SOCKET_INLINE _GL_INLINE
+#endif
+
+/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */
+
+/* The definition of _GL_ARG_NONNULL is copied here. */
+
+/* The definition of _GL_WARN_ON_USE is copied here. */
+
+#if !@HAVE_SA_FAMILY_T@
+# if !GNULIB_defined_sa_family_t
+typedef unsigned short sa_family_t;
+# define GNULIB_defined_sa_family_t 1
+# endif
+#endif
+
+#if @HAVE_STRUCT_SOCKADDR_STORAGE@
+/* Make the 'struct sockaddr_storage' field 'ss_family' visible on AIX 7.1. */
+# if !@HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY@
+# ifndef ss_family
+# define ss_family __ss_family
+# endif
+# endif
+#else
+# include <stdalign.h>
+/* Code taken from glibc sysdeps/unix/sysv/linux/bits/socket.h on
+ 2009-05-08, licensed under LGPLv2.1+, plus portability fixes. */
+# define __ss_aligntype unsigned long int
+# define _SS_SIZE 256
+# define _SS_PADSIZE \
+ (_SS_SIZE - ((sizeof (sa_family_t) >= alignof (__ss_aligntype) \
+ ? sizeof (sa_family_t) \
+ : alignof (__ss_aligntype)) \
+ + sizeof (__ss_aligntype)))
+
+# if !GNULIB_defined_struct_sockaddr_storage
+struct sockaddr_storage
+{
+ sa_family_t ss_family; /* Address family, etc. */
+ __ss_aligntype __ss_align; /* Force desired alignment. */
+ char __ss_padding[_SS_PADSIZE];
+};
+# define GNULIB_defined_struct_sockaddr_storage 1
+# endif
+
+#endif
+
+/* Get struct iovec. */
+/* But avoid namespace pollution on glibc systems. */
+#if ! defined __GLIBC__
+# include <sys/uio.h>
+#endif
+
+#if @HAVE_SYS_SOCKET_H@
+
+/* A platform that has <sys/socket.h>. */
+
+/* For shutdown(). */
+# if !defined SHUT_RD
+# define SHUT_RD 0
+# endif
+# if !defined SHUT_WR
+# define SHUT_WR 1
+# endif
+# if !defined SHUT_RDWR
+# define SHUT_RDWR 2
+# endif
+
+#else
+
+# ifdef __CYGWIN__
+# error "Cygwin does have a sys/socket.h, doesn't it?!?"
+# endif
+
+/* A platform that lacks <sys/socket.h>.
+
+ Currently only MinGW is supported. See the gnulib manual regarding
+ Windows sockets. MinGW has the header files winsock2.h and
+ ws2tcpip.h that declare the sys/socket.h definitions we need. Note
+ that you can influence which definitions you get by setting the
+ WINVER symbol before including these two files. For example,
+ getaddrinfo is only available if _WIN32_WINNT >= 0x0501 (that
+ symbol is set indirectly through WINVER). You can set this by
+ adding AC_DEFINE(WINVER, 0x0501) to configure.ac. Note that your
+ code may not run on older Windows releases then. My Windows 2000
+ box was not able to run the code, for example. The situation is
+ slightly confusing because
+ <http://msdn.microsoft.com/en-us/library/ms738520>
+ suggests that getaddrinfo should be available on all Windows
+ releases. */
+
+# if @HAVE_WINSOCK2_H@
+# include <winsock2.h>
+# endif
+# if @HAVE_WS2TCPIP_H@
+# include <ws2tcpip.h>
+# endif
+
+/* For shutdown(). */
+# if !defined SHUT_RD && defined SD_RECEIVE
+# define SHUT_RD SD_RECEIVE
+# endif
+# if !defined SHUT_WR && defined SD_SEND
+# define SHUT_WR SD_SEND
+# endif
+# if !defined SHUT_RDWR && defined SD_BOTH
+# define SHUT_RDWR SD_BOTH
+# endif
+
+# if @HAVE_WINSOCK2_H@
+/* Include headers needed by the emulation code. */
+# include <sys/types.h>
+# include <io.h>
+
+# if !GNULIB_defined_socklen_t
+typedef int socklen_t;
+# define GNULIB_defined_socklen_t 1
+# endif
+
+# endif
+
+/* Rudimentary 'struct msghdr'; this works as long as you don't try to
+ access msg_control or msg_controllen. */
+struct msghdr {
+ void *msg_name;
+ socklen_t msg_namelen;
+ struct iovec *msg_iov;
+ int msg_iovlen;
+ int msg_flags;
+};
+
+#endif
+
+/* Fix some definitions from <winsock2.h>. */
+
+#if @HAVE_WINSOCK2_H@
+
+# if !GNULIB_defined_rpl_fd_isset
+
+/* Re-define FD_ISSET to avoid a WSA call while we are not using
+ network sockets. */
+_GL_SYS_SOCKET_INLINE int
+rpl_fd_isset (SOCKET fd, fd_set * set)
+{
+ u_int i;
+ if (set == NULL)
+ return 0;
+
+ for (i = 0; i < set->fd_count; i++)
+ if (set->fd_array[i] == fd)
+ return 1;
+
+ return 0;
+}
+
+# define GNULIB_defined_rpl_fd_isset 1
+# endif
+
+# undef FD_ISSET
+# define FD_ISSET(fd, set) rpl_fd_isset(fd, set)
+
+#endif
+
+/* Hide some function declarations from <winsock2.h>. */
+
+#if @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_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
+
+/* Wrap everything else to use libc file descriptors for sockets. */
+
+#if @GNULIB_SOCKET@
+# if @HAVE_WINSOCK2_H@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef socket
+# define socket rpl_socket
+# endif
+_GL_FUNCDECL_RPL (socket, int, (int domain, int type, int protocol));
+_GL_CXXALIAS_RPL (socket, int, (int domain, int type, int protocol));
+# else
+_GL_CXXALIAS_SYS (socket, int, (int domain, int type, int protocol));
+# endif
+_GL_CXXALIASWARN (socket);
+#elif @HAVE_WINSOCK2_H@
+# undef socket
+# define socket socket_used_without_requesting_gnulib_module_socket
+#elif defined GNULIB_POSIXCHECK
+# undef socket
+# if HAVE_RAW_DECL_SOCKET
+_GL_WARN_ON_USE (socket, "socket is not always POSIX compliant - "
+ "use gnulib module socket for portability");
+# endif
+#endif
+
+#if @GNULIB_CONNECT@
+# if @HAVE_WINSOCK2_H@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef connect
+# define connect rpl_connect
+# endif
+_GL_FUNCDECL_RPL (connect, int,
+ (int fd, const struct sockaddr *addr, socklen_t addrlen)
+ _GL_ARG_NONNULL ((2)));
+_GL_CXXALIAS_RPL (connect, int,
+ (int fd, const struct sockaddr *addr, socklen_t addrlen));
+# else
+/* Need to cast, because on NonStop Kernel, the third parameter is
+ size_t addrlen. */
+_GL_CXXALIAS_SYS_CAST (connect, int,
+ (int fd,
+ const struct sockaddr *addr, socklen_t addrlen));
+# endif
+_GL_CXXALIASWARN (connect);
+#elif @HAVE_WINSOCK2_H@
+# undef connect
+# define connect socket_used_without_requesting_gnulib_module_connect
+#elif defined GNULIB_POSIXCHECK
+# undef connect
+# if HAVE_RAW_DECL_CONNECT
+_GL_WARN_ON_USE (connect, "connect is not always POSIX compliant - "
+ "use gnulib module connect for portability");
+# endif
+#endif
+
+#if @GNULIB_ACCEPT@
+# if @HAVE_WINSOCK2_H@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef accept
+# define accept rpl_accept
+# endif
+_GL_FUNCDECL_RPL (accept, int,
+ (int fd, struct sockaddr *addr, socklen_t *addrlen));
+_GL_CXXALIAS_RPL (accept, int,
+ (int fd, struct sockaddr *addr, socklen_t *addrlen));
+# else
+/* Need to cast, because on Solaris 10 systems, the third parameter is
+ void *addrlen. */
+_GL_CXXALIAS_SYS_CAST (accept, int,
+ (int fd, struct sockaddr *addr, socklen_t *addrlen));
+# endif
+_GL_CXXALIASWARN (accept);
+#elif @HAVE_WINSOCK2_H@
+# undef accept
+# define accept accept_used_without_requesting_gnulib_module_accept
+#elif defined GNULIB_POSIXCHECK
+# undef accept
+# if HAVE_RAW_DECL_ACCEPT
+_GL_WARN_ON_USE (accept, "accept is not always POSIX compliant - "
+ "use gnulib module accept for portability");
+# endif
+#endif
+
+#if @GNULIB_BIND@
+# if @HAVE_WINSOCK2_H@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef bind
+# define bind rpl_bind
+# endif
+_GL_FUNCDECL_RPL (bind, int,
+ (int fd, const struct sockaddr *addr, socklen_t addrlen)
+ _GL_ARG_NONNULL ((2)));
+_GL_CXXALIAS_RPL (bind, int,
+ (int fd, const struct sockaddr *addr, socklen_t addrlen));
+# else
+/* Need to cast, because on NonStop Kernel, the third parameter is
+ size_t addrlen. */
+_GL_CXXALIAS_SYS_CAST (bind, int,
+ (int fd,
+ const struct sockaddr *addr, socklen_t addrlen));
+# endif
+_GL_CXXALIASWARN (bind);
+#elif @HAVE_WINSOCK2_H@
+# undef bind
+# define bind bind_used_without_requesting_gnulib_module_bind
+#elif defined GNULIB_POSIXCHECK
+# undef bind
+# if HAVE_RAW_DECL_BIND
+_GL_WARN_ON_USE (bind, "bind is not always POSIX compliant - "
+ "use gnulib module bind for portability");
+# endif
+#endif
+
+#if @GNULIB_GETPEERNAME@
+# if @HAVE_WINSOCK2_H@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef getpeername
+# define getpeername rpl_getpeername
+# endif
+_GL_FUNCDECL_RPL (getpeername, int,
+ (int fd, struct sockaddr *addr, socklen_t *addrlen)
+ _GL_ARG_NONNULL ((2, 3)));
+_GL_CXXALIAS_RPL (getpeername, int,
+ (int fd, struct sockaddr *addr, socklen_t *addrlen));
+# else
+/* Need to cast, because on Solaris 10 systems, the third parameter is
+ void *addrlen. */
+_GL_CXXALIAS_SYS_CAST (getpeername, int,
+ (int fd, struct sockaddr *addr, socklen_t *addrlen));
+# endif
+_GL_CXXALIASWARN (getpeername);
+#elif @HAVE_WINSOCK2_H@
+# undef getpeername
+# define getpeername getpeername_used_without_requesting_gnulib_module_getpeername
+#elif defined GNULIB_POSIXCHECK
+# undef getpeername
+# if HAVE_RAW_DECL_GETPEERNAME
+_GL_WARN_ON_USE (getpeername, "getpeername is not always POSIX compliant - "
+ "use gnulib module getpeername for portability");
+# endif
+#endif
+
+#if @GNULIB_GETSOCKNAME@
+# if @HAVE_WINSOCK2_H@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef getsockname
+# define getsockname rpl_getsockname
+# endif
+_GL_FUNCDECL_RPL (getsockname, int,
+ (int fd, struct sockaddr *addr, socklen_t *addrlen)
+ _GL_ARG_NONNULL ((2, 3)));
+_GL_CXXALIAS_RPL (getsockname, int,
+ (int fd, struct sockaddr *addr, socklen_t *addrlen));
+# else
+/* Need to cast, because on Solaris 10 systems, the third parameter is
+ void *addrlen. */
+_GL_CXXALIAS_SYS_CAST (getsockname, int,
+ (int fd, struct sockaddr *addr, socklen_t *addrlen));
+# endif
+_GL_CXXALIASWARN (getsockname);
+#elif @HAVE_WINSOCK2_H@
+# undef getsockname
+# define getsockname getsockname_used_without_requesting_gnulib_module_getsockname
+#elif defined GNULIB_POSIXCHECK
+# undef getsockname
+# if HAVE_RAW_DECL_GETSOCKNAME
+_GL_WARN_ON_USE (getsockname, "getsockname is not always POSIX compliant - "
+ "use gnulib module getsockname for portability");
+# endif
+#endif
+
+#if @GNULIB_GETSOCKOPT@
+# if @HAVE_WINSOCK2_H@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef getsockopt
+# define getsockopt rpl_getsockopt
+# endif
+_GL_FUNCDECL_RPL (getsockopt, int, (int fd, int level, int optname,
+ void *optval, socklen_t *optlen)
+ _GL_ARG_NONNULL ((4, 5)));
+_GL_CXXALIAS_RPL (getsockopt, int, (int fd, int level, int optname,
+ void *optval, socklen_t *optlen));
+# else
+/* Need to cast, because on Solaris 10 systems, the fifth parameter is
+ void *optlen. */
+_GL_CXXALIAS_SYS_CAST (getsockopt, int, (int fd, int level, int optname,
+ void *optval, socklen_t *optlen));
+# endif
+_GL_CXXALIASWARN (getsockopt);
+#elif @HAVE_WINSOCK2_H@
+# undef getsockopt
+# define getsockopt getsockopt_used_without_requesting_gnulib_module_getsockopt
+#elif defined GNULIB_POSIXCHECK
+# undef getsockopt
+# if HAVE_RAW_DECL_GETSOCKOPT
+_GL_WARN_ON_USE (getsockopt, "getsockopt is not always POSIX compliant - "
+ "use gnulib module getsockopt for portability");
+# endif
+#endif
+
+#if @GNULIB_LISTEN@
+# if @HAVE_WINSOCK2_H@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef listen
+# define listen rpl_listen
+# endif
+_GL_FUNCDECL_RPL (listen, int, (int fd, int backlog));
+_GL_CXXALIAS_RPL (listen, int, (int fd, int backlog));
+# else
+_GL_CXXALIAS_SYS (listen, int, (int fd, int backlog));
+# endif
+_GL_CXXALIASWARN (listen);
+#elif @HAVE_WINSOCK2_H@
+# undef listen
+# define listen listen_used_without_requesting_gnulib_module_listen
+#elif defined GNULIB_POSIXCHECK
+# undef listen
+# if HAVE_RAW_DECL_LISTEN
+_GL_WARN_ON_USE (listen, "listen is not always POSIX compliant - "
+ "use gnulib module listen for portability");
+# endif
+#endif
+
+#if @GNULIB_RECV@
+# if @HAVE_WINSOCK2_H@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef recv
+# define recv rpl_recv
+# endif
+_GL_FUNCDECL_RPL (recv, ssize_t, (int fd, void *buf, size_t len, int flags)
+ _GL_ARG_NONNULL ((2)));
+_GL_CXXALIAS_RPL (recv, ssize_t, (int fd, void *buf, size_t len, int flags));
+# else
+_GL_CXXALIAS_SYS (recv, ssize_t, (int fd, void *buf, size_t len, int flags));
+# endif
+_GL_CXXALIASWARN (recv);
+#elif @HAVE_WINSOCK2_H@
+# undef recv
+# define recv recv_used_without_requesting_gnulib_module_recv
+#elif defined GNULIB_POSIXCHECK
+# undef recv
+# if HAVE_RAW_DECL_RECV
+_GL_WARN_ON_USE (recv, "recv is not always POSIX compliant - "
+ "use gnulib module recv for portability");
+# endif
+#endif
+
+#if @GNULIB_SEND@
+# if @HAVE_WINSOCK2_H@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef send
+# define send rpl_send
+# endif
+_GL_FUNCDECL_RPL (send, ssize_t,
+ (int fd, const void *buf, size_t len, int flags)
+ _GL_ARG_NONNULL ((2)));
+_GL_CXXALIAS_RPL (send, ssize_t,
+ (int fd, const void *buf, size_t len, int flags));
+# else
+_GL_CXXALIAS_SYS (send, ssize_t,
+ (int fd, const void *buf, size_t len, int flags));
+# endif
+_GL_CXXALIASWARN (send);
+#elif @HAVE_WINSOCK2_H@
+# undef send
+# define send send_used_without_requesting_gnulib_module_send
+#elif defined GNULIB_POSIXCHECK
+# undef send
+# if HAVE_RAW_DECL_SEND
+_GL_WARN_ON_USE (send, "send is not always POSIX compliant - "
+ "use gnulib module send for portability");
+# endif
+#endif
+
+#if @GNULIB_RECVFROM@
+# if @HAVE_WINSOCK2_H@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef recvfrom
+# define recvfrom rpl_recvfrom
+# endif
+_GL_FUNCDECL_RPL (recvfrom, ssize_t,
+ (int fd, void *buf, size_t len, int flags,
+ struct sockaddr *from, socklen_t *fromlen)
+ _GL_ARG_NONNULL ((2)));
+_GL_CXXALIAS_RPL (recvfrom, ssize_t,
+ (int fd, void *buf, size_t len, int flags,
+ struct sockaddr *from, socklen_t *fromlen));
+# else
+/* Need to cast, because on Solaris 10 systems, the sixth parameter is
+ void *fromlen. */
+_GL_CXXALIAS_SYS_CAST (recvfrom, ssize_t,
+ (int fd, void *buf, size_t len, int flags,
+ struct sockaddr *from, socklen_t *fromlen));
+# endif
+_GL_CXXALIASWARN (recvfrom);
+#elif @HAVE_WINSOCK2_H@
+# undef recvfrom
+# define recvfrom recvfrom_used_without_requesting_gnulib_module_recvfrom
+#elif defined GNULIB_POSIXCHECK
+# undef recvfrom
+# if HAVE_RAW_DECL_RECVFROM
+_GL_WARN_ON_USE (recvfrom, "recvfrom is not always POSIX compliant - "
+ "use gnulib module recvfrom for portability");
+# endif
+#endif
+
+#if @GNULIB_SENDTO@
+# if @HAVE_WINSOCK2_H@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef sendto
+# define sendto rpl_sendto
+# endif
+_GL_FUNCDECL_RPL (sendto, ssize_t,
+ (int fd, const void *buf, size_t len, int flags,
+ const struct sockaddr *to, socklen_t tolen)
+ _GL_ARG_NONNULL ((2)));
+_GL_CXXALIAS_RPL (sendto, ssize_t,
+ (int fd, const void *buf, size_t len, int flags,
+ const struct sockaddr *to, socklen_t tolen));
+# else
+/* Need to cast, because on NonStop Kernel, the sixth parameter is
+ size_t tolen. */
+_GL_CXXALIAS_SYS_CAST (sendto, ssize_t,
+ (int fd, const void *buf, size_t len, int flags,
+ const struct sockaddr *to, socklen_t tolen));
+# endif
+_GL_CXXALIASWARN (sendto);
+#elif @HAVE_WINSOCK2_H@
+# undef sendto
+# define sendto sendto_used_without_requesting_gnulib_module_sendto
+#elif defined GNULIB_POSIXCHECK
+# undef sendto
+# if HAVE_RAW_DECL_SENDTO
+_GL_WARN_ON_USE (sendto, "sendto is not always POSIX compliant - "
+ "use gnulib module sendto for portability");
+# endif
+#endif
+
+#if @GNULIB_SETSOCKOPT@
+# if @HAVE_WINSOCK2_H@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef setsockopt
+# define setsockopt rpl_setsockopt
+# endif
+_GL_FUNCDECL_RPL (setsockopt, int, (int fd, int level, int optname,
+ const void * optval, socklen_t optlen)
+ _GL_ARG_NONNULL ((4)));
+_GL_CXXALIAS_RPL (setsockopt, int, (int fd, int level, int optname,
+ const void * optval, socklen_t optlen));
+# else
+/* Need to cast, because on NonStop Kernel, the fifth parameter is
+ size_t optlen. */
+_GL_CXXALIAS_SYS_CAST (setsockopt, int,
+ (int fd, int level, int optname,
+ const void * optval, socklen_t optlen));
+# endif
+_GL_CXXALIASWARN (setsockopt);
+#elif @HAVE_WINSOCK2_H@
+# undef setsockopt
+# define setsockopt setsockopt_used_without_requesting_gnulib_module_setsockopt
+#elif defined GNULIB_POSIXCHECK
+# undef setsockopt
+# if HAVE_RAW_DECL_SETSOCKOPT
+_GL_WARN_ON_USE (setsockopt, "setsockopt is not always POSIX compliant - "
+ "use gnulib module setsockopt for portability");
+# endif
+#endif
+
+#if @GNULIB_SHUTDOWN@
+# if @HAVE_WINSOCK2_H@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef shutdown
+# define shutdown rpl_shutdown
+# endif
+_GL_FUNCDECL_RPL (shutdown, int, (int fd, int how));
+_GL_CXXALIAS_RPL (shutdown, int, (int fd, int how));
+# else
+_GL_CXXALIAS_SYS (shutdown, int, (int fd, int how));
+# endif
+_GL_CXXALIASWARN (shutdown);
+#elif @HAVE_WINSOCK2_H@
+# undef shutdown
+# define shutdown shutdown_used_without_requesting_gnulib_module_shutdown
+#elif defined GNULIB_POSIXCHECK
+# undef shutdown
+# if HAVE_RAW_DECL_SHUTDOWN
+_GL_WARN_ON_USE (shutdown, "shutdown is not always POSIX compliant - "
+ "use gnulib module shutdown for portability");
+# endif
+#endif
+
+#if @GNULIB_ACCEPT4@
+/* Accept a connection on a socket, with specific opening flags.
+ The flags are a bitmask, possibly including O_CLOEXEC (defined in <fcntl.h>)
+ and O_TEXT, O_BINARY (defined in "binary-io.h").
+ See also the Linux man page at
+ <http://www.kernel.org/doc/man-pages/online/pages/man2/accept4.2.html>. */
+# if @HAVE_ACCEPT4@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# define accept4 rpl_accept4
+# endif
+_GL_FUNCDECL_RPL (accept4, int,
+ (int sockfd, struct sockaddr *addr, socklen_t *addrlen,
+ int flags));
+_GL_CXXALIAS_RPL (accept4, int,
+ (int sockfd, struct sockaddr *addr, socklen_t *addrlen,
+ int flags));
+# else
+_GL_FUNCDECL_SYS (accept4, int,
+ (int sockfd, struct sockaddr *addr, socklen_t *addrlen,
+ int flags));
+_GL_CXXALIAS_SYS (accept4, int,
+ (int sockfd, struct sockaddr *addr, socklen_t *addrlen,
+ int flags));
+# endif
+_GL_CXXALIASWARN (accept4);
+#elif defined GNULIB_POSIXCHECK
+# undef accept4
+# if HAVE_RAW_DECL_ACCEPT4
+_GL_WARN_ON_USE (accept4, "accept4 is unportable - "
+ "use gnulib module accept4 for portability");
+# endif
+#endif
+
+_GL_INLINE_HEADER_END
+
+#endif /* _@GUARD_PREFIX@_SYS_SOCKET_H */
+#endif /* _@GUARD_PREFIX@_SYS_SOCKET_H */
+#endif
--- /dev/null
+/* Substitute for <sys/uio.h>.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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 <http://www.gnu.org/licenses/>. */
+
+# if __GNUC__ >= 3
+@PRAGMA_SYSTEM_HEADER@
+# endif
+@PRAGMA_COLUMNS@
+
+#ifndef _@GUARD_PREFIX@_SYS_UIO_H
+
+#if @HAVE_SYS_UIO_H@
+
+/* On OpenBSD 4.4, <sys/uio.h> assumes prior inclusion of <sys/types.h>. */
+# include <sys/types.h>
+
+/* The include_next requires a split double-inclusion guard. */
+# @INCLUDE_NEXT@ @NEXT_SYS_UIO_H@
+
+#endif
+
+#ifndef _@GUARD_PREFIX@_SYS_UIO_H
+#define _@GUARD_PREFIX@_SYS_UIO_H
+
+#if !@HAVE_SYS_UIO_H@
+/* A platform that lacks <sys/uio.h>. */
+/* Get 'size_t' and 'ssize_t'. */
+# include <sys/types.h>
+
+# ifdef __cplusplus
+extern "C" {
+# endif
+
+# if !GNULIB_defined_struct_iovec
+/* All known platforms that lack <sys/uio.h> also lack any declaration
+ of struct iovec in any other header. */
+struct iovec {
+ void *iov_base;
+ size_t iov_len;
+};
+# define GNULIB_defined_struct_iovec 1
+# endif
+
+# ifdef __cplusplus
+}
+# endif
+
+#endif
+
+#endif /* _@GUARD_PREFIX@_SYS_UIO_H */
+#endif /* _@GUARD_PREFIX@_SYS_UIO_H */
--- /dev/null
+/* Test accepting a connection to a server socket.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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 <sys/socket.h>
+
+#include "signature.h"
+SIGNATURE_CHECK (accept, int, (int, struct sockaddr *, socklen_t *));
+
+#include <errno.h>
+#include <netinet/in.h>
+#include <unistd.h>
+
+#include "sockets.h"
+#include "macros.h"
+
+int
+main (void)
+{
+ (void) gl_sockets_startup (SOCKETS_1_1);
+
+ /* Test behaviour for invalid file descriptors. */
+ {
+ struct sockaddr_in addr;
+ socklen_t addrlen = sizeof (addr);
+
+ errno = 0;
+ ASSERT (accept (-1, (struct sockaddr *) &addr, &addrlen) == -1);
+ ASSERT (errno == EBADF);
+ }
+ {
+ struct sockaddr_in addr;
+ socklen_t addrlen = sizeof (addr);
+
+ close (99);
+ errno = 0;
+ ASSERT (accept (99, (struct sockaddr *) &addr, &addrlen) == -1);
+ ASSERT (errno == EBADF);
+ }
+
+ return 0;
+}
/* Test of optional automatic memory allocation.
- Copyright (C) 2005, 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2005, 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Tests of areadlink.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Tests of areadlink and friends.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of exact or abbreviated match search.
- Copyright (C) 1990, 1998-1999, 2001-2013 Free Software Foundation, Inc.
+ Copyright (C) 1990, 1998-1999, 2001-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-/* Test of malloc function.
- Copyright (C) 2010-2013 Free Software Foundation, Inc.
+/* Test of <arpa/inet.h> substitute.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
This 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 <http://www.gnu.org/licenses/>. */
+/* Written by Bruno Haible <bruno@clisp.org>, 2007. */
+
#include <config.h>
-#include <stdlib.h>
+#include <arpa/inet.h>
int
-main ()
+main (void)
{
- /* Check that malloc (0) is not a NULL pointer. */
- if (malloc (0) == NULL)
- return 1;
-
return 0;
}
/* Test of binary mode I/O.
- Copyright (C) 2005, 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2005, 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Test binding a server socket to a port.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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 <sys/socket.h>
+
+#include "signature.h"
+SIGNATURE_CHECK (bind, int, (int, const struct sockaddr *, socklen_t));
+
+#include <errno.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+#include <unistd.h>
+
+#include "sockets.h"
+#include "macros.h"
+
+int
+main (void)
+{
+ (void) gl_sockets_startup (SOCKETS_1_1);
+
+ /* Test behaviour for invalid file descriptors. */
+ {
+ struct sockaddr_in addr;
+
+ addr.sin_family = AF_INET;
+ inet_pton (AF_INET, "127.0.0.1", &addr.sin_addr);
+ addr.sin_port = htons (80);
+ {
+ errno = 0;
+ ASSERT (bind (-1, (const struct sockaddr *) &addr, sizeof (addr)) == -1);
+ ASSERT (errno == EBADF);
+ }
+ {
+ close (99);
+ errno = 0;
+ ASSERT (bind (99, (const struct sockaddr *) &addr, sizeof (addr)) == -1);
+ ASSERT (errno == EBADF);
+ }
+ }
+
+ return 0;
+}
/* Test of <bitrotate.h> substitute.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of conversion of unibyte character to wide character.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of character handling in C locale.
- Copyright (C) 2005, 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2005, 2007-2016 Free Software Foundation, Inc.
This 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 "c-ctype.h"
+#include <ctype.h>
+#include <limits.h>
#include <locale.h>
#include "macros.h"
static void
-test_all (void)
+test_agree_with_C_locale (void)
{
int c;
- for (c = -0x80; c < 0x100; c++)
+ for (c = 0; c <= UCHAR_MAX; c++)
{
- ASSERT (c_isascii (c) == (c >= 0 && c < 0x80));
-
- switch (c)
+ ASSERT (c_isascii (c) == (isascii (c) != 0));
+ if (c_isascii (c))
{
- case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
- case 'G': case 'H': case 'I': case 'J': case 'K': case 'L':
- case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
- case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
- case 'Y': case 'Z':
- case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
- case 'g': case 'h': case 'i': case 'j': case 'k': case 'l':
- case 'm': case 'n': case 'o': case 'p': case 'q': case 'r':
- case 's': case 't': case 'u': case 'v': case 'w': case 'x':
- case 'y': case 'z':
- case '0': case '1': case '2': case '3': case '4': case '5':
- case '6': case '7': case '8': case '9':
- ASSERT (c_isalnum (c) == 1);
- break;
- default:
- ASSERT (c_isalnum (c) == 0);
- break;
+ ASSERT (c_isalnum (c) == (isalnum (c) != 0));
+ ASSERT (c_isalpha (c) == (isalpha (c) != 0));
+ ASSERT (c_isblank (c) == (isblank (c) != 0));
+ ASSERT (c_iscntrl (c) == (iscntrl (c) != 0));
+ ASSERT (c_isdigit (c) == (isdigit (c) != 0));
+ ASSERT (c_islower (c) == (islower (c) != 0));
+ ASSERT (c_isgraph (c) == (isgraph (c) != 0));
+ ASSERT (c_isprint (c) == (isprint (c) != 0));
+ ASSERT (c_ispunct (c) == (ispunct (c) != 0));
+ ASSERT (c_isspace (c) == (isspace (c) != 0));
+ ASSERT (c_isupper (c) == (isupper (c) != 0));
+ ASSERT (c_isxdigit (c) == (isxdigit (c) != 0));
+ ASSERT (c_tolower (c) == tolower (c));
+ ASSERT (c_toupper (c) == toupper (c));
}
+ }
+}
- switch (c)
+static void
+test_all (void)
+{
+ int c;
+ int n_isascii = 0;
+
+ for (c = CHAR_MIN; c <= UCHAR_MAX; c++)
+ {
+ if (! (0 <= c && c <= CHAR_MAX))
{
- case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
- case 'G': case 'H': case 'I': case 'J': case 'K': case 'L':
- case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
- case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
- case 'Y': case 'Z':
- case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
- case 'g': case 'h': case 'i': case 'j': case 'k': case 'l':
- case 'm': case 'n': case 'o': case 'p': case 'q': case 'r':
- case 's': case 't': case 'u': case 'v': case 'w': case 'x':
- case 'y': case 'z':
- ASSERT (c_isalpha (c) == 1);
- break;
- default:
- ASSERT (c_isalpha (c) == 0);
- break;
+ ASSERT (! c_isascii (c));
+ ASSERT (! c_isalnum (c));
+ ASSERT (! c_isalpha (c));
+ ASSERT (! c_isblank (c));
+ ASSERT (! c_iscntrl (c));
+ ASSERT (! c_isdigit (c));
+ ASSERT (! c_islower (c));
+ ASSERT (! c_isgraph (c));
+ ASSERT (! c_isprint (c));
+ ASSERT (! c_ispunct (c));
+ ASSERT (! c_isspace (c));
+ ASSERT (! c_isupper (c));
+ ASSERT (! c_isxdigit (c));
+ ASSERT (c_tolower (c) == c);
+ ASSERT (c_toupper (c) == c);
}
+ n_isascii += c_isascii (c);
+
+#ifdef C_CTYPE_ASCII
+ ASSERT (c_isascii (c) == (0 <= c && c <= 0x7f));
+#endif
+
+ ASSERT (c_isascii (c) == (c_isprint (c) || c_iscntrl (c)));
+
+ ASSERT (c_isalnum (c) == (c_isalpha (c) || c_isdigit (c)));
+
+ ASSERT (c_isalpha (c) == (c_islower (c) || c_isupper (c)));
+
switch (c)
{
case '\t': case ' ':
break;
}
+#ifdef C_CTYPE_ASCII
ASSERT (c_iscntrl (c) == ((c >= 0 && c < 0x20) || c == 0x7f));
+#endif
+
+ switch (c)
+ {
+ case '\a': case '\b': case '\f': case '\n':
+ case '\r': case '\t': case '\v':
+ ASSERT (c_iscntrl (c));
+ break;
+ }
+
+ ASSERT (! (c_iscntrl (c) && c_isprint (c)));
switch (c)
{
case 's': case 't': case 'u': case 'v': case 'w': case 'x':
case 'y': case 'z':
ASSERT (c_islower (c) == 1);
+ ASSERT (c_toupper (c) == c - 'a' + 'A');
break;
default:
ASSERT (c_islower (c) == 0);
+ ASSERT (c_toupper (c) == c);
break;
}
+#ifdef C_CTYPE_ASCII
ASSERT (c_isgraph (c) == ((c >= 0x20 && c < 0x7f) && c != ' '));
ASSERT (c_isprint (c) == (c >= 0x20 && c < 0x7f));
+#endif
+
+ ASSERT (c_isgraph (c) == (c_isalnum (c) || c_ispunct (c)));
+
+ ASSERT (c_isprint (c) == (c_isgraph (c) || c == ' '));
- ASSERT (c_ispunct (c) == (c_isgraph (c) && !c_isalnum (c)));
+ switch (c)
+ {
+ case '!': case '"': case '#': case '$': case '%': case '&': case '\'':
+ case '(': case ')': case '*': case '+': case ',': case '-': case '.':
+ case '/': case ':': case ';': case '<': case '=': case '>': case '?':
+ case '@': case '[': case'\\': case ']': case '^': case '_': case '`':
+ case '{': case '|': case '}': case '~':
+ ASSERT (c_ispunct (c) == 1);
+ break;
+ default:
+ ASSERT (c_ispunct (c) == 0);
+ break;
+ }
switch (c)
{
case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
case 'Y': case 'Z':
ASSERT (c_isupper (c) == 1);
+ ASSERT (c_tolower (c) == c - 'A' + 'a');
break;
default:
ASSERT (c_isupper (c) == 0);
+ ASSERT (c_tolower (c) == c);
break;
}
ASSERT (c_isxdigit (c) == 0);
break;
}
-
- switch (c)
- {
- case 'A':
- ASSERT (c_tolower (c) == 'a');
- ASSERT (c_toupper (c) == c);
- break;
- case 'B':
- ASSERT (c_tolower (c) == 'b');
- ASSERT (c_toupper (c) == c);
- break;
- case 'C':
- ASSERT (c_tolower (c) == 'c');
- ASSERT (c_toupper (c) == c);
- break;
- case 'D':
- ASSERT (c_tolower (c) == 'd');
- ASSERT (c_toupper (c) == c);
- break;
- case 'E':
- ASSERT (c_tolower (c) == 'e');
- ASSERT (c_toupper (c) == c);
- break;
- case 'F':
- ASSERT (c_tolower (c) == 'f');
- ASSERT (c_toupper (c) == c);
- break;
- case 'G':
- ASSERT (c_tolower (c) == 'g');
- ASSERT (c_toupper (c) == c);
- break;
- case 'H':
- ASSERT (c_tolower (c) == 'h');
- ASSERT (c_toupper (c) == c);
- break;
- case 'I':
- ASSERT (c_tolower (c) == 'i');
- ASSERT (c_toupper (c) == c);
- break;
- case 'J':
- ASSERT (c_tolower (c) == 'j');
- ASSERT (c_toupper (c) == c);
- break;
- case 'K':
- ASSERT (c_tolower (c) == 'k');
- ASSERT (c_toupper (c) == c);
- break;
- case 'L':
- ASSERT (c_tolower (c) == 'l');
- ASSERT (c_toupper (c) == c);
- break;
- case 'M':
- ASSERT (c_tolower (c) == 'm');
- ASSERT (c_toupper (c) == c);
- break;
- case 'N':
- ASSERT (c_tolower (c) == 'n');
- ASSERT (c_toupper (c) == c);
- break;
- case 'O':
- ASSERT (c_tolower (c) == 'o');
- ASSERT (c_toupper (c) == c);
- break;
- case 'P':
- ASSERT (c_tolower (c) == 'p');
- ASSERT (c_toupper (c) == c);
- break;
- case 'Q':
- ASSERT (c_tolower (c) == 'q');
- ASSERT (c_toupper (c) == c);
- break;
- case 'R':
- ASSERT (c_tolower (c) == 'r');
- ASSERT (c_toupper (c) == c);
- break;
- case 'S':
- ASSERT (c_tolower (c) == 's');
- ASSERT (c_toupper (c) == c);
- break;
- case 'T':
- ASSERT (c_tolower (c) == 't');
- ASSERT (c_toupper (c) == c);
- break;
- case 'U':
- ASSERT (c_tolower (c) == 'u');
- ASSERT (c_toupper (c) == c);
- break;
- case 'V':
- ASSERT (c_tolower (c) == 'v');
- ASSERT (c_toupper (c) == c);
- break;
- case 'W':
- ASSERT (c_tolower (c) == 'w');
- ASSERT (c_toupper (c) == c);
- break;
- case 'X':
- ASSERT (c_tolower (c) == 'x');
- ASSERT (c_toupper (c) == c);
- break;
- case 'Y':
- ASSERT (c_tolower (c) == 'y');
- ASSERT (c_toupper (c) == c);
- break;
- case 'Z':
- ASSERT (c_tolower (c) == 'z');
- ASSERT (c_toupper (c) == c);
- break;
- case 'a':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'A');
- break;
- case 'b':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'B');
- break;
- case 'c':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'C');
- break;
- case 'd':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'D');
- break;
- case 'e':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'E');
- break;
- case 'f':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'F');
- break;
- case 'g':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'G');
- break;
- case 'h':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'H');
- break;
- case 'i':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'I');
- break;
- case 'j':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'J');
- break;
- case 'k':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'K');
- break;
- case 'l':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'L');
- break;
- case 'm':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'M');
- break;
- case 'n':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'N');
- break;
- case 'o':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'O');
- break;
- case 'p':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'P');
- break;
- case 'q':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'Q');
- break;
- case 'r':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'R');
- break;
- case 's':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'S');
- break;
- case 't':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'T');
- break;
- case 'u':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'U');
- break;
- case 'v':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'V');
- break;
- case 'w':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'W');
- break;
- case 'x':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'X');
- break;
- case 'y':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'Y');
- break;
- case 'z':
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == 'Z');
- break;
- default:
- ASSERT (c_tolower (c) == c);
- ASSERT (c_toupper (c) == c);
- break;
- }
}
+
+ ASSERT (n_isascii == 128);
}
int
main ()
{
+ test_agree_with_C_locale ();
+
test_all ();
setlocale (LC_ALL, "de_DE");
/* Test of c-stack module.
- Copyright (C) 2002, 2004, 2006, 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2004, 2006, 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of case-insensitive string comparison function.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of case-insensitive string comparison function.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test closing a file or socket.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Test connecting a client socket.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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 <sys/socket.h>
+
+#include "signature.h"
+SIGNATURE_CHECK (connect, int, (int, const struct sockaddr *, socklen_t));
+
+#include <errno.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+#include <unistd.h>
+
+#include "sockets.h"
+#include "macros.h"
+
+int
+main (void)
+{
+ (void) gl_sockets_startup (SOCKETS_1_1);
+
+ /* Test behaviour for invalid file descriptors. */
+ {
+ struct sockaddr_in addr;
+
+ addr.sin_family = AF_INET;
+ inet_pton (AF_INET, "127.0.0.1", &addr.sin_addr);
+ addr.sin_port = htons (80);
+ {
+ errno = 0;
+ ASSERT (connect (-1, (const struct sockaddr *) &addr, sizeof (addr))
+ == -1);
+ ASSERT (errno == EBADF);
+ }
+ {
+ close (99);
+ errno = 0;
+ ASSERT (connect (99, (const struct sockaddr *) &addr, sizeof (addr))
+ == -1);
+ ASSERT (errno == EBADF);
+ }
+ }
+
+ return 0;
+}
-/* Test of usleep() function.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+/* Test of <ctype.h> substitute.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This 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 <config.h>
-#include <unistd.h>
-
-#include "signature.h"
-SIGNATURE_CHECK (usleep, int, (useconds_t));
-
-#include <time.h>
-
-#include "macros.h"
+#include <ctype.h>
int
main (void)
{
- time_t start = time (NULL);
- ASSERT (usleep (1000000) == 0);
- ASSERT (start < time (NULL));
-
- ASSERT (usleep (0) == 0);
-
return 0;
}
/* Test the gnulib dirname module.
- Copyright (C) 2005-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2005-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
{
ok = false;
printf ("dir_name '%s': got '%s' len %d,"
- " expected '%s' len %ld\n",
+ " expected '%s' len %lu\n",
t->name, dir, dirlen,
t->dir, (unsigned long) strlen (t->dir));
}
{
ok = false;
printf ("base_name '%s': got '%s' len %d,"
- " expected '%s' len %ld\n",
+ " expected '%s' len %lu\n",
t->name, base, baselen,
t->base, (unsigned long) strlen (t->base));
}
/* Test duplicating file descriptors.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This 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 <fcntl.h>
+#if HAVE_SYS_RESOURCE_H
+# include <sys/resource.h>
+#endif
+
#include "binary-io.h"
#if GNULIB_TEST_CLOEXEC
{
const char *file = "test-dup2.tmp";
char buffer[1];
+ int bad_fd = getdtablesize ();
int fd = open (file, O_CREAT | O_TRUNC | O_RDWR, 0600);
/* Assume std descriptors were provided by invoker. */
errno = 0;
ASSERT (dup2 (fd, -2) == -1);
ASSERT (errno == EBADF);
+ if (bad_fd > 256)
+ {
+ ASSERT (dup2 (fd, 255) == 255);
+ ASSERT (dup2 (fd, 256) == 256);
+ ASSERT (close (255) == 0);
+ ASSERT (close (256) == 0);
+ }
+ ASSERT (dup2 (fd, bad_fd - 1) == bad_fd - 1);
+ ASSERT (close (bad_fd - 1) == 0);
errno = 0;
- ASSERT (dup2 (fd, 10000000) == -1);
+ ASSERT (dup2 (fd, bad_fd) == -1);
ASSERT (errno == EBADF);
/* Using dup2 can skip fds. */
/* Test of environ variable.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of <errno.h> substitute.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test suite for exclude.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This file is part of the GNUlib Library.
This program is free software: you can redistribute it and/or modify
#! /bin/sh
# Test suite for exclude.
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
# This file is part of the GNUlib Library.
#
# This program is free software: you can redistribute it and/or modify
#! /bin/sh
# Test suite for exclude.
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
# This file is part of the GNUlib Library.
#
# This program is free software: you can redistribute it and/or modify
#! /bin/sh
# Test suite for exclude.
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
# This file is part of the GNUlib Library.
#
# This program is free software: you can redistribute it and/or modify
#! /bin/sh
# Test suite for exclude.
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
# This file is part of the GNUlib Library.
#
# This program is free software: you can redistribute it and/or modify
#! /bin/sh
# Test suite for exclude.
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
# This file is part of the GNUlib Library.
#
# This program is free software: you can redistribute it and/or modify
#! /bin/sh
# Test suite for exclude.
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
# This file is part of the GNUlib Library.
#
# This program is free software: you can redistribute it and/or modify
#! /bin/sh
# Test suite for exclude.
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
# This file is part of the GNUlib Library.
#
# This program is free software: you can redistribute it and/or modify
#! /bin/sh
# Test suite for exclude.
-# Copyright (C) 2010-2013 Free Software Foundation, Inc.
+# Copyright (C) 2010-2016 Free Software Foundation, Inc.
# This file is part of the GNUlib Library.
#
# This program is free software: you can redistribute it and/or modify
/* Test of <fcntl.h> substitute.
- Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
This 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 O_RSYNC && O_RSYNC != O_DSYNC
case O_RSYNC:
#endif
-#if O_SYNC && O_SYNC != O_RSYNC
+#if O_SYNC && O_SYNC != O_DSYNC && O_SYNC != O_RSYNC
case O_SYNC:
#endif
#if O_TTY_INIT
/* Test of fcntl(2).
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
{
const char *file = "test-fcntl.tmp";
int fd;
+ int bad_fd = getdtablesize ();
/* Sanity check that rpl_fcntl is likely to work. */
ASSERT (func2 (1, 2) == 2);
ASSERT (fcntl (fd + 1, F_DUPFD, 0) == -1);
ASSERT (errno == EBADF);
errno = 0;
- ASSERT (fcntl (10000000, F_DUPFD, 0) == -1);
+ ASSERT (fcntl (bad_fd, F_DUPFD, 0) == -1);
ASSERT (errno == EBADF);
errno = 0;
ASSERT (fcntl (-1, F_DUPFD_CLOEXEC, 0) == -1);
ASSERT (fcntl (fd + 1, F_DUPFD_CLOEXEC, 0) == -1);
ASSERT (errno == EBADF);
errno = 0;
- ASSERT (fcntl (10000000, F_DUPFD_CLOEXEC, 0) == -1);
+ ASSERT (fcntl (bad_fd, F_DUPFD_CLOEXEC, 0) == -1);
ASSERT (errno == EBADF);
/* For F_DUPFD*, the destination must be valid. */
- ASSERT (getdtablesize () < 10000000);
errno = 0;
ASSERT (fcntl (fd, F_DUPFD, -1) == -1);
ASSERT (errno == EINVAL);
errno = 0;
- ASSERT (fcntl (fd, F_DUPFD, 10000000) == -1);
+ ASSERT (fcntl (fd, F_DUPFD, bad_fd) == -1);
ASSERT (errno == EINVAL);
- ASSERT (getdtablesize () < 10000000);
errno = 0;
ASSERT (fcntl (fd, F_DUPFD_CLOEXEC, -1) == -1);
ASSERT (errno == EINVAL);
errno = 0;
- ASSERT (fcntl (fd, F_DUPFD_CLOEXEC, 10000000) == -1);
+ ASSERT (fcntl (fd, F_DUPFD_CLOEXEC, bad_fd) == -1);
ASSERT (errno == EINVAL);
/* For F_DUPFD*, check for correct inheritance, as well as
ASSERT (fcntl (fd + 1, F_GETFD) == -1);
ASSERT (errno == EBADF);
errno = 0;
- ASSERT (fcntl (10000000, F_GETFD) == -1);
+ ASSERT (fcntl (bad_fd, F_GETFD) == -1);
ASSERT (errno == EBADF);
/* Test F_GETFD, the FD_CLOEXEC bit. */
ASSERT (fcntl (fd + 1, F_SETFD, 0) == -1);
ASSERT (errno == EBADF);
errno = 0;
- ASSERT (fcntl (10000000, F_SETFD, 0) == -1);
+ ASSERT (fcntl (bad_fd, F_SETFD, 0) == -1);
ASSERT (errno == EBADF);
#endif
ASSERT (fcntl (fd + 1, F_GETFL) == -1);
ASSERT (errno == EBADF);
errno = 0;
- ASSERT (fcntl (10000000, F_GETFL) == -1);
+ ASSERT (fcntl (bad_fd, F_GETFL) == -1);
ASSERT (errno == EBADF);
#endif
ASSERT (fcntl (fd + 1, F_SETFL, 0) == -1);
ASSERT (errno == EBADF);
errno = 0;
- ASSERT (fcntl (10000000, F_SETFL, 0) == -1);
+ ASSERT (fcntl (bad_fd, F_SETFL, 0) == -1);
ASSERT (errno == EBADF);
#endif
ASSERT (fcntl (fd + 1, F_GETOWN) == -1);
ASSERT (errno == EBADF);
errno = 0;
- ASSERT (fcntl (10000000, F_GETOWN) == -1);
+ ASSERT (fcntl (bad_fd, F_GETOWN) == -1);
ASSERT (errno == EBADF);
#endif
ASSERT (fcntl (fd + 1, F_SETOWN, 0) == -1);
ASSERT (errno == EBADF);
errno = 0;
- ASSERT (fcntl (10000000, F_SETOWN, 0) == -1);
+ ASSERT (fcntl (bad_fd, F_SETOWN, 0) == -1);
ASSERT (errno == EBADF);
#endif
/* Test opening a stream with a file descriptor.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
int
main (void)
{
- /* Test behaviour for invalid file descriptors. */
- {
- FILE *fp;
-
- errno = 0;
- fp = fdopen (-1, "r");
- if (fp == NULL)
- ASSERT (errno == EBADF);
- else
- fclose (fp);
- }
- {
- FILE *fp;
-
- close (99);
- errno = 0;
- fp = fdopen (99, "r");
- if (fp == NULL)
- ASSERT (errno == EBADF);
- else
- fclose (fp);
- }
+ /* Test behavior on failure. POSIX makes it hard to check for
+ failure, since the behavior is not well-defined on invalid file
+ descriptors, so try fdopen 1000 times and if that's not enough to
+ fail due to EMFILE, so be it. */
+
+ int i;
+ for (i = 0; i < 1000; i++)
+ {
+ errno = 0;
+ if (! fdopen (STDOUT_FILENO, "w"))
+ {
+ ASSERT (errno != 0);
+ break;
+ }
+ }
return 0;
}
/* Test of fgetc() function.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of concatenation of two arbitrary file names.
- Copyright (C) 1996-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1996-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of <float.h> substitute.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of fnmatch string matching function.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of fputc() function.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of fread() function.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of reopening a stream.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of opening a file stream.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Tests of fstat() function.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Test truncating a file.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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 <unistd.h>
+
+#include "signature.h"
+SIGNATURE_CHECK (ftruncate, int, (int, off_t));
+
+#include <errno.h>
+#include <fcntl.h>
+
+#include "macros.h"
+
+int
+main (int argc, char *argv[])
+{
+ const char *filename = argv[1];
+
+ /* Test behaviour for invalid file descriptors. */
+ {
+ errno = 0;
+ ASSERT (ftruncate (-1, 0) == -1);
+ ASSERT (errno == EBADF);
+ }
+ {
+ close (99);
+ errno = 0;
+ ASSERT (ftruncate (99, 0) == -1);
+ ASSERT (errno == EBADF);
+ }
+
+ /* Test behaviour for read-only file descriptors. */
+ {
+ int fd = open (filename, O_RDONLY);
+ ASSERT (fd >= 0);
+ errno = 0;
+ ASSERT (ftruncate (fd, 0) == -1);
+ ASSERT (errno == EBADF || errno == EINVAL
+ || errno == EACCES /* seen on mingw */
+ );
+ close (fd);
+ }
+
+ return 0;
+}
--- /dev/null
+#!/bin/sh
+
+exec ./test-ftruncate${EXEEXT} "$srcdir/test-ftruncate.sh"
/* Test of fwrite() function.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of getcwd() function.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of getdtablesize() function.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
main (int argc, char *argv[])
{
ASSERT (getdtablesize () >= 3);
+ ASSERT (dup2 (0, getdtablesize() - 1) == getdtablesize () - 1);
+ ASSERT (dup2 (0, getdtablesize()) == -1);
return 0;
}
/* Test of command line argument processing.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of command line argument processing.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of command line argument processing.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/*
- * Copyright (C) 2005, 2007, 2009-2013 Free Software Foundation, Inc.
+ * Copyright (C) 2005, 2007, 2009-2016 Free Software Foundation, Inc.
* Written by Jim Meyering.
*
* This program is free software: you can redistribute it and/or modify
/*
- * Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ * Copyright (C) 2009-2016 Free Software Foundation, Inc.
* Written by Jim Meyering
*
* This program is free software: you can redistribute it and/or modify
/* Test of <iconv.h> substitute.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of character set conversion.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test the "ignore-value" module.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Test of inet_pton function.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2009. */
+
+#include <config.h>
+
+#include <arpa/inet.h>
+
+#include "signature.h"
+SIGNATURE_CHECK (inet_pton, int, (int, const char *, void *));
+
+#include <netinet/in.h>
+#include <sys/socket.h>
+
+#include "macros.h"
+
+int
+main (void)
+{
+#if defined AF_INET /* HAVE_IPV4 */
+ {
+ /* This machine was for a long time known as
+ ma2s2.mathematik.uni-karlsruhe.de. */
+ const char printable[] = "129.13.115.2";
+ struct in_addr internal;
+ int ret;
+
+ ret = inet_pton (AF_INET, printable, &internal);
+ ASSERT (ret == 1);
+ /* Verify that internal is filled in network byte order. */
+ ASSERT (((unsigned char *) &internal)[0] == 0x81);
+ ASSERT (((unsigned char *) &internal)[1] == 0x0D);
+ ASSERT (((unsigned char *) &internal)[2] == 0x73);
+ ASSERT (((unsigned char *) &internal)[3] == 0x02);
+# ifdef WORDS_BIGENDIAN
+ ASSERT (internal.s_addr == 0x810D7302);
+# else
+ ASSERT (internal.s_addr == 0x02730D81);
+# endif
+ }
+#endif
+
+ return 0;
+}
#!/bin/sh
# Unit tests for init.sh
-# Copyright (C) 2011-2013 Free Software Foundation, Inc.
+# Copyright (C) 2011-2016 Free Software Foundation, Inc.
# This file is part of the GNUlib Library.
#
# This program is free software: you can redistribute it and/or modify
/* Test intprops.h.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Written by Paul Eggert. */
-/* Tell gcc not to warn about the many (X < 0) expressions that
- the overflow macros expand to. */
-#if (__GNUC__ == 4 && 3 <= __GNUC_MINOR__) || 4 < __GNUC__
+/* Tell gcc not to warn about the long expressions that the overflow
+ macros expand to, or about the (X < 0) expressions. */
+#if 4 < __GNUC__ + (3 <= __GNUC_MINOR__)
+# pragma GCC diagnostic ignored "-Woverlength-strings"
# pragma GCC diagnostic ignored "-Wtype-limits"
+
+/* Work around a bug in GCC 6.1 and earlier; see:
+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68971 */
+# pragma GCC diagnostic ignored "-Woverflow"
+
#endif
#include <config.h>
#include <stdbool.h>
#include <inttypes.h>
+#include <limits.h>
#include "macros.h"
# define VERIFY(x) ASSERT (x)
#endif
+#define DONTCARE __LINE__
+
int
main (void)
{
ASSERT (TYPE_SIGNED (double));
ASSERT (TYPE_SIGNED (long double));
- /* Integer representation. */
- VERIFY (INT_MIN + INT_MAX < 0
- ? (TYPE_TWOS_COMPLEMENT (int)
- && ! TYPE_ONES_COMPLEMENT (int) && ! TYPE_SIGNED_MAGNITUDE (int))
- : (! TYPE_TWOS_COMPLEMENT (int)
- && (TYPE_ONES_COMPLEMENT (int) || TYPE_SIGNED_MAGNITUDE (int))));
+ /* Integer representation. Check that it is two's complement. */
+ VERIFY (INT_MIN + INT_MAX < 0);
/* TYPE_MINIMUM, TYPE_MAXIMUM. */
VERIFY (TYPE_MINIMUM (char) == CHAR_MIN);
#endif
/* All the INT_<op>_RANGE_OVERFLOW tests are equally valid as
- INT_<op>_OVERFLOW tests, so define a single macro to do both. */
- #define CHECK_BINOP(op, a, b, min, max, overflow) \
- (INT_##op##_RANGE_OVERFLOW (a, b, min, max) == (overflow) \
- && INT_##op##_OVERFLOW (a, b) == (overflow))
- #define CHECK_UNOP(op, a, min, max, overflow) \
- (INT_##op##_RANGE_OVERFLOW (a, min, max) == (overflow) \
- && INT_##op##_OVERFLOW (a) == (overflow))
+ INT_<op>_OVERFLOW tests, so define macros to do both. OP is the
+ operation, OPNAME its symbolic name, A and B its operands, T the
+ result type, V the overflow flag, and VRES the result if V and if
+ two's complement. CHECK_BINOP is for most binary operatinos,
+ CHECK_SBINOP for binary +, -, * when the result type is signed,
+ and CHECK_UNOP for unary operations. */
+ #define CHECK_BINOP(op, opname, a, b, t, v, vres) \
+ VERIFY (INT_##opname##_RANGE_OVERFLOW (a, b, TYPE_MINIMUM (t), \
+ TYPE_MAXIMUM (t)) \
+ == (v)); \
+ VERIFY (INT_##opname##_OVERFLOW (a, b) == (v))
+ #define CHECK_SBINOP(op, opname, a, b, t, v, vres) \
+ CHECK_BINOP(op, opname, a, b, t, v, vres); \
+ { \
+ t result; \
+ ASSERT (INT_##opname##_WRAPV (a, b, &result) == (v)); \
+ ASSERT (result == ((v) ? (vres) : ((a) op (b)))); \
+ }
+ #define CHECK_UNOP(op, opname, a, t, v) \
+ VERIFY (INT_##opname##_RANGE_OVERFLOW (a, TYPE_MINIMUM (t), \
+ TYPE_MAXIMUM (t)) \
+ == (v)); \
+ VERIFY (INT_##opname##_OVERFLOW (a) == (v))
/* INT_<op>_RANGE_OVERFLOW, INT_<op>_OVERFLOW. */
VERIFY (INT_ADD_RANGE_OVERFLOW (INT_MAX, 1, INT_MIN, INT_MAX));
VERIFY (INT_ADD_OVERFLOW (INT_MAX, 1));
- VERIFY (CHECK_BINOP (ADD, INT_MAX, 1, INT_MIN, INT_MAX, true));
- VERIFY (CHECK_BINOP (ADD, INT_MAX, -1, INT_MIN, INT_MAX, false));
- VERIFY (CHECK_BINOP (ADD, INT_MIN, 1, INT_MIN, INT_MAX, false));
- VERIFY (CHECK_BINOP (ADD, INT_MIN, -1, INT_MIN, INT_MAX, true));
- VERIFY (CHECK_BINOP (ADD, UINT_MAX, 1u, 0u, UINT_MAX, true));
- VERIFY (CHECK_BINOP (ADD, 0u, 1u, 0u, UINT_MAX, false));
-
- VERIFY (CHECK_BINOP (SUBTRACT, INT_MAX, 1, INT_MIN, INT_MAX, false));
- VERIFY (CHECK_BINOP (SUBTRACT, INT_MAX, -1, INT_MIN, INT_MAX, true));
- VERIFY (CHECK_BINOP (SUBTRACT, INT_MIN, 1, INT_MIN, INT_MAX, true));
- VERIFY (CHECK_BINOP (SUBTRACT, INT_MIN, -1, INT_MIN, INT_MAX, false));
- VERIFY (CHECK_BINOP (SUBTRACT, UINT_MAX, 1u, 0u, UINT_MAX, false));
- VERIFY (CHECK_BINOP (SUBTRACT, 0u, 1u, 0u, UINT_MAX, true));
-
- VERIFY (CHECK_UNOP (NEGATE, INT_MIN, INT_MIN, INT_MAX,
- TYPE_TWOS_COMPLEMENT (int)));
- VERIFY (CHECK_UNOP (NEGATE, 0, INT_MIN, INT_MAX, false));
- VERIFY (CHECK_UNOP (NEGATE, INT_MAX, INT_MIN, INT_MAX, false));
- VERIFY (CHECK_UNOP (NEGATE, 0u, 0u, UINT_MAX, false));
- VERIFY (CHECK_UNOP (NEGATE, 1u, 0u, UINT_MAX, true));
- VERIFY (CHECK_UNOP (NEGATE, UINT_MAX, 0u, UINT_MAX, true));
-
- VERIFY (CHECK_BINOP (MULTIPLY, INT_MAX, INT_MAX, INT_MIN, INT_MAX, true));
- VERIFY (CHECK_BINOP (MULTIPLY, INT_MAX, INT_MIN, INT_MIN, INT_MAX, true));
- VERIFY (CHECK_BINOP (MULTIPLY, INT_MIN, INT_MAX, INT_MIN, INT_MAX, true));
- VERIFY (CHECK_BINOP (MULTIPLY, INT_MIN, INT_MIN, INT_MIN, INT_MAX, true));
- VERIFY (CHECK_BINOP (MULTIPLY, -1, INT_MIN, INT_MIN, INT_MAX,
- INT_NEGATE_OVERFLOW (INT_MIN)));
- VERIFY (CHECK_BINOP (MULTIPLY, LONG_MIN / INT_MAX, (long int) INT_MAX,
- LONG_MIN, LONG_MIN, false));
-
- VERIFY (CHECK_BINOP (DIVIDE, INT_MIN, -1, INT_MIN, INT_MAX,
- INT_NEGATE_OVERFLOW (INT_MIN)));
- VERIFY (CHECK_BINOP (DIVIDE, INT_MAX, 1, INT_MIN, INT_MAX, false));
- VERIFY (CHECK_BINOP (DIVIDE, (unsigned int) INT_MIN,
- -1u, 0u, UINT_MAX, false));
-
- VERIFY (CHECK_BINOP (REMAINDER, INT_MIN, -1, INT_MIN, INT_MAX,
- INT_NEGATE_OVERFLOW (INT_MIN)));
- VERIFY (CHECK_BINOP (REMAINDER, INT_MAX, 1, INT_MIN, INT_MAX, false));
- VERIFY (CHECK_BINOP (REMAINDER, (unsigned int) INT_MIN,
- -1u, 0u, UINT_MAX, false));
-
- VERIFY (CHECK_BINOP (LEFT_SHIFT, UINT_MAX, 1, 0u, UINT_MAX, true));
- VERIFY (CHECK_BINOP (LEFT_SHIFT, UINT_MAX / 2 + 1, 1, 0u, UINT_MAX, true));
- VERIFY (CHECK_BINOP (LEFT_SHIFT, UINT_MAX / 2, 1, 0u, UINT_MAX, false));
-
- /* INT_<op>_OVERFLOW with mixed types. */
- #define CHECK_SUM(a, b, overflow) \
- VERIFY (INT_ADD_OVERFLOW (a, b) == (overflow)); \
- VERIFY (INT_ADD_OVERFLOW (b, a) == (overflow))
- CHECK_SUM (-1, LONG_MIN, true);
- CHECK_SUM (-1, UINT_MAX, false);
- CHECK_SUM (-1L, INT_MIN, INT_MIN == LONG_MIN);
- CHECK_SUM (0u, -1, true);
- CHECK_SUM (0u, 0, false);
- CHECK_SUM (0u, 1, false);
- CHECK_SUM (1, LONG_MAX, true);
- CHECK_SUM (1, UINT_MAX, true);
- CHECK_SUM (1L, INT_MAX, INT_MAX == LONG_MAX);
- CHECK_SUM (1u, INT_MAX, INT_MAX == UINT_MAX);
- CHECK_SUM (1u, INT_MIN, true);
-
- VERIFY (! INT_SUBTRACT_OVERFLOW (INT_MAX, 1u));
- VERIFY (! INT_SUBTRACT_OVERFLOW (UINT_MAX, 1));
- VERIFY (! INT_SUBTRACT_OVERFLOW (0u, -1));
- VERIFY (INT_SUBTRACT_OVERFLOW (UINT_MAX, -1));
- VERIFY (INT_SUBTRACT_OVERFLOW (INT_MIN, 1u));
- VERIFY (INT_SUBTRACT_OVERFLOW (-1, 0u));
-
- #define CHECK_PRODUCT(a, b, overflow) \
- VERIFY (INT_MULTIPLY_OVERFLOW (a, b) == (overflow)); \
- VERIFY (INT_MULTIPLY_OVERFLOW (b, a) == (overflow))
-
- CHECK_PRODUCT (-1, 1u, true);
- CHECK_PRODUCT (-1, INT_MIN, INT_NEGATE_OVERFLOW (INT_MIN));
- CHECK_PRODUCT (-1, UINT_MAX, true);
- CHECK_PRODUCT (-12345, LONG_MAX / -12345 - 1, true);
- CHECK_PRODUCT (-12345, LONG_MAX / -12345, false);
- CHECK_PRODUCT (0, -1, false);
- CHECK_PRODUCT (0, 0, false);
- CHECK_PRODUCT (0, 0u, false);
- CHECK_PRODUCT (0, 1, false);
- CHECK_PRODUCT (0, INT_MAX, false);
- CHECK_PRODUCT (0, INT_MIN, false);
- CHECK_PRODUCT (0, UINT_MAX, false);
- CHECK_PRODUCT (0u, -1, false);
- CHECK_PRODUCT (0u, 0, false);
- CHECK_PRODUCT (0u, 0u, false);
- CHECK_PRODUCT (0u, 1, false);
- CHECK_PRODUCT (0u, INT_MAX, false);
- CHECK_PRODUCT (0u, INT_MIN, false);
- CHECK_PRODUCT (0u, UINT_MAX, false);
- CHECK_PRODUCT (1, INT_MAX, false);
- CHECK_PRODUCT (1, INT_MIN, false);
- CHECK_PRODUCT (1, UINT_MAX, false);
- CHECK_PRODUCT (1u, INT_MIN, true);
- CHECK_PRODUCT (1u, INT_MAX, UINT_MAX < INT_MAX);
- CHECK_PRODUCT (INT_MAX, UINT_MAX, true);
- CHECK_PRODUCT (INT_MAX, ULONG_MAX, true);
- CHECK_PRODUCT (INT_MIN, LONG_MAX / INT_MIN - 1, true);
- CHECK_PRODUCT (INT_MIN, LONG_MAX / INT_MIN, false);
- CHECK_PRODUCT (INT_MIN, UINT_MAX, true);
- CHECK_PRODUCT (INT_MIN, ULONG_MAX, true);
-
- VERIFY (INT_DIVIDE_OVERFLOW (INT_MIN, -1L)
- == (TYPE_TWOS_COMPLEMENT (long int) && INT_MIN == LONG_MIN));
- VERIFY (! INT_DIVIDE_OVERFLOW (INT_MIN, UINT_MAX));
- VERIFY (! INT_DIVIDE_OVERFLOW (INTMAX_MIN, UINTMAX_MAX));
- VERIFY (! INT_DIVIDE_OVERFLOW (INTMAX_MIN, UINT_MAX));
- VERIFY (INT_DIVIDE_OVERFLOW (-11, 10u));
- VERIFY (INT_DIVIDE_OVERFLOW (-10, 10u));
- VERIFY (! INT_DIVIDE_OVERFLOW (-9, 10u));
- VERIFY (INT_DIVIDE_OVERFLOW (11u, -10));
- VERIFY (INT_DIVIDE_OVERFLOW (10u, -10));
- VERIFY (! INT_DIVIDE_OVERFLOW (9u, -10));
-
- VERIFY (INT_REMAINDER_OVERFLOW (INT_MIN, -1L)
- == (TYPE_TWOS_COMPLEMENT (long int) && INT_MIN == LONG_MIN));
- VERIFY (INT_REMAINDER_OVERFLOW (-1, UINT_MAX));
- VERIFY (INT_REMAINDER_OVERFLOW ((intmax_t) -1, UINTMAX_MAX));
- VERIFY (INT_REMAINDER_OVERFLOW (INTMAX_MIN, UINT_MAX)
- == (INTMAX_MAX < UINT_MAX
- && - (unsigned int) INTMAX_MIN % UINT_MAX != 0));
- VERIFY (INT_REMAINDER_OVERFLOW (INT_MIN, ULONG_MAX)
- == (INT_MIN % ULONG_MAX != 1));
- VERIFY (! INT_REMAINDER_OVERFLOW (1u, -1));
- VERIFY (! INT_REMAINDER_OVERFLOW (37*39u, -39));
- VERIFY (INT_REMAINDER_OVERFLOW (37*39u + 1, -39));
- VERIFY (INT_REMAINDER_OVERFLOW (37*39u - 1, -39));
- VERIFY (! INT_REMAINDER_OVERFLOW (LONG_MAX, -INT_MAX));
+
+ CHECK_SBINOP (+, ADD, INT_MAX, 1, int, true, INT_MIN);
+ CHECK_SBINOP (+, ADD, INT_MAX, -1, int, false, INT_MAX - 1);
+ CHECK_SBINOP (+, ADD, INT_MIN, 1, int, false, INT_MIN + 1);
+ CHECK_SBINOP (+, ADD, INT_MIN, -1, int, true, INT_MAX);
+ CHECK_BINOP (+, ADD, UINT_MAX, 1u, unsigned int, true, 0u);
+ CHECK_BINOP (+, ADD, 0u, 1u, unsigned int, false, 1u);
+
+ CHECK_SBINOP (-, SUBTRACT, INT_MAX, 1, int, false, INT_MAX - 1);
+ CHECK_SBINOP (-, SUBTRACT, INT_MAX, -1, int, true, INT_MIN);
+ CHECK_SBINOP (-, SUBTRACT, INT_MIN, 1, int, true, INT_MAX);
+ CHECK_SBINOP (-, SUBTRACT, INT_MIN, -1, int, false, INT_MIN - -1);
+ CHECK_BINOP (-, SUBTRACT, UINT_MAX, 1u, unsigned int, false, UINT_MAX - 1u);
+ CHECK_BINOP (-, SUBTRACT, 0u, 1u, unsigned int, true, 0u - 1u);
+
+ CHECK_UNOP (-, NEGATE, INT_MIN, int, true);
+ CHECK_UNOP (-, NEGATE, 0, int, false);
+ CHECK_UNOP (-, NEGATE, INT_MAX, int, false);
+ CHECK_UNOP (-, NEGATE, 0u, unsigned int, false);
+ CHECK_UNOP (-, NEGATE, 1u, unsigned int, true);
+ CHECK_UNOP (-, NEGATE, UINT_MAX, unsigned int, true);
+
+ CHECK_SBINOP (*, MULTIPLY, INT_MAX, INT_MAX, int, true, 1);
+ CHECK_SBINOP (*, MULTIPLY, INT_MAX, INT_MIN, int, true, INT_MIN);
+ CHECK_SBINOP (*, MULTIPLY, INT_MIN, INT_MAX, int, true, INT_MIN);
+ CHECK_SBINOP (*, MULTIPLY, INT_MIN, INT_MIN, int, true, 0);
+ CHECK_SBINOP (*, MULTIPLY, -1, INT_MIN, int,
+ INT_NEGATE_OVERFLOW (INT_MIN), INT_MIN);
+ CHECK_SBINOP (*, MULTIPLY, LONG_MIN / INT_MAX, (long int) INT_MAX,
+ long int, false, LONG_MIN - LONG_MIN % INT_MAX);
+
+ CHECK_BINOP (/, DIVIDE, INT_MIN, -1, int,
+ INT_NEGATE_OVERFLOW (INT_MIN), INT_MIN);
+ CHECK_BINOP (/, DIVIDE, INT_MAX, 1, int, false, INT_MAX);
+ CHECK_BINOP (/, DIVIDE, (unsigned int) INT_MIN, -1u, unsigned int,
+ false, INT_MIN / -1u);
+
+ CHECK_BINOP (%, REMAINDER, INT_MIN, -1, int, INT_NEGATE_OVERFLOW (INT_MIN), 0);
+ CHECK_BINOP (%, REMAINDER, INT_MAX, 1, int, false, 0);
+ CHECK_BINOP (%, REMAINDER, (unsigned int) INT_MIN, -1u, unsigned int,
+ false, INT_MIN % -1u);
+
+ CHECK_BINOP (<<, LEFT_SHIFT, UINT_MAX, 1, unsigned int, true, UINT_MAX << 1);
+ CHECK_BINOP (<<, LEFT_SHIFT, UINT_MAX / 2 + 1, 1, unsigned int, true,
+ (UINT_MAX / 2 + 1) << 1);
+ CHECK_BINOP (<<, LEFT_SHIFT, UINT_MAX / 2, 1, unsigned int, false,
+ (UINT_MAX / 2) << 1);
+
+ /* INT_<op>_OVERFLOW and INT_<op>_WRAPV with mixed types. */
+ #define CHECK_SUM(a, b, t, v, vres) \
+ CHECK_SUM1(a, b, t, v, vres); \
+ CHECK_SUM1(b, a, t, v, vres)
+ #define CHECK_SSUM(a, b, t, v, vres) \
+ CHECK_SSUM1(a, b, t, v, vres); \
+ CHECK_SSUM1(b, a, t, v, vres)
+ #define CHECK_SUM1(a, b, t, v, vres) \
+ VERIFY (INT_ADD_OVERFLOW (a, b) == (v))
+ #define CHECK_SSUM1(a, b, t, v, vres) \
+ CHECK_SUM1(a, b, t, v, vres); \
+ { \
+ t result; \
+ ASSERT (INT_ADD_WRAPV (a, b, &result) == (v)); \
+ ASSERT (result == ((v) ? (vres) : ((a) + (b)))); \
+ }
+ CHECK_SSUM (-1, LONG_MIN, long int, true, LONG_MAX);
+ CHECK_SUM (-1, UINT_MAX, unsigned int, false, DONTCARE);
+ CHECK_SSUM (-1L, INT_MIN, long int, INT_MIN == LONG_MIN,
+ INT_MIN == LONG_MIN ? INT_MAX : DONTCARE);
+ CHECK_SUM (0u, -1, unsigned int, true, 0u + -1);
+ CHECK_SUM (0u, 0, unsigned int, false, DONTCARE);
+ CHECK_SUM (0u, 1, unsigned int, false, DONTCARE);
+ CHECK_SSUM (1, LONG_MAX, long int, true, LONG_MIN);
+ CHECK_SUM (1, UINT_MAX, unsigned int, true, 0u);
+ CHECK_SSUM (1L, INT_MAX, long int, INT_MAX == LONG_MAX,
+ INT_MAX == LONG_MAX ? INT_MIN : DONTCARE);
+ CHECK_SUM (1u, INT_MAX, unsigned int, INT_MAX == UINT_MAX, 1u + INT_MAX);
+ CHECK_SUM (1u, INT_MIN, unsigned int, true, 1u + INT_MIN);
+ {
+ long int result;
+ ASSERT (INT_ADD_WRAPV (1, INT_MAX, &result) == (INT_MAX == LONG_MAX));
+ ASSERT (INT_ADD_WRAPV (-1, INT_MIN, &result) == (INT_MIN == LONG_MIN));
+ }
+
+ #define CHECK_DIFFERENCE(a, b, t, v, vres) \
+ VERIFY (INT_SUBTRACT_OVERFLOW (a, b) == (v))
+ #define CHECK_SDIFFERENCE(a, b, t, v, vres) \
+ CHECK_DIFFERENCE(a, b, t, v, vres); \
+ { \
+ t result; \
+ ASSERT (INT_SUBTRACT_WRAPV (a, b, &result) == (v)); \
+ ASSERT (result == ((v) ? (vres) : ((a) - (b)))); \
+ }
+ CHECK_DIFFERENCE (INT_MAX, 1u, unsigned int, UINT_MAX < INT_MAX - 1,
+ INT_MAX - 1u);
+ CHECK_DIFFERENCE (UINT_MAX, 1, unsigned int, false, UINT_MAX - 1);
+ CHECK_DIFFERENCE (0u, -1, unsigned int, false, 0u - -1);
+ CHECK_DIFFERENCE (UINT_MAX, -1, unsigned int, true, UINT_MAX - -1);
+ CHECK_DIFFERENCE (INT_MIN, 1u, unsigned int, true, INT_MIN - 1u);
+ CHECK_DIFFERENCE (-1, 0u, unsigned int, true, -1 - 0u);
+ CHECK_SDIFFERENCE (-1, INT_MIN, int, false, -1 - INT_MIN);
+ CHECK_SDIFFERENCE (-1, INT_MAX, int, false, -1 - INT_MAX);
+ CHECK_SDIFFERENCE (0, INT_MIN, int, INT_MIN < -INT_MAX, INT_MIN);
+ CHECK_SDIFFERENCE (0, INT_MAX, int, false, 0 - INT_MAX);
+ {
+ long int result;
+ ASSERT (INT_SUBTRACT_WRAPV (INT_MAX, -1, &result) == (INT_MAX == LONG_MAX));
+ ASSERT (INT_SUBTRACT_WRAPV (INT_MIN, 1, &result) == (INT_MAX == LONG_MAX));
+ }
+
+ #define CHECK_PRODUCT(a, b, t, v, vres) \
+ CHECK_PRODUCT1(a, b, t, v, vres); \
+ CHECK_PRODUCT1(b, a, t, v, vres)
+ #define CHECK_SPRODUCT(a, b, t, v, vres) \
+ CHECK_SPRODUCT1(a, b, t, v, vres); \
+ CHECK_SPRODUCT1(b, a, t, v, vres)
+ #define CHECK_PRODUCT1(a, b, t, v, vres) \
+ VERIFY (INT_MULTIPLY_OVERFLOW (a, b) == (v))
+ #define CHECK_SPRODUCT1(a, b, t, v, vres) \
+ CHECK_PRODUCT1(a, b, t, v, vres); \
+ { \
+ t result; \
+ ASSERT (INT_MULTIPLY_WRAPV (a, b, &result) == (v)); \
+ ASSERT (result == ((v) ? (vres) : ((a) * (b)))); \
+ }
+ CHECK_PRODUCT (-1, 1u, unsigned int, true, -1 * 1u);
+ CHECK_SPRODUCT (-1, INT_MIN, int, INT_NEGATE_OVERFLOW (INT_MIN), INT_MIN);
+ CHECK_PRODUCT (-1, UINT_MAX, unsigned int, true, -1 * UINT_MAX);
+ CHECK_SPRODUCT (-32768, LONG_MAX / -32768 - 1, long int, true, LONG_MIN);
+ CHECK_SPRODUCT (-12345, LONG_MAX / -12345, long int, false, DONTCARE);
+ CHECK_SPRODUCT (0, -1, int, false, DONTCARE);
+ CHECK_SPRODUCT (0, 0, int, false, DONTCARE);
+ CHECK_PRODUCT (0, 0u, unsigned int, false, DONTCARE);
+ CHECK_SPRODUCT (0, 1, int, false, DONTCARE);
+ CHECK_SPRODUCT (0, INT_MAX, int, false, DONTCARE);
+ CHECK_SPRODUCT (0, INT_MIN, int, false, DONTCARE);
+ CHECK_PRODUCT (0, UINT_MAX, unsigned int, false, DONTCARE);
+ CHECK_PRODUCT (0u, -1, unsigned int, false, DONTCARE);
+ CHECK_PRODUCT (0u, 0, unsigned int, false, DONTCARE);
+ CHECK_PRODUCT (0u, 0u, unsigned int, false, DONTCARE);
+ CHECK_PRODUCT (0u, 1, unsigned int, false, DONTCARE);
+ CHECK_PRODUCT (0u, INT_MAX, unsigned int, false, DONTCARE);
+ CHECK_PRODUCT (0u, INT_MIN, unsigned int, false, DONTCARE);
+ CHECK_PRODUCT (0u, UINT_MAX, unsigned int, false, DONTCARE);
+ CHECK_SPRODUCT (1, INT_MAX, int, false, DONTCARE);
+ CHECK_SPRODUCT (1, INT_MIN, int, false, DONTCARE);
+ CHECK_PRODUCT (1, UINT_MAX, unsigned int, false, DONTCARE);
+ CHECK_PRODUCT (1u, INT_MIN, unsigned int, true, 1u * INT_MIN);
+ CHECK_PRODUCT (1u, INT_MAX, unsigned int, UINT_MAX < INT_MAX, 1u * INT_MAX);
+ CHECK_PRODUCT (INT_MAX, UINT_MAX, unsigned int, true, INT_MAX * UINT_MAX);
+ CHECK_PRODUCT (INT_MAX, ULONG_MAX, unsigned long int, true,
+ INT_MAX * ULONG_MAX);
+ CHECK_SPRODUCT (INT_MIN, LONG_MAX / INT_MIN - 1, long int, true, LONG_MIN);
+ CHECK_SPRODUCT (INT_MIN, LONG_MAX / INT_MIN, long int, false, DONTCARE);
+ CHECK_PRODUCT (INT_MIN, UINT_MAX, unsigned int, true, INT_MIN * UINT_MAX);
+ CHECK_PRODUCT (INT_MIN, ULONG_MAX, unsigned long int, true,
+ INT_MIN * ULONG_MAX);
+ {
+ long int result;
+ ASSERT (INT_MULTIPLY_WRAPV (INT_MAX, INT_MAX, &result)
+ == (LONG_MAX / INT_MAX < INT_MAX));
+ ASSERT (INT_MULTIPLY_WRAPV (INT_MAX, INT_MAX, &result)
+ || result == INT_MAX * (long int) INT_MAX);
+ ASSERT (INT_MULTIPLY_WRAPV (INT_MIN, INT_MIN, &result)
+ || result == INT_MIN * (long int) INT_MIN);
+ }
+
+# ifdef LLONG_MAX
+ {
+ long long int result;
+ ASSERT (INT_MULTIPLY_WRAPV (LONG_MAX, LONG_MAX, &result)
+ == (LLONG_MAX / LONG_MAX < LONG_MAX));
+ ASSERT (INT_MULTIPLY_WRAPV (LONG_MAX, LONG_MAX, &result)
+ || result == LONG_MAX * (long long int) LONG_MAX);
+ ASSERT (INT_MULTIPLY_WRAPV (LONG_MIN, LONG_MIN, &result)
+ || result == LONG_MIN * (long long int) LONG_MIN);
+ }
+# endif
+
+ #define CHECK_QUOTIENT(a, b, v) VERIFY (INT_DIVIDE_OVERFLOW (a, b) == (v))
+
+ CHECK_QUOTIENT (INT_MIN, -1L, INT_MIN == LONG_MIN);
+ CHECK_QUOTIENT (INT_MIN, UINT_MAX, false);
+ CHECK_QUOTIENT (INTMAX_MIN, UINTMAX_MAX, false);
+ CHECK_QUOTIENT (INTMAX_MIN, UINT_MAX, false);
+ CHECK_QUOTIENT (-11, 10u, true);
+ CHECK_QUOTIENT (-10, 10u, true);
+ CHECK_QUOTIENT (-9, 10u, false);
+ CHECK_QUOTIENT (11u, -10, true);
+ CHECK_QUOTIENT (10u, -10, true);
+ CHECK_QUOTIENT (9u, -10, false);
+
+ #define CHECK_REMAINDER(a, b, v) VERIFY (INT_REMAINDER_OVERFLOW (a, b) == (v))
+
+ CHECK_REMAINDER (INT_MIN, -1L, INT_MIN == LONG_MIN);
+ CHECK_REMAINDER (-1, UINT_MAX, true);
+ CHECK_REMAINDER ((intmax_t) -1, UINTMAX_MAX, true);
+ CHECK_REMAINDER (INTMAX_MIN, UINT_MAX,
+ (INTMAX_MAX < UINT_MAX
+ && - (unsigned int) INTMAX_MIN % UINT_MAX != 0));
+ CHECK_REMAINDER (INT_MIN, ULONG_MAX, INT_MIN % ULONG_MAX != 1);
+ CHECK_REMAINDER (1u, -1, false);
+ CHECK_REMAINDER (37*39u, -39, false);
+ CHECK_REMAINDER (37*39u + 1, -39, true);
+ CHECK_REMAINDER (37*39u - 1, -39, true);
+ CHECK_REMAINDER (LONG_MAX, -INT_MAX, false);
return 0;
}
/* Test inttostr functions, and incidentally, INT_BUFSIZE_BOUND
- Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Copyright (C) 2010-2016 Free Software Foundation, Inc.
This 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 "macros.h"
#define STREQ(a, b) (strcmp (a, b) == 0)
-#define FMT(T) (TYPE_SIGNED (T) ? "%jd" : "%ju")
-#define CAST_VAL(T,V) (TYPE_SIGNED (T) ? (intmax_t) (V) : (uintmax_t) (V))
-#define V_min(T) (CAST_VAL (T, TYPE_MINIMUM (T)))
-#define V_max(T) (CAST_VAL (T, TYPE_MAXIMUM (T)))
#define IS_TIGHT(T) (_GL_SIGNED_TYPE_OR_EXPR (T) == TYPE_SIGNED (T))
#define ISDIGIT(c) ((unsigned int) (c) - '0' <= 9)
char const *p; \
ASSERT (buf); \
*buf = '\0'; \
- ASSERT (snprintf (ref, sizeof ref, FMT (T), V_min (T)) < sizeof ref); \
+ ASSERT \
+ ((TYPE_SIGNED (T) \
+ ? snprintf (ref, sizeof ref, "%jd", (intmax_t) TYPE_MINIMUM (T)) \
+ : snprintf (ref, sizeof ref, "%ju", (uintmax_t) TYPE_MINIMUM (T))) \
+ < sizeof ref); \
ASSERT (STREQ ((p = Fn (TYPE_MINIMUM (T), buf)), ref)); \
/* Ensure that INT_BUFSIZE_BOUND is tight for signed types. */ \
ASSERT (! TYPE_SIGNED (T) || (p == buf && *p == '-')); \
- ASSERT (snprintf (ref, sizeof ref, FMT (T), V_max (T)) < sizeof ref); \
+ ASSERT \
+ ((TYPE_SIGNED (T) \
+ ? snprintf (ref, sizeof ref, "%jd", (intmax_t) TYPE_MAXIMUM (T)) \
+ : snprintf (ref, sizeof ref, "%ju", (uintmax_t) TYPE_MAXIMUM (T))) \
+ < sizeof ref); \
ASSERT (STREQ ((p = Fn (TYPE_MAXIMUM (T), buf)), ref)); \
/* For unsigned types, the bound is not always tight. */ \
ASSERT (! IS_TIGHT (T) || TYPE_SIGNED (T) \
CK (off_t, offtostr);
CK (uintmax_t, umaxtostr);
CK (intmax_t, imaxtostr);
+ free (b);
return 0;
}
/* snprintf doesn't accept %ju; skip this test. */
+ free (b);
return 77;
}
/* Test of <inttypes.h> substitute.
- Copyright (C) 2006-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2006-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Test of ioctl() function.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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>
+
+/* Specification. */
+#include <sys/ioctl.h>
+
+#include "signature.h"
+SIGNATURE_CHECK (ioctl, int, (int, int, ...));
+
+#include <errno.h>
+#include <unistd.h>
+
+#include "macros.h"
+
+int
+main (void)
+{
+#ifdef FIONREAD
+ /* Test behaviour for invalid file descriptors. */
+ {
+ int value;
+ errno = 0;
+ ASSERT (ioctl (-1, FIONREAD, &value) == -1);
+ ASSERT (errno == EBADF);
+ }
+ {
+ int value;
+ close (99);
+ errno = 0;
+ ASSERT (ioctl (99, FIONREAD, &value) == -1);
+ ASSERT (errno == EBADF);
+ }
+#endif
+
+ return 0;
+}
--- /dev/null
+/* Test of isblank() function.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2009. */
+
+#include <config.h>
+
+#include <ctype.h>
+
+#include "signature.h"
+SIGNATURE_CHECK (isblank, int, (int));
+
+#include <limits.h>
+#include <stdio.h>
+
+#include "macros.h"
+
+int
+main (int argc, char *argv[])
+{
+ unsigned int c;
+
+ /* Verify the property in the "C" locale.
+ POSIX specifies in
+ <http://www.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap07.html>
+ that
+ - in all locales, the blank characters include the <space> and <tab>
+ characters,
+ - in the "POSIX" locale (which is usually the same as the "C" locale),
+ the blank characters include only the ASCII <space> and <tab>
+ characters. */
+ for (c = 0; c <= UCHAR_MAX; c++)
+ ASSERT (!isblank (c) == !(c == ' ' || c == '\t'));
+ ASSERT (!isblank (EOF));
+
+ return 0;
+}
/* Test of iswblank() function.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of <langinfo.h> substitute.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Test listen() function.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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 <sys/socket.h>
+
+#include "signature.h"
+SIGNATURE_CHECK (listen, int, (int, int));
+
+#include <errno.h>
+#include <unistd.h>
+
+#include "sockets.h"
+#include "macros.h"
+
+int
+main (void)
+{
+ (void) gl_sockets_startup (SOCKETS_1_1);
+
+ /* Test behaviour for invalid file descriptors. */
+ {
+ errno = 0;
+ ASSERT (listen (-1, 1) == -1);
+ ASSERT (errno == EBADF);
+ }
+ {
+ close (99);
+ errno = 0;
+ ASSERT (listen (99 ,1) == -1);
+ ASSERT (errno == EBADF);
+ }
+
+ return 0;
+}
/* Test of <locale.h> substitute.
- Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
LC_TIME
};
-#if HAVE_NEWLOCALE
-/* Check that the locale_t type and the LC_GLOBAL_LOCALE macro are defined. */
-locale_t b = LC_GLOBAL_LOCALE;
-#endif
-
/* Check that the 'struct lconv' type is defined. */
struct lconv l;
int ls;
int
main ()
{
+#if HAVE_NEWLOCALE
+ /* Check that the locale_t type and the LC_GLOBAL_LOCALE macro are defined. */
+ locale_t b = LC_GLOBAL_LOCALE;
+ (void) b;
+#endif
+
/* Check that 'struct lconv' has the ISO C and POSIX specified members. */
ls += sizeof (*l.decimal_point);
ls += sizeof (*l.thousands_sep);
/* Test of localeconv() function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
+ Copyright (C) 2012-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of lstat() function.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of lstat() function.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of safe automatic memory allocation.
- Copyright (C) 2005, 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2005, 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of conversion of multibyte character to wide character.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of conversion of multibyte character to wide character.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
memset (&state, '\0', sizeof (mbstate_t));
wc = (wchar_t) 0xBADFACE;
ret = mbrtowc (&wc, "x", 0, &state);
- /* gnulib's implementation returns (size_t)(-2).
- The AIX 5.1 implementation returns (size_t)(-1).
- glibc's implementation returns 0. */
- ASSERT (ret == (size_t)(-2) || ret == (size_t)(-1) || ret == 0);
+ ASSERT (ret == (size_t)(-2));
ASSERT (mbsinit (&state));
}
for (c = 0; c < 0x100; c++)
switch (c)
{
+ default:
+ if (! (c && 1 < argc && argv[1][0] == '5'))
+ break;
+ /* Fall through. */
case '\t': case '\v': case '\f':
case ' ': case '!': case '"': case '#': case '%':
case '&': case '\'': case '(': case ')': case '*':
case 'p': case 'q': case 'r': case 's': case 't':
case 'u': case 'v': case 'w': case 'x': case 'y':
case 'z': case '{': case '|': case '}': case '~':
- /* c is in the ISO C "basic character set". */
+ /* c is in the ISO C "basic character set", or argv[1] starts
+ with '5' so we are testing all nonnull bytes. */
buf[0] = c;
wc = (wchar_t) 0xBADFACE;
ret = mbrtowc (&wc, buf, 1, &state);
ASSERT (mbsinit (&state));
}
return 0;
+
+ case '5':
+ /* C locale; tested above. */
+ return 0;
}
return 1;
--- /dev/null
+#!/bin/sh
+# Test whether the POSIX locale has encoding errors.
+LC_ALL=C \
+./test-mbrtowc${EXEEXT} 5 || exit
+LC_ALL=POSIX \
+./test-mbrtowc${EXEEXT} 5
/* Test of case-insensitive string comparison function.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of test for initial conversion state.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of conversion of string to wide string.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of searching in a string.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of searching in a string.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of searching in a string.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/*
- * Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ * Copyright (C) 2008-2016 Free Software Foundation, Inc.
* Written by Eric Blake and Bruno Haible
*
* This program is free software: you can redistribute it and/or modify
--- /dev/null
+/* Test of nanosleep() function.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Eric Blake <ebb9@byu.net>, 2009. */
+
+#include <config.h>
+
+#include <time.h>
+
+#include "signature.h"
+SIGNATURE_CHECK (nanosleep, int, (struct timespec const *, struct timespec *));
+
+#include <errno.h>
+#include <signal.h>
+#include <unistd.h>
+
+#include "macros.h"
+
+#if HAVE_DECL_ALARM
+static void
+handle_alarm (int sig)
+{
+ if (sig != SIGALRM)
+ _exit (1);
+}
+#endif
+
+int
+main (void)
+{
+ struct timespec ts;
+
+ ts.tv_sec = 1000;
+ ts.tv_nsec = -1;
+ errno = 0;
+ ASSERT (nanosleep (&ts, NULL) == -1);
+ ASSERT (errno == EINVAL);
+ ts.tv_nsec = 1000000000;
+ errno = 0;
+ ASSERT (nanosleep (&ts, NULL) == -1);
+ ASSERT (errno == EINVAL);
+
+ ts.tv_sec = 0;
+ ts.tv_nsec = 1;
+ ASSERT (nanosleep (&ts, &ts) == 0);
+ /* Remaining time is only defined on EINTR failure; but on success,
+ it is typically either 0 or unchanged from input. At any rate,
+ it shouldn't be randomly changed to unrelated values. */
+ ASSERT (ts.tv_sec == 0);
+ ASSERT (ts.tv_nsec == 0 || ts.tv_nsec == 1);
+ ts.tv_nsec = 0;
+ ASSERT (nanosleep (&ts, NULL) == 0);
+
+#if HAVE_DECL_ALARM
+ {
+ const time_t pentecost = 50 * 24 * 60 * 60; /* 50 days. */
+ signal (SIGALRM, handle_alarm);
+ alarm (1);
+ ts.tv_sec = pentecost;
+ ts.tv_nsec = 999999999;
+ errno = 0;
+ ASSERT (nanosleep (&ts, &ts) == -1);
+ ASSERT (errno == EINTR);
+ ASSERT (pentecost - 10 < ts.tv_sec && ts.tv_sec <= pentecost);
+ ASSERT (0 <= ts.tv_nsec && ts.tv_nsec <= 999999999);
+ }
+#endif
+
+ return 0;
+}
--- /dev/null
+/* Test of <netinet/in.h> substitute.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2007. */
+
+#include <config.h>
+
+#include <netinet/in.h>
+
+int
+main (void)
+{
+ return 0;
+}
/* Test of nl_langinfo replacement.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of opening a file descriptor.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of opening a file descriptor.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Written by Bruno Haible <bruno@clisp.org>, 2007. */
+/* Make test_open always inline if we're using Fortify, which defines
+ __always_inline to do that. Do nothing otherwise. This works
+ around a glibc bug whereby 'open' cannot be used as a function
+ pointer when _FORTIFY_SOURCE is positive. */
+
+#if __GLIBC__ && defined __always_inline
+# define ALWAYS_INLINE __always_inline
+#else
+# define ALWAYS_INLINE
+#endif
+
/* This file is designed to test both open(n,buf[,mode]) and
openat(AT_FDCWD,n,buf[,mode]). FUNC is the function to test.
Assumes that BASE and ASSERT are already defined, and that
appropriate headers are already included. If PRINT, warn before
skipping symlink tests with status 77. */
-static int
+static ALWAYS_INLINE int
test_open (int (*func) (char const *, int, ...), bool print)
{
int fd;
/* Test of "pathmax.h".
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Test of perror() function.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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 <http://www.gnu.org/licenses/>. */
+
+#include <config.h>
+
+#include <stdio.h>
+
+#include "signature.h"
+SIGNATURE_CHECK (perror, void, (char const *));
+
+#include <errno.h>
+
+int
+main (int argc, char **argv)
+{
+ const char *prefix = (argc > 1 ? argv[1] : NULL);
+
+ errno = EACCES; perror (prefix);
+ errno = ETIMEDOUT; perror (prefix);
+ errno = EOVERFLOW; perror (prefix);
+
+ return 0;
+}
--- /dev/null
+#!/bin/sh
+: ${srcdir=.}
+. "$srcdir/init.sh"; path_prepend_ .
+
+# Test NULL prefix. Result should not contain a number.
+test-perror 2>&1 >/dev/null | LC_ALL=C tr -d '\r' > t-perror.tmp
+grep '[0-9]' t-perror.tmp > /dev/null \
+ && fail_ "result should not contain a number"
+
+# Test empty prefix. Result should be the same.
+test-perror '' 2>&1 >/dev/null | LC_ALL=C tr -d '\r' > t-perror1.tmp
+diff t-perror.tmp t-perror1.tmp \
+ || fail_ "empty prefix should behave like NULL argument"
+
+# Test non-empty prefix.
+test-perror foo 2>&1 >/dev/null | LC_ALL=C tr -d '\r' > t-perror3.tmp
+sed -e 's/^/foo: /' < t-perror.tmp > t-perror2.tmp
+diff t-perror2.tmp t-perror3.tmp || fail_ "prefix applied incorrectly"
+
+# Test exit status.
+test-perror >out 2>/dev/null || fail_ "unexpected exit status"
+test -s out && fail_ "unexpected output"
+
+Exit 0
--- /dev/null
+/* Test of perror() function.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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 <http://www.gnu.org/licenses/>. */
+
+#include <config.h>
+
+#include <stdio.h>
+
+#include <errno.h>
+#include <string.h>
+#include <unistd.h>
+
+/* This test intentionally parses stderr. So, we arrange to have fd 10
+ (outside the range of interesting fd's during the test) set up to
+ duplicate the original stderr. */
+#define BACKUP_STDERR_FILENO 10
+#define ASSERT_STREAM myerr
+#include "macros.h"
+
+static FILE *myerr;
+
+#define BASE "test-perror2"
+
+int
+main (void)
+{
+ /* We change fd 2 later, so save it in fd 10. */
+ if (dup2 (STDERR_FILENO, BACKUP_STDERR_FILENO) != BACKUP_STDERR_FILENO
+ || (myerr = fdopen (BACKUP_STDERR_FILENO, "w")) == NULL)
+ return 2;
+
+ ASSERT (freopen (BASE ".tmp", "w+", stderr) == stderr);
+
+ /* Test that perror does not clobber strerror buffer. */
+ {
+ const char *msg1;
+ const char *msg2;
+ const char *msg3;
+ const char *msg4;
+ char *str1;
+ char *str2;
+ char *str3;
+ char *str4;
+
+ msg1 = strerror (ENOENT);
+ ASSERT (msg1);
+ str1 = strdup (msg1);
+ ASSERT (str1);
+
+ msg2 = strerror (ERANGE);
+ ASSERT (msg2);
+ str2 = strdup (msg2);
+ ASSERT (str2);
+
+ msg3 = strerror (-4);
+ ASSERT (msg3);
+ str3 = strdup (msg3);
+ ASSERT (str3);
+
+ msg4 = strerror (1729576);
+ ASSERT (msg4);
+ str4 = strdup (msg4);
+ ASSERT (str4);
+
+ errno = EACCES;
+ perror ("");
+ errno = -5;
+ perror ("");
+ ASSERT (!ferror (stderr));
+ ASSERT (msg1 == msg2 || msg1 == msg4 || STREQ (msg1, str1));
+ ASSERT (msg2 == msg4 || STREQ (msg2, str2));
+ ASSERT (msg3 == msg4 || STREQ (msg3, str3));
+ ASSERT (STREQ (msg4, str4));
+
+ free (str1);
+ free (str2);
+ free (str3);
+ free (str4);
+ }
+
+ /* Test that perror uses the same message as strerror. */
+ {
+ int errs[] = { EACCES, 0, -3, };
+ int i;
+ for (i = 0; i < SIZEOF (errs); i++)
+ {
+ char buf[256];
+ char *err = strerror (errs[i]);
+
+ ASSERT (err);
+ ASSERT (strlen (err) < sizeof buf);
+ rewind (stderr);
+ ASSERT (ftruncate (fileno (stderr), 0) == 0);
+ errno = errs[i];
+ perror (NULL);
+ ASSERT (!ferror (stderr));
+ rewind (stderr);
+ ASSERT (fgets (buf, sizeof buf, stderr) == buf);
+ ASSERT (strstr (buf, err));
+ }
+ }
+
+ /* Test that perror reports write failure. */
+ {
+ ASSERT (freopen (BASE ".tmp", "r", stderr) == stderr);
+ ASSERT (setvbuf (stderr, NULL, _IONBF, BUFSIZ) == 0);
+ errno = -1;
+ ASSERT (!ferror (stderr));
+ perror (NULL);
+#if 0
+ /* Commented out until cygwin behaves:
+ http://sourceware.org/ml/newlib/2011/msg00228.html */
+ ASSERT (errno > 0);
+ /* Commented out until glibc behaves:
+ http://sourceware.org/bugzilla/show_bug.cgi?id=12792 */
+ ASSERT (ferror (stderr));
+#endif
+ }
+
+ ASSERT (fclose (stderr) == 0);
+ ASSERT (remove (BASE ".tmp") == 0);
+
+ return 0;
+}
--- /dev/null
+/* Test of pipe.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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 <http://www.gnu.org/licenses/>. */
+
+#include <config.h>
+
+#include <unistd.h>
+
+#include "signature.h"
+SIGNATURE_CHECK (pipe, int, (int[2]));
+
+#include <fcntl.h>
+#include <stdbool.h>
+
+#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
+/* Get declarations of the native Windows API functions. */
+# define WIN32_LEAN_AND_MEAN
+# include <windows.h>
+/* Get _get_osfhandle. */
+# include "msvc-nothrow.h"
+#endif
+
+#include "binary-io.h"
+#include "macros.h"
+
+/* Return true if FD is open. */
+static bool
+is_open (int fd)
+{
+#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
+ /* On native Windows, the initial state of unassigned standard file
+ descriptors is that they are open but point to an
+ INVALID_HANDLE_VALUE, and there is no fcntl. */
+ return (HANDLE) _get_osfhandle (fd) != INVALID_HANDLE_VALUE;
+#else
+# ifndef F_GETFL
+# error Please port fcntl to your platform
+# endif
+ return 0 <= fcntl (fd, F_GETFL);
+#endif
+}
+
+/* Return true if FD is not inherited to child processes. */
+static bool
+is_cloexec (int fd)
+{
+#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
+ HANDLE h = (HANDLE) _get_osfhandle (fd);
+ DWORD flags;
+ ASSERT (GetHandleInformation (h, &flags));
+ return (flags & HANDLE_FLAG_INHERIT) == 0;
+#else
+ int flags;
+ ASSERT ((flags = fcntl (fd, F_GETFD)) >= 0);
+ return (flags & FD_CLOEXEC) != 0;
+#endif
+}
+
+/* Return true if FD is in non-blocking mode. */
+static bool
+is_nonblocking (int fd)
+{
+#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
+ /* We don't use the non-blocking mode for sockets here. */
+ return 0;
+#else
+ int flags;
+ ASSERT ((flags = fcntl (fd, F_GETFL)) >= 0);
+ return (flags & O_NONBLOCK) != 0;
+#endif
+}
+
+int
+main ()
+{
+ int fd[2];
+
+ fd[0] = -1;
+ fd[1] = -1;
+ ASSERT (pipe (fd) >= 0);
+ ASSERT (fd[0] >= 0);
+ ASSERT (fd[1] >= 0);
+ ASSERT (fd[0] != fd[1]);
+ ASSERT (is_open (fd[0]));
+ ASSERT (is_open (fd[1]));
+ ASSERT (!is_cloexec (fd[0]));
+ ASSERT (!is_cloexec (fd[1]));
+ ASSERT (!is_nonblocking (fd[0]));
+ ASSERT (!is_nonblocking (fd[1]));
+
+ return 0;
+}
/* Test of quotearg family of functions.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This 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 "localcharset.h"
#include "progname.h"
#include "macros.h"
+#include "zerosize-ptr.h"
#include "test-quotearg.h"
{ "''", "'1'", 3, "'simple'", "' \t\n'\\''\"\033?""?/\\'", "'a:b'",
"'a\\b'", "'" LQ RQ "'", "'" LQ RQ "'" } },
+ /* shell_escape_quoting_style */
+ { { "''", "''$'\\0''1'$'\\0'", 15, "simple",
+ "' '$'\\t\\n'\\''\"'$'\\033''?""?/\\'", "a:b",
+ "'a\\b'", "''$'" LQ_ENC RQ_ENC "'", LQ RQ },
+ { "''", "''$'\\0''1'$'\\0'", 15, "simple",
+ "' '$'\\t\\n'\\''\"'$'\\033''?""?/\\'", "a:b",
+ "'a\\b'", "''$'" LQ_ENC RQ_ENC "'", LQ RQ },
+ { "''", "''$'\\0''1'$'\\0'", 15, "simple",
+ "' '$'\\t\\n'\\''\"'$'\\033''?""?/\\'", "'a:b'",
+ "'a\\b'", "''$'" LQ_ENC RQ_ENC "'", LQ RQ } },
+
+ /* shell_escape_always_quoting_style */
+ { { "''", "''$'\\0''1'$'\\0'", 15, "'simple'",
+ "' '$'\\t\\n'\\''\"'$'\\033''?""?/\\'", "'a:b'",
+ "'a\\b'", "''$'" LQ_ENC RQ_ENC "'", "'" LQ RQ "'" },
+ { "''", "''$'\\0''1'$'\\0'", 15, "'simple'",
+ "' '$'\\t\\n'\\''\"'$'\\033''?""?/\\'", "'a:b'",
+ "'a\\b'", "''$'" LQ_ENC RQ_ENC "'", "'" LQ RQ "'" },
+ { "''", "''$'\\0''1'$'\\0'", 15, "'simple'",
+ "' '$'\\t\\n'\\''\"'$'\\033''?""?/\\'", "'a:b'",
+ "'a\\b'", "''$'" LQ_ENC RQ_ENC "'", "'" LQ RQ "'" } },
+
/* c_quoting_style */
{ { "\"\"", "\"\\0001\\0\"", 9, "\"simple\"",
"\" \\t\\n'\\\"\\033?""?/\\\\\"", "\"a:b\"", "\"a\\\\b\"",
ascii_only);
}
+ {
+ /* Trigger the bug whereby quotearg_buffer would read beyond the NUL
+ that defines the end of the string being quoted. Use an input
+ string whose NUL is the last byte before an unreadable page. */
+ char *z = zerosize_ptr ();
+
+ if (z)
+ {
+ size_t q_len = 1024;
+ char *q = malloc (q_len + 1);
+ char buf[10];
+ memset (q, 'Q', q_len);
+ q[q_len] = 0;
+
+ /* Z points to the boundary between a readable/writable page
+ and one that is neither readable nor writable. Position
+ our string so its NUL is at the end of the writable one. */
+ char const *str = "____";
+ size_t s_len = strlen (str);
+ z -= s_len + 1;
+ memcpy (z, str, s_len + 1);
+
+ set_custom_quoting (NULL, q, q);
+ /* Whether this actually triggers a SEGV depends on the
+ implementation of memcmp: whether it compares only byte-at-
+ a-time, and from left to right (no SEGV) or some other way. */
+ size_t n = quotearg_buffer (buf, sizeof buf, z, SIZE_MAX, NULL);
+ ASSERT (n == s_len + 2 * q_len);
+ ASSERT (memcmp (buf, q, sizeof buf) == 0);
+ free (q);
+ }
+ }
+
quotearg_free ();
+
return 0;
}
/* Test of quotearg family of functions.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test raising a signal.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/*
+ * Copyright (C) 2008-2016 Free Software Foundation, Inc.
+ * Written by Eric Blake and Bruno Haible
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3 of the License, or
+ * (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 <string.h>
+
+#include "signature.h"
+SIGNATURE_CHECK (rawmemchr, void *, (void const *, int));
+
+#include <stdlib.h>
+
+#include "zerosize-ptr.h"
+#include "macros.h"
+
+/* Calculating void * + int is not portable, so this wrapper converts
+ to char * to make the tests easier to write. */
+#define RAWMEMCHR (char *) rawmemchr
+
+int
+main (void)
+{
+ size_t n = 0x100000;
+ char *input = malloc (n + 1);
+ ASSERT (input);
+
+ input[0] = 'a';
+ input[1] = 'b';
+ memset (input + 2, 'c', 1024);
+ memset (input + 1026, 'd', n - 1028);
+ input[n - 2] = 'e';
+ input[n - 1] = 'a';
+ input[n] = '\0';
+
+ /* Basic behavior tests. */
+ ASSERT (RAWMEMCHR (input, 'a') == input);
+ ASSERT (RAWMEMCHR (input, 'b') == input + 1);
+ ASSERT (RAWMEMCHR (input, 'c') == input + 2);
+ ASSERT (RAWMEMCHR (input, 'd') == input + 1026);
+
+ ASSERT (RAWMEMCHR (input + 1, 'a') == input + n - 1);
+ ASSERT (RAWMEMCHR (input + 1, 'e') == input + n - 2);
+ ASSERT (RAWMEMCHR (input + 1, 0x789abc00 | 'e') == input + n - 2);
+
+ ASSERT (RAWMEMCHR (input, '\0') == input + n);
+
+ /* Alignment tests. */
+ {
+ int i, j;
+ for (i = 0; i < 32; i++)
+ {
+ for (j = 0; j < 256; j++)
+ input[i + j] = j;
+ for (j = 0; j < 256; j++)
+ {
+ ASSERT (RAWMEMCHR (input + i, j) == input + i + j);
+ }
+ }
+ }
+
+ /* Ensure that no unaligned oversized reads occur. */
+ {
+ char *page_boundary = (char *) zerosize_ptr ();
+ size_t i;
+
+ if (!page_boundary)
+ page_boundary = input + 4096;
+ memset (page_boundary - 512, '1', 511);
+ page_boundary[-1] = '2';
+ for (i = 1; i <= 512; i++)
+ ASSERT (RAWMEMCHR (page_boundary - i, (i * 0x01010100) | '2')
+ == page_boundary - 1);
+ }
+
+ free (input);
+
+ return 0;
+}
/* Tests of readlink.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Tests of readlink.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test regular expressions
- Copyright 1996-2001, 2003-2013 Free Software Foundation, Inc.
+ Copyright 1996-2001, 2003-2016 Free Software Foundation, Inc.
This 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 <locale.h>
#include <limits.h>
+#include <stdlib.h>
#include <string.h>
#if HAVE_DECL_ALARM
# include <unistd.h>
s = re_compile_pattern (pat, sizeof pat - 1, ®ex);
if (s)
result |= 1;
- else if (re_search (®ex, data, sizeof data - 1,
- 0, sizeof data - 1, ®s)
- != -1)
- result |= 1;
+ else
+ {
+ memset (®s, 0, sizeof regs);
+ if (re_search (®ex, data, sizeof data - 1,
+ 0, sizeof data - 1, ®s)
+ != -1)
+ result |= 1;
+ regfree (®ex);
+ free (regs.start);
+ free (regs.end);
+ }
}
/* Check whether it's really a UTF-8 locale.
*/
static char const pat[] = "[^x]x";
static char const data[] =
- "\xe1\x80\x80\xe1\x80\xbb\xe1\x80\xbd\xe1\x80\x94\xe1\x80"
- "\xba\xe1\x80\xaf\xe1\x80\x95\xe1\x80\xbax";
+ /* <U1000><U103B><U103D><U1014><U103A><U102F><U1015><U103A> */
+ "\xe1\x80\x80"
+ "\xe1\x80\xbb"
+ "\xe1\x80\xbd"
+ "\xe1\x80\x94"
+ "\xe1\x80\xba"
+ "\xe1\x80\xaf"
+ "\xe1\x80\x95"
+ "\xe1\x80\xba"
+ "x";
re_set_syntax (0);
memset (®ex, 0, sizeof regex);
s = re_compile_pattern (pat, sizeof pat - 1, ®ex);
if (s)
result |= 1;
- else if (re_search (®ex, data, sizeof data - 1,
- 0, sizeof data - 1, 0)
- != 21)
- result |= 1;
+ else
+ {
+ memset (®s, 0, sizeof regs);
+ i = re_search (®ex, data, sizeof data - 1,
+ 0, sizeof data - 1, 0);
+ if (i != 0 && i != 21)
+ result |= 1;
+ regfree (®ex);
+ free (regs.start);
+ free (regs.end);
+ }
}
if (! setlocale (LC_ALL, "C"))
if (s)
result |= 2;
/* This should fail, but succeeds for glibc-2.5. */
- else if (re_search (®ex, "a\nb", 3, 0, 3, ®s) != -1)
- result |= 2;
+ else
+ {
+ memset (®s, 0, sizeof regs);
+ if (re_search (®ex, "a\nb", 3, 0, 3, ®s) != -1)
+ result |= 2;
+ regfree (®ex);
+ free (regs.start);
+ free (regs.end);
+ }
/* This regular expression is from Spencer ere test number 75
in grep-2.3. */
s = re_compile_pattern ("a[[:@:>@:]]b\n", 11, ®ex);
/* This should fail with _Invalid character class name_ error. */
if (!s)
- result |= 4;
+ {
+ result |= 4;
+ regfree (®ex);
+ }
/* Ensure that [b-a] is diagnosed as invalid, when
using RE_NO_EMPTY_RANGES. */
memset (®ex, 0, sizeof regex);
s = re_compile_pattern ("a[b-a]", 6, ®ex);
if (s == 0)
- result |= 8;
+ {
+ result |= 8;
+ regfree (®ex);
+ }
/* This should succeed, but does not for glibc-2.1.3. */
memset (®ex, 0, sizeof regex);
s = re_compile_pattern ("{1", 2, ®ex);
if (s)
result |= 8;
+ else
+ regfree (®ex);
/* The following example is derived from a problem report
against gawk from Jorge Stolfi <stolfi@ic.unicamp.br>. */
if (s)
result |= 8;
/* This should match, but does not for glibc-2.2.1. */
- else if (re_match (®ex, "an", 2, 0, ®s) != 2)
- result |= 8;
+ else
+ {
+ memset (®s, 0, sizeof regs);
+ if (re_match (®ex, "an", 2, 0, ®s) != 2)
+ result |= 8;
+ regfree (®ex);
+ free (regs.start);
+ free (regs.end);
+ }
memset (®ex, 0, sizeof regex);
s = re_compile_pattern ("x", 1, ®ex);
if (s)
result |= 8;
/* glibc-2.2.93 does not work with a negative RANGE argument. */
- else if (re_search (®ex, "wxy", 3, 2, -2, ®s) != 1)
- result |= 8;
+ else
+ {
+ memset (®s, 0, sizeof regs);
+ if (re_search (®ex, "wxy", 3, 2, -2, ®s) != 1)
+ result |= 8;
+ regfree (®ex);
+ free (regs.start);
+ free (regs.end);
+ }
/* The version of regex.c in older versions of gnulib
ignored RE_ICASE. Detect that problem too. */
s = re_compile_pattern ("x", 1, ®ex);
if (s)
result |= 16;
- else if (re_search (®ex, "WXY", 3, 0, 3, ®s) < 0)
- result |= 16;
+ else
+ {
+ memset (®s, 0, sizeof regs);
+ if (re_search (®ex, "WXY", 3, 0, 3, ®s) < 0)
+ result |= 16;
+ regfree (®ex);
+ free (regs.start);
+ free (regs.end);
+ }
/* Catch a bug reported by Vin Shelton in
http://lists.gnu.org/archive/html/bug-coreutils/2007-06/msg00089.html
s = re_compile_pattern ("[[:alnum:]_-]\\\\+$", 16, ®ex);
if (s)
result |= 32;
+ else
+ regfree (®ex);
/* REG_STARTEND was added to glibc on 2004-01-15.
Reject older versions. */
--- /dev/null
+/* Test of select() substitute, reading or writing from a given file descriptor.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2008. */
+
+#include <config.h>
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/select.h>
+
+int
+main (int argc, char *argv[])
+{
+ if (argc == 4)
+ {
+ char mode = argv[1][0];
+
+ if (mode == 'r' || mode == 'w')
+ {
+ int fd = atoi (argv[2]);
+
+ if (fd >= 0)
+ {
+ const char *result_file_name = argv[3];
+ FILE *result_file = fopen (result_file_name, "wb");
+
+ if (result_file != NULL)
+ {
+ fd_set fds;
+ struct timeval timeout;
+ int ret;
+
+ FD_ZERO (&fds);
+ FD_SET (fd, &fds);
+ timeout.tv_sec = 0;
+ timeout.tv_usec = 10000;
+ ret = (mode == 'r'
+ ? select (fd + 1, &fds, NULL, NULL, &timeout)
+ : select (fd + 1, NULL, &fds, NULL, &timeout));
+ if (ret < 0)
+ {
+ perror ("select failed");
+ exit (1);
+ }
+ if ((ret == 0) != ! FD_ISSET (fd, &fds))
+ {
+ fprintf (stderr, "incorrect return value\n");
+ exit (1);
+ }
+ fprintf (result_file, "%d\n", ret);
+ exit (0);
+ }
+ }
+ }
+ }
+ fprintf (stderr, "Usage: test-select-fd mode fd result-file-name\n");
+ exit (1);
+}
--- /dev/null
+#!/bin/sh
+# Test select() on file descriptors opened for reading.
+
+# This test is known to fail on Solaris 2.6 and older, due to its handling
+# of /dev/null.
+
+tmpfiles=""
+trap 'rm -fr $tmpfiles' 1 2 3 15
+
+tmpfiles="$tmpfiles t-select-in.tmp"
+
+# Regular files.
+
+rm -f t-select-in.tmp
+./test-select-fd${EXEEXT} r 0 t-select-in.tmp < ./test-select-fd${EXEEXT}
+test `cat t-select-in.tmp` = "1" || exit 1
+
+# Pipes.
+
+rm -f t-select-in.tmp
+{ sleep 1; echo abc; } | \
+ { ./test-select-fd${EXEEXT} r 0 t-select-in.tmp; cat > /dev/null; }
+test `cat t-select-in.tmp` = "0" || exit 1
+
+rm -f t-select-in.tmp
+echo abc | { sleep 1; ./test-select-fd${EXEEXT} r 0 t-select-in.tmp; }
+test `cat t-select-in.tmp` = "1" || exit 1
+
+# Special files.
+# This part of the test is known to fail on Solaris 2.6 and older.
+
+rm -f t-select-in.tmp
+./test-select-fd${EXEEXT} r 0 t-select-in.tmp < /dev/null
+test `cat t-select-in.tmp` = "1" || exit 1
+
+rm -fr $tmpfiles
+
+exit 0
--- /dev/null
+#!/bin/sh
+# Test select() on file descriptors opened for writing.
+
+tmpfiles=""
+trap 'rm -fr $tmpfiles' 1 2 3 15
+
+tmpfiles="$tmpfiles t-select-out.out t-select-out.tmp"
+
+# Regular files.
+
+rm -f t-select-out.tmp
+./test-select-fd${EXEEXT} w 1 t-select-out.tmp > t-select-out.out
+test `cat t-select-out.tmp` = "1" || exit 1
+
+# Pipes.
+
+if false; then # This test fails on some platforms.
+ rm -f t-select-out.tmp
+ ( { echo abc; ./test-select-fd${EXEEXT} w 1 t-select-out.tmp; } | { sleep 1; cat; } ) > /dev/null
+ test `cat t-select-out.tmp` = "0" || exit 1
+fi
+
+rm -f t-select-out.tmp
+( { sleep 1; echo abc; ./test-select-fd${EXEEXT} w 1 t-select-out.tmp; } | cat) > /dev/null
+test `cat t-select-out.tmp` = "1" || exit 1
+
+# Special files.
+
+rm -f t-select-out.tmp
+./test-select-fd${EXEEXT} w 1 t-select-out.tmp > /dev/null
+test `cat t-select-out.tmp` = "1" || exit 1
+
+rm -fr $tmpfiles
+
+exit 0
--- /dev/null
+/* Test of select() substitute, reading from stdin.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2008. */
+
+#include <config.h>
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/select.h>
+#include <sys/time.h>
+#include <unistd.h>
+
+#include "macros.h"
+
+int
+main (void)
+{
+ printf ("Applying select() from standard input. Press Ctrl-C to abort.\n");
+ for (;;)
+ {
+ struct timeval before;
+ struct timeval after;
+ unsigned long spent_usec;
+ fd_set readfds;
+ struct timeval timeout;
+ int ret;
+
+ gettimeofday (&before, NULL);
+
+ FD_ZERO (&readfds);
+ FD_SET (0, &readfds);
+ timeout.tv_sec = 0;
+ timeout.tv_usec = 500000;
+ ret = select (1, &readfds, NULL, NULL, &timeout);
+
+ gettimeofday (&after, NULL);
+ spent_usec = (after.tv_sec - before.tv_sec) * 1000000
+ + after.tv_usec - before.tv_usec;
+
+ if (ret < 0)
+ {
+ perror ("select failed");
+ exit (1);
+ }
+ if ((ret == 0) != ! FD_ISSET (0, &readfds))
+ {
+ fprintf (stderr, "incorrect return value\n");
+ exit (1);
+ }
+ if (ret == 0)
+ {
+ if (spent_usec < 250000)
+ {
+ fprintf (stderr, "returned too early\n");
+ exit (1);
+ }
+ /* Timeout */
+ printf (".");
+ ASSERT (fflush (stdout) == 0);
+ }
+ else
+ {
+ char c;
+
+ printf ("Input available! Trying to read 1 byte...\n");
+ ASSERT (read (0, &c, 1) == 1);
+ }
+ }
+}
--- /dev/null
+/* Test of select() substitute.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Paolo Bonzini, 2008. */
+
+#include <config.h>
+
+#include <sys/select.h>
+
+#include "signature.h"
+
+SIGNATURE_CHECK (select, int, (int, fd_set *, fd_set *, fd_set *,
+ struct timeval *));
+
+#include "test-select.h"
+
+int
+main (void)
+{
+ return test_function (select);
+}
--- /dev/null
+/* Test of select() substitute.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Paolo Bonzini, 2008. */
+
+#include <stdio.h>
+#include <string.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+#include <unistd.h>
+#include <fcntl.h>
+#include <stdlib.h>
+#include <stdbool.h>
+#include <sys/ioctl.h>
+#include <errno.h>
+
+#include "macros.h"
+
+#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
+# define WINDOWS_NATIVE
+#endif
+
+#ifdef HAVE_SYS_WAIT_H
+# include <sys/wait.h>
+#endif
+
+#ifndef SO_REUSEPORT
+# define SO_REUSEPORT SO_REUSEADDR
+#endif
+
+#define TEST_PORT 12345
+
+
+typedef int (*select_fn) (int, fd_set *, fd_set *, fd_set *, struct timeval *);
+
+
+/* Minimal testing infrastructure. */
+
+static int failures;
+
+static void
+failed (const char *reason)
+{
+ if (++failures > 1)
+ printf (" ");
+ printf ("failed (%s)\n", reason);
+}
+
+static int
+test (void (*fn) (select_fn), select_fn my_select, const char *msg)
+{
+ failures = 0;
+ printf ("%s... ", msg);
+ fflush (stdout);
+ fn (my_select);
+
+ if (!failures)
+ printf ("passed\n");
+
+ return failures;
+}
+
+
+/* Funny socket code. */
+
+static int
+open_server_socket (void)
+{
+ int s, x;
+ struct sockaddr_in ia;
+
+ s = socket (AF_INET, SOCK_STREAM, 0);
+
+ x = 1;
+ setsockopt (s, SOL_SOCKET, SO_REUSEPORT, &x, sizeof (x));
+
+ memset (&ia, 0, sizeof (ia));
+ ia.sin_family = AF_INET;
+ inet_pton (AF_INET, "127.0.0.1", &ia.sin_addr);
+ ia.sin_port = htons (TEST_PORT);
+ if (bind (s, (struct sockaddr *) &ia, sizeof (ia)) < 0)
+ {
+ perror ("bind");
+ exit (77);
+ }
+
+ if (listen (s, 1) < 0)
+ {
+ perror ("listen");
+ exit (77);
+ }
+
+ return s;
+}
+
+static int
+connect_to_socket (bool blocking)
+{
+ int s;
+ struct sockaddr_in ia;
+
+ s = socket (AF_INET, SOCK_STREAM, 0);
+
+ memset (&ia, 0, sizeof (ia));
+ ia.sin_family = AF_INET;
+ inet_pton (AF_INET, "127.0.0.1", &ia.sin_addr);
+ ia.sin_port = htons (TEST_PORT);
+
+ if (!blocking)
+ {
+#ifdef WINDOWS_NATIVE
+ unsigned long iMode = 1;
+ ioctl (s, FIONBIO, (char *) &iMode);
+
+#elif defined F_GETFL
+ int oldflags = fcntl (s, F_GETFL, NULL);
+
+ if (!(oldflags & O_NONBLOCK))
+ fcntl (s, F_SETFL, oldflags | O_NONBLOCK);
+#endif
+ }
+
+ if (connect (s, (struct sockaddr *) &ia, sizeof (ia)) < 0
+ && (blocking || errno != EINPROGRESS))
+ {
+ perror ("connect");
+ exit (77);
+ }
+
+ return s;
+}
+
+
+/* A slightly more convenient interface to select(2).
+ Waits until a specific event occurs on a file descriptor FD.
+ EV is a bit mask of events to look for:
+ SEL_IN - input can be polled without blocking,
+ SEL_OUT - output can be provided without blocking,
+ SEL_EXC - an exception occurred,
+ A maximum wait time is specified by TIMEOUT.
+ *TIMEOUT = { 0, 0 } means to return immediately,
+ TIMEOUT = NULL means to wait indefinitely. */
+
+enum { SEL_IN = 1, SEL_OUT = 2, SEL_EXC = 4 };
+
+static int
+do_select (int fd, int ev, struct timeval *timeout, select_fn my_select)
+{
+ fd_set rfds, wfds, xfds;
+ int r, rev;
+
+ FD_ZERO (&rfds);
+ FD_ZERO (&wfds);
+ FD_ZERO (&xfds);
+ if (ev & SEL_IN)
+ FD_SET (fd, &rfds);
+ if (ev & SEL_OUT)
+ FD_SET (fd, &wfds);
+ if (ev & SEL_EXC)
+ FD_SET (fd, &xfds);
+ r = my_select (fd + 1, &rfds, &wfds, &xfds, timeout);
+ if (r < 0)
+ return r;
+
+ rev = 0;
+ if (FD_ISSET (fd, &rfds))
+ rev |= SEL_IN;
+ if (FD_ISSET (fd, &wfds))
+ rev |= SEL_OUT;
+ if (FD_ISSET (fd, &xfds))
+ rev |= SEL_EXC;
+ if (rev && r == 0)
+ failed ("select returned 0");
+ if (rev & ~ev)
+ failed ("select returned unrequested events");
+
+ return rev;
+}
+
+static int
+do_select_nowait (int fd, int ev, select_fn my_select)
+{
+ struct timeval tv0;
+ tv0.tv_sec = 0;
+ tv0.tv_usec = 0;
+ return do_select (fd, ev, &tv0, my_select);
+}
+
+static int
+do_select_wait (int fd, int ev, select_fn my_select)
+{
+ return do_select (fd, ev, NULL, my_select);
+}
+
+
+/* Test select(2) for TTYs. */
+
+#ifdef INTERACTIVE
+static void
+test_tty (select_fn my_select)
+{
+ if (do_select_nowait (0, SEL_IN, my_select) != 0)
+ failed ("can read");
+ if (do_select_nowait (0, SEL_OUT, my_select) == 0)
+ failed ("cannot write");
+
+ if (do_select_wait (0, SEL_IN, my_select) == 0)
+ failed ("return with infinite timeout");
+
+ getchar ();
+ if (do_select_nowait (0, SEL_IN, my_select) != 0)
+ failed ("can read after getc");
+}
+#endif
+
+
+static int
+do_select_bad_nfd_nowait (int nfd, select_fn my_select)
+{
+ struct timeval tv0;
+ tv0.tv_sec = 0;
+ tv0.tv_usec = 0;
+ errno = 0;
+ return my_select (nfd, NULL, NULL, NULL, &tv0);
+}
+
+static void
+test_bad_nfd (select_fn my_select)
+{
+ if (do_select_bad_nfd_nowait (-1, my_select) != -1 || errno != EINVAL)
+ failed ("invalid errno after negative nfds");
+ /* Can't test FD_SETSIZE + 1 for EINVAL, since some systems allow
+ dynamically larger set size by redefining FD_SETSIZE anywhere up
+ to the actual maximum fd. */
+ /* if (do_select_bad_nfd_nowait (FD_SETSIZE + 1, my_select) != -1 */
+ /* || errno != EINVAL) */
+ /* failed ("invalid errno after bogus nfds"); */
+}
+
+/* Test select(2) on invalid file descriptors. */
+
+static int
+do_select_bad_fd (int fd, int ev, struct timeval *timeout, select_fn my_select)
+{
+ fd_set rfds, wfds, xfds;
+
+ FD_ZERO (&rfds);
+ FD_ZERO (&wfds);
+ FD_ZERO (&xfds);
+ if (ev & SEL_IN)
+ FD_SET (fd, &rfds);
+ if (ev & SEL_OUT)
+ FD_SET (fd, &wfds);
+ if (ev & SEL_EXC)
+ FD_SET (fd, &xfds);
+ errno = 0;
+ return my_select (fd + 1, &rfds, &wfds, &xfds, timeout);
+ /* In this case, when fd is invalid, on some platforms, the bit for fd
+ is left alone in the fd_set, whereas on other platforms it is cleared.
+ So, don't check the bit for fd here. */
+}
+
+static int
+do_select_bad_fd_nowait (int fd, int ev, select_fn my_select)
+{
+ struct timeval tv0;
+ tv0.tv_sec = 0;
+ tv0.tv_usec = 0;
+ return do_select_bad_fd (fd, ev, &tv0, my_select);
+}
+
+static void
+test_bad_fd (select_fn my_select)
+{
+ /* This tests fails on OSF/1 and native Windows, even with fd = 16. */
+#if !(defined __osf__ || defined WINDOWS_NATIVE)
+ int fd;
+
+ /* On Linux, Mac OS X, *BSD, values of fd like 99 or 399 are discarded
+ by the kernel early and therefore do *not* lead to EBADF, as required
+ by POSIX. */
+# if defined __linux__ || (defined __APPLE__ && defined __MACH__) || defined __FreeBSD__ || defined __OpenBSD__ || defined __NetBSD__
+ fd = 16;
+# else
+ fd = 99;
+# endif
+ close (fd);
+
+ if (do_select_bad_fd_nowait (fd, SEL_IN, my_select) == 0 || errno != EBADF)
+ failed ("invalid fd among rfds");
+ if (do_select_bad_fd_nowait (fd, SEL_OUT, my_select) == 0 || errno != EBADF)
+ failed ("invalid fd among wfds");
+ if (do_select_bad_fd_nowait (fd, SEL_EXC, my_select) == 0 || errno != EBADF)
+ failed ("invalid fd among xfds");
+#endif
+}
+
+
+/* Test select(2) for unconnected nonblocking sockets. */
+
+static void
+test_connect_first (select_fn my_select)
+{
+ int s = open_server_socket ();
+ struct sockaddr_in ia;
+ socklen_t addrlen;
+
+ int c1, c2;
+
+ if (do_select_nowait (s, SEL_IN | SEL_EXC, my_select) != 0)
+ failed ("can read, socket not connected");
+
+ c1 = connect_to_socket (false);
+
+ if (do_select_wait (s, SEL_IN | SEL_EXC, my_select) != SEL_IN)
+ failed ("expecting readability on passive socket");
+ if (do_select_nowait (s, SEL_IN | SEL_EXC, my_select) != SEL_IN)
+ failed ("expecting readability on passive socket");
+
+ addrlen = sizeof (ia);
+ c2 = accept (s, (struct sockaddr *) &ia, &addrlen);
+ ASSERT (close (s) == 0);
+ ASSERT (close (c1) == 0);
+ ASSERT (close (c2) == 0);
+}
+
+
+/* Test select(2) for unconnected blocking sockets. */
+
+static void
+test_accept_first (select_fn my_select)
+{
+#ifndef WINDOWS_NATIVE
+ int s = open_server_socket ();
+ struct sockaddr_in ia;
+ socklen_t addrlen;
+ char buf[3];
+ int c, pid;
+
+ pid = fork ();
+ if (pid < 0)
+ return;
+
+ if (pid == 0)
+ {
+ addrlen = sizeof (ia);
+ c = accept (s, (struct sockaddr *) &ia, &addrlen);
+ ASSERT (close (s) == 0);
+ ASSERT (write (c, "foo", 3) == 3);
+ ASSERT (read (c, buf, 3) == 3);
+ shutdown (c, SHUT_RD);
+ ASSERT (close (c) == 0);
+ exit (0);
+ }
+ else
+ {
+ ASSERT (close (s) == 0);
+ c = connect_to_socket (true);
+ if (do_select_nowait (c, SEL_OUT, my_select) != SEL_OUT)
+ failed ("cannot write after blocking connect");
+ ASSERT (write (c, "foo", 3) == 3);
+ wait (&pid);
+ if (do_select_wait (c, SEL_IN, my_select) != SEL_IN)
+ failed ("cannot read data left in the socket by closed process");
+ ASSERT (read (c, buf, 3) == 3);
+ ASSERT (write (c, "foo", 3) == 3);
+ (void) close (c); /* may fail with errno = ECONNRESET */
+ }
+#endif
+}
+
+
+/* Common code for pipes and connected sockets. */
+
+static void
+test_pair (int rd, int wd, select_fn my_select)
+{
+ char buf[3];
+ if (do_select_wait (wd, SEL_IN | SEL_OUT | SEL_EXC, my_select) != SEL_OUT)
+ failed ("expecting writability before writing");
+ if (do_select_nowait (wd, SEL_IN | SEL_OUT | SEL_EXC, my_select) != SEL_OUT)
+ failed ("expecting writability before writing");
+
+ ASSERT (write (wd, "foo", 3) == 3);
+ if (do_select_wait (rd, SEL_IN, my_select) != SEL_IN)
+ failed ("expecting readability after writing");
+ if (do_select_nowait (rd, SEL_IN, my_select) != SEL_IN)
+ failed ("expecting readability after writing");
+
+ ASSERT (read (rd, buf, 3) == 3);
+}
+
+
+/* Test select(2) on connected sockets. */
+
+static void
+test_socket_pair (select_fn my_select)
+{
+ struct sockaddr_in ia;
+
+ socklen_t addrlen = sizeof (ia);
+ int s = open_server_socket ();
+ int c1 = connect_to_socket (false);
+ int c2 = accept (s, (struct sockaddr *) &ia, &addrlen);
+
+ ASSERT (close (s) == 0);
+
+ test_pair (c1, c2, my_select);
+ ASSERT (close (c1) == 0);
+ ASSERT (write (c2, "foo", 3) == 3);
+ (void) close (c2); /* may fail with errno = ECONNRESET */
+}
+
+
+/* Test select(2) on pipes. */
+
+static void
+test_pipe (select_fn my_select)
+{
+ int fd[2];
+
+ ASSERT (pipe (fd) == 0);
+ test_pair (fd[0], fd[1], my_select);
+ ASSERT (close (fd[0]) == 0);
+ ASSERT (close (fd[1]) == 0);
+}
+
+
+/* Do them all. */
+
+static int
+test_function (select_fn my_select)
+{
+ int result = 0;
+
+#ifdef INTERACTIVE
+ printf ("Please press Enter\n");
+ test (test_tty, "TTY", my_select);
+#endif
+
+ result += test (test_bad_nfd, my_select, "Invalid nfd test");
+ result += test (test_bad_fd, my_select, "Invalid fd test");
+ result += test (test_connect_first, my_select, "Unconnected socket test");
+ result += test (test_socket_pair, my_select, "Connected sockets test");
+ result += test (test_accept_first, my_select, "General socket test with fork");
+ result += test (test_pipe, my_select, "Pipe test");
+
+ return result;
+}
/* Tests of setenv.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of setting the current locale.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test that the two results are the same. */
ASSERT (strcmp (name1, name2) == 0);
+ free (name1);
+ free (name2);
return 0;
}
/* Test of setting the current locale.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Test setsockopt() function.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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 <sys/socket.h>
+
+#include "signature.h"
+SIGNATURE_CHECK (setsockopt, int, (int, int, int, const void *, socklen_t));
+
+#include <errno.h>
+#include <unistd.h>
+
+#include "sockets.h"
+#include "macros.h"
+
+int
+main (void)
+{
+ (void) gl_sockets_startup (SOCKETS_1_1);
+
+ /* Test behaviour for invalid file descriptors. */
+ {
+ int value = 1;
+
+ errno = 0;
+ ASSERT (setsockopt (-1, SOL_SOCKET, SO_REUSEADDR, &value, sizeof (value))
+ == -1);
+ ASSERT (errno == EBADF);
+ }
+ {
+ int value = 1;
+
+ close (99);
+ errno = 0;
+ ASSERT (setsockopt (99, SOL_SOCKET, SO_REUSEADDR, &value, sizeof (value))
+ == -1);
+ ASSERT (errno == EBADF);
+ }
+
+ return 0;
+}
/* Test of sh-quote module.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
+ Copyright (C) 2012-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of sigaction() function.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of <signal.h> substitute.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of sigprocmask.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of sleep() function.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of snprintf() function.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This 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 !CHECK_SNPRINTF_POSIX
if (size > 0)
#endif
- ASSERT (memcmp (buf + size, "DEADBEEF" + size, 8 - size) == 0);
+ ASSERT (memcmp (buf + size, &"DEADBEEF"[size], 8 - size) == 0);
}
else
{
--- /dev/null
+/*
+ * Copyright (C) 2008-2016 Free Software Foundation, Inc.
+ * Written by Simon Josefsson.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3 of the License, or
+ * (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 <stdio.h>
+
+#include "sockets.h"
+
+int
+main (void)
+{
+ int err;
+
+ err = gl_sockets_startup (SOCKETS_1_1);
+ if (err != 0)
+ {
+ printf ("wsastartup failed %d\n", err);
+ return 1;
+ }
+
+ err = gl_sockets_cleanup ();
+ if (err != 0)
+ {
+ printf ("wsacleanup failed %d\n", err);
+ return 1;
+ }
+
+ (void) gl_fd_to_handle (0);
+
+ return 0;
+}
/* Test of <stat-time.h>.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This 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 "macros.h"
+#define BASE "test-stat-time.t"
+#include "nap.h"
+
enum { NFILES = 4 };
static int
ASSERT (stat (filename, p) == 0);
}
-/* Sleep long enough to notice a timestamp difference on the file
- system in the current directory. */
-static void
-nap (void)
-{
- static long delay;
- if (!delay)
- {
- /* Initialize only once, by sleeping for 20 milliseconds (needed
- since xfs has a quantization of about 10 milliseconds, even
- though it has a granularity of 1 nanosecond, and since NTFS
- has a default quantization of 15.25 milliseconds, even though
- it has a granularity of 100 nanoseconds). If the seconds
- differ, repeat the test one more time (in case we crossed a
- quantization boundary on a file system with 1 second
- resolution). If we can't observe a difference in only the
- nanoseconds, then fall back to 1 second if the time is odd,
- and 2 seconds (needed for FAT) if time is even. */
- struct stat st1;
- struct stat st2;
- ASSERT (stat ("t-stt-stamp1", &st1) == 0);
- ASSERT (force_unlink ("t-stt-stamp1") == 0);
- delay = 20000;
- usleep (delay);
- create_file ("t-stt-stamp1");
- ASSERT (stat ("t-stt-stamp1", &st2) == 0);
- if (st1.st_mtime != st2.st_mtime)
- {
- /* Seconds differ, give it one more shot. */
- st1 = st2;
- ASSERT (force_unlink ("t-stt-stamp1") == 0);
- usleep (delay);
- create_file ("t-stt-stamp1");
- ASSERT (stat ("t-stt-stamp1", &st2) == 0);
- }
- if (! (st1.st_mtime == st2.st_mtime
- && get_stat_mtime_ns (&st1) < get_stat_mtime_ns (&st2)))
- delay = (st1.st_mtime & 1) ? 1000000 : 2000000;
- }
- usleep (delay);
-}
-
static void
prepare_test (struct stat *statinfo, struct timespec *modtimes)
{
/* Tests of stat.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This 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 <fcntl.h>
#include <errno.h>
#include <stdbool.h>
+#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
/* Tests of stat.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
ASSERT (unlink (BASE "link2") == 0);
ASSERT (unlink (BASE "link3") == 0);
ASSERT (unlink (BASE "link4") == 0);
+ free (cwd);
return 0;
}
--- /dev/null
+/* Test of <stdalign.h>.
+ Copyright 2009-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Paul Eggert, inspired by Bruno Haible's test-alignof.c. */
+
+#include <config.h>
+
+#include <stdalign.h>
+
+#include <stddef.h>
+#include <stdint.h>
+
+#include "verify.h"
+
+#include "macros.h"
+
+typedef long double longdouble;
+typedef struct { char a[1]; } struct1;
+typedef struct { char a[2]; } struct2;
+typedef struct { char a[3]; } struct3;
+typedef struct { char a[4]; } struct4;
+
+verify (__alignof_is_defined == 1);
+#ifndef alignof
+# error "alignof is not a macro"
+#endif
+
+#if __alignas_is_defined
+verify (__alignas_is_defined == 1);
+# ifndef alignas
+# error "alignas is not a macro"
+# endif
+/* mingw can go up only to 8. 8 is all that GNU Emacs needs, so let's
+ limit the test to 8 for now. */
+# define TEST_ALIGNMENT 8
+#else
+# define _Alignas(alignment)
+# define alignas(alignment)
+# define TEST_ALIGNMENT 1
+#endif
+
+#define CHECK_STATIC(type) \
+ typedef struct { char slot1; type slot2; } type##_helper; \
+ verify (alignof (type) == offsetof (type##_helper, slot2)); \
+ verify (_Alignof (type) == alignof (type)); \
+ const int type##_alignment = alignof (type); \
+ type alignas (TEST_ALIGNMENT) static_##type##_alignas; \
+ type _Alignas (TEST_ALIGNMENT) static_##type##_Alignas
+
+#define CHECK_ALIGNED(var) ASSERT ((uintptr_t) &(var) % TEST_ALIGNMENT == 0)
+
+CHECK_STATIC (char);
+CHECK_STATIC (short);
+CHECK_STATIC (int);
+CHECK_STATIC (long);
+#ifdef INT64_MAX
+CHECK_STATIC (int64_t);
+#endif
+CHECK_STATIC (float);
+CHECK_STATIC (double);
+/* CHECK_STATIC (longdouble); */
+CHECK_STATIC (struct1);
+CHECK_STATIC (struct2);
+CHECK_STATIC (struct3);
+CHECK_STATIC (struct4);
+
+int
+main ()
+{
+#if defined __SUNPRO_C
+ /* Avoid a test failure due to Sun Studio Developer Bug Report #2125432. */
+ fputs ("Skipping test: known Sun C compiler bug\n", stderr);
+ return 77;
+#else
+ CHECK_ALIGNED (static_char_alignas);
+ CHECK_ALIGNED (static_char_Alignas);
+ CHECK_ALIGNED (static_short_alignas);
+ CHECK_ALIGNED (static_short_Alignas);
+ CHECK_ALIGNED (static_int_alignas);
+ CHECK_ALIGNED (static_int_Alignas);
+ CHECK_ALIGNED (static_long_alignas);
+ CHECK_ALIGNED (static_long_Alignas);
+# ifdef INT64_MAX
+ CHECK_ALIGNED (static_int64_t_alignas);
+ CHECK_ALIGNED (static_int64_t_Alignas);
+# endif
+ CHECK_ALIGNED (static_float_alignas);
+ CHECK_ALIGNED (static_float_Alignas);
+ CHECK_ALIGNED (static_double_alignas);
+ CHECK_ALIGNED (static_double_Alignas);
+ /* CHECK_ALIGNED (static_longdouble_alignas); */
+ /* CHECK_ALIGNED (static_longdouble_Alignas); */
+ CHECK_ALIGNED (static_struct1_alignas);
+ CHECK_ALIGNED (static_struct1_Alignas);
+ CHECK_ALIGNED (static_struct2_alignas);
+ CHECK_ALIGNED (static_struct2_Alignas);
+ CHECK_ALIGNED (static_struct3_alignas);
+ CHECK_ALIGNED (static_struct3_Alignas);
+ CHECK_ALIGNED (static_struct4_alignas);
+ CHECK_ALIGNED (static_struct4_Alignas);
+ return 0;
+#endif
+}
/* Test of <stdbool.h> substitute.
- Copyright (C) 2002-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of <stddef.h> substitute.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This 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 <config.h>
#include <stddef.h>
-
+#include <stdalign.h>
#include "verify.h"
/* Check that appropriate types are defined. */
wchar_t a = 'c';
ptrdiff_t b = 1;
size_t c = 2;
+max_align_t x;
/* Check that NULL can be passed through varargs as a pointer type,
per POSIX 2008. */
verify (offsetof (struct d, e) < -1); /* Must be unsigned. */
verify (offsetof (struct d, f) == 1);
+/* Check max_align_t's alignment. */
+verify (alignof (double) <= alignof (max_align_t));
+verify (alignof (int) <= alignof (max_align_t));
+verify (alignof (long double) <= alignof (max_align_t));
+verify (alignof (long int) <= alignof (max_align_t));
+verify (alignof (ptrdiff_t) <= alignof (max_align_t));
+verify (alignof (size_t) <= alignof (max_align_t));
+verify (alignof (wchar_t) <= alignof (max_align_t));
+verify (alignof (struct d) <= alignof (max_align_t));
+#if defined __GNUC__ || defined __IBM__ALIGNOF__
+verify (__alignof__ (double) <= __alignof__ (max_align_t));
+verify (__alignof__ (int) <= __alignof__ (max_align_t));
+verify (__alignof__ (long double) <= __alignof__ (max_align_t));
+verify (__alignof__ (long int) <= __alignof__ (max_align_t));
+verify (__alignof__ (ptrdiff_t) <= __alignof__ (max_align_t));
+verify (__alignof__ (size_t) <= __alignof__ (max_align_t));
+verify (__alignof__ (wchar_t) <= __alignof__ (max_align_t));
+verify (__alignof__ (struct d) <= __alignof__ (max_align_t));
+#endif
+
int
main (void)
{
/* Test of <stdint.h> substitute.
- Copyright (C) 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 2006-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of <stdio.h> substitute.
- Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of <stdlib.h> substitute.
- Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of strerror() function.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Test of strerror_r() function.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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 <http://www.gnu.org/licenses/>. */
+
+#include <config.h>
+
+#include <string.h>
+
+#include "signature.h"
+SIGNATURE_CHECK (strerror_r, int, (int, char *, size_t));
+
+#include <errno.h>
+
+#include "macros.h"
+
+int
+main (void)
+{
+ char buf[100];
+ int ret;
+
+ /* Test results with valid errnum and enough room. */
+
+ errno = 0;
+ buf[0] = '\0';
+ ASSERT (strerror_r (EACCES, buf, sizeof buf) == 0);
+ ASSERT (buf[0] != '\0');
+ ASSERT (errno == 0);
+ ASSERT (strlen (buf) < sizeof buf);
+
+ errno = 0;
+ buf[0] = '\0';
+ ASSERT (strerror_r (ETIMEDOUT, buf, sizeof buf) == 0);
+ ASSERT (buf[0] != '\0');
+ ASSERT (errno == 0);
+ ASSERT (strlen (buf) < sizeof buf);
+
+ errno = 0;
+ buf[0] = '\0';
+ ASSERT (strerror_r (EOVERFLOW, buf, sizeof buf) == 0);
+ ASSERT (buf[0] != '\0');
+ ASSERT (errno == 0);
+ ASSERT (strlen (buf) < sizeof buf);
+
+ /* POSIX requires strerror (0) to succeed. Reject use of "Unknown
+ error", but allow "Success", "No error", or even Solaris' "Error
+ 0" which are distinct patterns from true out-of-range strings.
+ http://austingroupbugs.net/view.php?id=382 */
+ errno = 0;
+ buf[0] = '\0';
+ ret = strerror_r (0, buf, sizeof buf);
+ ASSERT (ret == 0);
+ ASSERT (buf[0]);
+ ASSERT (errno == 0);
+ ASSERT (strstr (buf, "nknown") == NULL);
+ ASSERT (strstr (buf, "ndefined") == NULL);
+
+ /* Test results with out-of-range errnum and enough room. POSIX
+ allows an empty string on success, and allows an unchanged buf on
+ error, but these are not useful, so we guarantee contents. */
+ errno = 0;
+ buf[0] = '^';
+ ret = strerror_r (-3, buf, sizeof buf);
+ ASSERT (ret == 0 || ret == EINVAL);
+ ASSERT (buf[0] != '^');
+ ASSERT (*buf);
+ ASSERT (errno == 0);
+ ASSERT (strlen (buf) < sizeof buf);
+
+ /* Test results with a too small buffer. POSIX requires an error;
+ only ERANGE for 0 and valid errors, and a choice of ERANGE or
+ EINVAL for out-of-range values. On error, POSIX permits buf to
+ be empty, unchanged, or unterminated, but these are not useful,
+ so we guarantee NUL-terminated truncated contents for all but
+ size 0. http://austingroupbugs.net/view.php?id=398. Also ensure
+ that no out-of-bounds writes occur. */
+ {
+ int errs[] = { EACCES, 0, -3, };
+ int j;
+
+ buf[sizeof buf - 1] = '\0';
+ for (j = 0; j < SIZEOF (errs); j++)
+ {
+ int err = errs[j];
+ char buf2[sizeof buf] = "";
+ size_t len;
+ size_t i;
+
+ strerror_r (err, buf2, sizeof buf2);
+ len = strlen (buf2);
+ ASSERT (len < sizeof buf);
+
+ for (i = 0; i <= len; i++)
+ {
+ memset (buf, '^', sizeof buf - 1);
+ errno = 0;
+ ret = strerror_r (err, buf, i);
+ ASSERT (errno == 0);
+ if (err < 0)
+ ASSERT (ret == ERANGE || ret == EINVAL);
+ else
+ ASSERT (ret == ERANGE);
+ if (i)
+ {
+ ASSERT (strncmp (buf, buf2, i - 1) == 0);
+ ASSERT (buf[i - 1] == '\0');
+ }
+ ASSERT (strspn (buf + i, "^") == sizeof buf - 1 - i);
+ }
+
+ strcpy (buf, "BADFACE");
+ errno = 0;
+ ret = strerror_r (err, buf, len + 1);
+ ASSERT (ret != ERANGE);
+ ASSERT (errno == 0);
+ ASSERT (strcmp (buf, buf2) == 0);
+ }
+ }
+
+#if GNULIB_STRERROR
+ /* Test that strerror_r does not clobber strerror buffer. On some
+ platforms, this test can only succeed if gnulib also replaces
+ strerror. */
+ {
+ const char *msg1;
+ const char *msg2;
+ const char *msg3;
+ const char *msg4;
+ char *str1;
+ char *str2;
+ char *str3;
+ char *str4;
+
+ msg1 = strerror (ENOENT);
+ ASSERT (msg1);
+ str1 = strdup (msg1);
+ ASSERT (str1);
+
+ msg2 = strerror (ERANGE);
+ ASSERT (msg2);
+ str2 = strdup (msg2);
+ ASSERT (str2);
+
+ msg3 = strerror (-4);
+ ASSERT (msg3);
+ str3 = strdup (msg3);
+ ASSERT (str3);
+
+ msg4 = strerror (1729576);
+ ASSERT (msg4);
+ str4 = strdup (msg4);
+ ASSERT (str4);
+
+ strerror_r (EACCES, buf, sizeof buf);
+ strerror_r (-5, buf, sizeof buf);
+ ASSERT (msg1 == msg2 || msg1 == msg4 || STREQ (msg1, str1));
+ ASSERT (msg2 == msg4 || STREQ (msg2, str2));
+ ASSERT (msg3 == msg4 || STREQ (msg3, str3));
+ ASSERT (STREQ (msg4, str4));
+
+ free (str1);
+ free (str2);
+ free (str3);
+ free (str4);
+ }
+#endif
+
+ return 0;
+}
/* Test that posixtime works as required.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This 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 "strftime.h"
+#include <errno.h>
#include <stdio.h>
#include <time.h>
#include <string.h>
{ 0, 0, NULL, NULL }
};
-int
-main (void)
+static int
+posixtm_test (void)
{
int fail = 0;
unsigned int i;
time_t t = T[i].in;
struct tm *tm = gmtime (&t);
size_t n;
- int utc = 1;
ASSERT (tm);
- n = nstrftime (buf, sizeof buf, T[i].fmt, tm, utc, T[i].in_ns);
+ n = nstrftime (buf, sizeof buf, T[i].fmt, tm, 0, T[i].in_ns);
if (n == 0)
{
fail = 1;
return fail;
}
+struct tzalloc_test
+{
+ timezone_t tz;
+ char const *setting;
+};
+
+static struct tzalloc_test TZ[] =
+ {
+#define Pacific 0
+ { 0, "PST8PDT,M3.2.0,M11.1.0" },
+#define Arizona 1
+ { 0, "MST7" },
+#define UTC 2
+ { 0, 0 },
+#define CentEur 3
+ { 0, "CET-1CEST,M3.5.0,M10.5.0/3" },
+#define Japan 4
+ { 0, "JST-9" },
+#define NZ 5
+ { 0, "NZST-12NZDT,M9.5.0,M4.1.0/3" },
+ { 0 }
+ };
+
+struct localtime_rz_test
+{
+ /* Input parameters. */
+ struct tzalloc_test *tza;
+ time_t t;
+
+ /* Expected result. */
+ char const *exp;
+
+ /* Determines if an incorrectly unset tm_isdst
+ results in failure or just a warning. */
+ int ahistorical;
+};
+
+static struct localtime_rz_test LT[] =
+ {
+ { TZ+Pacific, 0, "1969-12-31 16:00:00 -0800 (PST)", 0 },
+ { TZ+Arizona, 0, "1969-12-31 17:00:00 -0700 (MST)", 0 },
+ { TZ+UTC , 0, "1970-01-01 00:00:00 +0000 (UTC)", 0 },
+ { TZ+CentEur, 0, "1970-01-01 01:00:00 +0100 (CET)", 0 },
+ { TZ+Japan , 0, "1970-01-01 09:00:00 +0900 (JST)", 0 },
+ { TZ+NZ , 0, "1970-01-01 13:00:00 +1300 (NZDT)", 1 },
+ { TZ+Pacific, 500000001, "1985-11-04 16:53:21 -0800 (PST)", 0 },
+ { TZ+Arizona, 500000001, "1985-11-04 17:53:21 -0700 (MST)", 0 },
+ { TZ+UTC , 500000001, "1985-11-05 00:53:21 +0000 (UTC)", 0 },
+ { TZ+CentEur, 500000001, "1985-11-05 01:53:21 +0100 (CET)", 1 },
+ { TZ+Japan , 500000001, "1985-11-05 09:53:21 +0900 (JST)", 0 },
+ { TZ+NZ , 500000001, "1985-11-05 13:53:21 +1300 (NZDT)", 0 },
+ { TZ+Pacific, 1000000002, "2001-09-08 18:46:42 -0700 (PDT)", 0 },
+ { TZ+Arizona, 1000000002, "2001-09-08 18:46:42 -0700 (MST)", 0 },
+ { TZ+UTC , 1000000002, "2001-09-09 01:46:42 +0000 (UTC)", 0 },
+ { TZ+CentEur, 1000000002, "2001-09-09 03:46:42 +0200 (CEST)", 0 },
+ { TZ+Japan , 1000000002, "2001-09-09 10:46:42 +0900 (JST)", 0 },
+ { TZ+NZ , 1000000002, "2001-09-09 13:46:42 +1200 (NZST)", 0 },
+ { 0 }
+ };
+
+static int
+tzalloc_test (void)
+{
+ int fail = 0;
+ int i;
+
+ for (i = 0; LT[i].tza; i++)
+ {
+ struct tzalloc_test *tza = LT[i].tza;
+ long lt = LT[i].t;
+ timezone_t tz = tza->tz;
+ char const *setting;
+ static char const format[] = "%Y-%m-%d %H:%M:%S %z (%Z)";
+ char buf[1000];
+ struct tm tm;
+ size_t n;
+
+ if (!tz && tza->setting)
+ {
+ tz = tzalloc (tza->setting);
+ if (!tz)
+ {
+ fail = 1;
+ printf ("%s: tzalloc: %s\n", TZ[i].setting, strerror (errno));
+ continue;
+ }
+ tza->tz = tz;
+ }
+
+ setting = tza->setting ? tza->setting : "UTC0";
+
+ if (!localtime_rz (tz, <[i].t, &tm))
+ {
+ fail = 1;
+ printf ("%s: %ld: localtime_rz: %s\n", setting, lt,
+ strerror (errno));
+ continue;
+ }
+
+ n = nstrftime (buf, sizeof buf, format, &tm, tz, 0);
+ if (n == 0)
+ {
+ fail = 1;
+ printf ("%s: %ld: nstrftime failed\n", setting, lt);
+ continue;
+ }
+
+ if (! (STREQ (buf, LT[i].exp)
+ || (!tz && n == strlen (LT[i].exp)
+ && memcmp (buf, LT[i].exp, n - sizeof "(GMT)" + 1) == 0
+ && STREQ (buf + n - sizeof "(GMT)" + 1, "(GMT)"))))
+ {
+ /* Don't fail for unhandled dst in ahistorical entries,
+ as gnulib doesn't currently fix that issue, seen on Darwin 14. */
+ if (!LT[i].ahistorical || tm.tm_isdst)
+ fail = 1;
+ printf ("%s: expected \"%s\", got \"%s\"\n",
+ setting, LT[i].exp, buf);
+ }
+ }
+
+ return fail;
+}
+
+int
+main (void)
+{
+ int fail = 0;
+ fail |= posixtm_test ();
+ fail |= tzalloc_test ();
+ return fail;
+}
+
/*
Local Variables:
indent-tabs-mode: nil
/* Test of character set conversion.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of <string.h> substitute.
- Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of <strings.h> substitute.
- Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/*
- * Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ * Copyright (C) 2010-2016 Free Software Foundation, Inc.
* Written by Eric Blake
*
* This program is free software: you can redistribute it and/or modify
/*
- * Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ * Copyright (C) 2011-2016 Free Software Foundation, Inc.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
/*
- * Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ * Copyright (C) 2011-2016 Free Software Foundation, Inc.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
/* Tests of symlink.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Tests of symlink.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Test of <sys/ioctl.h> substitute.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Eric Blake <ebb9@byu.net>, 2009. */
+
+#include <config.h>
+
+#include <sys/ioctl.h>
+
+int
+main (void)
+{
+ return 0;
+}
--- /dev/null
+/* Test of <sys/select.h> substitute.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2007. */
+
+#include <config.h>
+
+#include <sys/select.h>
+
+#include "signature.h"
+
+/* The following may be macros without underlying functions, so only
+ check signature if they are not macros. */
+#ifndef FD_CLR
+SIGNATURE_CHECK (FD_CLR, void, (int, fd_set *));
+#endif
+#ifndef FD_ISSET
+SIGNATURE_CHECK (FD_ISSET, void, (int, fd_set *));
+#endif
+#ifndef FD_SET
+SIGNATURE_CHECK (FD_SET, int, (int, fd_set *));
+#endif
+#ifndef FD_ZERO
+SIGNATURE_CHECK (FD_ZERO, void, (fd_set *));
+#endif
+
+/* Check that the 'struct timeval' type is defined. */
+struct timeval a;
+
+/* Check that a.tv_sec is wide enough to hold a time_t, ignoring
+ signedness issues. */
+typedef int verify_tv_sec_type[sizeof (time_t) <= sizeof (a.tv_sec) ? 1 : -1];
+
+/* Check that sigset_t is defined. */
+sigset_t t2;
+
+int
+main (void)
+{
+ /* Check that FD_ZERO can be used. This should not yield a warning
+ such as "warning: implicit declaration of function 'memset'". */
+ fd_set fds;
+ FD_ZERO (&fds);
+
+ return 0;
+}
--- /dev/null
+/* Test of <sys/socket.h> substitute.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2007. */
+
+#include <config.h>
+
+#include <sys/socket.h>
+
+#include <errno.h>
+
+#if HAVE_SHUTDOWN
+/* Check some integer constant expressions. */
+int a[] = { SHUT_RD, SHUT_WR, SHUT_RDWR };
+#endif
+
+/* Check that the 'socklen_t' type is defined. */
+socklen_t t1;
+
+/* Check that the 'size_t' and 'ssize_t' types are defined. */
+size_t t2;
+ssize_t t3;
+
+/* Check that 'struct iovec' is defined. */
+struct iovec io;
+
+/* Check that a minimal set of 'struct msghdr' is defined. */
+struct msghdr msg;
+
+int
+main (void)
+{
+ struct sockaddr_storage x;
+ sa_family_t i;
+
+ /* Check some errno values. */
+ switch (ENOTSOCK)
+ {
+ case ENOTSOCK:
+ case EADDRINUSE:
+ case ENETRESET:
+ case ECONNABORTED:
+ case ECONNRESET:
+ case ENOTCONN:
+ case ESHUTDOWN:
+ break;
+ }
+
+ x.ss_family = 42;
+ i = 42;
+ msg.msg_iov = &io;
+
+ return (x.ss_family - i + msg.msg_namelen + msg.msg_iov->iov_len
+ + msg.msg_iovlen);
+}
/* Test of <sys/stat.h> substitute.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of <sys/time.h> substitute.
- Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Check that the 'struct timeval' type is defined. */
struct timeval a;
-/* Check that &a.tv_sec is a 'time_t *', ignoring signedness issues. */
-typedef int verify_tv_sec_type[sizeof (a.tv_sec) == sizeof (time_t) ? 1 : -1];
+/* Check that a.tv_sec is wide enough to hold a time_t, ignoring
+ signedness issues. */
+typedef int verify_tv_sec_type[sizeof (time_t) <= sizeof (a.tv_sec) ? 1 : -1];
int
main (void)
/* Test of <sys/types.h> substitute.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Test of <sys/uio.h> substitute.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Eric Blake <eblake@redhat.com>, 2011. */
+
+#include <config.h>
+
+#include <sys/uio.h>
+
+/* Check that necessary types are defined. */
+size_t a;
+ssize_t b;
+struct iovec c;
+
+int
+main (void)
+{
+ return a + b + !!c.iov_base + c.iov_len;
+}
/* Test of <sys/wait.h> substitute.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This 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 (test_sys_wait_macros ())
return 1;
- switch (0)
- {
#if 0
+ switch (WCONTINUED)
+ {
/* Gnulib doesn't guarantee these, yet. */
case WCONTINUED:
case WEXITED:
case WNOWAIT:
case WSTOPPED:
-#endif
break;
}
+#endif
return a ? 1 : 0;
}
/* Test of macros shared between <sys/wait.h> and <stdlib.h>.
- Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Copyright (C) 2010-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of <time.h> substitute.
- Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Test timespec functions.
+ Copyright 2015-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Paul Eggert. */
+
+#include <config.h>
+
+#include "timespec.h"
+
+#include "intprops.h"
+#include "macros.h"
+
+#include <stdbool.h>
+#include <limits.h>
+
+static struct { int s; int ns; } const prototype[] =
+ {
+ { INT_MIN, 0 },
+ { INT_MIN, 1 },
+ { INT_MIN, TIMESPEC_RESOLUTION - 1 },
+ { INT_MIN + 1, 0 },
+ { INT_MIN + 1, 1 },
+ { INT_MIN + 1, TIMESPEC_RESOLUTION - 1 },
+ { -1, 0 },
+ { -1, 1 },
+ { -1, TIMESPEC_RESOLUTION - 1 },
+ { 0, 0 },
+ { 0, 1 },
+ { 0, TIMESPEC_RESOLUTION - 1 },
+ { 1, 0 },
+ { 1, 1 },
+ { 1, TIMESPEC_RESOLUTION - 1 },
+ { 1234567890, 0 },
+ { 1234567890, 1 },
+ { 1234567890, TIMESPEC_RESOLUTION - 1 },
+ { INT_MAX - 1, 0 },
+ { INT_MAX - 1, 1 },
+ { INT_MAX - 1, TIMESPEC_RESOLUTION - 1 },
+ { INT_MAX, 0 },
+ { INT_MAX, 1 },
+ { INT_MAX, TIMESPEC_RESOLUTION - 1 },
+ { INT_MAX, 2 * TIMESPEC_RESOLUTION }
+ };
+enum { nprototypes = sizeof prototype / sizeof *prototype };
+
+static bool
+valid (struct timespec a)
+{
+ return 0 <= a.tv_nsec && a.tv_nsec < TIMESPEC_RESOLUTION;
+}
+
+static int
+sign (int i)
+{
+ return i < 0 ? -1 : 0 < i;
+}
+
+static int
+cmp (struct timespec a, struct timespec b)
+{
+ return sign (timespec_cmp (a, b));
+}
+
+static bool
+eq (struct timespec a, struct timespec b)
+{
+ return timespec_cmp (a, b) == 0;
+}
+
+static bool
+extremal (struct timespec a)
+{
+ return ((a.tv_sec == TYPE_MINIMUM (time_t) && a.tv_nsec == 0)
+ || (a.tv_sec == TYPE_MAXIMUM (time_t)
+ && a.tv_nsec == TIMESPEC_RESOLUTION - 1));
+}
+
+int
+main (void)
+{
+ int i, j, k;
+ struct timespec test[nprototypes + 1];
+ int ntests;
+ int computed_resolution = 1;
+ struct timespec prevroundtrip;
+
+ test[0] = make_timespec (TYPE_MINIMUM (time_t), -1);
+ ntests = 1;
+ for (i = 0; i < nprototypes; i++)
+ {
+ int s = prototype[i].s;
+ if (TYPE_SIGNED (time_t) || 0 <= s)
+ {
+ time_t t = (s <= INT_MIN + 1 ? s - INT_MIN + TYPE_MINIMUM (time_t)
+ : INT_MAX - 1 <= s ? s - INT_MAX + TYPE_MAXIMUM (time_t)
+ : s);
+ test[ntests++] = make_timespec (t, prototype[i].ns);
+ }
+ }
+
+ for (i = 0; i < LOG10_TIMESPEC_RESOLUTION; i++)
+ computed_resolution *= 10;
+ ASSERT (computed_resolution == TIMESPEC_RESOLUTION);
+
+ for (i = 0; i < ntests; i++)
+ {
+ struct timespec a = test[i];
+
+ struct timespec roundtrip = dtotimespec (timespectod (a));
+ if (i != 0)
+ ASSERT (cmp (prevroundtrip, roundtrip) <= 0);
+ prevroundtrip = roundtrip;
+
+ ASSERT (sign (timespec_sign (a)) == cmp (a, make_timespec (0, 0)));
+
+ if (valid (a))
+ for (j = 0; j < ntests; j++)
+ {
+ struct timespec b = test[j];
+ if (valid (b))
+ {
+ struct timespec sum = timespec_add (a, b);
+ struct timespec diff = timespec_sub (a, b);
+ struct timespec rdiff = timespec_sub (b, a);
+ ASSERT (cmp (a, b) == sign (i - j));
+ ASSERT (eq (sum, timespec_add (b, a)));
+ if (! extremal (sum))
+ {
+ ASSERT (eq (a, timespec_sub (sum, b)));
+ ASSERT (eq (b, timespec_sub (sum, a)));
+
+ for (k = 0; k < ntests; k++)
+ {
+ struct timespec c = test[k];
+ if (valid (c))
+ {
+ struct timespec sumbc = timespec_add (b, c);
+ if (! extremal (sumbc))
+ ASSERT (eq (timespec_add (a, sumbc),
+ timespec_add (sum, c)));
+ }
+ }
+ }
+ if (! extremal (diff))
+ ASSERT (eq (a, timespec_add (diff, b)));
+ if (! extremal (rdiff))
+ ASSERT (eq (b, timespec_add (rdiff, a)));
+
+ }
+ }
+ }
+
+ return 0;
+}
/* Test of <unistd.h> substitute.
- Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Tests of unsetenv.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
#!/bin/sh
# Test suite for update-copyright.
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
# This file is part of the GNUlib Library.
#
# This program is free software: you can redistribute it and/or modify
TMP=$TMP_BASE
s=$TMP-script
cat <<\EOF > $s
-eval '(exit $?0)' && eval 'exec perl -wS -0777 -pi "$0" ${1+"$@"}'
+eval '(exit $?0)' && eval 'exec perl -wS -0777 -pi "$0" "$@"'
& eval 'exec perl -wS -0777 -pi "$0" $argv:q'
if 0;
s/a/b/
/* Test of vasnprintf() and asnprintf() functions.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
ASSERT (length == 5);
if (size < 6)
ASSERT (result != buf);
- ASSERT (memcmp (buf + size, "DEADBEEF" + size, 8 - size) == 0);
+ ASSERT (memcmp (buf + size, &"DEADBEEF"[size], 8 - size) == 0);
if (result != buf)
free (result);
}
/* Test of vasprintf() and asprintf() functions.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
#!/bin/sh
# Unit tests for vc-list-files
-# Copyright (C) 2008-2013 Free Software Foundation, Inc.
+# Copyright (C) 2008-2016 Free Software Foundation, Inc.
# This file is part of the GNUlib Library.
#
# This program is free software: you can redistribute it and/or modify
#!/bin/sh
# Unit tests for vc-list-files
-# Copyright (C) 2008-2013 Free Software Foundation, Inc.
+# Copyright (C) 2008-2016 Free Software Foundation, Inc.
# This file is part of the GNUlib Library.
#
# This program is free software: you can redistribute it and/or modify
/* Test the "verify" module.
- Copyright (C) 2005, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2005, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test suite for version-etc.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This file is part of the GNUlib Library.
This program is free software: you can redistribute it and/or modify
#! /bin/sh
# Test suite for version-etc.
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
# This file is part of the GNUlib Library.
#
# This program is free software: you can redistribute it and/or modify
/* Test of <wchar.h> substitute.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of conversion of wide character to multibyte character.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of conversion of wide character to multibyte character.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of <wctype.h> substitute.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of wcwidth() function.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of xalloc_die() function.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
#!/bin/sh
# Test suite for xalloc_die.
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
# This file is part of the GNUlib Library.
#
# This program is free software: you can redistribute it and/or modify
/* Test of xstrtol module.
- Copyright (C) 1995-1996, 1998-2001, 2003-2013 Free Software Foundation, Inc.
+ Copyright (C) 1995-1996, 1998-2001, 2003-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
test-xstrtol 010 >> out 2>&1 || result=1
# suffix without integer is valid
test-xstrtol MiB >> out 2>&1 || result=1
+test-xstrtol 1bB >> out 2>&1 && result=1
# test xstrtoul
test-xstrtoul 1 >> out 2>&1 || result=1
test-xstrtoul 9x >> out 2>&1 && result=1
test-xstrtoul 010 >> out 2>&1 || result=1
test-xstrtoul MiB >> out 2>&1 || result=1
+test-xstrtoul 1bB >> out 2>&1 && result=1
# Find out how to remove carriage returns from output. Solaris /usr/ucb/tr
# does not understand '\r'.
invalid suffix in X argument '9x'
010->8 ()
MiB->1048576 ()
+invalid suffix in X argument '1bB'
1->1 ()
invalid X argument '-1'
1k->1024 ()
invalid suffix in X argument '9x'
010->8 ()
MiB->1048576 ()
+invalid suffix in X argument '1bB'
EOF
compare expected out || result=1
/* Test of xvasprintf() and xasprintf() functions.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Written by Bruno Haible <bruno@clisp.org>, 2007. */
+/* Tell GCC not to warn about the specific edge cases tested here. */
+#if (__GNUC__ == 4 && 3 <= __GNUC_MINOR__) || 4 < __GNUC__
+# pragma GCC diagnostic ignored "-Wformat-zero-length"
+# pragma GCC diagnostic ignored "-Wformat-nonliteral"
+# pragma GCC diagnostic ignored "-Wformat-security"
+#endif
+
#include <config.h>
#include "xvasprintf.h"
}
{
- /* Silence gcc warning about zero-length format string. */
+ /* Silence gcc warning about zero-length format string,
+ and about "format not a string literal and no format"
+ (whatever that means) . */
const char *empty = "";
- result = xasprintf (empty);
+ result = xasprintf (empty, empty);
ASSERT (result != NULL);
ASSERT (strcmp (result, "") == 0);
free (result);
--- /dev/null
+/* Add two struct timespec values.
+
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Paul Eggert. */
+
+/* Return the sum of two timespec values A and B. On overflow, return
+ an extremal value. This assumes 0 <= tv_nsec < TIMESPEC_RESOLUTION. */
+
+#include <config.h>
+#include "timespec.h"
+
+#include "intprops.h"
+
+struct timespec
+timespec_add (struct timespec a, struct timespec b)
+{
+ time_t rs = a.tv_sec;
+ time_t bs = b.tv_sec;
+ int ns = a.tv_nsec + b.tv_nsec;
+ int nsd = ns - TIMESPEC_RESOLUTION;
+ int rns = ns;
+ time_t tmin = TYPE_MINIMUM (time_t);
+ time_t tmax = TYPE_MAXIMUM (time_t);
+
+ if (0 <= nsd)
+ {
+ rns = nsd;
+ if (bs < tmax)
+ bs++;
+ else if (rs < 0)
+ rs++;
+ else
+ goto high_overflow;
+ }
+
+ /* INT_ADD_WRAPV is not appropriate since time_t might be unsigned.
+ In theory time_t might be narrower than int, so plain
+ INT_ADD_OVERFLOW does not suffice. */
+ if (! INT_ADD_OVERFLOW (rs, bs) && tmin <= rs + bs && rs + bs <= tmax)
+ rs += bs;
+ else
+ {
+ if (rs < 0)
+ {
+ rs = tmin;
+ rns = 0;
+ }
+ else
+ {
+ high_overflow:
+ rs = tmax;
+ rns = TIMESPEC_RESOLUTION - 1;
+ }
+ }
+
+ return make_timespec (rs, rns);
+}
--- /dev/null
+/* Subtract two struct timespec values.
+
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Paul Eggert. */
+
+/* Return the difference between two timespec values A and B. On
+ overflow, return an extremal value. This assumes 0 <= tv_nsec <
+ TIMESPEC_RESOLUTION. */
+
+#include <config.h>
+#include "timespec.h"
+
+#include "intprops.h"
+
+struct timespec
+timespec_sub (struct timespec a, struct timespec b)
+{
+ time_t rs = a.tv_sec;
+ time_t bs = b.tv_sec;
+ int ns = a.tv_nsec - b.tv_nsec;
+ int rns = ns;
+ time_t tmin = TYPE_MINIMUM (time_t);
+ time_t tmax = TYPE_MAXIMUM (time_t);
+
+ if (ns < 0)
+ {
+ rns = ns + TIMESPEC_RESOLUTION;
+ if (bs < tmax)
+ bs++;
+ else if (- TYPE_SIGNED (time_t) < rs)
+ rs--;
+ else
+ goto low_overflow;
+ }
+
+ /* INT_SUBTRACT_WRAPV is not appropriate since time_t might be unsigned.
+ In theory time_t might be narrower than int, so plain
+ INT_SUBTRACT_OVERFLOW does not suffice. */
+ if (! INT_SUBTRACT_OVERFLOW (rs, bs) && tmin <= rs - bs && rs - bs <= tmax)
+ rs -= bs;
+ else
+ {
+ if (rs < 0)
+ {
+ low_overflow:
+ rs = tmin;
+ rns = 0;
+ }
+ else
+ {
+ rs = tmax;
+ rns = TIMESPEC_RESOLUTION - 1;
+ }
+ }
+
+ return make_timespec (rs, rns);
+}
/* Test of u8_mbtoucr() function.
- Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Copyright (C) 2010-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of u8_uctomb() function.
- Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Copyright (C) 2010-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of uc_width() function.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Test of uc_width() function.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
05C6 A
05C7 0
05C8..05FF A
-0600..0603 0
-0604..060F A
+0600..0605 0
+0606..060F A
0610..061A 0
-061B..064A A
+061B A
+061C 0
+061D..064A A
064B..065F 0
0660..066F A
0670 0
0829..082D 0
082E..0858 A
0859..085B 0
-085C..08FF A
-0900..0902 0
+085C..08E2 A
+08E3..0902 0
0903..0939 A
093A 0
093B A
0BC0 0
0BC1..0BCC A
0BCD 0
-0BCE..0C3D A
+0BCE..0BFF A
+0C00 0
+0C01..0C3D A
0C3E..0C40 0
0C41..0C45 A
0C46..0C48 0
0C55..0C56 0
0C57..0C61 A
0C62..0C63 0
-0C64..0CBB A
+0C64..0C80 A
+0C81 0
+0C82..0CBB A
0CBC 0
0CBD..0CCB A
0CCC..0CCD 0
0CCE..0CE1 A
0CE2..0CE3 0
-0CE4..0D40 A
+0CE4..0D00 A
+0D01 0
+0D02..0D40 A
0D41..0D44 0
0D45..0D4C A
0D4D 0
17D4..17DC A
17DD 0
17DE..180A A
-180B..180D 0
-180E..18A8 A
+180B..180E 0
+180F..18A8 A
18A9 0
18AA..191F A
1920..1922 0
1939..193B 0
193C..1A16 A
1A17..1A18 0
-1A19..1A55 A
+1A19..1A1A A
+1A1B 0
+1A1C..1A55 A
1A56 0
1A57 A
1A58..1A5E 0
1A73..1A7C 0
1A7D..1A7E A
1A7F 0
-1A80..1AFF A
+1A80..1AAF A
+1AB0..1ABE 0
+1ABF..1AFF A
1B00..1B03 0
1B04..1B33 A
1B34 0
1BA2..1BA5 0
1BA6..1BA7 A
1BA8..1BA9 0
-1BAA..1BE5 A
+1BAA A
+1BAB..1BAD 0
+1BAE..1BE5 A
1BE6 0
1BE7 A
1BE8..1BE9 0
1CE2..1CE8 0
1CE9..1CEC A
1CED 0
-1CEE..1DBF A
-1DC0..1DE6 0
-1DE7..1DFB A
+1CEE..1CF3 A
+1CF4 0
+1CF5..1CF7 A
+1CF8..1CF9 0
+1CFA..1DBF A
+1DC0..1DF5 0
+1DF6..1DFB A
1DFC..1DFF 0
1E00..200A A
200B..200F 0
202A..202E 0
202F..205F A
2060..2064 0
-2065..2069 A
-206A..206F 0
+2065 A
+2066..206F 0
2070..20A8 A
20A9 1
20AA..20CF A
2DE0..2DFF 0
2E00..2E7F A
2E80..3029 2
-302A..302F 0
-3030..303E 2
+302A..302D 0
+302E..303E 2
303F A
3040..3098 2
3099..309A 0
4E00..A4CF 2
A4D0..A66E A
A66F..A672 0
-A673..A67B A
-A67C..A67D 0
-A67E..A6EF A
+A673 A
+A674..A67D 0
+A67E..A69D A
+A69E..A69F 0
+A6A0..A6EF A
A6F0..A6F1 0
A6F2..A801 A
A802 0
A9B6..A9B9 0
A9BA..A9BB A
A9BC 0
-A9BD..AA28 A
+A9BD..A9E4 A
+A9E5 0
+A9E6..AA28 A
AA29..AA2E 0
AA2F..AA30 A
AA31..AA32 0
AA43 0
AA44..AA4B A
AA4C 0
-AA4D..AAAF A
+AA4D..AA7B A
+AA7C 0
+AA7D..AAAF A
AAB0 0
AAB1 A
AAB2..AAB4 0
AABE..AABF 0
AAC0 A
AAC1 0
-AAC2..ABE4 A
+AAC2..AAEB A
+AAEC..AAED 0
+AAEE..AAF5 A
+AAF6 0
+AAF7..ABE4 A
ABE5 0
ABE6..ABE7 A
ABE8 0
FB1F..FDFF A
FE00..FE0F 0
FE10..FE1F 2
-FE20..FE26 0
-FE27..FE2F A
+FE20..FE2F 0
FE30..FE6F 2
FE70..FEFE A
FEFF 0
FFF9..FFFB 0
FFFC..101FC 1
101FD 0
-101FE..10A00 1
+101FE..102DF 1
+102E0 0
+102E1..10375 1
+10376..1037A 0
+1037B..10A00 1
10A01..10A03 0
10A04 1
10A05..10A06 0
10A38..10A3A 0
10A3B..10A3E 1
10A3F 0
-10A40..11000 1
+10A40..10AE4 1
+10AE5..10AE6 0
+10AE7..11000 1
11001 0
11002..11037 1
11038..11046 0
-11047..1107F 1
-11080..11081 0
+11047..1107E 1
+1107F..11081 0
11082..110B2 1
110B3..110B6 0
110B7..110B8 1
110B9..110BA 0
110BB..110BC 1
110BD 0
-110BE..1D166 1
+110BE..110FF 1
+11100..11102 0
+11103..11126 1
+11127..1112B 0
+1112C 1
+1112D..11134 0
+11135..11172 1
+11173 0
+11174..1117F 1
+11180..11181 0
+11182..111B5 1
+111B6..111BE 0
+111BF..111C9 1
+111CA..111CC 0
+111CD..1122E 1
+1122F..11231 0
+11232..11233 1
+11234 0
+11235 1
+11236..11237 0
+11238..112DE 1
+112DF 0
+112E0..112E2 1
+112E3..112EA 0
+112EB..112FF 1
+11300..11301 0
+11302..1133B 1
+1133C 0
+1133D..1133F 1
+11340 0
+11341..11365 1
+11366..1136C 0
+1136D..1136F 1
+11370..11374 0
+11375..114B2 1
+114B3..114B8 0
+114B9 1
+114BA 0
+114BB..114BE 1
+114BF..114C0 0
+114C1 1
+114C2..114C3 0
+114C4..115B1 1
+115B2..115B5 0
+115B6..115BB 1
+115BC..115BD 0
+115BE 1
+115BF..115C0 0
+115C1..115DB 1
+115DC..115DD 0
+115DE..11632 1
+11633..1163A 0
+1163B..1163C 1
+1163D 0
+1163E 1
+1163F..11640 0
+11641..116AA 1
+116AB 0
+116AC 1
+116AD 0
+116AE..116AF 1
+116B0..116B5 0
+116B6 1
+116B7 0
+116B8..1171C 1
+1171D..1171F 0
+11720..11721 1
+11722..11725 0
+11726 1
+11727..1172B 0
+1172C..16AEF 1
+16AF0..16AF4 0
+16AF5..16B2F 1
+16B30..16B36 0
+16B37..16F8E 1
+16F8F..16F92 0
+16F93..1BC9C 1
+1BC9D..1BC9E 0
+1BC9F 1
+1BCA0..1BCA3 0
+1BCA4..1D166 1
1D167..1D169 0
1D16A..1D172 1
1D173..1D182 0
1D1AA..1D1AD 0
1D1AE..1D241 1
1D242..1D244 0
-1D245..1FFFF 1
+1D245..1D9FF 1
+1DA00..1DA36 0
+1DA37..1DA3A 1
+1DA3B..1DA6C 0
+1DA6D..1DA74 1
+1DA75 0
+1DA76..1DA83 1
+1DA84 0
+1DA85..1DA9A 1
+1DA9B..1DA9F 0
+1DAA0 1
+1DAA1..1DAAF 0
+1DAB0..1E8CF 1
+1E8D0..1E8D6 0
+1E8D7..1FFFF 1
20000..3FFFF 2
40000..E0000 1
E0001 0
+++ /dev/null
-/* Pausing execution of the current thread.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
- Written by Eric Blake <ebb9@byu.net>, 2009.
-
- This program is free software: you can redistribute it and/or modify
- 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/>. */
-
-/* This file is _intentionally_ light-weight. Rather than using
- select or nanosleep, both of which drag in external libraries on
- some platforms, this merely rounds up to the nearest second if
- usleep() does not exist. If sub-second resolution is important,
- then use a more powerful interface to begin with. */
-
-#include <config.h>
-
-/* Specification. */
-#include <unistd.h>
-
-#include <errno.h>
-
-#ifndef HAVE_USLEEP
-# define HAVE_USLEEP 0
-#endif
-
-/* Sleep for MICRO microseconds, which can be greater than 1 second.
- Return -1 and set errno to EINVAL on range error (about 4295
- seconds), or 0 on success. Interaction with SIGALARM is
- unspecified. */
-
-int
-usleep (useconds_t micro)
-{
- unsigned int seconds = micro / 1000000;
- if (sizeof seconds < sizeof micro && micro / 1000000 != seconds)
- {
- errno = EINVAL;
- return -1;
- }
- if (!HAVE_USLEEP && micro % 1000000)
- seconds++;
- while ((seconds = sleep (seconds)) != 0);
-
-#undef usleep
-#if !HAVE_USLEEP
-# define usleep(x) 0
-#endif
- return usleep (micro % 1000000);
-}
--- /dev/null
+/* w32sock.h --- internal auxiliary functions for Windows socket functions
+
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Paolo Bonzini */
+
+#include <errno.h>
+
+/* Get O_RDWR and O_BINARY. */
+#include <fcntl.h>
+
+/* Get _open_osfhandle(). */
+#include <io.h>
+
+/* Get _get_osfhandle(). */
+#include "msvc-nothrow.h"
+
+#define FD_TO_SOCKET(fd) ((SOCKET) _get_osfhandle ((fd)))
+#define SOCKET_TO_FD(fh) (_open_osfhandle ((intptr_t) (fh), O_RDWR | O_BINARY))
+
+static inline void
+set_winsock_errno (void)
+{
+ int err = WSAGetLastError ();
+
+ /* Map some WSAE* errors to the runtime library's error codes. */
+ switch (err)
+ {
+ case WSA_INVALID_HANDLE:
+ errno = EBADF;
+ break;
+ case WSA_NOT_ENOUGH_MEMORY:
+ errno = ENOMEM;
+ break;
+ case WSA_INVALID_PARAMETER:
+ errno = EINVAL;
+ break;
+ case WSAENAMETOOLONG:
+ errno = ENAMETOOLONG;
+ break;
+ case WSAENOTEMPTY:
+ errno = ENOTEMPTY;
+ break;
+ case WSAEWOULDBLOCK:
+ errno = EWOULDBLOCK;
+ break;
+ case WSAEINPROGRESS:
+ errno = EINPROGRESS;
+ break;
+ case WSAEALREADY:
+ errno = EALREADY;
+ break;
+ case WSAENOTSOCK:
+ errno = ENOTSOCK;
+ break;
+ case WSAEDESTADDRREQ:
+ errno = EDESTADDRREQ;
+ break;
+ case WSAEMSGSIZE:
+ errno = EMSGSIZE;
+ break;
+ case WSAEPROTOTYPE:
+ errno = EPROTOTYPE;
+ break;
+ case WSAENOPROTOOPT:
+ errno = ENOPROTOOPT;
+ break;
+ case WSAEPROTONOSUPPORT:
+ errno = EPROTONOSUPPORT;
+ break;
+ case WSAEOPNOTSUPP:
+ errno = EOPNOTSUPP;
+ break;
+ case WSAEAFNOSUPPORT:
+ errno = EAFNOSUPPORT;
+ break;
+ case WSAEADDRINUSE:
+ errno = EADDRINUSE;
+ break;
+ case WSAEADDRNOTAVAIL:
+ errno = EADDRNOTAVAIL;
+ break;
+ case WSAENETDOWN:
+ errno = ENETDOWN;
+ break;
+ case WSAENETUNREACH:
+ errno = ENETUNREACH;
+ break;
+ case WSAENETRESET:
+ errno = ENETRESET;
+ break;
+ case WSAECONNABORTED:
+ errno = ECONNABORTED;
+ break;
+ case WSAECONNRESET:
+ errno = ECONNRESET;
+ break;
+ case WSAENOBUFS:
+ errno = ENOBUFS;
+ break;
+ case WSAEISCONN:
+ errno = EISCONN;
+ break;
+ case WSAENOTCONN:
+ errno = ENOTCONN;
+ break;
+ case WSAETIMEDOUT:
+ errno = ETIMEDOUT;
+ break;
+ case WSAECONNREFUSED:
+ errno = ECONNREFUSED;
+ break;
+ case WSAELOOP:
+ errno = ELOOP;
+ break;
+ case WSAEHOSTUNREACH:
+ errno = EHOSTUNREACH;
+ break;
+ default:
+ errno = (err > 10000 && err < 10025) ? err - 10000 : err;
+ break;
+ }
+}
/* Convert wide character to unibyte character.
- Copyright (C) 2008, 2010-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008, 2010-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2008.
This program is free software: you can redistribute it and/or modify
/* Convert wide character to multibyte character.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2011.
This program is free software: you can redistribute it and/or modify
/* Convert wide character to multibyte character.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2011.
This program is free software: you can redistribute it and/or modify
/* Return a pointer to a zero-size object in memory.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
# Automakefile for GNU Diffutils library.
-# Copyright (C) 2001-2002, 2004, 2006, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2002, 2004, 2006, 2009-2013, 2015-2016 Free Software
+# Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
-# Makefile.in generated by automake 1.13a from Makefile.am.
+# Makefile.in generated by automake 1.99a from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+# Copyright (C) 1994-2015 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Automakefile for GNU Diffutils library.
-# Copyright (C) 2001-2002, 2004, 2006, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2002, 2004, 2006, 2009-2013, 2015-2016 Free Software
+# Foundation, Inc.
# This 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 <http://www.gnu.org/licenses/>.
-# Copyright (C) 2002-2013 Free Software Foundation, Inc.
+# Copyright (C) 2002-2016 Free Software Foundation, Inc.
#
# This file is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the same distribution terms as the rest of that program.
#
# Generated by gnulib-tool.
-# Reproduce by: gnulib-tool --import --dir=. --local-dir=gl --lib=libdiffutils --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=gnulib-tests --aux-dir=build-aux --with-tests --avoid=localename --avoid=lock --makefile-name=gnulib.mk --no-conditional-dependencies --no-libtool --macro-prefix=gl announce-gen binary-io c-stack config-h diffseq dirname do-release-commit-and-tag dup2 error exclude exitfail extensions fcntl fdl file-type filenamecat fnmatch-gnu getopt gettext-h gettime git-version-gen gitlog-to-changelog gnu-make gnu-web-doc-update gnumakefile gnupload hard-locale inttostr inttypes largefile lstat maintainer-makefile manywarnings mbrtowc mkstemp mktime progname propername readme-release regex sh-quote signal stat stat-macros stat-time stdint strcase strftime strptime strtoumax sys_wait system-quote unistd unlocked-io update-copyright vararrays verify version-etc version-etc-fsf wcwidth xalloc xfreopen xreadlink xstrtoumax xvasprintf
+# Reproduce by: gnulib-tool --import --local-dir=gl --lib=libdiffutils --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=gnulib-tests --aux-dir=build-aux --with-tests --avoid=localename --avoid=lock --makefile-name=gnulib.mk --no-conditional-dependencies --no-libtool --macro-prefix=gl announce-gen argmatch binary-io c-stack config-h diffseq dirname do-release-commit-and-tag dup2 error exclude exitfail extensions fcntl fdl file-type filenamecat fnmatch-gnu getopt gettext-h gettime git-version-gen gitlog-to-changelog gnu-make gnu-web-doc-update gnumakefile gnupload hard-locale inttostr inttypes isblank largefile lstat maintainer-makefile manywarnings mbrtowc mkstemp mktime progname propername rawmemchr readme-release regex sh-quote signal stat stat-macros stat-time stdint strcase strftime strptime strtoumax sys_wait system-quote unistd unlocked-io update-copyright vararrays verify version-etc version-etc-fsf wcwidth xalloc xfreopen xreadlink xstrtoumax xvasprintf
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = { \
+ if test -z '$(MAKELEVEL)'; then \
+ false; \
+ elif test -n '$(MAKE_HOST)'; then \
+ true; \
+ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+ true; \
+ else \
+ false; \
+ fi; \
+}
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
esac; \
- test $$am__dry = yes; \
- }
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-DIST_COMMON = $(srcdir)/gnulib.mk $(srcdir)/Makefile.in \
- $(srcdir)/Makefile.am $(srcdir)/config.hin alloca.c \
- $(top_srcdir)/build-aux/depcomp $(noinst_HEADERS)
@LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_TRUE@am__append_1 = unistr/u8-mbtoucr.c
@LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE@am__append_2 = unistr/u8-uctomb.c unistr/u8-uctomb-aux.c
@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@am__append_3 = uniwidth/width.c
subdir = lib
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
- $(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/btowc.m4 \
+ $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \
+ $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/btowc.m4 \
$(top_srcdir)/m4/c-stack.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/dirname.m4 \
+ $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
$(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
$(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
$(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
$(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fcntl-o.m4 \
$(top_srcdir)/m4/fcntl.m4 $(top_srcdir)/m4/fcntl_h.m4 \
$(top_srcdir)/m4/fdopen.m4 $(top_srcdir)/m4/filenamecat.m4 \
- $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fnmatch.m4 \
- $(top_srcdir)/m4/fpieee.m4 $(top_srcdir)/m4/freopen.m4 \
- $(top_srcdir)/m4/fstat.m4 $(top_srcdir)/m4/getcwd.m4 \
+ $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \
+ $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fpieee.m4 \
+ $(top_srcdir)/m4/freopen.m4 $(top_srcdir)/m4/fstat.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/gettext.m4 \
$(top_srcdir)/m4/gettime.m4 $(top_srcdir)/m4/gettimeofday.m4 \
$(top_srcdir)/m4/gnulib-comp.m4 \
$(top_srcdir)/m4/hard-locale.m4 $(top_srcdir)/m4/iconv.m4 \
$(top_srcdir)/m4/iconv_h.m4 $(top_srcdir)/m4/iconv_open.m4 \
- $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inline.m4 \
- $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \
- $(top_srcdir)/m4/inttostr.m4 $(top_srcdir)/m4/inttypes-pri.m4 \
- $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \
- $(top_srcdir)/m4/iswblank.m4 $(top_srcdir)/m4/langinfo_h.m4 \
- $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \
- $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/libsigsegv.m4 \
+ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
+ $(top_srcdir)/m4/inline.m4 $(top_srcdir)/m4/intlmacosx.m4 \
+ $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttostr.m4 \
+ $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+ $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/ioctl.m4 \
+ $(top_srcdir)/m4/isblank.m4 $(top_srcdir)/m4/iswblank.m4 \
+ $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
+ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
+ $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \
$(top_srcdir)/m4/libunistring-base.m4 \
$(top_srcdir)/m4/localcharset.m4 $(top_srcdir)/m4/locale-fr.m4 \
$(top_srcdir)/m4/locale-ja.m4 $(top_srcdir)/m4/locale-tr.m4 \
$(top_srcdir)/m4/mktime.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/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
$(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/off_t.m4 \
$(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
+ $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
$(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/putenv.m4 \
$(top_srcdir)/m4/quote.m4 $(top_srcdir)/m4/quotearg.m4 \
- $(top_srcdir)/m4/raise.m4 $(top_srcdir)/m4/readlink.m4 \
- $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/secure_getenv.m4 \
+ $(top_srcdir)/m4/raise.m4 $(top_srcdir)/m4/rawmemchr.m4 \
+ $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/regex.m4 \
+ $(top_srcdir)/m4/secure_getenv.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/signalblocking.m4 \
$(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \
- $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/ssize_t.m4 \
+ $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/socketlib.m4 \
+ $(top_srcdir)/m4/sockets.m4 $(top_srcdir)/m4/socklen.m4 \
+ $(top_srcdir)/m4/sockpfaf.m4 $(top_srcdir)/m4/ssize_t.m4 \
$(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \
- $(top_srcdir)/m4/stdarg.m4 $(top_srcdir)/m4/stdbool.m4 \
- $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \
- $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \
- $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/strcase.m4 \
- $(top_srcdir)/m4/strerror.m4 $(top_srcdir)/m4/strftime.m4 \
+ $(top_srcdir)/m4/stdalign.m4 $(top_srcdir)/m4/stdarg.m4 \
+ $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \
+ $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \
+ $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \
+ $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strerror.m4 \
+ $(top_srcdir)/m4/strerror_r.m4 $(top_srcdir)/m4/strftime.m4 \
$(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \
$(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \
$(top_srcdir)/m4/strptime.m4 $(top_srcdir)/m4/strtoull.m4 \
$(top_srcdir)/m4/strtoumax.m4 $(top_srcdir)/m4/symlink.m4 \
+ $(top_srcdir)/m4/sys_ioctl_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 \
- $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_wait_h.m4 \
- $(top_srcdir)/m4/tempname.m4 $(top_srcdir)/m4/time_h.m4 \
- $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/timespec.m4 \
- $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/unistd_h.m4 \
- $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/usleep.m4 \
+ $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_uio_h.m4 \
+ $(top_srcdir)/m4/sys_wait_h.m4 $(top_srcdir)/m4/tempname.m4 \
+ $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \
+ $(top_srcdir)/m4/time_rz.m4 $(top_srcdir)/m4/timegm.m4 \
+ $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \
+ $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlocked-io.m4 \
$(top_srcdir)/m4/vararrays.m4 $(top_srcdir)/m4/vasnprintf.m4 \
$(top_srcdir)/m4/vasprintf.m4 $(top_srcdir)/m4/version-etc.m4 \
$(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
$(top_srcdir)/m4/xvasprintf.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(noinst_HEADERS) \
+ $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES =
am__v_AR_1 =
libdiffutils_a_AR = $(AR) $(ARFLAGS)
am__DEPENDENCIES_1 =
-am__libdiffutils_a_SOURCES_DIST = allocator.c areadlink.c binary-io.h \
- binary-io.c bitrotate.h bitrotate.c c-ctype.h c-ctype.c \
- c-stack.h c-stack.c c-strcase.h c-strcasecmp.c c-strncasecmp.c \
- careadlinkat.c diffseq.h dirname.c basename.c dirname-lgpl.c \
- basename-lgpl.c stripslash.c exclude.c exitfail.c fd-hook.c \
- file-type.c filenamecat.c filenamecat-lgpl.c freopen-safer.c \
- gettext.h gettime.c hard-locale.c hash.c imaxtostr.c \
- inttostr.c offtostr.c uinttostr.c umaxtostr.c localcharset.h \
- localcharset.c malloca.c mbchar.c mbiter.h mbiter.c \
- mbscasecmp.c mbslen.c mbsstr.c mbuiter.h mbuiter.c progname.h \
- progname.c propername.h propername.c quotearg.c sh-quote.h \
- sh-quote.c sig-handler.c size_max.h stat-time.c strftime.c \
- striconv.h striconv.c strnlen1.h strnlen1.c system-quote.h \
- system-quote.c tempname.c timespec.c trim.c unistd.c \
- unistr/u8-mbtoucr.c unistr/u8-uctomb.c unistr/u8-uctomb-aux.c \
- uniwidth/width.c version-etc.h version-etc.c version-etc-fsf.c \
- wctype-h.c xmalloc.c xalloc-die.c xfreopen.c xfreopen.h \
- xreadlink.c xsize.h xsize.c xstriconv.h xstriconv.c xstrndup.h \
- xstrndup.c xstrtol.c xstrtoul.c xstrtol-error.c xstrtoumax.c \
- xvasprintf.h xvasprintf.c xasprintf.c cmpbuf.c prepargs.c
-@LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_TRUE@am__objects_1 = u8-mbtoucr.$(OBJEXT)
-@LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE@am__objects_2 = u8-uctomb.$(OBJEXT) \
-@LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE@ u8-uctomb-aux.$(OBJEXT)
-@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@am__objects_3 = \
-@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@ width.$(OBJEXT)
+am__libdiffutils_a_SOURCES_DIST = allocator.c areadlink.c argmatch.c \
+ binary-io.h binary-io.c bitrotate.h bitrotate.c c-ctype.h \
+ c-ctype.c c-stack.h c-stack.c c-strcase.h c-strcasecmp.c \
+ c-strncasecmp.c careadlinkat.c diffseq.h dirname.c basename.c \
+ dirname-lgpl.c basename-lgpl.c stripslash.c exclude.c \
+ exitfail.c fd-hook.c file-type.c filenamecat.c \
+ filenamecat-lgpl.c freopen-safer.c gettext.h gettime.c \
+ hard-locale.c hash.c imaxtostr.c inttostr.c offtostr.c \
+ uinttostr.c umaxtostr.c localcharset.h localcharset.c \
+ malloca.c mbchar.c mbiter.h mbiter.c mbscasecmp.c mbslen.c \
+ mbsstr.c mbuiter.h mbuiter.c progname.h progname.c \
+ propername.h propername.c quotearg.c sh-quote.h sh-quote.c \
+ sig-handler.c size_max.h stat-time.c strftime.c striconv.h \
+ striconv.c strnlen1.h strnlen1.c system-quote.h system-quote.c \
+ tempname.c timespec.c trim.c unistd.c unistr/u8-mbtoucr.c \
+ unistr/u8-uctomb.c unistr/u8-uctomb-aux.c uniwidth/width.c \
+ version-etc.h version-etc.c version-etc-fsf.c wctype-h.c \
+ xmalloc.c xalloc-die.c xfreopen.c xfreopen.h xreadlink.c \
+ xsize.h xsize.c xstriconv.h xstriconv.c xstrndup.h xstrndup.c \
+ xstrtol.c xstrtoul.c xstrtol-error.c xstrtoumax.c xvasprintf.h \
+ xvasprintf.c xasprintf.c cmpbuf.c prepargs.c
+am__dirstamp = .dirstamp
+@LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_TRUE@am__objects_1 = unistr/u8-mbtoucr.$(OBJEXT)
+@LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE@am__objects_2 = unistr/u8-uctomb.$(OBJEXT) \
+@LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE@ unistr/u8-uctomb-aux.$(OBJEXT)
+@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@am__objects_3 = uniwidth/width.$(OBJEXT)
am_libdiffutils_a_OBJECTS = allocator.$(OBJEXT) areadlink.$(OBJEXT) \
- binary-io.$(OBJEXT) bitrotate.$(OBJEXT) c-ctype.$(OBJEXT) \
- c-stack.$(OBJEXT) c-strcasecmp.$(OBJEXT) \
+ argmatch.$(OBJEXT) binary-io.$(OBJEXT) bitrotate.$(OBJEXT) \
+ c-ctype.$(OBJEXT) c-stack.$(OBJEXT) c-strcasecmp.$(OBJEXT) \
c-strncasecmp.$(OBJEXT) careadlinkat.$(OBJEXT) \
dirname.$(OBJEXT) basename.$(OBJEXT) dirname-lgpl.$(OBJEXT) \
basename-lgpl.$(OBJEXT) stripslash.$(OBJEXT) exclude.$(OBJEXT) \
am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp
-am__depfiles_maybe = depfiles
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade = $(DEPDIR)/alloca.Po ./$(DEPDIR)/alloca.Po \
+ ./$(DEPDIR)/allocator.Po ./$(DEPDIR)/anytostr.Po \
+ ./$(DEPDIR)/areadlink.Po ./$(DEPDIR)/argmatch.Po \
+ ./$(DEPDIR)/asnprintf.Po ./$(DEPDIR)/asprintf.Po \
+ ./$(DEPDIR)/basename-lgpl.Po ./$(DEPDIR)/basename.Po \
+ ./$(DEPDIR)/binary-io.Po ./$(DEPDIR)/bitrotate.Po \
+ ./$(DEPDIR)/btowc.Po ./$(DEPDIR)/c-ctype.Po \
+ ./$(DEPDIR)/c-stack.Po ./$(DEPDIR)/c-strcasecmp.Po \
+ ./$(DEPDIR)/c-strncasecmp.Po ./$(DEPDIR)/careadlinkat.Po \
+ ./$(DEPDIR)/close.Po ./$(DEPDIR)/cmpbuf.Po \
+ ./$(DEPDIR)/dirname-lgpl.Po ./$(DEPDIR)/dirname.Po \
+ ./$(DEPDIR)/dup2.Po ./$(DEPDIR)/error.Po \
+ ./$(DEPDIR)/exclude.Po ./$(DEPDIR)/exitfail.Po \
+ ./$(DEPDIR)/fcntl.Po ./$(DEPDIR)/fd-hook.Po \
+ ./$(DEPDIR)/file-type.Po ./$(DEPDIR)/filenamecat-lgpl.Po \
+ ./$(DEPDIR)/filenamecat.Po ./$(DEPDIR)/float.Po \
+ ./$(DEPDIR)/fnmatch.Po ./$(DEPDIR)/fnmatch_loop.Po \
+ ./$(DEPDIR)/freopen-safer.Po ./$(DEPDIR)/freopen.Po \
+ ./$(DEPDIR)/fstat.Po ./$(DEPDIR)/getdtablesize.Po \
+ ./$(DEPDIR)/getopt.Po ./$(DEPDIR)/getopt1.Po \
+ ./$(DEPDIR)/gettime.Po ./$(DEPDIR)/gettimeofday.Po \
+ ./$(DEPDIR)/hard-locale.Po ./$(DEPDIR)/hash.Po \
+ ./$(DEPDIR)/iconv.Po ./$(DEPDIR)/iconv_close.Po \
+ ./$(DEPDIR)/iconv_open.Po ./$(DEPDIR)/imaxtostr.Po \
+ ./$(DEPDIR)/inttostr.Po ./$(DEPDIR)/isblank.Po \
+ ./$(DEPDIR)/iswblank.Po ./$(DEPDIR)/itold.Po \
+ ./$(DEPDIR)/localcharset.Po ./$(DEPDIR)/localeconv.Po \
+ ./$(DEPDIR)/lstat.Po ./$(DEPDIR)/malloc.Po \
+ ./$(DEPDIR)/malloca.Po ./$(DEPDIR)/mbchar.Po \
+ ./$(DEPDIR)/mbiter.Po ./$(DEPDIR)/mbrtowc.Po \
+ ./$(DEPDIR)/mbscasecmp.Po ./$(DEPDIR)/mbsinit.Po \
+ ./$(DEPDIR)/mbslen.Po ./$(DEPDIR)/mbsrtowcs-state.Po \
+ ./$(DEPDIR)/mbsrtowcs.Po ./$(DEPDIR)/mbsstr.Po \
+ ./$(DEPDIR)/mbtowc.Po ./$(DEPDIR)/mbuiter.Po \
+ ./$(DEPDIR)/memchr.Po ./$(DEPDIR)/mkstemp.Po \
+ ./$(DEPDIR)/mktime.Po ./$(DEPDIR)/msvc-inval.Po \
+ ./$(DEPDIR)/msvc-nothrow.Po ./$(DEPDIR)/nl_langinfo.Po \
+ ./$(DEPDIR)/offtostr.Po ./$(DEPDIR)/open.Po \
+ ./$(DEPDIR)/prepargs.Po ./$(DEPDIR)/printf-args.Po \
+ ./$(DEPDIR)/printf-parse.Po ./$(DEPDIR)/progname.Po \
+ ./$(DEPDIR)/propername.Po ./$(DEPDIR)/quotearg.Po \
+ ./$(DEPDIR)/raise.Po ./$(DEPDIR)/rawmemchr.Po \
+ ./$(DEPDIR)/readlink.Po ./$(DEPDIR)/regcomp.Po \
+ ./$(DEPDIR)/regex.Po ./$(DEPDIR)/regex_internal.Po \
+ ./$(DEPDIR)/regexec.Po ./$(DEPDIR)/secure_getenv.Po \
+ ./$(DEPDIR)/setenv.Po ./$(DEPDIR)/sh-quote.Po \
+ ./$(DEPDIR)/sig-handler.Po ./$(DEPDIR)/sigaction.Po \
+ ./$(DEPDIR)/sigprocmask.Po ./$(DEPDIR)/stat-time.Po \
+ ./$(DEPDIR)/stat.Po ./$(DEPDIR)/strcasecmp.Po \
+ ./$(DEPDIR)/strerror-override.Po ./$(DEPDIR)/strerror.Po \
+ ./$(DEPDIR)/strftime.Po ./$(DEPDIR)/striconv.Po \
+ ./$(DEPDIR)/stripslash.Po ./$(DEPDIR)/strncasecmp.Po \
+ ./$(DEPDIR)/strndup.Po ./$(DEPDIR)/strnlen.Po \
+ ./$(DEPDIR)/strnlen1.Po ./$(DEPDIR)/strptime.Po \
+ ./$(DEPDIR)/strtoimax.Po ./$(DEPDIR)/strtol.Po \
+ ./$(DEPDIR)/strtoul.Po ./$(DEPDIR)/strtoull.Po \
+ ./$(DEPDIR)/strtoumax.Po ./$(DEPDIR)/system-quote.Po \
+ ./$(DEPDIR)/tempname.Po ./$(DEPDIR)/time_r.Po \
+ ./$(DEPDIR)/time_rz.Po ./$(DEPDIR)/timegm.Po \
+ ./$(DEPDIR)/timespec.Po ./$(DEPDIR)/trim.Po \
+ ./$(DEPDIR)/uinttostr.Po ./$(DEPDIR)/umaxtostr.Po \
+ ./$(DEPDIR)/unistd.Po ./$(DEPDIR)/unsetenv.Po \
+ ./$(DEPDIR)/vasnprintf.Po ./$(DEPDIR)/vasprintf.Po \
+ ./$(DEPDIR)/version-etc-fsf.Po ./$(DEPDIR)/version-etc.Po \
+ ./$(DEPDIR)/wcrtomb.Po ./$(DEPDIR)/wctype-h.Po \
+ ./$(DEPDIR)/wcwidth.Po ./$(DEPDIR)/xalloc-die.Po \
+ ./$(DEPDIR)/xasprintf.Po ./$(DEPDIR)/xfreopen.Po \
+ ./$(DEPDIR)/xmalloc.Po ./$(DEPDIR)/xreadlink.Po \
+ ./$(DEPDIR)/xsize.Po ./$(DEPDIR)/xstriconv.Po \
+ ./$(DEPDIR)/xstrndup.Po ./$(DEPDIR)/xstrtol-error.Po \
+ ./$(DEPDIR)/xstrtol.Po ./$(DEPDIR)/xstrtoul.Po \
+ ./$(DEPDIR)/xstrtoumax.Po ./$(DEPDIR)/xvasprintf.Po \
+ unistr/$(DEPDIR)/u8-mbtoucr.Po \
+ unistr/$(DEPDIR)/u8-uctomb-aux.Po \
+ unistr/$(DEPDIR)/u8-uctomb.Po uniwidth/$(DEPDIR)/width.Po
am__mv = mv -f
-AM_V_lt = $(am__v_lt_@AM_V@)
-am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
-am__v_lt_0 = --silent
-am__v_lt_1 =
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
- $(AM_CFLAGS) $(CFLAGS)
+am__set_depbase = depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.[^.]*$$||'`
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
AM_V_CC = $(am__v_CC_@AM_V@)
am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
am__v_CC_0 = @echo " CC " $@;
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
+am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.hin \
+ $(srcdir)/gnulib.mk $(top_srcdir)/build-aux/depcomp alloca.c
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
pkglibexecdir = @pkglibexecdir@
ACLOCAL = @ACLOCAL@
GLIBC21 = @GLIBC21@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
+GNULIB_ACCEPT = @GNULIB_ACCEPT@
+GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
GNULIB_ATOLL = @GNULIB_ATOLL@
+GNULIB_BIND = @GNULIB_BIND@
GNULIB_BTOWC = @GNULIB_BTOWC@
GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@
GNULIB_CANONICALIZE_FILE_NAME = @GNULIB_CANONICALIZE_FILE_NAME@
GNULIB_CHDIR = @GNULIB_CHDIR@
GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
+GNULIB_CONNECT = @GNULIB_CONNECT@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
GNULIB_DUP = @GNULIB_DUP@
GNULIB_DUP2 = @GNULIB_DUP2@
GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
+GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
+GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
GNULIB_ICONV = @GNULIB_ICONV@
GNULIB_IMAXABS = @GNULIB_IMAXABS@
GNULIB_IMAXDIV = @GNULIB_IMAXDIV@
+GNULIB_INET_NTOP = @GNULIB_INET_NTOP@
+GNULIB_INET_PTON = @GNULIB_INET_PTON@
+GNULIB_IOCTL = @GNULIB_IOCTL@
GNULIB_ISATTY = @GNULIB_ISATTY@
+GNULIB_ISBLANK = @GNULIB_ISBLANK@
GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
GNULIB_LCHMOD = @GNULIB_LCHMOD@
GNULIB_LCHOWN = @GNULIB_LCHOWN@
GNULIB_LINK = @GNULIB_LINK@
GNULIB_LINKAT = @GNULIB_LINKAT@
+GNULIB_LISTEN = @GNULIB_LISTEN@
GNULIB_LOCALECONV = @GNULIB_LOCALECONV@
GNULIB_LSEEK = @GNULIB_LSEEK@
GNULIB_LSTAT = @GNULIB_LSTAT@
GNULIB_PREAD = @GNULIB_PREAD@
GNULIB_PRINTF = @GNULIB_PRINTF@
GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@
+GNULIB_PSELECT = @GNULIB_PSELECT@
GNULIB_PTHREAD_SIGMASK = @GNULIB_PTHREAD_SIGMASK@
GNULIB_PTSNAME = @GNULIB_PTSNAME@
GNULIB_PTSNAME_R = @GNULIB_PTSNAME_R@
GNULIB_PUTENV = @GNULIB_PUTENV@
GNULIB_PUTS = @GNULIB_PUTS@
GNULIB_PWRITE = @GNULIB_PWRITE@
+GNULIB_QSORT_R = @GNULIB_QSORT_R@
GNULIB_RAISE = @GNULIB_RAISE@
GNULIB_RANDOM = @GNULIB_RANDOM@
GNULIB_RANDOM_R = @GNULIB_RANDOM_R@
GNULIB_READLINKAT = @GNULIB_READLINKAT@
GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@
GNULIB_REALPATH = @GNULIB_REALPATH@
+GNULIB_RECV = @GNULIB_RECV@
+GNULIB_RECVFROM = @GNULIB_RECVFROM@
GNULIB_REMOVE = @GNULIB_REMOVE@
GNULIB_RENAME = @GNULIB_RENAME@
GNULIB_RENAMEAT = @GNULIB_RENAMEAT@
GNULIB_RPMATCH = @GNULIB_RPMATCH@
GNULIB_SCANF = @GNULIB_SCANF@
GNULIB_SECURE_GETENV = @GNULIB_SECURE_GETENV@
+GNULIB_SELECT = @GNULIB_SELECT@
+GNULIB_SEND = @GNULIB_SEND@
+GNULIB_SENDTO = @GNULIB_SENDTO@
GNULIB_SETENV = @GNULIB_SETENV@
GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
+GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
GNULIB_SIGACTION = @GNULIB_SIGACTION@
GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
GNULIB_SLEEP = @GNULIB_SLEEP@
GNULIB_SNPRINTF = @GNULIB_SNPRINTF@
+GNULIB_SOCKET = @GNULIB_SOCKET@
GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@
GNULIB_STAT = @GNULIB_STAT@
GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@
GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@
GNULIB_TIMEGM = @GNULIB_TIMEGM@
GNULIB_TIME_R = @GNULIB_TIME_R@
+GNULIB_TIME_RZ = @GNULIB_TIME_RZ@
GNULIB_TMPFILE = @GNULIB_TMPFILE@
GNULIB_TOWCTRANS = @GNULIB_TOWCTRANS@
GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@
GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
+HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@
HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@
HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@
+HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@
+HAVE_DECL_INET_PTON = @HAVE_DECL_INET_PTON@
HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@
HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@
HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
+HAVE_ISBLANK = @HAVE_ISBLANK@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@
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@
HAVE_MBRTOWC = @HAVE_MBRTOWC@
HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MKSTEMPS = @HAVE_MKSTEMPS@
HAVE_MSVC_INVALID_PARAMETER_HANDLER = @HAVE_MSVC_INVALID_PARAMETER_HANDLER@
HAVE_NANOSLEEP = @HAVE_NANOSLEEP@
+HAVE_NETINET_IN_H = @HAVE_NETINET_IN_H@
HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@
HAVE_OPENAT = @HAVE_OPENAT@
HAVE_OS_H = @HAVE_OS_H@
HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
HAVE_PREAD = @HAVE_PREAD@
+HAVE_PSELECT = @HAVE_PSELECT@
HAVE_PTHREAD_SIGMASK = @HAVE_PTHREAD_SIGMASK@
HAVE_PTSNAME = @HAVE_PTSNAME@
HAVE_PTSNAME_R = @HAVE_PTSNAME_R@
HAVE_REALPATH = @HAVE_REALPATH@
HAVE_RENAMEAT = @HAVE_RENAMEAT@
HAVE_RPMATCH = @HAVE_RPMATCH@
+HAVE_SA_FAMILY_T = @HAVE_SA_FAMILY_T@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
HAVE_STRUCT_SIGACTION_SA_SIGACTION = @HAVE_STRUCT_SIGACTION_SA_SIGACTION@
+HAVE_STRUCT_SOCKADDR_STORAGE = @HAVE_STRUCT_SOCKADDR_STORAGE@
+HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY = @HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY@
HAVE_STRUCT_TIMEVAL = @HAVE_STRUCT_TIMEVAL@
HAVE_STRVERSCMP = @HAVE_STRVERSCMP@
HAVE_SYMLINK = @HAVE_SYMLINK@
HAVE_SYMLINKAT = @HAVE_SYMLINKAT@
HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@
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_SELECT_H = @HAVE_SYS_SELECT_H@
+HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@
+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_UNISTD_H = @HAVE_UNISTD_H@
HAVE_UNLINKAT = @HAVE_UNLINKAT@
HAVE_WMEMCPY = @HAVE_WMEMCPY@
HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
HAVE_WMEMSET = @HAVE_WMEMSET@
+HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
HAVE__BOOL = @HAVE__BOOL@
HAVE__EXIT = @HAVE__EXIT@
ICONV_H = @ICONV_H@
INCLUDE_NEXT = @INCLUDE_NEXT@
INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@
+INET_PTON_LIB = @INET_PTON_LIB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
LIBS = @LIBS@
LIBSIGSEGV = @LIBSIGSEGV@
LIBSIGSEGV_PREFIX = @LIBSIGSEGV_PREFIX@
+LIBSOCKET = @LIBSOCKET@
LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
LIBUNISTRING_UNISTR_H = @LIBUNISTRING_UNISTR_H@
LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@
LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@
LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_SELECT = @LIB_SELECT@
LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@
LOCALE_FR = @LOCALE_FR@
LOCALE_FR_UTF8 = @LOCALE_FR_UTF8@
MSGFMT = @MSGFMT@
MSGFMT_015 = @MSGFMT_015@
MSGMERGE = @MSGMERGE@
+NETINET_IN_H = @NETINET_IN_H@
+NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@
NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@
NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@
NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@
NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H = @NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H@
NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H = @NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H@
NEXT_AS_FIRST_DIRECTIVE_LOCALE_H = @NEXT_AS_FIRST_DIRECTIVE_LOCALE_H@
+NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H = @NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H@
NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H = @NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H@
NEXT_AS_FIRST_DIRECTIVE_STDARG_H = @NEXT_AS_FIRST_DIRECTIVE_STDARG_H@
NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@
NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_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_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@
NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H@
NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@
NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@
NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@
NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@
+NEXT_CTYPE_H = @NEXT_CTYPE_H@
NEXT_ERRNO_H = @NEXT_ERRNO_H@
NEXT_FCNTL_H = @NEXT_FCNTL_H@
NEXT_FLOAT_H = @NEXT_FLOAT_H@
NEXT_INTTYPES_H = @NEXT_INTTYPES_H@
NEXT_LANGINFO_H = @NEXT_LANGINFO_H@
NEXT_LOCALE_H = @NEXT_LOCALE_H@
+NEXT_NETINET_IN_H = @NEXT_NETINET_IN_H@
NEXT_SIGNAL_H = @NEXT_SIGNAL_H@
NEXT_STDARG_H = @NEXT_STDARG_H@
NEXT_STDDEF_H = @NEXT_STDDEF_H@
NEXT_STDLIB_H = @NEXT_STDLIB_H@
NEXT_STRINGS_H = @NEXT_STRINGS_H@
NEXT_STRING_H = @NEXT_STRING_H@
+NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_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@
NEXT_SYS_TIME_H = @NEXT_SYS_TIME_H@
NEXT_SYS_TYPES_H = @NEXT_SYS_TYPES_H@
+NEXT_SYS_UIO_H = @NEXT_SYS_UIO_H@
NEXT_SYS_WAIT_H = @NEXT_SYS_WAIT_H@
NEXT_TIME_H = @NEXT_TIME_H@
NEXT_UNISTD_H = @NEXT_UNISTD_H@
REPLACE_GETCWD = @REPLACE_GETCWD@
REPLACE_GETDELIM = @REPLACE_GETDELIM@
REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@
+REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@
REPLACE_GETGROUPS = @REPLACE_GETGROUPS@
REPLACE_GETLINE = @REPLACE_GETLINE@
REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
+REPLACE_GMTIME = @REPLACE_GMTIME@
REPLACE_ICONV = @REPLACE_ICONV@
REPLACE_ICONV_OPEN = @REPLACE_ICONV_OPEN@
REPLACE_ICONV_UTF = @REPLACE_ICONV_UTF@
+REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
+REPLACE_INET_PTON = @REPLACE_INET_PTON@
+REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
REPLACE_LINK = @REPLACE_LINK@
REPLACE_LINKAT = @REPLACE_LINKAT@
REPLACE_LOCALECONV = @REPLACE_LOCALECONV@
+REPLACE_LOCALTIME = @REPLACE_LOCALTIME@
REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@
REPLACE_LSEEK = @REPLACE_LSEEK@
REPLACE_LSTAT = @REPLACE_LSTAT@
REPLACE_POPEN = @REPLACE_POPEN@
REPLACE_PREAD = @REPLACE_PREAD@
REPLACE_PRINTF = @REPLACE_PRINTF@
+REPLACE_PSELECT = @REPLACE_PSELECT@
REPLACE_PTHREAD_SIGMASK = @REPLACE_PTHREAD_SIGMASK@
REPLACE_PTSNAME = @REPLACE_PTSNAME@
REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@
REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
+REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
+REPLACE_READLINKAT = @REPLACE_READLINKAT@
REPLACE_REALLOC = @REPLACE_REALLOC@
REPLACE_REALPATH = @REPLACE_REALPATH@
REPLACE_REMOVE = @REPLACE_REMOVE@
REPLACE_RENAME = @REPLACE_RENAME@
REPLACE_RENAMEAT = @REPLACE_RENAMEAT@
REPLACE_RMDIR = @REPLACE_RMDIR@
+REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOIMAX = @REPLACE_STRTOIMAX@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOUMAX = @REPLACE_STRTOUMAX@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
+REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@
REPLACE_TIMEGM = @REPLACE_TIMEGM@
REPLACE_TMPFILE = @REPLACE_TMPFILE@
REPLACE_TOWLOWER = @REPLACE_TOWLOWER@
REPLACE_WCTOMB = @REPLACE_WCTOMB@
REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
REPLACE_WRITE = @REPLACE_WRITE@
+SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
SIZE_T_SUFFIX = @SIZE_T_SUFFIX@
SRC_VERSION_C = @SRC_VERSION_C@
+STDALIGN_H = @STDALIGN_H@
STDARG_H = @STDARG_H@
STDBOOL_H = @STDBOOL_H@
STDDEF_H = @STDDEF_H@
STDINT_H = @STDINT_H@
STRIP = @STRIP@
+SYS_IOCTL_H_HAVE_WINSOCK2_H = @SYS_IOCTL_H_HAVE_WINSOCK2_H@
+SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@
TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@
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_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@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
am__include = @am__include@
am__quote = @am__quote@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
+mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
# statements but through direct file reference. Therefore this snippet must be
# present in all Makefile.am that need it. This is ensured by the applicability
# 'all' defined above.
-BUILT_SOURCES = $(ALLOCA_H) configmake.h $(ERRNO_H) fcntl.h $(FLOAT_H) \
- $(FNMATCH_H) $(GETOPT_H) $(ICONV_H) iconv_open-aix.h \
- iconv_open-hpux.h iconv_open-irix.h iconv_open-osf.h \
- iconv_open-solaris.h inttypes.h langinfo.h locale.h signal.h \
- arg-nonnull.h c++defs.h unused-parameter.h warn-on-use.h \
- $(STDARG_H) $(STDBOOL_H) $(STDDEF_H) $(STDINT_H) stdio.h \
- stdlib.h string.h strings.h sys/stat.h sys/time.h sys/types.h \
- sys/wait.h time.h unistd.h $(LIBUNISTRING_UNISTR_H) \
- $(LIBUNISTRING_UNITYPES_H) $(LIBUNISTRING_UNIWIDTH_H) wchar.h \
- wctype.h
+BUILT_SOURCES = $(ALLOCA_H) configmake.h ctype.h $(ERRNO_H) fcntl.h \
+ $(FLOAT_H) $(FNMATCH_H) $(GETOPT_H) $(ICONV_H) \
+ iconv_open-aix.h iconv_open-hpux.h iconv_open-irix.h \
+ iconv_open-osf.h iconv_open-solaris.h inttypes.h langinfo.h \
+ locale.h signal.h arg-nonnull.h c++defs.h unused-parameter.h \
+ warn-on-use.h $(STDARG_H) $(STDBOOL_H) $(STDDEF_H) $(STDINT_H) \
+ stdio.h stdlib.h string.h strings.h sys/stat.h sys/time.h \
+ sys/types.h sys/wait.h time.h unistd.h \
+ $(LIBUNISTRING_UNISTR_H) $(LIBUNISTRING_UNITYPES_H) \
+ $(LIBUNISTRING_UNIWIDTH_H) wchar.h wctype.h
CLEANFILES = configmake.h configmake.h-t charset.alias ref-add.sed \
ref-del.sed
# for the 2004 POSIX specification]
#endif
EXTRA_DIST = alloca.c alloca.in.h allocator.h \
- $(top_srcdir)/build-aux/announce-gen areadlink.h btowc.c \
- c-strcaseeq.h careadlinkat.h close.c stripslash.c dirname.h \
+ $(top_srcdir)/build-aux/announce-gen areadlink.h argmatch.h \
+ assure.h btowc.c c-strcaseeq.h careadlinkat.h close.c \
+ ctype.in.h stripslash.c dirname.h \
$(top_srcdir)/build-aux/do-release-commit-and-tag dosname.h \
dup2.c errno.in.h error.c error.h exclude.h exitfail.h fcntl.c \
- fcntl.in.h fd-hook.h file-type.h filenamecat.h float.c \
- float.in.h itold.c fnmatch.c fnmatch.in.h fnmatch_loop.c \
- freopen.c stdio--.h stdio-safer.h fstat.c \
+ fcntl.in.h fd-hook.h file-type.h filename.h filenamecat.h \
+ float.c float.in.h itold.c fnmatch.c fnmatch.in.h \
+ fnmatch_loop.c freopen.c stdio--.h stdio-safer.h fstat.c \
$(top_srcdir)/build-aux/gendocs.sh getdtablesize.c getopt.c \
getopt.in.h getopt1.c getopt_int.h gettimeofday.c \
$(top_srcdir)/build-aux/git-version-gen \
iconv_open-hpux.gperf iconv_open-irix.gperf \
iconv_open-osf.gperf iconv_open-solaris.gperf iconv_open.c \
ignore-value.h intprops.h anytostr.c inttostr.h inttypes.in.h \
- iswblank.c langinfo.in.h config.charset ref-add.sin \
+ isblank.c iswblank.c langinfo.in.h config.charset ref-add.sin \
ref-del.sin locale.in.h localeconv.c lstat.c \
- $(top_srcdir)/maint.mk malloc.c malloc.c malloca.h \
- malloca.valgrind mbchar.h mbrtowc.c mbsinit.c mbsrtowcs-impl.h \
+ $(top_srcdir)/maint.mk malloc.c malloca.h malloca.valgrind \
+ mbchar.h mbrtowc.c mbsinit.c mbsrtowcs-impl.h \
mbsrtowcs-state.c mbsrtowcs.c str-kmp.h mbtowc-impl.h mbtowc.c \
memchr.c memchr.valgrind mkstemp.c mktime-internal.h mktime.c \
- msvc-inval.c msvc-inval.h msvc-nothrow.c msvc-nothrow.h \
- nl_langinfo.c open.c pathmax.h quote.h quote.h quotearg.h \
- raise.c readlink.c $(top_srcdir)/README-release regcomp.c \
- regex.c regex.h regex_internal.c regex_internal.h regexec.c \
- secure_getenv.c sig-handler.h sigaction.c signal.in.h \
- sigprocmask.c $(top_srcdir)/build-aux/snippet/_Noreturn.h \
+ mktime-internal.h mktime.c msvc-inval.c msvc-inval.h \
+ msvc-nothrow.c msvc-nothrow.h nl_langinfo.c open.c pathmax.h \
+ quote.h quote.h quotearg.h raise.c rawmemchr.c \
+ rawmemchr.valgrind readlink.c $(top_srcdir)/README-release \
+ regcomp.c regex.c regex.h regex_internal.c regex_internal.h \
+ regexec.c secure_getenv.c setenv.c sig-handler.h sigaction.c \
+ signal.in.h sigprocmask.c \
+ $(top_srcdir)/build-aux/snippet/_Noreturn.h \
$(top_srcdir)/build-aux/snippet/arg-nonnull.h \
$(top_srcdir)/build-aux/snippet/c++defs.h \
$(top_srcdir)/build-aux/snippet/unused-parameter.h \
strftime.h string.in.h strings.in.h strndup.c strnlen.c \
strptime.c strtol.c strtoul.c strtoull.c strtoimax.c \
strtoumax.c sys_stat.in.h sys_time.in.h sys_types.in.h \
- sys_wait.in.h tempname.h time.in.h time_r.c timespec.h trim.h \
+ sys_wait.in.h tempname.h time.in.h time_r.c time-internal.h \
+ time_rz.c mktime-internal.h timegm.c timespec.h trim.h \
unistd.in.h unistr.in.h unitypes.in.h localcharset.h \
- uniwidth.in.h uniwidth/cjk.h unlocked-io.h \
+ uniwidth.in.h uniwidth/cjk.h unlocked-io.h unsetenv.c \
$(top_srcdir)/build-aux/update-copyright \
$(top_srcdir)/build-aux/useless-if-before-free asnprintf.c \
float+.h printf-args.c printf-args.h printf-parse.c \
wchar.in.h wcrtomb.c wctype.in.h wcwidth.c xalloc.h \
xalloc-oversized.h xreadlink.h xstrtol.h xalloc.h
MOSTLYCLEANDIRS = sys sys
-MOSTLYCLEANFILES = core *.stackdump alloca.h alloca.h-t errno.h \
- errno.h-t fcntl.h fcntl.h-t float.h float.h-t fnmatch.h \
- fnmatch.h-t getopt.h getopt.h-t iconv.h iconv.h-t \
- iconv_open-aix.h-t iconv_open-hpux.h-t iconv_open-irix.h-t \
- iconv_open-osf.h-t iconv_open-solaris.h-t inttypes.h \
- inttypes.h-t langinfo.h langinfo.h-t locale.h locale.h-t \
- signal.h signal.h-t arg-nonnull.h arg-nonnull.h-t c++defs.h \
- c++defs.h-t unused-parameter.h unused-parameter.h-t \
+MOSTLYCLEANFILES = core *.stackdump alloca.h alloca.h-t ctype.h \
+ ctype.h-t errno.h errno.h-t fcntl.h fcntl.h-t float.h \
+ float.h-t fnmatch.h fnmatch.h-t getopt.h getopt.h-t iconv.h \
+ iconv.h-t iconv_open-aix.h-t iconv_open-hpux.h-t \
+ iconv_open-irix.h-t iconv_open-osf.h-t iconv_open-solaris.h-t \
+ inttypes.h inttypes.h-t langinfo.h langinfo.h-t locale.h \
+ locale.h-t signal.h signal.h-t arg-nonnull.h arg-nonnull.h-t \
+ c++defs.h c++defs.h-t unused-parameter.h unused-parameter.h-t \
warn-on-use.h warn-on-use.h-t stdarg.h stdarg.h-t stdbool.h \
stdbool.h-t stddef.h stddef.h-t stdint.h stdint.h-t stdio.h \
stdio.h-t stdlib.h stdlib.h-t string.h string.h-t strings.h \
SUFFIXES = .sed .sin
noinst_LIBRARIES = libdiffutils.a
noinst_HEADERS = cmpbuf.h prepargs.h
-libdiffutils_a_SOURCES = allocator.c areadlink.c binary-io.h \
- binary-io.c bitrotate.h bitrotate.c c-ctype.h c-ctype.c \
- c-stack.h c-stack.c c-strcase.h c-strcasecmp.c c-strncasecmp.c \
- careadlinkat.c diffseq.h dirname.c basename.c dirname-lgpl.c \
- basename-lgpl.c stripslash.c exclude.c exitfail.c fd-hook.c \
- file-type.c filenamecat.c filenamecat-lgpl.c freopen-safer.c \
- gettext.h gettime.c hard-locale.c hash.c imaxtostr.c \
- inttostr.c offtostr.c uinttostr.c umaxtostr.c localcharset.h \
- localcharset.c malloca.c mbchar.c mbiter.h mbiter.c \
- mbscasecmp.c mbslen.c mbsstr.c mbuiter.h mbuiter.c progname.h \
- progname.c propername.h propername.c quotearg.c sh-quote.h \
- sh-quote.c sig-handler.c size_max.h stat-time.c strftime.c \
- striconv.h striconv.c strnlen1.h strnlen1.c system-quote.h \
- system-quote.c tempname.c timespec.c trim.c unistd.c \
- $(am__append_1) $(am__append_2) $(am__append_3) version-etc.h \
- version-etc.c version-etc-fsf.c wctype-h.c xmalloc.c \
- xalloc-die.c xfreopen.c xfreopen.h xreadlink.c xsize.h xsize.c \
- xstriconv.h xstriconv.c xstrndup.h xstrndup.c xstrtol.c \
- xstrtoul.c xstrtol-error.c xstrtoumax.c xvasprintf.h \
- xvasprintf.c xasprintf.c cmpbuf.c prepargs.c
+libdiffutils_a_SOURCES = allocator.c areadlink.c argmatch.c \
+ binary-io.h binary-io.c bitrotate.h bitrotate.c c-ctype.h \
+ c-ctype.c c-stack.h c-stack.c c-strcase.h c-strcasecmp.c \
+ c-strncasecmp.c careadlinkat.c diffseq.h dirname.c basename.c \
+ dirname-lgpl.c basename-lgpl.c stripslash.c exclude.c \
+ exitfail.c fd-hook.c file-type.c filenamecat.c \
+ filenamecat-lgpl.c freopen-safer.c gettext.h gettime.c \
+ hard-locale.c hash.c imaxtostr.c inttostr.c offtostr.c \
+ uinttostr.c umaxtostr.c localcharset.h localcharset.c \
+ malloca.c mbchar.c mbiter.h mbiter.c mbscasecmp.c mbslen.c \
+ mbsstr.c mbuiter.h mbuiter.c progname.h progname.c \
+ propername.h propername.c quotearg.c sh-quote.h sh-quote.c \
+ sig-handler.c size_max.h stat-time.c strftime.c striconv.h \
+ striconv.c strnlen1.h strnlen1.c system-quote.h system-quote.c \
+ tempname.c timespec.c trim.c unistd.c $(am__append_1) \
+ $(am__append_2) $(am__append_3) version-etc.h version-etc.c \
+ version-etc-fsf.c wctype-h.c xmalloc.c xalloc-die.c xfreopen.c \
+ xfreopen.h xreadlink.c xsize.h xsize.c xstriconv.h xstriconv.c \
+ xstrndup.h xstrndup.c xstrtol.c xstrtoul.c xstrtol-error.c \
+ xstrtoumax.c xvasprintf.h xvasprintf.c xasprintf.c cmpbuf.c \
+ prepargs.c
libdiffutils_a_LIBADD = $(gl_LIBOBJS) @ALLOCA@
libdiffutils_a_DEPENDENCIES = $(gl_LIBOBJS) @ALLOCA@
EXTRA_libdiffutils_a_SOURCES = alloca.c btowc.c close.c stripslash.c \
dup2.c error.c fcntl.c float.c itold.c fnmatch.c \
fnmatch_loop.c freopen.c fstat.c getdtablesize.c getopt.c \
getopt1.c gettimeofday.c iconv.c iconv_close.c iconv_open.c \
- anytostr.c iswblank.c localeconv.c lstat.c malloc.c malloc.c \
+ anytostr.c isblank.c iswblank.c localeconv.c lstat.c malloc.c \
mbrtowc.c mbsinit.c mbsrtowcs-state.c mbsrtowcs.c mbtowc.c \
- memchr.c mkstemp.c mktime.c msvc-inval.c msvc-nothrow.c \
- nl_langinfo.c open.c raise.c readlink.c regcomp.c regex.c \
- regex_internal.c regexec.c secure_getenv.c sigaction.c \
- sigprocmask.c stat.c strcasecmp.c strncasecmp.c strerror.c \
- strerror-override.c strndup.c strnlen.c strptime.c strtol.c \
- strtoul.c strtoull.c strtoimax.c strtoumax.c time_r.c \
+ memchr.c mkstemp.c mktime.c mktime.c msvc-inval.c \
+ msvc-nothrow.c nl_langinfo.c open.c raise.c rawmemchr.c \
+ readlink.c regcomp.c regex.c regex_internal.c regexec.c \
+ secure_getenv.c setenv.c sigaction.c sigprocmask.c stat.c \
+ strcasecmp.c strncasecmp.c strerror.c strerror-override.c \
+ strndup.c strnlen.c strptime.c strtol.c strtoul.c strtoull.c \
+ strtoimax.c strtoumax.c time_r.c time_rz.c timegm.c unsetenv.c \
asnprintf.c printf-args.c printf-parse.c vasnprintf.c \
asprintf.c vasprintf.c wcrtomb.c wcwidth.c
+
+# Use this preprocessor expression to decide whether #include_next works.
+# Do not rely on a 'configure'-time test for this, since the expression
+# might appear in an installed header, which is used by some other compiler.
+HAVE_INCLUDE_NEXT = (__GNUC__ || 60000000 <= __DECC_VER)
GPERF = gperf
+V_GPERF = $(V_GPERF_@AM_V@)
+V_GPERF_ = $(V_GPERF_@AM_DEFAULT_V@)
+V_GPERF_0 = @echo " GPERF " $@;
charset_alias = $(DESTDIR)$(libdir)/charset.alias
charset_tmp = $(DESTDIR)$(libdir)/charset.tmp
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu lib/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu lib/Makefile
-.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
esac;
-$(srcdir)/gnulib.mk:
+$(srcdir)/gnulib.mk $(am__empty):
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
config.h: stamp-h1
- @if test ! -f $@; then rm -f stamp-h1; else :; fi
- @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi
+ @test -f $@ || rm -f stamp-h1
+ @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
stamp-h1: $(srcdir)/config.hin $(top_builddir)/config.status
@rm -f stamp-h1
clean-noinstLIBRARIES:
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
+unistr/$(am__dirstamp):
+ @$(MKDIR_P) unistr
+ @: > unistr/$(am__dirstamp)
+unistr/$(DEPDIR)/$(am__dirstamp):
+ @$(MKDIR_P) unistr/$(DEPDIR)
+ @: > unistr/$(DEPDIR)/$(am__dirstamp)
+unistr/u8-mbtoucr.$(OBJEXT): unistr/$(am__dirstamp) \
+ unistr/$(DEPDIR)/$(am__dirstamp)
+unistr/u8-uctomb.$(OBJEXT): unistr/$(am__dirstamp) \
+ unistr/$(DEPDIR)/$(am__dirstamp)
+unistr/u8-uctomb-aux.$(OBJEXT): unistr/$(am__dirstamp) \
+ unistr/$(DEPDIR)/$(am__dirstamp)
+uniwidth/$(am__dirstamp):
+ @$(MKDIR_P) uniwidth
+ @: > uniwidth/$(am__dirstamp)
+uniwidth/$(DEPDIR)/$(am__dirstamp):
+ @$(MKDIR_P) uniwidth/$(DEPDIR)
+ @: > uniwidth/$(DEPDIR)/$(am__dirstamp)
+uniwidth/width.$(OBJEXT): uniwidth/$(am__dirstamp) \
+ uniwidth/$(DEPDIR)/$(am__dirstamp)
+
libdiffutils.a: $(libdiffutils_a_OBJECTS) $(libdiffutils_a_DEPENDENCIES) $(EXTRA_libdiffutils_a_DEPENDENCIES)
$(AM_V_at)-rm -f libdiffutils.a
$(AM_V_AR)$(libdiffutils_a_AR) libdiffutils.a $(libdiffutils_a_OBJECTS) $(libdiffutils_a_LIBADD)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
+ -rm -f unistr/*.$(OBJEXT)
+ -rm -f uniwidth/*.$(OBJEXT)
distclean-compile:
-rm -f *.tab.c
-@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/alloca.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alloca.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/allocator.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/anytostr.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/areadlink.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/asnprintf.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/asprintf.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/basename-lgpl.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/basename.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/binary-io.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bitrotate.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btowc.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-ctype.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-stack.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-strcasecmp.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-strncasecmp.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/careadlinkat.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/close.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cmpbuf.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dirname-lgpl.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dirname.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dup2.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/error.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exclude.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exitfail.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcntl.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fd-hook.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/file-type.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/filenamecat-lgpl.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/filenamecat.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/float.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fnmatch.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fnmatch_loop.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/freopen-safer.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/freopen.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fstat.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getdtablesize.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt1.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gettime.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gettimeofday.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hard-locale.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hash.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/iconv.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/iconv_close.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/iconv_open.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/imaxtostr.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/inttostr.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/iswblank.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/itold.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/localcharset.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/localeconv.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lstat.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/malloc.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/malloca.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbchar.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbiter.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbrtowc.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbscasecmp.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsinit.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbslen.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsrtowcs-state.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsrtowcs.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsstr.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbtowc.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbuiter.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/memchr.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mkstemp.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mktime.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/msvc-inval.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/msvc-nothrow.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nl_langinfo.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/offtostr.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/open.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/prepargs.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printf-args.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printf-parse.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/progname.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/propername.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/quotearg.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/raise.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/readlink.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regcomp.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regex.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regex_internal.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regexec.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/secure_getenv.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sh-quote.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sig-handler.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sigaction.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sigprocmask.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stat-time.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stat.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strcasecmp.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strerror-override.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strerror.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strftime.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/striconv.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stripslash.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strncasecmp.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strndup.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strnlen.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strnlen1.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strptime.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtoimax.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtol.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtoul.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtoull.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtoumax.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/system-quote.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tempname.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/time_r.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timespec.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/trim.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/u8-mbtoucr.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/u8-uctomb-aux.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/u8-uctomb.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/uinttostr.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/umaxtostr.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unistd.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vasnprintf.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vasprintf.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/version-etc-fsf.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/version-etc.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcrtomb.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wctype-h.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcwidth.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/width.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xalloc-die.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xasprintf.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xfreopen.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmalloc.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xreadlink.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xsize.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstriconv.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrndup.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtol-error.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtol.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtoul.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtoumax.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xvasprintf.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/alloca.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alloca.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/allocator.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/anytostr.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/areadlink.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argmatch.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/asnprintf.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/asprintf.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/basename-lgpl.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/basename.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/binary-io.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bitrotate.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btowc.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-ctype.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-stack.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-strcasecmp.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-strncasecmp.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/careadlinkat.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/close.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cmpbuf.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dirname-lgpl.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dirname.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dup2.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/error.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exclude.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exitfail.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcntl.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fd-hook.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/file-type.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/filenamecat-lgpl.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/filenamecat.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/float.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fnmatch.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fnmatch_loop.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/freopen-safer.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/freopen.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fstat.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getdtablesize.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt1.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gettime.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gettimeofday.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hard-locale.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hash.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/iconv.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/iconv_close.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/iconv_open.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/imaxtostr.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/inttostr.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/isblank.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/iswblank.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/itold.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/localcharset.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/localeconv.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lstat.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/malloc.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/malloca.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbchar.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbiter.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbrtowc.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbscasecmp.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsinit.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbslen.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsrtowcs-state.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsrtowcs.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsstr.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbtowc.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbuiter.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/memchr.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mkstemp.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mktime.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/msvc-inval.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/msvc-nothrow.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nl_langinfo.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/offtostr.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/open.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/prepargs.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printf-args.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printf-parse.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/progname.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/propername.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/quotearg.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/raise.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rawmemchr.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/readlink.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regcomp.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regex.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regex_internal.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regexec.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/secure_getenv.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setenv.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sh-quote.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sig-handler.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sigaction.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sigprocmask.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stat-time.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stat.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strcasecmp.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strerror-override.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strerror.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strftime.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/striconv.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stripslash.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strncasecmp.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strndup.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strnlen.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strnlen1.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strptime.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtoimax.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtol.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtoul.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtoull.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtoumax.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/system-quote.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tempname.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/time_r.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/time_rz.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timegm.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timespec.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/trim.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/uinttostr.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/umaxtostr.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unistd.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unsetenv.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vasnprintf.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vasprintf.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/version-etc-fsf.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/version-etc.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcrtomb.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wctype-h.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcwidth.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xalloc-die.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xasprintf.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xfreopen.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmalloc.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xreadlink.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xsize.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstriconv.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrndup.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtol-error.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtol.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtoul.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtoumax.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xvasprintf.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u8-mbtoucr.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u8-uctomb-aux.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u8-uctomb.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@uniwidth/$(DEPDIR)/width.Po@am__quote@ # am--include-marker
+
+$(am__depfiles_remade):
+ @$(MKDIR_P) $(@D)
+ @echo '# dummy' >$@-t && $(am__mv) $@-t $@
+
+am--depfiles: $(am__depfiles_remade)
.c.o:
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(am__set_depbase) && \
+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $<; \
+@am__fastdepCC_TRUE@ if test $$? = 0; then $(am__mv) $$depbase.Tpo $$depbase.Po; \
+@am__fastdepCC_TRUE@ else rm -f $$depbase.Tpo; false; fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(am__set_depbase) && \
+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $$($(CYGPATH_W) $<); \
+@am__fastdepCC_TRUE@ if test $$? = 0; then $(am__mv) $$depbase.Tpo $$depbase.Po; \
+@am__fastdepCC_TRUE@ else rm -f $$depbase.Tpo; false; fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
-
-u8-mbtoucr.o: unistr/u8-mbtoucr.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT u8-mbtoucr.o -MD -MP -MF $(DEPDIR)/u8-mbtoucr.Tpo -c -o u8-mbtoucr.o `test -f 'unistr/u8-mbtoucr.c' || echo '$(srcdir)/'`unistr/u8-mbtoucr.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/u8-mbtoucr.Tpo $(DEPDIR)/u8-mbtoucr.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unistr/u8-mbtoucr.c' object='u8-mbtoucr.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o u8-mbtoucr.o `test -f 'unistr/u8-mbtoucr.c' || echo '$(srcdir)/'`unistr/u8-mbtoucr.c
-
-u8-mbtoucr.obj: unistr/u8-mbtoucr.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT u8-mbtoucr.obj -MD -MP -MF $(DEPDIR)/u8-mbtoucr.Tpo -c -o u8-mbtoucr.obj `if test -f 'unistr/u8-mbtoucr.c'; then $(CYGPATH_W) 'unistr/u8-mbtoucr.c'; else $(CYGPATH_W) '$(srcdir)/unistr/u8-mbtoucr.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/u8-mbtoucr.Tpo $(DEPDIR)/u8-mbtoucr.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unistr/u8-mbtoucr.c' object='u8-mbtoucr.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o u8-mbtoucr.obj `if test -f 'unistr/u8-mbtoucr.c'; then $(CYGPATH_W) 'unistr/u8-mbtoucr.c'; else $(CYGPATH_W) '$(srcdir)/unistr/u8-mbtoucr.c'; fi`
-
-u8-uctomb.o: unistr/u8-uctomb.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT u8-uctomb.o -MD -MP -MF $(DEPDIR)/u8-uctomb.Tpo -c -o u8-uctomb.o `test -f 'unistr/u8-uctomb.c' || echo '$(srcdir)/'`unistr/u8-uctomb.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/u8-uctomb.Tpo $(DEPDIR)/u8-uctomb.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unistr/u8-uctomb.c' object='u8-uctomb.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o u8-uctomb.o `test -f 'unistr/u8-uctomb.c' || echo '$(srcdir)/'`unistr/u8-uctomb.c
-
-u8-uctomb.obj: unistr/u8-uctomb.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT u8-uctomb.obj -MD -MP -MF $(DEPDIR)/u8-uctomb.Tpo -c -o u8-uctomb.obj `if test -f 'unistr/u8-uctomb.c'; then $(CYGPATH_W) 'unistr/u8-uctomb.c'; else $(CYGPATH_W) '$(srcdir)/unistr/u8-uctomb.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/u8-uctomb.Tpo $(DEPDIR)/u8-uctomb.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unistr/u8-uctomb.c' object='u8-uctomb.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o u8-uctomb.obj `if test -f 'unistr/u8-uctomb.c'; then $(CYGPATH_W) 'unistr/u8-uctomb.c'; else $(CYGPATH_W) '$(srcdir)/unistr/u8-uctomb.c'; fi`
-
-u8-uctomb-aux.o: unistr/u8-uctomb-aux.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT u8-uctomb-aux.o -MD -MP -MF $(DEPDIR)/u8-uctomb-aux.Tpo -c -o u8-uctomb-aux.o `test -f 'unistr/u8-uctomb-aux.c' || echo '$(srcdir)/'`unistr/u8-uctomb-aux.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/u8-uctomb-aux.Tpo $(DEPDIR)/u8-uctomb-aux.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unistr/u8-uctomb-aux.c' object='u8-uctomb-aux.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o u8-uctomb-aux.o `test -f 'unistr/u8-uctomb-aux.c' || echo '$(srcdir)/'`unistr/u8-uctomb-aux.c
-
-u8-uctomb-aux.obj: unistr/u8-uctomb-aux.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT u8-uctomb-aux.obj -MD -MP -MF $(DEPDIR)/u8-uctomb-aux.Tpo -c -o u8-uctomb-aux.obj `if test -f 'unistr/u8-uctomb-aux.c'; then $(CYGPATH_W) 'unistr/u8-uctomb-aux.c'; else $(CYGPATH_W) '$(srcdir)/unistr/u8-uctomb-aux.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/u8-uctomb-aux.Tpo $(DEPDIR)/u8-uctomb-aux.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unistr/u8-uctomb-aux.c' object='u8-uctomb-aux.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o u8-uctomb-aux.obj `if test -f 'unistr/u8-uctomb-aux.c'; then $(CYGPATH_W) 'unistr/u8-uctomb-aux.c'; else $(CYGPATH_W) '$(srcdir)/unistr/u8-uctomb-aux.c'; fi`
-
-width.o: uniwidth/width.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT width.o -MD -MP -MF $(DEPDIR)/width.Tpo -c -o width.o `test -f 'uniwidth/width.c' || echo '$(srcdir)/'`uniwidth/width.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/width.Tpo $(DEPDIR)/width.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='uniwidth/width.c' object='width.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o width.o `test -f 'uniwidth/width.c' || echo '$(srcdir)/'`uniwidth/width.c
-
-width.obj: uniwidth/width.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT width.obj -MD -MP -MF $(DEPDIR)/width.Tpo -c -o width.obj `if test -f 'uniwidth/width.c'; then $(CYGPATH_W) 'uniwidth/width.c'; else $(CYGPATH_W) '$(srcdir)/uniwidth/width.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/width.Tpo $(DEPDIR)/width.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='uniwidth/width.c' object='width.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o width.obj `if test -f 'uniwidth/width.c'; then $(CYGPATH_W) 'uniwidth/width.c'; else $(CYGPATH_W) '$(srcdir)/uniwidth/width.c'; fi`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $$($(CYGPATH_W) $<)
ID: $(am__tagged_files)
$(am__define_uniq_tagged_files); mkid -fID $$unique
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+ -rm -f unistr/$(DEPDIR)/$(am__dirstamp)
+ -rm -f unistr/$(am__dirstamp)
+ -rm -f uniwidth/$(DEPDIR)/$(am__dirstamp)
+ -rm -f uniwidth/$(am__dirstamp)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
distclean: distclean-am
- -rm -rf $(DEPDIR) ./$(DEPDIR)
+ -rm -f $(DEPDIR)/alloca.Po
+ -rm -f ./$(DEPDIR)/alloca.Po
+ -rm -f ./$(DEPDIR)/allocator.Po
+ -rm -f ./$(DEPDIR)/anytostr.Po
+ -rm -f ./$(DEPDIR)/areadlink.Po
+ -rm -f ./$(DEPDIR)/argmatch.Po
+ -rm -f ./$(DEPDIR)/asnprintf.Po
+ -rm -f ./$(DEPDIR)/asprintf.Po
+ -rm -f ./$(DEPDIR)/basename-lgpl.Po
+ -rm -f ./$(DEPDIR)/basename.Po
+ -rm -f ./$(DEPDIR)/binary-io.Po
+ -rm -f ./$(DEPDIR)/bitrotate.Po
+ -rm -f ./$(DEPDIR)/btowc.Po
+ -rm -f ./$(DEPDIR)/c-ctype.Po
+ -rm -f ./$(DEPDIR)/c-stack.Po
+ -rm -f ./$(DEPDIR)/c-strcasecmp.Po
+ -rm -f ./$(DEPDIR)/c-strncasecmp.Po
+ -rm -f ./$(DEPDIR)/careadlinkat.Po
+ -rm -f ./$(DEPDIR)/close.Po
+ -rm -f ./$(DEPDIR)/cmpbuf.Po
+ -rm -f ./$(DEPDIR)/dirname-lgpl.Po
+ -rm -f ./$(DEPDIR)/dirname.Po
+ -rm -f ./$(DEPDIR)/dup2.Po
+ -rm -f ./$(DEPDIR)/error.Po
+ -rm -f ./$(DEPDIR)/exclude.Po
+ -rm -f ./$(DEPDIR)/exitfail.Po
+ -rm -f ./$(DEPDIR)/fcntl.Po
+ -rm -f ./$(DEPDIR)/fd-hook.Po
+ -rm -f ./$(DEPDIR)/file-type.Po
+ -rm -f ./$(DEPDIR)/filenamecat-lgpl.Po
+ -rm -f ./$(DEPDIR)/filenamecat.Po
+ -rm -f ./$(DEPDIR)/float.Po
+ -rm -f ./$(DEPDIR)/fnmatch.Po
+ -rm -f ./$(DEPDIR)/fnmatch_loop.Po
+ -rm -f ./$(DEPDIR)/freopen-safer.Po
+ -rm -f ./$(DEPDIR)/freopen.Po
+ -rm -f ./$(DEPDIR)/fstat.Po
+ -rm -f ./$(DEPDIR)/getdtablesize.Po
+ -rm -f ./$(DEPDIR)/getopt.Po
+ -rm -f ./$(DEPDIR)/getopt1.Po
+ -rm -f ./$(DEPDIR)/gettime.Po
+ -rm -f ./$(DEPDIR)/gettimeofday.Po
+ -rm -f ./$(DEPDIR)/hard-locale.Po
+ -rm -f ./$(DEPDIR)/hash.Po
+ -rm -f ./$(DEPDIR)/iconv.Po
+ -rm -f ./$(DEPDIR)/iconv_close.Po
+ -rm -f ./$(DEPDIR)/iconv_open.Po
+ -rm -f ./$(DEPDIR)/imaxtostr.Po
+ -rm -f ./$(DEPDIR)/inttostr.Po
+ -rm -f ./$(DEPDIR)/isblank.Po
+ -rm -f ./$(DEPDIR)/iswblank.Po
+ -rm -f ./$(DEPDIR)/itold.Po
+ -rm -f ./$(DEPDIR)/localcharset.Po
+ -rm -f ./$(DEPDIR)/localeconv.Po
+ -rm -f ./$(DEPDIR)/lstat.Po
+ -rm -f ./$(DEPDIR)/malloc.Po
+ -rm -f ./$(DEPDIR)/malloca.Po
+ -rm -f ./$(DEPDIR)/mbchar.Po
+ -rm -f ./$(DEPDIR)/mbiter.Po
+ -rm -f ./$(DEPDIR)/mbrtowc.Po
+ -rm -f ./$(DEPDIR)/mbscasecmp.Po
+ -rm -f ./$(DEPDIR)/mbsinit.Po
+ -rm -f ./$(DEPDIR)/mbslen.Po
+ -rm -f ./$(DEPDIR)/mbsrtowcs-state.Po
+ -rm -f ./$(DEPDIR)/mbsrtowcs.Po
+ -rm -f ./$(DEPDIR)/mbsstr.Po
+ -rm -f ./$(DEPDIR)/mbtowc.Po
+ -rm -f ./$(DEPDIR)/mbuiter.Po
+ -rm -f ./$(DEPDIR)/memchr.Po
+ -rm -f ./$(DEPDIR)/mkstemp.Po
+ -rm -f ./$(DEPDIR)/mktime.Po
+ -rm -f ./$(DEPDIR)/msvc-inval.Po
+ -rm -f ./$(DEPDIR)/msvc-nothrow.Po
+ -rm -f ./$(DEPDIR)/nl_langinfo.Po
+ -rm -f ./$(DEPDIR)/offtostr.Po
+ -rm -f ./$(DEPDIR)/open.Po
+ -rm -f ./$(DEPDIR)/prepargs.Po
+ -rm -f ./$(DEPDIR)/printf-args.Po
+ -rm -f ./$(DEPDIR)/printf-parse.Po
+ -rm -f ./$(DEPDIR)/progname.Po
+ -rm -f ./$(DEPDIR)/propername.Po
+ -rm -f ./$(DEPDIR)/quotearg.Po
+ -rm -f ./$(DEPDIR)/raise.Po
+ -rm -f ./$(DEPDIR)/rawmemchr.Po
+ -rm -f ./$(DEPDIR)/readlink.Po
+ -rm -f ./$(DEPDIR)/regcomp.Po
+ -rm -f ./$(DEPDIR)/regex.Po
+ -rm -f ./$(DEPDIR)/regex_internal.Po
+ -rm -f ./$(DEPDIR)/regexec.Po
+ -rm -f ./$(DEPDIR)/secure_getenv.Po
+ -rm -f ./$(DEPDIR)/setenv.Po
+ -rm -f ./$(DEPDIR)/sh-quote.Po
+ -rm -f ./$(DEPDIR)/sig-handler.Po
+ -rm -f ./$(DEPDIR)/sigaction.Po
+ -rm -f ./$(DEPDIR)/sigprocmask.Po
+ -rm -f ./$(DEPDIR)/stat-time.Po
+ -rm -f ./$(DEPDIR)/stat.Po
+ -rm -f ./$(DEPDIR)/strcasecmp.Po
+ -rm -f ./$(DEPDIR)/strerror-override.Po
+ -rm -f ./$(DEPDIR)/strerror.Po
+ -rm -f ./$(DEPDIR)/strftime.Po
+ -rm -f ./$(DEPDIR)/striconv.Po
+ -rm -f ./$(DEPDIR)/stripslash.Po
+ -rm -f ./$(DEPDIR)/strncasecmp.Po
+ -rm -f ./$(DEPDIR)/strndup.Po
+ -rm -f ./$(DEPDIR)/strnlen.Po
+ -rm -f ./$(DEPDIR)/strnlen1.Po
+ -rm -f ./$(DEPDIR)/strptime.Po
+ -rm -f ./$(DEPDIR)/strtoimax.Po
+ -rm -f ./$(DEPDIR)/strtol.Po
+ -rm -f ./$(DEPDIR)/strtoul.Po
+ -rm -f ./$(DEPDIR)/strtoull.Po
+ -rm -f ./$(DEPDIR)/strtoumax.Po
+ -rm -f ./$(DEPDIR)/system-quote.Po
+ -rm -f ./$(DEPDIR)/tempname.Po
+ -rm -f ./$(DEPDIR)/time_r.Po
+ -rm -f ./$(DEPDIR)/time_rz.Po
+ -rm -f ./$(DEPDIR)/timegm.Po
+ -rm -f ./$(DEPDIR)/timespec.Po
+ -rm -f ./$(DEPDIR)/trim.Po
+ -rm -f ./$(DEPDIR)/uinttostr.Po
+ -rm -f ./$(DEPDIR)/umaxtostr.Po
+ -rm -f ./$(DEPDIR)/unistd.Po
+ -rm -f ./$(DEPDIR)/unsetenv.Po
+ -rm -f ./$(DEPDIR)/vasnprintf.Po
+ -rm -f ./$(DEPDIR)/vasprintf.Po
+ -rm -f ./$(DEPDIR)/version-etc-fsf.Po
+ -rm -f ./$(DEPDIR)/version-etc.Po
+ -rm -f ./$(DEPDIR)/wcrtomb.Po
+ -rm -f ./$(DEPDIR)/wctype-h.Po
+ -rm -f ./$(DEPDIR)/wcwidth.Po
+ -rm -f ./$(DEPDIR)/xalloc-die.Po
+ -rm -f ./$(DEPDIR)/xasprintf.Po
+ -rm -f ./$(DEPDIR)/xfreopen.Po
+ -rm -f ./$(DEPDIR)/xmalloc.Po
+ -rm -f ./$(DEPDIR)/xreadlink.Po
+ -rm -f ./$(DEPDIR)/xsize.Po
+ -rm -f ./$(DEPDIR)/xstriconv.Po
+ -rm -f ./$(DEPDIR)/xstrndup.Po
+ -rm -f ./$(DEPDIR)/xstrtol-error.Po
+ -rm -f ./$(DEPDIR)/xstrtol.Po
+ -rm -f ./$(DEPDIR)/xstrtoul.Po
+ -rm -f ./$(DEPDIR)/xstrtoumax.Po
+ -rm -f ./$(DEPDIR)/xvasprintf.Po
+ -rm -f unistr/$(DEPDIR)/u8-mbtoucr.Po
+ -rm -f unistr/$(DEPDIR)/u8-uctomb-aux.Po
+ -rm -f unistr/$(DEPDIR)/u8-uctomb.Po
+ -rm -f uniwidth/$(DEPDIR)/width.Po
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-hdr distclean-local distclean-tags
installcheck-am:
maintainer-clean: maintainer-clean-am
- -rm -rf $(DEPDIR) ./$(DEPDIR)
+ -rm -f $(DEPDIR)/alloca.Po
+ -rm -f ./$(DEPDIR)/alloca.Po
+ -rm -f ./$(DEPDIR)/allocator.Po
+ -rm -f ./$(DEPDIR)/anytostr.Po
+ -rm -f ./$(DEPDIR)/areadlink.Po
+ -rm -f ./$(DEPDIR)/argmatch.Po
+ -rm -f ./$(DEPDIR)/asnprintf.Po
+ -rm -f ./$(DEPDIR)/asprintf.Po
+ -rm -f ./$(DEPDIR)/basename-lgpl.Po
+ -rm -f ./$(DEPDIR)/basename.Po
+ -rm -f ./$(DEPDIR)/binary-io.Po
+ -rm -f ./$(DEPDIR)/bitrotate.Po
+ -rm -f ./$(DEPDIR)/btowc.Po
+ -rm -f ./$(DEPDIR)/c-ctype.Po
+ -rm -f ./$(DEPDIR)/c-stack.Po
+ -rm -f ./$(DEPDIR)/c-strcasecmp.Po
+ -rm -f ./$(DEPDIR)/c-strncasecmp.Po
+ -rm -f ./$(DEPDIR)/careadlinkat.Po
+ -rm -f ./$(DEPDIR)/close.Po
+ -rm -f ./$(DEPDIR)/cmpbuf.Po
+ -rm -f ./$(DEPDIR)/dirname-lgpl.Po
+ -rm -f ./$(DEPDIR)/dirname.Po
+ -rm -f ./$(DEPDIR)/dup2.Po
+ -rm -f ./$(DEPDIR)/error.Po
+ -rm -f ./$(DEPDIR)/exclude.Po
+ -rm -f ./$(DEPDIR)/exitfail.Po
+ -rm -f ./$(DEPDIR)/fcntl.Po
+ -rm -f ./$(DEPDIR)/fd-hook.Po
+ -rm -f ./$(DEPDIR)/file-type.Po
+ -rm -f ./$(DEPDIR)/filenamecat-lgpl.Po
+ -rm -f ./$(DEPDIR)/filenamecat.Po
+ -rm -f ./$(DEPDIR)/float.Po
+ -rm -f ./$(DEPDIR)/fnmatch.Po
+ -rm -f ./$(DEPDIR)/fnmatch_loop.Po
+ -rm -f ./$(DEPDIR)/freopen-safer.Po
+ -rm -f ./$(DEPDIR)/freopen.Po
+ -rm -f ./$(DEPDIR)/fstat.Po
+ -rm -f ./$(DEPDIR)/getdtablesize.Po
+ -rm -f ./$(DEPDIR)/getopt.Po
+ -rm -f ./$(DEPDIR)/getopt1.Po
+ -rm -f ./$(DEPDIR)/gettime.Po
+ -rm -f ./$(DEPDIR)/gettimeofday.Po
+ -rm -f ./$(DEPDIR)/hard-locale.Po
+ -rm -f ./$(DEPDIR)/hash.Po
+ -rm -f ./$(DEPDIR)/iconv.Po
+ -rm -f ./$(DEPDIR)/iconv_close.Po
+ -rm -f ./$(DEPDIR)/iconv_open.Po
+ -rm -f ./$(DEPDIR)/imaxtostr.Po
+ -rm -f ./$(DEPDIR)/inttostr.Po
+ -rm -f ./$(DEPDIR)/isblank.Po
+ -rm -f ./$(DEPDIR)/iswblank.Po
+ -rm -f ./$(DEPDIR)/itold.Po
+ -rm -f ./$(DEPDIR)/localcharset.Po
+ -rm -f ./$(DEPDIR)/localeconv.Po
+ -rm -f ./$(DEPDIR)/lstat.Po
+ -rm -f ./$(DEPDIR)/malloc.Po
+ -rm -f ./$(DEPDIR)/malloca.Po
+ -rm -f ./$(DEPDIR)/mbchar.Po
+ -rm -f ./$(DEPDIR)/mbiter.Po
+ -rm -f ./$(DEPDIR)/mbrtowc.Po
+ -rm -f ./$(DEPDIR)/mbscasecmp.Po
+ -rm -f ./$(DEPDIR)/mbsinit.Po
+ -rm -f ./$(DEPDIR)/mbslen.Po
+ -rm -f ./$(DEPDIR)/mbsrtowcs-state.Po
+ -rm -f ./$(DEPDIR)/mbsrtowcs.Po
+ -rm -f ./$(DEPDIR)/mbsstr.Po
+ -rm -f ./$(DEPDIR)/mbtowc.Po
+ -rm -f ./$(DEPDIR)/mbuiter.Po
+ -rm -f ./$(DEPDIR)/memchr.Po
+ -rm -f ./$(DEPDIR)/mkstemp.Po
+ -rm -f ./$(DEPDIR)/mktime.Po
+ -rm -f ./$(DEPDIR)/msvc-inval.Po
+ -rm -f ./$(DEPDIR)/msvc-nothrow.Po
+ -rm -f ./$(DEPDIR)/nl_langinfo.Po
+ -rm -f ./$(DEPDIR)/offtostr.Po
+ -rm -f ./$(DEPDIR)/open.Po
+ -rm -f ./$(DEPDIR)/prepargs.Po
+ -rm -f ./$(DEPDIR)/printf-args.Po
+ -rm -f ./$(DEPDIR)/printf-parse.Po
+ -rm -f ./$(DEPDIR)/progname.Po
+ -rm -f ./$(DEPDIR)/propername.Po
+ -rm -f ./$(DEPDIR)/quotearg.Po
+ -rm -f ./$(DEPDIR)/raise.Po
+ -rm -f ./$(DEPDIR)/rawmemchr.Po
+ -rm -f ./$(DEPDIR)/readlink.Po
+ -rm -f ./$(DEPDIR)/regcomp.Po
+ -rm -f ./$(DEPDIR)/regex.Po
+ -rm -f ./$(DEPDIR)/regex_internal.Po
+ -rm -f ./$(DEPDIR)/regexec.Po
+ -rm -f ./$(DEPDIR)/secure_getenv.Po
+ -rm -f ./$(DEPDIR)/setenv.Po
+ -rm -f ./$(DEPDIR)/sh-quote.Po
+ -rm -f ./$(DEPDIR)/sig-handler.Po
+ -rm -f ./$(DEPDIR)/sigaction.Po
+ -rm -f ./$(DEPDIR)/sigprocmask.Po
+ -rm -f ./$(DEPDIR)/stat-time.Po
+ -rm -f ./$(DEPDIR)/stat.Po
+ -rm -f ./$(DEPDIR)/strcasecmp.Po
+ -rm -f ./$(DEPDIR)/strerror-override.Po
+ -rm -f ./$(DEPDIR)/strerror.Po
+ -rm -f ./$(DEPDIR)/strftime.Po
+ -rm -f ./$(DEPDIR)/striconv.Po
+ -rm -f ./$(DEPDIR)/stripslash.Po
+ -rm -f ./$(DEPDIR)/strncasecmp.Po
+ -rm -f ./$(DEPDIR)/strndup.Po
+ -rm -f ./$(DEPDIR)/strnlen.Po
+ -rm -f ./$(DEPDIR)/strnlen1.Po
+ -rm -f ./$(DEPDIR)/strptime.Po
+ -rm -f ./$(DEPDIR)/strtoimax.Po
+ -rm -f ./$(DEPDIR)/strtol.Po
+ -rm -f ./$(DEPDIR)/strtoul.Po
+ -rm -f ./$(DEPDIR)/strtoull.Po
+ -rm -f ./$(DEPDIR)/strtoumax.Po
+ -rm -f ./$(DEPDIR)/system-quote.Po
+ -rm -f ./$(DEPDIR)/tempname.Po
+ -rm -f ./$(DEPDIR)/time_r.Po
+ -rm -f ./$(DEPDIR)/time_rz.Po
+ -rm -f ./$(DEPDIR)/timegm.Po
+ -rm -f ./$(DEPDIR)/timespec.Po
+ -rm -f ./$(DEPDIR)/trim.Po
+ -rm -f ./$(DEPDIR)/uinttostr.Po
+ -rm -f ./$(DEPDIR)/umaxtostr.Po
+ -rm -f ./$(DEPDIR)/unistd.Po
+ -rm -f ./$(DEPDIR)/unsetenv.Po
+ -rm -f ./$(DEPDIR)/vasnprintf.Po
+ -rm -f ./$(DEPDIR)/vasprintf.Po
+ -rm -f ./$(DEPDIR)/version-etc-fsf.Po
+ -rm -f ./$(DEPDIR)/version-etc.Po
+ -rm -f ./$(DEPDIR)/wcrtomb.Po
+ -rm -f ./$(DEPDIR)/wctype-h.Po
+ -rm -f ./$(DEPDIR)/wcwidth.Po
+ -rm -f ./$(DEPDIR)/xalloc-die.Po
+ -rm -f ./$(DEPDIR)/xasprintf.Po
+ -rm -f ./$(DEPDIR)/xfreopen.Po
+ -rm -f ./$(DEPDIR)/xmalloc.Po
+ -rm -f ./$(DEPDIR)/xreadlink.Po
+ -rm -f ./$(DEPDIR)/xsize.Po
+ -rm -f ./$(DEPDIR)/xstriconv.Po
+ -rm -f ./$(DEPDIR)/xstrndup.Po
+ -rm -f ./$(DEPDIR)/xstrtol-error.Po
+ -rm -f ./$(DEPDIR)/xstrtol.Po
+ -rm -f ./$(DEPDIR)/xstrtoul.Po
+ -rm -f ./$(DEPDIR)/xstrtoumax.Po
+ -rm -f ./$(DEPDIR)/xvasprintf.Po
+ -rm -f unistr/$(DEPDIR)/u8-mbtoucr.Po
+ -rm -f unistr/$(DEPDIR)/u8-uctomb-aux.Po
+ -rm -f unistr/$(DEPDIR)/u8-uctomb.Po
+ -rm -f uniwidth/$(DEPDIR)/width.Po
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
.MAKE: all check install install-am install-strip
-.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
- clean-generic clean-noinstLIBRARIES cscopelist-am ctags \
- ctags-am distclean distclean-compile distclean-generic \
- distclean-hdr distclean-local distclean-tags distdir dvi \
- dvi-am html html-am info info-am install install-am \
- install-data install-data-am install-dvi install-dvi-am \
- install-exec install-exec-am install-exec-local install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-compile mostlyclean-generic mostlyclean-local pdf \
- pdf-am ps ps-am tags tags-am uninstall uninstall-am \
- uninstall-local
+.PHONY: CTAGS GTAGS TAGS all all-am all-local am--depfiles check \
+ check-am clean clean-generic clean-noinstLIBRARIES \
+ cscopelist-am ctags ctags-am distclean distclean-compile \
+ distclean-generic distclean-hdr distclean-local distclean-tags \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-exec-local \
+ install-html install-html-am install-info install-info-am \
+ install-man install-pdf install-pdf-am install-ps \
+ install-ps-am install-strip installcheck installcheck-am \
+ installdirs maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-compile mostlyclean-generic \
+ mostlyclean-local pdf pdf-am ps ps-am tags tags-am uninstall \
+ uninstall-am uninstall-local
+
+.PRECIOUS: Makefile
# We need the following in order to create <alloca.h> when the system
@GL_GENERATE_ALLOCA_H_FALSE@ rm -f $@
# Listed in the same order as the GNU makefile conventions, and
-# provided by autoconf 2.59c+.
+# provided by autoconf 2.59c+ or 2.70.
# The Automake-defined pkg* macros are appended, in the order
# listed in the Automake 1.10a+ documentation.
configmake.h: Makefile
echo '#define SYSCONFDIR "$(sysconfdir)"'; \
echo '#define SHAREDSTATEDIR "$(sharedstatedir)"'; \
echo '#define LOCALSTATEDIR "$(localstatedir)"'; \
+ echo '#define RUNSTATEDIR "$(runstatedir)"'; \
echo '#define INCLUDEDIR "$(includedir)"'; \
echo '#define OLDINCLUDEDIR "$(oldincludedir)"'; \
echo '#define DOCDIR "$(docdir)"'; \
} | sed '/""/d' > $@-t && \
mv -f $@-t $@
+# We need the following in order to create <ctype.h> when the system
+# doesn't have one that works with the given compiler.
+ctype.h: ctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H)
+ $(AM_V_GEN)rm -f $@-t $@ && \
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
+ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ -e 's|@''NEXT_CTYPE_H''@|$(NEXT_CTYPE_H)|g' \
+ -e 's/@''GNULIB_ISBLANK''@/$(GNULIB_ISBLANK)/g' \
+ -e 's/@''HAVE_ISBLANK''@/$(HAVE_ISBLANK)/g' \
+ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
+ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
+ < $(srcdir)/ctype.in.h; \
+ } > $@-t && \
+ mv $@-t $@
+
# We need the following in order to create <errno.h> when the system
# doesn't have one that is POSIX compliant.
@GL_GENERATE_ERRNO_H_TRUE@errno.h: errno.in.h $(top_builddir)/config.status
@GL_GENERATE_ICONV_H_FALSE@ rm -f $@
iconv_open-aix.h: iconv_open-aix.gperf
- $(GPERF) -m 10 $(srcdir)/iconv_open-aix.gperf > $(srcdir)/iconv_open-aix.h-t
+ $(V_GPERF)$(GPERF) -m 10 $(srcdir)/iconv_open-aix.gperf > $(srcdir)/iconv_open-aix.h-t && \
mv $(srcdir)/iconv_open-aix.h-t $(srcdir)/iconv_open-aix.h
iconv_open-hpux.h: iconv_open-hpux.gperf
- $(GPERF) -m 10 $(srcdir)/iconv_open-hpux.gperf > $(srcdir)/iconv_open-hpux.h-t
+ $(V_GPERF)$(GPERF) -m 10 $(srcdir)/iconv_open-hpux.gperf > $(srcdir)/iconv_open-hpux.h-t && \
mv $(srcdir)/iconv_open-hpux.h-t $(srcdir)/iconv_open-hpux.h
iconv_open-irix.h: iconv_open-irix.gperf
- $(GPERF) -m 10 $(srcdir)/iconv_open-irix.gperf > $(srcdir)/iconv_open-irix.h-t
+ $(V_GPERF)$(GPERF) -m 10 $(srcdir)/iconv_open-irix.gperf > $(srcdir)/iconv_open-irix.h-t && \
mv $(srcdir)/iconv_open-irix.h-t $(srcdir)/iconv_open-irix.h
iconv_open-osf.h: iconv_open-osf.gperf
- $(GPERF) -m 10 $(srcdir)/iconv_open-osf.gperf > $(srcdir)/iconv_open-osf.h-t
+ $(V_GPERF)$(GPERF) -m 10 $(srcdir)/iconv_open-osf.gperf > $(srcdir)/iconv_open-osf.h-t && \
mv $(srcdir)/iconv_open-osf.h-t $(srcdir)/iconv_open-osf.h
iconv_open-solaris.h: iconv_open-solaris.gperf
- $(GPERF) -m 10 $(srcdir)/iconv_open-solaris.gperf > $(srcdir)/iconv_open-solaris.h-t
+ $(V_GPERF)$(GPERF) -m 10 $(srcdir)/iconv_open-solaris.gperf > $(srcdir)/iconv_open-solaris.h-t && \
mv $(srcdir)/iconv_open-solaris.h-t $(srcdir)/iconv_open-solaris.h
# We need the following in order to create <inttypes.h> when the system
-e 's/@''HAVE_DECL_STRTOIMAX''@/$(HAVE_DECL_STRTOIMAX)/g' \
-e 's/@''HAVE_DECL_STRTOUMAX''@/$(HAVE_DECL_STRTOUMAX)/g' \
-e 's/@''REPLACE_STRTOIMAX''@/$(REPLACE_STRTOIMAX)/g' \
+ -e 's/@''REPLACE_STRTOUMAX''@/$(REPLACE_STRTOUMAX)/g' \
-e 's/@''INT32_MAX_LT_INTMAX_MAX''@/$(INT32_MAX_LT_INTMAX_MAX)/g' \
-e 's/@''INT64_MAX_EQ_LONG_MAX''@/$(INT64_MAX_EQ_LONG_MAX)/g' \
-e 's/@''UINT32_MAX_LT_UINTMAX_MAX''@/$(UINT32_MAX_LT_UINTMAX_MAX)/g' \
@GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
@GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
@GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''NEXT_STDDEF_H''@|$(NEXT_STDDEF_H)|g' \
+@GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''HAVE_MAX_ALIGN_T''@|$(HAVE_MAX_ALIGN_T)|g' \
@GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''HAVE_WCHAR_T''@|$(HAVE_WCHAR_T)|g' \
@GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''REPLACE_NULL''@|$(REPLACE_NULL)|g' \
@GL_GENERATE_STDDEF_H_TRUE@ < $(srcdir)/stddef.in.h; \
-e 's/@''GNULIB_PTSNAME''@/$(GNULIB_PTSNAME)/g' \
-e 's/@''GNULIB_PTSNAME_R''@/$(GNULIB_PTSNAME_R)/g' \
-e 's/@''GNULIB_PUTENV''@/$(GNULIB_PUTENV)/g' \
+ -e 's/@''GNULIB_QSORT_R''@/$(GNULIB_QSORT_R)/g' \
-e 's/@''GNULIB_RANDOM''@/$(GNULIB_RANDOM)/g' \
-e 's/@''GNULIB_RANDOM_R''@/$(GNULIB_RANDOM_R)/g' \
-e 's/@''GNULIB_REALLOC_POSIX''@/$(GNULIB_REALLOC_POSIX)/g' \
-e 's|@''REPLACE_PTSNAME''@|$(REPLACE_PTSNAME)|g' \
-e 's|@''REPLACE_PTSNAME_R''@|$(REPLACE_PTSNAME_R)|g' \
-e 's|@''REPLACE_PUTENV''@|$(REPLACE_PUTENV)|g' \
+ -e 's|@''REPLACE_QSORT_R''@|$(REPLACE_QSORT_R)|g' \
-e 's|@''REPLACE_RANDOM_R''@|$(REPLACE_RANDOM_R)|g' \
-e 's|@''REPLACE_REALLOC''@|$(REPLACE_REALLOC)|g' \
-e 's|@''REPLACE_REALPATH''@|$(REPLACE_REALPATH)|g' \
-e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
-e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
-e 's|@''NEXT_TIME_H''@|$(NEXT_TIME_H)|g' \
+ -e 's/@''GNULIB_GETTIMEOFDAY''@/$(GNULIB_GETTIMEOFDAY)/g' \
-e 's/@''GNULIB_MKTIME''@/$(GNULIB_MKTIME)/g' \
-e 's/@''GNULIB_NANOSLEEP''@/$(GNULIB_NANOSLEEP)/g' \
-e 's/@''GNULIB_STRPTIME''@/$(GNULIB_STRPTIME)/g' \
-e 's/@''GNULIB_TIMEGM''@/$(GNULIB_TIMEGM)/g' \
-e 's/@''GNULIB_TIME_R''@/$(GNULIB_TIME_R)/g' \
+ -e 's/@''GNULIB_TIME_RZ''@/$(GNULIB_TIME_RZ)/g' \
-e 's|@''HAVE_DECL_LOCALTIME_R''@|$(HAVE_DECL_LOCALTIME_R)|g' \
-e 's|@''HAVE_NANOSLEEP''@|$(HAVE_NANOSLEEP)|g' \
-e 's|@''HAVE_STRPTIME''@|$(HAVE_STRPTIME)|g' \
-e 's|@''HAVE_TIMEGM''@|$(HAVE_TIMEGM)|g' \
+ -e 's|@''HAVE_TIMEZONE_T''@|$(HAVE_TIMEZONE_T)|g' \
+ -e 's|@''REPLACE_GMTIME''@|$(REPLACE_GMTIME)|g' \
+ -e 's|@''REPLACE_LOCALTIME''@|$(REPLACE_LOCALTIME)|g' \
-e 's|@''REPLACE_LOCALTIME_R''@|$(REPLACE_LOCALTIME_R)|g' \
-e 's|@''REPLACE_MKTIME''@|$(REPLACE_MKTIME)|g' \
-e 's|@''REPLACE_NANOSLEEP''@|$(REPLACE_NANOSLEEP)|g' \
-e 's|@''PTHREAD_H_DEFINES_STRUCT_TIMESPEC''@|$(PTHREAD_H_DEFINES_STRUCT_TIMESPEC)|g' \
-e 's|@''SYS_TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(SYS_TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \
-e 's|@''TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \
+ -e 's|@''UNISTD_H_DEFINES_STRUCT_TIMESPEC''@|$(UNISTD_H_DEFINES_STRUCT_TIMESPEC)|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)' \
-e 's|@''REPLACE_FTRUNCATE''@|$(REPLACE_FTRUNCATE)|g' \
-e 's|@''REPLACE_GETCWD''@|$(REPLACE_GETCWD)|g' \
-e 's|@''REPLACE_GETDOMAINNAME''@|$(REPLACE_GETDOMAINNAME)|g' \
+ -e 's|@''REPLACE_GETDTABLESIZE''@|$(REPLACE_GETDTABLESIZE)|g' \
-e 's|@''REPLACE_GETLOGIN_R''@|$(REPLACE_GETLOGIN_R)|g' \
-e 's|@''REPLACE_GETGROUPS''@|$(REPLACE_GETGROUPS)|g' \
-e 's|@''REPLACE_GETPAGESIZE''@|$(REPLACE_GETPAGESIZE)|g' \
-e 's|@''REPLACE_PWRITE''@|$(REPLACE_PWRITE)|g' \
-e 's|@''REPLACE_READ''@|$(REPLACE_READ)|g' \
-e 's|@''REPLACE_READLINK''@|$(REPLACE_READLINK)|g' \
+ -e 's|@''REPLACE_READLINKAT''@|$(REPLACE_READLINKAT)|g' \
-e 's|@''REPLACE_RMDIR''@|$(REPLACE_RMDIR)|g' \
-e 's|@''REPLACE_SLEEP''@|$(REPLACE_SLEEP)|g' \
-e 's|@''REPLACE_SYMLINK''@|$(REPLACE_SYMLINK)|g' \
+ -e 's|@''REPLACE_SYMLINKAT''@|$(REPLACE_SYMLINKAT)|g' \
-e 's|@''REPLACE_TTYNAME_R''@|$(REPLACE_TTYNAME_R)|g' \
-e 's|@''REPLACE_UNLINK''@|$(REPLACE_UNLINK)|g' \
-e 's|@''REPLACE_UNLINKAT''@|$(REPLACE_UNLINKAT)|g' \
/* Memory allocation on the stack.
- Copyright (C) 1995, 1999, 2001-2004, 2006-2013 Free Software Foundation,
+ Copyright (C) 1995, 1999, 2001-2004, 2006-2016 Free Software Foundation,
Inc.
This program is free software; you can redistribute it and/or modify it
/* Memory allocators such as malloc+free.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* anytostr.c -- convert integers to printable strings
- Copyright (C) 2001, 2006, 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2006, 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Tell gcc not to warn about the (i < 0) test, below. */
#if (__GNUC__ == 4 && 3 <= __GNUC_MINOR__) || 4 < __GNUC__
# pragma GCC diagnostic ignored "-Wtype-limits"
+#elif defined __clang__
+# pragma clang diagnostic ignored "-Wtautological-compare"
#endif
#include <config.h>
/* areadlink.c -- readlink wrapper to return the link name in malloc'd storage
Unlike xreadlink and xreadlink_with_size, don't ever call exit.
- Copyright (C) 2001, 2003-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2003-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Read symbolic links without size limitation.
- Copyright (C) 2001, 2003-2004, 2007, 2009-2013 Free Software Foundation,
+ Copyright (C) 2001, 2003-2004, 2007, 2009-2016 Free Software Foundation,
Inc.
This program is free software: you can redistribute it and/or modify
/* argmatch.c -- find a match for a string in an array
- Copyright (C) 1990, 1998-1999, 2001-2007, 2009-2013 Free Software
+ Copyright (C) 1990, 1998-1999, 2001-2007, 2009-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
/* argmatch.h -- definitions and prototypes for argmatch.c
- Copyright (C) 1990, 1998-1999, 2001-2002, 2004-2005, 2009-2013 Free Software
+ Copyright (C) 1990, 1998-1999, 2001-2002, 2004-2005, 2009-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
# include "verify.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
+
# define ARRAY_CARDINALITY(Array) (sizeof (Array) / sizeof *(Array))
/* Assert there are as many real arguments as there are values
argmatch_to_argument (Value, Arglist, \
(char const *) (Vallist), sizeof *(Vallist))
+#ifdef __cplusplus
+}
+#endif
+
#endif /* ARGMATCH_H_ */
/* Formatted output to strings.
- Copyright (C) 1999, 2002, 2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2002, 2006, 2009-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Formatted output to strings.
- Copyright (C) 1999, 2002, 2006-2007, 2009-2013 Free Software Foundation,
+ Copyright (C) 1999, 2002, 2006-2007, 2009-2016 Free Software Foundation,
Inc.
This program is free software; you can redistribute it and/or modify
--- /dev/null
+/* Run-time assert-like macros.
+
+ Copyright (C) 2014-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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/>. */
+
+/* Written by Paul Eggert. */
+
+#ifndef _GL_ASSURE_H
+#define _GL_ASSURE_H
+
+#include <assert.h>
+
+/* Check E's value at runtime, and report an error and abort if not.
+ However, do nothng 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. */
+
+#ifdef NDEBUG
+# define assure(E) ((void) (0 && (E)))
+#else
+# define assure(E) assert (E)
+#endif
+
+#endif
/* basename.c -- return the last element in a file name
- Copyright (C) 1990, 1998-2001, 2003-2006, 2009-2013 Free Software
+ Copyright (C) 1990, 1998-2001, 2003-2006, 2009-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
/* basename.c -- return the last element in a file name
- Copyright (C) 1990, 1998-2001, 2003-2006, 2009-2013 Free Software
+ Copyright (C) 1990, 1998-2001, 2003-2006, 2009-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
#include <config.h>
#define BINARY_IO_INLINE _GL_EXTERN_INLINE
#include "binary-io.h"
+typedef int dummy;
/* Binary mode I/O.
- Copyright (C) 2001, 2003, 2005, 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2003, 2005, 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
so we include it here first. */
#include <stdio.h>
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
_GL_INLINE_HEADER_BEGIN
#ifndef BINARY_IO_INLINE
# define BINARY_IO_INLINE _GL_INLINE
/* SET_BINARY (fd);
changes the file descriptor fd to perform binary I/O. */
-#ifdef __DJGPP__
+#if defined __DJGPP__ || defined __EMX__
# include <unistd.h> /* declares isatty() */
/* Avoid putting stdin/stdout in binary mode if it is connected to
the console, because that would make it impossible for the user
/* bitrotate.h - Rotate bits in integers
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This 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 <stdint.h>
#include <sys/types.h>
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
_GL_INLINE_HEADER_BEGIN
#ifndef BITROTATE_INLINE
# define BITROTATE_INLINE _GL_INLINE
/* Convert unibyte character to wide character.
- Copyright (C) 2008, 2010-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008, 2010-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2008.
This program is free software: you can redistribute it and/or modify
-/* Character handling in C locale.
-
- Copyright 2000-2003, 2006, 2009-2013 Free Software Foundation, Inc.
-
-This program is free software; you can redistribute it and/or modify
-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>
-
-/* Specification. */
-#define NO_C_CTYPE_MACROS
+#define C_CTYPE_INLINE _GL_EXTERN_INLINE
#include "c-ctype.h"
-
-/* The function isascii is not locale dependent. Its use in EBCDIC is
- questionable. */
-bool
-c_isascii (int c)
-{
- return (c >= 0x00 && c <= 0x7f);
-}
-
-bool
-c_isalnum (int c)
-{
-#if C_CTYPE_CONSECUTIVE_DIGITS \
- && C_CTYPE_CONSECUTIVE_UPPERCASE && C_CTYPE_CONSECUTIVE_LOWERCASE
-#if C_CTYPE_ASCII
- return ((c >= '0' && c <= '9')
- || ((c & ~0x20) >= 'A' && (c & ~0x20) <= 'Z'));
-#else
- return ((c >= '0' && c <= '9')
- || (c >= 'A' && c <= 'Z')
- || (c >= 'a' && c <= 'z'));
-#endif
-#else
- switch (c)
- {
- case '0': case '1': case '2': case '3': case '4': case '5':
- case '6': case '7': case '8': case '9':
- case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
- case 'G': case 'H': case 'I': case 'J': case 'K': case 'L':
- case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
- case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
- case 'Y': case 'Z':
- case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
- case 'g': case 'h': case 'i': case 'j': case 'k': case 'l':
- case 'm': case 'n': case 'o': case 'p': case 'q': case 'r':
- case 's': case 't': case 'u': case 'v': case 'w': case 'x':
- case 'y': case 'z':
- return 1;
- default:
- return 0;
- }
-#endif
-}
-
-bool
-c_isalpha (int c)
-{
-#if C_CTYPE_CONSECUTIVE_UPPERCASE && C_CTYPE_CONSECUTIVE_LOWERCASE
-#if C_CTYPE_ASCII
- return ((c & ~0x20) >= 'A' && (c & ~0x20) <= 'Z');
-#else
- return ((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z'));
-#endif
-#else
- switch (c)
- {
- case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
- case 'G': case 'H': case 'I': case 'J': case 'K': case 'L':
- case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
- case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
- case 'Y': case 'Z':
- case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
- case 'g': case 'h': case 'i': case 'j': case 'k': case 'l':
- case 'm': case 'n': case 'o': case 'p': case 'q': case 'r':
- case 's': case 't': case 'u': case 'v': case 'w': case 'x':
- case 'y': case 'z':
- return 1;
- default:
- return 0;
- }
-#endif
-}
-
-bool
-c_isblank (int c)
-{
- return (c == ' ' || c == '\t');
-}
-
-bool
-c_iscntrl (int c)
-{
-#if C_CTYPE_ASCII
- return ((c & ~0x1f) == 0 || c == 0x7f);
-#else
- switch (c)
- {
- case ' ': case '!': case '"': case '#': case '$': case '%':
- case '&': case '\'': case '(': case ')': case '*': case '+':
- case ',': case '-': case '.': case '/':
- case '0': case '1': case '2': case '3': case '4': case '5':
- case '6': case '7': case '8': case '9':
- case ':': case ';': case '<': case '=': case '>': case '?':
- case '@':
- case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
- case 'G': case 'H': case 'I': case 'J': case 'K': case 'L':
- case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
- case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
- case 'Y': case 'Z':
- case '[': case '\\': case ']': case '^': case '_': case '`':
- case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
- case 'g': case 'h': case 'i': case 'j': case 'k': case 'l':
- case 'm': case 'n': case 'o': case 'p': case 'q': case 'r':
- case 's': case 't': case 'u': case 'v': case 'w': case 'x':
- case 'y': case 'z':
- case '{': case '|': case '}': case '~':
- return 0;
- default:
- return 1;
- }
-#endif
-}
-
-bool
-c_isdigit (int c)
-{
-#if C_CTYPE_CONSECUTIVE_DIGITS
- return (c >= '0' && c <= '9');
-#else
- switch (c)
- {
- case '0': case '1': case '2': case '3': case '4': case '5':
- case '6': case '7': case '8': case '9':
- return 1;
- default:
- return 0;
- }
-#endif
-}
-
-bool
-c_islower (int c)
-{
-#if C_CTYPE_CONSECUTIVE_LOWERCASE
- return (c >= 'a' && c <= 'z');
-#else
- switch (c)
- {
- case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
- case 'g': case 'h': case 'i': case 'j': case 'k': case 'l':
- case 'm': case 'n': case 'o': case 'p': case 'q': case 'r':
- case 's': case 't': case 'u': case 'v': case 'w': case 'x':
- case 'y': case 'z':
- return 1;
- default:
- return 0;
- }
-#endif
-}
-
-bool
-c_isgraph (int c)
-{
-#if C_CTYPE_ASCII
- return (c >= '!' && c <= '~');
-#else
- switch (c)
- {
- case '!': case '"': case '#': case '$': case '%': case '&':
- case '\'': case '(': case ')': case '*': case '+': case ',':
- case '-': case '.': case '/':
- case '0': case '1': case '2': case '3': case '4': case '5':
- case '6': case '7': case '8': case '9':
- case ':': case ';': case '<': case '=': case '>': case '?':
- case '@':
- case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
- case 'G': case 'H': case 'I': case 'J': case 'K': case 'L':
- case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
- case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
- case 'Y': case 'Z':
- case '[': case '\\': case ']': case '^': case '_': case '`':
- case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
- case 'g': case 'h': case 'i': case 'j': case 'k': case 'l':
- case 'm': case 'n': case 'o': case 'p': case 'q': case 'r':
- case 's': case 't': case 'u': case 'v': case 'w': case 'x':
- case 'y': case 'z':
- case '{': case '|': case '}': case '~':
- return 1;
- default:
- return 0;
- }
-#endif
-}
-
-bool
-c_isprint (int c)
-{
-#if C_CTYPE_ASCII
- return (c >= ' ' && c <= '~');
-#else
- switch (c)
- {
- case ' ': case '!': case '"': case '#': case '$': case '%':
- case '&': case '\'': case '(': case ')': case '*': case '+':
- case ',': case '-': case '.': case '/':
- case '0': case '1': case '2': case '3': case '4': case '5':
- case '6': case '7': case '8': case '9':
- case ':': case ';': case '<': case '=': case '>': case '?':
- case '@':
- case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
- case 'G': case 'H': case 'I': case 'J': case 'K': case 'L':
- case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
- case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
- case 'Y': case 'Z':
- case '[': case '\\': case ']': case '^': case '_': case '`':
- case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
- case 'g': case 'h': case 'i': case 'j': case 'k': case 'l':
- case 'm': case 'n': case 'o': case 'p': case 'q': case 'r':
- case 's': case 't': case 'u': case 'v': case 'w': case 'x':
- case 'y': case 'z':
- case '{': case '|': case '}': case '~':
- return 1;
- default:
- return 0;
- }
-#endif
-}
-
-bool
-c_ispunct (int c)
-{
-#if C_CTYPE_ASCII
- return ((c >= '!' && c <= '~')
- && !((c >= '0' && c <= '9')
- || ((c & ~0x20) >= 'A' && (c & ~0x20) <= 'Z')));
-#else
- switch (c)
- {
- case '!': case '"': case '#': case '$': case '%': case '&':
- case '\'': case '(': case ')': case '*': case '+': case ',':
- case '-': case '.': case '/':
- case ':': case ';': case '<': case '=': case '>': case '?':
- case '@':
- case '[': case '\\': case ']': case '^': case '_': case '`':
- case '{': case '|': case '}': case '~':
- return 1;
- default:
- return 0;
- }
-#endif
-}
-
-bool
-c_isspace (int c)
-{
- return (c == ' ' || c == '\t'
- || c == '\n' || c == '\v' || c == '\f' || c == '\r');
-}
-
-bool
-c_isupper (int c)
-{
-#if C_CTYPE_CONSECUTIVE_UPPERCASE
- return (c >= 'A' && c <= 'Z');
-#else
- switch (c)
- {
- case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
- case 'G': case 'H': case 'I': case 'J': case 'K': case 'L':
- case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R':
- case 'S': case 'T': case 'U': case 'V': case 'W': case 'X':
- case 'Y': case 'Z':
- return 1;
- default:
- return 0;
- }
-#endif
-}
-
-bool
-c_isxdigit (int c)
-{
-#if C_CTYPE_CONSECUTIVE_DIGITS \
- && C_CTYPE_CONSECUTIVE_UPPERCASE && C_CTYPE_CONSECUTIVE_LOWERCASE
-#if C_CTYPE_ASCII
- return ((c >= '0' && c <= '9')
- || ((c & ~0x20) >= 'A' && (c & ~0x20) <= 'F'));
-#else
- return ((c >= '0' && c <= '9')
- || (c >= 'A' && c <= 'F')
- || (c >= 'a' && c <= 'f'));
-#endif
-#else
- switch (c)
- {
- case '0': case '1': case '2': case '3': case '4': case '5':
- case '6': case '7': case '8': case '9':
- case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
- case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
- return 1;
- default:
- return 0;
- }
-#endif
-}
-
-int
-c_tolower (int c)
-{
-#if C_CTYPE_CONSECUTIVE_UPPERCASE && C_CTYPE_CONSECUTIVE_LOWERCASE
- return (c >= 'A' && c <= 'Z' ? c - 'A' + 'a' : c);
-#else
- switch (c)
- {
- case 'A': return 'a';
- case 'B': return 'b';
- case 'C': return 'c';
- case 'D': return 'd';
- case 'E': return 'e';
- case 'F': return 'f';
- case 'G': return 'g';
- case 'H': return 'h';
- case 'I': return 'i';
- case 'J': return 'j';
- case 'K': return 'k';
- case 'L': return 'l';
- case 'M': return 'm';
- case 'N': return 'n';
- case 'O': return 'o';
- case 'P': return 'p';
- case 'Q': return 'q';
- case 'R': return 'r';
- case 'S': return 's';
- case 'T': return 't';
- case 'U': return 'u';
- case 'V': return 'v';
- case 'W': return 'w';
- case 'X': return 'x';
- case 'Y': return 'y';
- case 'Z': return 'z';
- default: return c;
- }
-#endif
-}
-
-int
-c_toupper (int c)
-{
-#if C_CTYPE_CONSECUTIVE_UPPERCASE && C_CTYPE_CONSECUTIVE_LOWERCASE
- return (c >= 'a' && c <= 'z' ? c - 'a' + 'A' : c);
-#else
- switch (c)
- {
- case 'a': return 'A';
- case 'b': return 'B';
- case 'c': return 'C';
- case 'd': return 'D';
- case 'e': return 'E';
- case 'f': return 'F';
- case 'g': return 'G';
- case 'h': return 'H';
- case 'i': return 'I';
- case 'j': return 'J';
- case 'k': return 'K';
- case 'l': return 'L';
- case 'm': return 'M';
- case 'n': return 'N';
- case 'o': return 'O';
- case 'p': return 'P';
- case 'q': return 'Q';
- case 'r': return 'R';
- case 's': return 'S';
- case 't': return 'T';
- case 'u': return 'U';
- case 'v': return 'V';
- case 'w': return 'W';
- case 'x': return 'X';
- case 'y': return 'Y';
- case 'z': return 'Z';
- default: return c;
- }
-#endif
-}
<ctype.h> functions' behaviour depends on the current locale set via
setlocale.
- Copyright (C) 2000-2003, 2006, 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2000-2003, 2006, 2008-2016 Free Software Foundation, Inc.
This 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 <stdbool.h>
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
+_GL_INLINE_HEADER_BEGIN
+#ifndef C_CTYPE_INLINE
+# define C_CTYPE_INLINE _GL_INLINE
+#endif
#ifdef __cplusplus
extern "C" {
characters. */
-/* Check whether the ASCII optimizations apply. */
-
-/* ANSI C89 (and ISO C99 5.2.1.3 too) already guarantees that
- '0', '1', ..., '9' have consecutive integer values. */
-#define C_CTYPE_CONSECUTIVE_DIGITS 1
-
-#if ('A' <= 'Z') \
- && ('A' + 1 == 'B') && ('B' + 1 == 'C') && ('C' + 1 == 'D') \
- && ('D' + 1 == 'E') && ('E' + 1 == 'F') && ('F' + 1 == 'G') \
- && ('G' + 1 == 'H') && ('H' + 1 == 'I') && ('I' + 1 == 'J') \
- && ('J' + 1 == 'K') && ('K' + 1 == 'L') && ('L' + 1 == 'M') \
- && ('M' + 1 == 'N') && ('N' + 1 == 'O') && ('O' + 1 == 'P') \
- && ('P' + 1 == 'Q') && ('Q' + 1 == 'R') && ('R' + 1 == 'S') \
- && ('S' + 1 == 'T') && ('T' + 1 == 'U') && ('U' + 1 == 'V') \
- && ('V' + 1 == 'W') && ('W' + 1 == 'X') && ('X' + 1 == 'Y') \
- && ('Y' + 1 == 'Z')
-#define C_CTYPE_CONSECUTIVE_UPPERCASE 1
-#endif
-
-#if ('a' <= 'z') \
- && ('a' + 1 == 'b') && ('b' + 1 == 'c') && ('c' + 1 == 'd') \
- && ('d' + 1 == 'e') && ('e' + 1 == 'f') && ('f' + 1 == 'g') \
- && ('g' + 1 == 'h') && ('h' + 1 == 'i') && ('i' + 1 == 'j') \
- && ('j' + 1 == 'k') && ('k' + 1 == 'l') && ('l' + 1 == 'm') \
- && ('m' + 1 == 'n') && ('n' + 1 == 'o') && ('o' + 1 == 'p') \
- && ('p' + 1 == 'q') && ('q' + 1 == 'r') && ('r' + 1 == 's') \
- && ('s' + 1 == 't') && ('t' + 1 == 'u') && ('u' + 1 == 'v') \
- && ('v' + 1 == 'w') && ('w' + 1 == 'x') && ('x' + 1 == 'y') \
- && ('y' + 1 == 'z')
-#define C_CTYPE_CONSECUTIVE_LOWERCASE 1
-#endif
-
#if (' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
&& ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
&& (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
&& ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126)
/* The character set is ASCII or one of its variants or extensions, not EBCDIC.
Testing the value of '\n' and '\r' is not relevant. */
-#define C_CTYPE_ASCII 1
+# define C_CTYPE_ASCII 1
+#elif ! (' ' == '\x40' && '0' == '\xf0' \
+ && 'A' == '\xc1' && 'J' == '\xd1' && 'S' == '\xe2' \
+ && 'a' == '\x81' && 'j' == '\x91' && 's' == '\xa2')
+# error "Only ASCII and EBCDIC are supported"
#endif
+#if 'A' < 0
+# error "EBCDIC and char is signed -- not supported"
+#endif
+
+/* Cases for control characters. */
+
+#define _C_CTYPE_CNTRL \
+ case '\a': case '\b': case '\f': case '\n': \
+ case '\r': case '\t': case '\v': \
+ _C_CTYPE_OTHER_CNTRL
+
+/* ASCII control characters other than those with \-letter escapes. */
+
+#if C_CTYPE_ASCII
+# define _C_CTYPE_OTHER_CNTRL \
+ case '\x00': case '\x01': case '\x02': case '\x03': \
+ case '\x04': case '\x05': case '\x06': case '\x0e': \
+ case '\x0f': case '\x10': case '\x11': case '\x12': \
+ case '\x13': case '\x14': case '\x15': case '\x16': \
+ case '\x17': case '\x18': case '\x19': case '\x1a': \
+ case '\x1b': case '\x1c': case '\x1d': case '\x1e': \
+ case '\x1f': case '\x7f'
+#else
+ /* Use EBCDIC code page 1047's assignments for ASCII control chars;
+ assume all EBCDIC code pages agree about these assignments. */
+# define _C_CTYPE_OTHER_CNTRL \
+ case '\x00': case '\x01': case '\x02': case '\x03': \
+ case '\x07': case '\x0e': case '\x0f': case '\x10': \
+ case '\x11': case '\x12': case '\x13': case '\x18': \
+ case '\x19': case '\x1c': case '\x1d': case '\x1e': \
+ case '\x1f': case '\x26': case '\x27': case '\x2d': \
+ case '\x2e': case '\x32': case '\x37': case '\x3c': \
+ case '\x3d': case '\x3f'
+#endif
-/* Function declarations. */
+/* Cases for lowercase hex letters, and lowercase letters, all offset by N. */
+
+#define _C_CTYPE_LOWER_A_THRU_F_N(n) \
+ case 'a' + (n): case 'b' + (n): case 'c' + (n): case 'd' + (n): \
+ case 'e' + (n): case 'f' + (n)
+#define _C_CTYPE_LOWER_N(n) \
+ _C_CTYPE_LOWER_A_THRU_F_N(n): \
+ case 'g' + (n): case 'h' + (n): case 'i' + (n): case 'j' + (n): \
+ case 'k' + (n): case 'l' + (n): case 'm' + (n): case 'n' + (n): \
+ case 'o' + (n): case 'p' + (n): case 'q' + (n): case 'r' + (n): \
+ case 's' + (n): case 't' + (n): case 'u' + (n): case 'v' + (n): \
+ case 'w' + (n): case 'x' + (n): case 'y' + (n): case 'z' + (n)
+
+/* Cases for hex letters, digits, lower, punct, and upper. */
+
+#define _C_CTYPE_A_THRU_F \
+ _C_CTYPE_LOWER_A_THRU_F_N (0): \
+ _C_CTYPE_LOWER_A_THRU_F_N ('A' - 'a')
+#define _C_CTYPE_DIGIT \
+ case '0': case '1': case '2': case '3': \
+ case '4': case '5': case '6': case '7': \
+ case '8': case '9'
+#define _C_CTYPE_LOWER _C_CTYPE_LOWER_N (0)
+#define _C_CTYPE_PUNCT \
+ case '!': case '"': case '#': case '$': \
+ case '%': case '&': case '\'': case '(': \
+ case ')': case '*': case '+': case ',': \
+ case '-': case '.': case '/': case ':': \
+ case ';': case '<': case '=': case '>': \
+ case '?': case '@': case '[': case '\\': \
+ case ']': case '^': case '_': case '`': \
+ case '{': case '|': case '}': case '~'
+#define _C_CTYPE_UPPER _C_CTYPE_LOWER_N ('A' - 'a')
+
+
+/* Function definitions. */
/* Unlike the functions in <ctype.h>, which require an argument in the range
of the 'unsigned char' type, the functions here operate on values that are
if (c_isalpha (*s)) ...
*/
-extern bool c_isascii (int c) _GL_ATTRIBUTE_CONST; /* not locale dependent */
-
-extern bool c_isalnum (int c) _GL_ATTRIBUTE_CONST;
-extern bool c_isalpha (int c) _GL_ATTRIBUTE_CONST;
-extern bool c_isblank (int c) _GL_ATTRIBUTE_CONST;
-extern bool c_iscntrl (int c) _GL_ATTRIBUTE_CONST;
-extern bool c_isdigit (int c) _GL_ATTRIBUTE_CONST;
-extern bool c_islower (int c) _GL_ATTRIBUTE_CONST;
-extern bool c_isgraph (int c) _GL_ATTRIBUTE_CONST;
-extern bool c_isprint (int c) _GL_ATTRIBUTE_CONST;
-extern bool c_ispunct (int c) _GL_ATTRIBUTE_CONST;
-extern bool c_isspace (int c) _GL_ATTRIBUTE_CONST;
-extern bool c_isupper (int c) _GL_ATTRIBUTE_CONST;
-extern bool c_isxdigit (int c) _GL_ATTRIBUTE_CONST;
-
-extern int c_tolower (int c) _GL_ATTRIBUTE_CONST;
-extern int c_toupper (int c) _GL_ATTRIBUTE_CONST;
-
-
-#if defined __GNUC__ && defined __OPTIMIZE__ && !defined __OPTIMIZE_SIZE__ && !defined NO_C_CTYPE_MACROS
-
-/* ASCII optimizations. */
-
-#undef c_isascii
-#define c_isascii(c) \
- ({ int __c = (c); \
- (__c >= 0x00 && __c <= 0x7f); \
- })
+C_CTYPE_INLINE bool
+c_isalnum (int c)
+{
+ switch (c)
+ {
+ _C_CTYPE_DIGIT:
+ _C_CTYPE_LOWER:
+ _C_CTYPE_UPPER:
+ return true;
+ default:
+ return false;
+ }
+}
-#if C_CTYPE_CONSECUTIVE_DIGITS \
- && C_CTYPE_CONSECUTIVE_UPPERCASE && C_CTYPE_CONSECUTIVE_LOWERCASE
-#if C_CTYPE_ASCII
-#undef c_isalnum
-#define c_isalnum(c) \
- ({ int __c = (c); \
- ((__c >= '0' && __c <= '9') \
- || ((__c & ~0x20) >= 'A' && (__c & ~0x20) <= 'Z')); \
- })
-#else
-#undef c_isalnum
-#define c_isalnum(c) \
- ({ int __c = (c); \
- ((__c >= '0' && __c <= '9') \
- || (__c >= 'A' && __c <= 'Z') \
- || (__c >= 'a' && __c <= 'z')); \
- })
-#endif
-#endif
+C_CTYPE_INLINE bool
+c_isalpha (int c)
+{
+ switch (c)
+ {
+ _C_CTYPE_LOWER:
+ _C_CTYPE_UPPER:
+ return true;
+ default:
+ return false;
+ }
+}
-#if C_CTYPE_CONSECUTIVE_UPPERCASE && C_CTYPE_CONSECUTIVE_LOWERCASE
-#if C_CTYPE_ASCII
-#undef c_isalpha
-#define c_isalpha(c) \
- ({ int __c = (c); \
- ((__c & ~0x20) >= 'A' && (__c & ~0x20) <= 'Z'); \
- })
-#else
-#undef c_isalpha
-#define c_isalpha(c) \
- ({ int __c = (c); \
- ((__c >= 'A' && __c <= 'Z') || (__c >= 'a' && __c <= 'z')); \
- })
-#endif
-#endif
+/* The function isascii is not locale dependent.
+ Its use in EBCDIC is questionable. */
+C_CTYPE_INLINE bool
+c_isascii (int c)
+{
+ switch (c)
+ {
+ case ' ':
+ _C_CTYPE_CNTRL:
+ _C_CTYPE_DIGIT:
+ _C_CTYPE_LOWER:
+ _C_CTYPE_PUNCT:
+ _C_CTYPE_UPPER:
+ return true;
+ default:
+ return false;
+ }
+}
-#undef c_isblank
-#define c_isblank(c) \
- ({ int __c = (c); \
- (__c == ' ' || __c == '\t'); \
- })
+C_CTYPE_INLINE bool
+c_isblank (int c)
+{
+ return c == ' ' || c == '\t';
+}
-#if C_CTYPE_ASCII
-#undef c_iscntrl
-#define c_iscntrl(c) \
- ({ int __c = (c); \
- ((__c & ~0x1f) == 0 || __c == 0x7f); \
- })
-#endif
+C_CTYPE_INLINE bool
+c_iscntrl (int c)
+{
+ switch (c)
+ {
+ _C_CTYPE_CNTRL:
+ return true;
+ default:
+ return false;
+ }
+}
-#if C_CTYPE_CONSECUTIVE_DIGITS
-#undef c_isdigit
-#define c_isdigit(c) \
- ({ int __c = (c); \
- (__c >= '0' && __c <= '9'); \
- })
-#endif
+C_CTYPE_INLINE bool
+c_isdigit (int c)
+{
+ switch (c)
+ {
+ _C_CTYPE_DIGIT:
+ return true;
+ default:
+ return false;
+ }
+}
-#if C_CTYPE_CONSECUTIVE_LOWERCASE
-#undef c_islower
-#define c_islower(c) \
- ({ int __c = (c); \
- (__c >= 'a' && __c <= 'z'); \
- })
-#endif
+C_CTYPE_INLINE bool
+c_isgraph (int c)
+{
+ switch (c)
+ {
+ _C_CTYPE_DIGIT:
+ _C_CTYPE_LOWER:
+ _C_CTYPE_PUNCT:
+ _C_CTYPE_UPPER:
+ return true;
+ default:
+ return false;
+ }
+}
-#if C_CTYPE_ASCII
-#undef c_isgraph
-#define c_isgraph(c) \
- ({ int __c = (c); \
- (__c >= '!' && __c <= '~'); \
- })
-#endif
+C_CTYPE_INLINE bool
+c_islower (int c)
+{
+ switch (c)
+ {
+ _C_CTYPE_LOWER:
+ return true;
+ default:
+ return false;
+ }
+}
-#if C_CTYPE_ASCII
-#undef c_isprint
-#define c_isprint(c) \
- ({ int __c = (c); \
- (__c >= ' ' && __c <= '~'); \
- })
-#endif
+C_CTYPE_INLINE bool
+c_isprint (int c)
+{
+ switch (c)
+ {
+ case ' ':
+ _C_CTYPE_DIGIT:
+ _C_CTYPE_LOWER:
+ _C_CTYPE_PUNCT:
+ _C_CTYPE_UPPER:
+ return true;
+ default:
+ return false;
+ }
+}
-#if C_CTYPE_ASCII
-#undef c_ispunct
-#define c_ispunct(c) \
- ({ int _c = (c); \
- (c_isgraph (_c) && ! c_isalnum (_c)); \
- })
-#endif
+C_CTYPE_INLINE bool
+c_ispunct (int c)
+{
+ switch (c)
+ {
+ _C_CTYPE_PUNCT:
+ return true;
+ default:
+ return false;
+ }
+}
-#undef c_isspace
-#define c_isspace(c) \
- ({ int __c = (c); \
- (__c == ' ' || __c == '\t' \
- || __c == '\n' || __c == '\v' || __c == '\f' || __c == '\r'); \
- })
-
-#if C_CTYPE_CONSECUTIVE_UPPERCASE
-#undef c_isupper
-#define c_isupper(c) \
- ({ int __c = (c); \
- (__c >= 'A' && __c <= 'Z'); \
- })
-#endif
+C_CTYPE_INLINE bool
+c_isspace (int c)
+{
+ switch (c)
+ {
+ case ' ': case '\t': case '\n': case '\v': case '\f': case '\r':
+ return true;
+ default:
+ return false;
+ }
+}
-#if C_CTYPE_CONSECUTIVE_DIGITS \
- && C_CTYPE_CONSECUTIVE_UPPERCASE && C_CTYPE_CONSECUTIVE_LOWERCASE
-#if C_CTYPE_ASCII
-#undef c_isxdigit
-#define c_isxdigit(c) \
- ({ int __c = (c); \
- ((__c >= '0' && __c <= '9') \
- || ((__c & ~0x20) >= 'A' && (__c & ~0x20) <= 'F')); \
- })
-#else
-#undef c_isxdigit
-#define c_isxdigit(c) \
- ({ int __c = (c); \
- ((__c >= '0' && __c <= '9') \
- || (__c >= 'A' && __c <= 'F') \
- || (__c >= 'a' && __c <= 'f')); \
- })
-#endif
-#endif
+C_CTYPE_INLINE bool
+c_isupper (int c)
+{
+ switch (c)
+ {
+ _C_CTYPE_UPPER:
+ return true;
+ default:
+ return false;
+ }
+}
-#if C_CTYPE_CONSECUTIVE_UPPERCASE && C_CTYPE_CONSECUTIVE_LOWERCASE
-#undef c_tolower
-#define c_tolower(c) \
- ({ int __c = (c); \
- (__c >= 'A' && __c <= 'Z' ? __c - 'A' + 'a' : __c); \
- })
-#undef c_toupper
-#define c_toupper(c) \
- ({ int __c = (c); \
- (__c >= 'a' && __c <= 'z' ? __c - 'a' + 'A' : __c); \
- })
-#endif
+C_CTYPE_INLINE bool
+c_isxdigit (int c)
+{
+ switch (c)
+ {
+ _C_CTYPE_DIGIT:
+ _C_CTYPE_A_THRU_F:
+ return true;
+ default:
+ return false;
+ }
+}
-#endif /* optimizing for speed */
+C_CTYPE_INLINE int
+c_tolower (int c)
+{
+ switch (c)
+ {
+ _C_CTYPE_UPPER:
+ return c - 'A' + 'a';
+ default:
+ return c;
+ }
+}
+C_CTYPE_INLINE int
+c_toupper (int c)
+{
+ switch (c)
+ {
+ _C_CTYPE_LOWER:
+ return c - 'a' + 'A';
+ default:
+ return c;
+ }
+}
#ifdef __cplusplus
}
#endif
+_GL_INLINE_HEADER_END
+
#endif /* C_CTYPE_H */
/* Stack overflow handling.
- Copyright (C) 2002, 2004, 2006, 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2004, 2006, 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Stack overflow handling.
- Copyright (C) 2002, 2004, 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2004, 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Case-insensitive string comparison functions in C locale.
- Copyright (C) 1995-1996, 2001, 2003, 2005, 2009-2013 Free Software
+ Copyright (C) 1995-1996, 2001, 2003, 2005, 2009-2016 Free Software
Foundation, Inc.
This program is free software; you can redistribute it and/or modify
/* c-strcasecmp.c -- case insensitive string comparator in C locale
- Copyright (C) 1998-1999, 2005-2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1998-1999, 2005-2006, 2009-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Optimized case-insensitive string comparison in C locale.
- Copyright (C) 2001-2002, 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2002, 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
# if C_CTYPE_ASCII
# define CASEEQ(other,upper) \
(c_isupper (upper) ? ((other) & ~0x20) == (upper) : (other) == (upper))
-# elif C_CTYPE_CONSECUTIVE_UPPERCASE && C_CTYPE_CONSECUTIVE_LOWERCASE
-# define CASEEQ(other,upper) \
- (c_isupper (upper) ? (other) == (upper) || (other) == (upper) - 'A' + 'a' : (other) == (upper))
# else
# define CASEEQ(other,upper) \
(c_toupper (other) == (upper))
/* c-strncasecmp.c -- case insensitive string comparator in C locale
- Copyright (C) 1998-1999, 2005-2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1998-1999, 2005-2006, 2009-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Read symbolic links into a buffer without size limitation, relative to fd.
- Copyright (C) 2001, 2003-2004, 2007, 2009-2013 Free Software Foundation,
+ Copyright (C) 2001, 2003-2004, 2007, 2009-2016 Free Software Foundation,
Inc.
This program is free software: you can redistribute it and/or modify
/* Read symbolic links into a buffer without size limitation, relative to fd.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* close replacement.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Buffer primitives for comparison operations.
- Copyright (C) 1993, 1995, 1998, 2001-2002, 2006, 2009-2013 Free Software
- Foundation, Inc.
+ Copyright (C) 1993, 1995, 1998, 2001-2002, 2006, 2009-2013, 2015-2016 Free
+ Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Buffer primitives for comparison operations.
- Copyright (C) 2002, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2009-2013, 2015-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
#! /bin/sh
# Output a system dependent table of character encoding aliases.
#
-# Copyright (C) 2000-2004, 2006-2013 Free Software Foundation, Inc.
+# Copyright (C) 2000-2004, 2006-2016 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
#echo "sun_eu_greek ?" # what is this?
echo "UTF-8 UTF-8"
;;
- freebsd* | os2*)
+ freebsd*)
# FreeBSD 4.2 doesn't have nl_langinfo(CODESET); therefore
# localcharset.c falls back to using the full locale name
# from the environment variables.
- # Likewise for OS/2. OS/2 has XFree86 just like FreeBSD. Just
- # reuse FreeBSD's locale data for OS/2.
echo "C ASCII"
echo "US-ASCII ASCII"
for l in la_LN lt_LN; do
/* 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
+
/* Define as the bit index in the word where to find bit 0 of the exponent of
'double'. */
#undef DBL_EXPBIT0_BIT
/* Define this to 1 if F_DUPFD behavior does not match POSIX */
#undef FCNTL_DUPFD_BUGGY
+/* Define to nothing if C supports flexible array members, and to 1 if it does
+ not. That way, with a declaration like 'struct s { int n; double
+ d[FLEXIBLE_ARRAY_MEMBER]; };', the struct hack can be used with pre-C99
+ compilers. When computing the size of such an object, don't use 'sizeof
+ (struct s)' as it overestimates the size. Use 'offsetof (struct s, d)'
+ instead. Don't use 'offsetof (struct s, d[0])', as this doesn't work with
+ MSVC and with C++ compilers. */
+#undef FLEXIBLE_ARRAY_MEMBER
+
/* Define to 1 if nl_langinfo (YESEXPR) returns a non-empty string. */
#undef FUNC_NL_LANGINFO_YESEXPR_WORKS
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 malloc-gnu shall be considered present. */
-#undef GNULIB_MALLOC_GNU
-
/* enable some gnulib portability checks */
#undef GNULIB_PORTCHECK
+/* Define to 1 if printf and friends should be labeled with attribute
+ "__gnu_printf__" instead of "__printf__" */
+#undef GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU
+
/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
whether the gnulib module scanf shall be considered present. */
#undef GNULIB_SCANF
whether the gnulib module strerror shall be considered present. */
#undef GNULIB_STRERROR
+/* Define to 1 when the gnulib module accept should be tested. */
+#undef GNULIB_TEST_ACCEPT
+
+/* Define to 1 when the gnulib module bind should be tested. */
+#undef GNULIB_TEST_BIND
+
/* Define to 1 when the gnulib module btowc should be tested. */
#undef GNULIB_TEST_BTOWC
/* Define to 1 when the gnulib module close should be tested. */
#undef GNULIB_TEST_CLOSE
+/* Define to 1 when the gnulib module connect should be tested. */
+#undef GNULIB_TEST_CONNECT
+
/* Define to 1 when the gnulib module dup2 should be tested. */
#undef GNULIB_TEST_DUP2
/* Define to 1 when the gnulib module fstat should be tested. */
#undef GNULIB_TEST_FSTAT
+/* Define to 1 when the gnulib module ftruncate should be tested. */
+#undef GNULIB_TEST_FTRUNCATE
+
/* Define to 1 when the gnulib module getcwd should be tested. */
#undef GNULIB_TEST_GETCWD
/* Define to 1 when the gnulib module gettimeofday should be tested. */
#undef GNULIB_TEST_GETTIMEOFDAY
+/* Define to 1 when the gnulib module ioctl should be tested. */
+#undef GNULIB_TEST_IOCTL
+
/* Define to 1 when the gnulib module iswblank should be tested. */
#undef GNULIB_TEST_ISWBLANK
+/* Define to 1 when the gnulib module listen should be tested. */
+#undef GNULIB_TEST_LISTEN
+
/* Define to 1 when the gnulib module localeconv should be tested. */
#undef GNULIB_TEST_LOCALECONV
/* Define to 1 when the gnulib module mktime should be tested. */
#undef GNULIB_TEST_MKTIME
+/* Define to 1 when the gnulib module nanosleep should be tested. */
+#undef GNULIB_TEST_NANOSLEEP
+
/* Define to 1 when the gnulib module nl_langinfo should be tested. */
#undef GNULIB_TEST_NL_LANGINFO
/* Define to 1 when the gnulib module open should be tested. */
#undef GNULIB_TEST_OPEN
+/* Define to 1 when the gnulib module perror should be tested. */
+#undef GNULIB_TEST_PERROR
+
+/* Define to 1 when the gnulib module pipe should be tested. */
+#undef GNULIB_TEST_PIPE
+
/* Define to 1 when the gnulib module putenv should be tested. */
#undef GNULIB_TEST_PUTENV
/* Define to 1 when the gnulib module raise should be tested. */
#undef GNULIB_TEST_RAISE
+/* Define to 1 when the gnulib module rawmemchr should be tested. */
+#undef GNULIB_TEST_RAWMEMCHR
+
/* Define to 1 when the gnulib module readlink should be tested. */
#undef GNULIB_TEST_READLINK
/* Define to 1 when the gnulib module secure_getenv should be tested. */
#undef GNULIB_TEST_SECURE_GETENV
+/* Define to 1 when the gnulib module select should be tested. */
+#undef GNULIB_TEST_SELECT
+
/* Define to 1 when the gnulib module setenv should be tested. */
#undef GNULIB_TEST_SETENV
/* Define to 1 when the gnulib module setlocale should be tested. */
#undef GNULIB_TEST_SETLOCALE
+/* Define to 1 when the gnulib module setsockopt should be tested. */
+#undef GNULIB_TEST_SETSOCKOPT
+
/* Define to 1 when the gnulib module sigaction should be tested. */
#undef GNULIB_TEST_SIGACTION
/* Define to 1 when the gnulib module snprintf should be tested. */
#undef GNULIB_TEST_SNPRINTF
+/* Define to 1 when the gnulib module socket should be tested. */
+#undef GNULIB_TEST_SOCKET
+
/* Define to 1 when the gnulib module stat should be tested. */
#undef GNULIB_TEST_STAT
/* Define to 1 when the gnulib module strerror should be tested. */
#undef GNULIB_TEST_STRERROR
+/* Define to 1 when the gnulib module strerror_r should be tested. */
+#undef GNULIB_TEST_STRERROR_R
+
/* Define to 1 when the gnulib module strndup should be tested. */
#undef GNULIB_TEST_STRNDUP
/* Define to 1 when the gnulib module symlink should be tested. */
#undef GNULIB_TEST_SYMLINK
+/* Define to 1 when the gnulib module timegm should be tested. */
+#undef GNULIB_TEST_TIMEGM
+
/* Define to 1 when the gnulib module time_r should be tested. */
#undef GNULIB_TEST_TIME_R
+/* Define to 1 when the gnulib module time_rz should be tested. */
+#undef GNULIB_TEST_TIME_RZ
+
/* Define to 1 when the gnulib module unsetenv should be tested. */
#undef GNULIB_TEST_UNSETENV
-/* Define to 1 when the gnulib module usleep should be tested. */
-#undef GNULIB_TEST_USLEEP
-
/* Define to 1 when the gnulib module vasprintf should be tested. */
#undef GNULIB_TEST_VASPRINTF
/* Define to 1 if <alloca.h> works. */
#undef HAVE_ALLOCA_H
+/* Define to 1 if you have the <arpa/inet.h> header file. */
+#undef HAVE_ARPA_INET_H
+
/* Define to 1 if you have the <bp-sym.h> header file. */
#undef HAVE_BP_SYM_H
/* Define to 1 if you have the `btowc' function. */
#undef HAVE_BTOWC
+/* Define to 1 if nanosleep mishandles large arguments. */
+#undef HAVE_BUG_BIG_NANOSLEEP
+
+/* Define to 1 if you have the `catgets' function. */
+#undef HAVE_CATGETS
+
/* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the
CoreFoundation framework. */
#undef HAVE_CFLOCALECOPYCURRENT
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
don't. */
#undef HAVE_DECL_GETC_UNLOCKED
+/* Define to 1 if you have the declaration of `getdtablesize', and to 0 if you
+ don't. */
+#undef HAVE_DECL_GETDTABLESIZE
+
/* Define to 1 if you have the declaration of `getenv', and to 0 if you don't.
*/
#undef HAVE_DECL_GETENV
+/* Define to 1 if you have the declaration of `inet_pton', and to 0 if you
+ don't. */
+#undef HAVE_DECL_INET_PTON
+
/* Define to 1 if you have the declaration of `isblank', and to 0 if you
don't. */
#undef HAVE_DECL_ISBLANK
/* Define to 1 if you have the `fork' function. */
#undef HAVE_FORK
+/* Define to 1 if you have the `ftruncate' function. */
+#undef HAVE_FTRUNCATE
+
/* Define to 1 if you have the `getdtablesize' function. */
#undef HAVE_GETDTABLESIZE
+/* Define to 1 if you have the `getegid' function. */
+#undef HAVE_GETEGID
+
+/* Define to 1 if you have the `geteuid' function. */
+#undef HAVE_GETEUID
+
+/* Define to 1 if you have the `getgid' function. */
+#undef HAVE_GETGID
+
/* Define to 1 if you have the <getopt.h> header file. */
#undef HAVE_GETOPT_H
/* Define to 1 if you have the `gettimeofday' function. */
#undef HAVE_GETTIMEOFDAY
+/* Define to 1 if you have the `getuid' function. */
+#undef HAVE_GETUID
+
/* Define if you have the iconv() function and it works. */
#undef HAVE_ICONV
/* Define to 1 if you have the <iconv.h> header file. */
#undef HAVE_ICONV_H
+/* Define to 1 if you have the `inet_pton' function. */
+#undef HAVE_INET_PTON
+
/* Define to 1 if the compiler supports one of the keywords 'inline',
'__inline__', '__inline' and effectively inlines functions marked as such.
*/
declares uintmax_t. */
#undef HAVE_INTTYPES_H_WITH_UINTMAX
+/* Define to 1 if you have the `ioctl' function. */
+#undef HAVE_IOCTL
+
+/* Define to 1 if <sys/socket.h> defines AF_INET. */
+#undef HAVE_IPV4
+
+/* Define to 1 if <sys/socket.h> defines AF_INET6. */
+#undef HAVE_IPV6
+
/* Define to 1 if you have the `isblank' function. */
#undef HAVE_ISBLANK
/* Define to 1 if you have the `lstat' function. */
#undef HAVE_LSTAT
-/* Define to 1 if your system has a GNU libc compatible 'malloc' function, and
- to 0 otherwise. */
-#undef HAVE_MALLOC_GNU
+/* Define to 1 if you have the <malloc.h> header file. */
+#undef HAVE_MALLOC_H
/* Define if the 'malloc' function is POSIX compliant. */
#undef HAVE_MALLOC_POSIX
/* Define to 1 if <wchar.h> declares mbstate_t. */
#undef HAVE_MBSTATE_T
-/* Define to 1 if you have the <memory.h> header file. */
-#undef HAVE_MEMORY_H
-
/* Define to 1 if you have the `mempcpy' function. */
#undef HAVE_MEMPCPY
/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
#undef HAVE_NDIR_H
+/* Define to 1 if you have the <netdb.h> header file. */
+#undef HAVE_NETDB_H
+
+/* Define to 1 if you have the <netinet/in.h> header file. */
+#undef HAVE_NETINET_IN_H
+
/* Define to 1 if you have the `newlocale' function. */
#undef HAVE_NEWLOCALE
/* Define to 1 if you have the <OS.h> header file. */
#undef HAVE_OS_H
+/* Define to 1 if you have the `pipe' function. */
+#undef HAVE_PIPE
+
/* Define to 1 if you have the `raise' function. */
#undef HAVE_RAISE
+/* Define to 1 if you have the `rawmemchr' function. */
+#undef HAVE_RAWMEMCHR
+
+/* Define to 1 if accept is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_ACCEPT
+
+/* Define to 1 if accept4 is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_ACCEPT4
+
/* Define to 1 if atoll is declared even after undefining macros. */
#undef HAVE_RAW_DECL_ATOLL
+/* Define to 1 if bind is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_BIND
+
/* Define to 1 if btowc is declared even after undefining macros. */
#undef HAVE_RAW_DECL_BTOWC
/* Define to 1 if chown is declared even after undefining macros. */
#undef HAVE_RAW_DECL_CHOWN
+/* Define to 1 if connect is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_CONNECT
+
/* Define to 1 if dprintf is declared even after undefining macros. */
#undef HAVE_RAW_DECL_DPRINTF
/* Define to 1 if getpagesize is declared even after undefining macros. */
#undef HAVE_RAW_DECL_GETPAGESIZE
+/* Define to 1 if getpeername is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_GETPEERNAME
+
/* Define to 1 if gets is declared even after undefining macros. */
#undef HAVE_RAW_DECL_GETS
+/* Define to 1 if getsockname is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_GETSOCKNAME
+
+/* Define to 1 if getsockopt is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_GETSOCKOPT
+
/* Define to 1 if getsubopt is declared even after undefining macros. */
#undef HAVE_RAW_DECL_GETSUBOPT
/* Define to 1 if imaxdiv is declared even after undefining macros. */
#undef HAVE_RAW_DECL_IMAXDIV
+/* Define to 1 if inet_ntop is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_INET_NTOP
+
+/* Define to 1 if inet_pton is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_INET_PTON
+
/* Define to 1 if initstate is declared even after undefining macros. */
#undef HAVE_RAW_DECL_INITSTATE
/* Define to 1 if initstate_r is declared even after undefining macros. */
#undef HAVE_RAW_DECL_INITSTATE_R
+/* Define to 1 if ioctl is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_IOCTL
+
/* Define to 1 if isatty is declared even after undefining macros. */
#undef HAVE_RAW_DECL_ISATTY
+/* Define to 1 if isblank is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_ISBLANK
+
/* Define to 1 if iswctype is declared even after undefining macros. */
#undef HAVE_RAW_DECL_ISWCTYPE
/* Define to 1 if linkat is declared even after undefining macros. */
#undef HAVE_RAW_DECL_LINKAT
+/* Define to 1 if listen is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_LISTEN
+
/* Define to 1 if lseek is declared even after undefining macros. */
#undef HAVE_RAW_DECL_LSEEK
/* Define to 1 if pread is declared even after undefining macros. */
#undef HAVE_RAW_DECL_PREAD
+/* Define to 1 if pselect is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_PSELECT
+
/* Define to 1 if pthread_sigmask is declared even after undefining macros. */
#undef HAVE_RAW_DECL_PTHREAD_SIGMASK
/* Define to 1 if realpath is declared even after undefining macros. */
#undef HAVE_RAW_DECL_REALPATH
+/* Define to 1 if recv is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_RECV
+
+/* Define to 1 if recvfrom is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_RECVFROM
+
/* Define to 1 if renameat is declared even after undefining macros. */
#undef HAVE_RAW_DECL_RENAMEAT
/* Define to 1 if secure_getenv is declared even after undefining macros. */
#undef HAVE_RAW_DECL_SECURE_GETENV
+/* Define to 1 if select is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_SELECT
+
+/* Define to 1 if send is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_SEND
+
+/* Define to 1 if sendto is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_SENDTO
+
/* Define to 1 if setenv is declared even after undefining macros. */
#undef HAVE_RAW_DECL_SETENV
/* Define to 1 if setlocale is declared even after undefining macros. */
#undef HAVE_RAW_DECL_SETLOCALE
+/* Define to 1 if setsockopt is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_SETSOCKOPT
+
/* Define to 1 if setstate is declared even after undefining macros. */
#undef HAVE_RAW_DECL_SETSTATE
/* Define to 1 if setusershell is declared even after undefining macros. */
#undef HAVE_RAW_DECL_SETUSERSHELL
+/* Define to 1 if shutdown is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_SHUTDOWN
+
/* Define to 1 if sigaction is declared even after undefining macros. */
#undef HAVE_RAW_DECL_SIGACTION
/* Define to 1 if snprintf is declared even after undefining macros. */
#undef HAVE_RAW_DECL_SNPRINTF
+/* Define to 1 if socket is declared even after undefining macros. */
+#undef HAVE_RAW_DECL_SOCKET
+
/* Define to 1 if srandom is declared even after undefining macros. */
#undef HAVE_RAW_DECL_SRANDOM
/* Define to 1 if you have the `readlinkat' function. */
#undef HAVE_READLINKAT
+/* Define to 1 if the system has the type `sa_family_t'. */
+#undef HAVE_SA_FAMILY_T
+
/* Define to 1 if you have the <search.h> header file. */
#undef HAVE_SEARCH_H
/* Define to 1 if you have the `secure_getenv' function. */
#undef HAVE_SECURE_GETENV
+/* Define to 1 if you have the `setdtablesize' function. */
+#undef HAVE_SETDTABLESIZE
+
/* Define to 1 if you have the `setenv' function. */
#undef HAVE_SETENV
/* Define to 1 if you have the `setrlimit' function. */
#undef HAVE_SETRLIMIT
+/* Define to 1 if you have the `shutdown' function. */
+#undef HAVE_SHUTDOWN
+
/* Define to 1 if you have the `sigaction' function. */
#undef HAVE_SIGACTION
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
-/* Define to 1 if you have the <string.h> header file. */
+/* Always define to 1, for backward compatibility. You can assume <string.h>
+ exists. */
#undef HAVE_STRING_H
/* Define to 1 if you have the `strncasecmp' function. */
/* Define to 1 if `sa_sigaction' is a member of `struct sigaction'. */
#undef HAVE_STRUCT_SIGACTION_SA_SIGACTION
+/* Define to 1 if the system has the type `struct sockaddr_storage'. */
+#undef HAVE_STRUCT_SOCKADDR_STORAGE
+
+/* Define to 1 if `ss_family' is a member of `struct sockaddr_storage'. */
+#undef HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY
+
/* Define to 1 if `st_atimensec' is a member of `struct stat'. */
#undef HAVE_STRUCT_STAT_ST_ATIMENSEC
/* Define to 1 if you have the <sys/inttypes.h> header file. */
#undef HAVE_SYS_INTTYPES_H
+/* Define to 1 if you have the <sys/ioctl.h> header file. */
+#undef HAVE_SYS_IOCTL_H
+
/* Define to 1 if you have the <sys/mman.h> header file. */
#undef HAVE_SYS_MMAN_H
/* 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/select.h> header file. */
+#undef HAVE_SYS_SELECT_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 <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
+/* Define to 1 if you have the <sys/uio.h> header file. */
+#undef HAVE_SYS_UIO_H
+
/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
#undef HAVE_SYS_WAIT_H
+/* Define to 1 if you have the `timegm' function. */
+#undef HAVE_TIMEGM
+
+/* Define to 1 if the system has the type `timezone_t'. */
+#undef HAVE_TIMEZONE_T
+
/* Define if struct tm has the tm_gmtoff member. */
#undef HAVE_TM_GMTOFF
/* Define to 1 if the system has the type 'unsigned long long int'. */
#undef HAVE_UNSIGNED_LONG_LONG_INT
-/* Define to 1 if you have the `usleep' function. */
-#undef HAVE_USLEEP
-
/* Define to 1 if you have the `vasnprintf' function. */
#undef HAVE_VASNPRINTF
/* Define to 1 if you have the `wcrtomb' function. */
#undef HAVE_WCRTOMB
-/* Define to 1 if you have the `wcscoll' function. */
-#undef HAVE_WCSCOLL
-
/* Define to 1 if you have the `wcslen' function. */
#undef HAVE_WCSLEN
/* Define to 1 if `vfork' works. */
#undef HAVE_WORKING_VFORK
+/* Define to 1 if you have the <ws2tcpip.h> header file. */
+#undef HAVE_WS2TCPIP_H
+
/* Define to 1 if you have the <xlocale.h> header file. */
#undef HAVE_XLOCALE_H
/* Define to 1 if you have the `__secure_getenv' function. */
#undef HAVE___SECURE_GETENV
+/* Define to 1 if you have the `__xpg_strerror_r' function. */
+#undef HAVE___XPG_STRERROR_R
+
/* Define as const if the declaration of iconv() needs const. */
#undef ICONV_CONST
/* Define to a substitute value for mmap()'s MAP_ANONYMOUS flag. */
#undef MAP_ANONYMOUS
+/* Define if the mbrtowc function does not return (size_t) -2 for empty input.
+ */
+#undef MBRTOWC_EMPTY_INPUT_BUG
+
/* 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 to 1 if your C compiler doesn't accept -c and -o together. */
-#undef NO_MINUS_C_MINUS_O
-
/* Define to 1 if open() fails to recognize a trailing slash. */
#undef OPEN_TRAILING_SLASH_BUG
/* Define to 1 if the `S_IS*' macros in <sys/stat.h> do not work properly. */
#undef STAT_MACROS_BROKEN
-/* Define to 1 if you have the ANSI C header files. */
+/* Always define to 1, for backward compatibility. You can assume the C90
+ standard headers exist. */
#undef STDC_HEADERS
/* Define to 1 if strerror_r returns char *. */
#undef STRERROR_R_CHAR_P
+/* Define to 1 if time_t is signed. */
+#undef TIME_T_IS_SIGNED
+
/* Define to 1 if your <sys/time.h> declares `struct tm'. */
#undef TM_IN_SYS_TIME
#ifndef _GNU_SOURCE
# undef _GNU_SOURCE
#endif
+/* Use GNU style printf and scanf. */
+#ifndef __USE_MINGW_ANSI_STDIO
+# undef __USE_MINGW_ANSI_STDIO
+#endif
/* Enable threading extensions on Solaris. */
#ifndef _POSIX_PTHREAD_SEMANTICS
# undef _POSIX_PTHREAD_SEMANTICS
'wchar_t'. */
#undef WCHAR_T_SUFFIX
+/* Define if WSAStartup is needed. */
+#undef WINDOWS_SOCKETS
+
/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
'wint_t'. */
#undef WINT_T_SUFFIX
this defined. */
#undef _POSIX_1_SOURCE
+/* Define to 1 in order to get the POSIX compatible declarations of socket
+ functions. */
+#undef _POSIX_PII_SOCKET
+
/* Define to 1 if you need to in order for 'stat' and other things to work. */
#undef _POSIX_SOURCE
used. */
#undef __GETOPT_PREFIX
-/* _GL_INLINE is a portable alternative to ISO C99 plain 'inline'.
- _GL_EXTERN_INLINE is a portable alternative to 'extern inline'.
- _GL_INLINE_HEADER_BEGIN contains useful stuff to put
- in an include file, before uses of _GL_INLINE.
- It suppresses GCC's bogus "no previous prototype for 'FOO'" diagnostic,
- when FOO is an inline function in the header; see
- <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54113>.
- _GL_INLINE_HEADER_END contains useful stuff to put
- in the same include file, after uses of _GL_INLINE.
+/* Define to 1 if the system <stdint.h> predates C++11. */
+#undef __STDC_CONSTANT_MACROS
+
+/* Define to 1 if the system <stdint.h> predates C++11. */
+#undef __STDC_LIMIT_MACROS
+
+/* Define to 1 if C does not support variable-length arrays, and if the
+ compiler does not already define this. */
+#undef __STDC_NO_VLA__
+
+/* Please see the Gnulib manual for how to use these macros.
Suppress extern inline with HP-UX cc, as it appears to be broken; see
<http://lists.gnu.org/archive/html/bug-texinfo/2013-02/msg00030.html>.
- Suppress the use of extern inline on Apple's platforms,
- as Libc-825.25 (2012-09-19) is incompatible with it; see
- <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00023.html>.
- Perhaps Apple will fix this some day. */
+ Suppress extern inline with Sun C in standards-conformance mode, as it
+ mishandles inline functions that call each other. E.g., for 'inline void f
+ (void) { } inline void g (void) { f (); }', c99 incorrectly complains
+ 'reference to static identifier "f" in extern inline function'.
+ This bug was observed with Sun C 5.12 SunOS_i386 2011/11/16.
+
+ Suppress extern inline (with or without __attribute__ ((__gnu_inline__)))
+ on configurations that mistakenly use 'static inline' to implement
+ functions or macros in standard C headers like <ctype.h>. For example,
+ if isdigit is mistakenly implemented via a static inline function,
+ a program containing an extern inline function that calls isdigit
+ may not work since the C standard prohibits extern inline functions
+ from calling static functions. This bug is known to occur on:
+
+ OS X 10.8 and earlier; see:
+ http://lists.gnu.org/archive/html/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
+
+ FreeBSD; see:
+ http://lists.gnu.org/archive/html/bug-gnulib/2014-07/msg00104.html
+
+ OS X 10.9 has a macro __header_inline indicating the bug is fixed for C and
+ for clang but remains for g++; see <http://trac.macports.org/ticket/41033>.
+ Assume DragonFly and FreeBSD will be similar. */
+#if (((defined __APPLE__ && defined __MACH__) \
+ || defined __DragonFly__ || defined __FreeBSD__) \
+ && (defined __header_inline \
+ ? (defined __cplusplus && defined __GNUC_STDC_INLINE__ \
+ && ! defined __clang__) \
+ : ((! defined _DONT_USE_CTYPE_INLINE_ \
+ && (defined __GNUC__ || defined __cplusplus)) \
+ || (defined _FORTIFY_SOURCE && 0 < _FORTIFY_SOURCE \
+ && defined __GNUC__ && ! defined __cplusplus))))
+# define _GL_EXTERN_INLINE_STDHEADER_BUG
+#endif
#if ((__GNUC__ \
? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \
- : 199901L <= __STDC_VERSION__ && !defined __HP_cc) \
- && !defined __APPLE__)
+ : (199901L <= __STDC_VERSION__ \
+ && !defined __HP_cc \
+ && !defined __PGI \
+ && !(defined __SUNPRO_C && __STDC__))) \
+ && !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
# define _GL_INLINE inline
# define _GL_EXTERN_INLINE extern inline
-#elif 2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __APPLE__
-# if __GNUC_GNU_INLINE__
+# define _GL_EXTERN_INLINE_IN_USE
+#elif (2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __STRICT_ANSI__ \
+ && !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
+# if defined __GNUC_GNU_INLINE__ && __GNUC_GNU_INLINE__
/* __gnu_inline__ suppresses a GCC 4.2 diagnostic. */
# define _GL_INLINE extern inline __attribute__ ((__gnu_inline__))
# else
# define _GL_INLINE extern inline
# endif
# define _GL_EXTERN_INLINE extern
+# define _GL_EXTERN_INLINE_IN_USE
#else
# define _GL_INLINE static _GL_UNUSED
# define _GL_EXTERN_INLINE static _GL_UNUSED
#endif
-#if 4 < __GNUC__ + (6 <= __GNUC_MINOR__)
+/* In GCC 4.6 (inclusive) to 5.1 (exclusive),
+ suppress bogus "no previous prototype for 'FOO'"
+ and "no previous declaration for 'FOO'" diagnostics,
+ when FOO is an inline function in the header; see
+ <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54113> and
+ <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63877>. */
+#if __GNUC__ == 4 && 6 <= __GNUC_MINOR__
# if defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__
# define _GL_INLINE_HEADER_CONST_PRAGMA
# else
/* A replacement for va_copy, if needed. */
#define gl_va_copy(a,b) ((a) = (b))
-/* Define to rpl_gmtime if the replacement function should be used. */
-#undef gmtime
-
/* Define to `__inline__' or `__inline' if that's what the C compiler
calls it, or to nothing if 'inline' is not supported under any name. */
#ifndef __cplusplus
/* Define to 1 if the compiler is checking for lint. */
#undef lint
-/* Define to rpl_localtime if the replacement function should be used. */
-#undef localtime
-
/* Define to a type if <wchar.h> does not define. */
#undef mbstate_t
+/* Define to the real name of the mktime_internal function. */
+#undef mktime_internal
+
/* Define to `int' if <sys/types.h> does not define. */
#undef mode_t
/* Define to `unsigned int' if <sys/types.h> does not define. */
#undef size_t
+/* type to use in place of socklen_t if not defined */
+#undef socklen_t
+
/* Define as a signed type of the same size as size_t. */
#undef ssize_t
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__))
#endif
-/* Define to an unsigned 32-bit type if <sys/types.h> lacks this type. */
-#undef useconds_t
-
/* Define as a macro for copying va_list variables. */
#undef va_copy
--- /dev/null
+/* A substitute for ISO C99 <ctype.h>, for platforms on which it is incomplete.
+
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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 <http://www.gnu.org/licenses/>. */
+
+/* Written by Bruno Haible. */
+
+/*
+ * ISO C 99 <ctype.h> for platforms on which it is incomplete.
+ * <http://www.opengroup.org/onlinepubs/9699919799/basedefs/ctype.h.html>
+ */
+
+#ifndef _@GUARD_PREFIX@_CTYPE_H
+
+#if __GNUC__ >= 3
+@PRAGMA_SYSTEM_HEADER@
+#endif
+@PRAGMA_COLUMNS@
+
+/* Include the original <ctype.h>. */
+/* The include_next requires a split double-inclusion guard. */
+#@INCLUDE_NEXT@ @NEXT_CTYPE_H@
+
+#ifndef _@GUARD_PREFIX@_CTYPE_H
+#define _@GUARD_PREFIX@_CTYPE_H
+
+/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */
+
+/* The definition of _GL_WARN_ON_USE is copied here. */
+
+/* Return non-zero if c is a blank, i.e. a space or tab character. */
+#if @GNULIB_ISBLANK@
+# if !@HAVE_ISBLANK@
+_GL_EXTERN_C int isblank (int c);
+# endif
+#elif defined GNULIB_POSIXCHECK
+# undef isblank
+# if HAVE_RAW_DECL_ISBLANK
+_GL_WARN_ON_USE (isblank, "isblank is unportable - "
+ "use gnulib module isblank for portability");
+# endif
+#endif
+
+#endif /* _@GUARD_PREFIX@_CTYPE_H */
+#endif /* _@GUARD_PREFIX@_CTYPE_H */
/* Analyze differences between two vectors.
- Copyright (C) 1988-1989, 1992-1995, 2001-2004, 2006-2013 Free Software
+ Copyright (C) 1988-1989, 1992-1995, 2001-2004, 2006-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
distance" in Wikipedia.
The basic algorithm is described in:
- "An O(ND) Difference Algorithm and its Variations", Eugene Myers,
- Algorithmica Vol. 1 No. 2, 1986, pp. 251-266;
- see especially section 4.2, which describes the variation used below.
+ "An O(ND) Difference Algorithm and its Variations", Eugene W. Myers,
+ Algorithmica Vol. 1, 1986, pp. 251-266,
+ <http://dx.doi.org/10.1007/BF01840446>.
+ See especially section 4.2, which describes the variation used below.
The basic algorithm was independently discovered as described in:
- "Algorithms for Approximate String Matching", E. Ukkonen,
- Information and Control Vol. 64, 1985, pp. 100-118.
-
- Unless the 'find_minimal' flag is set, this code uses the TOO_EXPENSIVE
- heuristic, by Paul Eggert, to limit the cost to O(N**1.5 log N)
- at the price of producing suboptimal output for large inputs with
- many differences. */
+ "Algorithms for Approximate String Matching", Esko Ukkonen,
+ Information and Control Vol. 64, 1985, pp. 100-118,
+ <http://dx.doi.org/10.1016/S0019-9958(85)80046-2>. */
/* Before including this file, you need to define:
ELEMENT The element type of the vectors being compared.
EQUAL A two-argument macro that tests two elements for
equality.
OFFSET A signed integer type sufficient to hold the
- difference between two indices. Usually
- something like ssize_t.
+ difference between two indices. Usually
+ something like ptrdiff_t.
EXTRA_CONTEXT_FIELDS Declarations of fields for 'struct context'.
NOTE_DELETE(ctxt, xoff) Record the removal of the object xvec[xoff].
NOTE_INSERT(ctxt, yoff) Record the insertion of the object yvec[yoff].
/* Use this to suppress gcc's "...may be used before initialized" warnings.
Beware: The Code argument must not contain commas. */
#ifndef IF_LINT
-# ifdef lint
+# if defined GCC_LINT || defined lint
# define IF_LINT(Code) Code
# else
# define IF_LINT(Code) /* empty */
/* As above, but when Code must contain one comma. */
#ifndef IF_LINT2
-# ifdef lint
+# if defined GCC_LINT || defined lint
# define IF_LINT2(Code1, Code2) Code1, Code2
# else
# define IF_LINT2(Code1, Code2) /* empty */
OFFSET *bdiag;
#ifdef USE_HEURISTIC
- /* This corresponds to the diff -H flag. With this heuristic, for
- vectors with a constant small density of changes, the algorithm is
- linear in the vectors size. */
+ /* This corresponds to the diff --speed-large-files flag. With this
+ heuristic, for vectors with a constant small density of changes,
+ the algorithm is linear in the vector size. */
bool heuristic;
#endif
- /* Edit scripts longer than this are too expensive to compute. */
- OFFSET too_expensive;
-
/* Snakes bigger than this are considered "big". */
#define SNAKE_LIMIT 20
};
/* Midpoints of this partition. */
OFFSET xmid;
OFFSET ymid;
-
- /* True if low half will be analyzed minimally. */
- bool lo_minimal;
-
- /* Likewise for high half. */
- bool hi_minimal;
};
When the two searches meet, we have found the midpoint of the shortest
edit sequence.
- If FIND_MINIMAL is true, find the minimal edit script regardless of
- expense. Otherwise, if the search is too expensive, use heuristics to
- stop the search and report a suboptimal answer.
-
- Set PART->(xmid,ymid) to the midpoint (XMID,YMID). The diagonal number
+ Set *PART to the midpoint (XMID,YMID). The diagonal number
XMID - YMID equals the number of inserted elements minus the number
of deleted elements (counting only elements before the midpoint).
- Set PART->lo_minimal to true iff the minimal edit script for the
- left half of the partition is known; similarly for PART->hi_minimal.
-
This function assumes that the first elements of the specified portions
of the two vectors do not match, and likewise that the last elements do not
match. The caller must trim matching elements from the beginning and end
suboptimal diff output. It cannot cause incorrect diff output. */
static void
-diag (OFFSET xoff, OFFSET xlim, OFFSET yoff, OFFSET ylim, bool find_minimal,
+diag (OFFSET xoff, OFFSET xlim, OFFSET yoff, OFFSET ylim,
struct partition *part, struct context *ctxt)
{
OFFSET *const fd = ctxt->fdiag; /* Give the compiler a chance. */
{
part->xmid = x;
part->ymid = y;
- part->lo_minimal = part->hi_minimal = true;
return;
}
}
{
part->xmid = x;
part->ymid = y;
- part->lo_minimal = part->hi_minimal = true;
return;
}
}
- if (find_minimal)
- continue;
-
#ifdef USE_HEURISTIC
/* Heuristic: check occasionally for a diagonal that has made lots
of progress compared with the edit distance. If we have any
}
}
if (best > 0)
- {
- part->lo_minimal = true;
- part->hi_minimal = false;
- return;
- }
+ return;
}
{
}
}
if (best > 0)
- {
- part->lo_minimal = false;
- part->hi_minimal = true;
- return;
- }
+ return;
}
}
#endif /* USE_HEURISTIC */
-
- /* Heuristic: if we've gone well beyond the call of duty, give up
- and report halfway between our best results so far. */
- if (c >= ctxt->too_expensive)
- {
- OFFSET fxybest;
- OFFSET fxbest IF_LINT (= 0);
- OFFSET bxybest;
- OFFSET bxbest IF_LINT (= 0);
-
- /* Find forward diagonal that maximizes X + Y. */
- fxybest = -1;
- for (d = fmax; d >= fmin; d -= 2)
- {
- OFFSET x = MIN (fd[d], xlim);
- OFFSET y = x - d;
- if (ylim < y)
- {
- x = ylim + d;
- y = ylim;
- }
- if (fxybest < x + y)
- {
- fxybest = x + y;
- fxbest = x;
- }
- }
-
- /* Find backward diagonal that minimizes X + Y. */
- bxybest = OFFSET_MAX;
- for (d = bmax; d >= bmin; d -= 2)
- {
- OFFSET x = MAX (xoff, bd[d]);
- OFFSET y = x - d;
- if (y < yoff)
- {
- x = yoff + d;
- y = yoff;
- }
- if (x + y < bxybest)
- {
- bxybest = x + y;
- bxbest = x;
- }
- }
-
- /* Use the better of the two diagonals. */
- if ((xlim + ylim) - bxybest < fxybest - (xoff + yoff))
- {
- part->xmid = fxbest;
- part->ymid = fxybest - fxbest;
- part->lo_minimal = true;
- part->hi_minimal = false;
- }
- else
- {
- part->xmid = bxbest;
- part->ymid = bxybest - bxbest;
- part->lo_minimal = false;
- part->hi_minimal = true;
- }
- return;
- }
}
#undef XREF_YREF_EQUAL
}
Note that XLIM, YLIM are exclusive bounds. All indices into the vectors
are origin-0.
- If FIND_MINIMAL, find a minimal difference no matter how
- expensive it is.
-
The results are recorded by invoking NOTE_DELETE and NOTE_INSERT.
Return false if terminated normally, or true if terminated through early
static bool
compareseq (OFFSET xoff, OFFSET xlim, OFFSET yoff, OFFSET ylim,
- bool find_minimal, struct context *ctxt)
+ struct context *ctxt)
{
#ifdef ELEMENT
ELEMENT const *xv = ctxt->xvec; /* Help the compiler. */
struct partition part IF_LINT2 (= { .xmid = 0, .ymid = 0 });
/* Find a point of correspondence in the middle of the vectors. */
- diag (xoff, xlim, yoff, ylim, find_minimal, &part, ctxt);
+ diag (xoff, xlim, yoff, ylim, &part, ctxt);
/* Use the partitions to split this problem into subproblems. */
- if (compareseq (xoff, part.xmid, yoff, part.ymid, part.lo_minimal, ctxt))
+ if (compareseq (xoff, part.xmid, yoff, part.ymid, ctxt))
return true;
- if (compareseq (part.xmid, xlim, part.ymid, ylim, part.hi_minimal, ctxt))
+ if (compareseq (part.xmid, xlim, part.ymid, ylim, ctxt))
return true;
}
/* dirname.c -- return all but the last element in a file name
- Copyright (C) 1990, 1998, 2000-2001, 2003-2006, 2009-2013 Free Software
+ Copyright (C) 1990, 1998, 2000-2001, 2003-2006, 2009-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
/* dirname.c -- return all but the last element in a file name
- Copyright (C) 1990, 1998, 2000-2001, 2003-2006, 2009-2013 Free Software
+ Copyright (C) 1990, 1998, 2000-2001, 2003-2006, 2009-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
/* Take file names apart into directory and base names.
- Copyright (C) 1998, 2001, 2003-2006, 2009-2013 Free Software Foundation,
+ Copyright (C) 1998, 2001, 2003-2006, 2009-2016 Free Software Foundation,
Inc.
This program is free software: you can redistribute it and/or modify
# define DOUBLE_SLASH_IS_DISTINCT_ROOT 0
# endif
+#ifdef __cplusplus
+extern "C" {
+#endif
+
# if GNULIB_DIRNAME
char *base_name (char const *file);
char *dir_name (char const *file);
bool strip_trailing_slashes (char *file);
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
#endif /* not DIRNAME_H_ */
/* File names on MS-DOS/Windows systems.
- Copyright (C) 2000-2001, 2004-2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2000-2001, 2004-2006, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Duplicate an open file descriptor to a specified file descriptor.
- Copyright (C) 1999, 2004-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2004-2007, 2009-2016 Free Software Foundation, Inc.
This 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 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
/* 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)
/* A POSIX-like <errno.h>.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Error handler for noninteractive utilities
- Copyright (C) 1990-1998, 2000-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1990-1998, 2000-2007, 2009-2016 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
# include <stdint.h>
# include <wchar.h>
# define mbsrtowcs __mbsrtowcs
+# define USE_UNLOCKED_IO 0
+# define _GL_ATTRIBUTE_FORMAT_PRINTF(a, b)
+# define _GL_ARG_NONNULL(a)
#endif
#if USE_UNLOCKED_IO
extern void __error_at_line (int status, int errnum, const char *file_name,
unsigned int line_number, const char *message,
...)
- __attribute__ ((__format__ (__printf__, 5, 6)));;
+ __attribute__ ((__format__ (__printf__, 5, 6)));
# define error __error
# define error_at_line __error_at_line
# include <libio/iolibio.h>
-# define fflush(s) INTUSE(_IO_fflush) (s)
+# define fflush(s) _IO_fflush (s)
# undef putc
-# define putc(c, fp) INTUSE(_IO_putc) (c, fp)
+# define putc(c, fp) _IO_putc (c, fp)
# include <bits/libc-lock.h>
#if defined HAVE_STRERROR_R || _LIBC
char errbuf[1024];
-# if STRERROR_R_CHAR_P || _LIBC
+# if _LIBC || STRERROR_R_CHAR_P
s = __strerror_r (errnum, errbuf, sizeof errbuf);
# else
if (__strerror_r (errnum, errbuf, sizeof errbuf) == 0)
#endif
}
-static void
+static void _GL_ATTRIBUTE_FORMAT_PRINTF (3, 0) _GL_ARG_NONNULL ((3))
error_tail (int status, int errnum, const char *message, va_list args)
{
#if _LIBC
if (_IO_fwide (stderr, 0) > 0)
{
-# define ALLOCA_LIMIT 2000
size_t len = strlen (message) + 1;
wchar_t *wmessage = NULL;
mbstate_t st;
if (res != len)
break;
- if (__builtin_expect (len >= SIZE_MAX / 2, 0))
+ if (__builtin_expect (len >= SIZE_MAX / sizeof (wchar_t) / 2, 0))
{
/* This really should not happen if everything is fine. */
res = (size_t) -1;
if (old_line_number == line_number
&& (file_name == old_file_name
- || strcmp (old_file_name, file_name) == 0))
+ || (old_file_name != NULL
+ && file_name != NULL
+ && strcmp (old_file_name, file_name) == 0)))
+
/* Simply return and print nothing. */
return;
}
#if _LIBC
- __fxprintf (NULL, file_name != NULL ? "%s:%d: " : " ",
+ __fxprintf (NULL, file_name != NULL ? "%s:%u: " : " ",
file_name, line_number);
#else
- fprintf (stderr, file_name != NULL ? "%s:%d: " : " ",
+ fprintf (stderr, file_name != NULL ? "%s:%u: " : " ",
file_name, line_number);
#endif
/* Declaration for error-reporting function
- Copyright (C) 1995-1997, 2003, 2006, 2008-2013 Free Software Foundation,
+ Copyright (C) 1995-1997, 2003, 2006, 2008-2016 Free Software Foundation,
Inc.
This file is part of the GNU C Library.
# 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
+
#ifdef __cplusplus
extern "C" {
#endif
If STATUS is nonzero, terminate the program with 'exit (STATUS)'. */
extern void error (int __status, int __errnum, const char *__format, ...)
- _GL_ATTRIBUTE_FORMAT ((__printf__, 3, 4));
+ _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF, 3, 4));
extern void error_at_line (int __status, int __errnum, const char *__fname,
unsigned int __lineno, const char *__format, ...)
- _GL_ATTRIBUTE_FORMAT ((__printf__, 5, 6));
+ _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF, 5, 6));
/* If NULL, error will flush stdout, then print on stderr the program
name, a colon and a space. Otherwise, error will call this
/* exclude.c -- exclude file names
- Copyright (C) 1992-1994, 1997, 1999-2007, 2009-2013 Free Software
+ Copyright (C) 1992-1994, 1997, 1999-2007, 2009-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
#include <stdlib.h>
#include <string.h>
#include <wctype.h>
+#include <regex.h>
#include "exclude.h"
#include "hash.h"
#include "fnmatch.h"
#include "xalloc.h"
#include "verify.h"
+#include "filename.h"
#if USE_UNLOCKED_IO
# include "unlocked-io.h"
struct patopts
{
- char const *pattern;
int options;
+ union
+ {
+ char const *pattern;
+ regex_t re;
+ } v;
};
/* An array of pattern-options pairs. */
} v;
};
+struct pattern_buffer
+ {
+ struct pattern_buffer *next;
+ char *base;
+ };
+
/* The exclude structure keeps a singly-linked list of exclude segments,
maintained in reverse order. */
struct exclude
{
struct exclude_segment *head;
+ struct pattern_buffer *patbuf;
};
+/* Register BUF in the pattern buffer list of EX. ADD_FUNC (see
+ add_exclude_file and add_exclude_fp below) can use this function
+ if it modifies the pattern, to ensure the allocated memory will be
+ properly reclaimed upon calling free_exclude. */
+void
+exclude_add_pattern_buffer (struct exclude *ex, char *buf)
+{
+ struct pattern_buffer *pbuf = xmalloc (sizeof *pbuf);
+ pbuf->base = buf;
+ pbuf->next = ex->patbuf;
+ ex->patbuf = pbuf;
+}
+
/* Return true if STR has or may have wildcards, when matched with OPTIONS.
Return false if STR definitely does not have wildcards. */
bool
{
switch (*str++)
{
+ case '.':
+ case '{':
+ case '}':
+ case '(':
+ case ')':
+ if (options & EXCLUDE_REGEX)
+ return true;
+ break;
+
case '\\':
- str += ! (options & FNM_NOESCAPE) && *str;
+ if (options & EXCLUDE_REGEX)
+ continue;
+ else
+ str += ! (options & FNM_NOESCAPE) && *str;
break;
case '+': case '@': case '!':
static void
free_exclude_segment (struct exclude_segment *seg)
{
+ size_t i;
+
switch (seg->type)
{
case exclude_pattern:
+ for (i = 0; i < seg->v.pat.exclude_count; i++)
+ {
+ if (seg->v.pat.exclude[i].options & EXCLUDE_REGEX)
+ regfree (&seg->v.pat.exclude[i].v.re);
+ }
free (seg->v.pat.exclude);
break;
free_exclude (struct exclude *ex)
{
struct exclude_segment *seg;
+ struct pattern_buffer *pbuf;
+
for (seg = ex->head; seg; )
{
struct exclude_segment *next = seg->next;
free_exclude_segment (seg);
seg = next;
}
+
+ for (pbuf = ex->patbuf; pbuf; )
+ {
+ struct pattern_buffer *next = pbuf->next;
+ free (pbuf->base);
+ free (pbuf);
+ pbuf = next;
+ }
+
free (ex);
}
if (! (options & EXCLUDE_ANCHORED))
for (p = f; *p && ! matched; p++)
if (*p == '/' && p[1] != '/')
- matched = ((*matcher) (pattern, p + 1, options) == 0);
+ matched = ((*matcher) (pattern, p + 1, options) == 0);
return matched;
}
+static bool
+exclude_patopts (struct patopts const *opts, char const *f)
+{
+ int options = opts->options;
+
+ return (options & EXCLUDE_REGEX)
+ ? regexec (&opts->v.re, f, 0, NULL, 0) == 0
+ : exclude_fnmatch (opts->v.pattern, f, options);
+}
+
/* Return true if the exclude_pattern segment SEG matches F. */
static bool
for (i = 0; i < exclude_count; i++)
{
- char const *pattern = exclude[i].pattern;
- int options = exclude[i].options;
- if (exclude_fnmatch (pattern, f, options))
+ if (exclude_patopts (exclude + i, f))
return true;
}
return false;
add_exclude (struct exclude *ex, char const *pattern, int options)
{
struct exclude_segment *seg;
+ struct exclude_pattern *pat;
+ struct patopts *patopts;
- if ((options & EXCLUDE_WILDCARDS)
+ if ((options & (EXCLUDE_REGEX|EXCLUDE_WILDCARDS))
&& fnmatch_pattern_has_wildcards (pattern, options))
{
- struct exclude_pattern *pat;
- struct patopts *patopts;
-
if (! (ex->head && ex->head->type == exclude_pattern
- && ((ex->head->options & EXCLUDE_INCLUDE)
- == (options & EXCLUDE_INCLUDE))))
- new_exclude_segment (ex, exclude_pattern, options);
+ && ((ex->head->options & EXCLUDE_INCLUDE)
+ == (options & EXCLUDE_INCLUDE))))
+ new_exclude_segment (ex, exclude_pattern, options);
+
seg = ex->head;
pat = &seg->v.pat;
pat->exclude = x2nrealloc (pat->exclude, &pat->exclude_alloc,
sizeof *pat->exclude);
patopts = &pat->exclude[pat->exclude_count++];
- patopts->pattern = pattern;
+
patopts->options = options;
+ if (options & EXCLUDE_REGEX)
+ {
+ int rc;
+ int cflags = REG_NOSUB|REG_EXTENDED|
+ ((options & FNM_CASEFOLD) ? REG_ICASE : 0);
+
+ if (options & FNM_LEADING_DIR)
+ {
+ char *tmp;
+ size_t len = strlen (pattern);
+
+ while (len > 0 && ISSLASH (pattern[len-1]))
+ --len;
+
+ if (len == 0)
+ rc = 1;
+ else
+ {
+ tmp = xmalloc (len + 7);
+ memcpy (tmp, pattern, len);
+ strcpy (tmp + len, "(/.*)?");
+ rc = regcomp (&patopts->v.re, tmp, cflags);
+ free (tmp);
+ }
+ }
+ else
+ rc = regcomp (&patopts->v.re, pattern, cflags);
+
+ if (rc)
+ {
+ pat->exclude_count--;
+ return;
+ }
+ }
+ else
+ {
+ if (options & EXCLUDE_ALLOC)
+ {
+ pattern = xstrdup (pattern);
+ exclude_add_pattern_buffer (ex, (char*) pattern);
+ }
+ patopts->v.pattern = pattern;
+ }
}
else
{
/* Use ADD_FUNC to append to EX the patterns in FILE_NAME, each with
OPTIONS. LINE_END terminates each pattern in the file. If
LINE_END is a space character, ignore trailing spaces and empty
- lines in FILE. Return -1 on failure, 0 on success. */
+ lines in FP. Return -1 on failure, 0 on success. */
int
-add_exclude_file (void (*add_func) (struct exclude *, char const *, int),
- struct exclude *ex, char const *file_name, int options,
- char line_end)
+add_exclude_fp (void (*add_func) (struct exclude *, char const *, int, void *),
+ struct exclude *ex, FILE *fp, int options,
+ char line_end,
+ void *data)
{
- bool use_stdin = file_name[0] == '-' && !file_name[1];
- FILE *in;
char *buf = NULL;
char *p;
- char const *pattern;
+ char *pattern;
char const *lim;
size_t buf_alloc = 0;
size_t buf_count = 0;
int c;
int e = 0;
- if (use_stdin)
- in = stdin;
- else if (! (in = fopen (file_name, "r")))
- return -1;
-
- while ((c = getc (in)) != EOF)
+ while ((c = getc (fp)) != EOF)
{
if (buf_count == buf_alloc)
buf = x2realloc (buf, &buf_alloc);
buf[buf_count++] = c;
}
- if (ferror (in))
- e = errno;
-
- if (!use_stdin && fclose (in) != 0)
+ if (ferror (fp))
e = errno;
buf = xrealloc (buf, buf_count + 1);
buf[buf_count] = line_end;
lim = buf + buf_count + ! (buf_count == 0 || buf[buf_count - 1] == line_end);
+
+ exclude_add_pattern_buffer (ex, buf);
+
pattern = buf;
for (p = buf; p < lim; p++)
}
*pattern_end = '\0';
- (*add_func) (ex, pattern, options);
+ (*add_func) (ex, pattern, options, data);
next_pattern:
pattern = p + 1;
errno = e;
return e ? -1 : 0;
}
+
+static void
+call_addfn (struct exclude *ex, char const *pattern, int options, void *data)
+{
+ void (**addfnptr) (struct exclude *, char const *, int) = data;
+ (*addfnptr) (ex, pattern, options);
+}
+
+int
+add_exclude_file (void (*add_func) (struct exclude *, char const *, int),
+ struct exclude *ex, char const *file_name, int options,
+ char line_end)
+{
+ bool use_stdin = file_name[0] == '-' && !file_name[1];
+ FILE *in;
+ int rc = 0;
+
+ if (use_stdin)
+ in = stdin;
+ else if (! (in = fopen (file_name, "r")))
+ return -1;
+
+ rc = add_exclude_fp (call_addfn, ex, in, options, line_end, &add_func);
+
+ if (!use_stdin && fclose (in) != 0)
+ rc = -1;
+
+ return rc;
+}
/* exclude.h -- declarations for excluding file names
- Copyright (C) 1992-1994, 1997, 1999, 2001-2003, 2005-2006, 2009-2013 Free
+ Copyright (C) 1992-1994, 1997, 1999, 2001-2003, 2005-2006, 2009-2016 Free
Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
#define _GL_EXCLUDE_H 1
#include <stdbool.h>
+#include <stdio.h>
/* Written by Paul Eggert <eggert@twinsun.com>
and Sergey Poznyakoff <gray@gnu.org> */
option, these characters are ordinary and fnmatch is not used. */
#define EXCLUDE_WILDCARDS (1 << 28)
+/* Patterns are POSIX extended regular expressions */
+#define EXCLUDE_REGEX (1 << 27)
+
+/* Allocate storage for the pattern */
+#define EXCLUDE_ALLOC (1 << 26)
+
struct exclude;
bool fnmatch_pattern_has_wildcards (const char *, int) _GL_ATTRIBUTE_PURE;
void add_exclude (struct exclude *, char const *, int);
int add_exclude_file (void (*) (struct exclude *, char const *, int),
struct exclude *, char const *, int, char);
+int add_exclude_fp (void (*) (struct exclude *, char const *, int, void *),
+ struct exclude *, FILE *, int, char, void *);
bool excluded_file_name (struct exclude const *, char const *);
-bool exclude_fnmatch (char const *pattern, char const *f, int options);
+void exclude_add_pattern_buffer (struct exclude *ex, char *buf);
+bool exclude_fnmatch (char const *, char const *, int);
#endif /* _GL_EXCLUDE_H */
/* Failure exit status
- Copyright (C) 2002-2003, 2005-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002-2003, 2005-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Failure exit status
- Copyright (C) 2002, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Provide file descriptor control.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
inherit, /* InheritHandle */
DUPLICATE_SAME_ACCESS)) /* Options */
{
- /* TODO: Translate GetLastError () into errno. */
- errno = EMFILE;
+ 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;
}
if (duplicated_fd < 0)
{
CloseHandle (new_handle);
- errno = EMFILE;
result = -1;
break;
}
}
#endif /* W32 */
+#ifdef __KLIBC__
+
+# define INCL_DOS
+# include <os2.h>
+
+static int
+klibc_fcntl (int fd, int action, /* arg */...)
+{
+ va_list arg_ptr;
+ int arg;
+ struct stat sbuf;
+ int result = -1;
+
+ 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;
+}
+
+# define fcntl klibc_fcntl
+#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
/* Like <fcntl.h>, but with non-working flags defined to 0.
- Copyright (C) 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 2006-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
extern "C" { ... } block, which leads to errors in C++ mode with the
overridden <sys/stat.h> from gnulib. These errors are known to be gone
with g++ version >= 4.3. */
-#if !(defined __GLIBC__ || defined __UCLIBC__) || (defined __cplusplus && defined GNULIB_NAMESPACE && !(__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)))
+#if !(defined __GLIBC__ || defined __UCLIBC__) || (defined __cplusplus && defined GNULIB_NAMESPACE && (defined __ICC || !(__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3))))
# include <sys/stat.h>
#endif
#@INCLUDE_NEXT@ @NEXT_FCNTL_H@
extern "C" { ... } block, which leads to errors in C++ mode with the
overridden <sys/stat.h> from gnulib. These errors are known to be gone
with g++ version >= 4.3. */
-#if !(defined __GLIBC__ || defined __UCLIBC__) || (defined __cplusplus && defined GNULIB_NAMESPACE && !(__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)))
+#if !(defined __GLIBC__ || defined __UCLIBC__) || (defined __cplusplus && defined GNULIB_NAMESPACE && (defined __ICC || !(__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3))))
# include <sys/stat.h>
#endif
/* The include_next requires a split double-inclusion guard. */
/* Fix up the O_* macros. */
+/* AIX 7.1 with XL C 12.1 defines O_CLOEXEC, O_NOFOLLOW, and O_TTY_INIT
+ to values outside 'int' range, so omit these misdefinitions.
+ But avoid namespace pollution on non-AIX systems. */
+#ifdef _AIX
+# include <limits.h>
+# if defined O_CLOEXEC && ! (INT_MIN <= O_CLOEXEC && O_CLOEXEC <= INT_MAX)
+# undef O_CLOEXEC
+# endif
+# if defined O_NOFOLLOW && ! (INT_MIN <= O_NOFOLLOW && O_NOFOLLOW <= INT_MAX)
+# undef O_NOFOLLOW
+# endif
+# if defined O_TTY_INIT && ! (INT_MIN <= O_TTY_INIT && O_TTY_INIT <= INT_MAX)
+# undef O_TTY_INIT
+# endif
+#endif
+
#if !defined O_DIRECT && defined O_DIRECTIO
/* Tru64 spells it 'O_DIRECTIO'. */
# define O_DIRECT O_DIRECTIO
/* Hook for making making file descriptor functions close(), ioctl() extensible.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 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
/* Hook for making making file descriptor functions close(), ioctl() extensible.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
/* Return a string describing the type of a file.
- Copyright (C) 1993-1994, 2001-2002, 2004-2006, 2009-2013 Free Software
+ Copyright (C) 1993-1994, 2001-2002, 2004-2006, 2009-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
To keep diagnostics grammatical in English, the returned string
must start with a consonant. */
+ /* Do these three first, as they're the most common. */
+
if (S_ISREG (st->st_mode))
return st->st_size == 0 ? _("regular empty file") : _("regular file");
if (S_ISDIR (st->st_mode))
return _("directory");
- if (S_ISBLK (st->st_mode))
- return _("block special file");
-
- if (S_ISCHR (st->st_mode))
- return _("character special file");
-
- if (S_ISFIFO (st->st_mode))
- return _("fifo");
-
if (S_ISLNK (st->st_mode))
return _("symbolic link");
- if (S_ISSOCK (st->st_mode))
- return _("socket");
+ /* Do the S_TYPEIS* macros next, as they may be implemented in terms
+ of S_ISNAM, and we want the more-specialized interpretation. */
if (S_TYPEISMQ (st))
return _("message queue");
if (S_TYPEISTMO (st))
return _("typed memory object");
+ /* The remaining are in alphabetical order. */
+
+ if (S_ISBLK (st->st_mode))
+ return _("block special file");
+
+ if (S_ISCHR (st->st_mode))
+ return _("character special file");
+
+ if (S_ISCTG (st->st_mode))
+ return _("contiguous data");
+
+ if (S_ISFIFO (st->st_mode))
+ return _("fifo");
+
+ if (S_ISDOOR (st->st_mode))
+ return _("door");
+
+ if (S_ISMPB (st->st_mode))
+ return _("multiplexed block special file");
+
+ if (S_ISMPC (st->st_mode))
+ return _("multiplexed character special file");
+
+ if (S_ISMPX (st->st_mode))
+ return _("multiplexed file");
+
+ if (S_ISNAM (st->st_mode))
+ return _("named file");
+
+ if (S_ISNWK (st->st_mode))
+ return _("network special file");
+
+ if (S_ISOFD (st->st_mode))
+ return _("migrated file with data");
+
+ if (S_ISOFL (st->st_mode))
+ return _("migrated file without data");
+
+ if (S_ISPORT (st->st_mode))
+ return _("port");
+
+ if (S_ISSOCK (st->st_mode))
+ return _("socket");
+
+ if (S_ISWHT (st->st_mode))
+ return _("whiteout");
+
return _("weird file");
}
/* Return a string describing the type of a file.
- Copyright (C) 1993-1994, 2001-2002, 2004-2005, 2009-2013 Free Software
+ Copyright (C) 1993-1994, 2001-2002, 2004-2005, 2009-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
--- /dev/null
+/* Basic filename support macros.
+ Copyright (C) 2001-2004, 2007-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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 _FILENAME_H
+#define _FILENAME_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.
+ */
+#if defined _WIN32 || defined __WIN32__ || defined __CYGWIN__ || defined __EMX__ || 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)
+#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
+#endif
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _FILENAME_H */
/* Concatenate two arbitrary file names.
- Copyright (C) 1996-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1996-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Concatenate two arbitrary file names.
- Copyright (C) 1996-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1996-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Concatenate two arbitrary file names.
- Copyright (C) 1996-1997, 2003, 2005, 2007, 2009-2013 Free Software
+ Copyright (C) 1996-1997, 2003, 2005, 2007, 2009-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
/* Supplemental information about the floating-point formats.
- Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2007.
This program is free software; you can redistribute it and/or modify
/* Auxiliary definitions for <float.h>.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2011.
This program is free software: you can redistribute it and/or modify
/* A correct <float.h>.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-/* Copyright (C) 1991-1993, 1996-2007, 2009-2013 Free Software Foundation, Inc.
+/* Copyright (C) 1991-1993, 1996-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-/* Copyright (C) 1991-1993, 1996-1999, 2001-2003, 2005, 2007, 2009-2013 Free
+/* Copyright (C) 1991-1993, 1996-1999, 2001-2003, 2005, 2007, 2009-2016 Free
Software Foundation, Inc.
This file is part of the GNU C Library.
-/* Copyright (C) 1991-1993, 1996-2006, 2009-2013 Free Software Foundation, Inc.
+/* Copyright (C) 1991-1993, 1996-2006, 2009-2016 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
c = *p++;
for (;;)
{
+ bool is_range = false;
+
if (!(flags & FNM_NOESCAPE) && c == L_('\\'))
{
if (*p == L_('\0'))
}
else
{
- bool is_range = false;
-
#ifdef _LIBC
bool is_seqval = false;
/* Invoke freopen, but avoid some glitches.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Open a stream to a file.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This 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 <stdio.h>
#undef __need_FILE
+#include <errno.h>
+
static FILE *
orig_freopen (const char *filename, const char *mode, FILE *stream)
{
FILE *
rpl_freopen (const char *filename, const char *mode, FILE *stream)
{
+ FILE *result;
+
#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
if (filename != NULL && strcmp (filename, "/dev/null") == 0)
filename = "NUL";
#endif
- return orig_freopen (filename, mode, stream);
+ /* Clear errno to check the success of freopen() with it */
+ errno = 0;
+
+ result = orig_freopen (filename, mode, stream);
+
+#ifdef __KLIBC__
+ /* On OS/2 kLIBC, freopen() returns NULL even if it is successful
+ if filename is NULL. */
+ if (!filename && !result && !errno)
+ result = stream;
+#endif
+
+ return result;
}
/* fstat() replacement.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* getdtablesize() function for platforms that don't have it.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2008.
This program is free software: you can redistribute it and/or modify
#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
-#include <stdio.h>
+# include <stdio.h>
-#include "msvc-inval.h"
+# include "msvc-inval.h"
-#if HAVE_MSVC_INVALID_PARAMETER_HANDLER
+# if HAVE_MSVC_INVALID_PARAMETER_HANDLER
static int
_setmaxstdio_nothrow (int newmax)
{
return result;
}
-# define _setmaxstdio _setmaxstdio_nothrow
-#endif
+# define _setmaxstdio _setmaxstdio_nothrow
+# endif
-/* Cache for the previous getdtablesize () result. */
+/* Cache for the previous getdtablesize () result. Safe to cache because
+ Windows also lacks setrlimit. */
static int dtablesize;
int
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
NOTE: getopt is part of the C library, so if you don't know what
"Keep this file name-space clean" means, talk to drepper@gnu.org
before changing it!
- Copyright (C) 1987-1996, 1998-2004, 2006, 2008-2013 Free Software
+ Copyright (C) 1987-1996, 1998-2004, 2006, 2008-2016 Free Software
Foundation, Inc.
This file is part of the GNU C Library.
const struct option *p;
struct option_list *next;
} *ambig_list = NULL;
+#ifdef _LIBC
+/* malloc() not used for _LIBC to simplify failure messages. */
+# define free_option_list(l)
+#else
+# define free_option_list(l) \
+ while (l != NULL) \
+ { \
+ struct option_list *pn = l->next; \
+ free (l); \
+ l = pn; \
+ }
+#endif
int exact = 0;
+ int ambig = 0;
int indfound = -1;
int option_index;
pfound = p;
indfound = option_index;
}
+ else if (ambig)
+ ; /* Taking simpler path to handling ambiguities. */
else if (long_only
|| pfound->has_arg != p->has_arg
|| pfound->flag != p->flag
|| pfound->val != p->val)
{
/* Second or later nonexact match found. */
+#ifdef _LIBC
+ struct option_list *newp = alloca (sizeof (*newp));
+#else
struct option_list *newp = malloc (sizeof (*newp));
- newp->p = p;
- newp->next = ambig_list;
- ambig_list = newp;
+ if (newp == NULL)
+ {
+ free_option_list (ambig_list);
+ ambig_list = NULL;
+ ambig = 1; /* Use simpler fallback message. */
+ }
+ else
+#endif
+ {
+ newp->p = p;
+ newp->next = ambig_list;
+ ambig_list = newp;
+ }
}
}
- if (ambig_list != NULL && !exact)
+ if ((ambig || ambig_list) && !exact)
{
- if (print_errors)
+ if (print_errors && ambig_list)
{
struct option_list first;
first.p = pfound;
fputc ('\n', stderr);
#endif
}
+ else if (print_errors && ambig)
+ {
+ fprintf (stderr,
+ _("%s: option '%s' is ambiguous\n"),
+ argv[0], argv[d->optind]);
+ }
d->__nextchar += strlen (d->__nextchar);
d->optind++;
d->optopt = 0;
+ free_option_list (ambig_list);
return '?';
}
- while (ambig_list != NULL)
- {
- struct option_list *pn = ambig_list->next;
- free (ambig_list);
- ambig_list = pn;
- }
+ free_option_list (ambig_list);
if (pfound != NULL)
{
/* Declarations for getopt.
- Copyright (C) 1989-1994, 1996-1999, 2001, 2003-2007, 2009-2013 Free Software
+ Copyright (C) 1989-1994, 1996-1999, 2001, 2003-2007, 2009-2016 Free Software
Foundation, Inc.
This file is part of the GNU C Library.
/* getopt_long and getopt_long_only entry points for GNU getopt.
- Copyright (C) 1987-1994, 1996-1998, 2004, 2006, 2009-2013 Free Software
+ Copyright (C) 1987-1994, 1996-1998, 2004, 2006, 2009-2016 Free Software
Foundation, Inc.
This file is part of the GNU C Library.
/* Internal declarations for getopt.
- Copyright (C) 1989-1994, 1996-1999, 2001, 2003-2004, 2009-2013 Free Software
+ Copyright (C) 1989-1994, 1996-1999, 2001, 2003-2004, 2009-2016 Free Software
Foundation, Inc.
This file is part of the GNU C Library.
/* Convenience header for conditional use of GNU <libintl.h>.
- Copyright (C) 1995-1998, 2000-2002, 2004-2006, 2009-2013 Free Software
+ Copyright (C) 1995-1998, 2000-2002, 2004-2006, 2009-2016 Free Software
Foundation, Inc.
This program is free software; you can redistribute it and/or modify
if (msg_ctxt_id != NULL)
#endif
{
+ int found_translation;
memcpy (msg_ctxt_id, msgctxt, msgctxt_len - 1);
msg_ctxt_id[msgctxt_len - 1] = '\004';
memcpy (msg_ctxt_id + msgctxt_len, msgid, msgid_len);
translation = dcgettext (domain, msg_ctxt_id, category);
+ found_translation = (translation != msg_ctxt_id);
#if !_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS
if (msg_ctxt_id != buf)
free (msg_ctxt_id);
#endif
- if (translation != msg_ctxt_id)
+ if (found_translation)
return translation;
}
return msgid;
if (msg_ctxt_id != NULL)
#endif
{
+ int found_translation;
memcpy (msg_ctxt_id, msgctxt, msgctxt_len - 1);
msg_ctxt_id[msgctxt_len - 1] = '\004';
memcpy (msg_ctxt_id + msgctxt_len, msgid, msgid_len);
translation = dcngettext (domain, msg_ctxt_id, msgid_plural, n, category);
+ found_translation = !(translation == msg_ctxt_id || translation == msgid_plural);
#if !_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS
if (msg_ctxt_id != buf)
free (msg_ctxt_id);
#endif
- if (!(translation == msg_ctxt_id || translation == msgid_plural))
+ if (found_translation)
return translation;
}
return (n == 1 ? msgid : msgid_plural);
/* gettime -- get the system clock
- Copyright (C) 2002, 2004-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2004-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Provide gettimeofday for systems that don't have it or for which it's broken.
- Copyright (C) 2001-2003, 2005-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2003, 2005-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
## DO NOT EDIT! GENERATED AUTOMATICALLY!
## Process this file with automake to produce Makefile.in.
-# Copyright (C) 2002-2013 Free Software Foundation, Inc.
+# Copyright (C) 2002-2016 Free Software Foundation, Inc.
#
# This file is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the same distribution terms as the rest of that program.
#
# Generated by gnulib-tool.
-# Reproduce by: gnulib-tool --import --dir=. --local-dir=gl --lib=libdiffutils --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=gnulib-tests --aux-dir=build-aux --with-tests --avoid=localename --avoid=lock --makefile-name=gnulib.mk --no-conditional-dependencies --no-libtool --macro-prefix=gl announce-gen binary-io c-stack config-h diffseq dirname do-release-commit-and-tag dup2 error exclude exitfail extensions fcntl fdl file-type filenamecat fnmatch-gnu getopt gettext-h gettime git-version-gen gitlog-to-changelog gnu-make gnu-web-doc-update gnumakefile gnupload hard-locale inttostr inttypes largefile lstat maintainer-makefile manywarnings mbrtowc mkstemp mktime progname propername readme-release regex sh-quote signal stat stat-macros stat-time stdint strcase strftime strptime strtoumax sys_wait system-quote unistd unlocked-io update-copyright vararrays verify version-etc version-etc-fsf wcwidth xalloc xfreopen xreadlink xstrtoumax xvasprintf
+# Reproduce by: gnulib-tool --import --local-dir=gl --lib=libdiffutils --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=gnulib-tests --aux-dir=build-aux --with-tests --avoid=localename --avoid=lock --makefile-name=gnulib.mk --no-conditional-dependencies --no-libtool --macro-prefix=gl announce-gen argmatch binary-io c-stack config-h diffseq dirname do-release-commit-and-tag dup2 error exclude exitfail extensions fcntl fdl file-type filenamecat fnmatch-gnu getopt gettext-h gettime git-version-gen gitlog-to-changelog gnu-make gnu-web-doc-update gnumakefile gnupload hard-locale inttostr inttypes isblank largefile lstat maintainer-makefile manywarnings mbrtowc mkstemp mktime progname propername rawmemchr readme-release regex sh-quote signal stat stat-macros stat-time stdint strcase strftime strptime strtoumax sys_wait system-quote unistd unlocked-io update-copyright vararrays verify version-etc version-etc-fsf wcwidth xalloc xfreopen xreadlink xstrtoumax xvasprintf
MOSTLYCLEANFILES += core *.stackdump
libdiffutils_a_DEPENDENCIES = $(gl_LIBOBJS)
EXTRA_libdiffutils_a_SOURCES =
+## 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)
+
+## end gnulib module absolute-header
+
## begin gnulib module alloca
## end gnulib module areadlink
+## begin gnulib module argmatch
+
+libdiffutils_a_SOURCES += argmatch.c
+
+EXTRA_DIST += argmatch.h
+
+## end gnulib module argmatch
+
+## begin gnulib module assure
+
+
+EXTRA_DIST += assure.h
+
+## end gnulib module assure
+
## begin gnulib module binary-io
libdiffutils_a_SOURCES += binary-io.h binary-io.c
## begin gnulib module configmake
# Listed in the same order as the GNU makefile conventions, and
-# provided by autoconf 2.59c+.
+# provided by autoconf 2.59c+ or 2.70.
# The Automake-defined pkg* macros are appended, in the order
# listed in the Automake 1.10a+ documentation.
configmake.h: Makefile
echo '#define SYSCONFDIR "$(sysconfdir)"'; \
echo '#define SHAREDSTATEDIR "$(sharedstatedir)"'; \
echo '#define LOCALSTATEDIR "$(localstatedir)"'; \
+ echo '#define RUNSTATEDIR "$(runstatedir)"'; \
echo '#define INCLUDEDIR "$(includedir)"'; \
echo '#define OLDINCLUDEDIR "$(oldincludedir)"'; \
echo '#define DOCDIR "$(docdir)"'; \
## end gnulib module configmake
+## begin gnulib module ctype
+
+BUILT_SOURCES += ctype.h
+
+# We need the following in order to create <ctype.h> when the system
+# doesn't have one that works with the given compiler.
+ctype.h: ctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H)
+ $(AM_V_GEN)rm -f $@-t $@ && \
+ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
+ sed -e 's|@''GUARD_PREFIX''@|GL|g' \
+ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
+ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ -e 's|@''NEXT_CTYPE_H''@|$(NEXT_CTYPE_H)|g' \
+ -e 's/@''GNULIB_ISBLANK''@/$(GNULIB_ISBLANK)/g' \
+ -e 's/@''HAVE_ISBLANK''@/$(HAVE_ISBLANK)/g' \
+ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
+ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
+ < $(srcdir)/ctype.in.h; \
+ } > $@-t && \
+ mv $@-t $@
+MOSTLYCLEANFILES += ctype.h ctype.h-t
+
+EXTRA_DIST += ctype.in.h
+
+## end gnulib module ctype
+
## begin gnulib module diffseq
libdiffutils_a_SOURCES += diffseq.h
## end gnulib module file-type
+## begin gnulib module filename
+
+
+EXTRA_DIST += filename.h
+
+## end gnulib module filename
+
## begin gnulib module filenamecat
libdiffutils_a_SOURCES += filenamecat.c
## begin gnulib module gperf
GPERF = gperf
+V_GPERF = $(V_GPERF_@AM_V@)
+V_GPERF_ = $(V_GPERF_@AM_DEFAULT_V@)
+V_GPERF_0 = @echo " GPERF " $@;
## end gnulib module gperf
## begin gnulib module iconv_open
iconv_open-aix.h: iconv_open-aix.gperf
- $(GPERF) -m 10 $(srcdir)/iconv_open-aix.gperf > $(srcdir)/iconv_open-aix.h-t
+ $(V_GPERF)$(GPERF) -m 10 $(srcdir)/iconv_open-aix.gperf > $(srcdir)/iconv_open-aix.h-t && \
mv $(srcdir)/iconv_open-aix.h-t $(srcdir)/iconv_open-aix.h
iconv_open-hpux.h: iconv_open-hpux.gperf
- $(GPERF) -m 10 $(srcdir)/iconv_open-hpux.gperf > $(srcdir)/iconv_open-hpux.h-t
+ $(V_GPERF)$(GPERF) -m 10 $(srcdir)/iconv_open-hpux.gperf > $(srcdir)/iconv_open-hpux.h-t && \
mv $(srcdir)/iconv_open-hpux.h-t $(srcdir)/iconv_open-hpux.h
iconv_open-irix.h: iconv_open-irix.gperf
- $(GPERF) -m 10 $(srcdir)/iconv_open-irix.gperf > $(srcdir)/iconv_open-irix.h-t
+ $(V_GPERF)$(GPERF) -m 10 $(srcdir)/iconv_open-irix.gperf > $(srcdir)/iconv_open-irix.h-t && \
mv $(srcdir)/iconv_open-irix.h-t $(srcdir)/iconv_open-irix.h
iconv_open-osf.h: iconv_open-osf.gperf
- $(GPERF) -m 10 $(srcdir)/iconv_open-osf.gperf > $(srcdir)/iconv_open-osf.h-t
+ $(V_GPERF)$(GPERF) -m 10 $(srcdir)/iconv_open-osf.gperf > $(srcdir)/iconv_open-osf.h-t && \
mv $(srcdir)/iconv_open-osf.h-t $(srcdir)/iconv_open-osf.h
iconv_open-solaris.h: iconv_open-solaris.gperf
- $(GPERF) -m 10 $(srcdir)/iconv_open-solaris.gperf > $(srcdir)/iconv_open-solaris.h-t
+ $(V_GPERF)$(GPERF) -m 10 $(srcdir)/iconv_open-solaris.gperf > $(srcdir)/iconv_open-solaris.h-t && \
mv $(srcdir)/iconv_open-solaris.h-t $(srcdir)/iconv_open-solaris.h
BUILT_SOURCES += iconv_open-aix.h iconv_open-hpux.h iconv_open-irix.h iconv_open-osf.h iconv_open-solaris.h
MOSTLYCLEANFILES += iconv_open-aix.h-t iconv_open-hpux.h-t iconv_open-irix.h-t iconv_open-osf.h-t iconv_open-solaris.h-t
## begin gnulib module inttostr
-libdiffutils_a_SOURCES += \
- imaxtostr.c \
- inttostr.c \
- offtostr.c \
- uinttostr.c \
- umaxtostr.c
+libdiffutils_a_SOURCES += imaxtostr.c inttostr.c offtostr.c uinttostr.c umaxtostr.c
EXTRA_DIST += anytostr.c inttostr.h
-e 's/@''HAVE_DECL_STRTOIMAX''@/$(HAVE_DECL_STRTOIMAX)/g' \
-e 's/@''HAVE_DECL_STRTOUMAX''@/$(HAVE_DECL_STRTOUMAX)/g' \
-e 's/@''REPLACE_STRTOIMAX''@/$(REPLACE_STRTOIMAX)/g' \
+ -e 's/@''REPLACE_STRTOUMAX''@/$(REPLACE_STRTOUMAX)/g' \
-e 's/@''INT32_MAX_LT_INTMAX_MAX''@/$(INT32_MAX_LT_INTMAX_MAX)/g' \
-e 's/@''INT64_MAX_EQ_LONG_MAX''@/$(INT64_MAX_EQ_LONG_MAX)/g' \
-e 's/@''UINT32_MAX_LT_UINTMAX_MAX''@/$(UINT32_MAX_LT_UINTMAX_MAX)/g' \
## end gnulib module inttypes-incomplete
+## begin gnulib module isblank
+
+
+EXTRA_DIST += isblank.c
+
+EXTRA_libdiffutils_a_SOURCES += isblank.c
+
+## end gnulib module isblank
+
## begin gnulib module iswblank
## end gnulib module maintainer-makefile
-## begin gnulib module malloc-gnu
-
-
-EXTRA_DIST += malloc.c
-
-EXTRA_libdiffutils_a_SOURCES += malloc.c
-
-## end gnulib module malloc-gnu
-
## begin gnulib module malloc-posix
## end gnulib module mktime
+## begin gnulib module mktime-internal
+
+
+EXTRA_DIST += mktime-internal.h mktime.c
+
+EXTRA_libdiffutils_a_SOURCES += mktime.c
+
+## end gnulib module mktime-internal
+
## begin gnulib module msvc-inval
## end gnulib module raise
+## begin gnulib module rawmemchr
+
+
+EXTRA_DIST += rawmemchr.c rawmemchr.valgrind
+
+EXTRA_libdiffutils_a_SOURCES += rawmemchr.c
+
+## end gnulib module rawmemchr
+
## begin gnulib module readlink
## end gnulib module secure_getenv
+## begin gnulib module setenv
+
+
+EXTRA_DIST += setenv.c
+
+EXTRA_libdiffutils_a_SOURCES += setenv.c
+
+## end gnulib module setenv
+
## begin gnulib module sh-quote
libdiffutils_a_SOURCES += sh-quote.h sh-quote.c
-e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
-e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
-e 's|@''NEXT_STDDEF_H''@|$(NEXT_STDDEF_H)|g' \
+ -e 's|@''HAVE_MAX_ALIGN_T''@|$(HAVE_MAX_ALIGN_T)|g' \
-e 's|@''HAVE_WCHAR_T''@|$(HAVE_WCHAR_T)|g' \
-e 's|@''REPLACE_NULL''@|$(REPLACE_NULL)|g' \
< $(srcdir)/stddef.in.h; \
-e 's/@''GNULIB_PTSNAME''@/$(GNULIB_PTSNAME)/g' \
-e 's/@''GNULIB_PTSNAME_R''@/$(GNULIB_PTSNAME_R)/g' \
-e 's/@''GNULIB_PUTENV''@/$(GNULIB_PUTENV)/g' \
+ -e 's/@''GNULIB_QSORT_R''@/$(GNULIB_QSORT_R)/g' \
-e 's/@''GNULIB_RANDOM''@/$(GNULIB_RANDOM)/g' \
-e 's/@''GNULIB_RANDOM_R''@/$(GNULIB_RANDOM_R)/g' \
-e 's/@''GNULIB_REALLOC_POSIX''@/$(GNULIB_REALLOC_POSIX)/g' \
-e 's|@''REPLACE_PTSNAME''@|$(REPLACE_PTSNAME)|g' \
-e 's|@''REPLACE_PTSNAME_R''@|$(REPLACE_PTSNAME_R)|g' \
-e 's|@''REPLACE_PUTENV''@|$(REPLACE_PUTENV)|g' \
+ -e 's|@''REPLACE_QSORT_R''@|$(REPLACE_QSORT_R)|g' \
-e 's|@''REPLACE_RANDOM_R''@|$(REPLACE_RANDOM_R)|g' \
-e 's|@''REPLACE_REALLOC''@|$(REPLACE_REALLOC)|g' \
-e 's|@''REPLACE_REALPATH''@|$(REPLACE_REALPATH)|g' \
-e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
-e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
-e 's|@''NEXT_TIME_H''@|$(NEXT_TIME_H)|g' \
+ -e 's/@''GNULIB_GETTIMEOFDAY''@/$(GNULIB_GETTIMEOFDAY)/g' \
-e 's/@''GNULIB_MKTIME''@/$(GNULIB_MKTIME)/g' \
-e 's/@''GNULIB_NANOSLEEP''@/$(GNULIB_NANOSLEEP)/g' \
-e 's/@''GNULIB_STRPTIME''@/$(GNULIB_STRPTIME)/g' \
-e 's/@''GNULIB_TIMEGM''@/$(GNULIB_TIMEGM)/g' \
-e 's/@''GNULIB_TIME_R''@/$(GNULIB_TIME_R)/g' \
+ -e 's/@''GNULIB_TIME_RZ''@/$(GNULIB_TIME_RZ)/g' \
-e 's|@''HAVE_DECL_LOCALTIME_R''@|$(HAVE_DECL_LOCALTIME_R)|g' \
-e 's|@''HAVE_NANOSLEEP''@|$(HAVE_NANOSLEEP)|g' \
-e 's|@''HAVE_STRPTIME''@|$(HAVE_STRPTIME)|g' \
-e 's|@''HAVE_TIMEGM''@|$(HAVE_TIMEGM)|g' \
+ -e 's|@''HAVE_TIMEZONE_T''@|$(HAVE_TIMEZONE_T)|g' \
+ -e 's|@''REPLACE_GMTIME''@|$(REPLACE_GMTIME)|g' \
+ -e 's|@''REPLACE_LOCALTIME''@|$(REPLACE_LOCALTIME)|g' \
-e 's|@''REPLACE_LOCALTIME_R''@|$(REPLACE_LOCALTIME_R)|g' \
-e 's|@''REPLACE_MKTIME''@|$(REPLACE_MKTIME)|g' \
-e 's|@''REPLACE_NANOSLEEP''@|$(REPLACE_NANOSLEEP)|g' \
-e 's|@''PTHREAD_H_DEFINES_STRUCT_TIMESPEC''@|$(PTHREAD_H_DEFINES_STRUCT_TIMESPEC)|g' \
-e 's|@''SYS_TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(SYS_TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \
-e 's|@''TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \
+ -e 's|@''UNISTD_H_DEFINES_STRUCT_TIMESPEC''@|$(UNISTD_H_DEFINES_STRUCT_TIMESPEC)|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)' \
## end gnulib module time_r
+## begin gnulib module time_rz
+
+
+EXTRA_DIST += time-internal.h time_rz.c
+
+EXTRA_libdiffutils_a_SOURCES += time_rz.c
+
+## end gnulib module time_rz
+
+## begin gnulib module timegm
+
+
+EXTRA_DIST += mktime-internal.h timegm.c
+
+EXTRA_libdiffutils_a_SOURCES += timegm.c
+
+## end gnulib module timegm
+
## begin gnulib module timespec
libdiffutils_a_SOURCES += timespec.c
-e 's|@''REPLACE_FTRUNCATE''@|$(REPLACE_FTRUNCATE)|g' \
-e 's|@''REPLACE_GETCWD''@|$(REPLACE_GETCWD)|g' \
-e 's|@''REPLACE_GETDOMAINNAME''@|$(REPLACE_GETDOMAINNAME)|g' \
+ -e 's|@''REPLACE_GETDTABLESIZE''@|$(REPLACE_GETDTABLESIZE)|g' \
-e 's|@''REPLACE_GETLOGIN_R''@|$(REPLACE_GETLOGIN_R)|g' \
-e 's|@''REPLACE_GETGROUPS''@|$(REPLACE_GETGROUPS)|g' \
-e 's|@''REPLACE_GETPAGESIZE''@|$(REPLACE_GETPAGESIZE)|g' \
-e 's|@''REPLACE_PWRITE''@|$(REPLACE_PWRITE)|g' \
-e 's|@''REPLACE_READ''@|$(REPLACE_READ)|g' \
-e 's|@''REPLACE_READLINK''@|$(REPLACE_READLINK)|g' \
+ -e 's|@''REPLACE_READLINKAT''@|$(REPLACE_READLINKAT)|g' \
-e 's|@''REPLACE_RMDIR''@|$(REPLACE_RMDIR)|g' \
-e 's|@''REPLACE_SLEEP''@|$(REPLACE_SLEEP)|g' \
-e 's|@''REPLACE_SYMLINK''@|$(REPLACE_SYMLINK)|g' \
+ -e 's|@''REPLACE_SYMLINKAT''@|$(REPLACE_SYMLINKAT)|g' \
-e 's|@''REPLACE_TTYNAME_R''@|$(REPLACE_TTYNAME_R)|g' \
-e 's|@''REPLACE_UNLINK''@|$(REPLACE_UNLINK)|g' \
-e 's|@''REPLACE_UNLINKAT''@|$(REPLACE_UNLINKAT)|g' \
## end gnulib module unlocked-io
+## begin gnulib module unsetenv
+
+
+EXTRA_DIST += unsetenv.c
+
+EXTRA_libdiffutils_a_SOURCES += unsetenv.c
+
+## end gnulib module unsetenv
+
## begin gnulib module update-copyright
/* hard-locale.c -- Determine whether a locale is hard.
- Copyright (C) 1997-1999, 2002-2004, 2006-2007, 2009-2013 Free Software
+ Copyright (C) 1997-1999, 2002-2004, 2006-2007, 2009-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
/* Determine whether a locale is hard.
- Copyright (C) 1999, 2003-2004, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2003-2004, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* hash - hashing table processing.
- Copyright (C) 1998-2004, 2006-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1998-2004, 2006-2007, 2009-2016 Free Software Foundation, Inc.
Written by Jim Meyering, 1992.
return 1;
}
-/* hash_insert0 is the deprecated name for hash_insert_if_absent.
- . */
-int
-hash_insert0 (Hash_table *table, void const *entry, void const **matched_ent)
-{
- return hash_insert_if_absent (table, entry, matched_ent);
-}
-
/* If ENTRY matches an entry already in the hash table, return the pointer
to the entry from the table. Otherwise, insert ENTRY and return ENTRY.
Return NULL if the storage required for insertion cannot be allocated.
/* hash - hashing table processing.
- Copyright (C) 1998-1999, 2001, 2003, 2009-2013 Free Software Foundation,
+ Copyright (C) 1998-1999, 2001, 2003, 2009-2016 Free Software Foundation,
Inc.
Written by Jim Meyering <meyering@ascend.com>, 1998.
bool hash_rehash (Hash_table *, size_t) _GL_ATTRIBUTE_WUR;
void *hash_insert (Hash_table *, const void *) _GL_ATTRIBUTE_WUR;
-/* Deprecate this interface. It has been renamed to hash_insert_if_absent. */
-int hash_insert0 (Hash_table *table, /* FIXME: remove in 2013 */
- const void *entry,
- const void **matched_ent) _GL_ATTRIBUTE_DEPRECATED;
int hash_insert_if_absent (Hash_table *table, const void *entry,
const void **matched_ent);
void *hash_delete (Hash_table *, const void *);
/* Character set conversion.
- Copyright (C) 1999-2001, 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1999-2001, 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* A GNU-like <iconv.h>.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Character set conversion.
- Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Character set conversion.
- Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-/* ignore a function return without a compiler warning
+/* ignore a function return without a compiler warning. -*- coding: utf-8 -*-
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
declared with attribute warn_unused_result". */
#ifndef _GL_IGNORE_VALUE_H
-# define _GL_IGNORE_VALUE_H
-
-/* The __attribute__((__warn_unused_result__)) feature
- is available in gcc versions 3.4 and newer,
- while the typeof feature has been available since 2.7 at least. */
-# if __GNUC__ < 3 || (__GNUC__ == 3 && __GNUC_MINOR__ < 4)
-# define ignore_value(x) ((void) (x))
-# else
-# define ignore_value(x) (({ __typeof__ (x) __x = (x); (void) __x; }))
-# endif
+#define _GL_IGNORE_VALUE_H
+
+/* Normally casting an expression to void discards its value, but GCC
+ versions 3.4 and newer have __attribute__ ((__warn_unused_result__))
+ which may cause unwanted diagnostics in that case. Use __typeof__
+ and __extension__ to work around the problem, if the workaround is
+ known to be needed. */
+#if 3 < __GNUC__ + (4 <= __GNUC_MINOR__)
+# define ignore_value(x) \
+ (__extension__ ({ __typeof__ (x) __x = (x); (void) __x; }))
+#else
+# define ignore_value(x) ((void) (x))
+#endif
#endif
/* intprops.h -- properties of integer types
- Copyright (C) 2001-2005, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2016 Free Software Foundation, Inc.
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
+ This program is free software: you can redistribute it and/or modify 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,
#define _GL_INTPROPS_H
#include <limits.h>
+#include <verify.h>
-/* Return an integer value, converted to the same type as the integer
- expression E after integer type promotion. V is the unconverted value. */
+/* Return a value with the common real type of E and V and the value of V. */
#define _GL_INT_CONVERT(e, v) (0 * (e) + (v))
/* Act like _GL_INT_CONVERT (E, -V) but work around a bug in IRIX 6.5 cc; see
an integer. */
#define TYPE_IS_INTEGER(t) ((t) 1.5 == 1)
-/* True if negative values of the signed integer type T use two's
- complement, ones' complement, or signed magnitude representation,
- respectively. Much GNU code assumes two's complement, but some
- people like to be portable to all possible C hosts. */
-#define TYPE_TWOS_COMPLEMENT(t) ((t) ~ (t) 0 == (t) -1)
-#define TYPE_ONES_COMPLEMENT(t) ((t) ~ (t) 0 == 0)
-#define TYPE_SIGNED_MAGNITUDE(t) ((t) ~ (t) 0 < (t) -1)
-
-/* True if the signed integer expression E uses two's complement. */
-#define _GL_INT_TWOS_COMPLEMENT(e) (~ _GL_INT_CONVERT (e, 0) == -1)
-
-/* True if the arithmetic type T is signed. */
+/* True if the real type T is signed. */
#define TYPE_SIGNED(t) (! ((t) 0 < (t) -1))
-/* Return 1 if the integer expression E, after integer promotion, has
- a signed type. */
-#define _GL_INT_SIGNED(e) (_GL_INT_NEGATE_CONVERT (e, 1) < 0)
+/* Return 1 if the real expression E, after promotion, has a
+ signed or floating type. */
+#define EXPR_SIGNED(e) (_GL_INT_NEGATE_CONVERT (e, 1) < 0)
-/* Minimum and maximum values for integer types and expressions. These
- macros have undefined behavior if T is signed and has padding bits.
- If this is a problem for you, please let us know how to fix it for
- your host. */
+/* Minimum and maximum values for integer types and expressions. */
/* The maximum and minimum values for the integer type T. */
-#define TYPE_MINIMUM(t) \
- ((t) (! TYPE_SIGNED (t) \
- ? (t) 0 \
- : TYPE_SIGNED_MAGNITUDE (t) \
- ? ~ (t) 0 \
- : ~ TYPE_MAXIMUM (t)))
+#define TYPE_MINIMUM(t) ((t) ~ TYPE_MAXIMUM (t))
#define TYPE_MAXIMUM(t) \
((t) (! TYPE_SIGNED (t) \
? (t) -1 \
/* The maximum and minimum values for the type of the expression E,
after integer promotion. E should not have side effects. */
#define _GL_INT_MINIMUM(e) \
- (_GL_INT_SIGNED (e) \
- ? - _GL_INT_TWOS_COMPLEMENT (e) - _GL_SIGNED_INT_MAXIMUM (e) \
+ (EXPR_SIGNED (e) \
+ ? ~ _GL_SIGNED_INT_MAXIMUM (e) \
: _GL_INT_CONVERT (e, 0))
#define _GL_INT_MAXIMUM(e) \
- (_GL_INT_SIGNED (e) \
+ (EXPR_SIGNED (e) \
? _GL_SIGNED_INT_MAXIMUM (e) \
: _GL_INT_NEGATE_CONVERT (e, 1))
#define _GL_SIGNED_INT_MAXIMUM(e) \
(((_GL_INT_CONVERT (e, 1) << (sizeof ((e) + 0) * CHAR_BIT - 2)) - 1) * 2 + 1)
+/* This include file assumes that signed types are two's complement without
+ padding bits; the above macros have undefined behavior otherwise.
+ If this is a problem for you, please let us know how to fix it for your host.
+ As a sanity check, test the assumption for some signed types that
+ <limits.h> bounds. */
+verify (TYPE_MINIMUM (signed char) == SCHAR_MIN);
+verify (TYPE_MAXIMUM (signed char) == SCHAR_MAX);
+verify (TYPE_MINIMUM (short int) == SHRT_MIN);
+verify (TYPE_MAXIMUM (short int) == SHRT_MAX);
+verify (TYPE_MINIMUM (int) == INT_MIN);
+verify (TYPE_MAXIMUM (int) == INT_MAX);
+verify (TYPE_MINIMUM (long int) == LONG_MIN);
+verify (TYPE_MAXIMUM (long int) == LONG_MAX);
+#ifdef LLONG_MAX
+verify (TYPE_MINIMUM (long long int) == LLONG_MIN);
+verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+#endif
-/* Return 1 if the __typeof__ keyword works. This could be done by
+/* 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__ || 0x5110 <= __SUNPRO_C
+#if (2 <= __GNUC__ || defined __IBM__TYPEOF__ \
+ || (0x5110 <= __SUNPRO_C && !__STDC__))
# define _GL_HAVE___TYPEOF__ 1
#else
# define _GL_HAVE___TYPEOF__ 0
? (a) < (min) >> (b) \
: (max) >> (b) < (a))
+/* True if __builtin_add_overflow (A, B, P) works when P is null. */
+#define _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL (7 <= __GNUC__)
/* The _GL*_OVERFLOW macros have the same restrictions as the
*_RANGE_OVERFLOW macros, except that they do not assume that operands
(e.g., A and B) have the same type as MIN and MAX. Instead, they assume
that the result (e.g., A + B) has that type. */
-#define _GL_ADD_OVERFLOW(a, b, min, max) \
- ((min) < 0 ? INT_ADD_RANGE_OVERFLOW (a, b, min, max) \
- : (a) < 0 ? (b) <= (a) + (b) \
- : (b) < 0 ? (a) <= (a) + (b) \
- : (a) + (b) < (b))
-#define _GL_SUBTRACT_OVERFLOW(a, b, min, max) \
- ((min) < 0 ? INT_SUBTRACT_RANGE_OVERFLOW (a, b, min, max) \
- : (a) < 0 ? 1 \
- : (b) < 0 ? (a) - (b) <= (a) \
- : (a) < (b))
-#define _GL_MULTIPLY_OVERFLOW(a, b, min, max) \
- (((min) == 0 && (((a) < 0 && 0 < (b)) || ((b) < 0 && 0 < (a)))) \
- || INT_MULTIPLY_RANGE_OVERFLOW (a, b, min, max))
+#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL
+# define _GL_ADD_OVERFLOW(a, b, min, max)
+ __builtin_add_overflow (a, b, (__typeof__ ((a) + (b)) *) 0)
+# define _GL_SUBTRACT_OVERFLOW(a, b, min, max)
+ __builtin_sub_overflow (a, b, (__typeof__ ((a) - (b)) *) 0)
+# define _GL_MULTIPLY_OVERFLOW(a, b, min, max)
+ __builtin_mul_overflow (a, b, (__typeof__ ((a) * (b)) *) 0)
+#else
+# define _GL_ADD_OVERFLOW(a, b, min, max) \
+ ((min) < 0 ? INT_ADD_RANGE_OVERFLOW (a, b, min, max) \
+ : (a) < 0 ? (b) <= (a) + (b) \
+ : (b) < 0 ? (a) <= (a) + (b) \
+ : (a) + (b) < (b))
+# define _GL_SUBTRACT_OVERFLOW(a, b, min, max) \
+ ((min) < 0 ? INT_SUBTRACT_RANGE_OVERFLOW (a, b, min, max) \
+ : (a) < 0 ? 1 \
+ : (b) < 0 ? (a) - (b) <= (a) \
+ : (a) < (b))
+# define _GL_MULTIPLY_OVERFLOW(a, b, min, max) \
+ (((min) == 0 && (((a) < 0 && 0 < (b)) || ((b) < 0 && 0 < (a)))) \
+ || INT_MULTIPLY_RANGE_OVERFLOW (a, b, min, max))
+#endif
#define _GL_DIVIDE_OVERFLOW(a, b, min, max) \
((min) < 0 ? (b) == _GL_INT_NEGATE_CONVERT (min, 1) && (a) < - (max) \
: (a) < 0 ? (b) <= (a) + (b) - 1 \
: (a) % - (b)) \
== 0)
-
-/* Integer overflow checks.
+/* Check for integer overflow, and report low order bits of answer.
The INT_<op>_OVERFLOW macros return 1 if the corresponding C operators
might not yield numerically correct answers due to arithmetic overflow.
- They work correctly on all known practical hosts, and do not rely
+ The INT_<op>_WRAPV macros also store the low-order bits of the answer.
+ These macros work correctly on all known practical hosts, and do not rely
on undefined behavior due to signed arithmetic overflow.
- Example usage:
+ Example usage, assuming A and B are long int:
- long int i = ...;
- long int j = ...;
- if (INT_MULTIPLY_OVERFLOW (i, j))
- printf ("multiply would overflow");
+ if (INT_MULTIPLY_OVERFLOW (a, b))
+ printf ("result would overflow\n");
else
- printf ("product is %ld", i * j);
+ printf ("result is %ld (no overflow)\n", a * b);
+
+ Example usage with WRAPV flavor:
+
+ long int result;
+ bool overflow = INT_MULTIPLY_WRAPV (a, b, &result);
+ printf ("result is %ld (%s)\n", result,
+ overflow ? "after overflow" : "no overflow");
+
+ Restrictions on these macros:
These macros do not check for all possible numerical problems or
undefined or unspecified behavior: they do not check for division
These macros may evaluate their arguments zero or multiple times, so the
arguments should not have side effects.
+ The WRAPV macros are not constant expressions. They support only
+ +, binary -, and *. The result type must be signed.
+
These macros are tuned for their last argument being a constant.
Return 1 if the integer expressions A * B, A - B, -A, A * B, A / B,
_GL_BINARY_OP_OVERFLOW (a, b, _GL_ADD_OVERFLOW)
#define INT_SUBTRACT_OVERFLOW(a, b) \
_GL_BINARY_OP_OVERFLOW (a, b, _GL_SUBTRACT_OVERFLOW)
-#define INT_NEGATE_OVERFLOW(a) \
- INT_NEGATE_RANGE_OVERFLOW (a, _GL_INT_MINIMUM (a), _GL_INT_MAXIMUM (a))
+#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL
+# define INT_NEGATE_OVERFLOW(a) INT_SUBTRACT_OVERFLOW (0, a)
+#else
+# define INT_NEGATE_OVERFLOW(a) \
+ INT_NEGATE_RANGE_OVERFLOW (a, _GL_INT_MINIMUM (a), _GL_INT_MAXIMUM (a))
+#endif
#define INT_MULTIPLY_OVERFLOW(a, b) \
_GL_BINARY_OP_OVERFLOW (a, b, _GL_MULTIPLY_OVERFLOW)
#define INT_DIVIDE_OVERFLOW(a, b) \
_GL_INT_MINIMUM (0 * (b) + (a)), \
_GL_INT_MAXIMUM (0 * (b) + (a)))
+/* 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)
+
+#ifndef __has_builtin
+# define __has_builtin(x) 0
+#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__
+# 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 5 <= __GNUC__ || __has_builtin (__builtin_add_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) \
+ (_Generic \
+ (*(r), \
+ signed char: \
+ _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned char, \
+ signed char, SCHAR_MIN, SCHAR_MAX), \
+ short int: \
+ _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned short int, \
+ short int, SHRT_MIN, SHRT_MAX), \
+ int: \
+ _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
+ int, INT_MIN, INT_MAX), \
+ long int: \
+ _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \
+ long int, LONG_MIN, LONG_MAX), \
+ long long int: \
+ _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \
+ long long int, LLONG_MIN, LLONG_MAX)))
+#else
+# define _GL_INT_OP_WRAPV(a, b, r, op, builtin, overflow) \
+ (sizeof *(r) == sizeof (signed char) \
+ ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned char, \
+ signed char, SCHAR_MIN, SCHAR_MAX) \
+ : sizeof *(r) == sizeof (short int) \
+ ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned short int, \
+ short int, SHRT_MIN, SHRT_MAX) \
+ : sizeof *(r) == sizeof (int) \
+ ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
+ int, INT_MIN, INT_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))
+# 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))
+# endif
+#endif
+
+/* Store the low-order bits of A <op> B into *R, where the operation
+ is given by OP. Use the unsigned type UT for calculation to avoid
+ overflow problems. *R's type is T, with extremal values 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))) \
+ ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t, tmin, tmax), 1) \
+ : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t, tmin, tmax), 0))
+
+/* Return A <op> B, where the operation is given by OP. Use the
+ unsigned type UT for calculation to avoid overflow problems.
+ Convert the result to type T without overflow by subtracting TMIN
+ from large values before converting, and adding it afterwards.
+ Compilers can optimize all the operations except OP. */
+#define _GL_INT_OP_WRAPV_VIA_UNSIGNED(a, b, op, ut, t, tmin, tmax) \
+ (((ut) (a) op (ut) (b)) <= (tmax) \
+ ? (t) ((ut) (a) op (ut) (b)) \
+ : ((t) (((ut) (a) op (ut) (b)) - (tmin)) + (tmin)))
+
#endif /* _GL_INTPROPS_H */
/* inttostr.h -- convert integers to printable strings
- Copyright (C) 2001-2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2006, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-/* Copyright (C) 2006-2013 Free Software Foundation, Inc.
+/* Copyright (C) 2006-2016 Free Software Foundation, Inc.
Written by Paul Eggert, Bruno Haible, Derek Price.
This file is part of gnulib.
#endif
/* Get CHAR_BIT. */
#include <limits.h>
+/* On mingw, __USE_MINGW_ANSI_STDIO only works if <stdio.h> is also included */
+#if (defined _WIN32 || 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>."
#endif
#if @GNULIB_STRTOUMAX@
-# if !@HAVE_DECL_STRTOUMAX@
-# undef strtoumax
+# if @REPLACE_STRTOUMAX@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef strtoumax
+# 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));
+# else
+# if !@HAVE_DECL_STRTOUMAX@
+# undef strtoumax
_GL_FUNCDECL_SYS (strtoumax, uintmax_t,
(const char *, char **, int) _GL_ARG_NONNULL ((1)));
-# endif
+# endif
_GL_CXXALIAS_SYS (strtoumax, uintmax_t, (const char *, char **, int));
+# endif
_GL_CXXALIASWARN (strtoumax);
#elif defined GNULIB_POSIXCHECK
# undef strtoumax
--- /dev/null
+/* Test whether a character is a blank.
+
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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>
+
+/* Specification. */
+#include <ctype.h>
+
+int
+isblank (int c)
+{
+ /* On all known platforms, in all predefined locales, isblank(c) is likely
+ equivalent with (c == ' ' || c == '\t'). Look at the glibc definition
+ (in glibc/localedata/locales/i18n): The "blank" characters are '\t', ' ',
+ U+1680, U+180E, U+2000..U+2006, U+2008..U+200A, U+205F, U+3000, and none
+ except the first two is present in a common 8-bit encoding. Therefore
+ the substitute for other platforms is not more complicated than this. */
+ return (c == ' ' || c == '\t');
+}
/* Test wide character for being blank.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Replacement for 'int' to 'long double' conversion routine.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2011.
This program is free software: you can redistribute it and/or modify
/* Substitute for and wrapper around <langinfo.h>.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This 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 CODESET 10000
/* nl_langinfo items of the LC_NUMERIC category */
# define RADIXCHAR 10001
+# define DECIMAL_POINT RADIXCHAR
# define THOUSEP 10002
+# define THOUSANDS_SEP THOUSEP
+# define GROUPING 10114
/* nl_langinfo items of the LC_TIME category */
# define D_T_FMT 10003
# define D_FMT 10004
# define ALT_DIGITS 10051
/* nl_langinfo items of the LC_MONETARY category */
# define CRNCYSTR 10052
+# define CURRENCY_SYMBOL CRNCYSTR
+# define INT_CURR_SYMBOL 10100
+# define MON_DECIMAL_POINT 10101
+# define MON_THOUSANDS_SEP 10102
+# define MON_GROUPING 10103
+# define POSITIVE_SIGN 10104
+# define NEGATIVE_SIGN 10105
+# define FRAC_DIGITS 10106
+# define INT_FRAC_DIGITS 10107
+# define P_CS_PRECEDES 10108
+# define N_CS_PRECEDES 10109
+# define P_SEP_BY_SPACE 10110
+# define N_SEP_BY_SPACE 10111
+# define P_SIGN_POSN 10112
+# define N_SIGN_POSN 10113
/* nl_langinfo items of the LC_MESSAGES category */
# define YESEXPR 10053
# define NOEXPR 10054
/* Determine a canonical name for the current locale's character encoding.
- Copyright (C) 2000-2006, 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2000-2006, 2008-2016 Free Software Foundation, Inc.
This 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 __WIN32__
# define WINDOWS_NATIVE
+# include <locale.h>
#endif
#if defined __EMX__
# include <os2.h>
#endif
+/* For MB_CUR_MAX_L */
+#if defined DARWIN7
+# include <xlocale.h>
+#endif
+
#if ENABLE_RELOCATABLE
# include "relocatable.h"
#else
cp = charset_aliases;
if (cp == NULL)
{
-#if !(defined DARWIN7 || defined VMS || defined WINDOWS_NATIVE || defined __CYGWIN__)
+#if !(defined DARWIN7 || defined VMS || defined WINDOWS_NATIVE || defined __CYGWIN__ || defined OS2)
const char *dir;
const char *base = "charset.alias";
char *file_name;
"CP54936" "\0" "GB18030" "\0"
"CP65001" "\0" "UTF-8" "\0";
# endif
+# if defined OS2
+ /* To avoid the troubles of installing a separate file in the same
+ directory as the DLL and of retrieving the DLL's directory at
+ runtime, simply inline the aliases here. */
+
+ /* The list of encodings is taken from "List of OS/2 Codepages"
+ by Alex Taylor:
+ <http://altsan.org/os2/toolkits/uls/index.html#codepages>.
+ See also "IBM Globalization - Code page identifiers":
+ <http://www-01.ibm.com/software/globalization/cp/cp_cpgid.html>. */
+ cp = "CP813" "\0" "ISO-8859-7" "\0"
+ "CP878" "\0" "KOI8-R" "\0"
+ "CP819" "\0" "ISO-8859-1" "\0"
+ "CP912" "\0" "ISO-8859-2" "\0"
+ "CP913" "\0" "ISO-8859-3" "\0"
+ "CP914" "\0" "ISO-8859-4" "\0"
+ "CP915" "\0" "ISO-8859-5" "\0"
+ "CP916" "\0" "ISO-8859-8" "\0"
+ "CP920" "\0" "ISO-8859-9" "\0"
+ "CP921" "\0" "ISO-8859-13" "\0"
+ "CP923" "\0" "ISO-8859-15" "\0"
+ "CP954" "\0" "EUC-JP" "\0"
+ "CP964" "\0" "EUC-TW" "\0"
+ "CP970" "\0" "EUC-KR" "\0"
+ "CP1089" "\0" "ISO-8859-6" "\0"
+ "CP1208" "\0" "UTF-8" "\0"
+ "CP1381" "\0" "GB2312" "\0"
+ "CP1386" "\0" "GBK" "\0"
+ "CP3372" "\0" "EUC-JP" "\0";
+# endif
#endif
charset_aliases = cp;
static char buf[2 + 10 + 1];
- /* 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. */
- sprintf (buf, "CP%u", GetACP ());
+ /* 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);
+
+ pdot = strrchr (current_locale, '.');
+ if (pdot)
+ 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. */
+ sprintf (buf, "CP%u", GetACP ());
+ }
codeset = buf;
#elif defined OS2
ULONG cp[3];
ULONG cplen;
+ codeset = NULL;
+
/* Allow user to override the codeset, as set in the operating system,
with standard language environment variables. */
locale = getenv ("LC_ALL");
}
}
- /* Resolve through the charset.alias file. */
- codeset = locale;
+ /* For the POSIX locale, don't use the system's codepage. */
+ if (strcmp (locale, "C") == 0 || strcmp (locale, "POSIX") == 0)
+ codeset = "";
}
- else
+
+ if (codeset == NULL)
{
/* OS/2 has a function returning the locale's codepage as a number. */
if (DosQueryCp (sizeof (cp), cp, &cplen))
#ifdef DARWIN7
/* Mac OS X sets MB_CUR_MAX to 1 when LC_ALL=C, and "UTF-8"
(the default codeset) does not work when MB_CUR_MAX is 1. */
- if (strcmp (codeset, "UTF-8") == 0 && MB_CUR_MAX <= 1)
+ if (strcmp (codeset, "UTF-8") == 0 && MB_CUR_MAX_L (uselocale (NULL)) <= 1)
codeset = "ASCII";
#endif
/* Determine a canonical name for the current locale's character encoding.
- Copyright (C) 2000-2003, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2000-2003, 2009-2016 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
/* A POSIX <locale.h>.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Query locale dependent information for formatting numbers.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
+ Copyright (C) 2012-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Work around a bug of lstat on some systems
- Copyright (C) 1997-2006, 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 1997-2006, 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* malloc() function that is glibc compatible.
- Copyright (C) 1997-1998, 2006-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1997-1998, 2006-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Safe automatic memory allocation.
- Copyright (C) 2003, 2006-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2006-2007, 2009-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2003.
This program is free software; you can redistribute it and/or modify
#define MAGIC_SIZE sizeof (int)
/* This is how the header info would look like without any alignment
considerations. */
-struct preliminary_header { void *next; char room[MAGIC_SIZE]; };
+struct preliminary_header { void *next; int magic; };
/* But the header's size must be a multiple of sa_alignment_max. */
#define HEADER_SIZE \
(((sizeof (struct preliminary_header) + sa_alignment_max - 1) / sa_alignment_max) * sa_alignment_max)
-struct header { void *next; char room[HEADER_SIZE - sizeof (struct preliminary_header) + MAGIC_SIZE]; };
-verify (HEADER_SIZE == sizeof (struct header));
+union header {
+ void *next;
+ struct {
+ char room[HEADER_SIZE - MAGIC_SIZE];
+ int word;
+ } magic;
+};
+verify (HEADER_SIZE == sizeof (union header));
/* We make the hash table quite big, so that during lookups the probability
of empty hash buckets is quite high. There is no need to make the hash
table resizable, because when the hash table gets filled so much that the
if (nplus >= n)
{
- char *p = (char *) malloc (nplus);
+ void *p = malloc (nplus);
if (p != NULL)
{
size_t slot;
+ union header *h = p;
- p += HEADER_SIZE;
+ p = h + 1;
/* Put a magic number into the indicator word. */
- ((int *) p)[-1] = MAGIC_NUMBER;
+ h->magic.word = MAGIC_NUMBER;
/* Enter p into the hash table. */
slot = (uintptr_t) p % HASH_TABLE_SIZE;
- ((struct header *) (p - HEADER_SIZE))->next = mmalloca_results[slot];
+ h->next = mmalloca_results[slot];
mmalloca_results[slot] = p;
return p;
void **chain = &mmalloca_results[slot];
for (; *chain != NULL;)
{
+ union header *h = p;
if (*chain == p)
{
/* Found it. Remove it from the hash table and free it. */
- char *p_begin = (char *) p - HEADER_SIZE;
- *chain = ((struct header *) p_begin)->next;
+ union header *p_begin = h - 1;
+ *chain = p_begin->next;
free (p_begin);
return;
}
- chain = &((struct header *) ((char *) *chain - HEADER_SIZE))->next;
+ h = *chain;
+ chain = &h[-1].next;
}
}
/* At this point, we know it was not a mmalloca() result. */
/* Safe automatic memory allocation.
- Copyright (C) 2003-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2003-2007, 2009-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2003.
This program is free software; you can redistribute it and/or modify
/* ------------------- Auxiliary, non-public definitions ------------------- */
/* Determine the alignment of a type at compile time. */
-#if defined __GNUC__
+#if defined __GNUC__ || defined __IBM__ALIGNOF__
# define sa_alignof __alignof__
#elif defined __cplusplus
template <class type> struct sa_alignof_helper { char __slot1; type __slot2; };
-/* Copyright (C) 2001, 2006, 2009-2013 Free Software Foundation, Inc.
+/* Copyright (C) 2001, 2006, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Multibyte character data type.
- Copyright (C) 2001, 2005-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2005-2007, 2009-2016 Free Software Foundation, Inc.
This 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 <wchar.h>
#include <wctype.h>
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
_GL_INLINE_HEADER_BEGIN
#ifndef MBCHAR_INLINE
# define MBCHAR_INLINE _GL_INLINE
/* Iterating through multibyte strings: macros for multi-byte encodings.
- Copyright (C) 2001, 2005, 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2005, 2007, 2009-2016 Free Software Foundation, Inc.
This 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 "mbchar.h"
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
_GL_INLINE_HEADER_BEGIN
#ifndef MBITER_INLINE
# define MBITER_INLINE _GL_INLINE
/* Convert multibyte character to wide character.
- Copyright (C) 1999-2002, 2005-2013 Free Software Foundation, Inc.
+ Copyright (C) 1999-2002, 2005-2016 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(). */
size_t
rpl_mbrtowc (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps)
{
-# if MBRTOWC_NULL_ARG2_BUG || MBRTOWC_RETVAL_BUG
+ size_t ret;
+ wchar_t wc;
+
+# if MBRTOWC_NULL_ARG2_BUG || MBRTOWC_RETVAL_BUG || MBRTOWC_EMPTY_INPUT_BUG
if (s == NULL)
{
pwc = NULL;
}
# endif
+# if MBRTOWC_EMPTY_INPUT_BUG
+ if (n == 0)
+ return (size_t) -2;
+# endif
+
+ if (! pwc)
+ pwc = &wc;
+
# if MBRTOWC_RETVAL_BUG
{
static mbstate_t internal_state;
size_t count = 0;
for (; n > 0; s++, n--)
{
- wchar_t wc;
- size_t ret = mbrtowc (&wc, s, 1, ps);
+ ret = mbrtowc (&wc, s, 1, ps);
if (ret == (size_t)(-1))
return (size_t)(-1);
if (ret != (size_t)(-2))
{
/* The multibyte character has been completed. */
- if (pwc != NULL)
- *pwc = wc;
+ *pwc = wc;
return (wc == 0 ? 0 : count);
}
}
}
# endif
-# if MBRTOWC_NUL_RETVAL_BUG
- {
- wchar_t wc;
- size_t ret = mbrtowc (&wc, s, n, ps);
-
- if (ret != (size_t)(-1) && ret != (size_t)(-2))
- {
- if (pwc != NULL)
- *pwc = wc;
- if (wc == 0)
- ret = 0;
- }
- return ret;
- }
-# else
- {
-# if MBRTOWC_NULL_ARG1_BUG
- wchar_t dummy;
+ ret = mbrtowc (pwc, s, n, ps);
- if (pwc == NULL)
- pwc = &dummy;
-# endif
+# if MBRTOWC_NUL_RETVAL_BUG
+ if (ret < (size_t) -2 && !*pwc)
+ return 0;
+# endif
- return mbrtowc (pwc, s, n, ps);
- }
+# if C_LOCALE_MAYBE_EILSEQ
+ if ((size_t) -2 <= ret && n != 0 && ! hard_locale (LC_CTYPE))
+ {
+ unsigned char uc = *s;
+ *pwc = uc;
+ return 1;
+ }
# endif
+
+ return ret;
}
#endif
/* Case-insensitive string comparison function.
- Copyright (C) 1998-1999, 2005-2013 Free Software Foundation, Inc.
+ Copyright (C) 1998-1999, 2005-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2005,
based on earlier glibc code.
/* Test for initial conversion state.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2008.
This program is free software: you can redistribute it and/or modify
/* Counting the multibyte characters in a string.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2007.
This program is free software: you can redistribute it and/or modify
/* Convert string to wide string.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2008.
This program is free software: you can redistribute it and/or modify
/* Convert string to wide string.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2008.
This program is free software: you can redistribute it and/or modify
/* Convert string to wide string.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2008.
This program is free software: you can redistribute it and/or modify
-/* Searching in a string.
- Copyright (C) 2005-2013 Free Software Foundation, Inc.
+/* Searching in a string. -*- coding: utf-8 -*-
+ Copyright (C) 2005-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2005.
This program is free software: you can redistribute it and/or modify
size_t *table;
/* Allocate room for needle_mbchars and the table. */
- char *memory = (char *) nmalloca (m, sizeof (mbchar_t) + sizeof (size_t));
+ void *memory = nmalloca (m, sizeof (mbchar_t) + sizeof (size_t));
+ void *table_memory;
if (memory == NULL)
return false;
- needle_mbchars = (mbchar_t *) memory;
- table = (size_t *) (memory + m * sizeof (mbchar_t));
+ needle_mbchars = memory;
+ table_memory = needle_mbchars + m;
+ table = table_memory;
/* Fill needle_mbchars. */
{
/* Convert multibyte character to wide character.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2011.
This program is free software: you can redistribute it and/or modify
/* Convert multibyte character to wide character.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2011.
This program is free software: you can redistribute it and/or modify
/* Iterating through multibyte strings: macros for multi-byte encodings.
- Copyright (C) 2001, 2005, 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2005, 2007, 2009-2016 Free Software Foundation, Inc.
This 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 "mbchar.h"
#include "strnlen1.h"
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
_GL_INLINE_HEADER_BEGIN
#ifndef MBUITER_INLINE
# define MBUITER_INLINE _GL_INLINE
-/* Copyright (C) 1991, 1993, 1996-1997, 1999-2000, 2003-2004, 2006, 2008-2013
+/* Copyright (C) 1991, 1993, 1996-1997, 1999-2000, 2003-2004, 2006, 2008-2016
Free Software Foundation, Inc.
Based on strlen implementation by Torbjorn Granlund (tege@sics.se),
-/* Copyright (C) 1998-1999, 2001, 2005-2007, 2009-2013 Free Software
+/* Copyright (C) 1998-1999, 2001, 2005-2007, 2009-2016 Free Software
Foundation, Inc.
This file is derived from the one in the GNU C Library.
+/* mktime variant that also uses an offset guess
+
+ Copyright 2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or
+ modify 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 <time.h>
+
+/* mktime_offset_t is a signed type wide enough to hold a UTC offset
+ in seconds, and used as part of the type of the offset-guess
+ argument to mktime_internal. Use time_t on platforms where time_t
+ is signed, to be compatible with platforms like BeOS that export
+ this implementation detail of mktime. On platforms where time_t is
+ unsigned, GNU and POSIX code can assume 'int' is at least 32 bits
+ which is wide enough for a UTC offset. */
+
+#if TIME_T_IS_SIGNED
+typedef time_t mktime_offset_t;
+#else
+typedef int mktime_offset_t;
+#endif
+
time_t mktime_internal (struct tm *,
struct tm * (*) (time_t const *, struct tm *),
- time_t *);
+ mktime_offset_t *);
/* Convert a 'struct tm' to a time_t value.
- Copyright (C) 1993-2013 Free Software Foundation, Inc.
+ Copyright (C) 1993-2016 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Paul Eggert <eggert@twinsun.com>.
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-/* Define this to have a standalone program to test this implementation of
+/* Define this to 1 to have a standalone program to test this implementation of
mktime. */
-/* #define DEBUG 1 */
+#ifndef DEBUG_MKTIME
+# define DEBUG_MKTIME 0
+#endif
-#ifndef _LIBC
+#if !defined _LIBC && !DEBUG_MKTIME
# include <config.h>
#endif
#include <time.h>
#include <limits.h>
+#include <stdbool.h>
-#include <string.h> /* For the real memcpy prototype. */
+#include <intprops.h>
+#include <verify.h>
-#if DEBUG
+#if DEBUG_MKTIME
# include <stdio.h>
# include <stdlib.h>
+# include <string.h>
/* Make it work even if the system's libc has its own mktime routine. */
# undef mktime
# define mktime my_mktime
-#endif /* DEBUG */
-
-/* Some of the code in this file assumes that signed integer overflow
- silently wraps around. This assumption can't easily be programmed
- around, nor can it be checked for portably at compile-time or
- easily eliminated at run-time.
-
- Define WRAPV to 1 if the assumption is valid and if
- #pragma GCC optimize ("wrapv")
- does not trigger GCC bug 51793
- <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51793>.
- Otherwise, define it to 0; this forces the use of slower code that,
- while not guaranteed by the C Standard, works on all production
- platforms that we know about. */
-#ifndef WRAPV
-# if (((__GNUC__ == 4 && 4 <= __GNUC_MINOR__) || 4 < __GNUC__) \
- && defined __GLIBC__)
-# pragma GCC optimize ("wrapv")
-# define WRAPV 1
-# else
-# define WRAPV 0
-# endif
#endif
-/* Verify a requirement at compile-time (unlike assert, which is runtime). */
-#define verify(name, assertion) struct name { char a[(assertion) ? 1 : -1]; }
+/* A signed type that can represent an integer number of years
+ multiplied by three times the number of seconds in a year. It is
+ needed when converting a tm_year value times the number of seconds
+ in a year. The factor of three comes because these products need
+ to be subtracted from each other, and sometimes with an offset
+ added to them, without worrying about overflow.
-/* A signed type that is at least one bit wider than int. */
-#if INT_MAX <= LONG_MAX / 2
+ Much of the code uses long_int to represent time_t values, to
+ lessen the hassle of dealing with platforms where time_t is
+ unsigned, and because long_int should suffice to represent all
+ time_t values that mktime can generate even on platforms where
+ time_t is excessively wide. */
+
+#if INT_MAX <= LONG_MAX / 3 / 366 / 24 / 60 / 60
typedef long int long_int;
#else
typedef long long int long_int;
#endif
-verify (long_int_is_wide_enough, INT_MAX == INT_MAX * (long_int) 2 / 2);
+verify (INT_MAX <= TYPE_MAXIMUM (long_int) / 3 / 366 / 24 / 60 / 60);
/* Shift A right by B bits portably, by dividing A by 2**B and
- truncating towards minus infinity. A and B should be free of side
- effects, and B should be in the range 0 <= B <= INT_BITS - 2, where
- INT_BITS is the number of useful bits in an int. GNU code can
- assume that INT_BITS is at least 32.
+ truncating towards minus infinity. B should be in the range 0 <= B
+ <= LONG_INT_BITS - 2, where LONG_INT_BITS is the number of useful
+ bits in a long_int. LONG_INT_BITS is at least 32.
ISO C99 says that A >> B is implementation-defined if A < 0. Some
implementations (e.g., UNICOS 9.0 on a Cray Y-MP EL) don't shift
right in the usual way when A < 0, so SHR falls back on division if
ordinary A >> B doesn't seem to be the usual signed shift. */
-#define SHR(a, b) \
- ((-1 >> 1 == -1 \
- && (long_int) -1 >> 1 == -1 \
- && ((time_t) -1 >> 1 == -1 || ! TYPE_SIGNED (time_t))) \
- ? (a) >> (b) \
- : (a) / (1 << (b)) - ((a) % (1 << (b)) < 0))
-
-/* The extra casts in the following macros work around compiler bugs,
- e.g., in Cray C 5.0.3.0. */
-
-/* True if the arithmetic type T is an integer type. bool counts as
- an integer. */
-#define TYPE_IS_INTEGER(t) ((t) 1.5 == 1)
-
-/* True if negative values of the signed integer type T use two's
- complement, or if T is an unsigned integer type. */
-#define TYPE_TWOS_COMPLEMENT(t) ((t) ~ (t) 0 == (t) -1)
-
-/* True if the arithmetic type T is signed. */
-#define TYPE_SIGNED(t) (! ((t) 0 < (t) -1))
-
-/* The maximum and minimum values for the integer type T. These
- macros have undefined behavior if T is signed and has padding bits.
- If this is a problem for you, please let us know how to fix it for
- your host. */
-#define TYPE_MINIMUM(t) \
- ((t) (! TYPE_SIGNED (t) \
- ? (t) 0 \
- : ~ TYPE_MAXIMUM (t)))
-#define TYPE_MAXIMUM(t) \
- ((t) (! TYPE_SIGNED (t) \
- ? (t) -1 \
- : ((((t) 1 << (sizeof (t) * CHAR_BIT - 2)) - 1) * 2 + 1)))
-
-#ifndef TIME_T_MIN
-# define TIME_T_MIN TYPE_MINIMUM (time_t)
-#endif
-#ifndef TIME_T_MAX
-# define TIME_T_MAX TYPE_MAXIMUM (time_t)
-#endif
-#define TIME_T_MIDPOINT (SHR (TIME_T_MIN + TIME_T_MAX, 1) + 1)
-verify (time_t_is_integer, TYPE_IS_INTEGER (time_t));
-verify (twos_complement_arithmetic,
- (TYPE_TWOS_COMPLEMENT (int)
- && TYPE_TWOS_COMPLEMENT (long_int)
- && TYPE_TWOS_COMPLEMENT (time_t)));
+static long_int
+shr (long_int a, int b)
+{
+ long_int one = 1;
+ return (-one >> 1 == -1
+ ? a >> b
+ : a / (one << b) - (a % (one << b) < 0));
+}
+
+/* Bounds for the intersection of time_t and long_int. */
+
+static long_int const mktime_min
+ = ((TYPE_SIGNED (time_t) && TYPE_MINIMUM (time_t) < TYPE_MINIMUM (long_int))
+ ? TYPE_MINIMUM (long_int) : TYPE_MINIMUM (time_t));
+static long_int const mktime_max
+ = (TYPE_MAXIMUM (long_int) < TYPE_MAXIMUM (time_t)
+ ? TYPE_MAXIMUM (long_int) : TYPE_MAXIMUM (time_t));
+
+verify (TYPE_IS_INTEGER (time_t));
#define EPOCH_YEAR 1970
#define TM_YEAR_BASE 1900
-verify (base_year_is_a_multiple_of_100, TM_YEAR_BASE % 100 == 0);
+verify (TM_YEAR_BASE % 100 == 0);
-/* Return 1 if YEAR + TM_YEAR_BASE is a leap year. */
-static int
+/* Is YEAR + TM_YEAR_BASE a leap year? */
+static bool
leapyear (long_int year)
{
/* Don't add YEAR to TM_YEAR_BASE, as that might overflow.
};
-#ifndef _LIBC
+#ifdef _LIBC
+typedef time_t mktime_offset_t;
+#else
/* Portable standalone applications should supply a <time.h> that
declares a POSIX-compliant localtime_r, for the benefit of older
implementations that lack localtime_r or have a nonstandard one.
# include "mktime-internal.h"
#endif
-/* Return 1 if the values A and B differ according to the rules for
- tm_isdst: A and B differ if one is zero and the other positive. */
-static int
+/* Do the values A and B differ according to the rules for tm_isdst?
+ A and B differ if one is zero and the other positive. */
+static bool
isdst_differ (int a, int b)
{
return (!a != !b) && (0 <= a) && (0 <= b);
were not adjusted between the time stamps.
The YEAR values uses the same numbering as TP->tm_year. Values
- need not be in the usual range. However, YEAR1 must not be less
- than 2 * INT_MIN or greater than 2 * INT_MAX.
+ need not be in the usual range. However, YEAR1 must not overflow
+ when multiplied by three times the number of seconds in a year, and
+ likewise for YDAY1 and three times the number of seconds in a day. */
- The result may overflow. It is the caller's responsibility to
- detect overflow. */
-
-static time_t
+static long_int
ydhms_diff (long_int year1, long_int yday1, int hour1, int min1, int sec1,
int year0, int yday0, int hour0, int min0, int sec0)
{
- verify (C99_integer_division, -1 / 2 == 0);
+ verify (-1 / 2 == 0);
/* Compute intervening leap days correctly even if year is negative.
Take care to avoid integer overflow here. */
- int a4 = SHR (year1, 2) + SHR (TM_YEAR_BASE, 2) - ! (year1 & 3);
- int b4 = SHR (year0, 2) + SHR (TM_YEAR_BASE, 2) - ! (year0 & 3);
+ int a4 = shr (year1, 2) + shr (TM_YEAR_BASE, 2) - ! (year1 & 3);
+ int b4 = shr (year0, 2) + shr (TM_YEAR_BASE, 2) - ! (year0 & 3);
int a100 = a4 / 25 - (a4 % 25 < 0);
int b100 = b4 / 25 - (b4 % 25 < 0);
- int a400 = SHR (a100, 2);
- int b400 = SHR (b100, 2);
+ int a400 = shr (a100, 2);
+ int b400 = shr (b100, 2);
int intervening_leap_days = (a4 - b4) - (a100 - b100) + (a400 - b400);
- /* Compute the desired time in time_t precision. Overflow might
- occur here. */
- time_t tyear1 = year1;
- time_t years = tyear1 - year0;
- time_t days = 365 * years + yday1 - yday0 + intervening_leap_days;
- time_t hours = 24 * days + hour1 - hour0;
- time_t minutes = 60 * hours + min1 - min0;
- time_t seconds = 60 * minutes + sec1 - sec0;
+ /* Compute the desired time without overflowing. */
+ long_int years = year1 - year0;
+ long_int days = 365 * years + yday1 - yday0 + intervening_leap_days;
+ long_int hours = 24 * days + hour1 - hour0;
+ long_int minutes = 60 * hours + min1 - min0;
+ long_int seconds = 60 * minutes + sec1 - sec0;
return seconds;
}
-/* Return the average of A and B, even if A + B would overflow. */
-static time_t
-time_t_avg (time_t a, time_t b)
+/* Return the average of A and B, even if A + B would overflow.
+ Round toward positive infinity. */
+static long_int
+long_int_avg (long_int a, long_int b)
{
- return SHR (a, 1) + SHR (b, 1) + (a & b & 1);
-}
-
-/* Return 1 if A + B does not overflow. If time_t is unsigned and if
- B's top bit is set, assume that the sum represents A - -B, and
- return 1 if the subtraction does not wrap around. */
-static int
-time_t_add_ok (time_t a, time_t b)
-{
- if (! TYPE_SIGNED (time_t))
- {
- time_t sum = a + b;
- return (sum < a) == (TIME_T_MIDPOINT <= b);
- }
- else if (WRAPV)
- {
- time_t sum = a + b;
- return (sum < a) == (b < 0);
- }
- else
- {
- time_t avg = time_t_avg (a, b);
- return TIME_T_MIN / 2 <= avg && avg <= TIME_T_MAX / 2;
- }
-}
-
-/* Return 1 if A + B does not overflow. */
-static int
-time_t_int_add_ok (time_t a, int b)
-{
- verify (int_no_wider_than_time_t, INT_MAX <= TIME_T_MAX);
- if (WRAPV)
- {
- time_t sum = a + b;
- return (sum < a) == (b < 0);
- }
- else
- {
- int a_odd = a & 1;
- time_t avg = SHR (a, 1) + (SHR (b, 1) + (a_odd & b));
- return TIME_T_MIN / 2 <= avg && avg <= TIME_T_MAX / 2;
- }
+ return shr (a, 1) + shr (b, 1) + ((a | b) & 1);
}
/* Return a time_t value corresponding to (YEAR-YDAY HOUR:MIN:SEC),
- assuming that *T corresponds to *TP and that no clock adjustments
+ assuming that T corresponds to *TP and that no clock adjustments
occurred between *TP and the desired time.
- If TP is null, return a value not equal to *T; this avoids false matches.
- If overflow occurs, yield the minimal or maximal value, except do not
- yield a value equal to *T. */
-static time_t
+ Although T and the returned value are of type long_int,
+ they represent time_t values and must be in time_t range.
+ If TP is null, return a value not equal to T; this avoids false matches.
+ YEAR and YDAY must not be so large that multiplying them by three times the
+ number of seconds in a year (or day, respectively) would overflow long_int.
+ If the returned value would be out of range, yield the minimal or
+ maximal in-range value, except do not yield a value equal to T. */
+static long_int
guess_time_tm (long_int year, long_int yday, int hour, int min, int sec,
- const time_t *t, const struct tm *tp)
+ long_int t, const struct tm *tp)
{
if (tp)
{
- time_t d = ydhms_diff (year, yday, hour, min, sec,
- tp->tm_year, tp->tm_yday,
- tp->tm_hour, tp->tm_min, tp->tm_sec);
- if (time_t_add_ok (*t, d))
- return *t + d;
+ long_int result;
+ long_int d = ydhms_diff (year, yday, hour, min, sec,
+ tp->tm_year, tp->tm_yday,
+ tp->tm_hour, tp->tm_min, tp->tm_sec);
+ if (! INT_ADD_WRAPV (t, d, &result))
+ return result;
}
/* Overflow occurred one way or another. Return the nearest result
if the actual difference is nonzero, as that would cause a false
match; and don't oscillate between two values, as that would
confuse the spring-forward gap detector. */
- return (*t < TIME_T_MIDPOINT
- ? (*t <= TIME_T_MIN + 1 ? *t + 1 : TIME_T_MIN)
- : (TIME_T_MAX - 1 <= *t ? *t - 1 : TIME_T_MAX));
+ return (t < long_int_avg (mktime_min, mktime_max)
+ ? (t <= mktime_min + 1 ? t + 1 : mktime_min)
+ : (mktime_max - 1 <= t ? t - 1 : mktime_max));
+}
+
+/* Use CONVERT to convert T to a struct tm value in *TM. T must be in
+ range for time_t. Return TM if successful, NULL if T is out of
+ range for CONVERT. */
+static struct tm *
+convert_time (struct tm *(*convert) (const time_t *, struct tm *),
+ long_int t, struct tm *tm)
+{
+ time_t x = t;
+ return convert (&x, tm);
}
/* Use CONVERT to convert *T to a broken down time in *TP.
If *T is out of range for conversion, adjust it so that
- it is the nearest in-range value and then convert that. */
+ it is the nearest in-range value and then convert that.
+ A value is in range if it fits in both time_t and long_int. */
static struct tm *
ranged_convert (struct tm *(*convert) (const time_t *, struct tm *),
- time_t *t, struct tm *tp)
+ long_int *t, struct tm *tp)
{
- struct tm *r = convert (t, tp);
+ struct tm *r;
+ if (*t < mktime_min)
+ *t = mktime_min;
+ else if (mktime_max < *t)
+ *t = mktime_max;
+ r = convert_time (convert, *t, tp);
if (!r && *t)
{
- time_t bad = *t;
- time_t ok = 0;
+ long_int bad = *t;
+ long_int ok = 0;
- /* BAD is a known unconvertible time_t, and OK is a known good one.
+ /* BAD is a known unconvertible value, and OK is a known good one.
Use binary search to narrow the range between BAD and OK until
they differ by 1. */
- while (bad != ok + (bad < 0 ? -1 : 1))
+ while (true)
{
- time_t mid = *t = time_t_avg (ok, bad);
- r = convert (t, tp);
+ long_int mid = long_int_avg (ok, bad);
+ if (mid != ok && mid != bad)
+ break;
+ r = convert_time (convert, mid, tp);
if (r)
ok = mid;
else
{
/* The last conversion attempt failed;
revert to the most recent successful attempt. */
- *t = ok;
- r = convert (t, tp);
+ r = convert_time (convert, ok, tp);
}
}
return r;
}
-
/* Convert *TP to a time_t value, inverting
the monotonic and mostly-unit-linear conversion function CONVERT.
Use *OFFSET to keep track of a guess at the offset of the result,
time_t
__mktime_internal (struct tm *tp,
struct tm *(*convert) (const time_t *, struct tm *),
- time_t *offset)
+ mktime_offset_t *offset)
{
- time_t t, gt, t0, t1, t2;
+ long_int t, gt, t0, t1, t2, dt;
struct tm tm;
/* The maximum number of probes (calls to CONVERT) should be enough
long_int year = lyear_requested + mon_years;
/* The other values need not be in range:
- the remaining code handles minor overflows correctly,
- assuming int and time_t arithmetic wraps around.
- Major overflows are caught at the end. */
+ the remaining code handles overflows correctly. */
/* Calculate day of year from year, month, and day of month.
The result need not be in range. */
long_int lmday = mday;
long_int yday = mon_yday + lmday;
- time_t guessed_offset = *offset;
+ int negative_offset_guess;
int sec_requested = sec;
/* Invert CONVERT by probing. First assume the same offset as last
time. */
+ INT_SUBTRACT_WRAPV (0, *offset, &negative_offset_guess);
t0 = ydhms_diff (year, yday, hour, min, sec,
- EPOCH_YEAR - TM_YEAR_BASE, 0, 0, 0, - guessed_offset);
-
- if (TIME_T_MAX / INT_MAX / 366 / 24 / 60 / 60 < 3)
- {
- /* time_t isn't large enough to rule out overflows, so check
- for major overflows. A gross check suffices, since if t0
- has overflowed, it is off by a multiple of TIME_T_MAX -
- TIME_T_MIN + 1. So ignore any component of the difference
- that is bounded by a small value. */
-
- /* Approximate log base 2 of the number of time units per
- biennium. A biennium is 2 years; use this unit instead of
- years to avoid integer overflow. For example, 2 average
- Gregorian years are 2 * 365.2425 * 24 * 60 * 60 seconds,
- which is 63113904 seconds, and rint (log2 (63113904)) is
- 26. */
- int ALOG2_SECONDS_PER_BIENNIUM = 26;
- int ALOG2_MINUTES_PER_BIENNIUM = 20;
- int ALOG2_HOURS_PER_BIENNIUM = 14;
- int ALOG2_DAYS_PER_BIENNIUM = 10;
- int LOG2_YEARS_PER_BIENNIUM = 1;
-
- int approx_requested_biennia =
- (SHR (year_requested, LOG2_YEARS_PER_BIENNIUM)
- - SHR (EPOCH_YEAR - TM_YEAR_BASE, LOG2_YEARS_PER_BIENNIUM)
- + SHR (mday, ALOG2_DAYS_PER_BIENNIUM)
- + SHR (hour, ALOG2_HOURS_PER_BIENNIUM)
- + SHR (min, ALOG2_MINUTES_PER_BIENNIUM)
- + (LEAP_SECONDS_POSSIBLE
- ? 0
- : SHR (sec, ALOG2_SECONDS_PER_BIENNIUM)));
-
- int approx_biennia = SHR (t0, ALOG2_SECONDS_PER_BIENNIUM);
- int diff = approx_biennia - approx_requested_biennia;
- int approx_abs_diff = diff < 0 ? -1 - diff : diff;
-
- /* IRIX 4.0.5 cc miscalculates TIME_T_MIN / 3: it erroneously
- gives a positive value of 715827882. Setting a variable
- first then doing math on it seems to work.
- (ghazi@caip.rutgers.edu) */
- time_t time_t_max = TIME_T_MAX;
- time_t time_t_min = TIME_T_MIN;
- time_t overflow_threshold =
- (time_t_max / 3 - time_t_min / 3) >> ALOG2_SECONDS_PER_BIENNIUM;
-
- if (overflow_threshold < approx_abs_diff)
- {
- /* Overflow occurred. Try repairing it; this might work if
- the time zone offset is enough to undo the overflow. */
- time_t repaired_t0 = -1 - t0;
- approx_biennia = SHR (repaired_t0, ALOG2_SECONDS_PER_BIENNIUM);
- diff = approx_biennia - approx_requested_biennia;
- approx_abs_diff = diff < 0 ? -1 - diff : diff;
- if (overflow_threshold < approx_abs_diff)
- return -1;
- guessed_offset += repaired_t0 - t0;
- t0 = repaired_t0;
- }
- }
+ EPOCH_YEAR - TM_YEAR_BASE, 0, 0, 0, negative_offset_guess);
/* Repeatedly use the error to improve the guess. */
for (t = t1 = t2 = t0, dst2 = 0;
- (gt = guess_time_tm (year, yday, hour, min, sec, &t,
+ (gt = guess_time_tm (year, yday, hour, min, sec, t,
ranged_convert (convert, &t, &tm)),
t != gt);
t1 = t2, t2 = t, t = gt, dst2 = tm.tm_isdst != 0)
for (delta = stride; delta < delta_bound; delta += stride)
for (direction = -1; direction <= 1; direction += 2)
- if (time_t_int_add_ok (t, delta * direction))
- {
- time_t ot = t + delta * direction;
- struct tm otm;
- ranged_convert (convert, &ot, &otm);
- if (! isdst_differ (isdst, otm.tm_isdst))
- {
- /* We found the desired tm_isdst.
- Extrapolate back to the desired time. */
- t = guess_time_tm (year, yday, hour, min, sec, &ot, &otm);
- ranged_convert (convert, &t, &tm);
- goto offset_found;
- }
- }
+ {
+ long_int ot;
+ if (! INT_ADD_WRAPV (t, delta * direction, &ot))
+ {
+ struct tm otm;
+ ranged_convert (convert, &ot, &otm);
+ if (! isdst_differ (isdst, otm.tm_isdst))
+ {
+ /* We found the desired tm_isdst.
+ Extrapolate back to the desired time. */
+ t = guess_time_tm (year, yday, hour, min, sec, ot, &otm);
+ ranged_convert (convert, &t, &tm);
+ goto offset_found;
+ }
+ }
+ }
}
offset_found:
- *offset = guessed_offset + t - t0;
+ /* Set *OFFSET to the low-order bits of T - T0 - NEGATIVE_OFFSET_GUESS.
+ This is just a heuristic to speed up the next mktime call, and
+ correctness is unaffected if integer overflow occurs here. */
+ INT_SUBTRACT_WRAPV (t, t0, &dt);
+ INT_SUBTRACT_WRAPV (dt, negative_offset_guess, offset);
if (LEAP_SECONDS_POSSIBLE && sec_requested != tm.tm_sec)
{
/* Adjust time to reflect the tm_sec requested, not the normalized value.
Also, repair any damage from a false match due to a leap second. */
- int sec_adjustment = (sec == 0 && tm.tm_sec == 60) - sec;
- if (! time_t_int_add_ok (t, sec_requested))
+ long_int sec_adjustment = sec == 0 && tm.tm_sec == 60;
+ sec_adjustment -= sec;
+ sec_adjustment += sec_requested;
+ if (INT_ADD_WRAPV (t, sec_adjustment, &t)
+ || ! (mktime_min <= t && t <= mktime_max)
+ || ! convert_time (convert, t, &tm))
return -1;
- t1 = t + sec_requested;
- if (! time_t_int_add_ok (t1, sec_adjustment))
- return -1;
- t2 = t1 + sec_adjustment;
- if (! convert (&t2, &tm))
- return -1;
- t = t2;
}
*tp = tm;
}
-/* FIXME: This should use a signed type wide enough to hold any UTC
- offset in seconds. 'int' should be good enough for GNU code. We
- can't fix this unilaterally though, as other modules invoke
- __mktime_internal. */
-static time_t localtime_offset;
+static mktime_offset_t localtime_offset;
/* Convert *TP to a time_t value. */
time_t
time zone names contained in the external variable 'tzname' shall
be set as if the tzset() function had been called. */
__tzset ();
+#elif HAVE_TZSET
+ tzset ();
#endif
return __mktime_internal (tp, __localtime_r, &localtime_offset);
libc_hidden_weak (timelocal)
#endif
\f
-#if DEBUG
+#if DEBUG_MKTIME
static int
not_equal_tm (const struct tm *a, const struct tm *b)
time_t tk, tl, tl1;
char trailer;
+ /* Sanity check, plus call tzset. */
+ tl = 0;
+ if (! localtime (&tl))
+ {
+ printf ("localtime (0) fails\n");
+ status = 1;
+ }
+
if ((argc == 3 || argc == 4)
&& (sscanf (argv[1], "%d-%d-%d%c",
&tm.tm_year, &tm.tm_mon, &tm.tm_mday, &trailer)
tm.tm_isdst = argc == 3 ? -1 : atoi (argv[3]);
tmk = tm;
tl = mktime (&tmk);
- lt = localtime (&tl);
- if (lt)
- {
- tml = *lt;
- lt = &tml;
- }
+ lt = localtime_r (&tl, &tml);
printf ("mktime returns %ld == ", (long int) tl);
print_tm (&tmk);
printf ("\n");
if (argc == 4)
for (tl = from; by < 0 ? to <= tl : tl <= to; tl = tl1)
{
- lt = localtime (&tl);
+ lt = localtime_r (&tl, &tml);
if (lt)
{
- tmk = tml = *lt;
+ tmk = tml;
tk = mktime (&tmk);
status |= check_result (tk, tmk, tl, &tml);
}
else
{
- printf ("localtime (%ld) yields 0\n", (long int) tl);
+ printf ("localtime_r (%ld) yields 0\n", (long int) tl);
status = 1;
}
tl1 = tl + by;
for (tl = from; by < 0 ? to <= tl : tl <= to; tl = tl1)
{
/* Null benchmark. */
- lt = localtime (&tl);
+ lt = localtime_r (&tl, &tml);
if (lt)
{
- tmk = tml = *lt;
+ tmk = tml;
tk = tl;
status |= check_result (tk, tmk, tl, &tml);
}
else
{
- printf ("localtime (%ld) yields 0\n", (long int) tl);
+ printf ("localtime_r (%ld) yields 0\n", (long int) tl);
status = 1;
}
tl1 = tl + by;
return status;
}
-#endif /* DEBUG */
+#endif /* DEBUG_MKTIME */
\f
/*
Local Variables:
-compile-command: "gcc -DDEBUG -I. -Wall -W -O2 -g mktime.c -o mktime"
+compile-command: "gcc -DDEBUG_MKTIME -I. -Wall -W -O2 -g mktime.c -o mktime"
End:
*/
/* Invalid parameter handler for MSVC runtime libraries.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This 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 MSVC_INVALID_PARAMETER_HANDLING == DEFAULT_HANDLING
-static void cdecl
+static void __cdecl
gl_msvc_invalid_parameter_handler (const wchar_t *expression,
const wchar_t *function,
const wchar_t *file,
# if defined _MSC_VER
-static void cdecl
+static void __cdecl
gl_msvc_invalid_parameter_handler (const wchar_t *expression,
const wchar_t *function,
const wchar_t *file,
}
}
-static void cdecl
+static void __cdecl
gl_msvc_invalid_parameter_handler (const wchar_t *expression,
const wchar_t *function,
const wchar_t *file,
/* Invalid parameter handler for MSVC runtime libraries.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Wrappers that don't throw invalid parameter notifications
with MSVC runtime libraries.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Wrappers that don't throw invalid parameter notifications
with MSVC runtime libraries.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* nl_langinfo() replacement: query locale dependent information.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Specification. */
#include <langinfo.h>
+#include <locale.h>
+#include <string.h>
+#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
+# define WIN32_LEAN_AND_MEAN /* avoid including junk */
+# include <windows.h>
+# include <stdio.h>
+#endif
+
+/* 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];
+ size_t buflen = 0;
+ char const *locale = setlocale (LC_CTYPE, NULL);
+ char *codeset = buf;
+ size_t codesetlen;
+ codeset[0] = '\0';
+
+ if (locale && locale[0])
+ {
+ /* If the locale name contains an encoding after the dot, return it. */
+ char *dot = strchr (locale, '.');
+
+ if (dot)
+ {
+ /* Look for the possible @... trailer and remove it, if any. */
+ char *codeset_start = dot + 1;
+ char const *modifier = strchr (codeset_start, '@');
+
+ if (! modifier)
+ codeset = codeset_start;
+ else
+ {
+ codesetlen = modifier - codeset_start;
+ if (codesetlen < sizeof buf)
+ {
+ codeset = memcpy (buf, codeset_start, codesetlen);
+ codeset[codesetlen] = '\0';
+ }
+ }
+ }
+ }
+
+#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
+ /* If setlocale is successful, it returns the number of the
+ codepage, as a string. Otherwise, fall back on Windows API
+ GetACP, which returns the locale's codepage as a number (although
+ this doesn't change according to what the 'setlocale' call specified).
+ Either way, prepend "CP" to make it a valid codeset name. */
+ codesetlen = strlen (codeset);
+ if (0 < codesetlen && codesetlen < sizeof buf - 2)
+ memmove (buf + 2, codeset, codesetlen + 1);
+ else
+ sprintf (buf + 2, "%u", GetACP ());
+ codeset = memcpy (buf, "CP", 2);
+#endif
+ return codeset;
+}
+
+
#if REPLACE_NL_LANGINFO
/* Override nl_langinfo with support for added nl_item values. */
-# include <locale.h>
-# include <string.h>
-
# undef nl_langinfo
char *
{
# if GNULIB_defined_CODESET
case CODESET:
- {
- const char *locale;
- static char buf[2 + 10 + 1];
-
- locale = setlocale (LC_CTYPE, NULL);
- if (locale != NULL && locale[0] != '\0')
- {
- /* If the locale name contains an encoding after the dot, return
- it. */
- const char *dot = strchr (locale, '.');
-
- if (dot != NULL)
- {
- const char *modifier;
-
- dot++;
- /* Look for the possible @... trailer and remove it, if any. */
- modifier = strchr (dot, '@');
- if (modifier == NULL)
- return dot;
- if (modifier - dot < sizeof (buf))
- {
- memcpy (buf, dot, modifier - dot);
- buf [modifier - dot] = '\0';
- return buf;
- }
- }
- }
- return "";
- }
+ return ctype_codeset ();
# endif
# if GNULIB_defined_T_FMT_AMPM
case T_FMT_AMPM:
#else
-/* Provide nl_langinfo from scratch. */
-
-# if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
+/* Provide nl_langinfo from scratch, either for native MS-Windows, or
+ for old Unix platforms without locales, such as Linux libc5 or
+ BeOS. */
-/* Native Windows platforms. */
-
-# define WIN32_LEAN_AND_MEAN /* avoid including junk */
-# include <windows.h>
-
-# include <stdio.h>
-
-# else
-
-/* An old Unix platform without locales, such as Linux libc5 or BeOS. */
-
-# endif
-
-# include <locale.h>
+# include <time.h>
char *
nl_langinfo (nl_item item)
{
+ static char nlbuf[100];
+ struct tm tmm = { 0 };
+
switch (item)
{
/* nl_langinfo items of the LC_CTYPE category */
case CODESET:
-# if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
{
- static char buf[2 + 10 + 1];
-
- /* The Windows API has a function returning the locale's codepage as
- a number. */
- sprintf (buf, "CP%u", GetACP ());
- return buf;
+ char *codeset = ctype_codeset ();
+ if (*codeset)
+ return codeset;
}
-# elif defined __BEOS__
+# ifdef __BEOS__
return "UTF-8";
# else
return "ISO-8859-1";
return localeconv () ->decimal_point;
case THOUSEP:
return localeconv () ->thousands_sep;
+ case GROUPING:
+ return localeconv () ->grouping;
/* nl_langinfo items of the LC_TIME category.
TODO: Really use the locale. */
case D_T_FMT:
case T_FMT_AMPM:
return "%I:%M:%S %p";
case AM_STR:
- return "AM";
+ if (!strftime (nlbuf, sizeof nlbuf, "%p", &tmm))
+ return "AM";
+ return nlbuf;
case PM_STR:
- return "PM";
+ tmm.tm_hour = 12;
+ if (!strftime (nlbuf, sizeof nlbuf, "%p", &tmm))
+ return "PM";
+ return nlbuf;
case DAY_1:
- return "Sunday";
case DAY_2:
- return "Monday";
case DAY_3:
- return "Tuesday";
case DAY_4:
- return "Wednesday";
case DAY_5:
- return "Thursday";
case DAY_6:
- return "Friday";
case DAY_7:
- return "Saturday";
+ {
+ 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))
+ return (char *) days[item - DAY_1];
+ return nlbuf;
+ }
case ABDAY_1:
- return "Sun";
case ABDAY_2:
- return "Mon";
case ABDAY_3:
- return "Tue";
case ABDAY_4:
- return "Wed";
case ABDAY_5:
- return "Thu";
case ABDAY_6:
- return "Fri";
case ABDAY_7:
- return "Sat";
+ {
+ 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))
+ return (char *) abdays[item - ABDAY_1];
+ return nlbuf;
+ }
case MON_1:
- return "January";
case MON_2:
- return "February";
case MON_3:
- return "March";
case MON_4:
- return "April";
case MON_5:
- return "May";
case MON_6:
- return "June";
case MON_7:
- return "July";
case MON_8:
- return "August";
case MON_9:
- return "September";
case MON_10:
- return "October";
case MON_11:
- return "November";
case MON_12:
- return "December";
+ {
+ static char const months[][sizeof "September"] = {
+ "January", "February", "March", "April", "May", "June", "July",
+ "September", "October", "November", "December"
+ };
+ tmm.tm_mon = item - MON_1;
+ if (!strftime (nlbuf, sizeof nlbuf, "%B", &tmm))
+ return (char *) months[item - MON_1];
+ return nlbuf;
+ }
case ABMON_1:
- return "Jan";
case ABMON_2:
- return "Feb";
case ABMON_3:
- return "Mar";
case ABMON_4:
- return "Apr";
case ABMON_5:
- return "May";
case ABMON_6:
- return "Jun";
case ABMON_7:
- return "Jul";
case ABMON_8:
- return "Aug";
case ABMON_9:
- return "Sep";
case ABMON_10:
- return "Oct";
case ABMON_11:
- return "Nov";
case ABMON_12:
- return "Dec";
+ {
+ 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))
+ return (char *) abmonths[item - ABMON_1];
+ return nlbuf;
+ }
case ERA:
return "";
case ALT_DIGITS:
return "\0\0\0\0\0\0\0\0\0\0";
- /* nl_langinfo items of the LC_MONETARY category
- TODO: Really use the locale. */
+ /* nl_langinfo items of the LC_MONETARY category. */
case CRNCYSTR:
- return "-";
+ return localeconv () ->currency_symbol;
+ case INT_CURR_SYMBOL:
+ return localeconv () ->int_curr_symbol;
+ case MON_DECIMAL_POINT:
+ return localeconv () ->mon_decimal_point;
+ case MON_THOUSANDS_SEP:
+ return localeconv () ->mon_thousands_sep;
+ case MON_GROUPING:
+ return localeconv () ->mon_grouping;
+ case POSITIVE_SIGN:
+ return localeconv () ->positive_sign;
+ case NEGATIVE_SIGN:
+ return localeconv () ->negative_sign;
+ case FRAC_DIGITS:
+ return & localeconv () ->frac_digits;
+ case INT_FRAC_DIGITS:
+ return & localeconv () ->int_frac_digits;
+ case P_CS_PRECEDES:
+ return & localeconv () ->p_cs_precedes;
+ case N_CS_PRECEDES:
+ return & localeconv () ->n_cs_precedes;
+ case P_SEP_BY_SPACE:
+ return & localeconv () ->p_sep_by_space;
+ case N_SEP_BY_SPACE:
+ return & localeconv () ->n_sep_by_space;
+ case P_SIGN_POSN:
+ return & localeconv () ->p_sign_posn;
+ case N_SIGN_POSN:
+ return & localeconv () ->n_sign_posn;
/* nl_langinfo items of the LC_MESSAGES category
TODO: Really use the locale. */
case YESEXPR:
/* Open a descriptor to a file.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This 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 PATH_MAX somehow. Requires sys/types.h.
- Copyright (C) 1992, 1999, 2001, 2003, 2005, 2009-2013 Free Software
+ Copyright (C) 1992, 1999, 2001, 2003, 2005, 2009-2016 Free Software
Foundation, Inc.
This program is free software; you can redistribute it and/or modify
/* Parse arguments from a string and prepend them to an argv.
- Copyright (C) 1999-2002, 2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1999-2002, 2006, 2009-2013, 2015-2016 Free Software
+ Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Decomposed printf argument list.
- Copyright (C) 1999, 2002-2003, 2005-2007, 2009-2013 Free Software
+ Copyright (C) 1999, 2002-2003, 2005-2007, 2009-2016 Free Software
Foundation, Inc.
This program is free software; you can redistribute it and/or modify
/* Decomposed printf argument list.
- Copyright (C) 1999, 2002-2003, 2006-2007, 2011-2013 Free Software
+ Copyright (C) 1999, 2002-2003, 2006-2007, 2011-2016 Free Software
Foundation, Inc.
This program is free software; you can redistribute it and/or modify
/* Formatted output to strings.
- Copyright (C) 1999-2000, 2002-2003, 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 1999-2000, 2002-2003, 2006-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Parse printf format string.
- Copyright (C) 1999, 2002-2003, 2005, 2007, 2010-2013 Free Software
+ Copyright (C) 1999, 2002-2003, 2005, 2007, 2010-2016 Free Software
Foundation, Inc.
This program is free software; you can redistribute it and/or modify
/* Program name management.
- Copyright (C) 2001-2003, 2005-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2003, 2005-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2001.
This program is free software: you can redistribute it and/or modify
/* Program name management.
- Copyright (C) 2001-2004, 2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2004, 2006, 2009-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2001.
This program is free software: you can redistribute it and/or modify
/* Localization of proper names.
- Copyright (C) 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 2006-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2006.
This program is free software: you can redistribute it and/or modify
-/* Localization of proper names.
- Copyright (C) 2006, 2008-2013 Free Software Foundation, Inc.
+/* Localization of proper names. -*- coding: utf-8 -*-
+ Copyright (C) 2006, 2008-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2006.
This program is free software: you can redistribute it and/or modify
have in common?
A non-ASCII name. This causes trouble in the --version output. The simple
- "solution", unfortunately mutilates the name.
+ "solution" unfortunately mutilates the name.
- $ du --version| grep Granlund
+ $ du --version | grep Granlund
Écrit par Torbjorn Granlund, David MacKenzie, Paul Eggert et Jim Meyering.
- $ ptx --version| grep Pinard
+ $ ptx --version | grep Pinard
Écrit par F. Pinard.
What is desirable, is to print the full name if the output character set
output will look like this:
<translated name> (<original name in English>)
- To use the 'propername' module is done in three simple steps:
+ To use the 'propername' module requires three simple steps:
1) Add it to the list of gnulib modules to import,
- 2) Change the arguments of version_etc, from
+ 2) Change the arguments of version_etc(),
from "Paul Eggert"
to proper_name ("Paul Eggert")
/* quote.h - prototypes for quote.c
- Copyright (C) 1998-2001, 2003, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1998-2001, 2003, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* quotearg.c - quote arguments for output
- Copyright (C) 1998-2002, 2004-2013 Free Software Foundation, Inc.
+ Copyright (C) 1998-2002, 2004-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
"literal",
"shell",
"shell-always",
+ "shell-escape",
+ "shell-escape-always",
"c",
"c-maybe",
"escape",
literal_quoting_style,
shell_quoting_style,
shell_always_quoting_style,
+ shell_escape_quoting_style,
+ shell_escape_always_quoting_style,
c_quoting_style,
c_maybe_quoting_style,
escape_quoting_style,
/* Get the value of O's quoting style. If O is null, use the default. */
enum quoting_style
-get_quoting_style (struct quoting_options *o)
+get_quoting_style (struct quoting_options const *o)
{
return (o ? o : &default_quoting_options)->style;
}
static struct quoting_options /* NOT PURE!! */
quoting_options_from_style (enum quoting_style style)
{
- struct quoting_options o = { 0, 0, { 0 }, NULL, NULL };
+ struct quoting_options o = { literal_quoting_style, 0, { 0 }, NULL, NULL };
if (style == custom_quoting_style)
abort ();
o.style = style;
bool backslash_escapes = false;
bool unibyte_locale = MB_CUR_MAX == 1;
bool elide_outer_quotes = (flags & QA_ELIDE_OUTER_QUOTES) != 0;
+ bool pending_shell_escape_end = false;
#define STORE(c) \
do \
} \
while (0)
+#define START_ESC() \
+ do \
+ { \
+ if (elide_outer_quotes) \
+ goto force_outer_quoting_style; \
+ escaping = true; \
+ if (quoting_style == shell_always_quoting_style \
+ && ! pending_shell_escape_end) \
+ { \
+ STORE ('\''); \
+ STORE ('$'); \
+ STORE ('\''); \
+ pending_shell_escape_end = true; \
+ } \
+ STORE ('\\'); \
+ } \
+ while (0)
+
+#define END_ESC() \
+ do \
+ { \
+ if (pending_shell_escape_end && ! escaping) \
+ { \
+ STORE ('\''); \
+ STORE ('\''); \
+ pending_shell_escape_end = false; \
+ } \
+ } \
+ while (0)
+
switch (quoting_style)
{
case c_maybe_quoting_style:
}
break;
+ case shell_escape_quoting_style:
+ backslash_escapes = true;
+ /* Fall through. */
case shell_quoting_style:
- quoting_style = shell_always_quoting_style;
elide_outer_quotes = true;
/* Fall through. */
+ case shell_escape_always_quoting_style:
+ if (!elide_outer_quotes)
+ backslash_escapes = true;
+ /* Fall through. */
case shell_always_quoting_style:
+ quoting_style = shell_always_quoting_style;
if (!elide_outer_quotes)
STORE ('\'');
quote_string = "'";
unsigned char c;
unsigned char esc;
bool is_right_quote = false;
+ bool escaping = false;
if (backslash_escapes
+ && quoting_style != shell_always_quoting_style
&& quote_string_len
- && i + quote_string_len <= argsize
+ && (i + quote_string_len
+ <= (argsize == SIZE_MAX && 1 < quote_string_len
+ /* Use strlen only if we must: when argsize is SIZE_MAX,
+ and when the quote string is more than 1 byte long.
+ If we do call strlen, save the result. */
+ ? (argsize = strlen (arg)) : argsize))
&& memcmp (arg + i, quote_string, quote_string_len) == 0)
{
if (elide_outer_quotes)
case '\0':
if (backslash_escapes)
{
- if (elide_outer_quotes)
- goto force_outer_quoting_style;
- STORE ('\\');
+ START_ESC ();
/* If quote_string were to begin with digits, we'd need to
test for the end of the arg as well. However, it's
hard to imagine any locale that would use digits in
quotes, and set_custom_quoting is documented not to
- accept them. */
- if (i + 1 < argsize && '0' <= arg[i + 1] && arg[i + 1] <= '9')
+ accept them. Use only a single \0 with shell-escape
+ as currently digits are not printed within $'...' */
+ if (quoting_style != shell_always_quoting_style
+ && i + 1 < argsize && '0' <= arg[i + 1] && arg[i + 1] <= '9')
{
STORE ('0');
STORE ('0');
case '\t': esc = 't'; goto c_and_shell_escape;
case '\v': esc = 'v'; goto c_escape;
case '\\': esc = c;
+ /* Never need to escape '\' in shell case. */
+ if (quoting_style == shell_always_quoting_style)
+ {
+ if (elide_outer_quotes)
+ goto force_outer_quoting_style;
+ goto store_c;
+ }
+
/* No need to escape the escape if we are trying to elide
outer quotes and nothing else is problematic. */
if (backslash_escapes && elide_outer_quotes && quote_string_len)
STORE ('\'');
STORE ('\\');
STORE ('\'');
+ pending_shell_escape_end = false;
}
break;
{
if (backslash_escapes && ! printable)
{
- if (elide_outer_quotes)
- goto force_outer_quoting_style;
- STORE ('\\');
+ START_ESC ();
STORE ('0' + (c >> 6));
STORE ('0' + ((c >> 3) & 7));
c = '0' + (c & 7);
}
if (ilim <= i + 1)
break;
+ END_ESC ();
STORE (c);
c = arg[++i];
}
}
}
- if (! ((backslash_escapes || elide_outer_quotes)
+ if (! (((backslash_escapes && quoting_style != shell_always_quoting_style)
+ || elide_outer_quotes)
&& quote_these_too
- && quote_these_too[c / INT_BITS] & (1 << (c % INT_BITS)))
+ && quote_these_too[c / INT_BITS] >> (c % INT_BITS) & 1)
&& !is_right_quote)
goto store_c;
store_escape:
- if (elide_outer_quotes)
- goto force_outer_quoting_style;
- STORE ('\\');
+ START_ESC ();
store_c:
+ END_ESC ();
STORE (c);
}
force_outer_quoting_style:
/* Don't reuse quote_these_too, since the addition of outer quotes
sufficiently quotes the specified characters. */
+ if (quoting_style == shell_always_quoting_style && backslash_escapes)
+ quoting_style = shell_escape_always_quoting_style;
return quotearg_buffer_restyled (buffer, buffersize, arg, argsize,
quoting_style,
flags & ~QA_ELIDE_OUTER_QUOTES, NULL,
}
char *
+quotearg_n_style_colon (int n, enum quoting_style s, char const *arg)
+{
+ struct quoting_options options;
+ options = quoting_options_from_style (s);
+ set_char_quoting (&options, ':', 1);
+ return quotearg_n_options (n, arg, SIZE_MAX, &options);
+}
+
+char *
quotearg_n_custom (int n, char const *left_quote,
char const *right_quote, char const *arg)
{
/* quotearg.h - quote arguments for output
- Copyright (C) 1998-2002, 2004, 2006, 2008-2013 Free Software Foundation,
+ Copyright (C) 1998-2002, 2004, 2006, 2008-2016 Free Software Foundation,
Inc.
This program is free software: you can redistribute it and/or modify
*/
shell_always_quoting_style,
+ /* Quote names for the shell if they contain shell metacharacters
+ or other problematic characters (ls --quoting-style=shell-escape).
+ Non printable characters are quoted using the $'...' syntax,
+ which originated in ksh93 and is widely supported by most shells,
+ and proposed for inclusion in POSIX.
+
+ quotearg_buffer:
+ "simple", "''$'\\0'' '$'\\t\\n'\\''\"'$'\\033''??/\\'", "a:b"
+ quotearg:
+ "simple", "''$'\\0'' '$'\\t\\n'\\''\"'$'\\033''??/\\'", "a:b"
+ quotearg_colon:
+ "simple", "''$'\\0'' '$'\\t\\n'\\''\"'$'\\033''??/\\'", "'a:b'"
+ */
+ shell_escape_quoting_style,
+
+ /* Quote names for the shell even if they would normally not
+ require quoting (ls --quoting-style=shell-escape).
+ Non printable characters are quoted using the $'...' syntax,
+ which originated in ksh93 and is widely supported by most shells,
+ and proposed for inclusion in POSIX. Behaves like
+ shell_escape_quoting_style if QA_ELIDE_OUTER_QUOTES is in effect.
+
+ quotearg_buffer:
+ "simple", "''$'\\0'' '$'\\t\\n'\\''\"'$'\\033''??/\'", "a:b"
+ quotearg:
+ "simple", "''$'\\0'' '$'\\t\\n'\\''\"'$'\\033''??/\'", "a:b"
+ quotearg_colon:
+ "simple", "''$'\\0'' '$'\\t\\n'\\''\"'$'\\033''??/\'", "'a:b'"
+ */
+ shell_escape_always_quoting_style,
+
/* Quote names as for a C language string (ls --quoting-style=c).
Behaves like c_maybe_quoting_style if QA_ELIDE_OUTER_QUOTES is
in effect. Split into consecutive strings if
struct quoting_options *clone_quoting_options (struct quoting_options *o);
/* Get the value of O's quoting style. If O is null, use the default. */
-enum quoting_style get_quoting_style (struct quoting_options *o);
+enum quoting_style get_quoting_style (struct quoting_options const *o);
/* In O (or in the default if O is null),
set the value of the quoting style to S. */
/* Like quotearg_colon (ARG), except it can quote null bytes. */
char *quotearg_colon_mem (char const *arg, size_t argsize);
+/* Like quotearg_n_style, except with ':' quoting enabled. */
+char *quotearg_n_style_colon (int n, enum quoting_style s, char const *arg);
+
/* Like quotearg_n_style (N, S, ARG) but with S as custom_quoting_style
with left quote as LEFT_QUOTE and right quote as RIGHT_QUOTE. See
set_custom_quoting for a description of acceptable LEFT_QUOTE and
/* Provide a non-threads replacement for the POSIX raise function.
- Copyright (C) 2002-2003, 2005-2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002-2003, 2005-2006, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Searching in a string.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ 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>
+
+/* Specification. */
+#include <string.h>
+
+/* Find the first occurrence of C in S. */
+void *
+rawmemchr (const void *s, int c_in)
+{
+ /* On 32-bit hardware, choosing longword to be a 32-bit unsigned
+ long instead of a 64-bit uintmax_t tends to give better
+ performance. On 64-bit hardware, unsigned long is generally 64
+ bits already. Change this typedef to experiment with
+ performance. */
+ typedef unsigned long int longword;
+
+ const unsigned char *char_ptr;
+ const longword *longword_ptr;
+ longword repeated_one;
+ longword repeated_c;
+ unsigned char c;
+
+ c = (unsigned char) c_in;
+
+ /* Handle the first few bytes by reading one byte at a time.
+ Do this until CHAR_PTR is aligned on a longword boundary. */
+ for (char_ptr = (const unsigned char *) s;
+ (size_t) char_ptr % sizeof (longword) != 0;
+ ++char_ptr)
+ if (*char_ptr == c)
+ return (void *) char_ptr;
+
+ longword_ptr = (const longword *) char_ptr;
+
+ /* All these elucidatory comments refer to 4-byte longwords,
+ but the theory applies equally well to any size longwords. */
+
+ /* Compute auxiliary longword values:
+ repeated_one is a value which has a 1 in every byte.
+ repeated_c has c in every byte. */
+ repeated_one = 0x01010101;
+ repeated_c = c | (c << 8);
+ repeated_c |= repeated_c << 16;
+ if (0xffffffffU < (longword) -1)
+ {
+ repeated_one |= repeated_one << 31 << 1;
+ repeated_c |= repeated_c << 31 << 1;
+ if (8 < sizeof (longword))
+ {
+ size_t i;
+
+ for (i = 64; i < sizeof (longword) * 8; i *= 2)
+ {
+ repeated_one |= repeated_one << i;
+ repeated_c |= repeated_c << i;
+ }
+ }
+ }
+
+ /* Instead of the traditional loop which tests each byte, we will
+ test a longword at a time. The tricky part is testing if *any of
+ the four* bytes in the longword in question are equal to NUL or
+ c. We first use an xor with repeated_c. This reduces the task
+ to testing whether *any of the four* bytes in longword1 is zero.
+
+ We compute tmp =
+ ((longword1 - repeated_one) & ~longword1) & (repeated_one << 7).
+ That is, we perform the following operations:
+ 1. Subtract repeated_one.
+ 2. & ~longword1.
+ 3. & a mask consisting of 0x80 in every byte.
+ Consider what happens in each byte:
+ - If a byte of longword1 is zero, step 1 and 2 transform it into 0xff,
+ and step 3 transforms it into 0x80. A carry can also be propagated
+ to more significant bytes.
+ - If a byte of longword1 is nonzero, let its lowest 1 bit be at
+ position k (0 <= k <= 7); so the lowest k bits are 0. After step 1,
+ the byte ends in a single bit of value 0 and k bits of value 1.
+ After step 2, the result is just k bits of value 1: 2^k - 1. After
+ step 3, the result is 0. And no carry is produced.
+ So, if longword1 has only non-zero bytes, tmp is zero.
+ Whereas if longword1 has a zero byte, call j the position of the least
+ significant zero byte. Then the result has a zero at positions 0, ...,
+ j-1 and a 0x80 at position j. We cannot predict the result at the more
+ significant bytes (positions j+1..3), but it does not matter since we
+ already have a non-zero bit at position 8*j+7.
+
+ The test whether any byte in longword1 is zero is equivalent
+ to testing whether tmp is nonzero.
+
+ This test can read beyond the end of a string, depending on where
+ C_IN is encountered. However, this is considered safe since the
+ initialization phase ensured that the read will be aligned,
+ therefore, the read will not cross page boundaries and will not
+ cause a fault. */
+
+ while (1)
+ {
+ longword longword1 = *longword_ptr ^ repeated_c;
+
+ if ((((longword1 - repeated_one) & ~longword1)
+ & (repeated_one << 7)) != 0)
+ break;
+ longword_ptr++;
+ }
+
+ char_ptr = (const unsigned char *) longword_ptr;
+
+ /* At this point, we know that one of the sizeof (longword) bytes
+ starting at char_ptr is == c. On little-endian machines, we
+ could determine the first such byte without any further memory
+ accesses, just by looking at the tmp result from the last loop
+ iteration. But this does not work on big-endian machines.
+ Choose code that works in both cases. */
+
+ char_ptr = (unsigned char *) longword_ptr;
+ while (*char_ptr != c)
+ char_ptr++;
+ return (void *) char_ptr;
+}
--- /dev/null
+# Suppress a valgrind message about use of uninitialized memory in rawmemchr().
+# This use is OK because it provides only a speedup.
+{
+ rawmemchr-value4
+ Memcheck:Value4
+ fun:rawmemchr
+}
+{
+ rawmemchr-value8
+ Memcheck:Value8
+ fun:rawmemchr
+}
/* Stub for readlink().
- Copyright (C) 2003-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2003-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
# Add this package to a list of references stored in a text file.
#
-# Copyright (C) 2000, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2000, 2009-2016 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# Remove this package from a list of references stored in a text file.
#
-# Copyright (C) 2000, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2000, 2009-2016 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
/* Extended regular expression matching and search library.
- Copyright (C) 2002-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002-2016 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
+#ifdef _LIBC
+# include <locale/weight.h>
+#endif
+
static reg_errcode_t re_compile_internal (regex_t *preg, const char * pattern,
size_t length, reg_syntax_t syntax);
static void re_compile_fastmap_iter (regex_t *bufp,
gettext_noop ("Invalid back reference") /* REG_ESUBREG */
"\0"
#define REG_EBRACK_IDX (REG_ESUBREG_IDX + sizeof "Invalid back reference")
- gettext_noop ("Unmatched [ or [^") /* REG_EBRACK */
+ gettext_noop ("Unmatched [, [^, [:, [., or [=") /* REG_EBRACK */
"\0"
-#define REG_EPAREN_IDX (REG_EBRACK_IDX + sizeof "Unmatched [ or [^")
+#define REG_EPAREN_IDX (REG_EBRACK_IDX + sizeof "Unmatched [, [^, [:, [., or [=")
gettext_noop ("Unmatched ( or \\(") /* REG_EPAREN */
"\0"
#define REG_EBRACE_IDX (REG_EPAREN_IDX + sizeof "Unmatched ( or \\(")
Assumes the 'allocated' (and perhaps 'buffer') and 'translate' fields
are set in BUFP on entry. */
-#ifdef _LIBC
-const char *
-re_compile_pattern (pattern, length, bufp)
- const char *pattern;
- size_t length;
- struct re_pattern_buffer *bufp;
-#else /* size_t might promote */
const char *
re_compile_pattern (const char *pattern, size_t length,
struct re_pattern_buffer *bufp)
-#endif
{
reg_errcode_t ret;
defined in regex.h. We return the old syntax. */
reg_syntax_t
-re_set_syntax (syntax)
- reg_syntax_t syntax;
+re_set_syntax (reg_syntax_t syntax)
{
reg_syntax_t ret = re_syntax_options;
#endif
int
-re_compile_fastmap (bufp)
- struct re_pattern_buffer *bufp;
+re_compile_fastmap (struct re_pattern_buffer *bufp)
{
re_dfa_t *dfa = bufp->buffer;
char *fastmap = bufp->fastmap;
memset (&state, '\0', sizeof (state));
if (__mbrtowc (&wc, (const char *) buf, p - buf,
&state) == p - buf
- && (__wcrtomb ((char *) buf, towlower (wc), &state)
+ && (__wcrtomb ((char *) buf, __towlower (wc), &state)
!= (size_t) -1))
re_set_fastmap (fastmap, false, buf[0]);
}
re_set_fastmap (fastmap, icase, *(unsigned char *) buf);
if ((bufp->syntax & RE_ICASE) && dfa->mb_cur_max > 1)
{
- if (__wcrtomb (buf, towlower (cset->mbchars[i]), &state)
+ if (__wcrtomb (buf, __towlower (cset->mbchars[i]), &state)
!= (size_t) -1)
re_set_fastmap (fastmap, false, *(unsigned char *) buf);
}
the return codes and their meanings.) */
int
-regcomp (preg, pattern, cflags)
- regex_t *_Restrict_ preg;
- const char *_Restrict_ pattern;
- int cflags;
+regcomp (regex_t *_Restrict_ preg, const char *_Restrict_ pattern, int cflags)
{
reg_errcode_t ret;
reg_syntax_t syntax = ((cflags & REG_EXTENDED) ? RE_SYNTAX_POSIX_EXTENDED
/* Returns a message corresponding to an error code, ERRCODE, returned
from either regcomp or regexec. We don't use PREG here. */
-#ifdef _LIBC
size_t
-regerror (errcode, preg, errbuf, errbuf_size)
- int errcode;
- const regex_t *_Restrict_ preg;
- char *_Restrict_ errbuf;
- size_t errbuf_size;
-#else /* size_t might promote */
-size_t
-regerror (int errcode, const regex_t *_Restrict_ preg _UNUSED_PARAMETER_,
- char *_Restrict_ errbuf, size_t errbuf_size)
-#endif
+regerror (int errcode, const regex_t *_Restrict_ preg, char *_Restrict_ errbuf,
+ size_t errbuf_size)
{
const char *msg;
size_t msg_size;
static const bitset_t utf8_sb_map =
{
/* Set the first 128 bits. */
-# ifdef __GNUC__
+# if defined __GNUC__ && !defined __STRICT_ANSI__
[0 ... 0x80 / BITSET_WORD_BITS - 1] = BITSET_WORD_MAX
# else
# if 4 * BITSET_WORD_BITS < ASCII_CHARS
/* Free dynamically allocated space used by PREG. */
void
-regfree (preg)
- regex_t *preg;
+regfree (regex_t *preg)
{
re_dfa_t *dfa = preg->buffer;
if (BE (dfa != NULL, 1))
- free_dfa_content (dfa);
+ {
+ lock_fini (dfa->lock);
+ free_dfa_content (dfa);
+ }
preg->buffer = NULL;
preg->allocated = 0;
regcomp/regexec above without link errors. */
weak_function
# endif
-re_comp (s)
- const char *s;
+re_comp (const char *s)
{
reg_errcode_t ret;
char *fastmap;
preg->used = sizeof (re_dfa_t);
err = init_dfa (dfa, length);
+ if (BE (err == REG_NOERROR && lock_init (dfa->lock) != 0, 0))
+ err = REG_ESPACE;
if (BE (err != REG_NOERROR, 0))
{
free_dfa_content (dfa);
strncpy (dfa->re_str, pattern, length + 1);
#endif
- __libc_lock_init (dfa->lock);
-
err = re_string_construct (®exp, pattern, length, preg->translate,
(syntax & RE_ICASE) != 0, dfa);
if (BE (err != REG_NOERROR, 0))
re_compile_internal_free_return:
free_workarea_compile (preg);
re_string_destruct (®exp);
+ lock_fini (dfa->lock);
free_dfa_content (dfa);
preg->buffer = NULL;
preg->allocated = 0;
if (BE (err != REG_NOERROR, 0))
{
+ lock_fini (dfa->lock);
free_dfa_content (dfa);
preg->buffer = NULL;
preg->allocated = 0;
{
node->first = node;
node->node_idx = re_dfa_add_node (dfa, node->token);
- if (BE (node->node_idx == REG_MISSING, 0))
+ if (BE (node->node_idx == -1, 0))
return REG_ESPACE;
if (node->token.type == ANCHOR)
dfa->nodes[node->node_idx].constraint = node->token.opr.ctx_type;
/* Pass 2: compute NEXT on the tree. Preorder visit. */
static reg_errcode_t
-calc_next (void *extra _UNUSED_PARAMETER_, bin_tree_t *node)
+calc_next (void *extra, bin_tree_t *node)
{
switch (node->token.type)
{
right = node->right->first->node_idx;
else
right = node->next->node_idx;
- assert (REG_VALID_INDEX (left));
- assert (REG_VALID_INDEX (right));
+ assert (left > -1);
+ assert (right > -1);
err = re_node_set_init_2 (dfa->edests + idx, left, right);
}
break;
org_dest = dfa->nexts[org_node];
re_node_set_empty (dfa->edests + clone_node);
clone_dest = duplicate_node (dfa, org_dest, constraint);
- if (BE (clone_dest == REG_MISSING, 0))
+ if (BE (clone_dest == -1, 0))
return REG_ESPACE;
dfa->nexts[clone_node] = dfa->nexts[org_node];
ok = re_node_set_insert (dfa->edests + clone_node, clone_dest);
/* In case the node has another constraint, append it. */
constraint |= dfa->nodes[org_node].constraint;
clone_dest = duplicate_node (dfa, org_dest, constraint);
- if (BE (clone_dest == REG_MISSING, 0))
+ if (BE (clone_dest == -1, 0))
return REG_ESPACE;
ok = re_node_set_insert (dfa->edests + clone_node, clone_dest);
if (BE (! ok, 0))
re_node_set_empty (dfa->edests + clone_node);
/* Search for a duplicated node which satisfies the constraint. */
clone_dest = search_duplicated_node (dfa, org_dest, constraint);
- if (clone_dest == REG_MISSING)
+ if (clone_dest == -1)
{
/* There is no such duplicated node, create a new one. */
reg_errcode_t err;
clone_dest = duplicate_node (dfa, org_dest, constraint);
- if (BE (clone_dest == REG_MISSING, 0))
+ if (BE (clone_dest == -1, 0))
return REG_ESPACE;
ok = re_node_set_insert (dfa->edests + clone_node, clone_dest);
if (BE (! ok, 0))
org_dest = dfa->edests[org_node].elems[1];
clone_dest = duplicate_node (dfa, org_dest, constraint);
- if (BE (clone_dest == REG_MISSING, 0))
+ if (BE (clone_dest == -1, 0))
return REG_ESPACE;
ok = re_node_set_insert (dfa->edests + clone_node, clone_dest);
if (BE (! ok, 0))
&& constraint == dfa->nodes[idx].constraint)
return idx; /* Found. */
}
- return REG_MISSING; /* Not found. */
+ return -1; /* Not found. */
}
/* Duplicate the node whose index is ORG_IDX and set the constraint CONSTRAINT.
- Return the index of the new node, or REG_MISSING if insufficient storage is
+ Return the index of the new node, or -1 if insufficient storage is
available. */
static Idx
duplicate_node (re_dfa_t *dfa, Idx org_idx, unsigned int constraint)
{
Idx dup_idx = re_dfa_add_node (dfa, dfa->nodes[org_idx]);
- if (BE (dup_idx != REG_MISSING, 1))
+ if (BE (dup_idx != -1, 1))
{
dfa->nodes[dup_idx].constraint = constraint;
dfa->nodes[dup_idx].constraint |= dfa->nodes[org_idx].constraint;
}
#ifdef DEBUG
- assert (dfa->eclosures[node_idx].nelem != REG_MISSING);
+ assert (dfa->eclosures[node_idx].nelem != -1);
#endif
/* If we have already calculated, skip it. */
/* This indicates that we are calculating this node now.
We reference this value to avoid infinite loop. */
- dfa->eclosures[node].nelem = REG_MISSING;
+ dfa->eclosures[node].nelem = -1;
/* If the current node has constraints, duplicate all nodes
since they must inherit the constraints. */
Idx edest = dfa->edests[node].elems[i];
/* If calculating the epsilon closure of 'edest' is in progress,
return intermediate result. */
- if (dfa->eclosures[edest].nelem == REG_MISSING)
+ if (dfa->eclosures[edest].nelem == -1)
{
incomplete = true;
continue;
{
re_dfa_t *dfa = preg->buffer;
bin_tree_t *tree, *branch = NULL;
+ bitset_word_t initial_bkref_map = dfa->completed_bkref_map;
tree = parse_branch (regexp, preg, token, syntax, nest, err);
if (BE (*err != REG_NOERROR && tree == NULL, 0))
return NULL;
if (token->type != OP_ALT && token->type != END_OF_RE
&& (nest == 0 || token->type != OP_CLOSE_SUBEXP))
{
+ bitset_word_t accumulated_bkref_map = dfa->completed_bkref_map;
+ dfa->completed_bkref_map = initial_bkref_map;
branch = parse_branch (regexp, preg, token, syntax, nest, err);
if (BE (*err != REG_NOERROR && branch == NULL, 0))
- return NULL;
+ {
+ if (tree != NULL)
+ postorder (tree, free_tree, NULL);
+ return NULL;
+ }
+ dfa->completed_bkref_map |= accumulated_bkref_map;
}
else
branch = NULL;
while (token->type == OP_DUP_ASTERISK || token->type == OP_DUP_PLUS
|| token->type == OP_DUP_QUESTION || token->type == OP_OPEN_DUP_NUM)
{
- tree = parse_dup_op (tree, regexp, dfa, token, syntax, err);
- if (BE (*err != REG_NOERROR && tree == NULL, 0))
- return NULL;
+ bin_tree_t *dup_tree = parse_dup_op (tree, regexp, dfa, token,
+ syntax, err);
+ if (BE (*err != REG_NOERROR && dup_tree == NULL, 0))
+ {
+ if (tree != NULL)
+ postorder (tree, free_tree, NULL);
+ return NULL;
+ }
+ tree = dup_tree;
/* In BRE consecutive duplications are not allowed. */
if ((syntax & RE_CONTEXT_INVALID_DUP)
&& (token->type == OP_DUP_ASTERISK
|| token->type == OP_OPEN_DUP_NUM))
{
+ if (tree != NULL)
+ postorder (tree, free_tree, NULL);
*err = REG_BADRPT;
return NULL;
}
{
end = 0;
start = fetch_number (regexp, token, syntax);
- if (start == REG_MISSING)
+ if (start == -1)
{
if (token->type == CHARACTER && token->opr.c == ',')
start = 0; /* We treat "{,m}" as "{0,m}". */
return NULL;
}
}
- if (BE (start != REG_ERROR, 1))
+ if (BE (start != -2, 1))
{
/* We treat "{n}" as "{n,n}". */
end = ((token->type == OP_CLOSE_DUP_NUM) ? start
: ((token->type == CHARACTER && token->opr.c == ',')
- ? fetch_number (regexp, token, syntax) : REG_ERROR));
+ ? fetch_number (regexp, token, syntax) : -2));
}
- if (BE (start == REG_ERROR || end == REG_ERROR, 0))
+ if (BE (start == -2 || end == -2, 0))
{
/* Invalid sequence. */
if (BE (!(syntax & RE_INVALID_INTERVAL_ORD), 0))
return elem;
}
- if (BE ((end != REG_MISSING && start > end)
+ if (BE ((end != -1 && start > end)
|| token->type != OP_CLOSE_DUP_NUM, 0))
{
/* First number greater than second. */
return NULL;
}
- if (BE (RE_DUP_MAX < (end == REG_MISSING ? start : end), 0))
+ if (BE (RE_DUP_MAX < (end == -1 ? start : end), 0))
{
*err = REG_ESIZE;
return NULL;
else
{
start = (token->type == OP_DUP_PLUS) ? 1 : 0;
- end = (token->type == OP_DUP_QUESTION) ? 1 : REG_MISSING;
+ end = (token->type == OP_DUP_QUESTION) ? 1 : -1;
}
fetch_token (token, regexp, syntax);
/* Duplicate ELEM before it is marked optional. */
elem = duplicate_tree (elem, dfa);
+ if (BE (elem == NULL, 0))
+ goto parse_dup_op_espace;
old_tree = tree;
}
else
}
tree = create_tree (dfa, elem, NULL,
- (end == REG_MISSING ? OP_DUP_ASTERISK : OP_ALT));
+ (end == -1 ? OP_DUP_ASTERISK : OP_ALT));
if (BE (tree == NULL, 0))
goto parse_dup_op_espace;
True if the arithmetic type T is signed. */
#define TYPE_SIGNED(t) (! ((t) 0 < (t) -1))
- /* This loop is actually executed only when end != REG_MISSING,
+ /* This loop is actually executed only when end != -1,
to rewrite <re>{0,n} as (<re>(<re>...<re>?)?)?... We have
already created the start+1-th copy. */
- if (TYPE_SIGNED (Idx) || end != REG_MISSING)
+ if (TYPE_SIGNED (Idx) || end != -1)
for (i = start + 2; i <= end; ++i)
{
elem = duplicate_tree (elem, dfa);
#define BRACKET_NAME_BUF_SIZE 32
#ifndef _LIBC
+
+# ifdef RE_ENABLE_I18N
+/* Convert the byte B to the corresponding wide character. In a
+ unibyte locale, treat B as itself if it is an encoding error.
+ In a multibyte locale, return WEOF if B is an encoding error. */
+static wint_t
+parse_byte (unsigned char b, re_charset_t *mbcset)
+{
+ wint_t wc = __btowc (b);
+ return wc == WEOF && !mbcset ? b : wc;
+}
+#endif
+
/* Local function for parse_bracket_exp only used in case of NOT _LIBC.
Build the range expression which starts from START_ELEM, and ends
at END_ELEM. The result are written to MBCSET and SBCSET.
: ((end_elem->type == COLL_SYM) ? end_elem->opr.name[0]
: 0));
start_wc = ((start_elem->type == SB_CHAR || start_elem->type == COLL_SYM)
- ? __btowc (start_ch) : start_elem->opr.wch);
+ ? parse_byte (start_ch, mbcset) : start_elem->opr.wch);
end_wc = ((end_elem->type == SB_CHAR || end_elem->type == COLL_SYM)
- ? __btowc (end_ch) : end_elem->opr.wch);
+ ? parse_byte (end_ch, mbcset) : end_elem->opr.wch);
if (start_wc == WEOF || end_wc == WEOF)
return REG_ECOLLATE;
else if (BE ((syntax & RE_NO_EMPTY_RANGES) && start_wc > end_wc, 0))
new_nranges);
if (BE (new_array_start == NULL || new_array_end == NULL, 0))
- return REG_ESPACE;
+ {
+ re_free (new_array_start);
+ re_free (new_array_end);
+ return REG_ESPACE;
+ }
mbcset->range_starts = new_array_start;
mbcset->range_ends = new_array_end;
static reg_errcode_t
internal_function
# ifdef RE_ENABLE_I18N
-build_collating_symbol (bitset_t sbcset,
- re_charset_t *mbcset _UNUSED_PARAMETER_,
- Idx *coll_sym_alloc _UNUSED_PARAMETER_,
- const unsigned char *name)
+build_collating_symbol (bitset_t sbcset, re_charset_t *mbcset,
+ Idx *coll_sym_alloc, const unsigned char *name)
# else /* not RE_ENABLE_I18N */
build_collating_symbol (bitset_t sbcset, const unsigned char *name)
# endif /* not RE_ENABLE_I18N */
re_token_t token2;
start_elem.opr.name = start_name_buf;
+ start_elem.type = COLL_SYM;
ret = parse_bracket_element (&start_elem, regexp, token, token_len, dfa,
syntax, first_round);
if (BE (ret != REG_NOERROR, 0))
if (is_range_exp == true)
{
end_elem.opr.name = end_name_buf;
+ end_elem.type = COLL_SYM;
ret = parse_bracket_element (&end_elem, regexp, &token2, token_len2,
dfa, syntax, true);
if (BE (ret != REG_NOERROR, 0))
static reg_errcode_t
parse_bracket_element (bracket_elem_t *elem, re_string_t *regexp,
- re_token_t *token, int token_len,
- re_dfa_t *dfa _UNUSED_PARAMETER_,
+ re_token_t *token, int token_len, re_dfa_t *dfa,
reg_syntax_t syntax, bool accept_hyphen)
{
#ifdef RE_ENABLE_I18N
static reg_errcode_t
#ifdef RE_ENABLE_I18N
-build_equiv_class (bitset_t sbcset, re_charset_t *mbcset _UNUSED_PARAMETER_,
- Idx *equiv_class_alloc _UNUSED_PARAMETER_,
- const unsigned char *name)
+build_equiv_class (bitset_t sbcset, re_charset_t *mbcset,
+ Idx *equiv_class_alloc, const unsigned char *name)
#else /* not RE_ENABLE_I18N */
build_equiv_class (bitset_t sbcset, const unsigned char *name)
#endif /* not RE_ENABLE_I18N */
int32_t idx1, idx2;
unsigned int ch;
size_t len;
- /* This #include defines a local function! */
-# include <locale/weight.h>
/* Calculate the index for equivalence class. */
cp = name;
table = (const int32_t *) _NL_CURRENT (LC_COLLATE, _NL_COLLATE_TABLEMB);
_NL_COLLATE_EXTRAMB);
indirect = (const int32_t *) _NL_CURRENT (LC_COLLATE,
_NL_COLLATE_INDIRECTMB);
- idx1 = findidx (&cp, -1);
+ idx1 = findidx (table, indirect, extra, &cp, -1);
if (BE (idx1 == 0 || *cp != '\0', 0))
/* This isn't a valid character. */
return REG_ECOLLATE;
{
char_buf[0] = ch;
cp = char_buf;
- idx2 = findidx (&cp, 1);
+ idx2 = findidx (table, indirect, extra, &cp, 1);
/*
idx2 = table[ch];
*/
bin_tree_t *tree;
sbcset = (re_bitset_ptr_t) calloc (sizeof (bitset_t), 1);
-#ifdef RE_ENABLE_I18N
- mbcset = (re_charset_t *) calloc (sizeof (re_charset_t), 1);
-#endif /* RE_ENABLE_I18N */
-
-#ifdef RE_ENABLE_I18N
- if (BE (sbcset == NULL || mbcset == NULL, 0))
-#else /* not RE_ENABLE_I18N */
if (BE (sbcset == NULL, 0))
-#endif /* not RE_ENABLE_I18N */
{
*err = REG_ESPACE;
return NULL;
}
-
- if (non_match)
- {
#ifdef RE_ENABLE_I18N
- mbcset->non_match = 1;
-#endif /* not RE_ENABLE_I18N */
+ mbcset = (re_charset_t *) calloc (sizeof (re_charset_t), 1);
+ if (BE (mbcset == NULL, 0))
+ {
+ re_free (sbcset);
+ *err = REG_ESPACE;
+ return NULL;
}
+ mbcset->non_match = non_match;
+#endif /* RE_ENABLE_I18N */
/* We don't care the syntax in this case. */
ret = build_charclass (trans, sbcset,
#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;
tree = create_token_tree (dfa, NULL, NULL, &br_token);
/* This is intended for the expressions like "a{1,3}".
Fetch a number from 'input', and return the number.
- Return REG_MISSING if the number field is empty like "{,1}".
+ Return -1 if the number field is empty like "{,1}".
Return RE_DUP_MAX + 1 if the number field is too large.
- Return REG_ERROR if an error occurred. */
+ Return -2 if an error occurred. */
static Idx
fetch_number (re_string_t *input, re_token_t *token, reg_syntax_t syntax)
{
- Idx num = REG_MISSING;
+ Idx num = -1;
unsigned char c;
while (1)
{
fetch_token (token, input, syntax);
c = token->opr.c;
if (BE (token->type == END_OF_RE, 0))
- return REG_ERROR;
+ return -2;
if (token->type == OP_CLOSE_DUP_NUM || c == ',')
break;
- num = ((token->type != CHARACTER || c < '0' || '9' < c
- || num == REG_ERROR)
- ? REG_ERROR
- : num == REG_MISSING
+ num = ((token->type != CHARACTER || c < '0' || '9' < c || num == -2)
+ ? -2
+ : num == -1
? c - '0'
: MIN (RE_DUP_MAX + 1, num * 10 + c - '0'));
}
re_token_type_t type)
{
re_token_t t;
+#if defined GCC_LINT || defined lint
+ memset (&t, 0, sizeof t);
+#endif
t.type = type;
return create_token_tree (dfa, left, right, &t);
}
tree->token.opt_subexp = 0;
tree->first = NULL;
tree->next = NULL;
- tree->node_idx = REG_MISSING;
+ tree->node_idx = -1;
if (left != NULL)
left->parent = tree;
and its children. */
static reg_errcode_t
-free_tree (void *extra _UNUSED_PARAMETER_, bin_tree_t *node)
+free_tree (void *extra, bin_tree_t *node)
{
free_token (&node->token);
return REG_NOERROR;
/* Extended regular expression matching and search library.
- Copyright (C) 2002-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002-2016 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
/* Definitions for data structures and routines for the regular
expression library.
- Copyright (C) 1985, 1989-1993, 1995-1998, 2000-2003, 2005-2013 Free Software
+ Copyright (C) 1985, 1989-1993, 1995-1998, 2000-2003, 2005-2016 Free Software
Foundation, Inc.
This file is part of the GNU C Library.
supported within glibc itself, and glibc users should not define
_REGEX_LARGE_OFFSETS. */
-/* The type of nonnegative object indexes. Traditionally, GNU regex
- uses 'int' for these. Code that uses __re_idx_t should work
- regardless of whether the type is signed. */
-typedef size_t __re_idx_t;
-
/* The type of object sizes. */
typedef size_t __re_size_t;
/* The traditional GNU regex implementation mishandles strings longer
than INT_MAX. */
-typedef int __re_idx_t;
typedef unsigned int __re_size_t;
typedef unsigned long int __re_long_size_t;
| RE_INVALID_INTERVAL_ORD)
# define RE_SYNTAX_GREP \
- (RE_BK_PLUS_QM | RE_CHAR_CLASSES \
- | RE_HAT_LISTS_NOT_NEWLINE | RE_INTERVALS \
- | RE_NEWLINE_ALT)
+ ((RE_SYNTAX_POSIX_BASIC | RE_NEWLINE_ALT) \
+ & ~(RE_CONTEXT_INVALID_DUP | RE_DOT_NOT_NULL))
# define RE_SYNTAX_EGREP \
- (RE_CHAR_CLASSES | RE_CONTEXT_INDEP_ANCHORS \
- | RE_CONTEXT_INDEP_OPS | RE_HAT_LISTS_NOT_NEWLINE \
- | RE_NEWLINE_ALT | RE_NO_BK_PARENS \
- | RE_NO_BK_VBAR)
+ ((RE_SYNTAX_POSIX_EXTENDED | RE_INVALID_INTERVAL_ORD | RE_NEWLINE_ALT) \
+ & ~(RE_CONTEXT_INVALID_OPS | RE_DOT_NOT_NULL))
+/* POSIX grep -E behavior is no longer incompatible with GNU. */
# define RE_SYNTAX_POSIX_EGREP \
- (RE_SYNTAX_EGREP | RE_INTERVALS | RE_NO_BK_BRACES \
- | RE_INVALID_INTERVAL_ORD)
+ RE_SYNTAX_EGREP
/* P1003.2/D11.2, section 4.20.7.1, lines 5078ff. */
# define RE_SYNTAX_ED RE_SYNTAX_POSIX_BASIC
#ifdef _REGEX_LARGE_OFFSETS
/* POSIX 1003.1-2008 requires that regoff_t be at least as wide as
ptrdiff_t and ssize_t. We don't know of any hosts where ptrdiff_t
- is wider than ssize_t, so ssize_t is safe. */
+ is wider than ssize_t, so ssize_t is safe. ptrdiff_t is not
+ visible here, so use ssize_t. */
typedef ssize_t regoff_t;
#else
/* The traditional GNU regex implementation mishandles strings longer
BUFFER. Return NULL if successful, and an error string if not.
To free the allocated storage, you must call 'regfree' on BUFFER.
- Note that the translate table must either have been initialised by
+ Note that the translate table must either have been initialized by
'regcomp', with a malloc'ed value, or set to NULL before calling
'regfree'. */
extern const char *re_compile_pattern (const char *__pattern, size_t __length,
match, or -2 for an internal error. Also return register
information in REGS (if REGS and BUFFER->no_sub are nonzero). */
extern regoff_t re_search (struct re_pattern_buffer *__buffer,
- const char *__string, __re_idx_t __length,
- __re_idx_t __start, regoff_t __range,
+ const char *__string, regoff_t __length,
+ regoff_t __start, regoff_t __range,
struct re_registers *__regs);
/* Like 're_search', but search in the concatenation of STRING1 and
STRING2. Also, stop searching at index START + STOP. */
extern regoff_t re_search_2 (struct re_pattern_buffer *__buffer,
- const char *__string1, __re_idx_t __length1,
- const char *__string2, __re_idx_t __length2,
- __re_idx_t __start, regoff_t __range,
+ const char *__string1, regoff_t __length1,
+ const char *__string2, regoff_t __length2,
+ regoff_t __start, regoff_t __range,
struct re_registers *__regs,
- __re_idx_t __stop);
+ regoff_t __stop);
/* Like 're_search', but return how many characters in STRING the regexp
in BUFFER matched, starting at position START. */
extern regoff_t re_match (struct re_pattern_buffer *__buffer,
- const char *__string, __re_idx_t __length,
- __re_idx_t __start, struct re_registers *__regs);
+ const char *__string, regoff_t __length,
+ regoff_t __start, struct re_registers *__regs);
/* Relates to 're_match' as 're_search_2' relates to 're_search'. */
extern regoff_t re_match_2 (struct re_pattern_buffer *__buffer,
- const char *__string1, __re_idx_t __length1,
- const char *__string2, __re_idx_t __length2,
- __re_idx_t __start, struct re_registers *__regs,
- __re_idx_t __stop);
+ const char *__string1, regoff_t __length1,
+ const char *__string2, regoff_t __length2,
+ regoff_t __start, struct re_registers *__regs,
+ regoff_t __stop);
/* Set REGS to hold NUM_REGS registers, storing them in STARTS and
regoff_t *__starts, regoff_t *__ends);
#endif /* Use GNU */
-#if defined _REGEX_RE_COMP || (defined _LIBC && defined __USE_BSD)
+#if defined _REGEX_RE_COMP || (defined _LIBC && defined __USE_MISC)
# ifndef _CRAY
/* 4.2 bsd compatibility. */
extern char *re_comp (const char *);
/* Extended regular expression matching and search library.
- Copyright (C) 2002-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002-2016 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include "verify.h"
-#include "intprops.h"
static void re_string_construct_common (const char *str, Idx len,
re_string_t *pstr,
RE_TRANSLATE_TYPE trans, bool icase,
+ byte_idx), remain_len, &pstr->cur_state);
if (BE (mbclen < (size_t) -2, 1))
{
- wchar_t wcu = wc;
- if (iswlower (wc))
+ wchar_t wcu = __towupper (wc);
+ if (wcu != wc)
{
size_t mbcdlen;
- wcu = towupper (wc);
- mbcdlen = wcrtomb (buf, wcu, &prev_st);
+ mbcdlen = __wcrtomb (buf, wcu, &prev_st);
if (BE (mbclen == mbcdlen, 1))
memcpy (pstr->mbs + byte_idx, buf, mbclen);
else
mbclen = __mbrtowc (&wc, p, remain_len, &pstr->cur_state);
if (BE (mbclen < (size_t) -2, 1))
{
- wchar_t wcu = wc;
- if (iswlower (wc))
+ wchar_t wcu = __towupper (wc);
+ if (wcu != wc)
{
size_t mbcdlen;
- wcu = towupper (wc);
mbcdlen = wcrtomb ((char *) buf, wcu, &prev_st);
if (BE (mbclen == mbcdlen, 1))
memcpy (pstr->mbs + byte_idx, buf, mbclen);
int ch = pstr->raw_mbs[pstr->raw_mbs_idx + char_idx];
if (BE (pstr->trans != NULL, 0))
ch = pstr->trans[ch];
- if (islower (ch))
- pstr->mbs[char_idx] = toupper (ch);
- else
- pstr->mbs[char_idx] = ch;
+ pstr->mbs[char_idx] = toupper (ch);
}
pstr->valid_len = char_idx;
pstr->valid_raw_len = char_idx;
pstr->valid_len - offset);
pstr->valid_len -= offset;
pstr->valid_raw_len -= offset;
-#if DEBUG
+#if defined DEBUG && DEBUG
assert (pstr->valid_len > 0);
#endif
}
re_string_context_at (const re_string_t *input, Idx idx, int eflags)
{
int c;
- if (BE (! REG_VALID_INDEX (idx), 0))
+ if (BE (idx < 0, 0))
/* In this case, we use the value stored in input->tip_context,
since we can't know the character in input->mbs[-1] here. */
return input->tip_context;
Idx wc_idx = idx;
while(input->wcs[wc_idx] == WEOF)
{
-#ifdef DEBUG
+#if defined DEBUG && DEBUG
/* It must not happen. */
- assert (REG_VALID_INDEX (wc_idx));
+ assert (wc_idx >= 0);
#endif
--wc_idx;
- if (! REG_VALID_INDEX (wc_idx))
+ if (wc_idx < 0)
return input->tip_context;
}
wc = input->wcs[wc_idx];
if (src1->elems[i1] == src2->elems[i2])
{
/* Try to find the item in DEST. Maybe we could binary search? */
- while (REG_VALID_INDEX (id) && dest->elems[id] > src1->elems[i1])
+ while (id >= 0 && dest->elems[id] > src1->elems[i1])
--id;
- if (! REG_VALID_INDEX (id) || dest->elems[id] != src1->elems[i1])
+ if (id < 0 || dest->elems[id] != src1->elems[i1])
dest->elems[--sbase] = src1->elems[i1];
- if (! REG_VALID_INDEX (--i1) || ! REG_VALID_INDEX (--i2))
+ if (--i1 < 0 || --i2 < 0)
break;
}
/* Lower the highest of the two items. */
else if (src1->elems[i1] < src2->elems[i2])
{
- if (! REG_VALID_INDEX (--i2))
+ if (--i2 < 0)
break;
}
else
{
- if (! REG_VALID_INDEX (--i1))
+ if (--i1 < 0)
break;
}
}
DEST elements are already in place; this is more or
less the same loop that is in re_node_set_merge. */
dest->nelem += delta;
- if (delta > 0 && REG_VALID_INDEX (id))
+ if (delta > 0 && id >= 0)
for (;;)
{
if (dest->elems[is] > dest->elems[id])
{
/* Slide from the bottom. */
dest->elems[id + delta] = dest->elems[id];
- if (! REG_VALID_INDEX (--id))
+ if (--id < 0)
break;
}
}
/* Copy into the top of DEST the items of SRC that are not
found in DEST. Maybe we could binary search in DEST? */
for (sbase = dest->nelem + 2 * src->nelem,
- is = src->nelem - 1, id = dest->nelem - 1;
- REG_VALID_INDEX (is) && REG_VALID_INDEX (id); )
+ is = src->nelem - 1, id = dest->nelem - 1; is >= 0 && id >= 0; )
{
if (dest->elems[id] == src->elems[is])
is--, id--;
--id;
}
- if (REG_VALID_INDEX (is))
+ if (is >= 0)
{
/* If DEST is exhausted, the remaining items of SRC must be unique. */
sbase -= is + 1;
{
/* Slide from the bottom. */
dest->elems[id + delta] = dest->elems[id];
- if (! REG_VALID_INDEX (--id))
+ if (--id < 0)
{
/* Copy remaining SRC elements. */
memcpy (dest->elems, dest->elems + sbase,
Idx i;
if (set1 == NULL || set2 == NULL || set1->nelem != set2->nelem)
return false;
- for (i = set1->nelem ; REG_VALID_INDEX (--i) ; )
+ for (i = set1->nelem ; --i >= 0 ; )
if (set1->elems[i] != set2->elems[i])
return false;
return true;
re_node_set_contains (const re_node_set *set, Idx elem)
{
__re_size_t idx, right, mid;
- if (! REG_VALID_NONZERO_INDEX (set->nelem))
+ if (set->nelem <= 0)
return 0;
/* Binary search the element. */
internal_function
re_node_set_remove_at (re_node_set *set, Idx idx)
{
- verify (! TYPE_SIGNED (Idx));
- /* if (idx < 0)
- return; */
- if (idx >= set->nelem)
+ if (idx < 0 || idx >= set->nelem)
return;
--set->nelem;
for (; idx < set->nelem; idx++)
\f
/* Add the token TOKEN to dfa->nodes, and return the index of the token.
- Or return REG_MISSING if an error occurred. */
+ Or return -1 if an error occurred. */
static Idx
internal_function
MAX (sizeof (re_node_set),
sizeof (Idx)));
if (BE (MIN (IDX_MAX, SIZE_MAX / max_object_size) < new_nodes_alloc, 0))
- return REG_MISSING;
+ return -1;
new_nodes = re_realloc (dfa->nodes, re_token_t, new_nodes_alloc);
if (BE (new_nodes == NULL, 0))
- return REG_MISSING;
+ return -1;
dfa->nodes = new_nodes;
new_nexts = re_realloc (dfa->nexts, Idx, new_nodes_alloc);
new_indices = re_realloc (dfa->org_indices, Idx, new_nodes_alloc);
new_eclosures = re_realloc (dfa->eclosures, re_node_set, new_nodes_alloc);
if (BE (new_nexts == NULL || new_indices == NULL
|| new_edests == NULL || new_eclosures == NULL, 0))
- return REG_MISSING;
+ {
+ re_free (new_nexts);
+ re_free (new_indices);
+ re_free (new_edests);
+ re_free (new_eclosures);
+ return -1;
+ }
dfa->nexts = new_nexts;
dfa->org_indices = new_indices;
dfa->edests = new_edests;
((token.type == OP_PERIOD && dfa->mb_cur_max > 1)
|| token.type == COMPLEX_BRACKET);
#endif
- dfa->nexts[dfa->nodes_len] = REG_MISSING;
+ dfa->nexts[dfa->nodes_len] = -1;
re_node_set_init_empty (dfa->edests + dfa->nodes_len);
re_node_set_init_empty (dfa->eclosures + dfa->nodes_len);
return dfa->nodes_len++;
re_dfastate_t *new_state;
struct re_state_table_entry *spot;
Idx i;
-#ifdef lint
+#if defined GCC_LINT || defined lint
/* Suppress bogus uninitialized-variable warnings. */
*err = REG_NOERROR;
#endif
re_dfastate_t *new_state;
struct re_state_table_entry *spot;
Idx i;
-#ifdef lint
+#if defined GCC_LINT || defined lint
/* Suppress bogus uninitialized-variable warnings. */
*err = REG_NOERROR;
#endif
/* Extended regular expression matching and search library.
- Copyright (C) 2002-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002-2016 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
#include <wctype.h>
#include <stdbool.h>
#include <stdint.h>
-#if defined _LIBC
-# include <bits/libc-lock.h>
+
+#ifdef _LIBC
+# include <libc-lock.h>
+# define lock_define(name) __libc_lock_define (, name)
+# define lock_init(lock) (__libc_lock_init (lock), 0)
+# define lock_fini(lock) 0
+# define lock_lock(lock) __libc_lock_lock (lock)
+# 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_init(lock) glthread_lock_init (&(lock))
+# define lock_fini(lock) glthread_lock_destroy (&(lock))
+# define lock_lock(lock) glthread_lock_lock (&(lock))
+# define lock_unlock(lock) glthread_lock_unlock (&(lock))
+#elif defined GNULIB_PTHREAD && !defined USE_UNLOCKED_IO
+# include <pthread.h>
+# define lock_define(name) pthread_mutex_t name;
+# define lock_init(lock) pthread_mutex_init (&(lock), 0)
+# define lock_fini(lock) pthread_mutex_destroy (&(lock))
+# define lock_lock(lock) pthread_mutex_lock (&(lock))
+# define lock_unlock(lock) pthread_mutex_unlock (&(lock))
#else
-# define __libc_lock_init(NAME) do { } while (0)
-# define __libc_lock_lock(NAME) do { } while (0)
-# define __libc_lock_unlock(NAME) do { } while (0)
+# define lock_define(name)
+# define lock_init(lock) 0
+# define lock_fini(lock) ((void) 0)
+ /* The 'dfa' avoids an "unused variable 'dfa'" warning from GCC. */
+# define lock_lock(lock) ((void) dfa)
+# define lock_unlock(lock) ((void) 0)
#endif
/* In case that the system doesn't have isblank(). */
# ifndef _RE_DEFINE_LOCALE_FUNCTIONS
# define _RE_DEFINE_LOCALE_FUNCTIONS 1
# include <locale/localeinfo.h>
-# include <locale/elem-hash.h>
# include <locale/coll-lookup.h>
# endif
#endif
# define gettext_noop(String) String
#endif
-#if (defined MB_CUR_MAX && HAVE_WCTYPE_H && HAVE_ISWCTYPE && HAVE_WCSCOLL) || _LIBC
+#if (defined MB_CUR_MAX && HAVE_WCTYPE_H && HAVE_ISWCTYPE) || _LIBC
# define RE_ENABLE_I18N
#endif
# undef __wctype
# undef __iswctype
# define __wctype wctype
+# define __iswalnum iswalnum
# define __iswctype iswctype
+# define __towlower towlower
+# define __towupper towupper
# define __btowc btowc
# define __mbrtowc mbrtowc
# define __wcrtomb wcrtomb
# define __attribute__(arg)
#endif
-typedef __re_idx_t Idx;
-#ifdef _REGEX_LARGE_OFFSETS
-# define IDX_MAX (SIZE_MAX - 2)
-#else
-# define IDX_MAX INT_MAX
-#endif
-
-/* Special return value for failure to match. */
-#define REG_MISSING ((Idx) -1)
-
-/* Special return value for internal error. */
-#define REG_ERROR ((Idx) -2)
-
-/* Test whether N is a valid index, and is not one of the above. */
-#ifdef _REGEX_LARGE_OFFSETS
-# define REG_VALID_INDEX(n) ((Idx) (n) < REG_ERROR)
-#else
-# define REG_VALID_INDEX(n) (0 <= (n))
+#ifndef SSIZE_MAX
+# define SSIZE_MAX ((ssize_t) (SIZE_MAX / 2))
#endif
-/* Test whether N is a valid nonzero index. */
+/* 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
+ signed integers makes the code a bit smaller and presumably faster.
+ The traditional GNU regex implementation uses int for indexes.
+ The POSIX-compatible implementation uses a possibly-wider type.
+ The name 'Idx' is three letters to minimize the hassle of
+ reindenting a lot of regex code that formerly used 'int'. */
+typedef regoff_t Idx;
#ifdef _REGEX_LARGE_OFFSETS
-# define REG_VALID_NONZERO_INDEX(n) ((Idx) ((n) - 1) < (Idx) (REG_ERROR - 1))
+# define IDX_MAX SSIZE_MAX
#else
-# define REG_VALID_NONZERO_INDEX(n) (0 < (n))
+# define IDX_MAX INT_MAX
#endif
/* A hash value, suitable for computing hash tables. */
#ifndef _LIBC
# define internal_function
+# define IS_IN(libc) false
#endif
-#ifndef NOT_IN_libc
static reg_errcode_t re_string_realloc_buffers (re_string_t *pstr,
Idx new_buf_len)
internal_function;
-# ifdef RE_ENABLE_I18N
+#ifdef RE_ENABLE_I18N
static void build_wcs_buffer (re_string_t *pstr) internal_function;
static reg_errcode_t build_wcs_upper_buffer (re_string_t *pstr)
internal_function;
-# endif /* RE_ENABLE_I18N */
+#endif /* RE_ENABLE_I18N */
static void build_upper_buffer (re_string_t *pstr) internal_function;
static void re_string_translate_buffer (re_string_t *pstr) internal_function;
static unsigned int re_string_context_at (const re_string_t *input, Idx idx,
int eflags)
internal_function __attribute__ ((pure));
-#endif
+
#define re_string_peek_byte(pstr, offset) \
((pstr)->mbs[(pstr)->cur_idx + offset])
#define re_string_fetch_byte(pstr) \
#define IS_WORD_CHAR(ch) (isalnum (ch) || (ch) == '_')
#define IS_NEWLINE(ch) ((ch) == NEWLINE_CHAR)
-#define IS_WIDE_WORD_CHAR(ch) (iswalnum (ch) || (ch) == L'_')
+#define IS_WIDE_WORD_CHAR(ch) (__iswalnum (ch) || (ch) == L'_')
#define IS_WIDE_NEWLINE(ch) ((ch) == WIDE_NEWLINE_CHAR)
#define NOT_SATISFY_PREV_CONSTRAINT(constraint,context) \
#ifdef DEBUG
char* re_str;
#endif
-#ifdef _LIBC
- __libc_lock_define (, lock)
-#endif
+ lock_define (lock)
};
#define re_node_set_init_empty(set) memset (set, '\0', sizeof (re_node_set))
return (wint_t) pstr->wcs[idx];
}
-# ifndef NOT_IN_libc
+# ifdef _LIBC
+# include <locale/weight.h>
+# endif
+
static int
internal_function __attribute__ ((pure, unused))
re_string_elem_size_at (const re_string_t *pstr, Idx idx)
{
-# ifdef _LIBC
+# ifdef _LIBC
const unsigned char *p, *extra;
const int32_t *table, *indirect;
-# include <locale/weight.h>
uint_fast32_t nrules = _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES);
if (nrules != 0)
indirect = (const int32_t *) _NL_CURRENT (LC_COLLATE,
_NL_COLLATE_INDIRECTMB);
p = pstr->mbs + idx;
- findidx (&p, pstr->len - idx);
+ findidx (table, indirect, extra, &p, pstr->len - idx);
return p - pstr->mbs - idx;
}
else
-# endif /* _LIBC */
+# endif /* _LIBC */
return 1;
}
-# endif
#endif /* RE_ENABLE_I18N */
#ifndef __GNUC_PREREQ
/* Extended regular expression matching and search library.
- Copyright (C) 2002-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002-2016 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include "verify.h"
-#include "intprops.h"
static reg_errcode_t match_ctx_init (re_match_context_t *cache, int eflags,
Idx n) internal_function;
static void match_ctx_clean (re_match_context_t *mctx) internal_function;
We return 0 if we find a match and REG_NOMATCH if not. */
int
-regexec (preg, string, nmatch, pmatch, eflags)
- const regex_t *_Restrict_ preg;
- const char *_Restrict_ string;
- size_t nmatch;
- regmatch_t pmatch[_Restrict_arr_];
- int eflags;
+regexec (const regex_t *_Restrict_ preg, const char *_Restrict_ string,
+ size_t nmatch, regmatch_t pmatch[], int eflags)
{
reg_errcode_t err;
Idx start, length;
-#ifdef _LIBC
re_dfa_t *dfa = preg->buffer;
-#endif
if (eflags & ~(REG_NOTBOL | REG_NOTEOL | REG_STARTEND))
return REG_BADPAT;
length = strlen (string);
}
- __libc_lock_lock (dfa->lock);
+ lock_lock (dfa->lock);
if (preg->no_sub)
err = re_search_internal (preg, string, length, start, length,
length, 0, NULL, eflags);
else
err = re_search_internal (preg, string, length, start, length,
length, nmatch, pmatch, eflags);
- __libc_lock_unlock (dfa->lock);
+ lock_unlock (dfa->lock);
return err != REG_NOERROR;
}
match was found and -2 indicates an internal error. */
regoff_t
-re_match (bufp, string, length, start, regs)
- struct re_pattern_buffer *bufp;
- const char *string;
- Idx length, start;
- struct re_registers *regs;
+re_match (struct re_pattern_buffer *bufp, const char *string, Idx length,
+ Idx start, struct re_registers *regs)
{
return re_search_stub (bufp, string, length, start, 0, length, regs, true);
}
#endif
regoff_t
-re_search (bufp, string, length, start, range, regs)
- struct re_pattern_buffer *bufp;
- const char *string;
- Idx length, start;
- regoff_t range;
- struct re_registers *regs;
+re_search (struct re_pattern_buffer *bufp, const char *string, Idx length,
+ Idx start, regoff_t range, struct re_registers *regs)
{
return re_search_stub (bufp, string, length, start, range, length, regs,
false);
#endif
regoff_t
-re_match_2 (bufp, string1, length1, string2, length2, start, regs, stop)
- struct re_pattern_buffer *bufp;
- const char *string1, *string2;
- Idx length1, length2, start, stop;
- struct re_registers *regs;
+re_match_2 (struct re_pattern_buffer *bufp, const char *string1, Idx length1,
+ const char *string2, Idx length2, Idx start,
+ struct re_registers *regs, Idx stop)
{
return re_search_2_stub (bufp, string1, length1, string2, length2,
start, 0, regs, stop, true);
#endif
regoff_t
-re_search_2 (bufp, string1, length1, string2, length2, start, range, regs, stop)
- struct re_pattern_buffer *bufp;
- const char *string1, *string2;
- Idx length1, length2, start, stop;
- regoff_t range;
- struct re_registers *regs;
+re_search_2 (struct re_pattern_buffer *bufp, const char *string1, Idx length1,
+ const char *string2, Idx length2, Idx start, regoff_t range,
+ struct re_registers *regs, Idx stop)
{
return re_search_2_stub (bufp, string1, length1, string2, length2,
start, range, regs, stop, false);
#endif
static regoff_t
-re_search_2_stub (struct re_pattern_buffer *bufp,
- const char *string1, Idx length1,
- const char *string2, Idx length2,
- Idx start, regoff_t range, struct re_registers *regs,
+internal_function
+re_search_2_stub (struct re_pattern_buffer *bufp, const char *string1,
+ Idx length1, const char *string2, Idx length2, Idx start,
+ regoff_t range, struct re_registers *regs,
Idx stop, bool ret_len)
{
const char *str;
Idx len = length1 + length2;
char *s = NULL;
- verify (! TYPE_SIGNED (Idx));
- if (BE (len < length1, 0))
- return -2;
- /* if (BE (length1 < 0 || length2 < 0 || stop < 0, 0))
- return -2; */
+ if (BE (length1 < 0 || length2 < 0 || stop < 0 || len < length1, 0))
+ return -2;
/* Concatenate the strings. */
if (length2 > 0)
otherwise the position of the match is returned. */
static regoff_t
-re_search_stub (struct re_pattern_buffer *bufp,
- const char *string, Idx length,
+internal_function
+re_search_stub (struct re_pattern_buffer *bufp, const char *string, Idx length,
Idx start, regoff_t range, Idx stop, struct re_registers *regs,
bool ret_len)
{
Idx nregs;
regoff_t rval;
int eflags = 0;
-#ifdef _LIBC
re_dfa_t *dfa = bufp->buffer;
-#endif
Idx last_start = start + range;
/* Check for out-of-range. */
- verify (! TYPE_SIGNED (Idx));
- /* if (BE (start < 0, 0))
- return -1; */
- if (BE (start > length, 0))
- return -1;
+ if (BE (start < 0 || start > length, 0))
+ return -1;
if (BE (length < last_start || (0 <= range && last_start < start), 0))
last_start = length;
- else if (BE (/* last_start < 0 || */ (range < 0 && start <= last_start), 0))
+ else if (BE (last_start < 0 || (range < 0 && start <= last_start), 0))
last_start = 0;
- __libc_lock_lock (dfa->lock);
+ lock_lock (dfa->lock);
eflags |= (bufp->not_bol) ? REG_NOTBOL : 0;
eflags |= (bufp->not_eol) ? REG_NOTEOL : 0;
}
re_free (pmatch);
out:
- __libc_lock_unlock (dfa->lock);
+ lock_unlock (dfa->lock);
return rval;
}
static unsigned
+internal_function
re_copy_regs (struct re_registers *regs, regmatch_t *pmatch, Idx nregs,
int regs_allocated)
{
freeing the old data. */
void
-re_set_registers (bufp, regs, num_regs, starts, ends)
- struct re_pattern_buffer *bufp;
- struct re_registers *regs;
- __re_size_t num_regs;
- regoff_t *starts, *ends;
+re_set_registers (struct re_pattern_buffer *bufp, struct re_registers *regs,
+ __re_size_t num_regs, regoff_t *starts, regoff_t *ends)
{
if (num_regs)
{
# ifdef _LIBC
weak_function
# endif
-re_exec (s)
- const char *s;
+re_exec (const char *s)
{
return 0 == regexec (&re_comp_buf, s, 0, NULL, 0);
}
(0 <= LAST_START && LAST_START <= LENGTH) */
static reg_errcode_t
-__attribute_warn_unused_result__
-re_search_internal (const regex_t *preg,
- const char *string, Idx length,
- Idx start, Idx last_start, Idx stop,
- size_t nmatch, regmatch_t pmatch[],
- int eflags)
+__attribute_warn_unused_result__ internal_function
+re_search_internal (const regex_t *preg, const char *string, Idx length,
+ Idx start, Idx last_start, Idx stop, size_t nmatch,
+ regmatch_t pmatch[], int eflags)
{
reg_errcode_t err;
const re_dfa_t *dfa = preg->buffer;
bool fl_longest_match;
int match_kind;
Idx match_first;
- Idx match_last = REG_MISSING;
+ Idx match_last = -1;
Idx extra_nmatch;
bool sb;
int ch;
mctx.state_log_top = mctx.nbkref_ents = mctx.max_mb_elem_len = 0;
match_last = check_matching (&mctx, fl_longest_match,
start <= last_start ? &match_first : NULL);
- if (match_last != REG_MISSING)
+ if (match_last != -1)
{
- if (BE (match_last == REG_ERROR, 0))
+ if (BE (match_last == -2, 0))
{
err = REG_ESPACE;
goto free_return;
break;
if (BE (err != REG_NOMATCH, 0))
goto free_return;
- match_last = REG_MISSING;
+ match_last = -1;
}
else
break; /* We found a match. */
}
#ifdef DEBUG
- assert (match_last != REG_MISSING);
+ assert (match_last != -1);
assert (err == REG_NOERROR);
#endif
}
static reg_errcode_t
-__attribute_warn_unused_result__
+internal_function __attribute_warn_unused_result__
prune_impossible_nodes (re_match_context_t *mctx)
{
const re_dfa_t *const dfa = mctx->dfa;
do
{
--match_last;
- if (! REG_VALID_INDEX (match_last))
+ if (match_last < 0)
{
ret = REG_NOMATCH;
goto free_return;
}
/* Check whether the regular expression match input string INPUT or not,
- and return the index where the matching end. Return REG_MISSING if
- there is no match, and return REG_ERROR in case of an error.
+ and return the index where the matching end. Return -1 if
+ there is no match, and return -2 in case of an error.
FL_LONGEST_MATCH means we want the POSIX longest matching.
If P_MATCH_FIRST is not NULL, and the match fails, it is set to the
next place where we may want to try matching.
const re_dfa_t *const dfa = mctx->dfa;
reg_errcode_t err;
Idx match = 0;
- Idx match_last = REG_MISSING;
+ Idx match_last = -1;
Idx cur_str_idx = re_string_cur_idx (&mctx->input);
re_dfastate_t *cur_state;
bool at_init_state = p_match_first != NULL;
if (BE (cur_state == NULL, 0))
{
assert (err == REG_ESPACE);
- return REG_ERROR;
+ return -2;
}
if (mctx->state_log != NULL)
if (BE (err != REG_NOERROR, 0))
{
assert (err == REG_ESPACE);
- return REG_ERROR;
+ return -2;
}
}
state using the state log, if available and if we have not
already found a valid (even if not the longest) match. */
if (BE (err != REG_NOERROR, 0))
- return REG_ERROR;
+ return -2;
if (mctx->state_log == NULL
|| (match && !fl_longest_match)
/* Compute the next node to which "NFA" transit from NODE("NFA" is a NFA
corresponding to the DFA).
Return the destination node, and update EPS_VIA_NODES;
- return REG_MISSING in case of errors. */
+ return -1 in case of errors. */
static Idx
internal_function
Idx dest_node;
ok = re_node_set_insert (eps_via_nodes, node);
if (BE (! ok, 0))
- return REG_ERROR;
- /* Pick up a valid destination, or return REG_MISSING if none
+ return -2;
+ /* Pick up a valid destination, or return -1 if none
is found. */
- for (dest_node = REG_MISSING, i = 0; i < edests->nelem; ++i)
+ for (dest_node = -1, i = 0; i < edests->nelem; ++i)
{
Idx candidate = edests->elems[i];
if (!re_node_set_contains (cur_nodes, candidate))
continue;
- if (dest_node == REG_MISSING)
+ if (dest_node == -1)
dest_node = candidate;
else
else if (fs != NULL
&& push_fail_stack (fs, *pidx, candidate, nregs, regs,
eps_via_nodes))
- return REG_ERROR;
+ return -2;
/* We know we are going to exit. */
break;
if (fs != NULL)
{
if (regs[subexp_idx].rm_so == -1 || regs[subexp_idx].rm_eo == -1)
- return REG_MISSING;
+ return -1;
else if (naccepted)
{
char *buf = (char *) re_string_get_buffer (&mctx->input);
if (memcmp (buf + regs[subexp_idx].rm_so, buf + *pidx,
naccepted) != 0)
- return REG_MISSING;
+ return -1;
}
}
Idx dest_node;
ok = re_node_set_insert (eps_via_nodes, node);
if (BE (! ok, 0))
- return REG_ERROR;
+ return -2;
dest_node = dfa->edests[node].elems[0];
if (re_node_set_contains (&mctx->state_log[*pidx]->nodes,
dest_node))
if (fs && (*pidx > mctx->match_last || mctx->state_log[*pidx] == NULL
|| !re_node_set_contains (&mctx->state_log[*pidx]->nodes,
dest_node)))
- return REG_MISSING;
+ return -1;
re_node_set_empty (eps_via_nodes);
return dest_node;
}
}
- return REG_MISSING;
+ return -1;
}
static reg_errcode_t
regmatch_t *regs, re_node_set *eps_via_nodes)
{
Idx num = --fs->num;
- assert (REG_VALID_INDEX (num));
+ 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);
cur_node = proceed_next_node (mctx, nmatch, pmatch, &idx, cur_node,
&eps_via_nodes, fs);
- if (BE (! REG_VALID_INDEX (cur_node), 0))
+ if (BE (cur_node < 0, 0))
{
- if (BE (cur_node == REG_ERROR, 0))
+ if (BE (cur_node == -2, 0))
{
re_node_set_free (&eps_via_nodes);
if (prev_idx_match_malloced)
{
Idx edst1 = dfa->edests[cur_node].elems[0];
Idx edst2 = ((dfa->edests[cur_node].nelem > 1)
- ? dfa->edests[cur_node].elems[1] : REG_MISSING);
+ ? dfa->edests[cur_node].elems[1] : -1);
if ((!re_node_set_contains (inv_eclosure, edst1)
&& re_node_set_contains (dest_nodes, edst1))
- || (REG_VALID_NONZERO_INDEX (edst2)
+ || (edst2 > 0
&& !re_node_set_contains (inv_eclosure, edst2)
&& re_node_set_contains (dest_nodes, edst2)))
{
switch (dfa->nodes[node].type)
{
case OP_BACK_REF:
- if (bkref_idx != REG_MISSING)
+ if (bkref_idx != -1)
{
struct re_backref_cache_entry *ent = mctx->bkref_ents + bkref_idx;
do
subexp_idx = dfa->nodes[ent->node].opr.idx;
if (ent->subexp_to == str_idx)
{
- Idx ops_node = REG_MISSING;
- Idx cls_node = REG_MISSING;
+ Idx ops_node = -1;
+ Idx cls_node = -1;
for (node_idx = 0; node_idx < dest_nodes->nelem; ++node_idx)
{
Idx node = dest_nodes->elems[node_idx];
/* Check the limitation of the open subexpression. */
/* Note that (ent->subexp_to = str_idx != ent->subexp_from). */
- if (REG_VALID_INDEX (ops_node))
+ if (ops_node >= 0)
{
err = sub_epsilon_src_nodes (dfa, ops_node, dest_nodes,
candidates);
}
/* Check the limitation of the close subexpression. */
- if (REG_VALID_INDEX (cls_node))
+ if (cls_node >= 0)
for (node_idx = 0; node_idx < dest_nodes->nelem; ++node_idx)
{
Idx node = dest_nodes->elems[node_idx];
re_sift_context_t local_sctx;
Idx first_idx = search_cur_bkref_entry (mctx, str_idx);
- if (first_idx == REG_MISSING)
+ if (first_idx == -1)
return REG_NOERROR;
local_sctx.sifted_states = NULL; /* Mark that it hasn't been initialized. */
if (BE (err != REG_NOERROR, 0))
return err;
#ifdef DEBUG
- assert (dfa->nexts[cur_node_idx] != REG_MISSING);
+ assert (dfa->nexts[cur_node_idx] != -1);
#endif
new_nodes = dfa->eclosures + dfa->nexts[cur_node_idx];
/* And add the epsilon closures (which is 'new_dest_nodes') of
the backreference to appropriate state_log. */
#ifdef DEBUG
- assert (dfa->nexts[node_idx] != REG_MISSING);
+ assert (dfa->nexts[node_idx] != -1);
#endif
for (; bkc_idx < mctx->nbkref_ents; ++bkc_idx)
{
const char *buf = (const char *) re_string_get_buffer (&mctx->input);
/* Return if we have already checked BKREF_NODE at BKREF_STR_IDX. */
Idx cache_idx = search_cur_bkref_entry (mctx, bkref_str_idx);
- if (cache_idx != REG_MISSING)
+ if (cache_idx != -1)
{
const struct re_backref_cache_entry *entry
= mctx->bkref_ents + cache_idx;
nodes = &mctx->state_log[sl_str]->nodes;
cls_node = find_subexp_node (dfa, nodes, subexp_num,
OP_CLOSE_SUBEXP);
- if (cls_node == REG_MISSING)
+ if (cls_node == -1)
continue; /* No. */
if (sub_top->path == NULL)
{
&& node->opr.idx == subexp_idx)
return cls_node;
}
- return REG_MISSING;
+ return -1;
}
/* Check whether the node TOP_NODE at TOP_STR can arrive to the node
Idx cur_node = cur_nodes->elems[idx];
const re_node_set *eclosure = dfa->eclosures + cur_node;
outside_node = find_subexp_node (dfa, eclosure, ex_subexp, type);
- if (outside_node == REG_MISSING)
+ if (outside_node == -1)
{
/* There are no problematic nodes, just merge them. */
err = re_node_set_merge (&new_nodes, eclosure);
Idx cache_idx_start = search_cur_bkref_entry (mctx, cur_str);
struct re_backref_cache_entry *ent;
- if (cache_idx_start == REG_MISSING)
+ if (cache_idx_start == -1)
return REG_NOERROR;
restart:
/* At first, group all nodes belonging to 'state' into several
destinations. */
ndests = group_nodes_into_DFAstates (dfa, state, dests_node, dests_ch);
- if (BE (! REG_VALID_NONZERO_INDEX (ndests), 0))
+ if (BE (ndests <= 0, 0))
{
if (dests_node_malloced)
free (dests_alloc);
for (j = 0; j < dests_node[i].nelem; ++j)
{
next_node = dfa->nexts[dests_node[i].elems[j]];
- if (next_node != REG_MISSING)
+ if (next_node != -1)
{
err = re_node_set_merge (&follows, dfa->eclosures + next_node);
if (BE (err != REG_NOERROR, 0))
error_return:
for (j = 0; j < ndests; ++j)
re_node_set_free (dests_node + j);
- return REG_MISSING;
+ return -1;
}
#ifdef RE_ENABLE_I18N
one collating element like '.', '[a-z]', opposite to the other nodes
can only accept one byte. */
+# ifdef _LIBC
+# include <locale/weight.h>
+# endif
+
static int
internal_function
check_node_accept_bytes (const re_dfa_t *dfa, Idx node_idx,
const int32_t *table, *indirect;
const unsigned char *weights, *extra;
const char *collseqwc;
- /* This #include defines a local function! */
-# include <locale/weight.h>
/* match with collating_symbol? */
if (cset->ncoll_syms)
_NL_CURRENT (LC_COLLATE, _NL_COLLATE_EXTRAMB);
indirect = (const int32_t *)
_NL_CURRENT (LC_COLLATE, _NL_COLLATE_INDIRECTMB);
- int32_t idx = findidx (&cp, elem_len);
+ int32_t idx = findidx (table, indirect, extra, &cp, elem_len);
if (idx > 0)
for (i = 0; i < cset->nequiv_classes; ++i)
{
match_ctx_init (re_match_context_t *mctx, int eflags, Idx n)
{
mctx->eflags = eflags;
- mctx->match_last = REG_MISSING;
+ mctx->match_last = -1;
if (n > 0)
{
/* Avoid overflow. */
return REG_NOERROR;
}
-/* Return the first entry with the same str_idx, or REG_MISSING if none is
+/* Return the first entry with the same str_idx, or -1 if none is
found. Note that MCTX->BKREF_ENTS is already sorted by MCTX->STR_IDX. */
static Idx
if (left < last && mctx->bkref_ents[left].str_idx == str_idx)
return left;
else
- return REG_MISSING;
+ return -1;
}
/* Register the node NODE, whose type is OP_OPEN_SUBEXP, and which matches
-/* Look up an environment variable more securely.
+/* Look up an environment variable, returning NULL in insecure situations.
- Copyright 2013 Free Software Foundation, Inc.
+ Copyright 2013-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
#include <stdlib.h>
#if !HAVE___SECURE_GETENV
-# if HAVE_ISSETUGID
+# if HAVE_ISSETUGID || (HAVE_GETUID && HAVE_GETEUID && HAVE_GETGID && HAVE_GETEGID)
# include <unistd.h>
-# else
-# undef issetugid
-# define issetugid() 1
# endif
#endif
char *
secure_getenv (char const *name)
{
-#if HAVE___SECURE_GETENV
+#if HAVE___SECURE_GETENV /* glibc */
return __secure_getenv (name);
-#else
+#elif HAVE_ISSETUGID /* OS X, FreeBSD, NetBSD, OpenBSD */
if (issetugid ())
- return 0;
+ return NULL;
+ return getenv (name);
+#elif HAVE_GETUID && HAVE_GETEUID && HAVE_GETGID && HAVE_GETEGID /* other Unix */
+ if (geteuid () != getuid () || getegid () != getgid ())
+ return NULL;
return getenv (name);
+#elif (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ /* native Windows */
+ /* On native Windows, there is no such concept as setuid or setgid binaries.
+ - Programs launched as system services have high privileges, but they don't
+ inherit environment variables from a user.
+ - Programs launched by a user with "Run as Administrator" have high
+ privileges and use the environment variables, but the user has been asked
+ whether he agrees.
+ - Programs launched by a user without "Run as Administrator" cannot gain
+ high privileges, therefore there is no risk. */
+ return getenv (name);
+#else
+ return NULL;
#endif
}
-/* Copyright (C) 1992, 1995-2003, 2005-2013 Free Software Foundation, Inc.
+/* Copyright (C) 1992, 1995-2003, 2005-2016 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
/* Shell quoting.
- Copyright (C) 2001-2004, 2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2004, 2006, 2009-2016 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
/* Shell quoting.
- Copyright (C) 2001-2002, 2004, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2002, 2004, 2009-2016 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
/* Convenience declarations when working with <signal.h>.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This 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 <signal.h>
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
_GL_INLINE_HEADER_BEGIN
#ifndef SIG_HANDLER_INLINE
# define SIG_HANDLER_INLINE _GL_INLINE
/* Return the handler of a signal, as a sa_handler_t value regardless
of its true type. The resulting function can be compared to
special values like SIG_IGN but it is not portable to call it. */
-SIG_HANDLER_INLINE sa_handler_t
+SIG_HANDLER_INLINE sa_handler_t _GL_ATTRIBUTE_PURE
get_handler (struct sigaction const *a)
{
#ifdef SA_SIGINFO
/* POSIX compatible signal blocking.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
Written by Eric Blake <ebb9@byu.net>, 2008.
This program is free software: you can redistribute it and/or modify
/* A GNU-like <signal.h>.
- Copyright (C) 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 2006-2016 Free Software Foundation, Inc.
This 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 _@GUARD_PREFIX@_SIGNAL_H
#define _@GUARD_PREFIX@_SIGNAL_H
-/* Mac OS X 10.3, FreeBSD 6.4, OpenBSD 3.8, OSF/1 4.0, Solaris 2.6 declare
- pthread_sigmask in <pthread.h>, not in <signal.h>.
+/* Mac OS X 10.3, FreeBSD 6.4, OpenBSD 3.8, OSF/1 4.0, Solaris 2.6, Android
+ declare pthread_sigmask in <pthread.h>, not in <signal.h>.
But avoid namespace pollution on glibc systems.*/
#if (@GNULIB_PTHREAD_SIGMASK@ || defined GNULIB_POSIXCHECK) \
- && ((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__ || defined __OpenBSD__ || defined __osf__ || defined __sun) \
+ && ((defined __APPLE__ && defined __MACH__) \
+ || defined __FreeBSD__ || defined __OpenBSD__ || defined __osf__ \
+ || defined __sun || defined __ANDROID__) \
&& ! defined __GLIBC__
# include <pthread.h>
#endif
# endif
+/* When also using extern inline, suppress the use of static inline in
+ standard headers of problematic Apple configurations, as Libc at
+ least through Libc-825.26 (2013-04-09) mishandles it; see, e.g.,
+ <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00023.html>.
+ Perhaps Apple will fix this some day. */
+#if (defined _GL_EXTERN_INLINE_IN_USE && defined __APPLE__ \
+ && (defined __i386__ || defined __x86_64__))
+# undef sigaddset
+# undef sigdelset
+# undef sigemptyset
+# undef sigfillset
+# undef sigismember
+#endif
+
/* Test whether a given signal is contained in a signal set. */
# if @HAVE_POSIX_SIGNALBLOCKING@
/* This function is defined as a macro on Mac OS X. */
/* POSIX compatible signal blocking.
- Copyright (C) 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 2006-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2006.
This program is free software: you can redistribute it and/or modify
/* size_max.h -- declare SIZE_MAX through system headers
- Copyright (C) 2005-2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2005-2006, 2009-2016 Free Software Foundation, Inc.
Written by Simon Josefsson.
This program is free software; you can redistribute it and/or modify
/* stat-related time functions.
- Copyright (C) 2005, 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2005, 2007, 2009-2016 Free Software Foundation, Inc.
This 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/stat.h>
#include <time.h>
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
_GL_INLINE_HEADER_BEGIN
#ifndef _GL_STAT_TIME_INLINE
# define _GL_STAT_TIME_INLINE _GL_INLINE
#endif
/* Return the nanosecond component of *ST's access time. */
-_GL_STAT_TIME_INLINE long int
+_GL_STAT_TIME_INLINE long int _GL_ATTRIBUTE_PURE
get_stat_atime_ns (struct stat const *st)
{
# if defined STAT_TIMESPEC
}
/* Return the nanosecond component of *ST's status change time. */
-_GL_STAT_TIME_INLINE long int
+_GL_STAT_TIME_INLINE long int _GL_ATTRIBUTE_PURE
get_stat_ctime_ns (struct stat const *st)
{
# if defined STAT_TIMESPEC
}
/* Return the nanosecond component of *ST's data modification time. */
-_GL_STAT_TIME_INLINE long int
+_GL_STAT_TIME_INLINE long int _GL_ATTRIBUTE_PURE
get_stat_mtime_ns (struct stat const *st)
{
# if defined STAT_TIMESPEC
}
/* Return the nanosecond component of *ST's birth time. */
-_GL_STAT_TIME_INLINE long int
+_GL_STAT_TIME_INLINE long int _GL_ATTRIBUTE_PURE
get_stat_birthtime_ns (struct stat const *st)
{
# if defined HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC
}
/* Return *ST's access time. */
-_GL_STAT_TIME_INLINE struct timespec
+_GL_STAT_TIME_INLINE struct timespec _GL_ATTRIBUTE_PURE
get_stat_atime (struct stat const *st)
{
#ifdef STAT_TIMESPEC
}
/* Return *ST's status change time. */
-_GL_STAT_TIME_INLINE struct timespec
+_GL_STAT_TIME_INLINE struct timespec _GL_ATTRIBUTE_PURE
get_stat_ctime (struct stat const *st)
{
#ifdef STAT_TIMESPEC
}
/* Return *ST's data modification time. */
-_GL_STAT_TIME_INLINE struct timespec
+_GL_STAT_TIME_INLINE struct timespec _GL_ATTRIBUTE_PURE
get_stat_mtime (struct stat const *st)
{
#ifdef STAT_TIMESPEC
/* Return *ST's birth time, if available; otherwise return a value
with tv_sec and tv_nsec both equal to -1. */
-_GL_STAT_TIME_INLINE struct timespec
+_GL_STAT_TIME_INLINE struct timespec _GL_ATTRIBUTE_PURE
get_stat_birthtime (struct stat const *st)
{
struct timespec t;
/* Work around platform bugs in stat.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Substitute for and wrapper around <stdarg.h>.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-/* Copyright (C) 2001-2003, 2006-2013 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2003, 2006-2016 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
/* A substitute for POSIX 2008 <stddef.h>, for platforms that have issues.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2009-2016 Free Software Foundation, Inc.
This 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 _@GUARD_PREFIX@_STDDEF_H && defined _GL_STDDEF_WINT_T)
# ifdef __need_wint_t
-# undef _@GUARD_PREFIX@_STDDEF_H
# define _GL_STDDEF_WINT_T
# endif
# @INCLUDE_NEXT@ @NEXT_STDDEF_H@
# @INCLUDE_NEXT@ @NEXT_STDDEF_H@
-# ifndef _@GUARD_PREFIX@_STDDEF_H
-# define _@GUARD_PREFIX@_STDDEF_H
-
/* On NetBSD 5.0, the definition of NULL lacks proper parentheses. */
-#if @REPLACE_NULL@
-# undef NULL
-# ifdef __cplusplus
+# if (@REPLACE_NULL@ \
+ && (!defined _@GUARD_PREFIX@_STDDEF_H || defined _GL_STDDEF_WINT_T))
+# undef NULL
+# ifdef __cplusplus
/* ISO C++ says that the macro NULL must expand to an integer constant
expression, hence '((void *) 0)' is not allowed in C++. */
-# if __GNUG__ >= 3
+# if __GNUG__ >= 3
/* GNU C++ has a __null macro that behaves like an integer ('int' or
'long') but has the same size as a pointer. Use that, to avoid
warnings. */
-# define NULL __null
-# else
-# define NULL 0L
+# define NULL __null
+# else
+# define NULL 0L
+# endif
+# else
+# define NULL ((void *) 0)
+# endif
# endif
-# else
-# define NULL ((void *) 0)
-# endif
-#endif
+
+# ifndef _@GUARD_PREFIX@_STDDEF_H
+# define _@GUARD_PREFIX@_STDDEF_H
/* Some platforms lack wchar_t. */
#if !@HAVE_WCHAR_T@
# define wchar_t int
#endif
+/* 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)
+/* 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
+typedef union
+{
+ char *__p _GL_STDDEF_ALIGNAS (char *);
+ double __d _GL_STDDEF_ALIGNAS (double);
+ long double __ld _GL_STDDEF_ALIGNAS (long double);
+ long int __i _GL_STDDEF_ALIGNAS (long int);
+} max_align_t;
+#endif
+
# endif /* _@GUARD_PREFIX@_STDDEF_H */
# endif /* _@GUARD_PREFIX@_STDDEF_H */
#endif /* __need_XXX */
-/* Copyright (C) 2001-2002, 2004-2013 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2002, 2004-2016 Free Software Foundation, Inc.
Written by Paul Eggert, Bruno Haible, Sam Steingold, Peter Burwood.
This file is part of gnulib.
other system header files; just include the system's <stdint.h>.
Ideally we should test __BIONIC__ here, but it is only defined after
<sys/cdefs.h> has been included; hence test __ANDROID__ instead. */
-#if defined __ANDROID__ \
- && defined _SYS_TYPES_H_ && !defined __need_size_t
+#if defined __ANDROID__ && defined _GL_INCLUDING_SYS_TYPES_H
# @INCLUDE_NEXT@ @NEXT_STDINT_H@
#else
picky compilers. */
#define _STDINT_MIN(signed, bits, zero) \
- ((signed) ? (- ((zero) + 1) << ((bits) ? (bits) - 1 : 0)) : (zero))
+ ((signed) ? ~ _STDINT_MAX (signed, bits, zero) : (zero))
#define _STDINT_MAX(signed, bits, zero) \
- ((signed) \
- ? ~ _STDINT_MIN (signed, bits, zero) \
- : /* The expression for the unsigned case. The subtraction of (signed) \
- is a nop in the unsigned case and avoids "signed integer overflow" \
- warnings in the signed case. */ \
- ((((zero) + 1) << ((bits) ? (bits) - 1 - (signed) : 0)) - 1) * 2 + 1)
+ (((((zero) + 1) << ((bits) ? (bits) - 1 - (signed) : 0)) - 1) * 2 + 1)
#if !GNULIB_defined_stdint_types
/* 7.18.1.4. Integer types capable of holding object pointers */
+/* 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
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
/* 7.18.1.5. Greatest-width integer types */
/* Like stdio.h, but redefine some names to avoid glitches.
- Copyright (C) 2005-2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2005-2006, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Invoke stdio functions, but avoid some glitches.
- Copyright (C) 2001, 2003, 2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2003, 2006, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* A GNU-like <stdio.h>.
- Copyright (C) 2004, 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2004, 2007-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
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. */
-#define _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM(formatstring_parameter, first_argument) \
+#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
/* _GL_ATTRIBUTE_FORMAT_SCANF
indicates to GCC that the function takes a format string and arguments,
#define _GL_STDIO_STRINGIZE(token) #token
#define _GL_STDIO_MACROEXPAND_AND_STRINGIZE(token) _GL_STDIO_STRINGIZE(token)
+/* When also using extern inline, suppress the use of static inline in
+ standard headers of problematic Apple configurations, as Libc at
+ least through Libc-825.26 (2013-04-09) mishandles it; see, e.g.,
+ <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00023.html>.
+ Perhaps Apple will fix this some day. */
+#if (defined _GL_EXTERN_INLINE_IN_USE && defined __APPLE__ \
+ && defined __GNUC__ && defined __STDC__)
+# undef putc_unlocked
+#endif
#if @GNULIB_DPRINTF@
# if @REPLACE_DPRINTF@
<http://sources.redhat.com/bugzilla/show_bug.cgi?id=11959>,
which sometimes causes an unwanted diagnostic for fwrite calls.
This affects only function declaration attributes under certain
- versions of gcc, and is not needed for C++. */
+ versions of gcc and clang, and is not needed for C++. */
# if (0 < __USE_FORTIFY_LEVEL \
&& __GLIBC__ == 2 && 4 <= __GLIBC_MINOR__ && __GLIBC_MINOR__ <= 15 \
&& 3 < __GNUC__ + (4 <= __GNUC_MINOR__) \
&& !defined __cplusplus)
# undef fwrite
-# define fwrite(a, b, c, d) ({size_t __r = fwrite (a, b, c, d); __r; })
+# undef fwrite_unlocked
+extern size_t __REDIRECT (rpl_fwrite,
+ (const void *__restrict, size_t, size_t,
+ FILE *__restrict),
+ fwrite);
+extern size_t __REDIRECT (rpl_fwrite_unlocked,
+ (const void *__restrict, size_t, size_t,
+ FILE *__restrict),
+ fwrite_unlocked);
+# define fwrite rpl_fwrite
+# define fwrite_unlocked rpl_fwrite_unlocked
# endif
# endif
_GL_CXXALIASWARN (fwrite);
so any use of gets warrants an unconditional warning; besides, C11
removed it. */
#undef gets
-#if HAVE_RAW_DECL_GETS
+#if HAVE_RAW_DECL_GETS && !defined __cplusplus
_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
#endif
-
#if @GNULIB_OBSTACK_PRINTF@ || @GNULIB_OBSTACK_PRINTF_POSIX@
struct obstack;
/* Grow an obstack with formatted output. Return the number of
/* A GNU-like <stdlib.h>.
- Copyright (C) 1995, 2001-2004, 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 1995, 2001-2004, 2006-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
_GL_CXXALIASWARN (putenv);
#endif
+#if @GNULIB_QSORT_R@
+# if @REPLACE_QSORT_R@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef qsort_r
+# define qsort_r rpl_qsort_r
+# endif
+_GL_FUNCDECL_RPL (qsort_r, void, (void *base, size_t nmemb, size_t size,
+ int (*compare) (void const *, void const *,
+ void *),
+ void *arg) _GL_ARG_NONNULL ((1, 4)));
+_GL_CXXALIAS_RPL (qsort_r, void, (void *base, size_t nmemb, size_t size,
+ int (*compare) (void const *, void const *,
+ void *),
+ void *arg));
+# else
+_GL_CXXALIAS_SYS (qsort_r, void, (void *base, size_t nmemb, size_t size,
+ int (*compare) (void const *, void const *,
+ void *),
+ void *arg));
+# endif
+_GL_CXXALIASWARN (qsort_r);
+#endif
+
#if @GNULIB_RANDOM_R@
# if !@HAVE_RANDOM_R@
/* Substring search in a NUL terminated string of UNIT elements,
using the Knuth-Morris-Pratt algorithm.
- Copyright (C) 2005-2013 Free Software Foundation, Inc.
+ Copyright (C) 2005-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2005.
This program is free software; you can redistribute it and/or modify
/* Case-insensitive string comparison function.
- Copyright (C) 1998-1999, 2005-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1998-1999, 2005-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Optimized string comparison.
- Copyright (C) 2001-2002, 2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2002, 2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
/* strerror-override.c --- POSIX compatible system error routine
- Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Copyright (C) 2010-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* strerror-override.h --- POSIX compatible system error routine
- Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Copyright (C) 2010-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
|| GNULIB_defined_EOWNERDEAD \
|| GNULIB_defined_ENOTRECOVERABLE \
|| GNULIB_defined_EILSEQ
-extern const char *strerror_override (int errnum);
+extern const char *strerror_override (int errnum) _GL_ATTRIBUTE_CONST;
# else
# define strerror_override(ignored) NULL
# endif
/* strerror.c --- POSIX compatible system error routine
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-/* Copyright (C) 1991-2001, 2003-2007, 2009-2013 Free Software Foundation, Inc.
+/* Copyright (C) 1991-2001, 2003-2007, 2009-2016 Free Software Foundation, Inc.
NOTE: The canonical source of this file is maintained with the GNU C Library.
Bugs can be reported to bug-glibc@prep.ai.mit.edu.
# else
# include "strftime.h"
# endif
+# include "time-internal.h"
#endif
#include <ctype.h>
#ifdef _LIBC
+# define mktime_z(tz, tm) mktime (tm)
# define tzname __tzname
# define tzset __tzset
#endif
-#if !HAVE_TM_GMTOFF
-/* Portable standalone applications should supply a "time.h" that
- declares a POSIX-compliant localtime_r, for the benefit of older
- implementations that lack localtime_r or have a nonstandard one.
- See the gnulib time_r module for one way to implement this. */
-# undef __gmtime_r
-# undef __localtime_r
-# define __gmtime_r gmtime_r
-# define __localtime_r localtime_r
-#endif
-
-
#ifndef FPRINTFTIME
# define FPRINTFTIME 0
#endif
/* When compiling this file, GNU applications can #define my_strftime
to a symbol (typically nstrftime) to get an extended strftime with
- extra arguments UT and NS. Emacs is a special case for now, but
- this Emacs-specific code can be removed once Emacs's config.h
- defines my_strftime. */
-#if defined emacs && !defined my_strftime
-# define my_strftime nstrftime
-#endif
+ extra arguments TZ and NS. */
#if FPRINTFTIME
# undef my_strftime
#endif
#ifdef my_strftime
-# define extra_args , ut, ns
-# define extra_args_spec , int ut, int ns
+# undef HAVE_TZSET
+# define extra_args , tz, ns
+# define extra_args_spec , timezone_t tz, int ns
#else
# if defined COMPILE_WIDE
# define my_strftime wcsftime
# define extra_args
# define extra_args_spec
/* We don't have this information in general. */
-# define ut 0
+# define tz 1
# define ns 0
#endif
# define am_len STRLEN (a_month)
# define ap_len STRLEN (ampm)
#endif
+#if HAVE_TZNAME
+ char **tzname_vec = tzname;
+#endif
const char *zone;
size_t i = 0;
STREAM_OR_CHAR_T *p = s;
zone = (const char *) tp->tm_zone;
#endif
#if HAVE_TZNAME
- if (ut)
+ if (!tz)
{
if (! (zone && *zone))
zone = "GMT";
}
else
{
+# if !HAVE_TM_ZONE
+ /* Infer the zone name from *TZ instead of from TZNAME. */
+ tzname_vec = tz->tzname_copy;
+# endif
/* POSIX.1 requires that local time zone information be used as
though strftime called tzset. */
# if HAVE_TZSET
tzset ();
# endif
}
+ /* The tzset() call might have changed the value. */
+ if (!(zone && *zone) && tp->tm_isdst >= 0)
+ zone = tzname_vec[tp->tm_isdst != 0];
#endif
+ if (! zone)
+ zone = "";
if (hour12 > 12)
hour12 -= 12;
break;
}
- /* As a GNU extension we allow to specify the field width. */
+ /* As a GNU extension we allow the field width to be specified. */
if (ISDIGIT (*f))
{
width = 0;
switch (format_char)
{
#define DO_NUMBER(d, v) \
- digits = d; \
- number_value = v; goto do_number
+ do \
+ { \
+ digits = d; \
+ number_value = v; \
+ goto do_number; \
+ } \
+ while (0)
#define DO_SIGNED_NUMBER(d, negative, v) \
- digits = d; \
- negative_number = negative; \
- u_number_value = v; goto do_signed_number
+ do \
+ { \
+ digits = d; \
+ negative_number = negative; \
+ u_number_value = v; \
+ goto do_signed_number; \
+ } \
+ while (0)
/* The mask is not what you might think.
When the ordinal i'th bit is set, insert a colon
before the i'th digit of the time zone representation. */
#define DO_TZ_OFFSET(d, negative, mask, v) \
- digits = d; \
- negative_number = negative; \
- tz_colon_mask = mask; \
- u_number_value = v; goto do_tz_offset
+ do \
+ { \
+ digits = d; \
+ negative_number = negative; \
+ tz_colon_mask = mask; \
+ u_number_value = v; \
+ goto do_tz_offset; \
+ } \
+ while (0)
#define DO_NUMBER_SPACEPAD(d, v) \
- digits = d; \
- number_value = v; goto do_number_spacepad
+ do \
+ { \
+ digits = d; \
+ number_value = v; \
+ goto do_number_spacepad; \
+ } \
+ while (0)
case L_('%'):
if (modifier != 0)
time_t t;
ltm = *tp;
- t = mktime (<m);
+ t = mktime_z (tz, <m);
/* Generate string value for T using time_t arithmetic;
this works even if sizeof (long) < sizeof (time_t). */
}
if (modifier == L_('O'))
goto bad_format;
- else
- DO_SIGNED_NUMBER (4, tp->tm_year < -TM_YEAR_BASE,
- tp->tm_year + (unsigned int) TM_YEAR_BASE);
+
+ DO_SIGNED_NUMBER (4, tp->tm_year < -TM_YEAR_BASE,
+ tp->tm_year + (unsigned int) TM_YEAR_BASE);
case L_('y'):
if (modifier == L_('E'))
to_lowcase = true;
}
-#if HAVE_TZNAME
- /* The tzset() call might have changed the value. */
- if (!(zone && *zone) && tp->tm_isdst >= 0)
- zone = tzname[tp->tm_isdst != 0];
-#endif
- if (! zone)
- zone = "";
-
#ifdef COMPILE_WIDE
{
/* The zone string is always given in multibyte form. We have
#if HAVE_TM_GMTOFF
diff = tp->tm_gmtoff;
#else
- if (ut)
+ if (!tz)
diff = 0;
else
{
time_t lt;
ltm = *tp;
- lt = mktime (<m);
+ lt = mktime_z (tz, <m);
if (lt == (time_t) -1)
{
occurred. */
struct tm tm;
- if (! __localtime_r (<, &tm)
+ if (! localtime_rz (tz, <, &tm)
|| ((ltm.tm_sec ^ tm.tm_sec)
| (ltm.tm_min ^ tm.tm_min)
| (ltm.tm_hour ^ tm.tm_hour)
break;
}
- if (! __gmtime_r (<, >m))
+ if (! localtime_rz (0, <, >m))
break;
diff = tm_diff (<m, >m);
#if defined _LIBC && ! FPRINTFTIME
libc_hidden_def (my_strftime)
#endif
-
-
-#if defined emacs && ! FPRINTFTIME
-/* For Emacs we have a separate interface which corresponds to the normal
- strftime function plus the ut argument, but without the ns argument. */
-size_t
-emacs_strftimeu (char *s, size_t maxsize, const char *format,
- const struct tm *tp, int ut)
-{
- return my_strftime (s, maxsize, format, tp, ut, 0);
-}
-#endif
/* declarations for strftime.c
- Copyright (C) 2002, 2004, 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2004, 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Just like strftime, but with two more arguments:
POSIX requires that strftime use the local timezone information.
- When __UTC is nonzero and tm->tm_zone is NULL or the empty string,
- use UTC instead. Use __NS as the number of nanoseconds in the
- %N directive. */
+ Use the timezone __TZ instead. Use __NS as the number of
+ nanoseconds in the %N directive. */
size_t nstrftime (char *, size_t, char const *, struct tm const *,
- int __utc, int __ns);
+ timezone_t __tz, int __ns);
#ifdef __cplusplus
}
/* Charset conversion.
- Copyright (C) 2001-2007, 2010-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2007, 2010-2016 Free Software Foundation, Inc.
Written by Bruno Haible and Simon Josefsson.
This program is free software; you can redistribute it and/or modify
/* Charset conversion.
- Copyright (C) 2001-2004, 2006-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2004, 2006-2007, 2009-2016 Free Software Foundation, Inc.
Written by Bruno Haible and Simon Josefsson.
This program is free software; you can redistribute it and/or modify
/* A GNU-like <string.h>.
- Copyright (C) 1995-1996, 2001-2013 Free Software Foundation, Inc.
+ Copyright (C) 1995-1996, 2001-2016 Free Software Foundation, Inc.
This 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 <http://www.gnu.org/licenses/>. */
-#ifndef _@GUARD_PREFIX@_STRING_H
-
#if __GNUC__ >= 3
@PRAGMA_SYSTEM_HEADER@
#endif
@PRAGMA_COLUMNS@
+#if defined _GL_ALREADY_INCLUDING_STRING_H
+/* Special invocation convention:
+ - On OS X/NetBSD we have a sequence of nested includes
+ <string.h> -> <strings.h> -> "string.h"
+ In this situation system _chk variants due to -D_FORTIFY_SOURCE
+ might be used after any replacements defined here. */
+
+#@INCLUDE_NEXT@ @NEXT_STRING_H@
+
+#else
+/* Normal invocation convention. */
+
+#ifndef _@GUARD_PREFIX@_STRING_H
+
+#define _GL_ALREADY_INCLUDING_STRING_H
+
/* The include_next requires a split double-inclusion guard. */
#@INCLUDE_NEXT@ @NEXT_STRING_H@
+#undef _GL_ALREADY_INCLUDING_STRING_H
+
#ifndef _@GUARD_PREFIX@_STRING_H
#define _@GUARD_PREFIX@_STRING_H
#endif /* _@GUARD_PREFIX@_STRING_H */
#endif /* _@GUARD_PREFIX@_STRING_H */
+#endif
/* A substitute <strings.h>.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* stripslash.c -- remove redundant trailing slashes from a file name
- Copyright (C) 1990, 2001, 2003-2006, 2009-2013 Free Software Foundation,
+ Copyright (C) 1990, 2001, 2003-2006, 2009-2016 Free Software Foundation,
Inc.
This program is free software: you can redistribute it and/or modify
/* strncasecmp.c -- case insensitive string comparator
- Copyright (C) 1998-1999, 2005-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1998-1999, 2005-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* A replacement function, for systems that lack strndup.
- Copyright (C) 1996-1998, 2001-2003, 2005-2007, 2009-2013 Free Software
+ Copyright (C) 1996-1998, 2001-2003, 2005-2007, 2009-2016 Free Software
Foundation, Inc.
This program is free software; you can redistribute it and/or modify it
/* Find the length of STRING, but scan at most MAXLEN characters.
- Copyright (C) 2005-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2005-2007, 2009-2016 Free Software Foundation, Inc.
Written by Simon Josefsson.
This program is free software; you can redistribute it and/or modify
/* Find the length of STRING + 1, but scan at most MAXLEN bytes.
- Copyright (C) 2005-2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2005-2006, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Find the length of STRING + 1, but scan at most MAXLEN bytes.
- Copyright (C) 2005, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2005, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-/* Copyright (C) 2002, 2004-2005, 2007, 2009-2013 Free Software Foundation,
+/* Copyright (C) 2002, 2004-2005, 2007, 2009-2016 Free Software Foundation,
Inc.
This file is part of the GNU C Library.
/* Convert string representation of a number into an intmax_t value.
- Copyright (C) 1999, 2001-2004, 2006, 2009-2013 Free Software Foundation,
+ Copyright (C) 1999, 2001-2004, 2006, 2009-2016 Free Software Foundation,
Inc.
This program is free software: you can redistribute it and/or modify
#include "verify.h"
#ifdef UNSIGNED
-# ifndef HAVE_DECL_STRTOULL
+# if HAVE_UNSIGNED_LONG_LONG_INT
+# ifndef HAVE_DECL_STRTOULL
"this configure-time declaration test was not run"
-# endif
-# if !HAVE_DECL_STRTOULL && HAVE_UNSIGNED_LONG_LONG_INT
+# endif
+# if !HAVE_DECL_STRTOULL
unsigned long long int strtoull (char const *, char **, int);
+# endif
# endif
#else
-# ifndef HAVE_DECL_STRTOLL
+# if HAVE_LONG_LONG_INT
+# ifndef HAVE_DECL_STRTOLL
"this configure-time declaration test was not run"
-# endif
-# if !HAVE_DECL_STRTOLL && HAVE_LONG_LONG_INT
+# endif
+# if !HAVE_DECL_STRTOLL
long long int strtoll (char const *, char **, int);
+# endif
# endif
#endif
#ifdef UNSIGNED
# define Have_long_long HAVE_UNSIGNED_LONG_LONG_INT
# define Int uintmax_t
+# define Strtoimax strtoumax
+# define Strtol strtoul
+# define Strtoll strtoull
# define Unsigned unsigned
-# define strtoimax strtoumax
-# define strtol strtoul
-# define strtoll strtoull
#else
# define Have_long_long HAVE_LONG_LONG_INT
# define Int intmax_t
+# define Strtoimax strtoimax
+# define Strtol strtol
+# define Strtoll strtoll
# define Unsigned
#endif
Int
-strtoimax (char const *ptr, char **endptr, int base)
+Strtoimax (char const *ptr, char **endptr, int base)
{
#if Have_long_long
verify (sizeof (Int) == sizeof (Unsigned long int)
|| sizeof (Int) == sizeof (Unsigned long long int));
if (sizeof (Int) != sizeof (Unsigned long int))
- return strtoll (ptr, endptr, base);
+ return Strtoll (ptr, endptr, base);
#else
verify (sizeof (Int) == sizeof (Unsigned long int));
#endif
- return strtol (ptr, endptr, base);
+ return Strtol (ptr, endptr, base);
}
/* Convert string representation of a number into an integer value.
- Copyright (C) 1991-1992, 1994-1999, 2003, 2005-2007, 2009-2013 Free Software
+ Copyright (C) 1991-1992, 1994-1999, 2003, 2005-2007, 2009-2016 Free Software
Foundation, Inc.
NOTE: The canonical source of this file is maintained with the GNU C
/* The extra casts in the following macros work around compiler bugs,
e.g., in Cray C 5.0.3.0. */
-/* True if negative values of the signed integer type T use two's
- complement, ones' complement, or signed magnitude representation,
- respectively. Much GNU code assumes two's complement, but some
- people like to be portable to all possible C hosts. */
-# define TYPE_TWOS_COMPLEMENT(t) ((t) ~ (t) 0 == (t) -1)
-# define TYPE_ONES_COMPLEMENT(t) ((t) ~ (t) 0 == 0)
-# define TYPE_SIGNED_MAGNITUDE(t) ((t) ~ (t) 0 < (t) -1)
-
/* True if the arithmetic type T is signed. */
# define TYPE_SIGNED(t) (! ((t) 0 < (t) -1))
-/* The maximum and minimum values for the integer type T. These
- macros have undefined behavior if T is signed and has padding bits.
- If this is a problem for you, please let us know how to fix it for
- your host. */
-# define TYPE_MINIMUM(t) \
- ((t) (! TYPE_SIGNED (t) \
- ? (t) 0 \
- : TYPE_SIGNED_MAGNITUDE (t) \
- ? ~ (t) 0 \
- : ~ TYPE_MAXIMUM (t)))
-# define TYPE_MAXIMUM(t) \
- ((t) (! TYPE_SIGNED (t) \
- ? (t) -1 \
+/* Minimum and maximum values for integer types.
+ These macros have undefined behavior for signed types that either
+ have padding bits or do not use two's complement. If this is a
+ problem for you, please let us know how to fix it for your host. */
+
+/* The maximum and minimum values for the integer type T. */
+# define TYPE_MINIMUM(t) ((t) ~ TYPE_MAXIMUM (t))
+# define TYPE_MAXIMUM(t) \
+ ((t) (! TYPE_SIGNED (t) \
+ ? (t) -1 \
: ((((t) 1 << (sizeof (t) * CHAR_BIT - 2)) - 1) * 2 + 1)))
# ifndef ULLONG_MAX
-/* Copyright (C) 1991, 1997, 2009-2013 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1997, 2009-2016 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
/* Function to parse an 'unsigned long long int' from text.
- Copyright (C) 1995-1997, 1999, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1995-1997, 1999, 2009-2016 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.
/* Provide a more complete sys/stat header file.
- Copyright (C) 2005-2013 Free Software Foundation, Inc.
+ Copyright (C) 2005-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Provide a more complete sys/time.h.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This 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
@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
#endif /* _@GUARD_PREFIX@_SYS_TIME_H */
+#endif /* _CYGWIN_SYS_TIME_H */
#endif /* _@GUARD_PREFIX@_SYS_TIME_H */
/* Provide a more complete sys/types.h.
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Copyright (C) 2011-2016 Free Software Foundation, Inc.
This 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 _@GUARD_PREFIX@_SYS_TYPES_H
/* The include_next requires a split double-inclusion guard. */
+# define _GL_INCLUDING_SYS_TYPES_H
#@INCLUDE_NEXT@ @NEXT_SYS_TYPES_H@
+# undef _GL_INCLUDING_SYS_TYPES_H
#ifndef _@GUARD_PREFIX@_SYS_TYPES_H
#define _@GUARD_PREFIX@_SYS_TYPES_H
/* A POSIX-like <sys/wait.h>.
- Copyright (C) 2001-2003, 2005-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2003, 2005-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Quoting for a system command.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
+ Copyright (C) 2012-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2012.
This program is free software: you can redistribute it and/or modify
/* Quoting for a system command.
- Copyright (C) 2001-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2012.
This program is free software: you can redistribute it and/or modify
/* tempname.c - generate the name of a temporary file.
- Copyright (C) 1991-2003, 2005-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1991-2003, 2005-2007, 2009-2016 Free Software Foundation, Inc.
This 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 struct_stat64 struct stat64
#else
# define struct_stat64 struct stat
+# define __try_tempname try_tempname
# define __gen_tempname gen_tempname
# define __getpid getpid
# define __gettimeofday gettimeofday
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 "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. */
int
-__gen_tempname (char *tmpl, int suffixlen, int flags, int kind)
+__try_tempname (char *tmpl, int suffixlen, void *args,
+ int (*tryfunc) (char *, void *))
{
int len;
char *XXXXXX;
unsigned int count;
int fd = -1;
int save_errno = errno;
- struct_stat64 st;
/* A lower bound on the number of temporary files to attempt to
generate. The maximum total number of temporary file names that
v /= 62;
XXXXXX[5] = letters[v % 62];
- switch (kind)
- {
- case __GT_FILE:
- fd = __open (tmpl,
- (flags & ~O_ACCMODE)
- | O_RDWR | O_CREAT | O_EXCL, S_IRUSR | S_IWUSR);
- break;
-
- case __GT_DIR:
- fd = __mkdir (tmpl, S_IRUSR | S_IWUSR | S_IXUSR);
- break;
-
- case __GT_NOCREATE:
- /* This case is backward from the other three. __gen_tempname
- succeeds if __xstat fails because the name does not exist.
- Note the continue to bypass the common logic at the bottom
- of the loop. */
- if (__lxstat64 (_STAT_VER, tmpl, &st) < 0)
- {
- if (errno == ENOENT)
- {
- __set_errno (save_errno);
- return 0;
- }
- else
- /* Give up now. */
- return -1;
- }
- continue;
-
- default:
- assert (! "invalid KIND in __gen_tempname");
- abort ();
- }
-
+ fd = tryfunc (tmpl, args);
if (fd >= 0)
{
__set_errno (save_errno);
__set_errno (EEXIST);
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)
+{
+ struct_stat64 st;
+
+ if (__lxstat64 (_STAT_VER, tmpl, &st) == 0)
+ __set_errno (EEXIST);
+ return errno == ENOENT ? 0 : -1;
+}
+
+/* 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. */
+int
+__gen_tempname (char *tmpl, int suffixlen, int flags, int kind)
+{
+ 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);
+}
/* Create a temporary file or directory.
- Copyright (C) 2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2006, 2009-2016 Free Software Foundation, Inc.
This 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 GT_NOCREATE 2
# endif
+#ifdef __cplusplus
+extern "C" {
+#endif
+
/* 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
We use a clever algorithm to get hard-to-predict names. */
extern int gen_tempname (char *tmpl, int suffixlen, int flags, int kind);
+/* Similar to gen_tempname, but TRYFUNC is called for each temporary
+ name to try. If TRYFUNC returns a non-negative number, TRY_GEN_TEMPNAME
+ returns with this value. Otherwise, if errno is set to EEXIST, another
+ name is tried, or else TRY_GEN_TEMPNAME returns -1. */
+extern int try_tempname (char *tmpl, int suffixlen, void *args,
+ int (*tryfunc) (char *, void *));
+
+#ifdef __cplusplus
+}
+#endif
+
#endif /* GL_TEMPNAME_H */
--- /dev/null
+/* Time internal interface
+
+ Copyright 2015-2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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 <http://www.gnu.org/licenses/>. */
+
+/* Written by Paul Eggert. */
+
+/* A time zone rule. */
+struct tm_zone
+{
+ /* More abbreviations, should they be needed. Their TZ_IS_SET
+ members are zero. */
+ struct tm_zone *next;
+
+#if HAVE_TZNAME && !HAVE_TM_ZONE
+ /* Copies of recent strings taken from tzname[0] and tzname[1].
+ The copies are in ABBRS, so that they survive tzset. Null if unknown. */
+ char *tzname_copy[2];
+#endif
+
+ /* If nonzero, the rule represents the TZ environment variable set
+ to the first "abbreviation" (this may be the empty string).
+ Otherwise, it represents an unset TZ. */
+ char tz_is_set;
+
+ /* A sequence of null-terminated strings packed next to each other.
+ The strings are followed by an extra null byte. If TZ_IS_SET,
+ there must be at least one string and the first string (which is
+ actually a TZ environment value value) may be empty. Otherwise
+ all strings must be nonempty.
+
+ Abbreviations are stored here because otherwise the values of
+ tm_zone and/or tzname would be dead after changing TZ and calling
+ tzset. Abbreviations never move once allocated, and are live
+ until tzfree is called. */
+ char abbrs[FLEXIBLE_ARRAY_MEMBER];
+};
/* A more-standard <time.h>.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Don't get in the way of glibc when it includes time.h merely to
declare a few standard symbols, rather than to declare all the
- symbols. Also, Solaris 8 <time.h> eventually includes itself
+ symbols. (However, skip this for MinGW as it treats __need_time_t
+ incompatibly.) Also, Solaris 8 <time.h> eventually includes itself
recursively; if that is happening, just include the system <time.h>
without adding our own declarations. */
-#if (defined __need_time_t || defined __need_clock_t \
- || defined __need_timespec \
+#if (((defined __need_time_t || defined __need_clock_t \
+ || defined __need_timespec) \
+ && !defined __MINGW32__) \
|| defined _@GUARD_PREFIX@_TIME_H)
# @INCLUDE_NEXT@ @NEXT_TIME_H@
/* Some systems don't define struct timespec (e.g., AIX 4.1, Ultrix 4.3).
Or they define it with the wrong member names or define it in <sys/time.h>
- (e.g., FreeBSD circa 1997). Stock Mingw does not define it, but the
- pthreads-win32 library defines it in <pthread.h>. */
+ (e.g., FreeBSD circa 1997). Stock Mingw prior to 3.0 does not define it,
+ but the pthreads-win32 library defines it in <pthread.h>. */
# if ! @TIME_H_DEFINES_STRUCT_TIMESPEC@
# if @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@
# include <sys/time.h>
# elif @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@
# include <pthread.h>
-/* The pthreads-win32 <pthread.h> also defines a couple of broken macros. */
-# undef asctime_r
-# undef ctime_r
-# undef gmtime_r
-# undef localtime_r
-# undef rand_r
-# undef strtok_r
+# elif @UNISTD_H_DEFINES_STRUCT_TIMESPEC@
+# include <unistd.h>
# else
# ifdef __cplusplus
# endif
# 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>. */
+# if @GNULIB_GETTIMEOFDAY@
+# if @REPLACE_LOCALTIME@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef localtime
+# define localtime rpl_localtime
+# endif
+_GL_FUNCDECL_RPL (localtime, struct tm *, (time_t const *__timer)
+ _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (localtime, struct tm *, (time_t const *__timer));
+# else
+_GL_CXXALIAS_SYS (localtime, struct tm *, (time_t const *__timer));
+# endif
+_GL_CXXALIASWARN (localtime);
+# endif
+
+# if @GNULIB_GETTIMEOFDAY@
+# if @REPLACE_GMTIME@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef gmtime
+# define gmtime rpl_gmtime
+# endif
+_GL_FUNCDECL_RPL (gmtime, struct tm *, (time_t const *__timer)
+ _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (gmtime, struct tm *, (time_t const *__timer));
+# else
+_GL_CXXALIAS_SYS (gmtime, struct tm *, (time_t const *__timer));
+# endif
+_GL_CXXALIASWARN (gmtime);
+# endif
+
/* Parse BUF as a time stamp, assuming FORMAT specifies its layout, and store
the resulting broken-down time into TM. See
<http://www.opengroup.org/susv3xsh/strptime.html>. */
_GL_CXXALIASWARN (strptime);
# endif
+# if defined _GNU_SOURCE && @GNULIB_TIME_RZ@ && ! @HAVE_TIMEZONE_T@
+typedef struct tm_zone *timezone_t;
+_GL_FUNCDECL_SYS (tzalloc, timezone_t, (char const *__name));
+_GL_CXXALIAS_SYS (tzalloc, timezone_t, (char const *__name));
+_GL_FUNCDECL_SYS (tzfree, void, (timezone_t __tz));
+_GL_CXXALIAS_SYS (tzfree, void, (timezone_t __tz));
+_GL_FUNCDECL_SYS (localtime_rz, struct tm *,
+ (timezone_t __tz, time_t const *restrict __timer,
+ struct tm *restrict __result) _GL_ARG_NONNULL ((2, 3)));
+_GL_CXXALIAS_SYS (localtime_rz, struct tm *,
+ (timezone_t __tz, time_t const *restrict __timer,
+ struct tm *restrict __result));
+_GL_FUNCDECL_SYS (mktime_z, time_t,
+ (timezone_t __tz, struct tm *restrict __result)
+ _GL_ARG_NONNULL ((2)));
+_GL_CXXALIAS_SYS (mktime_z, time_t,
+ (timezone_t __tz, struct tm *restrict __result));
+# endif
+
/* Convert TM to a time_t value, assuming UTC. */
# if @GNULIB_TIMEGM@
# if @REPLACE_TIMEGM@
/* Reentrant time functions like localtime_r.
- Copyright (C) 2003, 2006-2007, 2010-2013 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2006-2007, 2010-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
--- /dev/null
+/* Time zone functions such as tzalloc and localtime_rz
+
+ Copyright 2015-2016 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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 <http://www.gnu.org/licenses/>. */
+
+/* Written by Paul Eggert. */
+
+/* Although this module is not thread-safe, any races should be fairly
+ rare and reasonably benign. For complete thread-safety, use a C
+ library with a working timezone_t type, so that this module is not
+ needed. */
+
+#include <config.h>
+
+#include <time.h>
+
+#include <errno.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "time-internal.h"
+
+#if !HAVE_TZSET
+static void tzset (void) { }
+#endif
+
+/* The approximate size to use for small allocation requests. This is
+ the largest "small" request for the GNU C library malloc. */
+enum { DEFAULT_MXFAST = 64 * sizeof (size_t) / 4 };
+
+/* Minimum size of the ABBRS member of struct abbr. ABBRS is larger
+ only in the unlikely case where an abbreviation longer than this is
+ used. */
+enum { ABBR_SIZE_MIN = DEFAULT_MXFAST - offsetof (struct tm_zone, abbrs) };
+
+/* Magic cookie timezone_t value, for local time. It differs from
+ NULL and from all other timezone_t values. Only the address
+ matters; the pointer is never dereferenced. */
+static timezone_t const local_tz = (timezone_t) 1;
+
+#if HAVE_TM_ZONE || HAVE_TZNAME
+
+/* Return true if the values A and B differ according to the rules for
+ tm_isdst: A and B differ if one is zero and the other positive. */
+static bool
+isdst_differ (int a, int b)
+{
+ return !a != !b && 0 <= a && 0 <= b;
+}
+
+/* Return true if A and B are equal. */
+static int
+equal_tm (const struct tm *a, const struct tm *b)
+{
+ return ! ((a->tm_sec ^ b->tm_sec)
+ | (a->tm_min ^ b->tm_min)
+ | (a->tm_hour ^ b->tm_hour)
+ | (a->tm_mday ^ b->tm_mday)
+ | (a->tm_mon ^ b->tm_mon)
+ | (a->tm_year ^ b->tm_year)
+ | isdst_differ (a->tm_isdst, b->tm_isdst));
+}
+
+#endif
+
+/* Copy to ABBRS the abbreviation at ABBR with size ABBR_SIZE (this
+ includes its trailing null byte). Append an extra null byte to
+ mark the end of ABBRS. */
+static void
+extend_abbrs (char *abbrs, char const *abbr, size_t abbr_size)
+{
+ memcpy (abbrs, abbr, abbr_size);
+ abbrs[abbr_size] = '\0';
+}
+
+/* Return a newly allocated time zone for NAME, or NULL on failure.
+ A null NAME stands for wall clock time (which is like unset TZ). */
+timezone_t
+tzalloc (char const *name)
+{
+ size_t name_size = name ? strlen (name) + 1 : 0;
+ size_t abbr_size = name_size < ABBR_SIZE_MIN ? ABBR_SIZE_MIN : name_size + 1;
+ timezone_t tz = malloc (offsetof (struct tm_zone, abbrs) + abbr_size);
+ if (tz)
+ {
+ tz->next = NULL;
+#if HAVE_TZNAME && !HAVE_TM_ZONE
+ tz->tzname_copy[0] = tz->tzname_copy[1] = NULL;
+#endif
+ tz->tz_is_set = !!name;
+ tz->abbrs[0] = '\0';
+ if (name)
+ extend_abbrs (tz->abbrs, name, name_size);
+ }
+ return tz;
+}
+
+/* Save into TZ any nontrivial time zone abbreviation used by TM, and
+ update *TM (if HAVE_TM_ZONE) or *TZ (if !HAVE_TM_ZONE &&
+ HAVE_TZNAME) if they use the abbreviation. Return true if
+ successful, false (setting errno) otherwise. */
+static bool
+save_abbr (timezone_t tz, struct tm *tm)
+{
+#if HAVE_TM_ZONE || HAVE_TZNAME
+ char const *zone = NULL;
+ char *zone_copy = (char *) "";
+
+# if HAVE_TZNAME
+ int tzname_index = -1;
+# endif
+
+# if HAVE_TM_ZONE
+ zone = tm->tm_zone;
+# endif
+
+# if HAVE_TZNAME
+ if (! (zone && *zone) && 0 <= tm->tm_isdst)
+ {
+ tzname_index = tm->tm_isdst != 0;
+ zone = tzname[tzname_index];
+ }
+# endif
+
+ /* No need to replace null zones, or zones within the struct tm. */
+ if (!zone || ((char *) tm <= zone && zone < (char *) (tm + 1)))
+ return true;
+
+ if (*zone)
+ {
+ zone_copy = tz->abbrs;
+
+ while (strcmp (zone_copy, zone) != 0)
+ {
+ if (! (*zone_copy || (zone_copy == tz->abbrs && tz->tz_is_set)))
+ {
+ size_t zone_size = strlen (zone) + 1;
+ if (zone_size < tz->abbrs + ABBR_SIZE_MIN - zone_copy)
+ extend_abbrs (zone_copy, zone, zone_size);
+ else
+ {
+ tz = tz->next = tzalloc (zone);
+ if (!tz)
+ return false;
+ tz->tz_is_set = 0;
+ zone_copy = tz->abbrs;
+ }
+ break;
+ }
+
+ zone_copy += strlen (zone_copy) + 1;
+ if (!*zone_copy && tz->next)
+ {
+ tz = tz->next;
+ zone_copy = tz->abbrs;
+ }
+ }
+ }
+
+ /* Replace the zone name so that its lifetime matches that of TZ. */
+# if HAVE_TM_ZONE
+ tm->tm_zone = zone_copy;
+# else
+ if (0 <= tzname_index)
+ tz->tzname_copy[tzname_index] = zone_copy;
+# endif
+#endif
+
+ return true;
+}
+
+/* Free a time zone. */
+void
+tzfree (timezone_t tz)
+{
+ if (tz != local_tz)
+ while (tz)
+ {
+ timezone_t next = tz->next;
+ free (tz);
+ tz = next;
+ }
+}
+
+/* Get and set the TZ environment variable. These functions can be
+ overridden by programs like Emacs that manage their own environment. */
+
+#ifndef getenv_TZ
+static char *
+getenv_TZ (void)
+{
+ return getenv ("TZ");
+}
+#endif
+
+#ifndef setenv_TZ
+static int
+setenv_TZ (char const *tz)
+{
+ return tz ? setenv ("TZ", tz, 1) : unsetenv ("TZ");
+}
+#endif
+
+/* Change the environment to match the specified timezone_t value.
+ Return true if successful, false (setting errno) otherwise. */
+static bool
+change_env (timezone_t tz)
+{
+ if (setenv_TZ (tz->tz_is_set ? tz->abbrs : NULL) != 0)
+ return false;
+ tzset ();
+ return true;
+}
+
+/* Temporarily set the time zone to TZ, which must not be null.
+ Return LOCAL_TZ if the time zone setting is already correct.
+ Otherwise return a newly allocated time zone representing the old
+ setting, or NULL (setting errno) on failure. */
+static timezone_t
+set_tz (timezone_t tz)
+{
+ char *env_tz = getenv_TZ ();
+ if (env_tz
+ ? tz->tz_is_set && strcmp (tz->abbrs, env_tz) == 0
+ : !tz->tz_is_set)
+ return local_tz;
+ else
+ {
+ timezone_t old_tz = tzalloc (env_tz);
+ if (!old_tz)
+ return old_tz;
+ if (! change_env (tz))
+ {
+ int saved_errno = errno;
+ tzfree (old_tz);
+ errno = saved_errno;
+ return NULL;
+ }
+ return old_tz;
+ }
+}
+
+/* Restore an old setting returned by set_tz. It must not be null.
+ Return true (preserving errno) if successful, false (setting errno)
+ otherwise. */
+static bool
+revert_tz (timezone_t tz)
+{
+ if (tz == local_tz)
+ return true;
+ else
+ {
+ int saved_errno = errno;
+ bool ok = change_env (tz);
+ if (!ok)
+ saved_errno = errno;
+ tzfree (tz);
+ errno = saved_errno;
+ return ok;
+ }
+}
+
+/* Use time zone TZ to compute localtime_r (T, TM). */
+struct tm *
+localtime_rz (timezone_t tz, time_t const *t, struct tm *tm)
+{
+ if (!tz)
+ return gmtime_r (t, tm);
+ else
+ {
+ timezone_t old_tz = set_tz (tz);
+ if (old_tz)
+ {
+ bool abbr_saved = localtime_r (t, tm) && save_abbr (tz, tm);
+ if (revert_tz (old_tz) && abbr_saved)
+ return tm;
+ }
+ return NULL;
+ }
+}
+
+/* Use time zone TZ to compute mktime (TM). */
+time_t
+mktime_z (timezone_t tz, struct tm *tm)
+{
+ if (!tz)
+ return timegm (tm);
+ else
+ {
+ timezone_t old_tz = set_tz (tz);
+ if (old_tz)
+ {
+ time_t t = mktime (tm);
+#if HAVE_TM_ZONE || HAVE_TZNAME
+ time_t badtime = -1;
+ struct tm tm_1;
+ if ((t != badtime
+ || (localtime_r (&t, &tm_1) && equal_tm (tm, &tm_1)))
+ && !save_abbr (tz, tm))
+ t = badtime;
+#endif
+ if (revert_tz (old_tz))
+ return t;
+ }
+ return -1;
+ }
+}
--- /dev/null
+/* Convert UTC calendar time to simple time. Like mktime but assumes UTC.
+
+ Copyright (C) 1994, 1997, 2003-2004, 2006-2007, 2009-2016 Free Software
+ Foundation, Inc. This file is part of the GNU C Library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3, 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 _LIBC
+# include <config.h>
+#endif
+
+#include <time.h>
+
+#ifdef _LIBC
+typedef time_t mktime_offset_t;
+#else
+# undef __gmtime_r
+# define __gmtime_r gmtime_r
+# define __mktime_internal mktime_internal
+# include "mktime-internal.h"
+#endif
+
+time_t
+timegm (struct tm *tmp)
+{
+ static mktime_offset_t gmtime_offset;
+ tmp->tm_isdst = 0;
+ return __mktime_internal (tmp, __gmtime_r, &gmtime_offset);
+}
/* timespec -- System time interface
- Copyright (C) 2000, 2002, 2004-2005, 2007, 2009-2013 Free Software
+ Copyright (C) 2000, 2002, 2004-2005, 2007, 2009-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
# include <time.h>
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
_GL_INLINE_HEADER_BEGIN
#ifndef _GL_TIMESPEC_INLINE
# define _GL_TIMESPEC_INLINE _GL_INLINE
#endif
+/* Resolution of timespec time stamps (in units per second), and log
+ base 10 of the resolution. */
+
+enum { TIMESPEC_RESOLUTION = 1000000000 };
+enum { LOG10_TIMESPEC_RESOLUTION = 9 };
+
+/* Return a timespec with seconds S and nanoseconds NS. */
+
+_GL_TIMESPEC_INLINE struct timespec
+make_timespec (time_t s, long int ns)
+{
+ struct timespec r;
+ r.tv_sec = s;
+ r.tv_nsec = ns;
+ return r;
+}
+
/* Return negative, zero, positive if A < B, A == B, A > B, respectively.
For each time stamp T, this code assumes that either:
The (int) cast avoids a gcc -Wconversion warning. */
-_GL_TIMESPEC_INLINE int
+_GL_TIMESPEC_INLINE int _GL_ATTRIBUTE_PURE
timespec_cmp (struct timespec a, struct timespec b)
{
return (a.tv_sec < b.tv_sec ? -1
/* Return -1, 0, 1, depending on the sign of A. A.tv_nsec must be
nonnegative. */
-_GL_TIMESPEC_INLINE int
+_GL_TIMESPEC_INLINE int _GL_ATTRIBUTE_PURE
timespec_sign (struct timespec a)
{
return a.tv_sec < 0 ? -1 : a.tv_sec || a.tv_nsec;
/* Removes leading and/or trailing whitespaces
- Copyright (C) 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 2006-2016 Free Software Foundation, Inc.
This 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 "xalloc.h"
/* Use this to suppress gcc's "...may be used before initialized" warnings. */
-#ifdef lint
+#if defined GCC_LINT || defined lint
# define IF_LINT(Code) Code
#else
# define IF_LINT(Code) /* empty */
/* Removes leading and/or trailing whitespaces
- Copyright (C) 2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2006, 2009-2016 Free Software Foundation, Inc.
This 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 <config.h>
#define _GL_UNISTD_INLINE _GL_EXTERN_INLINE
#include "unistd.h"
+typedef int dummy;
/* Substitute for and wrapper around <unistd.h>.
- Copyright (C) 2003-2013 Free Software Foundation, Inc.
+ Copyright (C) 2003-2016 Free Software Foundation, Inc.
This 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
@PRAGMA_COLUMNS@
+#ifdef _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>
+ In this situation, the functions are not yet declared, therefore we cannot
+ provide the C++ aliases. */
+
+#@INCLUDE_NEXT@ @NEXT_UNISTD_H@
+
+#else
+/* Normal invocation convention. */
+
/* The include_next requires a split double-inclusion guard. */
#if @HAVE_UNISTD_H@
+# define _GL_INCLUDING_UNISTD_H
# @INCLUDE_NEXT@ @NEXT_UNISTD_H@
+# undef _GL_INCLUDING_UNISTD_H
#endif
/* Get all possible declarations of gethostname(). */
# include <getopt.h>
#endif
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
_GL_INLINE_HEADER_BEGIN
#ifndef _GL_UNISTD_INLINE
# define _GL_UNISTD_INLINE _GL_INLINE
/* Set of environment variables and values. An array of strings of the form
"VARIABLE=VALUE", terminated with a NULL. */
# if defined __APPLE__ && defined __MACH__
+# include <TargetConditionals.h>
+# if !TARGET_OS_IPHONE && !TARGET_IPHONE_SIMULATOR
+# define _GL_USE_CRT_EXTERNS
+# endif
+# endif
+# ifdef _GL_USE_CRT_EXTERNS
# include <crt_externs.h>
# define environ (*_NSGetEnviron ())
# else
#if @GNULIB_GETDTABLESIZE@
/* Return the maximum number of file descriptors in the current process.
In POSIX, this is same as sysconf (_SC_OPEN_MAX). */
-# if !@HAVE_GETDTABLESIZE@
+# if @REPLACE_GETDTABLESIZE@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef getdtablesize
+# define getdtablesize rpl_getdtablesize
+# endif
+_GL_FUNCDECL_RPL (getdtablesize, int, (void));
+_GL_CXXALIAS_RPL (getdtablesize, int, (void));
+# else
+# if !@HAVE_GETDTABLESIZE@
_GL_FUNCDECL_SYS (getdtablesize, int, (void));
-# endif
+# endif
_GL_CXXALIAS_SYS (getdtablesize, int, (void));
+# endif
_GL_CXXALIASWARN (getdtablesize);
#elif defined GNULIB_POSIXCHECK
# undef getdtablesize
#if @GNULIB_READLINKAT@
-# if !@HAVE_READLINKAT@
+# if @REPLACE_READLINKAT@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# define readlinkat rpl_readlinkat
+# endif
+_GL_FUNCDECL_RPL (readlinkat, ssize_t,
+ (int fd, char const *file, char *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));
+# else
+# if !@HAVE_READLINKAT@
_GL_FUNCDECL_SYS (readlinkat, ssize_t,
(int fd, char const *file, char *buf, size_t len)
_GL_ARG_NONNULL ((2, 3)));
-# endif
+# endif
_GL_CXXALIAS_SYS (readlinkat, ssize_t,
(int fd, char const *file, char *buf, size_t len));
+# endif
_GL_CXXALIASWARN (readlinkat);
#elif defined GNULIB_POSIXCHECK
# undef readlinkat
#if @GNULIB_SYMLINKAT@
-# if !@HAVE_SYMLINKAT@
+# if @REPLACE_SYMLINKAT@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef symlinkat
+# define symlinkat rpl_symlinkat
+# endif
+_GL_FUNCDECL_RPL (symlinkat, int,
+ (char const *contents, int fd, char const *file)
+ _GL_ARG_NONNULL ((1, 3)));
+_GL_CXXALIAS_RPL (symlinkat, int,
+ (char const *contents, int fd, char const *file));
+# else
+# if !@HAVE_SYMLINKAT@
_GL_FUNCDECL_SYS (symlinkat, int,
(char const *contents, int fd, char const *file)
_GL_ARG_NONNULL ((1, 3)));
-# endif
+# endif
_GL_CXXALIAS_SYS (symlinkat, int,
(char const *contents, int fd, char const *file));
+# endif
_GL_CXXALIASWARN (symlinkat);
#elif defined GNULIB_POSIXCHECK
# undef symlinkat
_GL_INLINE_HEADER_END
#endif /* _@GUARD_PREFIX@_UNISTD_H */
+#endif /* _GL_INCLUDING_UNISTD_H */
#endif /* _@GUARD_PREFIX@_UNISTD_H */
/* Elementary Unicode string functions.
- Copyright (C) 2001-2002, 2005-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2002, 2005-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
/* Look at first character in UTF-8 string, returning an error code.
- Copyright (C) 1999-2002, 2006-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1999-2002, 2006-2007, 2009-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2001.
This program is free software: you can redistribute it and/or modify it
/* Conversion UCS-4 to UTF-8.
- Copyright (C) 2002, 2006-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2006-2007, 2009-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2002.
This program is free software: you can redistribute it and/or modify it
/* Store a character in UTF-8 string.
- Copyright (C) 2002, 2005-2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2005-2006, 2009-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2002.
This program is free software: you can redistribute it and/or modify it
/* Elementary types and macros for the GNU UniString library.
- Copyright (C) 2002, 2005-2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2005-2006, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
/* Display width functions.
- Copyright (C) 2001-2002, 2005, 2007, 2009-2013 Free Software Foundation,
+ Copyright (C) 2001-2002, 2005, 2007, 2009-2016 Free Software Foundation,
Inc.
This program is free software: you can redistribute it and/or modify it
/* Test for CJK encoding.
- Copyright (C) 2001-2002, 2005-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2002, 2005-2007, 2009-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2002.
This program is free software: you can redistribute it and/or modify it
/* Determine display width of Unicode character.
- Copyright (C) 2001-2002, 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2002, 2006-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2002.
This program is free software: you can redistribute it and/or modify it
* - Zero width characters; generated from
* "grep '^[^;]*;ZERO WIDTH ' UnicodeData.txt"
*/
-static const unsigned char nonspacing_table_data[27*64] = {
+static const unsigned char nonspacing_table_data[36*64] = {
/* 0x0000-0x01ff */
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, /* 0x0000-0x003f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0x0040-0x007f */
0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xbf, /* 0x0580-0x05bf */
0xb6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x05c0-0x05ff */
/* 0x0600-0x07ff */
- 0x0f, 0x00, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, /* 0x0600-0x063f */
+ 0x3f, 0x00, 0xff, 0x17, 0x00, 0x00, 0x00, 0x00, /* 0x0600-0x063f */
0x00, 0xf8, 0xff, 0xff, 0x00, 0x00, 0x01, 0x00, /* 0x0640-0x067f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0680-0x06bf */
0x00, 0x00, 0xc0, 0xbf, 0x9f, 0x3d, 0x00, 0x00, /* 0x06c0-0x06ff */
0x00, 0x00, 0xc0, 0xfb, 0xef, 0x3e, 0x00, 0x00, /* 0x0800-0x083f */
0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, /* 0x0840-0x087f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0880-0x08bf */
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08c0-0x08ff */
+ 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, /* 0x08c0-0x08ff */
0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, /* 0x0900-0x093f */
0xfe, 0x21, 0xfe, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0940-0x097f */
0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0980-0x09bf */
0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0b80-0x0bbf */
0x01, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0bc0-0x0bff */
/* 0x0c00-0x0dff */
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, /* 0x0c00-0x0c3f */
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, /* 0x0c00-0x0c3f */
0xc1, 0x3d, 0x60, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0c40-0x0c7f */
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0c80-0x0cbf */
+ 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0c80-0x0cbf */
0x00, 0x30, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0cc0-0x0cff */
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0d00-0x0d3f */
+ 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0d00-0x0d3f */
0x1e, 0x20, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0d40-0x0d7f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0d80-0x0dbf */
0x00, 0x04, 0x5c, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0dc0-0x0dff */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x3f, /* 0x1780-0x17bf */
0x40, 0xfe, 0x0f, 0x20, 0x00, 0x00, 0x00, 0x00, /* 0x17c0-0x17ff */
/* 0x1800-0x19ff */
- 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1800-0x183f */
+ 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1800-0x183f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1840-0x187f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, /* 0x1880-0x18bf */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18c0-0x18ff */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1980-0x19bf */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x19c0-0x19ff */
/* 0x1a00-0x1bff */
- 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, /* 0x1a00-0x1a3f */
+ 0x00, 0x00, 0x80, 0x09, 0x00, 0x00, 0x00, 0x00, /* 0x1a00-0x1a3f */
0x00, 0x00, 0x40, 0x7f, 0xe5, 0x1f, 0xf8, 0x9f, /* 0x1a40-0x1a7f */
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1a80-0x1abf */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f, /* 0x1a80-0x1abf */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1ac0-0x1aff */
0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x17, /* 0x1b00-0x1b3f */
0x04, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x0f, 0x00, /* 0x1b40-0x1b7f */
- 0x03, 0x00, 0x00, 0x00, 0x3c, 0x03, 0x00, 0x00, /* 0x1b80-0x1bbf */
+ 0x03, 0x00, 0x00, 0x00, 0x3c, 0x3b, 0x00, 0x00, /* 0x1b80-0x1bbf */
0x00, 0x00, 0x00, 0x00, 0x40, 0xa3, 0x03, 0x00, /* 0x1bc0-0x1bff */
/* 0x1c00-0x1dff */
0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xcf, 0x00, /* 0x1c00-0x1c3f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1c40-0x1c7f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1c80-0x1cbf */
- 0x00, 0x00, 0xf7, 0xff, 0xfd, 0x21, 0x00, 0x00, /* 0x1cc0-0x1cff */
+ 0x00, 0x00, 0xf7, 0xff, 0xfd, 0x21, 0x10, 0x03, /* 0x1cc0-0x1cff */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d00-0x1d3f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d40-0x1d7f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d80-0x1dbf */
- 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0xf0, /* 0x1dc0-0x1dff */
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xf0, /* 0x1dc0-0x1dff */
/* 0x2000-0x21ff */
0x00, 0xf8, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, /* 0x2000-0x203f */
- 0x00, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x00, 0x00, /* 0x2040-0x207f */
+ 0x00, 0x00, 0x00, 0x00, 0xdf, 0xff, 0x00, 0x00, /* 0x2040-0x207f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2080-0x20bf */
0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x01, 0x00, /* 0x20c0-0x20ff */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2100-0x213f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2d80-0x2dbf */
0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, /* 0x2dc0-0x2dff */
/* 0x3000-0x31ff */
- 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, /* 0x3000-0x303f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, /* 0x3000-0x303f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x3040-0x307f */
0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, /* 0x3080-0x30bf */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30c0-0x30ff */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x31c0-0x31ff */
/* 0xa600-0xa7ff */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa600-0xa63f */
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x07, 0x30, /* 0xa640-0xa67f */
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa680-0xa6bf */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf7, 0x3f, /* 0xa640-0xa67f */
+ 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, /* 0xa680-0xa6bf */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, /* 0xa6c0-0xa6ff */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa700-0xa73f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa740-0xa77f */
0x00, 0x00, 0x00, 0x00, 0xc0, 0x3f, 0x00, 0x00, /* 0xa900-0xa93f */
0x80, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa940-0xa97f */
0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x13, /* 0xa980-0xa9bf */
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa9c0-0xa9ff */
+ 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, /* 0xa9c0-0xa9ff */
/* 0xaa00-0xabff */
0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x66, 0x00, /* 0xaa00-0xaa3f */
- 0x08, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xaa40-0xaa7f */
+ 0x08, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0xaa40-0xaa7f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9d, 0xc1, /* 0xaa80-0xaabf */
- 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xaac0-0xaaff */
+ 0x02, 0x00, 0x00, 0x00, 0x00, 0x30, 0x40, 0x00, /* 0xaac0-0xaaff */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xab00-0xab3f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xab40-0xab7f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xab80-0xabbf */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfb80-0xfbbf */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfbc0-0xfbff */
/* 0xfe00-0xffff */
- 0xff, 0xff, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, /* 0xfe00-0xfe3f */
+ 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, /* 0xfe00-0xfe3f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfe40-0xfe7f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfe80-0xfebf */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0xfec0-0xfeff */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10140-0x1017f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10180-0x101bf */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, /* 0x101c0-0x101ff */
+ /* 0x10200-0x103ff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10200-0x1023f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10240-0x1027f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10280-0x102bf */
+ 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, /* 0x102c0-0x102ff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10300-0x1033f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x07, /* 0x10340-0x1037f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10380-0x103bf */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x103c0-0x103ff */
/* 0x10a00-0x10bff */
0x6e, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87, /* 0x10a00-0x10a3f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10a40-0x10a7f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10a80-0x10abf */
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10ac0-0x10aff */
+ 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, /* 0x10ac0-0x10aff */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b00-0x10b3f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b40-0x10b7f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b80-0x10bbf */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10bc0-0x10bff */
/* 0x11000-0x111ff */
0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, /* 0x11000-0x1103f */
- 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11040-0x1107f */
+ 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0x11040-0x1107f */
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x26, /* 0x11080-0x110bf */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x110c0-0x110ff */
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11100-0x1113f */
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11140-0x1117f */
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11180-0x111bf */
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x111c0-0x111ff */
+ 0x07, 0x00, 0x00, 0x00, 0x80, 0xef, 0x1f, 0x00, /* 0x11100-0x1113f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, /* 0x11140-0x1117f */
+ 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x7f, /* 0x11180-0x111bf */
+ 0x00, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x111c0-0x111ff */
+ /* 0x11200-0x113ff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xd3, 0x00, /* 0x11200-0x1123f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11240-0x1127f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11280-0x112bf */
+ 0x00, 0x00, 0x00, 0x80, 0xf8, 0x07, 0x00, 0x00, /* 0x112c0-0x112ff */
+ 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x11300-0x1133f */
+ 0x01, 0x00, 0x00, 0x00, 0xc0, 0x1f, 0x1f, 0x00, /* 0x11340-0x1137f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11380-0x113bf */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x113c0-0x113ff */
+ /* 0x11400-0x115ff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11400-0x1143f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11440-0x1147f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x85, /* 0x11480-0x114bf */
+ 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x114c0-0x114ff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11500-0x1153f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11540-0x1157f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xb0, /* 0x11580-0x115bf */
+ 0x01, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, /* 0x115c0-0x115ff */
+ /* 0x11600-0x117ff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xa7, /* 0x11600-0x1163f */
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11640-0x1167f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0xbf, 0x00, /* 0x11680-0x116bf */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x116c0-0x116ff */
+ 0x00, 0x00, 0x00, 0xe0, 0xbc, 0x0f, 0x00, 0x00, /* 0x11700-0x1173f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11740-0x1177f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11780-0x117bf */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x117c0-0x117ff */
+ /* 0x16a00-0x16bff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16a00-0x16a3f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16a40-0x16a7f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16a80-0x16abf */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, /* 0x16ac0-0x16aff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, /* 0x16b00-0x16b3f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16b40-0x16b7f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16b80-0x16bbf */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16bc0-0x16bff */
+ /* 0x16e00-0x16fff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16e00-0x16e3f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16e40-0x16e7f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16e80-0x16ebf */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16ec0-0x16eff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16f00-0x16f3f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16f40-0x16f7f */
+ 0x00, 0x80, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16f80-0x16fbf */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16fc0-0x16fff */
+ /* 0x1bc00-0x1bdff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bc00-0x1bc3f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bc40-0x1bc7f */
+ 0x00, 0x00, 0x00, 0x60, 0x0f, 0x00, 0x00, 0x00, /* 0x1bc80-0x1bcbf */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bcc0-0x1bcff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bd00-0x1bd3f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bd40-0x1bd7f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bd80-0x1bdbf */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bdc0-0x1bdff */
/* 0x1d000-0x1d1ff */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d000-0x1d03f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d040-0x1d07f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d300-0x1d33f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d340-0x1d37f */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d380-0x1d3bf */
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* 0x1d3c0-0x1d3ff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d3c0-0x1d3ff */
+ /* 0x1da00-0x1dbff */
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xf8, /* 0x1da00-0x1da3f */
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x20, 0x00, /* 0x1da40-0x1da7f */
+ 0x10, 0x00, 0x00, 0xf8, 0xfe, 0xff, 0x00, 0x00, /* 0x1da80-0x1dabf */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1dac0-0x1daff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1db00-0x1db3f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1db40-0x1db7f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1db80-0x1dbbf */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1dbc0-0x1dbff */
+ /* 0x1e800-0x1e9ff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e800-0x1e83f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e840-0x1e87f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e880-0x1e8bf */
+ 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e8c0-0x1e8ff */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e900-0x1e93f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e940-0x1e97f */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e980-0x1e9bf */
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* 0x1e9c0-0x1e9ff */
};
-static const signed char nonspacing_table_ind[240] = {
+static const signed char nonspacing_table_ind[248] = {
0, 1, 2, 3, 4, 5, 6, 7, /* 0x0000-0x0fff */
8, 9, -1, 10, 11, 12, 13, -1, /* 0x1000-0x1fff */
14, -1, -1, -1, -1, -1, 15, -1, /* 0x2000-0x2fff */
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xd000-0xdfff */
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xe000-0xefff */
-1, -1, -1, -1, -1, 20, -1, 21, /* 0xf000-0xffff */
- 22, -1, -1, -1, -1, 23, -1, -1, /* 0x10000-0x10fff */
- 24, -1, -1, -1, -1, -1, -1, -1, /* 0x11000-0x11fff */
+ 22, 23, -1, -1, -1, 24, -1, -1, /* 0x10000-0x10fff */
+ 25, 26, 27, 28, -1, -1, -1, -1, /* 0x11000-0x11fff */
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x12000-0x12fff */
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x13000-0x13fff */
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x14000-0x14fff */
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x15000-0x15fff */
- -1, -1, -1, -1, -1, -1, -1, -1, /* 0x16000-0x16fff */
+ -1, -1, -1, -1, -1, 29, -1, 30, /* 0x16000-0x16fff */
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x17000-0x17fff */
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x18000-0x18fff */
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x19000-0x19fff */
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x1a000-0x1afff */
- -1, -1, -1, -1, -1, -1, -1, -1, /* 0x1b000-0x1bfff */
+ -1, -1, -1, -1, -1, -1, 31, -1, /* 0x1b000-0x1bfff */
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x1c000-0x1cfff */
- 25, 26, -1, -1, -1, -1, -1, -1 /* 0x1d000-0x1dfff */
+ 32, 33, -1, -1, -1, 34, -1, -1, /* 0x1d000-0x1dfff */
+ -1, -1, -1, -1, 35, -1, -1, -1 /* 0x1e000-0x1efff */
};
/* Determine number of column positions required for UC. */
uc_width (ucs4_t uc, const char *encoding)
{
/* Test for non-spacing or control character. */
- if ((uc >> 9) < 240)
+ if ((uc >> 9) < 248)
{
int ind = nonspacing_table_ind[uc >> 9];
if (ind >= 0)
/* Prefer faster, non-thread-safe stdio functions if available.
- Copyright (C) 2001-2004, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2004, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-/* Copyright (C) 1992, 1995-2002, 2005-2013 Free Software Foundation, Inc.
+/* Copyright (C) 1992, 1995-2002, 2005-2016 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
/* vsprintf with automatic memory allocation.
- Copyright (C) 1999, 2002-2013 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2002-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* GCC >= 4.0 with -Wall emits unjustified "... may be used uninitialized"
warnings in this file. Use -Dlint to suppress them. */
-#ifdef lint
+#if defined GCC_LINT || defined lint
# define IF_LINT(Code) Code
#else
# define IF_LINT(Code) /* empty */
else
{
do
- result[length++] = (unsigned char) *cp++;
+ result[length++] = *cp++;
while (--n > 0);
}
}
if (!(a.arg[dp->width_arg_index].type == TYPE_INT))
abort ();
arg = a.arg[dp->width_arg_index].a.a_int;
+ width = arg;
if (arg < 0)
{
/* "A negative field width is taken as a '-' flag
followed by a positive field width." */
flags |= FLAG_LEFT;
- width = (unsigned int) (-arg);
+ width = -width;
}
- else
- width = arg;
}
else
{
characters = 0;
}
- if (has_width && width > characters
- && !(dp->flags & FLAG_LEFT))
+ if (characters < width && !(dp->flags & FLAG_LEFT))
{
size_t n = width - characters;
ENSURE_ALLOCATION (xsum (length, n));
}
# endif
- if (has_width && width > characters
- && (dp->flags & FLAG_LEFT))
+ if (characters < width && (dp->flags & FLAG_LEFT))
{
size_t n = width - characters;
ENSURE_ALLOCATION (xsum (length, n));
characters = 0;
}
- if (has_width && width > characters
- && !(dp->flags & FLAG_LEFT))
+ if (characters < width && !(dp->flags & FLAG_LEFT))
{
size_t n = width - characters;
ENSURE_ALLOCATION (xsum (length, n));
}
# endif
- if (has_width && width > characters
- && (dp->flags & FLAG_LEFT))
+ if (characters < width && (dp->flags & FLAG_LEFT))
{
size_t n = width - characters;
ENSURE_ALLOCATION (xsum (length, n));
characters = 0;
}
- if (has_width && width > characters
- && !(dp->flags & FLAG_LEFT))
+ if (characters < width && !(dp->flags & FLAG_LEFT))
{
size_t n = width - characters;
ENSURE_ALLOCATION (xsum (length, n));
}
# endif
- if (has_width && width > characters
- && (dp->flags & FLAG_LEFT))
+ if (characters < width && (dp->flags & FLAG_LEFT))
{
size_t n = width - characters;
ENSURE_ALLOCATION (xsum (length, n));
if (!(a.arg[dp->width_arg_index].type == TYPE_INT))
abort ();
arg = a.arg[dp->width_arg_index].a.a_int;
+ width = arg;
if (arg < 0)
{
/* "A negative field width is taken as a '-' flag
followed by a positive field width." */
flags |= FLAG_LEFT;
- width = (unsigned int) (-arg);
+ width = -width;
}
- else
- width = arg;
}
else
{
characters = 0;
}
- if (has_width && width > characters
- && !(dp->flags & FLAG_LEFT))
+ if (characters < width && !(dp->flags & FLAG_LEFT))
{
size_t n = width - characters;
ENSURE_ALLOCATION (xsum (length, n));
}
}
- if (has_width && width > characters
- && (dp->flags & FLAG_LEFT))
+ if (characters < width && (dp->flags & FLAG_LEFT))
{
size_t n = width - characters;
ENSURE_ALLOCATION (xsum (length, n));
/* w doesn't matter. */
w = 0;
- if (has_width && width > w
- && !(dp->flags & FLAG_LEFT))
+ if (w < width && !(dp->flags & FLAG_LEFT))
{
size_t n = width - w;
ENSURE_ALLOCATION (xsum (length, n));
length += tmpdst_len;
# endif
- if (has_width && width > w
- && (dp->flags & FLAG_LEFT))
+ if (w < width && (dp->flags & FLAG_LEFT))
{
size_t n = width - w;
ENSURE_ALLOCATION (xsum (length, n));
{
arg_type type = a.arg[dp->arg_index].type;
int flags = dp->flags;
- int has_width;
size_t width;
int has_precision;
size_t precision;
size_t tmp_length;
+ size_t count;
DCHAR_T tmpbuf[700];
DCHAR_T *tmp;
DCHAR_T *pad_ptr;
DCHAR_T *p;
- has_width = 0;
width = 0;
if (dp->width_start != dp->width_end)
{
if (!(a.arg[dp->width_arg_index].type == TYPE_INT))
abort ();
arg = a.arg[dp->width_arg_index].a.a_int;
+ width = arg;
if (arg < 0)
{
/* "A negative field width is taken as a '-' flag
followed by a positive field width." */
flags |= FLAG_LEFT;
- width = (unsigned int) (-arg);
+ width = -width;
}
- else
- width = arg;
}
else
{
width = xsum (xtimes (width, 10), *digitp++ - '0');
while (digitp != dp->width_end);
}
- has_width = 1;
}
has_precision = 0;
abort ();
# endif
}
+
/* The generated string now extends from tmp to p, with the
zero padding insertion point being at pad_ptr. */
- if (has_width && p - tmp < width)
+ count = p - tmp;
+
+ if (count < width)
{
- size_t pad = width - (p - tmp);
+ size_t pad = width - count;
DCHAR_T *end = p + pad;
if (flags & FLAG_LEFT)
p = end;
}
- {
- size_t count = p - tmp;
+ count = p - tmp;
- if (count >= tmp_length)
- /* tmp_length was incorrectly calculated - fix the
- code above! */
- abort ();
+ if (count >= tmp_length)
+ /* tmp_length was incorrectly calculated - fix the
+ code above! */
+ abort ();
- /* Make room for the result. */
- if (count >= allocated - length)
- {
- size_t n = xsum (length, count);
+ /* Make room for the result. */
+ if (count >= allocated - length)
+ {
+ size_t n = xsum (length, count);
- ENSURE_ALLOCATION (n);
- }
+ ENSURE_ALLOCATION (n);
+ }
- /* Append the result. */
- memcpy (result + length, tmp, count * sizeof (DCHAR_T));
- if (tmp != tmpbuf)
- free (tmp);
- length += count;
- }
+ /* Append the result. */
+ memcpy (result + length, tmp, count * sizeof (DCHAR_T));
+ if (tmp != tmpbuf)
+ free (tmp);
+ length += count;
}
#endif
#if (NEED_PRINTF_INFINITE_DOUBLE || NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_LONG_DOUBLE || NEED_PRINTF_LONG_DOUBLE) && !defined IN_LIBINTL
arg_type type = a.arg[dp->arg_index].type;
# endif
int flags = dp->flags;
- int has_width;
size_t width;
+ size_t count;
int has_precision;
size_t precision;
size_t tmp_length;
DCHAR_T *pad_ptr;
DCHAR_T *p;
- has_width = 0;
width = 0;
if (dp->width_start != dp->width_end)
{
if (!(a.arg[dp->width_arg_index].type == TYPE_INT))
abort ();
arg = a.arg[dp->width_arg_index].a.a_int;
+ width = arg;
if (arg < 0)
{
/* "A negative field width is taken as a '-' flag
followed by a positive field width." */
flags |= FLAG_LEFT;
- width = (unsigned int) (-arg);
+ width = -width;
}
- else
- width = arg;
}
else
{
width = xsum (xtimes (width, 10), *digitp++ - '0');
while (digitp != dp->width_end);
}
- has_width = 1;
}
has_precision = 0;
digits without trailing zeroes. */
if (exponent >= 0)
{
- size_t count = exponent + 1;
+ size_t ecount = exponent + 1;
/* Note: count <= precision = ndigits. */
- for (; count > 0; count--)
+ for (; ecount > 0; ecount--)
*p++ = digits[--ndigits];
if ((flags & FLAG_ALT) || ndigits > nzeroes)
{
}
else
{
- size_t count = -exponent - 1;
+ size_t ecount = -exponent - 1;
*p++ = '0';
*p++ = decimal_point_char ();
- for (; count > 0; count--)
+ for (; ecount > 0; ecount--)
*p++ = '0';
while (ndigits > nzeroes)
{
digits without trailing zeroes. */
if (exponent >= 0)
{
- size_t count = exponent + 1;
- /* Note: count <= precision = ndigits. */
- for (; count > 0; count--)
+ size_t ecount = exponent + 1;
+ /* Note: ecount <= precision = ndigits. */
+ for (; ecount > 0; ecount--)
*p++ = digits[--ndigits];
if ((flags & FLAG_ALT) || ndigits > nzeroes)
{
}
else
{
- size_t count = -exponent - 1;
+ size_t ecount = -exponent - 1;
*p++ = '0';
*p++ = decimal_point_char ();
- for (; count > 0; count--)
+ for (; ecount > 0; ecount--)
*p++ = '0';
while (ndigits > nzeroes)
{
/* The generated string now extends from tmp to p, with the
zero padding insertion point being at pad_ptr. */
- if (has_width && p - tmp < width)
+ count = p - tmp;
+
+ if (count < width)
{
- size_t pad = width - (p - tmp);
+ size_t pad = width - count;
DCHAR_T *end = p + pad;
if (flags & FLAG_LEFT)
p = end;
}
- {
- size_t count = p - tmp;
+ count = p - tmp;
- if (count >= tmp_length)
- /* tmp_length was incorrectly calculated - fix the
- code above! */
- abort ();
+ if (count >= tmp_length)
+ /* tmp_length was incorrectly calculated - fix the
+ code above! */
+ abort ();
- /* Make room for the result. */
- if (count >= allocated - length)
- {
- size_t n = xsum (length, count);
+ /* Make room for the result. */
+ if (count >= allocated - length)
+ {
+ size_t n = xsum (length, count);
- ENSURE_ALLOCATION (n);
- }
+ ENSURE_ALLOCATION (n);
+ }
- /* Append the result. */
- memcpy (result + length, tmp, count * sizeof (DCHAR_T));
- if (tmp != tmpbuf)
- free (tmp);
- length += count;
- }
+ /* Append the result. */
+ memcpy (result + length, tmp, count * sizeof (DCHAR_T));
+ if (tmp != tmpbuf)
+ free (tmp);
+ length += count;
}
#endif
else
{
arg_type type = a.arg[dp->arg_index].type;
int flags = dp->flags;
-#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
+#if !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
int has_width;
+#endif
+#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
size_t width;
#endif
#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || NEED_PRINTF_UNBOUNDED_PRECISION
TCHAR_T *tmp;
#endif
-#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
+#if !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
has_width = 0;
+#endif
+#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
width = 0;
if (dp->width_start != dp->width_end)
{
if (!(a.arg[dp->width_arg_index].type == TYPE_INT))
abort ();
arg = a.arg[dp->width_arg_index].a.a_int;
+ width = arg;
if (arg < 0)
{
/* "A negative field width is taken as a '-' flag
followed by a positive field width." */
flags |= FLAG_LEFT;
- width = (unsigned int) (-arg);
+ width = -width;
}
- else
- width = arg;
}
else
{
width = xsum (xtimes (width, 10), *digitp++ - '0');
while (digitp != dp->width_end);
}
+#if !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
has_width = 1;
+#endif
}
#endif
{
const FCHAR_T *mp = dp->width_start;
do
- *fbp++ = (unsigned char) *mp++;
+ *fbp++ = *mp++;
while (--n > 0);
}
}
{
const FCHAR_T *mp = dp->precision_start;
do
- *fbp++ = (unsigned char) *mp++;
+ *fbp++ = *mp++;
while (--n > 0);
}
}
size_t tmp_length =
MAX_ROOM_NEEDED (&a, dp->arg_index,
dp->conversion, type, flags,
- width, has_precision,
+ width,
+ has_precision,
precision, pad_ourselves);
if (maxlen < tmp_length)
/* SNPRINTF or sprintf failed. Save and use the errno
that it has set, if any. */
int saved_errno = errno;
+ if (saved_errno == 0)
+ {
+ if (dp->conversion == 'c' || dp->conversion == 's')
+ saved_errno = EILSEQ;
+ else
+ saved_errno = EINVAL;
+ }
if (!(result == resultbuf || result == NULL))
free (result);
if (buf_malloced != NULL)
free (buf_malloced);
CLEANUP ();
- errno =
- (saved_errno != 0
- ? saved_errno
- : (dp->conversion == 'c' || dp->conversion == 's'
- ? EILSEQ
- : EINVAL));
+
+ errno = saved_errno;
return NULL;
}
tmpsrc += count;
tmpdst += count;
for (n = count; n > 0; n--)
- *--tmpdst = (unsigned char) *--tmpsrc;
+ *--tmpdst = *--tmpsrc;
}
}
#endif
/* vsprintf with automatic memory allocation.
- Copyright (C) 2002-2004, 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002-2004, 2007-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Formatted output to strings.
- Copyright (C) 1999, 2002, 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2002, 2006-2016 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Compile-time assert-like macros.
- Copyright (C) 2005-2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2005-2006, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Written by Paul Eggert, Bruno Haible, and Jim Meyering. */
#ifndef _GL_VERIFY_H
-# define _GL_VERIFY_H
+#define _GL_VERIFY_H
/* Define _GL_HAVE__STATIC_ASSERT to 1 if _Static_assert works as per C11.
Use this only with GCC. If we were willing to slow 'configure'
down we could also use it with other compilers, but since this
affects only the quality of diagnostics, why bother? */
-# if (4 < __GNUC__ || (__GNUC__ == 4 && 6 <= __GNUC_MINOR__)) && !defined __cplusplus
-# define _GL_HAVE__STATIC_ASSERT 1
-# endif
+#if (4 < __GNUC__ + (6 <= __GNUC_MINOR__) \
+ && (201112L <= __STDC_VERSION__ || !defined __STRICT_ANSI__) \
+ && !defined __cplusplus)
+# define _GL_HAVE__STATIC_ASSERT 1
+#endif
/* The condition (99 < __GNUC__) is temporary, until we know about the
first G++ release that supports static_assert. */
-# if (99 < __GNUC__) && defined __cplusplus
-# define _GL_HAVE_STATIC_ASSERT 1
-# endif
+#if (99 < __GNUC__) && defined __cplusplus
+# define _GL_HAVE_STATIC_ASSERT 1
+#endif
+
+/* FreeBSD 9.1 <sys/cdefs.h>, included by <stddef.h> and lots of other
+ system headers, defines a conflicting _Static_assert that is no
+ better than ours; override it. */
+#ifndef _GL_HAVE_STATIC_ASSERT
+# include <stddef.h>
+# undef _Static_assert
+#endif
/* Each of these macros verifies that its argument R is nonzero. To
be portable, R should be an integer constant expression. Unlike
Use a template type to work around the problem. */
/* Concatenate two preprocessor tokens. */
-# define _GL_CONCAT(x, y) _GL_CONCAT0 (x, y)
-# define _GL_CONCAT0(x, y) x##y
+#define _GL_CONCAT(x, y) _GL_CONCAT0 (x, y)
+#define _GL_CONCAT0(x, y) x##y
/* _GL_COUNTER is an integer, preferably one that changes each time we
use it. Use __COUNTER__ if it works, falling back on __LINE__
otherwise. __LINE__ isn't perfect, but it's better than a
constant. */
-# if defined __COUNTER__ && __COUNTER__ != __COUNTER__
-# define _GL_COUNTER __COUNTER__
-# else
-# define _GL_COUNTER __LINE__
-# endif
+#if defined __COUNTER__ && __COUNTER__ != __COUNTER__
+# define _GL_COUNTER __COUNTER__
+#else
+# define _GL_COUNTER __LINE__
+#endif
/* Generate a symbol with the given prefix, making it unique if
possible. */
-# define _GL_GENSYM(prefix) _GL_CONCAT (prefix, _GL_COUNTER)
+#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, preferably
with a diagnostic that includes the string-literal DIAGNOSTIC. */
-# define _GL_VERIFY_TRUE(R, DIAGNOSTIC) \
- (!!sizeof (_GL_VERIFY_TYPE (R, DIAGNOSTIC)))
+#define _GL_VERIFY_TRUE(R, DIAGNOSTIC) \
+ (!!sizeof (_GL_VERIFY_TYPE (R, DIAGNOSTIC)))
-# ifdef __cplusplus
-# if !GNULIB_defined_struct__gl_verify_type
+#ifdef __cplusplus
+# if !GNULIB_defined_struct__gl_verify_type
template <int w>
struct _gl_verify_type {
unsigned int _gl_verify_error_if_negative: w;
};
-# define GNULIB_defined_struct__gl_verify_type 1
-# endif
-# 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, DIAGNOSTIC); \
- int _gl_dummy; \
- }
-# else
-# define _GL_VERIFY_TYPE(R, DIAGNOSTIC) \
- struct { unsigned int _gl_verify_error_if_negative: (R) ? 1 : -1; }
+# define GNULIB_defined_struct__gl_verify_type 1
# endif
+# 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, DIAGNOSTIC); \
+ int _gl_dummy; \
+ }
+#else
+# define _GL_VERIFY_TYPE(R, DIAGNOSTIC) \
+ struct { unsigned int _gl_verify_error_if_negative: (R) ? 1 : -1; }
+#endif
/* Verify requirement R at compile-time, as a declaration without a
trailing ';'. If R is false, fail at compile-time, preferably
Unfortunately, unlike C11, this implementation must appear as an
ordinary declaration, and cannot appear inside struct { ... }. */
-# ifdef _GL_HAVE__STATIC_ASSERT
-# define _GL_VERIFY _Static_assert
-# else
-# define _GL_VERIFY(R, DIAGNOSTIC) \
- extern int (*_GL_GENSYM (_gl_verify_function) (void)) \
- [_GL_VERIFY_TRUE (R, DIAGNOSTIC)]
-# endif
+#ifdef _GL_HAVE__STATIC_ASSERT
+# define _GL_VERIFY _Static_assert
+#else
+# define _GL_VERIFY(R, DIAGNOSTIC) \
+ extern int (*_GL_GENSYM (_gl_verify_function) (void)) \
+ [_GL_VERIFY_TRUE (R, DIAGNOSTIC)]
+#endif
/* _GL_STATIC_ASSERT_H is defined if this code is copied into assert.h. */
-# ifdef _GL_STATIC_ASSERT_H
-# if !defined _GL_HAVE__STATIC_ASSERT && !defined _Static_assert
-# define _Static_assert(R, DIAGNOSTIC) _GL_VERIFY (R, DIAGNOSTIC)
-# endif
-# if !defined _GL_HAVE_STATIC_ASSERT && !defined static_assert
-# define static_assert _Static_assert /* C11 requires this #define. */
-# endif
+#ifdef _GL_STATIC_ASSERT_H
+# if !defined _GL_HAVE__STATIC_ASSERT && !defined _Static_assert
+# define _Static_assert(R, DIAGNOSTIC) _GL_VERIFY (R, DIAGNOSTIC)
# endif
+# if !defined _GL_HAVE_STATIC_ASSERT && !defined static_assert
+# define static_assert _Static_assert /* C11 requires this #define. */
+# endif
+#endif
/* @assert.h omit start@ */
verify_true is obsolescent; please use verify_expr instead. */
-# define verify_true(R) _GL_VERIFY_TRUE (R, "verify_true (" #R ")")
+#define verify_true(R) _GL_VERIFY_TRUE (R, "verify_true (" #R ")")
/* Verify requirement R at compile-time. Return the value of the
expression E. */
-# define verify_expr(R, E) \
- (_GL_VERIFY_TRUE (R, "verify_expr (" #R ", " #E ")") ? (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 ';'. */
-# define verify(R) _GL_VERIFY (R, "verify (" #R ")")
+#define verify(R) _GL_VERIFY (R, "verify (" #R ")")
+
+#ifndef __has_builtin
+# define __has_builtin(x) 0
+#endif
+
+/* Assume that R always holds. This lets the compiler optimize
+ accordingly. R should not have side-effects; it may or may not be
+ evaluated. Behavior is undefined if R is false. */
+
+#if (__has_builtin (__builtin_unreachable) \
+ || 4 < __GNUC__ + (5 <= __GNUC_MINOR__))
+# 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__))))
+ /* 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. */
+# define assume(R) ((R) ? (void) 0 : __builtin_trap ())
+#else
+# define assume(R) ((void) (0 && (R)))
+#endif
/* @assert.h omit end@ */
/* Variable with FSF copyright information, for version-etc.
- Copyright (C) 1999-2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1999-2006, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Print --version and bug-reporting information in a consistent format.
- Copyright (C) 1999-2013 Free Software Foundation, Inc.
+ Copyright (C) 1999-2016 Free Software Foundation, Inc.
This 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 PACKAGE PACKAGE_TARNAME
#endif
-enum { COPYRIGHT_YEAR = 2013 };
+enum { COPYRIGHT_YEAR = 2016 };
/* The three functions below display the --version information the
standard way.
/* Print --version and bug-reporting information in a consistent format.
- Copyright (C) 1999, 2003, 2005, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2003, 2005, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* A substitute for ISO C99 <wchar.h>, for platforms that have issues.
- Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ Copyright (C) 2007-2016 Free Software Foundation, Inc.
This 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
@PRAGMA_COLUMNS@
-#if defined __need_mbstate_t || defined __need_wint_t || (defined __hpux && ((defined _INTTYPES_INCLUDED && !defined strtoimax) || defined _GL_JUST_INCLUDE_SYSTEM_WCHAR_H)) || defined _GL_ALREADY_INCLUDING_WCHAR_H
+#if (((defined __need_mbstate_t || defined __need_wint_t) \
+ && !defined __MINGW32__ && !defined __KLIBC__) \
+ || (defined __hpux \
+ && ((defined _INTTYPES_INCLUDED && !defined strtoimax) \
+ || defined _GL_JUST_INCLUDE_SYSTEM_WCHAR_H)) \
+ || defined _GL_ALREADY_INCLUDING_WCHAR_H)
/* Special invocation convention:
- - Inside glibc and uClibc header files.
+ - Inside glibc and uClibc header files, but not MinGW.
- On HP-UX 11.00 we have a sequence of nested includes
<wchar.h> -> <stdlib.h> -> <stdint.h>, and the latter includes <wchar.h>,
once indirectly <stdint.h> -> <sys/types.h> -> <inttypes.h> -> <wchar.h>
# if !@HAVE_DECL_WCWIDTH@
/* wcwidth exists but is not declared. */
_GL_FUNCDECL_SYS (wcwidth, int, (wchar_t) _GL_ATTRIBUTE_PURE);
+# elif defined __KLIBC__
+/* On OS/2 kLIBC, wcwidth is a macro that expands to the name of a
+ static inline function. The implementation of wcwidth in wcwidth.c
+ causes a "conflicting types" error. */
+# undef wcwidth
# endif
_GL_CXXALIAS_SYS (wcwidth, int, (wchar_t));
# endif
/* Convert wide character to multibyte character.
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2008.
This program is free software: you can redistribute it and/or modify
/* A substitute for ISO C99 <wctype.h>, for platforms that lack it.
- Copyright (C) 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 2006-2016 Free Software Foundation, Inc.
This 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 <wchar.h>
#endif
+/* mingw has declarations of towupper and towlower in <ctype.h> as
+ well <wctype.h>. Include <ctype.h> in advance to avoid rpl_ prefix
+ being added to the declarations. */
+#ifdef __MINGW32__
+# include <ctype.h>
+#endif
+
/* Include the original <wctype.h> if it exists.
BeOS 5 has the functions but no <wctype.h>. */
/* The include_next requires a split double-inclusion guard. */
#ifndef _@GUARD_PREFIX@_WCTYPE_H
#define _@GUARD_PREFIX@_WCTYPE_H
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
_GL_INLINE_HEADER_BEGIN
#ifndef _GL_WCTYPE_INLINE
# define _GL_WCTYPE_INLINE _GL_INLINE
/* Determine the number of screen columns needed for a character.
- Copyright (C) 2006-2007, 2010-2013 Free Software Foundation, Inc.
+ Copyright (C) 2006-2007, 2010-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Report a memory allocation failure and exit.
- Copyright (C) 1997-2000, 2002-2004, 2006, 2009-2013 Free Software
+ Copyright (C) 1997-2000, 2002-2004, 2006, 2009-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
/* xalloc-oversized.h -- memory allocation size checking
- Copyright (C) 1990-2000, 2003-2004, 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 1990-2000, 2003-2004, 2006-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
along with this program. If not, see <http://www.gnu.org/licenses/>. */
#ifndef XALLOC_OVERSIZED_H_
-# define XALLOC_OVERSIZED_H_
+#define XALLOC_OVERSIZED_H_
-# include <stddef.h>
+#include <stddef.h>
-/* Return 1 if an array of N objects, each of size S, cannot exist due
- to size arithmetic overflow. S must be positive and N must be
- nonnegative. This is a macro, not a function, so that it
- works correctly even when SIZE_MAX < N.
+/* Default for (non-Clang) compilers that lack __has_builtin. */
+#ifndef __has_builtin
+# define __has_builtin(x) 0
+#endif
+/* True if N * S would overflow in a size calculation.
+ This expands to a constant expression if N and S are both constants.
By gnulib convention, SIZE_MAX represents overflow in size
calculations, so the conservative dividend to use here is
SIZE_MAX - 1, since SIZE_MAX might represent an overflowed value.
sizeof (ptrdiff_t) <= sizeof (size_t), so do not bother to test for
exactly-SIZE_MAX allocations on such hosts; this avoids a test and
branch when S is known to be 1. */
-# define xalloc_oversized(n, s) \
+#define __xalloc_oversized(n, s) \
((size_t) (sizeof (ptrdiff_t) <= sizeof (size_t) ? -1 : -2) / (s) < (n))
+
+/* Return 1 if an array of N objects, each of size S, cannot exist due
+ to size arithmetic overflow. S must be positive and N must be
+ nonnegative. This is a macro, not a function, so that it
+ works correctly even when SIZE_MAX < N. */
+
+/* GCC 7 __builtin_mul_overflow should easily compute this. See:
+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68120 */
+#if 7 <= __GNUC__
+# define xalloc_oversized(n, s) __builtin_mul_overflow (n, s, (size_t *) NULL)
+
+/* GCC 5 and Clang __builtin_mul_overflow needs a temporary, and
+ should be used only for non-constant operands, so that
+ xalloc_oversized is a constant expression if both arguments are.
+ Do not use this if pedantic, since pedantic GCC issues a diagnostic
+ for ({ ... }). */
+#elif ((5 <= __GNUC__ \
+ || (__has_builtin (__builtin_mul_overflow) \
+ && __has_builtin (__builtin_constant_p))) \
+ && !__STRICT_ANSI__)
+# define xalloc_oversized(n, s) \
+ (__builtin_constant_p (n) && __builtin_constant_p (s) \
+ ? __xalloc_oversized (n, s) \
+ : ({ size_t __xalloc_size; __builtin_mul_overflow (n, s, &__xalloc_size); }))
+
+/* Other compilers use integer division; this may be slower but is
+ more portable. */
+#else
+# define xalloc_oversized(n, s) __xalloc_oversized (n, s)
+#endif
+
#endif /* !XALLOC_OVERSIZED_H_ */
/* xalloc.h -- malloc with out-of-memory checking
- Copyright (C) 1990-2000, 2003-2004, 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 1990-2000, 2003-2004, 2006-2016 Free Software Foundation, Inc.
This 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 "xalloc-oversized.h"
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
_GL_INLINE_HEADER_BEGIN
#ifndef XALLOC_INLINE
# define XALLOC_INLINE _GL_INLINE
# define _GL_ATTRIBUTE_MALLOC
#endif
-#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)
+#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)
_GL_ATTRIBUTE_ALLOC_SIZE ((2));
void *x2realloc (void *p, size_t *pn);
void *xmemdup (void const *p, size_t s)
- _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_ALLOC_SIZE ((2));
+ _GL_ATTRIBUTE_ALLOC_SIZE ((2));
char *xstrdup (char const *str)
_GL_ATTRIBUTE_MALLOC;
/* If P is null, allocate a block of at least *PN such objects;
otherwise, reallocate P so that it contains more than *PN objects
- each of S bytes. *PN must be nonzero unless P is null, and S must
- be nonzero. Set *PN to the new number of objects, and return the
- pointer to the new block. *PN is never set to zero, and the
- returned pointer is never null.
+ each of S bytes. S must be nonzero. Set *PN to the new number of
+ objects, and return the pointer to the new block. *PN is never set
+ to zero, and the returned pointer is never null.
Repeated reallocations are guaranteed to make progress, either by
allocating an initial block with a nonzero size, or by allocating a
}
else
{
- /* Set N = ceil (1.5 * N) so that progress is made if N == 1.
+ /* Set N = floor (1.5 * N) + 1 so that progress is made even if N == 0.
Check for overflow, so that N * S stays in size_t range.
- The check is slightly conservative, but an exact check isn't
+ The check may be slightly conservative, but an exact check isn't
worth the trouble. */
if ((size_t) -1 / 3 * 2 / s <= n)
xalloc_die ();
- n += (n + 1) / 2;
+ n += n / 2 + 1;
}
*pn = n;
#endif
+_GL_INLINE_HEADER_END
#endif /* !XALLOC_H_ */
/* vasprintf and asprintf with out-of-memory checking.
- Copyright (C) 1999, 2002-2004, 2006, 2009-2013 Free Software Foundation,
+ Copyright (C) 1999, 2002-2004, 2006, 2009-2016 Free Software Foundation,
Inc.
This program is free software: you can redistribute it and/or modify
-/* a wrapper for frepoen
- Copyright (C) 2008-2013 Free Software Foundation, Inc.
+/* a wrapper for freopen
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* xmalloc.c -- malloc with out of memory checking
- Copyright (C) 1990-2000, 2002-2006, 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 1990-2000, 2002-2006, 2008-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* xreadlink.c -- readlink wrapper to return the link name in malloc'd storage
- Copyright (C) 2001, 2003-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2003-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Reading symbolic links without size limitation.
- Copyright (C) 2001, 2003-2004, 2007, 2009-2013 Free Software Foundation,
+ Copyright (C) 2001, 2003-2004, 2007, 2009-2016 Free Software Foundation,
Inc.
This program is free software: you can redistribute it and/or modify
/* xsize.h -- Checked size_t computations.
- Copyright (C) 2003, 2008-2013 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2008-2016 Free Software Foundation, Inc.
This 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 <stdint.h>
#endif
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
_GL_INLINE_HEADER_BEGIN
#ifndef XSIZE_INLINE
# define XSIZE_INLINE _GL_INLINE
/* Charset conversion with out-of-memory checking.
- Copyright (C) 2001-2004, 2006, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2004, 2006, 2009-2016 Free Software Foundation, Inc.
Written by Bruno Haible.
This program is free software: you can redistribute it and/or modify
/* Charset conversion with out-of-memory checking.
- Copyright (C) 2001-2004, 2006-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2001-2004, 2006-2007, 2009-2016 Free Software Foundation, Inc.
Written by Bruno Haible and Simon Josefsson.
This program is free software: you can redistribute it and/or modify
/* Duplicate a bounded initial segment of a string, with out-of-memory
checking.
- Copyright (C) 2003, 2006-2007, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2006-2007, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Duplicate a bounded initial segment of a string, with out-of-memory
checking.
- Copyright (C) 2003, 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2009-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* A more useful interface to strtol.
- Copyright (C) 1995-1996, 1998-1999, 2001-2004, 2006-2013 Free Software
+ Copyright (C) 1995-1996, 1998-1999, 2001-2004, 2006-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
/* A more useful interface to strtol.
- Copyright (C) 1995-1996, 1998-2001, 2003-2007, 2009-2013 Free Software
+ Copyright (C) 1995-1996, 1998-2001, 2003-2007, 2009-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
need stderr defined if assertion checking is enabled. */
#include <stdio.h>
-#include <assert.h>
#include <ctype.h>
#include <errno.h>
#include <limits.h>
#include <stdlib.h>
#include <string.h>
+#include "assure.h"
#include "intprops.h"
/* xstrtoll.c and xstrtoull.c, which include this file, require that
__strtol_t tmp;
strtol_error err = LONGINT_OK;
- assert (0 <= strtol_base && strtol_base <= 36);
+ assure (0 <= strtol_base && strtol_base <= 36);
p = (ptr ? ptr : &t_ptr);
+ errno = 0;
+
if (! TYPE_SIGNED (__strtol_t))
{
const char *q = s;
return LONGINT_INVALID;
}
- errno = 0;
tmp = __strtol (s, p, strtol_base);
if (*p == s)
return err | LONGINT_INVALID_SUFFIX_CHAR;
}
- if (strchr (valid_suffixes, '0'))
+ switch (**p)
{
+ case 'E': case 'G': case 'g': case 'k': case 'K': case 'M': case 'm':
+ case 'P': case 'T': case 't': case 'Y': case 'Z':
+
/* The "valid suffix" '0' is a special flag meaning that
an optional second suffix is allowed, which can change
the base. A suffix "B" (e.g. "100MB") stands for a power
a power of 1024. If no suffix (e.g. "100M"), assume
power-of-1024. */
- switch (p[0][1])
- {
- case 'i':
- if (p[0][2] == 'B')
- suffixes += 2;
- break;
-
- case 'B':
- case 'D': /* 'D' is obsolescent */
- base = 1000;
- suffixes++;
- break;
- }
+ if (strchr (valid_suffixes, '0'))
+ switch (p[0][1])
+ {
+ case 'i':
+ if (p[0][2] == 'B')
+ suffixes += 2;
+ break;
+
+ case 'B':
+ case 'D': /* 'D' is obsolescent */
+ base = 1000;
+ suffixes++;
+ break;
+ }
}
switch (**p)
break;
case 'B':
+ /* This obsolescent first suffix is distinct from the 'B'
+ second suffix above. E.g., 'tar -L 1000B' means change
+ the tape after writing 1000 KiB of data. */
overflow = bkm_scale (&tmp, 1024);
break;
case 'c':
- overflow = 0;
+ overflow = LONGINT_OK;
break;
case 'E': /* exa or exbi */
/* A more useful interface to strtol.
- Copyright (C) 1995-1996, 1998-1999, 2001-2004, 2006-2013 Free Software
+ Copyright (C) 1995-1996, 1998-1999, 2001-2004, 2006-2016 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
/* vasprintf and asprintf with out-of-memory checking.
- Copyright (C) 1999, 2002-2004, 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2002-2004, 2006-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* vasprintf and asprintf with out-of-memory checking.
- Copyright (C) 2002-2004, 2006-2013 Free Software Foundation, Inc.
+ Copyright (C) 2002-2004, 2006-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-# 00gnulib.m4 serial 2
-dnl Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# 00gnulib.m4 serial 3
+dnl Copyright (C) 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 semantics.
+dnl assume Autoconf 2.64, with its improved AC_DEFUN_ONCE and
+dnl m4_divert semantics.
+
+# 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)
# ----------------------------
--- /dev/null
+# absolute-header.m4 serial 16
+dnl Copyright (C) 2006-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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 Derek Price.
+
+# gl_ABSOLUTE_HEADER(HEADER1 HEADER2 ...)
+# ---------------------------------------
+# Find the absolute name of a header file, testing first if the header exists.
+# If the header were sys/inttypes.h, this macro would define
+# ABSOLUTE_SYS_INTTYPES_H to the '""' quoted absolute name of sys/inttypes.h
+# in config.h
+# (e.g. '#define ABSOLUTE_SYS_INTTYPES_H "///usr/include/sys/inttypes.h"').
+# The three "///" are to pacify Sun C 5.8, which otherwise would say
+# "warning: #include of /usr/include/... may be non-portable".
+# Use '""', not '<>', so that the /// cannot be confused with a C99 comment.
+# Note: This macro assumes that the header file is not empty after
+# preprocessing, i.e. it does not only define preprocessor macros but also
+# provides some type/enum definitions or function/variable declarations.
+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]),
+ [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
+ 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)"],
+ [Define this to an absolute name of <]m4_defn([gl_HEADER_NAME])[>.])
+ AS_VAR_POPDEF([gl_absolute_header])dnl
+])dnl
+])# gl_ABSOLUTE_HEADER
+
+# gl_ABSOLUTE_HEADER_ONE(HEADER)
+# ------------------------------
+# Like gl_ABSOLUTE_HEADER, except that:
+# - it assumes that the header exists,
+# - it uses the current CPPFLAGS,
+# - it does not cache the result,
+# - it is silent.
+AC_DEFUN([gl_ABSOLUTE_HEADER_ONE],
+[
+ AC_REQUIRE([AC_CANONICAL_HOST])
+ AC_LANG_CONFTEST([AC_LANG_SOURCE([[#include <]]m4_dquote([$1])[[>]])])
+ dnl AIX "xlc -E" and "cc -E" omit #line directives for header files
+ dnl that contain only a #include of other header files and no
+ dnl non-comment tokens of their own. This leads to a failure to
+ dnl detect the absolute name of <dirent.h>, <signal.h>, <poll.h>
+ dnl and others. The workaround is to force preservation of comments
+ dnl through option -C. This ensures all necessary #line directives
+ dnl are present. GCC supports option -C as well.
+ case "$host_os" in
+ aix*) gl_absname_cpp="$ac_cpp -C" ;;
+ *) gl_absname_cpp="$ac_cpp" ;;
+ esac
+changequote(,)
+ case "$host_os" in
+ mingw*)
+ dnl For the sake of native Windows compilers (excluding gcc),
+ dnl treat backslash as a directory separator, like /.
+ dnl Actually, these compilers use a double-backslash as
+ dnl directory separator, inside the
+ dnl # line "filename"
+ dnl directives.
+ gl_dirsep_regex='[/\\]'
+ ;;
+ *)
+ gl_dirsep_regex='\/'
+ ;;
+ esac
+ dnl A sed expression that turns a string into a basic regular
+ dnl expression, for use within "/.../".
+ gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
+ gl_header_literal_regex=`echo '$1' \
+ | 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
+ }'
+changequote([,])
+ dnl eval is necessary to expand gl_absname_cpp.
+ dnl Ultrix and Pyramid sh refuse to redirect output of eval,
+ dnl so use subshell.
+ AS_VAR_SET([gl_cv_absolute_]AS_TR_SH([[$1]]),
+[`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&AS_MESSAGE_LOG_FD |
+ sed -n "$gl_absolute_header_sed"`])
+])
# alloca.m4 serial 14
-dnl Copyright (C) 2002-2004, 2006-2007, 2009-2013 Free Software Foundation,
+dnl Copyright (C) 2002-2004, 2006-2007, 2009-2016 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,
--- /dev/null
+# arpa_inet_h.m4 serial 13
+dnl Copyright (C) 2006, 2008-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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 Simon Josefsson and Bruno Haible
+
+AC_DEFUN([gl_HEADER_ARPA_INET],
+[
+ dnl Use AC_REQUIRE here, so that the default behavior below is expanded
+ dnl once only, before all statements that occur in other macros.
+ AC_REQUIRE([gl_ARPA_INET_H_DEFAULTS])
+
+ AC_CHECK_HEADERS_ONCE([arpa/inet.h])
+ if test $ac_cv_header_arpa_inet_h = yes; then
+ HAVE_ARPA_INET_H=1
+ else
+ HAVE_ARPA_INET_H=0
+ fi
+ AC_SUBST([HAVE_ARPA_INET_H])
+ dnl <arpa/inet.h> is always overridden, because of GNULIB_POSIXCHECK.
+ gl_CHECK_NEXT_HEADERS([arpa/inet.h])
+
+ AC_REQUIRE([gl_FEATURES_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([[
+/* On some systems, this header is not self-consistent. */
+#if !(defined __GLIBC__ || defined __UCLIBC__)
+# include <sys/socket.h>
+#endif
+#ifdef __TANDEM
+# include <netdb.h>
+#endif
+#include <arpa/inet.h>
+ ]], [inet_ntop inet_pton])
+])
+
+AC_DEFUN([gl_ARPA_INET_MODULE_INDICATOR],
+[
+ dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+ AC_REQUIRE([gl_ARPA_INET_H_DEFAULTS])
+ gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+])
+
+AC_DEFUN([gl_ARPA_INET_H_DEFAULTS],
+[
+ GNULIB_INET_NTOP=0; AC_SUBST([GNULIB_INET_NTOP])
+ GNULIB_INET_PTON=0; AC_SUBST([GNULIB_INET_PTON])
+ dnl Assume proper GNU behavior unless another module says otherwise.
+ HAVE_DECL_INET_NTOP=1; AC_SUBST([HAVE_DECL_INET_NTOP])
+ HAVE_DECL_INET_PTON=1; AC_SUBST([HAVE_DECL_INET_PTON])
+ REPLACE_INET_NTOP=0; AC_SUBST([REPLACE_INET_NTOP])
+ REPLACE_INET_PTON=0; AC_SUBST([REPLACE_INET_PTON])
+])
# btowc.m4 serial 10
-dnl Copyright (C) 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 prerequisites for compiling lib/c-stack.c.
-# Copyright (C) 2002-2004, 2008-2013 Free Software Foundation, Inc.
+# Copyright (C) 2002-2004, 2008-2016 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.
# clock_time.m4 serial 10
-dnl Copyright (C) 2002-2006, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2006, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# close.m4 serial 8
-dnl Copyright (C) 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# codeset.m4 serial 5 (gettext-0.18.2)
-dnl Copyright (C) 2000-2002, 2006, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2000-2002, 2006, 2008-2014, 2016 Free Software Foundation,
+dnl Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# Say that -DHAVE_CONFIG_H is not needed.
-dnl Copyright (C) 2006, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2006, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
-# configmake.m4 serial 1
-dnl Copyright (C) 2010-2013 Free Software Foundation, Inc.
+# configmake.m4 serial 2
+dnl Copyright (C) 2010-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# gl_CONFIGMAKE_PREP
# ------------------
# Guarantee all of the standard directory variables, even when used with
-# autoconf 2.59 (datarootdir wasn't supported until 2.59c) or automake
-# 1.9.6 (pkglibexecdir wasn't supported until 1.10b.).
+# autoconf 2.59 (datarootdir wasn't supported until 2.59c, and runstatedir
+# in 2.70) or automake 1.9.6 (pkglibexecdir wasn't supported until 1.10b,
+# and runstatedir in 1.14.1).
AC_DEFUN([gl_CONFIGMAKE_PREP],
[
dnl Technically, datadir should default to datarootdir. But if
if test "x$localedir" = x; then
AC_SUBST([localedir], ['${datarootdir}/locale'])
fi
+ dnl Added in autoconf 2.70
+ if test "x$runstatedir" = x; then
+ AC_SUBST([runstatedir], ['${localstatedir}/run'])
+ fi
dnl Automake 1.9.6 only lacks pkglibexecdir; and since 1.11 merely
dnl provides it without AC_SUBST, this blind use of AC_SUBST is safe.
--- /dev/null
+# ctype_h.m4 serial 6
+dnl Copyright (C) 2009-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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_CTYPE_H],
+[
+ AC_REQUIRE([gl_CTYPE_H_DEFAULTS])
+
+ dnl <ctype.h> is always overridden, because of GNULIB_POSIXCHECK.
+ gl_NEXT_HEADERS([ctype.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 <ctype.h>
+ ]], [isblank])
+])
+
+AC_DEFUN([gl_CTYPE_MODULE_INDICATOR],
+[
+ dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+ AC_REQUIRE([gl_CTYPE_H_DEFAULTS])
+ gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+])
+
+AC_DEFUN([gl_CTYPE_H_DEFAULTS],
+[
+ GNULIB_ISBLANK=0; AC_SUBST([GNULIB_ISBLANK])
+ dnl Assume proper GNU behavior unless another module says otherwise.
+ HAVE_ISBLANK=1; AC_SUBST([HAVE_ISBLANK])
+])
#serial 10 -*- autoconf -*-
-dnl Copyright (C) 2002-2006, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2006, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# double-slash-root.m4 serial 4 -*- Autoconf -*-
-dnl Copyright (C) 2006, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2006, 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 19
-dnl Copyright (C) 2002, 2005, 2007, 2009-2013 Free Software Foundation, Inc.
+#serial 25
+dnl Copyright (C) 2002, 2005, 2007, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
if test $HAVE_DUP2 = 1; then
AC_CACHE_CHECK([whether dup2 works], [gl_cv_func_dup2_works],
[AC_RUN_IFELSE([
- AC_LANG_PROGRAM([[#include <unistd.h>
-#include <fcntl.h>
-#include <errno.h>]],
- [int result = 0;
-#ifdef FD_CLOEXEC
- if (fcntl (1, F_SETFD, FD_CLOEXEC) == -1)
- result |= 1;
-#endif
- if (dup2 (1, 1) == 0)
- 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, 1000000) == -1 && errno != EBADF)
- result |= 16;
- /* Flush out a cygwin core dump. */
- if (dup2 (2, -1) != -1 || errno != EBADF)
- result |= 32;
- return result;
- ])
+ 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
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" ;;
- linux*) # On linux between 2008-07-27 and 2009-05-11, dup2 of a
- # closed fd may yield -EBADF instead of -1 / errno=EBADF.
- gl_cv_func_dup2_works="guessing no" ;;
- freebsd*) # on FreeBSD 6.1, dup2(1,1000000) gives EMFILE, not EBADF.
+ 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])
])
*yes) ;;
*)
REPLACE_DUP2=1
+ AC_CHECK_FUNCS([setdtablesize])
;;
esac
fi
# eealloc.m4 serial 3
-dnl Copyright (C) 2003, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2003, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# environ.m4 serial 6
-dnl Copyright (C) 2001-2004, 2006-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2001-2004, 2006-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# errno_h.m4 serial 12
-dnl Copyright (C) 2004, 2006, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2004, 2006, 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 14
-# Copyright (C) 1996-1998, 2001-2004, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 1996-1998, 2001-2004, 2009-2016 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# exponentd.m4 serial 3
-dnl Copyright (C) 2007-2008, 2010-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2007-2008, 2010-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 13 -*- Autoconf -*-
# Enable extensions on systems that normally disable them.
-# Copyright (C) 2003, 2006-2013 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2006-2016 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.
-# This definition of AC_USE_SYSTEM_EXTENSIONS is stolen from CVS
+# This definition of AC_USE_SYSTEM_EXTENSIONS is stolen from git
# Autoconf. Perhaps we can remove this once we can assume Autoconf
# 2.70 or later everywhere, but since Autoconf mutates rapidly
# enough in this area it's likely we'll need to redefine
#ifndef _GNU_SOURCE
# undef _GNU_SOURCE
#endif
+/* Use GNU style printf and scanf. */
+#ifndef __USE_MINGW_ANSI_STDIO
+# undef __USE_MINGW_ANSI_STDIO
+#endif
/* Enable threading extensions on Solaris. */
#ifndef _POSIX_PTHREAD_SEMANTICS
# undef _POSIX_PTHREAD_SEMANTICS
AC_DEFINE([_ALL_SOURCE])
AC_DEFINE([_DARWIN_C_SOURCE])
AC_DEFINE([_GNU_SOURCE])
+ AC_DEFINE([__USE_MINGW_ANSI_STDIO])
AC_DEFINE([_POSIX_PTHREAD_SEMANTICS])
AC_DEFINE([_TANDEM_SOURCE])
AC_CACHE_CHECK([whether _XOPEN_SOURCE should be defined],
dnl 'extern inline' a la ISO C99.
-dnl Copyright 2012-2013 Free Software Foundation, Inc.
+dnl Copyright 2012-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
AC_DEFUN([gl_EXTERN_INLINE],
[
AH_VERBATIM([extern_inline],
-[/* _GL_INLINE is a portable alternative to ISO C99 plain 'inline'.
- _GL_EXTERN_INLINE is a portable alternative to 'extern inline'.
- _GL_INLINE_HEADER_BEGIN contains useful stuff to put
- in an include file, before uses of _GL_INLINE.
- It suppresses GCC's bogus "no previous prototype for 'FOO'" diagnostic,
- when FOO is an inline function in the header; see
- <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54113>.
- _GL_INLINE_HEADER_END contains useful stuff to put
- in the same include file, after uses of _GL_INLINE.
+[/* Please see the Gnulib manual for how to use these macros.
Suppress extern inline with HP-UX cc, as it appears to be broken; see
<http://lists.gnu.org/archive/html/bug-texinfo/2013-02/msg00030.html>.
- Suppress the use of extern inline on Apple's platforms,
- as Libc-825.25 (2012-09-19) is incompatible with it; see
- <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00023.html>.
- Perhaps Apple will fix this some day. */
+ Suppress extern inline with Sun C in standards-conformance mode, as it
+ mishandles inline functions that call each other. E.g., for 'inline void f
+ (void) { } inline void g (void) { f (); }', c99 incorrectly complains
+ 'reference to static identifier "f" in extern inline function'.
+ This bug was observed with Sun C 5.12 SunOS_i386 2011/11/16.
+
+ Suppress extern inline (with or without __attribute__ ((__gnu_inline__)))
+ on configurations that mistakenly use 'static inline' to implement
+ functions or macros in standard C headers like <ctype.h>. For example,
+ if isdigit is mistakenly implemented via a static inline function,
+ a program containing an extern inline function that calls isdigit
+ may not work since the C standard prohibits extern inline functions
+ from calling static functions. This bug is known to occur on:
+
+ OS X 10.8 and earlier; see:
+ http://lists.gnu.org/archive/html/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
+
+ FreeBSD; see:
+ http://lists.gnu.org/archive/html/bug-gnulib/2014-07/msg00104.html
+
+ OS X 10.9 has a macro __header_inline indicating the bug is fixed for C and
+ for clang but remains for g++; see <http://trac.macports.org/ticket/41033>.
+ Assume DragonFly and FreeBSD will be similar. */
+#if (((defined __APPLE__ && defined __MACH__) \
+ || defined __DragonFly__ || defined __FreeBSD__) \
+ && (defined __header_inline \
+ ? (defined __cplusplus && defined __GNUC_STDC_INLINE__ \
+ && ! defined __clang__) \
+ : ((! defined _DONT_USE_CTYPE_INLINE_ \
+ && (defined __GNUC__ || defined __cplusplus)) \
+ || (defined _FORTIFY_SOURCE && 0 < _FORTIFY_SOURCE \
+ && defined __GNUC__ && ! defined __cplusplus))))
+# define _GL_EXTERN_INLINE_STDHEADER_BUG
+#endif
#if ((__GNUC__ \
? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \
- : 199901L <= __STDC_VERSION__ && !defined __HP_cc) \
- && !defined __APPLE__)
+ : (199901L <= __STDC_VERSION__ \
+ && !defined __HP_cc \
+ && !defined __PGI \
+ && !(defined __SUNPRO_C && __STDC__))) \
+ && !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
# define _GL_INLINE inline
# define _GL_EXTERN_INLINE extern inline
-#elif 2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __APPLE__
-# if __GNUC_GNU_INLINE__
+# define _GL_EXTERN_INLINE_IN_USE
+#elif (2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __STRICT_ANSI__ \
+ && !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
+# if defined __GNUC_GNU_INLINE__ && __GNUC_GNU_INLINE__
/* __gnu_inline__ suppresses a GCC 4.2 diagnostic. */
# define _GL_INLINE extern inline __attribute__ ((__gnu_inline__))
# else
# define _GL_INLINE extern inline
# endif
# define _GL_EXTERN_INLINE extern
+# define _GL_EXTERN_INLINE_IN_USE
#else
# define _GL_INLINE static _GL_UNUSED
# define _GL_EXTERN_INLINE static _GL_UNUSED
#endif
-#if 4 < __GNUC__ + (6 <= __GNUC_MINOR__)
+/* In GCC 4.6 (inclusive) to 5.1 (exclusive),
+ suppress bogus "no previous prototype for 'FOO'"
+ and "no previous declaration for 'FOO'" diagnostics,
+ when FOO is an inline function in the header; see
+ <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54113> and
+ <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63877>. */
+#if __GNUC__ == 4 && 6 <= __GNUC_MINOR__
# if defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__
# define _GL_INLINE_HEADER_CONST_PRAGMA
# else
# fcntl-o.m4 serial 4
-dnl Copyright (C) 2006, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2006, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
-# fcntl.m4 serial 5
-dnl Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# fcntl.m4 serial 9
+dnl Copyright (C) 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 haiku alpha 2 F_DUPFD has wrong errno
AC_CACHE_CHECK([whether fcntl handles F_DUPFD correctly],
[gl_cv_func_fcntl_f_dupfd_works],
- [AC_RUN_IFELSE([AC_LANG_PROGRAM([[
-#include <fcntl.h>
-#include <errno.h>
-]], [[int result = 0;
- if (fcntl (0, F_DUPFD, -1) != -1) result |= 1;
- if (errno != EINVAL) result |= 2;
- return result;
- ]])],
+ [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;
+ 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;]])],
[gl_cv_func_fcntl_f_dupfd_works=yes],
[gl_cv_func_fcntl_f_dupfd_works=no],
- [# Guess that it works on glibc systems
- case $host_os in #((
- *-gnu*) gl_cv_func_fcntl_f_dupfd_works="guessing yes";;
- *) gl_cv_func_fcntl_f_dupfd_works="guessing no";;
+ [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])])
case $gl_cv_func_fcntl_f_dupfd_works in
*yes) ;;
# serial 15
# Configure fcntl.h.
-dnl Copyright (C) 2006-2007, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2006-2007, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# fdopen.m4 serial 3
-dnl Copyright (C) 2011-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# filenamecat.m4 serial 11
-dnl Copyright (C) 2002-2006, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2006, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
--- /dev/null
+# serial 3
+# Check for flexible array member support.
+
+# Copyright (C) 2006, 2009-2016 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.
+
+AC_DEFUN([AC_C_FLEXIBLE_ARRAY_MEMBER],
+[
+ AC_CACHE_CHECK([for flexible array member],
+ ac_cv_c_flexmember,
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <stdlib.h>
+ #include <stdio.h>
+ #include <stddef.h>
+ struct s { int n; double d[]; };]],
+ [[int m = getchar ();
+ struct s *p = malloc (offsetof (struct s, d)
+ + m * sizeof (double));
+ p->d[0] = 0.0;
+ return p->d != (double *) NULL;]])],
+ [ac_cv_c_flexmember=yes],
+ [ac_cv_c_flexmember=no])])
+ if test $ac_cv_c_flexmember = yes; then
+ AC_DEFINE([FLEXIBLE_ARRAY_MEMBER], [],
+ [Define to nothing if C supports flexible array members, and to
+ 1 if it does not. That way, with a declaration like 'struct s
+ { int n; double d@<:@FLEXIBLE_ARRAY_MEMBER@:>@; };', the struct hack
+ can be used with pre-C99 compilers.
+ When computing the size of such an object, don't use 'sizeof (struct s)'
+ as it overestimates the size. Use 'offsetof (struct s, d)' instead.
+ Don't use 'offsetof (struct s, d@<:@0@:>@)', as this doesn't work with
+ MSVC and with C++ compilers.])
+ else
+ AC_DEFINE([FLEXIBLE_ARRAY_MEMBER], [1])
+ fi
+])
# float_h.m4 serial 9
-dnl Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 fnmatch - serial 9.
+# Check for fnmatch - serial 9. -*- coding: utf-8 -*-
-# Copyright (C) 2000-2007, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2000-2007, 2009-2016 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.
-# fpieee.m4 serial 2
-dnl Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+# fpieee.m4 serial 2 -*- coding: utf-8 -*-
+dnl Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
-# freopen.m4 serial 4
-dnl Copyright (C) 2007-2013 Free Software Foundation, Inc.
+# freopen.m4 serial 5
+dnl Copyright (C) 2007-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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_REQUIRE([gl_STDIO_H_DEFAULTS])
AC_REQUIRE([AC_CANONICAL_HOST])
case "$host_os" in
- mingw* | pw*)
+ mingw* | pw* | os2*)
REPLACE_FREOPEN=1
;;
esac
# fstat.m4 serial 4
-dnl Copyright (C) 2011-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
--- /dev/null
+# serial 20
+
+# See if we need to emulate a missing ftruncate function using chsize.
+
+# Copyright (C) 2000-2001, 2003-2007, 2009-2016 Free Software Foundation, Inc.
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+AC_DEFUN([gl_FUNC_FTRUNCATE],
+[
+ AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
+ AC_CHECK_FUNCS_ONCE([ftruncate])
+ if test $ac_cv_func_ftruncate = yes; then
+ m4_ifdef([gl_LARGEFILE], [
+ AC_REQUIRE([AC_CANONICAL_HOST])
+ case "$host_os" in
+ mingw*)
+ dnl Native Windows, and Large File Support is requested.
+ 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 Use gnulib's ftruncate() implementation instead.
+ REPLACE_FTRUNCATE=1
+ ;;
+ esac
+ ], [
+ :
+ ])
+ else
+ HAVE_FTRUNCATE=0
+ fi
+])
+
+# Prerequisites of lib/ftruncate.c.
+AC_DEFUN([gl_PREREQ_FTRUNCATE],
+[
+ AC_CHECK_FUNCS([chsize])
+])
# getcwd.m4 - check for working getcwd that is compatible with glibc
-# Copyright (C) 2001, 2003-2007, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003-2007, 2009-2016 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 12
+# serial 13
AC_DEFUN([gl_FUNC_GETCWD_NULL],
[
AC_CACHE_CHECK([whether getcwd (NULL, 0) allocates memory for result],
[gl_cv_func_getcwd_null],
[AC_RUN_IFELSE([AC_LANG_PROGRAM([[
+# include <stdlib.h>
# if HAVE_UNISTD_H
# include <unistd.h>
# else /* on Windows with MSVC */
return 3;
if (f[1] != '\0')
return 4;
+ free (f);
return 0;
}
#endif
[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")
+ AC_DEFINE([HAVE_GETCWD_SHORTER], [1],
+ [Define to 1 if getcwd works, but with shorter paths
+ than is generally tested with the replacement.])
+ ;;
esac
if { case "$gl_cv_func_getcwd_null" in *yes) false;; *) true;; esac; } \
|| test $gl_cv_func_getcwd_posix_signature != yes \
- || test "$gl_cv_func_getcwd_path_max" != yes \
+ || { case "$gl_cv_func_getcwd_path_max" in *yes*) false;; *) true;; esac; } \
|| test $gl_abort_bug = yes; then
REPLACE_GETCWD=1
fi
-# getdtablesize.m4 serial 4
-dnl Copyright (C) 2008-2013 Free Software Foundation, Inc.
+# getdtablesize.m4 serial 6
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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_GETDTABLESIZE],
[
AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
+ AC_REQUIRE([AC_CANONICAL_HOST])
AC_CHECK_FUNCS_ONCE([getdtablesize])
- if test $ac_cv_func_getdtablesize != yes; then
+ AC_CHECK_DECLS_ONCE([getdtablesize])
+ if test $ac_cv_func_getdtablesize = yes &&
+ test $ac_cv_have_decl_getdtablesize = yes; then
+ # Cygwin 1.7.25 automatically increases the RLIMIT_NOFILE soft limit
+ # up to an unchangeable hard limit; all other platforms correctly
+ # require setrlimit before getdtablesize() can report a larger value.
+ AC_CACHE_CHECK([whether getdtablesize works],
+ [gl_cv_func_getdtablesize_works],
+ [AC_RUN_IFELSE([
+ AC_LANG_PROGRAM([[#include <unistd.h>]],
+ [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
+ cygwin*) # on cygwin 1.5.25, getdtablesize() automatically grows
+ gl_cv_func_getdtablesize_works="guessing no" ;;
+ *) gl_cv_func_getdtablesize_works="guessing yes" ;;
+ esac])
+ ])
+ case "$gl_cv_func_getdtablesize_works" in
+ *yes) ;;
+ *) REPLACE_GETDTABLESIZE=1 ;;
+ esac
+ else
HAVE_GETDTABLESIZE=0
fi
])
# getopt.m4 serial 44
-dnl Copyright (C) 2002-2006, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2006, 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# getpagesize.m4 serial 9
-dnl Copyright (C) 2002, 2004-2005, 2007, 2009-2013 Free Software Foundation,
+dnl Copyright (C) 2002, 2004-2005, 2007, 2009-2016 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,
# gettext.m4 serial 66 (gettext-0.18.2)
-dnl Copyright (C) 1995-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 1995-2014 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# gettime.m4 serial 8
-dnl Copyright (C) 2002, 2004-2006, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002, 2004-2006, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 20
+# serial 21
-# Copyright (C) 2001-2003, 2005, 2007, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2003, 2005, 2007, 2009-2016 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
])
AC_DEFUN([gl_GETTIMEOFDAY_REPLACE_LOCALTIME], [
- AC_DEFINE([gmtime], [rpl_gmtime],
- [Define to rpl_gmtime if the replacement function should be used.])
- AC_DEFINE([localtime], [rpl_localtime],
- [Define to rpl_localtime if the replacement function should be used.])
+ REPLACE_GMTIME=1
+ REPLACE_LOCALTIME=1
])
# Prerequisites of lib/gettimeofday.c.
# glibc21.m4 serial 5
-dnl Copyright (C) 2000-2002, 2004, 2008, 2010-2013 Free Software Foundation,
+dnl Copyright (C) 2000-2002, 2004, 2008, 2010-2016 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,
# Determine whether recent-enough GNU Make is being used.
-# Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
-# gnulib-common.m4 serial 33
-dnl Copyright (C) 2007-2013 Free Software Foundation, Inc.
+# gnulib-common.m4 serial 36
+dnl Copyright (C) 2007-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
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__))
[
dnl Minix 3 comes with two toolchains: The Amsterdam Compiler Kit compiler
dnl as "cc", and GCC as "gcc". They have different object file formats and
- dnl library formats. In particular, the GNU binutils programs ar, ranlib
+ dnl library formats. In particular, the GNU binutils programs ar and ranlib
dnl produce libraries that work only with gcc, not with cc.
AC_REQUIRE([AC_PROG_CC])
+ AC_BEFORE([$0], [AM_PROG_AR])
AC_CACHE_CHECK([for Minix Amsterdam compiler], [gl_cv_c_amsterdam_compiler],
[
AC_EGREP_CPP([Amsterdam],
[gl_cv_c_amsterdam_compiler=yes],
[gl_cv_c_amsterdam_compiler=no])
])
- if test -z "$AR"; then
- if test $gl_cv_c_amsterdam_compiler = yes; then
+
+ dnl Don't compete with AM_PROG_AR's decision about AR/ARFLAGS if we are not
+ dnl building with __ACK__.
+ if test $gl_cv_c_amsterdam_compiler = yes; then
+ if test -z "$AR"; then
AR='cc -c.a'
- if test -z "$ARFLAGS"; then
- ARFLAGS='-o'
- fi
- else
- dnl Use the Automake-documented default values for AR and ARFLAGS,
- dnl but prefer ${host}-ar over ar (useful for cross-compiling).
- AC_CHECK_TOOL([AR], [ar], [ar])
- if test -z "$ARFLAGS"; then
- ARFLAGS='cru'
- fi
fi
- else
if test -z "$ARFLAGS"; then
- ARFLAGS='cru'
+ ARFLAGS='-o'
fi
+ else
+ dnl AM_PROG_AR was added in automake v1.11.2. AM_PROG_AR does not AC_SUBST
+ dnl ARFLAGS variable (it is filed into Makefile.in directly by automake
+ dnl script on-demand, if not specified by ./configure of course).
+ dnl Don't AC_REQUIRE the AM_PROG_AR otherwise the code for __ACK__ above
+ dnl will be ignored. Also, pay attention to call AM_PROG_AR in else block
+ dnl because AM_PROG_AR is written so it could re-set AR variable even for
+ dnl __ACK__. It may seem like its easier to avoid calling the macro here,
+ dnl but we need to AC_SUBST both AR/ARFLAGS (thus those must have some good
+ dnl default value and automake should usually know them).
+ m4_ifdef([AM_PROG_AR], [AM_PROG_AR], [:])
fi
+
+ dnl In case the code above has not helped with setting AR/ARFLAGS, use
+ dnl Automake-documented default values for AR and ARFLAGS, but prefer
+ dnl ${host}-ar over ar (useful for cross-compiling).
+ AC_CHECK_TOOL([AR], [ar], [ar])
+ if test -z "$ARFLAGS"; then
+ ARFLAGS='cr'
+ fi
+
AC_SUBST([AR])
AC_SUBST([ARFLAGS])
if test -z "$RANLIB"; then
])
# AC_C_RESTRICT
-# This definition overrides the AC_C_RESTRICT macro from autoconf 2.60..2.61,
-# so that mixed use of GNU C and GNU C++ and mixed use of Sun C and Sun C++
-# works.
-# This definition can be removed once autoconf >= 2.62 can be assumed.
-# AC_AUTOCONF_VERSION was introduced in 2.62, so use that as the witness.
-m4_ifndef([AC_AUTOCONF_VERSION],[
+# This definition is copied from post-2.69 Autoconf and overrides the
+# AC_C_RESTRICT macro from autoconf 2.60..2.69. It can be removed
+# once autoconf >= 2.70 can be assumed. It's painful to check version
+# numbers, and in practice this macro is more up-to-date than Autoconf
+# is, so override Autoconf unconditionally.
AC_DEFUN([AC_C_RESTRICT],
[AC_CACHE_CHECK([for C/C++ restrict keyword], [ac_cv_c_restrict],
[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
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[typedef int * int_ptr;
- int foo (int_ptr $ac_kw ip) {
- return ip[0];
- }]],
- [[int s[1];
- int * $ac_kw t = s;
- t[0] = 0;
- return foo(t)]])],
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[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 s[1];
+ int *$ac_kw t = s;
+ t[0] = 0;
+ return foo (t) + bar (t);
+ ]])],
[ac_cv_c_restrict=$ac_kw])
test "$ac_cv_c_restrict" != no && break
done
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, even
- though the corresponding Sun C compiler does, which causes
- "#define restrict _Restrict" in the previous line. Perhaps some future
- version of Sun C++ will work with _Restrict; if so, it'll probably
- define __RESTRICT, just as Sun C does. */
+/* 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
# define _Restrict
+# define __restrict__
#endif])
case $ac_cv_c_restrict in
restrict) ;;
no) AC_DEFINE([restrict], []) ;;
*) AC_DEFINE_UNQUOTED([restrict], [$ac_cv_c_restrict]) ;;
esac
-])
-])
+])# AC_C_RESTRICT
# gl_BIGENDIAN
# is like AC_C_BIGENDIAN, except that it can be AC_REQUIREd.
AC_CACHE_VAL([$1], [$2])
as_echo_n="$saved_as_echo_n"
])
+
+# 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])])
+
+# AC_PROG_SED was added in autoconf 2.59b
+m4_ifndef([AC_PROG_SED],
+[AC_DEFUN([AC_PROG_SED],
+[AC_CACHE_CHECK([for a sed that does not truncate output], ac_cv_path_SED,
+ [dnl ac_script should not contain more than 99 commands (for HP-UX sed),
+ dnl but more than about 7000 bytes, to catch a limit in Solaris 8 /usr/ucb/sed.
+ ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
+ for ac_i in 1 2 3 4 5 6 7; do
+ ac_script="$ac_script$as_nl$ac_script"
+ done
+ echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
+ AS_UNSET([ac_script])
+ if test -z "$SED"; then
+ ac_path_SED_found=false
+ _AS_PATH_WALK([], [
+ for ac_prog in sed gsed; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
+ AS_EXECUTABLE_P(["$ac_path_SED"]) || continue
+ case `"$ac_path_SED" --version 2>&1` in
+ *GNU*) ac_cv_path_SED=$ac_path_SED ac_path_SED_found=:;;
+ *)
+ ac_count=0
+ _AS_ECHO_N([0123456789]) >conftest.in
+ while :
+ do
+ cat conftest.in conftest.in >conftest.tmp
+ mv conftest.tmp conftest.in
+ cp conftest.in conftest.nl
+ echo >> conftest.nl
+ "$ac_path_SED" -f conftest.sed <conftest.nl >conftest.out 2>/dev/null || break
+ diff conftest.out conftest.nl >/dev/null 2>&1 || break
+ ac_count=`expr $ac_count + 1`
+ if test $ac_count -gt ${ac_path_SED_max-0}; then
+ # Best so far, but keep looking for better
+ ac_cv_path_SED=$ac_path_SED
+ ac_path_SED_max=$ac_count
+ fi
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+ esac
+ $ac_path_SED_found && break 3
+ done
+ done])
+ if test -z "$ac_cv_path_SED"; then
+ AC_ERROR([no acceptable sed could be found in \$PATH])
+ fi
+ else
+ ac_cv_path_SED=$SED
+ fi
+ SED="$ac_cv_path_SED"
+ AC_SUBST([SED])dnl
+ rm -f conftest.sed
+])])])
# DO NOT EDIT! GENERATED AUTOMATICALLY!
-# Copyright (C) 2002-2013 Free Software Foundation, Inc.
+# Copyright (C) 2002-2016 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
m4_pattern_allow([^gl_ES$])dnl a valid locale name
m4_pattern_allow([^gl_LIBOBJS$])dnl a variable
m4_pattern_allow([^gl_LTLIBOBJS$])dnl a variable
+
+ # Pre-early section.
+ AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
AC_REQUIRE([gl_PROG_AR_RANLIB])
+
AC_REQUIRE([AM_PROG_CC_C_O])
+ # Code from module absolute-header:
+ # Code from module accept:
+ # Code from module accept-tests:
# Code from module alloca:
# Code from module alloca-opt:
# Code from module alloca-opt-tests:
# Code from module areadlink-tests:
# Code from module argmatch:
# Code from module argmatch-tests:
+ # Code from module arpa_inet:
+ # Code from module arpa_inet-tests:
+ # Code from module assure:
# Code from module binary-io:
# Code from module binary-io-tests:
+ # Code from module bind:
+ # Code from module bind-tests:
# Code from module bitrotate:
# Code from module bitrotate-tests:
# Code from module btowc:
# Code from module close-tests:
# Code from module config-h:
# Code from module configmake:
+ # Code from module connect:
+ # Code from module connect-tests:
+ # Code from module ctype:
+ # Code from module ctype-tests:
# Code from module diffseq:
# Code from module dirname:
# Code from module dirname-lgpl:
# Code from module do-release-commit-and-tag:
# Code from module dosname:
# Code from module double-slash-root:
+ # Code from module dtotimespec:
# Code from module dup2:
# Code from module dup2-tests:
# Code from module environ:
# Code from module exclude-tests:
# Code from module exitfail:
# Code from module extensions:
- AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
# Code from module extern-inline:
# Code from module fcntl:
# Code from module fcntl-h:
# Code from module fdopen-tests:
# Code from module fgetc-tests:
# Code from module file-type:
+ # Code from module filename:
# Code from module filenamecat:
# Code from module filenamecat-lgpl:
# Code from module filenamecat-tests:
+ # Code from module flexmember:
# Code from module float:
# Code from module float-tests:
# Code from module fnmatch:
# Code from module freopen-tests:
# Code from module fstat:
# Code from module fstat-tests:
+ # Code from module ftruncate:
+ # Code from module ftruncate-tests:
# Code from module fwrite-tests:
# Code from module gendocs:
# Code from module getcwd-lgpl:
# Code from module ignore-value:
# Code from module ignore-value-tests:
# Code from module include_next:
+ # Code from module inet_pton:
+ # Code from module inet_pton-tests:
# Code from module inline:
# Code from module intprops:
# Code from module intprops-tests:
# Code from module inttypes:
# Code from module inttypes-incomplete:
# Code from module inttypes-tests:
+ # Code from module ioctl:
+ # Code from module ioctl-tests:
+ # Code from module isblank:
+ # Code from module isblank-tests:
# Code from module iswblank:
# Code from module iswblank-tests:
# Code from module langinfo:
# Code from module largefile:
AC_REQUIRE([AC_SYS_LARGEFILE])
# Code from module libsigsegv:
+ # Code from module listen:
+ # Code from module listen-tests:
# Code from module localcharset:
# Code from module locale:
# Code from module locale-tests:
# Code from module lstat:
# Code from module lstat-tests:
# Code from module maintainer-makefile:
- # Code from module malloc-gnu:
- # Code from module malloc-gnu-tests:
# Code from module malloc-posix:
# Code from module malloca:
# Code from module malloca-tests:
# Code from module memchr-tests:
# Code from module mkstemp:
# Code from module mktime:
+ # Code from module mktime-internal:
# Code from module msvc-inval:
# Code from module msvc-nothrow:
# Code from module multiarch:
+ # Code from module nanosleep:
+ # Code from module nanosleep-tests:
+ # Code from module netinet_in:
+ # Code from module netinet_in-tests:
# Code from module nl_langinfo:
# Code from module nl_langinfo-tests:
# Code from module nocrash:
# Code from module open-tests:
# Code from module pathmax:
# Code from module pathmax-tests:
+ # Code from module perror:
+ # Code from module perror-tests:
+ # Code from module pipe-posix:
+ # Code from module pipe-posix-tests:
# Code from module progname:
# Code from module propername:
# Code from module putenv:
# Code from module quotearg-simple-tests:
# Code from module raise:
# Code from module raise-tests:
+ # Code from module rawmemchr:
+ # Code from module rawmemchr-tests:
# Code from module readlink:
# Code from module readlink-tests:
# Code from module readme-release:
# Code from module regex-tests:
# Code from module same-inode:
# Code from module secure_getenv:
+ # Code from module select:
+ # Code from module select-tests:
# Code from module setenv:
# Code from module setenv-tests:
# Code from module setlocale:
# Code from module setlocale-tests:
+ # Code from module setsockopt:
+ # Code from module setsockopt-tests:
# Code from module sh-quote:
# Code from module sh-quote-tests:
# Code from module sigaction:
# Code from module snippet/warn-on-use:
# Code from module snprintf:
# Code from module snprintf-tests:
+ # Code from module socket:
+ # Code from module socketlib:
+ # Code from module sockets:
+ # Code from module sockets-tests:
+ # Code from module socklen:
# Code from module ssize_t:
# Code from module stat:
# Code from module stat-macros:
# Code from module stat-tests:
# Code from module stat-time:
# Code from module stat-time-tests:
+ # Code from module stdalign:
+ # Code from module stdalign-tests:
# Code from module stdarg:
dnl Some compilers (e.g., AIX 5.3 cc) need to be in c99 mode
dnl for the builtin va_copy to work. With Autoconf 2.60 or later,
# Code from module strerror:
# Code from module strerror-override:
# Code from module strerror-tests:
+ # Code from module strerror_r-posix:
+ # Code from module strerror_r-posix-tests:
# Code from module strftime:
# Code from module strftime-tests:
# Code from module striconv:
# Code from module strtoumax-tests:
# Code from module symlink:
# Code from module symlink-tests:
+ # Code from module sys_ioctl:
+ # Code from module sys_ioctl-tests:
+ # Code from module sys_select:
+ # Code from module sys_select-tests:
+ # Code from module sys_socket:
+ # Code from module sys_socket-tests:
# Code from module sys_stat:
# Code from module sys_stat-tests:
# Code from module sys_time:
# Code from module sys_time-tests:
# Code from module sys_types:
# Code from module sys_types-tests:
+ # Code from module sys_uio:
+ # Code from module sys_uio-tests:
# Code from module sys_wait:
# Code from module sys_wait-tests:
# Code from module system-quote:
# Code from module time:
# Code from module time-tests:
# Code from module time_r:
+ # Code from module time_rz:
+ # Code from module timegm:
# Code from module timespec:
+ # Code from module timespec-add:
+ # Code from module timespec-sub:
+ # Code from module timespec-tests:
# Code from module trim:
# Code from module unistd:
# Code from module unistd-tests:
# Code from module update-copyright:
# Code from module update-copyright-tests:
# Code from module useless-if-before-free:
- # Code from module usleep:
- # Code from module usleep-tests:
# Code from module vararrays:
# Code from module vasnprintf:
# Code from module vasnprintf-tests:
gl_UNISTD_MODULE_INDICATOR([close])
gl_CONFIG_H
gl_CONFIGMAKE_PREP
+ gl_CTYPE_H
gl_DIRNAME
gl_MODULE_INDICATOR([dirname])
gl_DIRNAME_LGPL
gl_PREREQ_DUP2
fi
gl_UNISTD_MODULE_INDICATOR([dup2])
+ gl_ENVIRON
+ gl_UNISTD_MODULE_INDICATOR([environ])
gl_HEADER_ERRNO_H
gl_ERROR
if test $ac_cv_lib_error_at_line = no; then
gl_FILE_NAME_CONCAT
gl_MODULE_INDICATOR([filenamecat])
gl_FILE_NAME_CONCAT_LGPL
+ AC_C_FLEXIBLE_ARRAY_MEMBER
gl_FLOAT_H
if test $REPLACE_FLOAT_LDBL = 1; then
AC_LIBOBJ([float])
fi
gl_SYS_STAT_MODULE_INDICATOR([fstat])
gl_FUNC_GETDTABLESIZE
- if test $HAVE_GETDTABLESIZE = 0; then
+ if test $HAVE_GETDTABLESIZE = 0 || test $REPLACE_GETDTABLESIZE = 1; then
AC_LIBOBJ([getdtablesize])
gl_PREREQ_GETDTABLESIZE
fi
gl_INTTOSTR
gl_INTTYPES_H
gl_INTTYPES_INCOMPLETE
+ gl_FUNC_ISBLANK
+ if test $HAVE_ISBLANK = 0; then
+ AC_LIBOBJ([isblank])
+ fi
+ gl_CTYPE_MODULE_INDICATOR([isblank])
gl_FUNC_ISWBLANK
if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then
:
gl_SYS_STAT_MODULE_INDICATOR([lstat])
AC_CONFIG_COMMANDS_PRE([m4_ifdef([AH_HEADER],
[AC_SUBST([CONFIG_INCLUDE], m4_defn([AH_HEADER]))])])
- gl_FUNC_MALLOC_GNU
- if test $REPLACE_MALLOC = 1; then
- AC_LIBOBJ([malloc])
- fi
- gl_MODULE_INDICATOR([malloc-gnu])
+ AC_REQUIRE([AC_PROG_SED])
gl_FUNC_MALLOC_POSIX
if test $REPLACE_MALLOC = 1; then
AC_LIBOBJ([malloc])
gl_PREREQ_MKTIME
fi
gl_TIME_MODULE_INDICATOR([mktime])
- gl_MSVC_INVAL
+ gl_FUNC_MKTIME_INTERNAL
+ if test $REPLACE_MKTIME = 1; then
+ AC_LIBOBJ([mktime])
+ gl_PREREQ_MKTIME
+ fi
+ AC_REQUIRE([gl_MSVC_INVAL])
if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then
AC_LIBOBJ([msvc-inval])
fi
- gl_MSVC_NOTHROW
+ AC_REQUIRE([gl_MSVC_NOTHROW])
if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then
AC_LIBOBJ([msvc-nothrow])
fi
gl_PREREQ_RAISE
fi
gl_SIGNAL_MODULE_INDICATOR([raise])
+ gl_FUNC_RAWMEMCHR
+ if test $HAVE_RAWMEMCHR = 0; then
+ AC_LIBOBJ([rawmemchr])
+ gl_PREREQ_RAWMEMCHR
+ fi
+ gl_STRING_MODULE_INDICATOR([rawmemchr])
gl_FUNC_READLINK
if test $HAVE_READLINK = 0 || test $REPLACE_READLINK = 1; then
AC_LIBOBJ([readlink])
gl_PREREQ_SECURE_GETENV
fi
gl_STDLIB_MODULE_INDICATOR([secure_getenv])
+ gl_FUNC_SETENV
+ if test $HAVE_SETENV = 0 || test $REPLACE_SETENV = 1; then
+ AC_LIBOBJ([setenv])
+ fi
+ gl_STDLIB_MODULE_INDICATOR([setenv])
gl_SIGACTION
if test $HAVE_SIGACTION = 0; then
AC_LIBOBJ([sigaction])
fi
gl_STDLIB_MODULE_INDICATOR([strtoull])
gl_FUNC_STRTOUMAX
- if test $ac_cv_func_strtoumax = no; then
+ if test $HAVE_DECL_STRTOUMAX = 0 || test $REPLACE_STRTOUMAX = 1; then
AC_LIBOBJ([strtoumax])
gl_PREREQ_STRTOUMAX
fi
gl_PREREQ_TIME_R
fi
gl_TIME_MODULE_INDICATOR([time_r])
+ gl_TIME_RZ
+ if test "$HAVE_TIMEZONE_T" = 0; then
+ AC_LIBOBJ([time_rz])
+ fi
+ gl_TIME_MODULE_INDICATOR([time_rz])
+ gl_FUNC_TIMEGM
+ if test $HAVE_TIMEGM = 0 || test $REPLACE_TIMEGM = 1; then
+ AC_LIBOBJ([timegm])
+ gl_PREREQ_TIMEGM
+ fi
+ gl_TIME_MODULE_INDICATOR([timegm])
gl_TIMESPEC
gl_UNISTD_H
- gl_LIBUNISTRING_LIBHEADER([0.9.2], [unistr.h])
+ gl_LIBUNISTRING_LIBHEADER([0.9.4], [unistr.h])
gl_MODULE_INDICATOR([unistr/u8-mbtoucr])
gl_LIBUNISTRING_MODULE([0.9], [unistr/u8-mbtoucr])
gl_MODULE_INDICATOR([unistr/u8-uctomb])
gl_LIBUNISTRING_MODULE([0.9], [unistr/u8-uctomb])
- gl_LIBUNISTRING_LIBHEADER([0.9], [unitypes.h])
- gl_LIBUNISTRING_LIBHEADER([0.9], [uniwidth.h])
- gl_LIBUNISTRING_MODULE([0.9.4], [uniwidth/width])
+ gl_LIBUNISTRING_LIBHEADER([0.9.4], [unitypes.h])
+ gl_LIBUNISTRING_LIBHEADER([0.9.4], [uniwidth.h])
+ gl_LIBUNISTRING_MODULE([0.9.6], [uniwidth/width])
gl_FUNC_GLIBC_UNLOCKED_IO
+ gl_FUNC_UNSETENV
+ if test $HAVE_UNSETENV = 0 || test $REPLACE_UNSETENV = 1; then
+ AC_LIBOBJ([unsetenv])
+ gl_PREREQ_UNSETENV
+ fi
+ gl_STDLIB_MODULE_INDICATOR([unsetenv])
AC_C_VARARRAYS
gl_FUNC_VASNPRINTF
gl_FUNC_VASPRINTF
AC_SUBST([gltests_WITNESS])
gl_module_indicator_condition=$gltests_WITNESS
m4_pushdef([gl_MODULE_INDICATOR_CONDITION], [$gl_module_indicator_condition])
+ AC_REQUIRE([gl_HEADER_SYS_SOCKET])
+ if test "$ac_cv_header_winsock2_h" = yes; then
+ AC_LIBOBJ([accept])
+ fi
+ gl_SYS_SOCKET_MODULE_INDICATOR([accept])
+ gl_HEADER_ARPA_INET
+ AC_PROG_MKDIR_P
+ AC_REQUIRE([gl_HEADER_SYS_SOCKET])
+ if test "$ac_cv_header_winsock2_h" = yes; then
+ AC_LIBOBJ([bind])
+ fi
+ gl_SYS_SOCKET_MODULE_INDICATOR([bind])
gt_LOCALE_FR
gt_LOCALE_FR_UTF8
gt_LOCALE_FR
gt_LOCALE_TR_UTF8
- gl_ENVIRON
- gl_UNISTD_MODULE_INDICATOR([environ])
+ 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_FUNC_FDOPEN
if test $REPLACE_FDOPEN = 1; then
AC_LIBOBJ([fdopen])
gl_PREREQ_FDOPEN
fi
gl_STDIO_MODULE_INDICATOR([fdopen])
+ gl_FUNC_FTRUNCATE
+ if test $HAVE_FTRUNCATE = 0 || test $REPLACE_FTRUNCATE = 1; then
+ AC_LIBOBJ([ftruncate])
+ gl_PREREQ_FTRUNCATE
+ fi
+ gl_UNISTD_MODULE_INDICATOR([ftruncate])
gl_FUNC_GETCWD_LGPL
if test $REPLACE_GETCWD = 1; then
AC_LIBOBJ([getcwd-lgpl])
AC_LIBOBJ([getpagesize])
fi
gl_UNISTD_MODULE_INDICATOR([getpagesize])
+ gl_FUNC_INET_PTON
+ if test $HAVE_INET_PTON = 0 || test $REPLACE_INET_NTOP = 1; then
+ AC_LIBOBJ([inet_pton])
+ gl_PREREQ_INET_PTON
+ fi
+ gl_ARPA_INET_MODULE_INDICATOR([inet_pton])
+ AC_C_BIGENDIAN
+ gl_FUNC_IOCTL
+ if test $HAVE_IOCTL = 0 || test $REPLACE_IOCTL = 1; then
+ AC_LIBOBJ([ioctl])
+ fi
+ gl_SYS_IOCTL_MODULE_INDICATOR([ioctl])
+ AC_REQUIRE([gl_HEADER_SYS_SOCKET])
+ if test "$ac_cv_header_winsock2_h" = yes; then
+ AC_LIBOBJ([listen])
+ fi
+ gl_SYS_SOCKET_MODULE_INDICATOR([listen])
AC_CHECK_FUNCS_ONCE([newlocale])
gt_LOCALE_FR
gt_LOCALE_FR_UTF8
gl_FUNC_MMAP_ANON
AC_CHECK_HEADERS_ONCE([sys/mman.h])
AC_CHECK_FUNCS_ONCE([mprotect])
+ gl_FUNC_NANOSLEEP
+ if test $HAVE_NANOSLEEP = 0 || test $REPLACE_NANOSLEEP = 1; then
+ AC_LIBOBJ([nanosleep])
+ gl_PREREQ_NANOSLEEP
+ fi
+ gl_TIME_MODULE_INDICATOR([nanosleep])
+ AC_CHECK_DECLS_ONCE([alarm])
+ gl_HEADER_NETINET_IN
+ AC_PROG_MKDIR_P
gt_LOCALE_FR
gt_LOCALE_FR_UTF8
+ gl_FUNC_PERROR
+ if test $REPLACE_PERROR = 1; then
+ AC_LIBOBJ([perror])
+ fi
+ gl_STRING_MODULE_INDICATOR([perror])
+ gl_FUNC_PIPE
+ if test $HAVE_PIPE = 0; then
+ AC_LIBOBJ([pipe])
+ fi
+ gl_UNISTD_MODULE_INDICATOR([pipe])
gl_FUNC_PUTENV
if test $REPLACE_PUTENV = 1; then
AC_LIBOBJ([putenv])
gl_PREREQ_PUTENV
fi
gl_STDLIB_MODULE_INDICATOR([putenv])
- gl_FUNC_SETENV
- if test $HAVE_SETENV = 0 || test $REPLACE_SETENV = 1; then
- AC_LIBOBJ([setenv])
+ dnl Check for prerequisites for memory fence checks.
+ dnl FIXME: zerosize-ptr.h requires these: make a module for it
+ gl_FUNC_MMAP_ANON
+ AC_CHECK_HEADERS_ONCE([sys/mman.h])
+ AC_CHECK_FUNCS_ONCE([mprotect])
+ dnl Check for prerequisites for memory fence checks.
+ gl_FUNC_MMAP_ANON
+ AC_CHECK_HEADERS_ONCE([sys/mman.h])
+ AC_CHECK_FUNCS_ONCE([mprotect])
+ gl_FUNC_SELECT
+ if test $REPLACE_SELECT = 1; then
+ AC_LIBOBJ([select])
fi
- gl_STDLIB_MODULE_INDICATOR([setenv])
+ gl_SYS_SELECT_MODULE_INDICATOR([select])
+ AC_CHECK_HEADERS_ONCE([sys/wait.h])
gl_FUNC_SETLOCALE
if test $REPLACE_SETLOCALE = 1; then
AC_LIBOBJ([setlocale])
gt_LOCALE_FR_UTF8
gt_LOCALE_JA
gt_LOCALE_ZH_CN
+ AC_REQUIRE([gl_HEADER_SYS_SOCKET])
+ if test "$ac_cv_header_winsock2_h" = yes; then
+ AC_LIBOBJ([setsockopt])
+ fi
+ gl_SYS_SOCKET_MODULE_INDICATOR([setsockopt])
gl_FUNC_SLEEP
if test $HAVE_SLEEP = 0 || test $REPLACE_SLEEP = 1; then
AC_LIBOBJ([sleep])
gl_FUNC_SNPRINTF
gl_STDIO_MODULE_INDICATOR([snprintf])
gl_MODULE_INDICATOR([snprintf])
+ AC_REQUIRE([gl_HEADER_SYS_SOCKET])
+ if test "$ac_cv_header_winsock2_h" = yes; then
+ AC_LIBOBJ([socket])
+ fi
+ # When this module is used, sockets may actually occur as file descriptors,
+ # hence it is worth warning if the modules 'close' and 'ioctl' are not used.
+ m4_ifdef([gl_UNISTD_H_DEFAULTS], [AC_REQUIRE([gl_UNISTD_H_DEFAULTS])])
+ m4_ifdef([gl_SYS_IOCTL_H_DEFAULTS], [AC_REQUIRE([gl_SYS_IOCTL_H_DEFAULTS])])
+ AC_REQUIRE([gl_PREREQ_SYS_H_WINSOCK2])
+ if test "$ac_cv_header_winsock2_h" = yes; then
+ UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=1
+ SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=1
+ fi
+ gl_SYS_SOCKET_MODULE_INDICATOR([socket])
+ 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
+ if test $HAVE_DECL_STRERROR_R = 0 || test $REPLACE_STRERROR_R = 1; then
+ AC_LIBOBJ([strerror_r])
+ gl_PREREQ_STRERROR_R
+ fi
+ gl_STRING_MODULE_INDICATOR([strerror_r])
dnl Check for prerequisites for memory fence checks.
gl_FUNC_MMAP_ANON
AC_CHECK_HEADERS_ONCE([sys/mman.h])
AC_LIBOBJ([symlink])
fi
gl_UNISTD_MODULE_INDICATOR([symlink])
- gl_FUNC_UNSETENV
- if test $HAVE_UNSETENV = 0 || test $REPLACE_UNSETENV = 1; then
- AC_LIBOBJ([unsetenv])
- gl_PREREQ_UNSETENV
- fi
- gl_STDLIB_MODULE_INDICATOR([unsetenv])
+ gl_SYS_IOCTL_H
+ AC_PROG_MKDIR_P
+ gl_HEADER_SYS_SELECT
+ AC_PROG_MKDIR_P
+ AC_REQUIRE([gl_HEADER_SYS_SOCKET])
+ AC_PROG_MKDIR_P
+ AC_CHECK_FUNCS_ONCE([shutdown])
+ gl_HEADER_SYS_UIO
+ AC_PROG_MKDIR_P
abs_aux_dir=`cd "$ac_aux_dir"; pwd`
AC_SUBST([abs_aux_dir])
- gl_FUNC_USLEEP
- if test $HAVE_USLEEP = 0 || test $REPLACE_USLEEP = 1; then
- AC_LIBOBJ([usleep])
- fi
- gl_UNISTD_MODULE_INDICATOR([usleep])
abs_aux_dir=`cd "$ac_aux_dir"; pwd`
AC_SUBST([abs_aux_dir])
gt_LOCALE_FR
build-aux/vc-list-files
doc/fdl.texi
doc/gendocs_template
+ doc/gendocs_template_min
lib/alloca.c
lib/alloca.in.h
lib/allocator.c
lib/anytostr.c
lib/areadlink.c
lib/areadlink.h
+ lib/argmatch.c
+ lib/argmatch.h
lib/asnprintf.c
lib/asprintf.c
+ lib/assure.h
lib/basename-lgpl.c
lib/basename.c
lib/binary-io.c
lib/careadlinkat.h
lib/close.c
lib/config.charset
+ lib/ctype.in.h
lib/diffseq.h
lib/dirname-lgpl.c
lib/dirname.c
lib/fd-hook.h
lib/file-type.c
lib/file-type.h
+ lib/filename.h
lib/filenamecat-lgpl.c
lib/filenamecat.c
lib/filenamecat.h
lib/inttostr.c
lib/inttostr.h
lib/inttypes.in.h
+ lib/isblank.c
lib/iswblank.c
lib/itold.c
lib/langinfo.in.h
lib/quotearg.c
lib/quotearg.h
lib/raise.c
+ lib/rawmemchr.c
+ lib/rawmemchr.valgrind
lib/readlink.c
lib/ref-add.sin
lib/ref-del.sin
lib/regex_internal.h
lib/regexec.c
lib/secure_getenv.c
+ lib/setenv.c
lib/sh-quote.c
lib/sh-quote.h
lib/sig-handler.c
lib/system-quote.h
lib/tempname.c
lib/tempname.h
+ lib/time-internal.h
lib/time.in.h
lib/time_r.c
+ lib/time_rz.c
+ lib/timegm.c
lib/timespec.c
lib/timespec.h
lib/trim.c
lib/uniwidth/cjk.h
lib/uniwidth/width.c
lib/unlocked-io.h
+ lib/unsetenv.c
lib/vasnprintf.c
lib/vasnprintf.h
lib/vasprintf.c
lib/xvasprintf.c
lib/xvasprintf.h
m4/00gnulib.m4
+ m4/absolute-header.m4
m4/alloca.m4
+ m4/arpa_inet_h.m4
m4/btowc.m4
m4/c-stack.m4
m4/clock_time.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/fcntl_h.m4
m4/fdopen.m4
m4/filenamecat.m4
+ m4/flexmember.m4
m4/float_h.m4
m4/fnmatch.m4
m4/fpieee.m4
m4/freopen.m4
m4/fstat.m4
+ m4/ftruncate.m4
m4/getcwd.m4
m4/getdtablesize.m4
m4/getopt.m4
m4/iconv_h.m4
m4/iconv_open.m4
m4/include_next.m4
+ m4/inet_pton.m4
m4/inline.m4
m4/intmax_t.m4
m4/inttostr.m4
m4/inttypes-pri.m4
m4/inttypes.m4
m4/inttypes_h.m4
+ m4/ioctl.m4
+ m4/isblank.m4
m4/iswblank.m4
m4/langinfo_h.m4
m4/largefile.m4
m4/msvc-inval.m4
m4/msvc-nothrow.m4
m4/multiarch.m4
+ m4/nanosleep.m4
+ m4/netinet_in_h.m4
m4/nl_langinfo.m4
m4/nocrash.m4
m4/off_t.m4
m4/open.m4
m4/pathmax.m4
+ m4/perror.m4
+ m4/pipe.m4
m4/printf.m4
m4/putenv.m4
m4/quote.m4
m4/quotearg.m4
m4/raise.m4
+ m4/rawmemchr.m4
m4/readlink.m4
m4/regex.m4
m4/secure_getenv.m4
+ m4/select.m4
m4/setenv.m4
m4/setlocale.m4
m4/sigaction.m4
m4/size_max.m4
m4/sleep.m4
m4/snprintf.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/stdalign.m4
m4/stdarg.m4
m4/stdbool.m4
m4/stddef_h.m4
m4/stdlib_h.m4
m4/strcase.m4
m4/strerror.m4
+ m4/strerror_r.m4
m4/strftime.m4
m4/string_h.m4
m4/strings_h.m4
m4/strtoull.m4
m4/strtoumax.m4
m4/symlink.m4
+ m4/sys_ioctl_h.m4
+ 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/sys_wait_h.m4
m4/tempname.m4
m4/time_h.m4
m4/time_r.m4
+ m4/time_rz.m4
+ m4/timegm.m4
m4/timespec.m4
m4/tm_gmtoff.m4
m4/unistd_h.m4
m4/unlocked-io.m4
- m4/usleep.m4
m4/vararrays.m4
m4/vasnprintf.m4
m4/vasprintf.m4
m4/xvasprintf.m4
tests/init.sh
tests/macros.h
+ tests/nap.h
tests/signature.h
+ tests/test-accept.c
tests/test-alloca-opt.c
tests/test-areadlink.c
tests/test-areadlink.h
tests/test-argmatch.c
+ tests/test-arpa_inet.c
tests/test-binary-io.c
tests/test-binary-io.sh
+ tests/test-bind.c
tests/test-bitrotate.c
tests/test-btowc.c
tests/test-btowc1.sh
tests/test-c-strcasecmp.c
tests/test-c-strncasecmp.c
tests/test-close.c
+ tests/test-connect.c
+ tests/test-ctype.c
tests/test-dirname.c
tests/test-dup2.c
tests/test-environ.c
tests/test-freopen-safer.c
tests/test-freopen.c
tests/test-fstat.c
+ tests/test-ftruncate.c
+ tests/test-ftruncate.sh
tests/test-fwrite.c
tests/test-getcwd-lgpl.c
tests/test-getdtablesize.c
tests/test-iconv-h.c
tests/test-iconv.c
tests/test-ignore-value.c
+ tests/test-inet_pton.c
tests/test-init.sh
tests/test-intprops.c
tests/test-inttostr.c
tests/test-inttypes.c
+ tests/test-ioctl.c
+ tests/test-isblank.c
tests/test-iswblank.c
tests/test-langinfo.c
+ tests/test-listen.c
tests/test-locale.c
tests/test-localeconv.c
tests/test-lstat.c
tests/test-lstat.h
- tests/test-malloc-gnu.c
tests/test-malloca.c
tests/test-mbrtowc-w32-1.sh
tests/test-mbrtowc-w32-2.sh
tests/test-mbrtowc2.sh
tests/test-mbrtowc3.sh
tests/test-mbrtowc4.sh
+ tests/test-mbrtowc5.sh
tests/test-mbscasecmp.c
tests/test-mbscasecmp.sh
tests/test-mbsinit.c
tests/test-mbsstr3.c
tests/test-mbsstr3.sh
tests/test-memchr.c
+ tests/test-nanosleep.c
+ tests/test-netinet_in.c
tests/test-nl_langinfo.c
tests/test-nl_langinfo.sh
tests/test-open.c
tests/test-open.h
tests/test-pathmax.c
+ tests/test-perror.c
+ tests/test-perror.sh
+ tests/test-perror2.c
+ tests/test-pipe.c
tests/test-quotearg-simple.c
tests/test-quotearg.h
tests/test-raise.c
+ tests/test-rawmemchr.c
tests/test-readlink.c
tests/test-readlink.h
tests/test-regex.c
+ tests/test-select-fd.c
+ tests/test-select-in.sh
+ tests/test-select-out.sh
+ tests/test-select-stdin.c
+ tests/test-select.c
+ tests/test-select.h
tests/test-setenv.c
tests/test-setlocale1.c
tests/test-setlocale1.sh
tests/test-setlocale2.c
tests/test-setlocale2.sh
+ tests/test-setsockopt.c
tests/test-sh-quote.c
tests/test-sigaction.c
tests/test-signal-h.c
tests/test-sigprocmask.c
tests/test-sleep.c
tests/test-snprintf.c
+ tests/test-sockets.c
tests/test-stat-time.c
tests/test-stat.c
tests/test-stat.h
+ tests/test-stdalign.c
tests/test-stdbool.c
tests/test-stddef.c
tests/test-stdint.c
tests/test-stdio.c
tests/test-stdlib.c
tests/test-strerror.c
+ tests/test-strerror_r.c
tests/test-strftime.c
tests/test-striconv.c
tests/test-string.c
tests/test-strtoumax.c
tests/test-symlink.c
tests/test-symlink.h
+ tests/test-sys_ioctl.c
+ tests/test-sys_select.c
+ tests/test-sys_socket.c
tests/test-sys_stat.c
tests/test-sys_time.c
tests/test-sys_types.c
+ tests/test-sys_uio.c
tests/test-sys_wait.c
tests/test-sys_wait.h
tests/test-time.c
+ tests/test-timespec.c
tests/test-unistd.c
tests/test-unsetenv.c
tests/test-update-copyright.sh
- tests/test-usleep.c
tests/test-vasnprintf.c
tests/test-vasprintf.c
tests/test-vc-list-files-cvs.sh
tests/uniwidth/test-uc_width2.c
tests/uniwidth/test-uc_width2.sh
tests/zerosize-ptr.h
- tests=lib/argmatch.c
- tests=lib/argmatch.h
+ tests=lib/accept.c
+ tests=lib/arpa_inet.in.h
+ tests=lib/bind.c
+ tests=lib/connect.c
+ tests=lib/dtotimespec.c
tests=lib/fdopen.c
tests=lib/fpucw.h
+ tests=lib/ftruncate.c
tests=lib/getcwd-lgpl.c
tests=lib/getpagesize.c
tests=lib/hash-pjw.c
tests=lib/hash-pjw.h
+ tests=lib/inet_pton.c
+ tests=lib/ioctl.c
+ tests=lib/listen.c
+ tests=lib/nanosleep.c
+ tests=lib/netinet_in.in.h
+ tests=lib/perror.c
+ tests=lib/pipe.c
tests=lib/putenv.c
tests=lib/same-inode.h
- tests=lib/setenv.c
+ tests=lib/select.c
tests=lib/setlocale.c
+ tests=lib/setsockopt.c
tests=lib/sleep.c
tests=lib/snprintf.c
+ 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/unsetenv.c
- tests=lib/usleep.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_uio.in.h
+ tests=lib/timespec-add.c
+ tests=lib/timespec-sub.c
+ tests=lib/w32sock.h
tests=lib/wctob.c
tests=lib/wctomb-impl.h
tests=lib/wctomb.c
# hard-locale.m4 serial 8
-dnl Copyright (C) 2002-2006, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2006, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
-# iconv.m4 serial 18 (gettext-0.18.2)
-dnl Copyright (C) 2000-2002, 2007-2013 Free Software Foundation, Inc.
+# iconv.m4 serial 19 (gettext-0.18.2)
+dnl Copyright (C) 2000-2002, 2007-2014, 2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
if test $am_cv_lib_iconv = yes; then
LIBS="$LIBS $LIBICONV"
fi
- AC_RUN_IFELSE(
- [AC_LANG_SOURCE([[
+ am_cv_func_iconv_works=no
+ for ac_iconv_const in '' 'const'; do
+ AC_RUN_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
#include <iconv.h>
#include <string.h>
-int main ()
-{
- int result = 0;
+
+#ifndef ICONV_CONST
+# define ICONV_CONST $ac_iconv_const
+#endif
+ ]],
+ [[int result = 0;
/* Test against AIX 5.1 bug: Failures are not distinguishable from successful
returns. */
{
iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8");
if (cd_utf8_to_88591 != (iconv_t)(-1))
{
- static const char input[] = "\342\202\254"; /* EURO SIGN */
+ static ICONV_CONST char input[] = "\342\202\254"; /* EURO SIGN */
char buf[10];
- const char *inptr = input;
+ ICONV_CONST char *inptr = input;
size_t inbytesleft = strlen (input);
char *outptr = buf;
size_t outbytesleft = sizeof (buf);
size_t res = iconv (cd_utf8_to_88591,
- (char **) &inptr, &inbytesleft,
+ &inptr, &inbytesleft,
&outptr, &outbytesleft);
if (res == 0)
result |= 1;
iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646");
if (cd_ascii_to_88591 != (iconv_t)(-1))
{
- static const char input[] = "\263";
+ static ICONV_CONST char input[] = "\263";
char buf[10];
- const char *inptr = input;
+ ICONV_CONST char *inptr = input;
size_t inbytesleft = strlen (input);
char *outptr = buf;
size_t outbytesleft = sizeof (buf);
size_t res = iconv (cd_ascii_to_88591,
- (char **) &inptr, &inbytesleft,
+ &inptr, &inbytesleft,
&outptr, &outbytesleft);
if (res == 0)
result |= 2;
iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1");
if (cd_88591_to_utf8 != (iconv_t)(-1))
{
- static const char input[] = "\304";
+ static ICONV_CONST char input[] = "\304";
static char buf[2] = { (char)0xDE, (char)0xAD };
- const char *inptr = input;
+ ICONV_CONST char *inptr = input;
size_t inbytesleft = 1;
char *outptr = buf;
size_t outbytesleft = 1;
size_t res = iconv (cd_88591_to_utf8,
- (char **) &inptr, &inbytesleft,
+ &inptr, &inbytesleft,
&outptr, &outbytesleft);
if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD)
result |= 4;
iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591");
if (cd_88591_to_utf8 != (iconv_t)(-1))
{
- static const char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337";
+ static ICONV_CONST char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337";
char buf[50];
- const char *inptr = input;
+ ICONV_CONST char *inptr = input;
size_t inbytesleft = strlen (input);
char *outptr = buf;
size_t outbytesleft = sizeof (buf);
size_t res = iconv (cd_88591_to_utf8,
- (char **) &inptr, &inbytesleft,
+ &inptr, &inbytesleft,
&outptr, &outbytesleft);
if ((int)res > 0)
result |= 8;
&& iconv_open ("utf8", "eucJP") == (iconv_t)(-1))
result |= 16;
return result;
-}]])],
- [am_cv_func_iconv_works=yes],
- [am_cv_func_iconv_works=no],
- [
-changequote(,)dnl
- case "$host_os" in
- aix* | hpux*) am_cv_func_iconv_works="guessing no" ;;
- *) am_cv_func_iconv_works="guessing yes" ;;
- esac
-changequote([,])dnl
- ])
+]])],
+ [am_cv_func_iconv_works=yes], ,
+ [case "$host_os" in
+ aix* | hpux*) am_cv_func_iconv_works="guessing no" ;;
+ *) am_cv_func_iconv_works="guessing yes" ;;
+ esac])
+ test "$am_cv_func_iconv_works" = no || break
+ done
LIBS="$am_save_LIBS"
])
case "$am_cv_func_iconv_works" in
# iconv_h.m4 serial 8
-dnl Copyright (C) 2007-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2007-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# iconv_open.m4 serial 14
-dnl Copyright (C) 2007-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2007-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# include_next.m4 serial 23
-dnl Copyright (C) 2006-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2006-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
if test AS_VAR_GET(gl_header_exists) = yes; then
AS_VAR_POPDEF([gl_header_exists])
])
- AC_LANG_CONFTEST(
- [AC_LANG_SOURCE(
- [[#include <]]m4_dquote(m4_defn([gl_HEADER_NAME]))[[>]]
- )])
- dnl AIX "xlc -E" and "cc -E" omit #line directives for header
- dnl files that contain only a #include of other header files and
- dnl no non-comment tokens of their own. This leads to a failure
- dnl to detect the absolute name of <dirent.h>, <signal.h>,
- dnl <poll.h> and others. The workaround is to force preservation
- dnl of comments through option -C. This ensures all necessary
- dnl #line directives are present. GCC supports option -C as well.
- case "$host_os" in
- aix*) gl_absname_cpp="$ac_cpp -C" ;;
- *) gl_absname_cpp="$ac_cpp" ;;
- esac
-changequote(,)
- case "$host_os" in
- mingw*)
- dnl For the sake of native Windows compilers (excluding gcc),
- dnl treat backslash as a directory separator, like /.
- dnl Actually, these compilers use a double-backslash as
- dnl directory separator, inside the
- dnl # line "filename"
- dnl directives.
- gl_dirsep_regex='[/\\]'
- ;;
- *)
- gl_dirsep_regex='\/'
- ;;
- esac
- dnl A sed expression that turns a string into a basic regular
- dnl expression, for use within "/.../".
- gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g'
-changequote([,])
- gl_header_literal_regex=`echo ']m4_defn([gl_HEADER_NAME])[' \
- | 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/
-changequote(,)dnl
- s|^/[^/]|//&|
-changequote([,])dnl
- p
- q
- }'
- dnl eval is necessary to expand gl_absname_cpp.
- dnl Ultrix and Pyramid sh refuse to redirect output of eval,
- dnl so use subshell.
- AS_VAR_SET(gl_next_header,
- ['"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&AS_MESSAGE_LOG_FD |
- sed -n "$gl_absolute_header_sed"`'"'])
+ gl_ABSOLUTE_HEADER_ONE(gl_HEADER_NAME)
+ AS_VAR_COPY([gl_header], [gl_cv_absolute_]AS_TR_SH(gl_HEADER_NAME))
+ AS_VAR_SET(gl_next_header, ['"'$gl_header'"'])
m4_if([$2], [check],
[else
AS_VAR_SET(gl_next_header, ['<'gl_HEADER_NAME'>'])
--- /dev/null
+# inet_pton.m4 serial 17
+dnl Copyright (C) 2006, 2008-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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_INET_PTON],
+[
+ AC_REQUIRE([gl_ARPA_INET_H_DEFAULTS])
+
+ dnl Persuade Solaris <arpa/inet.h> to declare inet_pton.
+ AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
+
+ AC_REQUIRE([AC_C_RESTRICT])
+
+ dnl Most platforms that provide inet_pton define it in libc.
+ dnl Solaris 8..10 provide inet_pton in libnsl instead.
+ dnl Solaris 2.6..7 provide inet_pton in libresolv instead.
+ dnl Native Windows provides it in -lws2_32 instead, with a declaration in
+ dnl <ws2tcpip.h>, and it uses stdcall calling convention, not cdecl
+ dnl (hence we cannot use AC_CHECK_FUNCS, AC_SEARCH_LIBS to find it).
+ HAVE_INET_PTON=1
+ INET_PTON_LIB=
+ gl_PREREQ_SYS_H_WINSOCK2
+ if test $HAVE_WINSOCK2_H = 1; then
+ AC_CHECK_DECLS([inet_pton],,, [[#include <ws2tcpip.h>]])
+ if test $ac_cv_have_decl_inet_pton = yes; then
+ dnl It needs to be overridden, because the stdcall calling convention
+ dnl is not compliant with POSIX.
+ REPLACE_INET_PTON=1
+ INET_PTON_LIB="-lws2_32"
+ else
+ HAVE_DECL_INET_PTON=0
+ HAVE_INET_PTON=0
+ fi
+ else
+ gl_save_LIBS=$LIBS
+ AC_SEARCH_LIBS([inet_pton], [nsl resolv], [],
+ [AC_CHECK_FUNCS([inet_pton])
+ if test $ac_cv_func_inet_pton = no; then
+ HAVE_INET_PTON=0
+ fi
+ ])
+ LIBS=$gl_save_LIBS
+
+ if test "$ac_cv_search_inet_pton" != "no" \
+ && test "$ac_cv_search_inet_pton" != "none required"; then
+ INET_PTON_LIB="$ac_cv_search_inet_pton"
+ fi
+
+ AC_CHECK_HEADERS_ONCE([netdb.h])
+ AC_CHECK_DECLS([inet_pton],,,
+ [[#include <arpa/inet.h>
+ #if HAVE_NETDB_H
+ # include <netdb.h>
+ #endif
+ ]])
+ if test $ac_cv_have_decl_inet_pton = no; then
+ HAVE_DECL_INET_PTON=0
+ fi
+ fi
+ AC_SUBST([INET_PTON_LIB])
+])
+
+# Prerequisites of lib/inet_pton.c.
+AC_DEFUN([gl_PREREQ_INET_PTON], [
+ AC_REQUIRE([gl_SOCKET_FAMILIES])
+])
# inline.m4 serial 4
-dnl Copyright (C) 2006, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2006, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# intlmacosx.m4 serial 5 (gettext-0.18.2)
-dnl Copyright (C) 2004-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2004-2014 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# intmax_t.m4 serial 8
-dnl Copyright (C) 1997-2004, 2006-2007, 2009-2013 Free Software Foundation,
+dnl Copyright (C) 1997-2004, 2006-2007, 2009-2016 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,
#serial 8
-dnl Copyright (C) 2004-2006, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2004-2006, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# inttypes-pri.m4 serial 7 (gettext-0.18.2)
-dnl Copyright (C) 1997-2002, 2006, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 1997-2002, 2006, 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# inttypes.m4 serial 26
-dnl Copyright (C) 2006-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2006-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
HAVE_DECL_STRTOIMAX=1; AC_SUBST([HAVE_DECL_STRTOIMAX])
HAVE_DECL_STRTOUMAX=1; AC_SUBST([HAVE_DECL_STRTOUMAX])
REPLACE_STRTOIMAX=0; AC_SUBST([REPLACE_STRTOIMAX])
+ REPLACE_STRTOUMAX=0; AC_SUBST([REPLACE_STRTOUMAX])
INT32_MAX_LT_INTMAX_MAX=1; AC_SUBST([INT32_MAX_LT_INTMAX_MAX])
INT64_MAX_EQ_LONG_MAX='defined _LP64'; AC_SUBST([INT64_MAX_EQ_LONG_MAX])
PRI_MACROS_BROKEN=0; AC_SUBST([PRI_MACROS_BROKEN])
# inttypes_h.m4 serial 10
-dnl Copyright (C) 1997-2004, 2006, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 1997-2004, 2006, 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
--- /dev/null
+# ioctl.m4 serial 4
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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_IOCTL],
+[
+ AC_REQUIRE([gl_SYS_IOCTL_H_DEFAULTS])
+ AC_REQUIRE([gl_HEADER_SYS_SOCKET])
+ HAVE_IOCTL=1
+ if test "$ac_cv_header_winsock2_h" = yes; then
+ dnl Even if the 'socket' module is not used here, another part of the
+ dnl application may use it and pass file descriptors that refer to
+ dnl sockets to the ioctl() function. So enable the support for sockets.
+ HAVE_IOCTL=0
+ else
+ AC_CHECK_FUNCS([ioctl])
+ dnl On glibc systems, the second parameter is 'unsigned long int request',
+ dnl not 'int request'. We cannot simply cast the function pointer, but
+ dnl instead need a wrapper.
+ AC_CACHE_CHECK([for ioctl with POSIX signature],
+ [gl_cv_func_ioctl_posix_signature],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <sys/ioctl.h>]],
+ [[extern
+ #ifdef __cplusplus
+ "C"
+ #endif
+ int ioctl (int, int, ...);
+ ]])
+ ],
+ [gl_cv_func_ioctl_posix_signature=yes],
+ [gl_cv_func_ioctl_posix_signature=no])
+ ])
+ if test $gl_cv_func_ioctl_posix_signature != yes; then
+ REPLACE_IOCTL=1
+ fi
+ fi
+])
--- /dev/null
+# isblank.m4 serial 3
+dnl Copyright (C) 2009-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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_ISBLANK],
+[
+ dnl Persuade glibc <ctype.h> to declare isblank().
+ AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
+
+ AC_REQUIRE([gl_CTYPE_H_DEFAULTS])
+ AC_CHECK_FUNCS_ONCE([isblank])
+ if test $ac_cv_func_isblank = no; then
+ HAVE_ISBLANK=0
+ fi
+])
# iswblank.m4 serial 4
-dnl Copyright (C) 2011-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# langinfo_h.m4 serial 7
-dnl Copyright (C) 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# Enable large files on systems where this is not the default.
-# Copyright 1992-1996, 1998-2013 Free Software Foundation, Inc.
+# Copyright 1992-1996, 1998-2016 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.
# lib-ld.m4 serial 6
-dnl Copyright (C) 1996-2003, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 1996-2003, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# lib-link.m4 serial 26 (gettext-0.18.2)
-dnl Copyright (C) 2001-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2001-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# lib-prefix.m4 serial 7 (gettext-0.18)
-dnl Copyright (C) 2001-2005, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2001-2005, 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# libsigsegv.m4 serial 4
-dnl Copyright (C) 2002-2003, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2003, 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# libunistring-base.m4 serial 5
-dnl Copyright (C) 2010-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2010-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# localcharset.m4 serial 7
-dnl Copyright (C) 2002, 2004, 2006, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002, 2004, 2006, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# locale-fr.m4 serial 17
-dnl Copyright (C) 2003, 2005-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2003, 2005-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# locale-ja.m4 serial 12
-dnl Copyright (C) 2003, 2005-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2003, 2005-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# locale-tr.m4 serial 10
-dnl Copyright (C) 2003, 2005-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2003, 2005-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# locale-zh.m4 serial 12
-dnl Copyright (C) 2003, 2005-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2003, 2005-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# locale_h.m4 serial 19
-dnl Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# localeconv.m4 serial 1
-dnl Copyright (C) 2012-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2012-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# longlong.m4 serial 17
-dnl Copyright (C) 1999-2007, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 1999-2007, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 26
+# serial 27
-# Copyright (C) 1997-2001, 2003-2013 Free Software Foundation, Inc.
+# Copyright (C) 1997-2001, 2003-2016 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
[gl_cv_func_lstat_dereferences_slashed_symlink],
[rm -f conftest.sym conftest.file
echo >conftest.file
- if test "$as_ln_s" = "ln -s" && ln -s conftest.file conftest.sym; then
- AC_RUN_IFELSE(
- [AC_LANG_PROGRAM(
- [AC_INCLUDES_DEFAULT],
- [[struct stat sbuf;
- /* Linux will dereference the symlink and fail, as required by
- POSIX. That is better in the sense that it means we will not
- have to compile and use the lstat wrapper. */
- return lstat ("conftest.sym/", &sbuf) == 0;
- ]])],
- [gl_cv_func_lstat_dereferences_slashed_symlink=yes],
- [gl_cv_func_lstat_dereferences_slashed_symlink=no],
- [case "$host_os" in
- # Guess yes on glibc systems.
- *-gnu*) gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;;
- # If we don't know, assume the worst.
- *) gl_cv_func_lstat_dereferences_slashed_symlink="guessing no" ;;
- esac
- ])
- else
- # If the 'ln -s' command failed, then we probably don't even
- # have an lstat function.
- gl_cv_func_lstat_dereferences_slashed_symlink="guessing no"
- fi
+ AC_RUN_IFELSE(
+ [AC_LANG_PROGRAM(
+ [AC_INCLUDES_DEFAULT],
+ [[struct stat sbuf;
+ if (symlink ("conftest.file", "conftest.sym") != 0)
+ return 1;
+ /* Linux will dereference the symlink and fail, as required by
+ POSIX. That is better in the sense that it means we will not
+ have to compile and use the lstat wrapper. */
+ return lstat ("conftest.sym/", &sbuf) == 0;
+ ]])],
+ [gl_cv_func_lstat_dereferences_slashed_symlink=yes],
+ [gl_cv_func_lstat_dereferences_slashed_symlink=no],
+ [case "$host_os" in
+ *-gnu*)
+ # Guess yes on glibc systems.
+ gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;;
+ *)
+ # If we don't know, assume the worst.
+ gl_cv_func_lstat_dereferences_slashed_symlink="guessing no" ;;
+ esac
+ ])
rm -f conftest.sym conftest.file
])
case "$gl_cv_func_lstat_dereferences_slashed_symlink" in
-# malloc.m4 serial 14
-dnl Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+# malloc.m4 serial 15
+dnl Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 taken from the following Autoconf patch:
-# http://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commitdiff;h=7fbb553727ed7e0e689a17594b58559ecf3ea6e9
+# This is adapted with modifications from upstream Autoconf here:
+# http://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=04be2b7a29d65d9a08e64e8e56e594c91749598c
AC_DEFUN([_AC_FUNC_MALLOC_IF],
[
AC_REQUIRE([AC_HEADER_STDC])dnl
char *malloc ();
#endif
]],
- [[return ! malloc (0);]])
+ [[char *p = malloc (0);
+ int result = !p;
+ free (p);
+ return result;]])
],
[ac_cv_func_malloc_0_nonnull=yes],
[ac_cv_func_malloc_0_nonnull=no],
# malloca.m4 serial 1
-dnl Copyright (C) 2003-2004, 2006-2007, 2009-2013 Free Software Foundation,
+dnl Copyright (C) 2003-2004, 2006-2007, 2009-2016 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,
-# manywarnings.m4 serial 5
-dnl Copyright (C) 2008-2013 Free Software Foundation, Inc.
+# manywarnings.m4 serial 8
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
fi
# List all gcc warning categories.
+ # To compare this list to your installed GCC's, run this Bash command:
+ #
+ # comm -3 \
+ # <(sed -n 's/^ *\(-[^ ]*\) .*/\1/p' manywarnings.m4 | sort) \
+ # <(gcc --help=warnings | sed -n 's/^ \(-[^ ]*\) .*/\1/p' | sort |
+ # grep -v -x -f <(
+ # awk '/^[^#]/ {print $1}' ../build-aux/gcc-warning.spec))
+
gl_manywarn_set=
for gl_manywarn_item in \
-W \
-Wabi \
-Waddress \
+ -Waggressive-loop-optimizations \
-Wall \
- -Warray-bounds \
-Wattributes \
-Wbad-function-cast \
+ -Wbool-compare \
-Wbuiltin-macro-redefined \
-Wcast-align \
-Wchar-subscripts \
+ -Wchkp \
-Wclobbered \
-Wcomment \
-Wcomments \
-Wcoverage-mismatch \
-Wcpp \
+ -Wdate-time \
-Wdeprecated \
-Wdeprecated-declarations \
+ -Wdesignated-init \
-Wdisabled-optimization \
+ -Wdiscarded-array-qualifiers \
+ -Wdiscarded-qualifiers \
-Wdiv-by-zero \
-Wdouble-promotion \
+ -Wduplicated-cond \
-Wempty-body \
-Wendif-labels \
-Wenum-compare \
-Wformat-extra-args \
-Wformat-nonliteral \
-Wformat-security \
+ -Wformat-signedness \
-Wformat-y2k \
-Wformat-zero-length \
- -Wformat=2 \
+ -Wframe-address \
-Wfree-nonheap-object \
+ -Whsa \
+ -Wignored-attributes \
-Wignored-qualifiers \
-Wimplicit \
-Wimplicit-function-declaration \
-Wimplicit-int \
+ -Wincompatible-pointer-types \
-Winit-self \
-Winline \
+ -Wint-conversion \
-Wint-to-pointer-cast \
-Winvalid-memory-model \
-Winvalid-pch \
-Wjump-misses-init \
+ -Wlogical-not-parentheses \
-Wlogical-op \
-Wmain \
-Wmaybe-uninitialized \
+ -Wmemset-transposed-args \
+ -Wmisleading-indentation \
-Wmissing-braces \
-Wmissing-declarations \
-Wmissing-field-initializers \
- -Wmissing-format-attribute \
-Wmissing-include-dirs \
- -Wmissing-noreturn \
-Wmissing-parameter-type \
-Wmissing-prototypes \
- -Wmudflap \
-Wmultichar \
-Wnarrowing \
-Wnested-externs \
-Wnonnull \
- -Wnormalized=nfc \
+ -Wnonnull-compare \
+ -Wnull-dereference \
+ -Wodr \
-Wold-style-declaration \
-Wold-style-definition \
+ -Wopenmp-simd \
-Woverflow \
-Woverlength-strings \
-Woverride-init \
-Wpointer-sign \
-Wpointer-to-int-cast \
-Wpragmas \
+ -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-memaccess \
-Wstack-protector \
-Wstrict-aliasing \
-Wsuggest-attribute=format \
-Wsuggest-attribute=noreturn \
-Wsuggest-attribute=pure \
+ -Wsuggest-final-methods \
+ -Wsuggest-final-types \
-Wswitch \
+ -Wswitch-bool \
-Wswitch-default \
-Wsync-nand \
-Wsystem-headers \
+ -Wtautological-compare \
-Wtrampolines \
-Wtrigraphs \
-Wtype-limits \
-Wuninitialized \
-Wunknown-pragmas \
- -Wunreachable-code \
-Wunsafe-loop-optimizations \
-Wunused \
-Wunused-but-set-parameter \
gl_manywarn_set="$gl_manywarn_set $gl_manywarn_item"
done
+ # gcc --help=warnings outputs an unusual form for these options; list
+ # them here so that the above 'comm' command doesn't report a false match.
+ gl_manywarn_set="$gl_manywarn_set -Warray-bounds=2"
+ gl_manywarn_set="$gl_manywarn_set -Wnormalized=nfc"
+ gl_manywarn_set="$gl_manywarn_set -Wshift-overflow=2"
+ gl_manywarn_set="$gl_manywarn_set -Wunused-const-variable=2"
+
+ # These are needed for older GCC versions.
+ if test -n "$GCC"; then
+ case `($CC --version) 2>/dev/null` in
+ 'gcc (GCC) '[[0-3]].* | \
+ 'gcc (GCC) '4.[[0-7]].*)
+ gl_manywarn_set="$gl_manywarn_set -fdiagnostics-show-option"
+ gl_manywarn_set="$gl_manywarn_set -funit-at-a-time"
+ ;;
+ esac
+ fi
+
# Disable specific options as needed.
if test "$gl_cv_cc_nomfi_needed" = yes; then
gl_manywarn_set="$gl_manywarn_set -Wno-missing-field-initializers"
# mbchar.m4 serial 9
-dnl Copyright (C) 2005-2007, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2005-2007, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# mbiter.m4 serial 7
-dnl Copyright (C) 2005, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2005, 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
-# mbrtowc.m4 serial 25
-dnl Copyright (C) 2001-2002, 2004-2005, 2008-2013 Free Software Foundation,
+# mbrtowc.m4 serial 27 -*- coding: utf-8 -*-
+dnl Copyright (C) 2001-2002, 2004-2005, 2008-2016 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,
gl_MBRTOWC_NULL_ARG2
gl_MBRTOWC_RETVAL
gl_MBRTOWC_NUL_RETVAL
+ gl_MBRTOWC_EMPTY_INPUT
+ gl_MBRTOWC_C_LOCALE
case "$gl_cv_func_mbrtowc_null_arg1" in
*yes) ;;
*) AC_DEFINE([MBRTOWC_NULL_ARG1_BUG], [1],
REPLACE_MBRTOWC=1
;;
esac
+ case "$gl_cv_func_mbrtowc_empty_input" in
+ *yes) ;;
+ *) AC_DEFINE([MBRTOWC_EMPTY_INPUT_BUG], [1],
+ [Define if the mbrtowc function does not return (size_t) -2
+ for empty input.])
+ REPLACE_MBRTOWC=1
+ ;;
+ esac
+ case $gl_cv_C_locale_sans_EILSEQ in
+ *yes) ;;
+ *) AC_DEFINE([C_LOCALE_MAYBE_EILSEQ], [1],
+ [Define to 1 if the C locale may have encoding errors.])
+ REPLACE_MBRTOWC=1
+ ;;
+ esac
fi
fi
])
])
])
+dnl Test whether mbrtowc returns the correct value on empty input.
+
+AC_DEFUN([gl_MBRTOWC_EMPTY_INPUT],
+[
+ AC_REQUIRE([AC_PROG_CC])
+ AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
+ AC_CACHE_CHECK([whether mbrtowc works on empty input],
+ [gl_cv_func_mbrtowc_empty_input],
+ [
+ dnl Initial guess, used when cross-compiling or when no suitable locale
+ dnl is present.
+changequote(,)dnl
+ case "$host_os" in
+ # Guess no on AIX and glibc systems.
+ aix* | *-gnu*)
+ gl_cv_func_mbrtowc_empty_input="guessing no" ;;
+ *) gl_cv_func_mbrtowc_empty_input="guessing yes" ;;
+ esac
+changequote([,])dnl
+ AC_RUN_IFELSE(
+ [AC_LANG_SOURCE([[
+ #include <wchar.h>
+ static wchar_t wc;
+ static mbstate_t mbs;
+ int
+ main (void)
+ {
+ return mbrtowc (&wc, "", 0, &mbs) != (size_t) -2;
+ }]])],
+ [gl_cv_func_mbrtowc_empty_input=yes],
+ [gl_cv_func_mbrtowc_empty_input=no],
+ [:])
+ ])
+])
+
+dnl Test whether mbrtowc reports encoding errors in the C locale.
+dnl Although POSIX was never intended to allow this, the GNU C Library
+dnl and other implementations do it. See:
+dnl https://sourceware.org/bugzilla/show_bug.cgi?id=19932
+
+AC_DEFUN([gl_MBRTOWC_C_LOCALE],
+[
+ AC_CACHE_CHECK([whether the C locale is free of encoding errors],
+ [gl_cv_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"
+
+ AC_RUN_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <limits.h>
+ #include <locale.h>
+ #include <wchar.h>
+ ]], [[
+ int i;
+ char *locale = setlocale (LC_ALL, "C");
+ if (! locale)
+ return 1;
+ for (i = CHAR_MIN; i <= CHAR_MAX; i++)
+ {
+ char c = i;
+ wchar_t wc;
+ mbstate_t mbs = { 0, };
+ size_t ss = mbrtowc (&wc, &c, 1, &mbs);
+ if (1 < ss)
+ return 1;
+ }
+ return 0;
+ ]])],
+ [gl_cv_C_locale_sans_EILSEQ=yes],
+ [gl_cv_C_locale_sans_EILSEQ=no],
+ [:])])
+])
+
# Prerequisites of lib/mbrtowc.c.
AC_DEFUN([gl_PREREQ_MBRTOWC], [
:
# mbsinit.m4 serial 8
-dnl Copyright (C) 2008, 2010-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2008, 2010-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# mbslen.m4 serial 2
-dnl Copyright (C) 2010-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2010-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# mbsrtowcs.m4 serial 13
-dnl Copyright (C) 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# mbstate_t.m4 serial 13
-dnl Copyright (C) 2000-2002, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2000-2002, 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# mbtowc.m4 serial 2
-dnl Copyright (C) 2011-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# memchr.m4 serial 12
-dnl Copyright (C) 2002-2004, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2004, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 23
-# Copyright (C) 2001, 2003-2007, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003-2007, 2009-2016 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 25
-dnl Copyright (C) 2002-2003, 2005-2007, 2009-2013 Free Software Foundation,
+# serial 27
+dnl Copyright (C) 2002-2003, 2005-2007, 2009-2016 Free Software Foundation,
dnl Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl From Jim Meyering.
+AC_DEFUN([gl_TIME_T_IS_SIGNED],
+[
+ AC_CACHE_CHECK([whether time_t is signed],
+ [gl_cv_time_t_is_signed],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[#include <time.h>
+ char time_t_signed[(time_t) -1 < 0 ? 1 : -1];]])],
+ [gl_cv_time_t_is_signed=yes],
+ [gl_cv_time_t_is_signed=no])])
+ if test $gl_cv_time_t_is_signed = yes; then
+ AC_DEFINE([TIME_T_IS_SIGNED], [1], [Define to 1 if time_t is signed.])
+ fi
+])
+
AC_DEFUN([gl_FUNC_MKTIME],
[
AC_REQUIRE([gl_HEADER_TIME_H_DEFAULTS])
+ AC_REQUIRE([gl_TIME_T_IS_SIGNED])
dnl We don't use AC_FUNC_MKTIME any more, because it is no longer maintained
dnl in Autoconf and because it invokes AC_LIBOBJ.
AC_CHECK_HEADERS_ONCE([unistd.h])
AC_CHECK_DECLS_ONCE([alarm])
+ AC_CHECK_FUNCS_ONCE([tzset])
AC_REQUIRE([gl_MULTIARCH])
if test $APPLE_UNIVERSAL_BUILD = 1; then
# A universal build on Apple Mac OS X platforms.
time_t t, delta;
int i, j;
int time_t_signed_magnitude = (time_t) ~ (time_t) 0 < (time_t) -1;
- int time_t_signed = ! ((time_t) 0 < (time_t) -1);
#if HAVE_DECL_ALARM
/* This test makes some buggy mktime implementations loop.
alarm (60);
#endif
- time_t_max = (! time_t_signed
+ time_t_max = (! TIME_T_IS_SIGNED
? (time_t) -1
: ((((time_t) 1 << (sizeof (time_t) * CHAR_BIT - 2)) - 1)
* 2 + 1));
- time_t_min = (! time_t_signed
+ time_t_min = (! TIME_T_IS_SIGNED
? (time_t) 0
: time_t_signed_magnitude
? ~ (time_t) 0
# mmap-anon.m4 serial 10
-dnl Copyright (C) 2005, 2007, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2005, 2007, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# mode_t.m4 serial 2
-dnl Copyright (C) 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# msvc-inval.m4 serial 1
-dnl Copyright (C) 2011-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# msvc-nothrow.m4 serial 1
-dnl Copyright (C) 2011-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# multiarch.m4 serial 7
-dnl Copyright (C) 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
--- /dev/null
+# serial 36
+
+dnl From Jim Meyering.
+dnl Check for the nanosleep function.
+dnl If not found, use the supplied replacement.
+dnl
+
+# Copyright (C) 1999-2001, 2003-2016 Free Software Foundation, Inc.
+
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+AC_DEFUN([gl_FUNC_NANOSLEEP],
+[
+ AC_REQUIRE([gl_HEADER_TIME_H_DEFAULTS])
+ AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
+
+ dnl Persuade glibc and Solaris <time.h> to declare nanosleep.
+ AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
+
+ AC_CHECK_HEADERS_ONCE([sys/time.h])
+ AC_REQUIRE([gl_FUNC_SELECT])
+
+ nanosleep_save_libs=$LIBS
+
+ # Solaris 2.5.1 needs -lposix4 to get the nanosleep function.
+ # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4.
+ LIB_NANOSLEEP=
+ AC_SUBST([LIB_NANOSLEEP])
+ AC_SEARCH_LIBS([nanosleep], [rt posix4],
+ [test "$ac_cv_search_nanosleep" = "none required" ||
+ LIB_NANOSLEEP=$ac_cv_search_nanosleep])
+ if test "x$ac_cv_search_nanosleep" != xno; then
+ dnl The system has a nanosleep function.
+
+ AC_REQUIRE([gl_MULTIARCH])
+ if test $APPLE_UNIVERSAL_BUILD = 1; then
+ # A universal build on Apple Mac OS X platforms.
+ # The test result would be 'no (mishandles large arguments)' in 64-bit
+ # mode but 'yes' in 32-bit mode. But we need a configuration result that
+ # is valid in both modes.
+ gl_cv_func_nanosleep='no (mishandles large arguments)'
+ fi
+
+ AC_CACHE_CHECK([for working nanosleep],
+ [gl_cv_func_nanosleep],
+ [
+ AC_RUN_IFELSE(
+ [AC_LANG_SOURCE([[
+ #include <errno.h>
+ #include <limits.h>
+ #include <signal.h>
+ #if HAVE_SYS_TIME_H
+ #include <sys/time.h>
+ #endif
+ #include <time.h>
+ #include <unistd.h>
+ #define TYPE_SIGNED(t) (! ((t) 0 < (t) -1))
+ #define TYPE_MAXIMUM(t) \
+ ((t) (! TYPE_SIGNED (t) \
+ ? (t) -1 \
+ : ((((t) 1 << (sizeof (t) * CHAR_BIT - 2)) - 1) * 2 + 1)))
+
+ static void
+ check_for_SIGALRM (int sig)
+ {
+ if (sig != SIGALRM)
+ _exit (1);
+ }
+
+ int
+ main ()
+ {
+ static struct timespec ts_sleep;
+ static struct timespec ts_remaining;
+ static struct sigaction act;
+ /* Test for major problems first. */
+ if (! nanosleep)
+ return 2;
+ act.sa_handler = check_for_SIGALRM;
+ sigemptyset (&act.sa_mask);
+ sigaction (SIGALRM, &act, NULL);
+ ts_sleep.tv_sec = 0;
+ ts_sleep.tv_nsec = 1;
+ alarm (1);
+ if (nanosleep (&ts_sleep, NULL) != 0)
+ return 3;
+ /* Test for a minor problem: the handling of large arguments. */
+ ts_sleep.tv_sec = TYPE_MAXIMUM (time_t);
+ ts_sleep.tv_nsec = 999999999;
+ alarm (1);
+ if (nanosleep (&ts_sleep, &ts_remaining) != -1)
+ return 4;
+ if (errno != EINTR)
+ return 5;
+ if (ts_remaining.tv_sec <= TYPE_MAXIMUM (time_t) - 10)
+ return 6;
+ return 0;
+ }]])],
+ [gl_cv_func_nanosleep=yes],
+ [case $? in dnl (
+ 4|5|6) gl_cv_func_nanosleep='no (mishandles large arguments)';; dnl (
+ *) gl_cv_func_nanosleep=no;;
+ esac],
+ [case "$host_os" in dnl ((
+ linux*) # Guess it halfway works when the kernel is Linux.
+ gl_cv_func_nanosleep='guessing no (mishandles large arguments)' ;;
+ *) # If we don't know, assume the worst.
+ gl_cv_func_nanosleep='guessing no' ;;
+ esac
+ ])
+ ])
+ case "$gl_cv_func_nanosleep" in
+ *yes)
+ REPLACE_NANOSLEEP=0
+ ;;
+ *)
+ REPLACE_NANOSLEEP=1
+ case "$gl_cv_func_nanosleep" in
+ *"mishandles large arguments"*)
+ AC_DEFINE([HAVE_BUG_BIG_NANOSLEEP], [1],
+ [Define to 1 if nanosleep mishandles large arguments.])
+ ;;
+ *)
+ # The replacement uses select(). Add $LIBSOCKET to $LIB_NANOSLEEP.
+ for ac_lib in $LIBSOCKET; do
+ case " $LIB_NANOSLEEP " in
+ *" $ac_lib "*) ;;
+ *) LIB_NANOSLEEP="$LIB_NANOSLEEP $ac_lib";;
+ esac
+ done
+ ;;
+ esac
+ ;;
+ esac
+ else
+ HAVE_NANOSLEEP=0
+ fi
+ LIBS=$nanosleep_save_libs
+])
+
+# Prerequisites of lib/nanosleep.c.
+AC_DEFUN([gl_PREREQ_NANOSLEEP],
+[
+ AC_CHECK_HEADERS_ONCE([sys/select.h])
+ gl_PREREQ_SIG_HANDLER_H
+])
--- /dev/null
+# netinet_in_h.m4 serial 5
+dnl Copyright (C) 2006-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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_NETINET_IN],
+[
+ AC_CACHE_CHECK([whether <netinet/in.h> is self-contained],
+ [gl_cv_header_netinet_in_h_selfcontained],
+ [
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <netinet/in.h>]], [[]])],
+ [gl_cv_header_netinet_in_h_selfcontained=yes],
+ [gl_cv_header_netinet_in_h_selfcontained=no])
+ ])
+ if test $gl_cv_header_netinet_in_h_selfcontained = yes; then
+ NETINET_IN_H=''
+ else
+ NETINET_IN_H='netinet/in.h'
+ AC_CHECK_HEADERS([netinet/in.h])
+ gl_CHECK_NEXT_HEADERS([netinet/in.h])
+ if test $ac_cv_header_netinet_in_h = yes; then
+ HAVE_NETINET_IN_H=1
+ else
+ HAVE_NETINET_IN_H=0
+ fi
+ AC_SUBST([HAVE_NETINET_IN_H])
+ fi
+ AC_SUBST([NETINET_IN_H])
+ AM_CONDITIONAL([GL_GENERATE_NETINET_IN_H], [test -n "$NETINET_IN_H"])
+])
# nl_langinfo.m4 serial 5
-dnl Copyright (C) 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# nls.m4 serial 5 (gettext-0.18)
-dnl Copyright (C) 1995-2003, 2005-2006, 2008-2013 Free Software Foundation,
+dnl Copyright (C) 1995-2003, 2005-2006, 2008-2014 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,
# nocrash.m4 serial 4
-dnl Copyright (C) 2005, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2005, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
#else
/* Avoid a crash on POSIX systems. */
#include <signal.h>
+#include <unistd.h>
/* A POSIX signal handler. */
static void
exception_handler (int sig)
{
- exit (1);
+ _exit (1);
}
static void
nocrash_init (void)
# off_t.m4 serial 1
-dnl Copyright (C) 2012-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2012-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# open.m4 serial 14
-dnl Copyright (C) 2007-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2007-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# pathmax.m4 serial 10
-dnl Copyright (C) 2002-2003, 2005-2006, 2009-2013 Free Software Foundation,
+dnl Copyright (C) 2002-2003, 2005-2006, 2009-2016 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,
--- /dev/null
+# perror.m4 serial 6
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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_PERROR],
+[
+ AC_REQUIRE([gl_STDIO_H_DEFAULTS])
+ AC_REQUIRE([gl_HEADER_ERRNO_H])
+ AC_REQUIRE([gl_FUNC_STRERROR_R])
+ AC_REQUIRE([gl_FUNC_STRERROR_0])
+ dnl We intentionally do not check for the broader REPLACE_STRERROR_R,
+ dnl since on glibc systems, strerror_r is replaced only for signature
+ dnl issues, and perror is just fine. Rather, we only want to
+ dnl replace perror if strerror_r was replaced for a content fix.
+ if test "$ERRNO_H:$REPLACE_STRERROR_0" != :0; then
+ dnl The system's perror() cannot know about the new errno values we add
+ dnl to <errno.h>, or any fix for strerror(0). Replace it.
+ REPLACE_PERROR=1
+ fi
+ case ${gl_cv_func_strerror_r_works-unset} in
+ unset|*yes)
+ AC_CACHE_CHECK([whether perror matches strerror],
+ [gl_cv_func_perror_works],
+ [AC_RUN_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <errno.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+ ]],
+ [[char *str = strerror (-1);
+ if (!getenv("CONFTEST_OUTPUT")) return 0;
+ if (!str) str = "";
+ puts (str);
+ errno = -1;
+ perror ("");
+ return 0;
+ ]])],
+ [if CONFTEST_OUTPUT=1 ./conftest$EXEEXT >conftest.txt1 2>conftest.txt2 \
+ && cmp conftest.txt1 conftest.txt2 >/dev/null; then
+ gl_cv_func_perror_works=yes
+ else
+ gl_cv_func_perror_works=no
+ fi
+ rm -rf conftest.txt1 conftest.txt2],
+ [gl_cv_func_perror_works=no],
+ [dnl Guess no when cross-compiling.
+ gl_cv_func_perror_works="guessing no"
+ ])
+ ])
+ if test "$gl_cv_func_perror_works" != yes; then
+ REPLACE_PERROR=1
+ fi
+ ;;
+ *)
+ dnl The system's perror() probably inherits the bugs in the
+ dnl system's strerror_r(). Replace it.
+ REPLACE_PERROR=1
+ ;;
+ esac
+])
--- /dev/null
+# pipe.m4 serial 2
+dnl Copyright (C) 2010-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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_PIPE],
+[
+ AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
+
+ AC_CHECK_FUNCS_ONCE([pipe])
+ if test $ac_cv_func_pipe != yes; then
+ HAVE_PIPE=0
+ fi
+])
-# po.m4 serial 20 (gettext-0.18.2)
-dnl Copyright (C) 1995-2013 Free Software Foundation, Inc.
+# po.m4 serial 22 (gettext-0.19)
+dnl Copyright (C) 1995-2014 Free Software Foundation, Inc.
dnl This file is free software; the Free 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_REQUIRE([AC_PROG_MAKE_SET])dnl
AC_REQUIRE([AC_PROG_INSTALL])dnl
AC_REQUIRE([AC_PROG_MKDIR_P])dnl
+ AC_REQUIRE([AC_PROG_SED])dnl
AC_REQUIRE([AM_NLS])dnl
dnl Release version of the gettext macros. This is used to ensure that
dnl the gettext macros and po/Makefile.in.in are in sync.
- AC_SUBST([GETTEXT_MACRO_VERSION], [0.18])
+ AC_SUBST([GETTEXT_MACRO_VERSION], [0.19])
dnl Perform the following tests also if --disable-nls has been given,
dnl because they are needed for "make dist" to work.
-# printf.m4 serial 50
-dnl Copyright (C) 2003, 2007-2013 Free Software Foundation, Inc.
+# printf.m4 serial 52
+dnl Copyright (C) 2003, 2007-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_printf_sizes_c99="guessing yes";;
# Guess yes on FreeBSD >= 5.
- freebsd[1-4]*) gl_cv_func_printf_sizes_c99="guessing no";;
+ freebsd[1-4].*) gl_cv_func_printf_sizes_c99="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_printf_sizes_c99="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_printf_sizes_c99="guessing no";;
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_printf_infinite="guessing yes";;
# Guess yes on FreeBSD >= 6.
- freebsd[1-5]*) gl_cv_func_printf_infinite="guessing no";;
+ freebsd[1-5].*) gl_cv_func_printf_infinite="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_printf_infinite="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_printf_infinite="guessing no";;
# ifdef WORDS_BIGENDIAN
# define LDBL80_WORDS(exponent,manthi,mantlo) \
{ ((unsigned int) (exponent) << 16) | ((unsigned int) (manthi) >> 16), \
- ((unsigned int) (manthi) << 16) | (unsigned int) (mantlo) >> 16), \
+ ((unsigned int) (manthi) << 16) | ((unsigned int) (mantlo) >> 16), \
(unsigned int) (mantlo) << 16 \
}
# else
{ /* Pseudo-NaN. */
static union { unsigned int word[4]; long double value; } x =
{ LDBL80_WORDS (0xFFFF, 0x40000001, 0x00000000) };
- if (sprintf (buf, "%Lf", x.value) < 0
- || !strisnan (buf, 0, strlen (buf)))
+ if (sprintf (buf, "%Lf", x.value) <= 0)
result |= 4;
- if (sprintf (buf, "%Le", x.value) < 0
- || !strisnan (buf, 0, strlen (buf)))
+ if (sprintf (buf, "%Le", x.value) <= 0)
result |= 4;
- if (sprintf (buf, "%Lg", x.value) < 0
- || !strisnan (buf, 0, strlen (buf)))
+ if (sprintf (buf, "%Lg", x.value) <= 0)
result |= 4;
}
{ /* Pseudo-Infinity. */
static union { unsigned int word[4]; long double value; } x =
{ LDBL80_WORDS (0xFFFF, 0x00000000, 0x00000000) };
- if (sprintf (buf, "%Lf", x.value) < 0
- || !strisnan (buf, 0, strlen (buf)))
+ if (sprintf (buf, "%Lf", x.value) <= 0)
result |= 8;
- if (sprintf (buf, "%Le", x.value) < 0
- || !strisnan (buf, 0, strlen (buf)))
+ if (sprintf (buf, "%Le", x.value) <= 0)
result |= 8;
- if (sprintf (buf, "%Lg", x.value) < 0
- || !strisnan (buf, 0, strlen (buf)))
+ if (sprintf (buf, "%Lg", x.value) <= 0)
result |= 8;
}
{ /* Pseudo-Zero. */
static union { unsigned int word[4]; long double value; } x =
{ LDBL80_WORDS (0x4004, 0x00000000, 0x00000000) };
- if (sprintf (buf, "%Lf", x.value) < 0
- || !strisnan (buf, 0, strlen (buf)))
+ if (sprintf (buf, "%Lf", x.value) <= 0)
result |= 16;
- if (sprintf (buf, "%Le", x.value) < 0
- || !strisnan (buf, 0, strlen (buf)))
+ if (sprintf (buf, "%Le", x.value) <= 0)
result |= 16;
- if (sprintf (buf, "%Lg", x.value) < 0
- || !strisnan (buf, 0, strlen (buf)))
+ if (sprintf (buf, "%Lg", x.value) <= 0)
result |= 16;
}
{ /* Unnormalized number. */
static union { unsigned int word[4]; long double value; } x =
{ LDBL80_WORDS (0x4000, 0x63333333, 0x00000000) };
- if (sprintf (buf, "%Lf", x.value) < 0
- || !strisnan (buf, 0, strlen (buf)))
+ if (sprintf (buf, "%Lf", x.value) <= 0)
result |= 32;
- if (sprintf (buf, "%Le", x.value) < 0
- || !strisnan (buf, 0, strlen (buf)))
+ if (sprintf (buf, "%Le", x.value) <= 0)
result |= 32;
- if (sprintf (buf, "%Lg", x.value) < 0
- || !strisnan (buf, 0, strlen (buf)))
+ if (sprintf (buf, "%Lg", x.value) <= 0)
result |= 32;
}
{ /* Pseudo-Denormal. */
static union { unsigned int word[4]; long double value; } x =
{ LDBL80_WORDS (0x0000, 0x83333333, 0x00000000) };
- if (sprintf (buf, "%Lf", x.value) < 0
- || !strisnan (buf, 0, strlen (buf)))
+ if (sprintf (buf, "%Lf", x.value) <= 0)
result |= 64;
- if (sprintf (buf, "%Le", x.value) < 0
- || !strisnan (buf, 0, strlen (buf)))
+ if (sprintf (buf, "%Le", x.value) <= 0)
result |= 64;
- if (sprintf (buf, "%Lg", x.value) < 0
- || !strisnan (buf, 0, strlen (buf)))
+ if (sprintf (buf, "%Lg", x.value) <= 0)
result |= 64;
}
#endif
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_printf_infinite_long_double="guessing yes";;
# Guess yes on FreeBSD >= 6.
- freebsd[1-5]*) gl_cv_func_printf_infinite_long_double="guessing no";;
+ freebsd[1-5].*) gl_cv_func_printf_infinite_long_double="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_printf_infinite_long_double="guessing yes";;
# Guess yes on HP-UX >= 11.
hpux[7-9]* | hpux10*) gl_cv_func_printf_infinite_long_double="guessing no";;
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_printf_directive_f="guessing yes";;
# Guess yes on FreeBSD >= 6.
- freebsd[1-5]*) gl_cv_func_printf_directive_f="guessing no";;
+ freebsd[1-5].*) gl_cv_func_printf_directive_f="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_printf_directive_f="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_printf_directive_f="guessing no";;
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
# Guess yes on FreeBSD >= 5.
- freebsd[1-4]*) gl_cv_func_snprintf_truncation_c99="guessing no";;
+ freebsd[1-4].*) gl_cv_func_snprintf_truncation_c99="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_snprintf_truncation_c99="guessing no";;
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_snprintf_retval_c99="guessing yes";;
# Guess yes on FreeBSD >= 5.
- freebsd[1-4]*) gl_cv_func_snprintf_retval_c99="guessing no";;
+ freebsd[1-4].*) gl_cv_func_snprintf_retval_c99="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_snprintf_retval_c99="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_snprintf_retval_c99="guessing no";;
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_snprintf_directive_n="guessing yes";;
# Guess yes on FreeBSD >= 5.
- freebsd[1-4]*) gl_cv_func_snprintf_directive_n="guessing no";;
+ freebsd[1-4].*) gl_cv_func_snprintf_directive_n="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_snprintf_directive_n="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_snprintf_directive_n="guessing no";;
# Guess yes on glibc systems.
*-gnu*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";;
# Guess yes on FreeBSD >= 5.
- freebsd[1-4]*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";;
+ freebsd[1-4].*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";;
# Guess yes on Mac OS X >= 10.3.
darwin[1-6].*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";;
# progtest.m4 serial 7 (gettext-0.18.2)
-dnl Copyright (C) 1996-2003, 2005, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 1996-2003, 2005, 2008-2014 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# putenv.m4 serial 20
-dnl Copyright (C) 2002-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# quote.m4 serial 6
-dnl Copyright (C) 2002-2003, 2005-2006, 2009-2013 Free Software Foundation,
+dnl Copyright (C) 2002-2003, 2005-2006, 2009-2016 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,
# quotearg.m4 serial 9
-dnl Copyright (C) 2002, 2004-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002, 2004-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# raise.m4 serial 3
-dnl Copyright (C) 2011-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
--- /dev/null
+# rawmemchr.m4 serial 2
+dnl Copyright (C) 2003, 2007-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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_RAWMEMCHR],
+[
+ dnl Persuade glibc <string.h> to declare rawmemchr().
+ AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
+
+ AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
+ AC_CHECK_FUNCS([rawmemchr])
+ if test $ac_cv_func_rawmemchr = no; then
+ HAVE_RAWMEMCHR=0
+ fi
+])
+
+# Prerequisites of lib/strchrnul.c.
+AC_DEFUN([gl_PREREQ_RAWMEMCHR], [:])
# readlink.m4 serial 12
-dnl Copyright (C) 2003, 2007, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2003, 2007, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 64
+# serial 66
-# Copyright (C) 1996-2001, 2003-2013 Free Software Foundation, Inc.
+# Copyright (C) 1996-2001, 2003-2016 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# If cross compiling, assume the test would fail and use the included
# regex.c.
AC_CHECK_DECLS_ONCE([alarm])
+ AC_CHECK_HEADERS_ONCE([malloc.h])
AC_CACHE_CHECK([for working re_compile_pattern],
[gl_cv_func_re_compile_pattern_working],
[AC_RUN_IFELSE(
#include <locale.h>
#include <limits.h>
#include <string.h>
- #if HAVE_DECL_ALARM
- # include <unistd.h>
+
+ #if defined M_CHECK_ACTION || HAVE_DECL_ALARM
# include <signal.h>
+ # include <unistd.h>
+ #endif
+
+ #if HAVE_MALLOC_H
+ # include <malloc.h>
+ #endif
+
+ #ifdef M_CHECK_ACTION
+ /* Exit with distinguishable exit code. */
+ static void sigabrt_no_core (int sig) { raise (SIGTERM); }
#endif
]],
[[int result = 0;
const char *s;
struct re_registers regs;
+ /* Some builds of glibc go into an infinite loop on this
+ test. Use alarm to force death, and mallopt to avoid
+ malloc recursion in diagnosing the corrupted heap. */
#if HAVE_DECL_ALARM
- /* Some builds of glibc go into an infinite loop on this test. */
signal (SIGALRM, SIG_DFL);
alarm (2);
#endif
+#ifdef M_CHECK_ACTION
+ signal (SIGABRT, sigabrt_no_core);
+ mallopt (M_CHECK_ACTION, 2);
+#endif
+
if (setlocale (LC_ALL, "en_US.UTF-8"))
{
{
0, sizeof data - 1, ®s)
!= -1)
result |= 1;
+ regfree (®ex);
}
{
*/
static char const pat[] = "[^x]x";
static char const data[] =
- "\xe1\x80\x80\xe1\x80\xbb\xe1\x80\xbd\xe1\x80\x94\xe1\x80"
- "\xba\xe1\x80\xaf\xe1\x80\x95\xe1\x80\xbax";
+ /* <U1000><U103B><U103D><U1014><U103A><U102F><U1015><U103A> */
+ "\xe1\x80\x80"
+ "\xe1\x80\xbb"
+ "\xe1\x80\xbd"
+ "\xe1\x80\x94"
+ "\xe1\x80\xba"
+ "\xe1\x80\xaf"
+ "\xe1\x80\x95"
+ "\xe1\x80\xba"
+ "x";
re_set_syntax (0);
memset (®ex, 0, sizeof regex);
s = re_compile_pattern (pat, sizeof pat - 1, ®ex);
if (s)
result |= 1;
- else if (re_search (®ex, data, sizeof data - 1,
- 0, sizeof data - 1, 0)
- != 21)
- result |= 1;
+ else
+ {
+ i = re_search (®ex, data, sizeof data - 1,
+ 0, sizeof data - 1, 0);
+ if (i != 0 && i != 21)
+ result |= 1;
+ }
+ regfree (®ex);
}
if (! setlocale (LC_ALL, "C"))
AC_REQUIRE([AC_C_RESTRICT])
AC_REQUIRE([AC_TYPE_MBSTATE_T])
AC_REQUIRE([gl_EEMALLOC])
+ AC_REQUIRE([gl_GLIBC21])
AC_CHECK_HEADERS([libintl.h])
- AC_CHECK_FUNCS_ONCE([isblank iswctype wcscoll])
+ AC_CHECK_FUNCS_ONCE([isblank iswctype])
AC_CHECK_DECLS([isblank], [], [], [[#include <ctype.h>]])
])
# Look up an environment variable more securely.
-dnl Copyright 2013 Free Software Foundation, Inc.
+dnl Copyright 2013-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
if test $ac_cv_func___secure_getenv = no; then
AC_CHECK_FUNCS([issetugid])
fi
+ AC_CHECK_FUNCS_ONCE([getuid geteuid getgid getegid])
])
--- /dev/null
+# select.m4 serial 8
+dnl Copyright (C) 2009-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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_SELECT],
+[
+ AC_REQUIRE([gl_HEADER_SYS_SELECT])
+ AC_REQUIRE([AC_C_RESTRICT])
+ AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
+ AC_REQUIRE([gl_SOCKETS])
+ if test "$ac_cv_header_winsock2_h" = yes; then
+ REPLACE_SELECT=1
+ else
+ dnl On Interix 3.5, select(0, NULL, NULL, NULL, timeout) fails with error
+ dnl EFAULT.
+ AC_CHECK_HEADERS_ONCE([sys/select.h])
+ AC_CACHE_CHECK([whether select supports a 0 argument],
+ [gl_cv_func_select_supports0],
+ [
+ AC_RUN_IFELSE([AC_LANG_SOURCE([[
+#include <sys/types.h>
+#include <sys/time.h>
+#if HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#endif
+int main ()
+{
+ struct timeval timeout;
+ timeout.tv_sec = 0;
+ timeout.tv_usec = 5;
+ return select (0, (fd_set *)0, (fd_set *)0, (fd_set *)0, &timeout) < 0;
+}]])], [gl_cv_func_select_supports0=yes], [gl_cv_func_select_supports0=no],
+ [
+changequote(,)dnl
+ case "$host_os" in
+ # Guess no on Interix.
+ interix*) gl_cv_func_select_supports0="guessing no";;
+ # Guess yes otherwise.
+ *) gl_cv_func_select_supports0="guessing yes";;
+ esac
+changequote([,])dnl
+ ])
+ ])
+ case "$gl_cv_func_select_supports0" in
+ *yes) ;;
+ *) REPLACE_SELECT=1 ;;
+ esac
+
+ dnl On FreeBSD 8.2, select() doesn't always reject bad fds.
+ AC_CACHE_CHECK([whether select detects invalid fds],
+ [gl_cv_func_select_detects_ebadf],
+ [
+ AC_RUN_IFELSE([AC_LANG_PROGRAM([[
+#include <sys/types.h>
+#include <sys/time.h>
+#if HAVE_SYS_SELECT_H
+# include <sys/select.h>
+#endif
+#include <unistd.h>
+#include <errno.h>
+]],[[
+ fd_set set;
+ dup2(0, 16);
+ FD_ZERO(&set);
+ FD_SET(16, &set);
+ close(16);
+ struct timeval timeout;
+ timeout.tv_sec = 0;
+ timeout.tv_usec = 5;
+ return select (17, &set, NULL, NULL, &timeout) != -1 || errno != EBADF;
+]])], [gl_cv_func_select_detects_ebadf=yes],
+ [gl_cv_func_select_detects_ebadf=no],
+ [
+ case "$host_os" in
+ # Guess yes on glibc systems.
+ *-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" ;;
+ esac
+ ])
+ ])
+ case $gl_cv_func_select_detects_ebadf in
+ *yes) ;;
+ *) REPLACE_SELECT=1 ;;
+ esac
+ fi
+
+ dnl Determine the needed libraries.
+ LIB_SELECT="$LIBSOCKET"
+ if test $REPLACE_SELECT = 1; then
+ case "$host_os" in
+ mingw*)
+ dnl On the MSVC platform, the function MsgWaitForMultipleObjects
+ dnl (used in lib/select.c) requires linking with -luser32. On mingw,
+ dnl it is implicit.
+ AC_LINK_IFELSE(
+ [AC_LANG_SOURCE([[
+#define WIN32_LEAN_AND_MEAN
+#include <windows.h>
+int
+main ()
+{
+ MsgWaitForMultipleObjects (0, NULL, 0, 0, 0);
+ return 0;
+}]])],
+ [],
+ [LIB_SELECT="$LIB_SELECT -luser32"])
+ ;;
+ esac
+ fi
+ AC_SUBST([LIB_SELECT])
+])
# setenv.m4 serial 26
-dnl Copyright (C) 2001-2004, 2006-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2001-2004, 2006-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# setlocale.m4 serial 4
-dnl Copyright (C) 2011-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# sigaction.m4 serial 7
-dnl Copyright (C) 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# signal_h.m4 serial 18
-dnl Copyright (C) 2007-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2007-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# signalblocking.m4 serial 14
-dnl Copyright (C) 2001-2002, 2006-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2001-2002, 2006-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# size_max.m4 serial 10
-dnl Copyright (C) 2003, 2005-2006, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2003, 2005-2006, 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# sleep.m4 serial 7
-dnl Copyright (C) 2007-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2007-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# snprintf.m4 serial 6
-dnl Copyright (C) 2002-2004, 2007-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2004, 2007-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
--- /dev/null
+# socketlib.m4 serial 1
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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 gl_SOCKETLIB
+dnl Determines the library to use for socket functions.
+dnl Sets and AC_SUBSTs LIBSOCKET.
+
+AC_DEFUN([gl_SOCKETLIB],
+[
+ gl_PREREQ_SYS_H_WINSOCK2 dnl for HAVE_WINSOCK2_H
+ 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([[
+#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"
+ ])
+ if test "$gl_cv_func_wsastartup" = "yes"; then
+ AC_DEFINE([WINDOWS_SOCKETS], [1], [Define if WSAStartup is needed.])
+ LIBSOCKET='-lws2_32'
+ fi
+ else
+ dnl Unix API.
+ dnl Solaris has most socket functions in libsocket.
+ dnl Haiku has most socket functions in libnetwork.
+ dnl BeOS has most socket functions in libnet.
+ AC_CACHE_CHECK([for library containing setsockopt], [gl_cv_lib_socket], [
+ gl_cv_lib_socket=
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[extern
+#ifdef __cplusplus
+"C"
+#endif
+char setsockopt();]], [[setsockopt();]])],
+ [],
+ [gl_save_LIBS="$LIBS"
+ LIBS="$gl_save_LIBS -lsocket"
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[extern
+#ifdef __cplusplus
+"C"
+#endif
+char setsockopt();]], [[setsockopt();]])],
+ [gl_cv_lib_socket="-lsocket"])
+ if test -z "$gl_cv_lib_socket"; then
+ LIBS="$gl_save_LIBS -lnetwork"
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[extern
+#ifdef __cplusplus
+"C"
+#endif
+char setsockopt();]], [[setsockopt();]])],
+ [gl_cv_lib_socket="-lnetwork"])
+ if test -z "$gl_cv_lib_socket"; then
+ LIBS="$gl_save_LIBS -lnet"
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[extern
+#ifdef __cplusplus
+"C"
+#endif
+char setsockopt();]], [[setsockopt();]])],
+ [gl_cv_lib_socket="-lnet"])
+ fi
+ fi
+ LIBS="$gl_save_LIBS"
+ ])
+ if test -z "$gl_cv_lib_socket"; then
+ gl_cv_lib_socket="none needed"
+ fi
+ ])
+ if test "$gl_cv_lib_socket" != "none needed"; then
+ LIBSOCKET="$gl_cv_lib_socket"
+ fi
+ fi
+ AC_SUBST([LIBSOCKET])
+])
--- /dev/null
+# sockets.m4 serial 7
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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_SOCKETS],
+[
+ AC_REQUIRE([AC_C_INLINE])
+ AC_REQUIRE([gl_SOCKETLIB])
+ gl_PREREQ_SOCKETS
+])
+
+# Prerequisites of lib/sockets.c.
+AC_DEFUN([gl_PREREQ_SOCKETS], [
+ :
+])
--- /dev/null
+# socklen.m4 serial 10
+dnl Copyright (C) 2005-2007, 2009-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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 Albert Chin, Windows fixes from Simon Josefsson.
+
+dnl Check for socklen_t: historically on BSD it is an int, and in
+dnl POSIX 1g it is a type of its own, but some platforms use different
+dnl types for the argument to getsockopt, getpeername, etc.:
+dnl HP-UX 10.20, IRIX 6.5, OSF/1 4.0, Interix 3.5, BeOS.
+dnl So we have to test to find something that will work.
+
+AC_DEFUN([gl_TYPE_SOCKLEN_T],
+ [AC_REQUIRE([gl_CHECK_SOCKET_HEADERS])dnl
+ AC_CHECK_TYPE([socklen_t], ,
+ [AC_MSG_CHECKING([for socklen_t equivalent])
+ AC_CACHE_VAL([gl_cv_socklen_t_equiv],
+ [# Systems have either "struct sockaddr *" or
+ # "void *" as the second argument to getpeername
+ gl_cv_socklen_t_equiv=
+ for arg2 in "struct sockaddr" void; do
+ for t in int size_t "unsigned int" "long int" "unsigned long int"; do
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
+ [[#include <sys/types.h>
+ #include <sys/socket.h>
+
+ int getpeername (int, $arg2 *, $t *);]],
+ [[$t len;
+ getpeername (0, 0, &len);]])],
+ [gl_cv_socklen_t_equiv="$t"])
+ test "$gl_cv_socklen_t_equiv" != "" && break
+ done
+ test "$gl_cv_socklen_t_equiv" != "" && break
+ done
+ ])
+ if test "$gl_cv_socklen_t_equiv" = ""; then
+ AC_MSG_ERROR([Cannot find a type to use in place of socklen_t])
+ fi
+ AC_MSG_RESULT([$gl_cv_socklen_t_equiv])
+ AC_DEFINE_UNQUOTED([socklen_t], [$gl_cv_socklen_t_equiv],
+ [type to use in place of socklen_t if not defined])],
+ [gl_SOCKET_HEADERS])])
+
+dnl On mingw32, socklen_t is in ws2tcpip.h ('int'), so we try to find
+dnl it there too. But on Cygwin, wc2tcpip.h must not be included. Users
+dnl of this module should use the same include pattern as gl_SOCKET_HEADERS.
+dnl When you change this macro, keep also in sync:
+dnl - gl_CHECK_SOCKET_HEADERS,
+dnl - the Include section of modules/socklen.
+AC_DEFUN([gl_SOCKET_HEADERS],
+[
+/* <sys/types.h> is not needed according to POSIX, but the
+ <sys/socket.h> in i386-unknown-freebsd4.10 and
+ powerpc-apple-darwin5.5 required it. */
+#include <sys/types.h>
+#if HAVE_SYS_SOCKET_H
+# include <sys/socket.h>
+#elif HAVE_WS2TCPIP_H
+# include <ws2tcpip.h>
+#endif
+])
+
+dnl Tests for the existence of the header for socket facilities.
+dnl Defines the C macros HAVE_SYS_SOCKET_H, HAVE_WS2TCPIP_H.
+dnl This macro must match gl_SOCKET_HEADERS.
+AC_DEFUN([gl_CHECK_SOCKET_HEADERS],
+ [AC_CHECK_HEADERS_ONCE([sys/socket.h])
+ if test $ac_cv_header_sys_socket_h = no; then
+ dnl We cannot use AC_CHECK_HEADERS_ONCE here, because that would make
+ dnl the check for those headers unconditional; yet cygwin reports
+ dnl that the headers are present but cannot be compiled (since on
+ dnl cygwin, all socket information should come from sys/socket.h).
+ AC_CHECK_HEADERS([ws2tcpip.h])
+ fi
+ ])
--- /dev/null
+# sockpfaf.m4 serial 8
+dnl Copyright (C) 2004, 2006, 2009-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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 Test for some common socket protocol families (PF_INET, PF_INET6, ...)
+dnl and some common address families (AF_INET, AF_INET6, ...).
+dnl This test assumes that a system supports an address family if and only if
+dnl it supports the corresponding protocol family.
+
+dnl From Bruno Haible.
+
+AC_DEFUN([gl_SOCKET_FAMILIES],
+[
+ AC_REQUIRE([gl_HEADER_SYS_SOCKET])
+ AC_CHECK_HEADERS_ONCE([netinet/in.h])
+
+ AC_MSG_CHECKING([for IPv4 sockets])
+ AC_CACHE_VAL([gl_cv_socket_ipv4],
+ [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_WINSOCK2_H
+#include <winsock2.h>
+#endif]],
+[[int x = AF_INET; struct in_addr y; struct sockaddr_in z;
+ if (&x && &y && &z) return 0;]])],
+ gl_cv_socket_ipv4=yes, gl_cv_socket_ipv4=no)])
+ AC_MSG_RESULT([$gl_cv_socket_ipv4])
+ if test $gl_cv_socket_ipv4 = yes; then
+ AC_DEFINE([HAVE_IPV4], [1], [Define to 1 if <sys/socket.h> defines AF_INET.])
+ fi
+
+ AC_MSG_CHECKING([for IPv6 sockets])
+ AC_CACHE_VAL([gl_cv_socket_ipv6],
+ [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_WINSOCK2_H
+#include <winsock2.h>
+#endif
+#ifdef HAVE_WS2TCPIP_H
+#include <ws2tcpip.h>
+#endif]],
+[[int x = AF_INET6; struct in6_addr y; struct sockaddr_in6 z;
+ if (&x && &y && &z) return 0;]])],
+ gl_cv_socket_ipv6=yes, gl_cv_socket_ipv6=no)])
+ AC_MSG_RESULT([$gl_cv_socket_ipv6])
+ if test $gl_cv_socket_ipv6 = yes; then
+ AC_DEFINE([HAVE_IPV6], [1], [Define to 1 if <sys/socket.h> defines AF_INET6.])
+ fi
+])
+
+AC_DEFUN([gl_SOCKET_FAMILY_UNIX],
+[
+ AC_REQUIRE([gl_HEADER_SYS_SOCKET])
+ AC_CHECK_HEADERS_ONCE([sys/un.h])
+
+ AC_MSG_CHECKING([for UNIX domain sockets])
+ AC_CACHE_VAL([gl_cv_socket_unix],
+ [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+#ifdef HAVE_WINSOCK2_H
+#include <winsock2.h>
+#endif]],
+[[int x = AF_UNIX; struct sockaddr_un y;
+ if (&x && &y) return 0;]])],
+ gl_cv_socket_unix=yes, gl_cv_socket_unix=no)])
+ AC_MSG_RESULT([$gl_cv_socket_unix])
+ if test $gl_cv_socket_unix = yes; then
+ AC_DEFINE([HAVE_UNIXSOCKET], [1], [Define to 1 if <sys/socket.h> defines AF_UNIX.])
+ fi
+])
# ssize_t.m4 serial 5 (gettext-0.18.2)
-dnl Copyright (C) 2001-2003, 2006, 2010-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2001-2003, 2006, 2010-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# Checks for stat-related time functions.
-# Copyright (C) 1998-1999, 2001, 2003, 2005-2007, 2009-2013 Free Software
+# Copyright (C) 1998-1999, 2001, 2003, 2005-2007, 2009-2016 Free Software
# Foundation, Inc.
# This file is free software; the Free Software Foundation
# serial 11
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
--- /dev/null
+# Check for stdalign.h that conforms to C11.
+
+dnl Copyright 2011-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+# Prepare for substituting <stdalign.h> if it is not supported.
+
+AC_DEFUN([gl_STDALIGN_H],
+[
+ AC_CACHE_CHECK([for working stdalign.h],
+ [gl_cv_header_working_stdalign_h],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <stdalign.h>
+ #include <stddef.h>
+
+ /* Test that alignof yields a result consistent with offsetof.
+ This catches GCC bug 52023
+ <http://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__) \
+ || __HP_cc || __HP_aCC || __IBMC__ || __IBMCPP__ \
+ || __ICC || 0x5110 <= __SUNPRO_C \
+ || 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
+ ]])],
+ [gl_cv_header_working_stdalign_h=yes],
+ [gl_cv_header_working_stdalign_h=no])])
+
+ if test $gl_cv_header_working_stdalign_h = yes; then
+ STDALIGN_H=''
+ else
+ STDALIGN_H='stdalign.h'
+ fi
+
+ AC_SUBST([STDALIGN_H])
+ AM_CONDITIONAL([GL_GENERATE_STDALIGN_H], [test -n "$STDALIGN_H"])
+])
# stdarg.m4 serial 6
-dnl Copyright (C) 2006, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2006, 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 stdbool.h that conforms to C99.
-dnl Copyright (C) 2002-2006, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2006, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 5
+#serial 6
# Prepare for substituting <stdbool.h> if it is not supported.
[AC_LANG_PROGRAM(
[[
#include <stdbool.h>
- #ifndef bool
- "error: bool is not defined"
- #endif
- #ifndef false
- "error: false is not defined"
- #endif
- #if false
- "error: false is not 0"
- #endif
- #ifndef true
- "error: true is not defined"
- #endif
- #if true != 1
- "error: true is not 1"
+
+ #if __cplusplus < 201103
+ #ifndef bool
+ "error: bool is not defined"
+ #endif
+ #ifndef false
+ "error: false is not defined"
+ #endif
+ #if false
+ "error: false is not 0"
+ #endif
+ #ifndef true
+ "error: true is not defined"
+ #endif
+ #if true != 1
+ "error: true is not 1"
+ #endif
#endif
+
#ifndef __bool_true_false_are_defined
"error: __bool_true_false_are_defined is not defined"
#endif
-dnl A placeholder for POSIX 2008 <stddef.h>, for platforms that have issues.
-# stddef_h.m4 serial 4
-dnl Copyright (C) 2009-2013 Free Software Foundation, Inc.
+dnl A placeholder for <stddef.h>, for platforms that have issues.
+# stddef_h.m4 serial 5
+dnl Copyright (C) 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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_REQUIRE([gl_STDDEF_H_DEFAULTS])
AC_REQUIRE([gt_TYPE_WCHAR_T])
STDDEF_H=
+ AC_CHECK_TYPE([max_align_t], [], [HAVE_MAX_ALIGN_T=0; STDDEF_H=stddef.h],
+ [[#include <stddef.h>
+ ]])
if test $gt_cv_c_wchar_t = no; then
HAVE_WCHAR_T=0
STDDEF_H=stddef.h
[
dnl Assume proper GNU behavior unless another module says otherwise.
REPLACE_NULL=0; AC_SUBST([REPLACE_NULL])
+ HAVE_MAX_ALIGN_T=1; AC_SUBST([HAVE_MAX_ALIGN_T])
HAVE_WCHAR_T=1; AC_SUBST([HAVE_WCHAR_T])
])
-# stdint.m4 serial 43
-dnl Copyright (C) 2001-2013 Free Software Foundation, Inc.
+# stdint.m4 serial 44
+dnl Copyright (C) 2001-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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_COMPILE_IFELSE([
AC_LANG_PROGRAM([[
#define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 /* work if build isn't clean */
+#define __STDC_CONSTANT_MACROS 1
+#define __STDC_LIMIT_MACROS 1
#include <stdint.h>
/* Dragonfly defines WCHAR_MIN, WCHAR_MAX only in <wchar.h>. */
#if !(defined WCHAR_MIN && defined WCHAR_MAX)
AC_RUN_IFELSE([
AC_LANG_PROGRAM([[
#define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 /* work if build isn't clean */
+#define __STDC_CONSTANT_MACROS 1
+#define __STDC_LIMIT_MACROS 1
#include <stdint.h>
]
gl_STDINT_INCLUDES
])
fi
if test "$gl_cv_header_working_stdint_h" = yes; then
+ 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
+ AC_COMPILE_IFELSE([
+ AC_LANG_PROGRAM([[
+#define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 /* work if build isn't clean */
+#include <stdint.h>
+]
+gl_STDINT_INCLUDES
+[
+intmax_t im = INTMAX_MAX;
+int32_t i32 = INT32_C (0x7fffffff);
+ ]])],
+ [gl_cv_header_stdint_predates_cxx11_h=no])])
+
+ if test "$gl_cv_header_stdint_predates_cxx11_h" = yes; then
+ AC_DEFINE([__STDC_CONSTANT_MACROS], [1],
+ [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.])
+ fi
STDINT_H=
else
dnl Check for <sys/inttypes.h>, and for
# stdint_h.m4 serial 9
-dnl Copyright (C) 1997-2004, 2006, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 1997-2004, 2006, 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
-# stdio_h.m4 serial 43
-dnl Copyright (C) 2007-2013 Free Software Foundation, Inc.
+# stdio_h.m4 serial 46
+dnl Copyright (C) 2007-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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_STDIO_H],
[
+ dnl For __USE_MINGW_ANSI_STDIO
+ AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
+
AC_REQUIRE([gl_STDIO_H_DEFAULTS])
gl_NEXT_HEADERS([stdio.h])
+ dnl Determine whether __USE_MINGW_ANSI_STDIO makes printf and
+ dnl inttypes.h behave like gnu instead of system; we must give our
+ dnl printf wrapper the right attribute to match.
+ AC_CACHE_CHECK([which flavor of printf attribute matches inttypes macros],
+ [gl_cv_func_printf_attribute_flavor],
+ [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+ #define __STDC_FORMAT_MACROS 1
+ #include <stdio.h>
+ #include <inttypes.h>
+ /* For non-mingw systems, compilation will trivially succeed.
+ For mingw, compilation will succeed for older mingw (system
+ printf, "I64d") and fail for newer mingw (gnu printf, "lld"). */
+ #if ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__) && \
+ (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4))
+ extern char PRIdMAX_probe[sizeof PRIdMAX == sizeof "I64d" ? 1 : -1];
+ #endif
+ ]])], [gl_cv_func_printf_attribute_flavor=system],
+ [gl_cv_func_printf_attribute_flavor=gnu])])
+ if test "$gl_cv_func_printf_attribute_flavor" = gnu; then
+ AC_DEFINE([GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU], [1],
+ [Define to 1 if printf and friends should be labeled with
+ attribute "__gnu_printf__" instead of "__printf__"])
+ fi
+
dnl No need to create extra modules for these functions. Everyone who uses
dnl <stdio.h> likely needs them.
GNULIB_FSCANF=1
# stdlib_h.m4 serial 42
-dnl Copyright (C) 2007-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2007-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
GNULIB_PTSNAME=0; AC_SUBST([GNULIB_PTSNAME])
GNULIB_PTSNAME_R=0; AC_SUBST([GNULIB_PTSNAME_R])
GNULIB_PUTENV=0; AC_SUBST([GNULIB_PUTENV])
+ GNULIB_QSORT_R=0; AC_SUBST([GNULIB_QSORT_R])
GNULIB_RANDOM=0; AC_SUBST([GNULIB_RANDOM])
GNULIB_RANDOM_R=0; AC_SUBST([GNULIB_RANDOM_R])
GNULIB_REALLOC_POSIX=0; AC_SUBST([GNULIB_REALLOC_POSIX])
REPLACE_PTSNAME=0; AC_SUBST([REPLACE_PTSNAME])
REPLACE_PTSNAME_R=0; AC_SUBST([REPLACE_PTSNAME_R])
REPLACE_PUTENV=0; AC_SUBST([REPLACE_PUTENV])
+ REPLACE_QSORT_R=0; AC_SUBST([REPLACE_QSORT_R])
REPLACE_RANDOM_R=0; AC_SUBST([REPLACE_RANDOM_R])
REPLACE_REALLOC=0; AC_SUBST([REPLACE_REALLOC])
REPLACE_REALPATH=0; AC_SUBST([REPLACE_REALPATH])
# strcase.m4 serial 11
-dnl Copyright (C) 2002, 2005-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002, 2005-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# strerror.m4 serial 17
-dnl Copyright (C) 2002, 2007-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002, 2007-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
--- /dev/null
+# strerror_r.m4 serial 15
+dnl Copyright (C) 2002, 2007-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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_STRERROR_R],
+[
+ AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
+ AC_REQUIRE([gl_FUNC_STRERROR_R_WORKS])
+
+ dnl Persuade Solaris <string.h> to declare strerror_r().
+ AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
+
+ dnl Some systems don't declare strerror_r() if _THREAD_SAFE and _REENTRANT
+ dnl are not defined.
+ AC_CHECK_DECLS_ONCE([strerror_r])
+ if test $ac_cv_have_decl_strerror_r = no; then
+ HAVE_DECL_STRERROR_R=0
+ fi
+
+ if test $ac_cv_func_strerror_r = yes; then
+ if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then
+ if test $gl_cv_func_strerror_r_posix_signature = yes; then
+ case "$gl_cv_func_strerror_r_works" in
+ dnl The system's strerror_r has bugs. Replace it.
+ *no) REPLACE_STRERROR_R=1 ;;
+ esac
+ else
+ dnl The system's strerror_r() has a wrong signature. Replace it.
+ REPLACE_STRERROR_R=1
+ fi
+ else
+ dnl The system's strerror_r() cannot know about the new errno values we
+ dnl add to <errno.h>, or any fix for strerror(0). Replace it.
+ REPLACE_STRERROR_R=1
+ fi
+ fi
+])
+
+# Prerequisites of lib/strerror_r.c.
+AC_DEFUN([gl_PREREQ_STRERROR_R], [
+ dnl glibc >= 2.3.4 and cygwin 1.7.9 have a function __xpg_strerror_r.
+ AC_CHECK_FUNCS_ONCE([__xpg_strerror_r])
+ AC_CHECK_FUNCS_ONCE([catgets])
+ AC_CHECK_FUNCS_ONCE([snprintf])
+])
+
+# Detect if strerror_r works, but without affecting whether a replacement
+# strerror_r will be used.
+AC_DEFUN([gl_FUNC_STRERROR_R_WORKS],
+[
+ AC_REQUIRE([gl_HEADER_ERRNO_H])
+ AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
+ AC_REQUIRE([gl_FUNC_STRERROR_0])
+
+ AC_CHECK_FUNCS_ONCE([strerror_r])
+ if test $ac_cv_func_strerror_r = yes; then
+ if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then
+ dnl The POSIX prototype is: int strerror_r (int, char *, size_t);
+ dnl glibc, Cygwin: char *strerror_r (int, char *, size_t);
+ dnl AIX 5.1, OSF/1 5.1: int strerror_r (int, char *, int);
+ AC_CACHE_CHECK([for strerror_r with POSIX signature],
+ [gl_cv_func_strerror_r_posix_signature],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <string.h>
+ int strerror_r (int, char *, size_t);
+ ]],
+ [])],
+ [gl_cv_func_strerror_r_posix_signature=yes],
+ [gl_cv_func_strerror_r_posix_signature=no])
+ ])
+ if test $gl_cv_func_strerror_r_posix_signature = yes; then
+ dnl AIX 6.1 strerror_r fails by returning -1, not an error number.
+ dnl HP-UX 11.31 strerror_r always fails when the buffer length argument
+ dnl is less than 80.
+ dnl FreeBSD 8.s strerror_r claims failure on 0
+ dnl Mac OS X 10.5 strerror_r treats 0 like -1
+ dnl Solaris 10 strerror_r corrupts errno on failure
+ AC_CACHE_CHECK([whether strerror_r works],
+ [gl_cv_func_strerror_r_works],
+ [AC_RUN_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <errno.h>
+ #include <string.h>
+ ]],
+ [[int result = 0;
+ char buf[79];
+ if (strerror_r (EACCES, buf, 0) < 0)
+ result |= 1;
+ errno = 0;
+ if (strerror_r (EACCES, buf, sizeof buf) != 0)
+ result |= 2;
+ strcpy (buf, "Unknown");
+ if (strerror_r (0, buf, sizeof buf) != 0)
+ result |= 4;
+ if (errno)
+ result |= 8;
+ if (strstr (buf, "nknown") || strstr (buf, "ndefined"))
+ result |= 0x10;
+ errno = 0;
+ *buf = 0;
+ if (strerror_r (-3, buf, sizeof buf) < 0)
+ result |= 0x20;
+ if (errno)
+ result |= 0x40;
+ if (!*buf)
+ result |= 0x80;
+ return result;
+ ]])],
+ [gl_cv_func_strerror_r_works=yes],
+ [gl_cv_func_strerror_r_works=no],
+ [
+changequote(,)dnl
+ case "$host_os" in
+ # Guess no on AIX.
+ aix*) gl_cv_func_strerror_r_works="guessing no";;
+ # Guess no on HP-UX.
+ hpux*) gl_cv_func_strerror_r_works="guessing no";;
+ # Guess no on BSD variants.
+ *bsd*) gl_cv_func_strerror_r_works="guessing no";;
+ # Guess yes otherwise.
+ *) gl_cv_func_strerror_r_works="guessing yes";;
+ esac
+changequote([,])dnl
+ ])
+ ])
+ else
+ dnl The system's strerror() has a wrong signature.
+ dnl glibc >= 2.3.4 and cygwin 1.7.9 have a function __xpg_strerror_r.
+ AC_CHECK_FUNCS_ONCE([__xpg_strerror_r])
+ dnl In glibc < 2.14, __xpg_strerror_r does not populate buf on failure.
+ dnl In cygwin < 1.7.10, __xpg_strerror_r clobbers strerror's buffer.
+ if test $ac_cv_func___xpg_strerror_r = yes; then
+ AC_CACHE_CHECK([whether __xpg_strerror_r works],
+ [gl_cv_func_strerror_r_works],
+ [AC_RUN_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <errno.h>
+ #include <string.h>
+ extern
+ #ifdef __cplusplus
+ "C"
+ #endif
+ int __xpg_strerror_r(int, char *, size_t);
+ ]],
+ [[int result = 0;
+ char buf[256] = "^";
+ char copy[256];
+ char *str = strerror (-1);
+ strcpy (copy, str);
+ if (__xpg_strerror_r (-2, buf, 1) == 0)
+ result |= 1;
+ if (*buf)
+ result |= 2;
+ __xpg_strerror_r (-2, buf, 256);
+ if (strcmp (str, copy))
+ result |= 4;
+ return result;
+ ]])],
+ [gl_cv_func_strerror_r_works=yes],
+ [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"
+ ])
+ ])
+ fi
+ fi
+ fi
+ fi
+])
# serial 33
-# Copyright (C) 1996-1997, 1999-2007, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 1996-1997, 1999-2007, 2009-2016 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Configure a GNU-like replacement for <string.h>.
-# Copyright (C) 2007-2013 Free Software Foundation, Inc.
+# Copyright (C) 2007-2016 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.
# Configure a replacement for <strings.h>.
# serial 6
-# Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2009-2016 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.
-# strndup.m4 serial 21
-dnl Copyright (C) 2002-2003, 2005-2013 Free Software Foundation, Inc.
+# strndup.m4 serial 22
+dnl Copyright (C) 2002-2003, 2005-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
#endif
char *strndup (const char *, size_t);
#endif
+ int result;
char *s;
s = strndup ("some longer string", 15);
free (s);
s = strndup ("shorter string", 13);
- return s[13] != '\0';]])],
+ result = s[13] != '\0';
+ free (s);
+ return result;]])],
[gl_cv_func_strndup_works=yes],
[gl_cv_func_strndup_works=no],
[
# strnlen.m4 serial 13
-dnl Copyright (C) 2002-2003, 2005-2007, 2009-2013 Free Software Foundation,
+dnl Copyright (C) 2002-2003, 2005-2007, 2009-2016 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,
# strptime.m4 serial 7
-dnl Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2007, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# strtoull.m4 serial 7
-dnl Copyright (C) 2002, 2004, 2006, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002, 2004, 2006, 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
-# strtoumax.m4 serial 11
-dnl Copyright (C) 2002-2004, 2006, 2009-2013 Free Software Foundation, Inc.
+# strtoumax.m4 serial 12
+dnl Copyright (C) 2002-2004, 2006, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 On OSF/1 5.1 with cc, this function is declared but not defined.
AC_CHECK_FUNCS_ONCE([strtoumax])
AC_CHECK_DECLS_ONCE([strtoumax])
- if test "$ac_cv_have_decl_strtoumax" != yes; then
+ if test "$ac_cv_have_decl_strtoumax" = yes; then
+ if test "$ac_cv_func_strtoumax" != yes; then
+ # HP-UX 11.11 has "#define strtoimax(...) ..." but no function.
+ REPLACE_STRTOUMAX=1
+ fi
+ else
HAVE_DECL_STRTOUMAX=0
fi
])
# serial 6
# See if we need to provide symlink replacement.
-dnl Copyright (C) 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
--- /dev/null
+# sys_ioctl_h.m4 serial 10
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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 Bruno Haible.
+
+AC_DEFUN([gl_SYS_IOCTL_H],
+[
+ dnl Use AC_REQUIRE here, so that the default behavior below is expanded
+ dnl once only, before all statements that occur in other macros.
+ AC_REQUIRE([gl_SYS_IOCTL_H_DEFAULTS])
+
+ AC_CHECK_HEADERS_ONCE([sys/ioctl.h])
+ if test $ac_cv_header_sys_ioctl_h = yes; then
+ HAVE_SYS_IOCTL_H=1
+ dnl Test whether <sys/ioctl.h> declares ioctl(), or whether some other
+ dnl header file, such as <unistd.h> or <stropts.h>, is needed for that.
+ AC_CACHE_CHECK([whether <sys/ioctl.h> declares ioctl],
+ [gl_cv_decl_ioctl_in_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;])],
+ [gl_cv_decl_ioctl_in_sys_ioctl_h=yes],
+ [gl_cv_decl_ioctl_in_sys_ioctl_h=no])
+ ])
+ else
+ HAVE_SYS_IOCTL_H=0
+ fi
+ AC_SUBST([HAVE_SYS_IOCTL_H])
+ dnl <sys/ioctl.h> is always overridden, because of GNULIB_POSIXCHECK.
+ gl_CHECK_NEXT_HEADERS([sys/ioctl.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/ioctl.h>
+/* Some platforms declare ioctl in the wrong header. */
+#if !(defined __GLIBC__ && !defined __UCLIBC__)
+# include <unistd.h>
+#endif
+ ]], [ioctl])
+])
+
+AC_DEFUN([gl_SYS_IOCTL_MODULE_INDICATOR],
+[
+ dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+ AC_REQUIRE([gl_SYS_IOCTL_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_IOCTL_H_DEFAULTS],
+[
+ GNULIB_IOCTL=0; AC_SUBST([GNULIB_IOCTL])
+ dnl Assume proper GNU behavior unless another module says otherwise.
+ SYS_IOCTL_H_HAVE_WINSOCK2_H=0; AC_SUBST([SYS_IOCTL_H_HAVE_WINSOCK2_H])
+ SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=0;
+ AC_SUBST([SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS])
+ REPLACE_IOCTL=0; AC_SUBST([REPLACE_IOCTL])
+])
--- /dev/null
+# sys_select_h.m4 serial 20
+dnl Copyright (C) 2006-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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_SELECT],
+[
+ AC_REQUIRE([AC_C_RESTRICT])
+ AC_REQUIRE([gl_SYS_SELECT_H_DEFAULTS])
+ AC_CACHE_CHECK([whether <sys/select.h> is self-contained],
+ [gl_cv_header_sys_select_h_selfcontained],
+ [
+ dnl Test against two bugs:
+ dnl 1. On many platforms, <sys/select.h> assumes prior inclusion of
+ dnl <sys/types.h>.
+ dnl 2. On OSF/1 4.0, <sys/select.h> provides only a forward declaration
+ dnl of 'struct timeval', and no definition of this type.
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/select.h>]],
+ [[struct timeval b;]])],
+ [gl_cv_header_sys_select_h_selfcontained=yes],
+ [gl_cv_header_sys_select_h_selfcontained=no])
+ dnl Test against another bug:
+ dnl 3. On Solaris 10, <sys/select.h> provides an FD_ZERO implementation
+ dnl that relies on memset(), but without including <string.h>.
+ if test $gl_cv_header_sys_select_h_selfcontained = yes; then
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[#include <sys/select.h>]],
+ [[int memset; int bzero;]])
+ ],
+ [AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[#include <sys/select.h>]], [[
+ #undef memset
+ #define memset nonexistent_memset
+ extern
+ #ifdef __cplusplus
+ "C"
+ #endif
+ void *memset (void *, int, unsigned long);
+ #undef bzero
+ #define bzero nonexistent_bzero
+ extern
+ #ifdef __cplusplus
+ "C"
+ #endif
+ void bzero (void *, unsigned long);
+ fd_set fds;
+ FD_ZERO (&fds);
+ ]])
+ ],
+ [],
+ [gl_cv_header_sys_select_h_selfcontained=no])
+ ])
+ fi
+ ])
+ dnl <sys/select.h> is always overridden, because of GNULIB_POSIXCHECK.
+ gl_CHECK_NEXT_HEADERS([sys/select.h])
+ if test $ac_cv_header_sys_select_h = yes; then
+ HAVE_SYS_SELECT_H=1
+ else
+ HAVE_SYS_SELECT_H=0
+ fi
+ AC_SUBST([HAVE_SYS_SELECT_H])
+ gl_PREREQ_SYS_H_WINSOCK2
+
+ 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([[
+/* Some systems require prerequisite headers. */
+#include <sys/types.h>
+#if !(defined __GLIBC__ && !defined __UCLIBC__) && HAVE_SYS_TIME_H
+# include <sys/time.h>
+#endif
+#include <sys/select.h>
+ ]], [pselect select])
+])
+
+AC_DEFUN([gl_SYS_SELECT_MODULE_INDICATOR],
+[
+ dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+ AC_REQUIRE([gl_SYS_SELECT_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_SELECT_H_DEFAULTS],
+[
+ GNULIB_PSELECT=0; AC_SUBST([GNULIB_PSELECT])
+ GNULIB_SELECT=0; AC_SUBST([GNULIB_SELECT])
+ dnl Assume proper GNU behavior unless another module says otherwise.
+ HAVE_PSELECT=1; AC_SUBST([HAVE_PSELECT])
+ REPLACE_PSELECT=0; AC_SUBST([REPLACE_PSELECT])
+ REPLACE_SELECT=0; AC_SUBST([REPLACE_SELECT])
+])
# sys_socket_h.m4 serial 23
-dnl Copyright (C) 2005-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2005-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# sys_stat_h.m4 serial 28 -*- Autoconf -*-
-dnl Copyright (C) 2006-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2006-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# Configure a replacement for <sys/time.h>.
# serial 8
-# Copyright (C) 2007, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2009-2016 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.
HAVE_GETTIMEOFDAY=1; AC_SUBST([HAVE_GETTIMEOFDAY])
HAVE_STRUCT_TIMEVAL=1; AC_SUBST([HAVE_STRUCT_TIMEVAL])
HAVE_SYS_TIME_H=1; AC_SUBST([HAVE_SYS_TIME_H])
+ HAVE_TIMEZONE_T=0; AC_SUBST([HAVE_TIMEZONE_T])
REPLACE_GETTIMEOFDAY=0; AC_SUBST([REPLACE_GETTIMEOFDAY])
REPLACE_STRUCT_TIMEVAL=0; AC_SUBST([REPLACE_STRUCT_TIMEVAL])
])
# sys_types_h.m4 serial 5
-dnl Copyright (C) 2011-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
--- /dev/null
+# sys_uio_h.m4 serial 1
+dnl Copyright (C) 2011-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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_UIO],
+[
+ AC_REQUIRE([gl_SYS_UIO_H_DEFAULTS])
+ dnl <sys/uio.h> is always overridden, because of GNULIB_POSIXCHECK.
+ gl_CHECK_NEXT_HEADERS([sys/uio.h])
+ if test $ac_cv_header_sys_uio_h = yes; then
+ HAVE_SYS_UIO_H=1
+ else
+ HAVE_SYS_UIO_H=0
+ fi
+ AC_SUBST([HAVE_SYS_UIO_H])
+])
+
+AC_DEFUN([gl_SYS_UIO_MODULE_INDICATOR],
+[
+ dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+ AC_REQUIRE([gl_SYS_UIO_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_UIO_H_DEFAULTS],
+[
+])
# sys_wait_h.m4 serial 6
-dnl Copyright (C) 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 5
-# Copyright (C) 2006-2007, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2006-2007, 2009-2016 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.
# Configure a more-standard replacement for <time.h>.
-# Copyright (C) 2000-2001, 2003-2007, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2000-2001, 2003-2007, 2009-2016 Free Software Foundation, Inc.
-# serial 7
+# serial 9
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
])
dnl Check whether 'struct timespec' is declared
-dnl in time.h, sys/time.h, or pthread.h.
+dnl in time.h, sys/time.h, pthread.h, or unistd.h.
AC_DEFUN([gl_CHECK_TYPE_STRUCT_TIMESPEC],
[
TIME_H_DEFINES_STRUCT_TIMESPEC=0
SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=0
PTHREAD_H_DEFINES_STRUCT_TIMESPEC=0
+ UNISTD_H_DEFINES_STRUCT_TIMESPEC=0
if test $gl_cv_sys_struct_timespec_in_time_h = yes; then
TIME_H_DEFINES_STRUCT_TIMESPEC=1
else
[gl_cv_sys_struct_timespec_in_pthread_h=no])])
if test $gl_cv_sys_struct_timespec_in_pthread_h = yes; then
PTHREAD_H_DEFINES_STRUCT_TIMESPEC=1
+ else
+ AC_CACHE_CHECK([for struct timespec in <unistd.h>],
+ [gl_cv_sys_struct_timespec_in_unistd_h],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <unistd.h>
+ ]],
+ [[static struct timespec x; x.tv_sec = x.tv_nsec;]])],
+ [gl_cv_sys_struct_timespec_in_unistd_h=yes],
+ [gl_cv_sys_struct_timespec_in_unistd_h=no])])
+ if test $gl_cv_sys_struct_timespec_in_unistd_h = yes; then
+ UNISTD_H_DEFINES_STRUCT_TIMESPEC=1
+ fi
fi
fi
fi
AC_SUBST([TIME_H_DEFINES_STRUCT_TIMESPEC])
AC_SUBST([SYS_TIME_H_DEFINES_STRUCT_TIMESPEC])
AC_SUBST([PTHREAD_H_DEFINES_STRUCT_TIMESPEC])
+ AC_SUBST([UNISTD_H_DEFINES_STRUCT_TIMESPEC])
])
AC_DEFUN([gl_TIME_MODULE_INDICATOR],
GNULIB_STRPTIME=0; AC_SUBST([GNULIB_STRPTIME])
GNULIB_TIMEGM=0; AC_SUBST([GNULIB_TIMEGM])
GNULIB_TIME_R=0; AC_SUBST([GNULIB_TIME_R])
+ GNULIB_TIME_RZ=0; AC_SUBST([GNULIB_TIME_RZ])
dnl Assume proper GNU behavior unless another module says otherwise.
HAVE_DECL_LOCALTIME_R=1; AC_SUBST([HAVE_DECL_LOCALTIME_R])
HAVE_NANOSLEEP=1; AC_SUBST([HAVE_NANOSLEEP])
REPLACE_MKTIME=GNULIB_PORTCHECK; AC_SUBST([REPLACE_MKTIME])
REPLACE_NANOSLEEP=GNULIB_PORTCHECK; AC_SUBST([REPLACE_NANOSLEEP])
REPLACE_TIMEGM=GNULIB_PORTCHECK; AC_SUBST([REPLACE_TIMEGM])
+
+ dnl Hack so that the time module doesn't depend on the sys_time module.
+ dnl First, default GNULIB_GETTIMEOFDAY to 0 if sys_time is absent.
+ : ${GNULIB_GETTIMEOFDAY=0}; AC_SUBST([GNULIB_GETTIMEOFDAY])
+ dnl Second, it's OK to not use GNULIB_PORTCHECK for REPLACE_GMTIME
+ dnl and REPLACE_LOCALTIME, as portability to Solaris 2.6 and earlier
+ dnl is no longer a big deal.
+ REPLACE_GMTIME=0; AC_SUBST([REPLACE_GMTIME])
+ REPLACE_LOCALTIME=0; AC_SUBST([REPLACE_LOCALTIME])
])
dnl Reentrant time functions: localtime_r, gmtime_r.
-dnl Copyright (C) 2003, 2006-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2003, 2006-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
--- /dev/null
+dnl Time zone functions: tzalloc, localtime_rz, etc.
+
+dnl Copyright (C) 2015-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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_TIME_RZ],
+[
+ AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
+ AC_REQUIRE([gl_HEADER_SYS_TIME_H_DEFAULTS])
+ AC_REQUIRE([AC_STRUCT_TIMEZONE])
+ AC_CHECK_FUNCS_ONCE([tzset])
+
+ AC_CHECK_TYPES([timezone_t], [], [], [[#include <time.h>]])
+ if test "$ac_cv_type_timezone_t" = yes; then
+ HAVE_TIMEZONE_T=1
+ fi
+])
--- /dev/null
+# timegm.m4 serial 11
+dnl Copyright (C) 2003, 2007, 2009-2016 Free Software Foundation, Inc.
+dnl This file is free software; the Free 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_TIMEGM],
+[
+ AC_REQUIRE([gl_HEADER_TIME_H_DEFAULTS])
+ AC_REQUIRE([gl_FUNC_MKTIME])
+ REPLACE_TIMEGM=0
+ AC_CHECK_FUNCS_ONCE([timegm])
+ if test $ac_cv_func_timegm = yes; then
+ if test $gl_cv_func_working_mktime = no; then
+ # Assume that timegm is buggy if mktime is.
+ REPLACE_TIMEGM=1
+ fi
+ else
+ HAVE_TIMEGM=0
+ fi
+])
+
+# Prerequisites of lib/timegm.c.
+AC_DEFUN([gl_PREREQ_TIMEGM], [
+ :
+])
#serial 15
-# Copyright (C) 2000-2001, 2003-2007, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2000-2001, 2003-2007, 2009-2016 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# tm_gmtoff.m4 serial 3
-dnl Copyright (C) 2002, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
-# unistd_h.m4 serial 66
-dnl Copyright (C) 2006-2013 Free Software Foundation, Inc.
+# unistd_h.m4 serial 68
+dnl Copyright (C) 2006-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
REPLACE_FTRUNCATE=0; AC_SUBST([REPLACE_FTRUNCATE])
REPLACE_GETCWD=0; AC_SUBST([REPLACE_GETCWD])
REPLACE_GETDOMAINNAME=0; AC_SUBST([REPLACE_GETDOMAINNAME])
+ REPLACE_GETDTABLESIZE=0; AC_SUBST([REPLACE_GETDTABLESIZE])
REPLACE_GETLOGIN_R=0; AC_SUBST([REPLACE_GETLOGIN_R])
REPLACE_GETGROUPS=0; AC_SUBST([REPLACE_GETGROUPS])
REPLACE_GETPAGESIZE=0; AC_SUBST([REPLACE_GETPAGESIZE])
REPLACE_PWRITE=0; AC_SUBST([REPLACE_PWRITE])
REPLACE_READ=0; AC_SUBST([REPLACE_READ])
REPLACE_READLINK=0; AC_SUBST([REPLACE_READLINK])
+ REPLACE_READLINKAT=0; AC_SUBST([REPLACE_READLINKAT])
REPLACE_RMDIR=0; AC_SUBST([REPLACE_RMDIR])
REPLACE_SLEEP=0; AC_SUBST([REPLACE_SLEEP])
REPLACE_SYMLINK=0; AC_SUBST([REPLACE_SYMLINK])
+ REPLACE_SYMLINKAT=0; AC_SUBST([REPLACE_SYMLINKAT])
REPLACE_TTYNAME_R=0; AC_SUBST([REPLACE_TTYNAME_R])
REPLACE_UNLINK=0; AC_SUBST([REPLACE_UNLINK])
REPLACE_UNLINKAT=0; AC_SUBST([REPLACE_UNLINKAT])
# unlocked-io.m4 serial 15
-# Copyright (C) 1998-2006, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 1998-2006, 2009-2016 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
+++ /dev/null
-# usleep.m4 serial 3
-dnl Copyright (C) 2009-2013 Free Software Foundation, Inc.
-dnl This file is free software; the Free 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 macro intentionally does not check for select or nanosleep;
-dnl both of those modules can require external libraries.
-AC_DEFUN([gl_FUNC_USLEEP],
-[
- AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
- dnl usleep was required in POSIX 2001, but dropped as obsolete in
- dnl POSIX 2008; therefore, it is not always exposed in headers.
- AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
- AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
- AC_CHECK_FUNCS_ONCE([usleep])
- AC_CHECK_TYPE([useconds_t], [],
- [AC_DEFINE([useconds_t], [unsigned int], [Define to an unsigned 32-bit
- type if <sys/types.h> lacks this type.])])
- if test $ac_cv_func_usleep = no; then
- HAVE_USLEEP=0
- else
- dnl POSIX allows implementations to reject arguments larger than
- dnl 999999, but GNU guarantees it will work.
- AC_CACHE_CHECK([whether usleep allows large arguments],
- [gl_cv_func_usleep_works],
- [AC_RUN_IFELSE([AC_LANG_PROGRAM([[
-#include <unistd.h>
-]], [[return !!usleep (1000000);]])],
- [gl_cv_func_usleep_works=yes], [gl_cv_func_usleep_works=no],
- [case "$host_os" in
- # Guess yes on glibc systems.
- *-gnu*) gl_cv_func_usleep_works="guessing yes" ;;
- # If we don't know, assume the worst.
- *) gl_cv_func_usleep_works="guessing no" ;;
- esac
- ])])
- case "$gl_cv_func_usleep_works" in
- *yes) ;;
- *)
- REPLACE_USLEEP=1
- ;;
- esac
- fi
-])
# Check for variable-length arrays.
-# serial 4
+# serial 5
# From Paul Eggert
-# Copyright (C) 2001, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2009-2016 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.
+# This is a copy of AC_C_VARARRAYS from a recent development version
+# of Autoconf. It replaces Autoconf's version, or for pre-2.61 autoconf
+# it defines the macro that Autoconf lacks.
AC_DEFUN([AC_C_VARARRAYS],
[
AC_CACHE_CHECK([for variable-length arrays],
ac_cv_c_vararrays,
- [AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [],
- [[static int x; char a[++x]; a[sizeof a - 1] = 0; return a[0];]])],
- ac_cv_c_vararrays=yes,
- ac_cv_c_vararrays=no)])
- if test $ac_cv_c_vararrays = yes; then
- AC_DEFINE([HAVE_C_VARARRAYS], [1],
+ [AC_EGREP_CPP([defined],
+ [#ifdef __STDC_NO_VLA__
+ defined
+ #endif
+ ],
+ [ac_cv_c_vararrays='no: __STDC_NO_VLA__ is defined'],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[/* Test for VLA support. This test is partly inspired
+ from examples in the C standard. Use at least two VLA
+ functions to detect the GCC 3.4.3 bug described in:
+ http://lists.gnu.org/archive/html/bug-gnulib/2014-08/msg00014.html
+ */
+ #ifdef __STDC_NO_VLA__
+ syntax error;
+ #else
+ extern int n;
+ int B[100];
+ int fvla (int m, int C[m][m]);
+
+ int
+ simple (int count, int all[static count])
+ {
+ return all[count - 1];
+ }
+
+ int
+ fvla (int m, int C[m][m])
+ {
+ typedef int VLA[m][m];
+ VLA x;
+ int D[m];
+ static int (*q)[m] = &B;
+ int (*s)[n] = q;
+ return C && &x[0][0] == &D[0] && &D[0] == s[0];
+ }
+ #endif
+ ]])],
+ [ac_cv_c_vararrays=yes],
+ [ac_cv_c_vararrays=no])])])
+ if test "$ac_cv_c_vararrays" = yes; then
+ dnl This is for compatibility with Autoconf 2.61-2.69.
+ AC_DEFINE([HAVE_C_VARARRAYS], 1,
[Define to 1 if C supports variable-length arrays.])
+ elif test "$ac_cv_c_vararrays" = no; then
+ AC_DEFINE([__STDC_NO_VLA__], 1,
+ [Define to 1 if C does not support variable-length arrays, and
+ if the compiler does not already define this.])
fi
])
# vasnprintf.m4 serial 36
-dnl Copyright (C) 2002-2004, 2006-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2004, 2006-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# vasprintf.m4 serial 6
-dnl Copyright (C) 2002-2003, 2006-2007, 2009-2013 Free Software Foundation,
+dnl Copyright (C) 2002-2003, 2006-2007, 2009-2016 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,
# version-etc.m4 serial 1
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 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.
# warn-on-use.m4 serial 5
-dnl Copyright (C) 2010-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2010-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
-# warnings.m4 serial 7
-dnl Copyright (C) 2008-2013 Free Software Foundation, Inc.
+# warnings.m4 serial 11
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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_COMPILER_OPTION_IF],
[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],
+ [m4_pushdef([gl_Positive], m4_bpatsubst([$1], [^-Wno-], [-W]))],
+ [gl_positive="$1"
+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]), [
gl_save_compiler_FLAGS="$gl_Flags"
- gl_AS_VAR_APPEND(m4_defn([gl_Flags]), [" $1"])
- AC_COMPILE_IFELSE([m4_default([$4], [AC_LANG_PROGRAM([])])],
- [AS_VAR_SET(gl_Warn, [yes])],
- [AS_VAR_SET(gl_Warn, [no])])
+ 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])])
gl_Flags="$gl_save_compiler_FLAGS"
])
AS_VAR_IF(gl_Warn, [yes], [$2], [$3])
+m4_popdef([gl_Positive])dnl
AS_VAR_POPDEF([gl_Flags])dnl
AS_VAR_POPDEF([gl_Warn])dnl
])
+# gl_UNKNOWN_WARNINGS_ARE_ERRORS
+# ------------------------------
+# Clang doesn't complain about unknown warning options unless one also
+# specifies -Wunknown-warning-option -Werror. Detect this.
+AC_DEFUN([gl_UNKNOWN_WARNINGS_ARE_ERRORS],
+[gl_COMPILER_OPTION_IF([-Werror -Wunknown-warning-option],
+ [gl_unknown_warnings_are_errors='-Wunknown-warning-option -Werror'],
+ [gl_unknown_warnings_are_errors=])])
# gl_WARN_ADD(OPTION, [VARIABLE = WARN_CFLAGS],
# [PROGRAM = AC_LANG_PROGRAM()])
#
# If VARIABLE is a variable name, AC_SUBST it.
AC_DEFUN([gl_WARN_ADD],
-[gl_COMPILER_OPTION_IF([$1],
+[AC_REQUIRE([gl_UNKNOWN_WARNINGS_ARE_ERRORS])
+gl_COMPILER_OPTION_IF([$1],
[gl_AS_VAR_APPEND(m4_if([$2], [], [[WARN_CFLAGS]], [[$2]]), [" $1"])],
[],
[$3])
dnl A placeholder for ISO C99 <wchar.h>, for platforms that have issues.
-dnl Copyright (C) 2007-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2007-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# wchar_t.m4 serial 4 (gettext-0.18.2)
-dnl Copyright (C) 2002-2003, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2003, 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# wcrtomb.m4 serial 11
-dnl Copyright (C) 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# wctob.m4 serial 10
-dnl Copyright (C) 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# wctomb.m4 serial 2
-dnl Copyright (C) 2011-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2011-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 A placeholder for ISO C99 <wctype.h>, for platforms that lack it.
-dnl Copyright (C) 2006-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2006-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# wcwidth.m4 serial 23
-dnl Copyright (C) 2006-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2006-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 On Mac OS X 10.3, wcwidth(0x0301) (COMBINING ACUTE ACCENT) returns 1.
dnl On OpenBSD 5.0, wcwidth(0x05B0) (HEBREW POINT SHEVA) returns 1.
dnl On OSF/1 5.1, wcwidth(0x200B) (ZERO WIDTH SPACE) returns 1.
+ dnl On OpenBSD 5.8, wcwidth(0xFF1A) (FULLWIDTH COLON) returns 0.
dnl This leads to bugs in 'ls' (coreutils).
AC_CACHE_CHECK([whether wcwidth works reasonably in UTF-8 locales],
[gl_cv_func_wcwidth_works],
result |= 2;
if (wcwidth (0x200B) > 0)
result |= 4;
+ if (wcwidth (0xFF1A) == 0)
+ result |= 8;
}
return result;
}]])],
# wint_t.m4 serial 5 (gettext-0.18.2)
-dnl Copyright (C) 2003, 2007-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2003, 2007-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# xalloc.m4 serial 18
-dnl Copyright (C) 2002-2006, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2006, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# xsize.m4 serial 5
-dnl Copyright (C) 2003-2004, 2008-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2003-2004, 2008-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# xstrndup.m4 serial 2
-dnl Copyright (C) 2003, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2003, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free 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 11
-dnl Copyright (C) 2002-2007, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2002-2007, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# xvasprintf.m4 serial 2
-dnl Copyright (C) 2006, 2009-2013 Free Software Foundation, Inc.
+dnl Copyright (C) 2006, 2009-2016 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
# This Makefile fragment tries to be general-purpose enough to be
# used by many projects via the gnulib maintainer-makefile module.
-## Copyright (C) 2001-2013 Free Software Foundation, Inc.
+## Copyright (C) 2001-2016 Free Software Foundation, Inc.
##
## This program is free software: you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
# ME := $(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST))
ME := maint.mk
-# Diagnostic for continued use of deprecated variable.
-# Remove in 2013
-ifneq ($(build_aux),)
- $(error "$(ME): \
-set $$(_build-aux) relative to $$(srcdir) instead of $$(build_aux)")
-endif
-
# Helper variables.
_empty =
_sp = $(_empty) $(_empty)
ifeq ($(srcdir),.)
_prepend_srcdir_prefix =
else
- _prepend_srcdir_prefix = | sed 's|^|$(srcdir)/|'
+ _prepend_srcdir_prefix = | $(SED) 's|^|$(srcdir)/|'
endif
# In order to be able to consistently filter "."-relative names,
_sc_excl = \
$(or $(exclude_file_name_regexp--$@),^$$)
VC_LIST_EXCEPT = \
- $(VC_LIST) | sed 's|^$(_dot_escaped_srcdir)/||' \
+ $(VC_LIST) | $(SED) 's|^$(_dot_escaped_srcdir)/||' \
| if test -f $(srcdir)/.x-$@; then grep -vEf $(srcdir)/.x-$@; \
else grep -Ev -e "$${VC_LIST_EXCEPT_DEFAULT-ChangeLog}"; fi \
| grep -Ev -e '($(VC_LIST_ALWAYS_EXCLUDE_REGEX)|$(_sc_excl))' \
## Sanity checks. ##
## --------------- ##
+ifneq ($(_gl-Makefile),)
_cfg_mk := $(wildcard $(srcdir)/cfg.mk)
# Collect the names of rules starting with 'sc_'.
-syntax-check-rules := $(sort $(shell sed -n 's/^\(sc_[a-zA-Z0-9_-]*\):.*/\1/p' \
- $(srcdir)/$(ME) $(_cfg_mk)))
+syntax-check-rules := $(sort $(shell $(SED) -n \
+ 's/^\(sc_[a-zA-Z0-9_-]*\):.*/\1/p' $(srcdir)/$(ME) $(_cfg_mk)))
.PHONY: $(syntax-check-rules)
ifeq ($(shell $(VC_LIST) >/dev/null 2>&1; echo $$?),0)
$(filter-out $(local-checks-to-skip), $(local-checks-available)))
syntax-check: $(local-check)
+endif
# _sc_search_regexp
#
halt='the above files do not include <config.h>' \
$(_sc_search_regexp)
+# Print each file name for which the first #include does not match
+# $(config_h_header). Like grep -m 1, this only looks at the first match.
+perl_config_h_first_ = \
+ -e 'BEGIN {$$ret = 0}' \
+ -e 'if (/^\# *include\b/) {' \
+ -e ' if (not m{^\# *include $(config_h_header)}) {' \
+ -e ' print "$$ARGV\n";' \
+ -e ' $$ret = 1;' \
+ -e ' }' \
+ -e ' \# Move on to next file after first include' \
+ -e ' close ARGV;' \
+ -e '}' \
+ -e 'END {exit $$ret}'
+
# You must include <config.h> before including any other header file.
# This can possibly be via a package-specific header, if given by cfg.mk.
sc_require_config_h_first:
- @if $(VC_LIST_EXCEPT) | grep -l '\.c$$' > /dev/null; then \
- fail=0; \
- for i in $$($(VC_LIST_EXCEPT) | grep '\.c$$'); do \
- grep '^# *include\>' $$i | sed 1q \
- | grep -E '^# *include $(config_h_header)' > /dev/null \
- || { echo $$i; fail=1; }; \
- done; \
- test $$fail = 1 && \
+ @if $(VC_LIST_EXCEPT) | grep '\.c$$' > /dev/null; then \
+ files=$$($(VC_LIST_EXCEPT) | grep '\.c$$') && \
+ perl -n $(perl_config_h_first_) $$files || \
{ echo '$(ME): the above files include some other header' \
'before <config.h>' 1>&2; exit 1; } || :; \
else :; \
# re: a regular expression that matches IFF something provided by $h is used.
define _sc_header_without_use
dummy=; : so we do not need a semicolon before each use; \
- h_esc=`echo '[<"]'"$$h"'[">]'|sed 's/\./\\\\./g'`; \
- if $(VC_LIST_EXCEPT) | grep -l '\.c$$' > /dev/null; then \
+ h_esc=`echo '[<"]'"$$h"'[">]'|$(SED) 's/\./\\\\./g'`; \
+ if $(VC_LIST_EXCEPT) | grep '\.c$$' > /dev/null; then \
files=$$(grep -l '^# *include '"$$h_esc" \
$$($(VC_LIST_EXCEPT) | grep '\.c$$')) && \
grep -LE "$$re" $$files | grep . && \
sc_prohibit_openat_without_use:
@h='openat.h' \
- re='\<(openat_(permissive|needs_fchdir|(save|restore)_fail)|l?(stat|ch(own|mod))at|(euid)?accessat)\>' \
+ re='\<(openat_(permissive|needs_fchdir|(save|restore)_fail)|l?(stat|ch(own|mod))at|(euid)?accessat|(FCHMOD|FCHOWN|STAT)AT_INLINE)\>' \
$(_sc_header_without_use)
# Prohibit the inclusion of c-ctype.h without an actual use.
# Get the list of symbol names with this:
# perl -lne '/^# *define ([A-Z]\w+)\(/ and print $1' lib/intprops.h|fmt
_intprops_names = \
- TYPE_IS_INTEGER TYPE_TWOS_COMPLEMENT TYPE_ONES_COMPLEMENT \
- TYPE_SIGNED_MAGNITUDE TYPE_SIGNED TYPE_MINIMUM TYPE_MAXIMUM \
+ TYPE_IS_INTEGER TYPE_SIGNED TYPE_MINIMUM TYPE_MAXIMUM \
INT_BITS_STRLEN_BOUND INT_STRLEN_BOUND INT_BUFSIZE_BOUND \
INT_ADD_RANGE_OVERFLOW INT_SUBTRACT_RANGE_OVERFLOW \
INT_NEGATE_RANGE_OVERFLOW INT_MULTIPLY_RANGE_OVERFLOW \
# Ensure that each .c file containing a "main" function also
# calls set_program_name.
sc_program_name:
- @require='set_program_name *\(m?argv\[0\]\);' \
+ @require='set_program_name *\(.*\);' \
in_vc_files='\.c$$' \
containing='\<main *(' \
halt='the above files do not call set_program_name' \
# #if HAVE_HEADER_H that you remove, be sure that your project explicitly
# requires the gnulib module that guarantees the usability of that header.
gl_assured_headers_ = \
- cd $(gnulib_dir)/lib && echo *.in.h|sed 's/\.in\.h//g'
+ cd $(gnulib_dir)/lib && echo *.in.h|$(SED) 's/\.in\.h//g'
# Convert the list of names to upper case, and replace each space with "|".
az_ = abcdefghijklmnopqrstuvwxyz
$(_sc_search_regexp)
sc_prohibit_defined_have_decl_tests:
- @prohibit='#[ ]*if(n?def|.*\<defined)\>[ (]+HAVE_DECL_' \
+ @prohibit='(#[ ]*ifn?def|\<defined)\>[ (]+HAVE_DECL_' \
halt='HAVE_DECL macros are always defined' \
$(_sc_search_regexp)
&& perl -lne '$(gl_extract_significant_defines_)' $$f; \
done; \
) | sort -u \
- | sed 's/^/^ *# *(define|undef) */;s/$$/\\>/'
+ | $(SED) 's/^/^ *# *(define|undef) */;s/$$/\\>/'
endef
# Don't define macros that we already get from gnulib header files.
-e ' print "$$ARGV:$$n:$$v\n";' \
-e ' }'
+prohibit_doubled_words_ = \
+ the then in an on if is it but for or at and do to
+# expand the regex before running the check to avoid using expensive captures
+prohibit_doubled_word_expanded_ = \
+ $(join $(prohibit_doubled_words_),$(addprefix \s+,$(prohibit_doubled_words_)))
prohibit_doubled_word_RE_ ?= \
- /\b(then?|[iao]n|i[fst]|but|f?or|at|and|[dt]o)\s+\1\b/gims
+ /\b(?:$(subst $(_sp),|,$(prohibit_doubled_word_expanded_)))\b/gims
prohibit_doubled_word_ = \
-e 'while ($(prohibit_doubled_word_RE_))' \
$(perl_filename_lineno_text_)
| grep -vE '$(ignore_undesirable_word_sequence_RE_)' | grep . \
&& { echo '$(ME): undesirable word sequence' >&2; exit 1; } || :
+# Except for shell files and for loops, double semicolon is probably a mistake
+sc_prohibit_double_semicolon:
+ @prohibit='; *;[ {} \]*(/[/*]|$$)' \
+ in_vc_files='\.[chly]$$' \
+ exclude='\bfor *\(.*\)' \
+ halt="Double semicolon detected" \
+ $(_sc_search_regexp)
+
_ptm1 = use "test C1 && test C2", not "test C1 -''a C2"
_ptm2 = use "test C1 || test C2", not "test C1 -''o C2"
# Using test's -a and -o operators is not portable.
$(_sc_search_regexp)
NEWS_hash = \
- $$(sed -n '/^\*.* $(PREV_VERSION_REGEXP) ([0-9-]*)/,$$p' \
+ $$($(SED) -n '/^\*.* $(PREV_VERSION_REGEXP) ([0-9-]*)/,$$p' \
$(srcdir)/NEWS \
| perl -0777 -pe \
's/^Copyright.+?Free\sSoftware\sFoundation,\sInc\.\n//ms' \
| md5sum - \
- | sed 's/ .*//')
+ | $(SED) 's/ .*//')
# Ensure that we don't accidentally insert an entry into an old NEWS block.
sc_immutable_NEWS:
&& { echo '$(ME): use $$(...), not @...@' 1>&2; exit 1; } || :
news-check: NEWS
- $(AM_V_GEN)if sed -n $(news-check-lines-spec)p $< \
+ $(AM_V_GEN)if $(SED) -n $(news-check-lines-spec)p $< \
| grep -E $(news-check-regexp) >/dev/null; then \
:; \
else \
'you have changed the set of files with translatable diagnostics;\n\
apply the above patch\n'
+# Generate a list of files in which to search for translatable strings.
+perl_translatable_files_list_ = \
+ -e 'foreach $$file (@ARGV) {' \
+ -e ' \# Consider only file extensions with one or two letters' \
+ -e ' $$file =~ /\...?$$/ or next;' \
+ -e ' \# Ignore m4 and mk files' \
+ -e ' $$file =~ /\.m[4k]$$/ and next;' \
+ -e ' \# Ignore a .c or .h file with a corresponding .l or .y file' \
+ -e ' $$file =~ /(.+)\.[ch]$$/ && (-e "$${1}.l" || -e "$${1}.y")' \
+ -e ' and next;' \
+ -e ' \# Skip unreadable files' \
+ -e ' -r $$file or next;' \
+ -e ' print "$$file ";' \
+ -e '}'
+
# Verify that all source files using _() (more specifically, files that
# match $(_gl_translatable_string_re)) are listed in po/POTFILES.in.
po_file ?= $(srcdir)/po/POTFILES.in
@if test -f $(po_file); then \
grep -E -v '^(#|$$)' $(po_file) \
| grep -v '^src/false\.c$$' | sort > $@-1; \
- files=; \
- for file in $$($(VC_LIST_EXCEPT)) $(generated_files); do \
- test -r $$file || continue; \
- case $$file in \
- *.m4|*.mk) continue ;; \
- *.?|*.??) ;; \
- *) continue;; \
- esac; \
- case $$file in \
- *.[ch]) \
- base=`expr " $$file" : ' \(.*\)\..'`; \
- { test -f $$base.l || test -f $$base.y; } && continue;; \
- esac; \
- files="$$files $$file"; \
- done; \
+ files=$$(perl $(perl_translatable_files_list_) \
+ $$($(VC_LIST_EXCEPT)) $(generated_files)); \
grep -E -l '$(_gl_translatable_string_re)' $$files \
- | sed 's|^$(_dot_escaped_srcdir)/||' | sort -u > $@-2; \
+ | $(SED) 's|^$(_dot_escaped_srcdir)/||' | sort -u > $@-2; \
diff -u -L $(po_file) -L $(po_file) $@-1 $@-2 \
|| { printf '$(ME): '$(fix_po_file_diag) 1>&2; exit 1; }; \
rm -f $@-1 $@-2; \
in_vc_files=$(sample-test) \
halt='out of date copyright in $(sample-test); update it' \
$(_sc_search_regexp)
- @require='Copyright @copyright\{\} .*'$$(date +%Y)' Free' \
+ @require='Copyright @copyright\{\} .*'$$(date +%Y) \
in_vc_files=$(texi) \
halt='out of date copyright in $(texi); update it' \
$(_sc_search_regexp)
rel-files = $(DIST_ARCHIVES)
gnulib_dir ?= $(srcdir)/gnulib
-gnulib-version = $$(cd $(gnulib_dir) && git describe)
+gnulib-version = $$(cd $(gnulib_dir) \
+ && { git describe || git rev-parse --short=10 HEAD; } )
bootstrap-tools ?= autoconf,automake,gnulib
+gpgv = $$(gpgv2 --version >/dev/null && echo gpgv2 || echo gpgv)
# If it's not already specified, derive the GPG key ID from
# the signed tag we've just applied to mark this release.
gpg_key_ID ?= \
$$(cd $(srcdir) \
&& git cat-file tag v$(VERSION) \
- | gpgv --status-fd 1 --keyring /dev/null - - 2>/dev/null \
+ | $(gpgv) --status-fd 1 --keyring /dev/null - - 2>/dev/null \
| awk '/^\[GNUPG:\] ERRSIG / {print $$3; exit}')
translation_project_ ?= coordinator@translationproject.org
&& git --version >/dev/null 2>&1; then \
cd $(srcdir) && \
git submodule --quiet foreach \
- test '"$$(git rev-parse "$$sha1")"' \
- = '"$$(git merge-base origin "$$sha1")"' \
+ 'test "$$(git rev-parse "$$sha1")" \
+ = "$$(git merge-base origin "$$sha1")"' \
|| { echo '$(ME): found non-public submodule commit' >&2; \
exit 1; }; \
else \
$(AM_V_at)$(MAKE) -s emit_upload_commands RELEASE_TYPE=$@
release:
+ $(AM_V_GEN)$(MAKE) _version
$(AM_V_GEN)$(MAKE) $(release-type)
# Override this in cfg.mk if you follow different procedures.
test -n "$$t" && gl=$$t; \
fi; \
for diff in $$(cd $$gl; git ls-files | grep '\.diff$$'); do \
- b=$$(printf %s "$$diff"|sed 's/\.diff$$//'); \
+ b=$$(printf %s "$$diff"|$(SED) 's/\.diff$$//'); \
VERSION_CONTROL=none \
patch "$(gnulib_dir)/$$b" "$$gl/$$diff" || exit 1; \
( cd $(gnulib_dir) || exit 1; \
wget --no-verbose --directory-prefix $(PODIR) --no-directories --recursive --level 1 --accept .po --accept .po.1 $(POURL) && \
echo 'en@boldquot' > $(PODIR)/LINGUAS && \
echo 'en@quot' >> $(PODIR)/LINGUAS && \
- ls $(PODIR)/*.po | sed 's/\.po//;s,$(PODIR)/,,' | sort >> $(PODIR)/LINGUAS
+ ls $(PODIR)/*.po | $(SED) 's/\.po//;s,$(PODIR)/,,' | \
+ sort >> $(PODIR)/LINGUAS
# Running indent once is not idempotent, but running it twice is.
INDENT_SOURCES ?= $(C_SOURCES)
# do not need to be marked. Symbols matching '__.*' are
# reserved by the compiler, so are automatically excluded below.
_gl_TS_unmarked_extern_functions ?= main usage
-_gl_TS_function_match ?= /^(?:$(_gl_TS_extern)) +.*?(\S+) *\(/
+_gl_TS_function_match ?= /^(?:$(_gl_TS_extern)) +.*?(\w+) *\(/
# If your project uses a macro like "XTERN", then put
# the following in cfg.mk to override this default:
.PHONY: _gl_tight_scope
_gl_tight_scope: $(bin_PROGRAMS)
+ sed_wrap='s/^/^_?/;s/$$/$$/'; \
t=exceptions-$$$$; \
trap 's=$$?; rm -f $$t; exit $$s' 0; \
for sig in 1 2 3 13 15; do \
test -f $$f && d= || d=$(srcdir)/; echo $$d$$f; done`; \
hdr=`for f in $(_gl_TS_headers); do \
test -f $$f && d= || d=$(srcdir)/; echo $$d$$f; done`; \
- ( printf '^%s$$\n' '__.*' $(_gl_TS_unmarked_extern_functions); \
+ ( printf '%s\n' '__.*' $(_gl_TS_unmarked_extern_functions); \
grep -h -A1 '^extern .*[^;]$$' $$src \
- | grep -vE '^(extern |--)' | sed 's/ .*//'; \
+ | grep -vE '^(extern |--|#)' | $(SED) 's/ .*//; /^$$/d'; \
perl -lne \
- '$(_gl_TS_function_match) and print "^$$1\$$"' $$hdr; \
- ) | sort -u > $$t; \
- nm -e $(_gl_TS_obj_files) | sed -n 's/.* T //p'|grep -Ev -f $$t \
+ '$(_gl_TS_function_match) and print $$1' $$hdr; \
+ ) | sort -u | $(SED) "$$sed_wrap" > $$t; \
+ nm -g $(_gl_TS_obj_files)|$(SED) -n 's/.* T //p'|grep -Ev -f $$t \
&& { echo the above functions should have static scope >&2; \
exit 1; } || : ; \
- ( printf '^%s$$\n' '__.*' $(_gl_TS_unmarked_extern_vars); \
- perl -lne '$(_gl_TS_var_match) and print "^$$1\$$"' \
+ ( printf '%s\n' '__.*' main $(_gl_TS_unmarked_extern_vars); \
+ perl -lne '$(_gl_TS_var_match) and print $$1' \
$$hdr $(_gl_TS_other_headers) \
- ) | sort -u > $$t; \
- nm -e $(_gl_TS_obj_files) | sed -n 's/.* [BCDGRS] //p' \
+ ) | sort -u | $(SED) "$$sed_wrap" > $$t; \
+ nm -g $(_gl_TS_obj_files) | $(SED) -n 's/.* [BCDGRS] //p' \
| sort -u | grep -Ev -f $$t \
&& { echo the above variables should have static scope >&2; \
exit 1; } || :
# Automakefile for GNU diffutils man pages
-# Copyright (C) 2002, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2002, 2009-2013, 2015-2016 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff3.1: $S/diff3.c diff3.x
sdiff.1: $S/sdiff.c sdiff.x
+# Directory in which just-built programs reside. It is used
+# to ensure help2man invokes them via the use of PATH below.
+bin_dir = ../src
+
# Depend on the former to get version number changes.
$(dist_man1_MANS): $(SRC_VERSION_C) help2man
$(AM_V_GEN)base=`expr $@ : '\(.*\).1'` \
+ && test -x $(bin_dir)/$$base \
&& (echo '[NAME]' && sed 's@/\* *@@; s/-/\\-/; q' $S/$$base.c) \
- | PATH=..$(PATH_SEPARATOR)$$PATH \
+ | PATH="$(bin_dir)$(PATH_SEPARATOR)$$PATH" \
$(srcdir)/help2man -i - -i $(srcdir)/$$base.x \
-S '$(PACKAGE) $(VERSION)' $$base > $@-t && mv $@-t $@
-# Makefile.in generated by automake 1.13a from Makefile.am.
+# Makefile.in generated by automake 1.99a from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+# Copyright (C) 1994-2015 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Automakefile for GNU diffutils man pages
-# Copyright (C) 2002, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2002, 2009-2013, 2015-2016 Free Software Foundation, Inc.
# This 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 <http://www.gnu.org/licenses/>.
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = { \
+ if test -z '$(MAKELEVEL)'; then \
+ false; \
+ elif test -n '$(MAKE_HOST)'; then \
+ true; \
+ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+ true; \
+ else \
+ false; \
+ fi; \
+}
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
build_triplet = @build@
host_triplet = @host@
subdir = man
-DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
- $(dist_man1_MANS)
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
- $(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/btowc.m4 \
+ $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \
+ $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/btowc.m4 \
$(top_srcdir)/m4/c-stack.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/dirname.m4 \
+ $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
$(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
$(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
$(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
$(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fcntl-o.m4 \
$(top_srcdir)/m4/fcntl.m4 $(top_srcdir)/m4/fcntl_h.m4 \
$(top_srcdir)/m4/fdopen.m4 $(top_srcdir)/m4/filenamecat.m4 \
- $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fnmatch.m4 \
- $(top_srcdir)/m4/fpieee.m4 $(top_srcdir)/m4/freopen.m4 \
- $(top_srcdir)/m4/fstat.m4 $(top_srcdir)/m4/getcwd.m4 \
+ $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \
+ $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fpieee.m4 \
+ $(top_srcdir)/m4/freopen.m4 $(top_srcdir)/m4/fstat.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/gettext.m4 \
$(top_srcdir)/m4/gettime.m4 $(top_srcdir)/m4/gettimeofday.m4 \
$(top_srcdir)/m4/gnulib-comp.m4 \
$(top_srcdir)/m4/hard-locale.m4 $(top_srcdir)/m4/iconv.m4 \
$(top_srcdir)/m4/iconv_h.m4 $(top_srcdir)/m4/iconv_open.m4 \
- $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inline.m4 \
- $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \
- $(top_srcdir)/m4/inttostr.m4 $(top_srcdir)/m4/inttypes-pri.m4 \
- $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \
- $(top_srcdir)/m4/iswblank.m4 $(top_srcdir)/m4/langinfo_h.m4 \
- $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \
- $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/libsigsegv.m4 \
+ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
+ $(top_srcdir)/m4/inline.m4 $(top_srcdir)/m4/intlmacosx.m4 \
+ $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttostr.m4 \
+ $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+ $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/ioctl.m4 \
+ $(top_srcdir)/m4/isblank.m4 $(top_srcdir)/m4/iswblank.m4 \
+ $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
+ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
+ $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \
$(top_srcdir)/m4/libunistring-base.m4 \
$(top_srcdir)/m4/localcharset.m4 $(top_srcdir)/m4/locale-fr.m4 \
$(top_srcdir)/m4/locale-ja.m4 $(top_srcdir)/m4/locale-tr.m4 \
$(top_srcdir)/m4/mktime.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/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
$(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/off_t.m4 \
$(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
+ $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
$(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/putenv.m4 \
$(top_srcdir)/m4/quote.m4 $(top_srcdir)/m4/quotearg.m4 \
- $(top_srcdir)/m4/raise.m4 $(top_srcdir)/m4/readlink.m4 \
- $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/secure_getenv.m4 \
+ $(top_srcdir)/m4/raise.m4 $(top_srcdir)/m4/rawmemchr.m4 \
+ $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/regex.m4 \
+ $(top_srcdir)/m4/secure_getenv.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/signalblocking.m4 \
$(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \
- $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/ssize_t.m4 \
+ $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/socketlib.m4 \
+ $(top_srcdir)/m4/sockets.m4 $(top_srcdir)/m4/socklen.m4 \
+ $(top_srcdir)/m4/sockpfaf.m4 $(top_srcdir)/m4/ssize_t.m4 \
$(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \
- $(top_srcdir)/m4/stdarg.m4 $(top_srcdir)/m4/stdbool.m4 \
- $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \
- $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \
- $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/strcase.m4 \
- $(top_srcdir)/m4/strerror.m4 $(top_srcdir)/m4/strftime.m4 \
+ $(top_srcdir)/m4/stdalign.m4 $(top_srcdir)/m4/stdarg.m4 \
+ $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \
+ $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \
+ $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \
+ $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strerror.m4 \
+ $(top_srcdir)/m4/strerror_r.m4 $(top_srcdir)/m4/strftime.m4 \
$(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \
$(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \
$(top_srcdir)/m4/strptime.m4 $(top_srcdir)/m4/strtoull.m4 \
$(top_srcdir)/m4/strtoumax.m4 $(top_srcdir)/m4/symlink.m4 \
+ $(top_srcdir)/m4/sys_ioctl_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 \
- $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_wait_h.m4 \
- $(top_srcdir)/m4/tempname.m4 $(top_srcdir)/m4/time_h.m4 \
- $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/timespec.m4 \
- $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/unistd_h.m4 \
- $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/usleep.m4 \
+ $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_uio_h.m4 \
+ $(top_srcdir)/m4/sys_wait_h.m4 $(top_srcdir)/m4/tempname.m4 \
+ $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \
+ $(top_srcdir)/m4/time_rz.m4 $(top_srcdir)/m4/timegm.m4 \
+ $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \
+ $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlocked-io.m4 \
$(top_srcdir)/m4/vararrays.m4 $(top_srcdir)/m4/vasnprintf.m4 \
$(top_srcdir)/m4/vasprintf.m4 $(top_srcdir)/m4/version-etc.m4 \
$(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
$(top_srcdir)/m4/xvasprintf.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/lib/config.h
CONFIG_CLEAN_FILES =
NROFF = nroff
MANS = $(dist_man1_MANS)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+am__DIST_COMMON = $(dist_man1_MANS) $(srcdir)/Makefile.in
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
pkglibexecdir = @pkglibexecdir@
ACLOCAL = @ACLOCAL@
GLIBC21 = @GLIBC21@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
+GNULIB_ACCEPT = @GNULIB_ACCEPT@
+GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
GNULIB_ATOLL = @GNULIB_ATOLL@
+GNULIB_BIND = @GNULIB_BIND@
GNULIB_BTOWC = @GNULIB_BTOWC@
GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@
GNULIB_CANONICALIZE_FILE_NAME = @GNULIB_CANONICALIZE_FILE_NAME@
GNULIB_CHDIR = @GNULIB_CHDIR@
GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
+GNULIB_CONNECT = @GNULIB_CONNECT@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
GNULIB_DUP = @GNULIB_DUP@
GNULIB_DUP2 = @GNULIB_DUP2@
GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
+GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
+GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
GNULIB_ICONV = @GNULIB_ICONV@
GNULIB_IMAXABS = @GNULIB_IMAXABS@
GNULIB_IMAXDIV = @GNULIB_IMAXDIV@
+GNULIB_INET_NTOP = @GNULIB_INET_NTOP@
+GNULIB_INET_PTON = @GNULIB_INET_PTON@
+GNULIB_IOCTL = @GNULIB_IOCTL@
GNULIB_ISATTY = @GNULIB_ISATTY@
+GNULIB_ISBLANK = @GNULIB_ISBLANK@
GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
GNULIB_LCHMOD = @GNULIB_LCHMOD@
GNULIB_LCHOWN = @GNULIB_LCHOWN@
GNULIB_LINK = @GNULIB_LINK@
GNULIB_LINKAT = @GNULIB_LINKAT@
+GNULIB_LISTEN = @GNULIB_LISTEN@
GNULIB_LOCALECONV = @GNULIB_LOCALECONV@
GNULIB_LSEEK = @GNULIB_LSEEK@
GNULIB_LSTAT = @GNULIB_LSTAT@
GNULIB_PREAD = @GNULIB_PREAD@
GNULIB_PRINTF = @GNULIB_PRINTF@
GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@
+GNULIB_PSELECT = @GNULIB_PSELECT@
GNULIB_PTHREAD_SIGMASK = @GNULIB_PTHREAD_SIGMASK@
GNULIB_PTSNAME = @GNULIB_PTSNAME@
GNULIB_PTSNAME_R = @GNULIB_PTSNAME_R@
GNULIB_PUTENV = @GNULIB_PUTENV@
GNULIB_PUTS = @GNULIB_PUTS@
GNULIB_PWRITE = @GNULIB_PWRITE@
+GNULIB_QSORT_R = @GNULIB_QSORT_R@
GNULIB_RAISE = @GNULIB_RAISE@
GNULIB_RANDOM = @GNULIB_RANDOM@
GNULIB_RANDOM_R = @GNULIB_RANDOM_R@
GNULIB_READLINKAT = @GNULIB_READLINKAT@
GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@
GNULIB_REALPATH = @GNULIB_REALPATH@
+GNULIB_RECV = @GNULIB_RECV@
+GNULIB_RECVFROM = @GNULIB_RECVFROM@
GNULIB_REMOVE = @GNULIB_REMOVE@
GNULIB_RENAME = @GNULIB_RENAME@
GNULIB_RENAMEAT = @GNULIB_RENAMEAT@
GNULIB_RPMATCH = @GNULIB_RPMATCH@
GNULIB_SCANF = @GNULIB_SCANF@
GNULIB_SECURE_GETENV = @GNULIB_SECURE_GETENV@
+GNULIB_SELECT = @GNULIB_SELECT@
+GNULIB_SEND = @GNULIB_SEND@
+GNULIB_SENDTO = @GNULIB_SENDTO@
GNULIB_SETENV = @GNULIB_SETENV@
GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
+GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
GNULIB_SIGACTION = @GNULIB_SIGACTION@
GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
GNULIB_SLEEP = @GNULIB_SLEEP@
GNULIB_SNPRINTF = @GNULIB_SNPRINTF@
+GNULIB_SOCKET = @GNULIB_SOCKET@
GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@
GNULIB_STAT = @GNULIB_STAT@
GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@
GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@
GNULIB_TIMEGM = @GNULIB_TIMEGM@
GNULIB_TIME_R = @GNULIB_TIME_R@
+GNULIB_TIME_RZ = @GNULIB_TIME_RZ@
GNULIB_TMPFILE = @GNULIB_TMPFILE@
GNULIB_TOWCTRANS = @GNULIB_TOWCTRANS@
GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@
GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
+HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@
HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@
HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@
+HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@
+HAVE_DECL_INET_PTON = @HAVE_DECL_INET_PTON@
HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@
HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@
HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
+HAVE_ISBLANK = @HAVE_ISBLANK@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@
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@
HAVE_MBRTOWC = @HAVE_MBRTOWC@
HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MKSTEMPS = @HAVE_MKSTEMPS@
HAVE_MSVC_INVALID_PARAMETER_HANDLER = @HAVE_MSVC_INVALID_PARAMETER_HANDLER@
HAVE_NANOSLEEP = @HAVE_NANOSLEEP@
+HAVE_NETINET_IN_H = @HAVE_NETINET_IN_H@
HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@
HAVE_OPENAT = @HAVE_OPENAT@
HAVE_OS_H = @HAVE_OS_H@
HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
HAVE_PREAD = @HAVE_PREAD@
+HAVE_PSELECT = @HAVE_PSELECT@
HAVE_PTHREAD_SIGMASK = @HAVE_PTHREAD_SIGMASK@
HAVE_PTSNAME = @HAVE_PTSNAME@
HAVE_PTSNAME_R = @HAVE_PTSNAME_R@
HAVE_REALPATH = @HAVE_REALPATH@
HAVE_RENAMEAT = @HAVE_RENAMEAT@
HAVE_RPMATCH = @HAVE_RPMATCH@
+HAVE_SA_FAMILY_T = @HAVE_SA_FAMILY_T@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
HAVE_STRUCT_SIGACTION_SA_SIGACTION = @HAVE_STRUCT_SIGACTION_SA_SIGACTION@
+HAVE_STRUCT_SOCKADDR_STORAGE = @HAVE_STRUCT_SOCKADDR_STORAGE@
+HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY = @HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY@
HAVE_STRUCT_TIMEVAL = @HAVE_STRUCT_TIMEVAL@
HAVE_STRVERSCMP = @HAVE_STRVERSCMP@
HAVE_SYMLINK = @HAVE_SYMLINK@
HAVE_SYMLINKAT = @HAVE_SYMLINKAT@
HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@
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_SELECT_H = @HAVE_SYS_SELECT_H@
+HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@
+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_UNISTD_H = @HAVE_UNISTD_H@
HAVE_UNLINKAT = @HAVE_UNLINKAT@
HAVE_WMEMCPY = @HAVE_WMEMCPY@
HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
HAVE_WMEMSET = @HAVE_WMEMSET@
+HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
HAVE__BOOL = @HAVE__BOOL@
HAVE__EXIT = @HAVE__EXIT@
ICONV_H = @ICONV_H@
INCLUDE_NEXT = @INCLUDE_NEXT@
INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@
+INET_PTON_LIB = @INET_PTON_LIB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
LIBS = @LIBS@
LIBSIGSEGV = @LIBSIGSEGV@
LIBSIGSEGV_PREFIX = @LIBSIGSEGV_PREFIX@
+LIBSOCKET = @LIBSOCKET@
LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
LIBUNISTRING_UNISTR_H = @LIBUNISTRING_UNISTR_H@
LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@
LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@
LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_SELECT = @LIB_SELECT@
LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@
LOCALE_FR = @LOCALE_FR@
LOCALE_FR_UTF8 = @LOCALE_FR_UTF8@
MSGFMT = @MSGFMT@
MSGFMT_015 = @MSGFMT_015@
MSGMERGE = @MSGMERGE@
+NETINET_IN_H = @NETINET_IN_H@
+NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@
NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@
NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@
NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@
NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H = @NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H@
NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H = @NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H@
NEXT_AS_FIRST_DIRECTIVE_LOCALE_H = @NEXT_AS_FIRST_DIRECTIVE_LOCALE_H@
+NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H = @NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H@
NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H = @NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H@
NEXT_AS_FIRST_DIRECTIVE_STDARG_H = @NEXT_AS_FIRST_DIRECTIVE_STDARG_H@
NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@
NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_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_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@
NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H@
NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@
NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@
NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@
NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@
+NEXT_CTYPE_H = @NEXT_CTYPE_H@
NEXT_ERRNO_H = @NEXT_ERRNO_H@
NEXT_FCNTL_H = @NEXT_FCNTL_H@
NEXT_FLOAT_H = @NEXT_FLOAT_H@
NEXT_INTTYPES_H = @NEXT_INTTYPES_H@
NEXT_LANGINFO_H = @NEXT_LANGINFO_H@
NEXT_LOCALE_H = @NEXT_LOCALE_H@
+NEXT_NETINET_IN_H = @NEXT_NETINET_IN_H@
NEXT_SIGNAL_H = @NEXT_SIGNAL_H@
NEXT_STDARG_H = @NEXT_STDARG_H@
NEXT_STDDEF_H = @NEXT_STDDEF_H@
NEXT_STDLIB_H = @NEXT_STDLIB_H@
NEXT_STRINGS_H = @NEXT_STRINGS_H@
NEXT_STRING_H = @NEXT_STRING_H@
+NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_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@
NEXT_SYS_TIME_H = @NEXT_SYS_TIME_H@
NEXT_SYS_TYPES_H = @NEXT_SYS_TYPES_H@
+NEXT_SYS_UIO_H = @NEXT_SYS_UIO_H@
NEXT_SYS_WAIT_H = @NEXT_SYS_WAIT_H@
NEXT_TIME_H = @NEXT_TIME_H@
NEXT_UNISTD_H = @NEXT_UNISTD_H@
REPLACE_GETCWD = @REPLACE_GETCWD@
REPLACE_GETDELIM = @REPLACE_GETDELIM@
REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@
+REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@
REPLACE_GETGROUPS = @REPLACE_GETGROUPS@
REPLACE_GETLINE = @REPLACE_GETLINE@
REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
+REPLACE_GMTIME = @REPLACE_GMTIME@
REPLACE_ICONV = @REPLACE_ICONV@
REPLACE_ICONV_OPEN = @REPLACE_ICONV_OPEN@
REPLACE_ICONV_UTF = @REPLACE_ICONV_UTF@
+REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
+REPLACE_INET_PTON = @REPLACE_INET_PTON@
+REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
REPLACE_LINK = @REPLACE_LINK@
REPLACE_LINKAT = @REPLACE_LINKAT@
REPLACE_LOCALECONV = @REPLACE_LOCALECONV@
+REPLACE_LOCALTIME = @REPLACE_LOCALTIME@
REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@
REPLACE_LSEEK = @REPLACE_LSEEK@
REPLACE_LSTAT = @REPLACE_LSTAT@
REPLACE_POPEN = @REPLACE_POPEN@
REPLACE_PREAD = @REPLACE_PREAD@
REPLACE_PRINTF = @REPLACE_PRINTF@
+REPLACE_PSELECT = @REPLACE_PSELECT@
REPLACE_PTHREAD_SIGMASK = @REPLACE_PTHREAD_SIGMASK@
REPLACE_PTSNAME = @REPLACE_PTSNAME@
REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@
REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
+REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
+REPLACE_READLINKAT = @REPLACE_READLINKAT@
REPLACE_REALLOC = @REPLACE_REALLOC@
REPLACE_REALPATH = @REPLACE_REALPATH@
REPLACE_REMOVE = @REPLACE_REMOVE@
REPLACE_RENAME = @REPLACE_RENAME@
REPLACE_RENAMEAT = @REPLACE_RENAMEAT@
REPLACE_RMDIR = @REPLACE_RMDIR@
+REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOIMAX = @REPLACE_STRTOIMAX@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOUMAX = @REPLACE_STRTOUMAX@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
+REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@
REPLACE_TIMEGM = @REPLACE_TIMEGM@
REPLACE_TMPFILE = @REPLACE_TMPFILE@
REPLACE_TOWLOWER = @REPLACE_TOWLOWER@
REPLACE_WCTOMB = @REPLACE_WCTOMB@
REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
REPLACE_WRITE = @REPLACE_WRITE@
+SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
SIZE_T_SUFFIX = @SIZE_T_SUFFIX@
SRC_VERSION_C = @SRC_VERSION_C@
+STDALIGN_H = @STDALIGN_H@
STDARG_H = @STDARG_H@
STDBOOL_H = @STDBOOL_H@
STDDEF_H = @STDDEF_H@
STDINT_H = @STDINT_H@
STRIP = @STRIP@
+SYS_IOCTL_H_HAVE_WINSOCK2_H = @SYS_IOCTL_H_HAVE_WINSOCK2_H@
+SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@
TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@
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_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@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
am__include = @am__include@
am__quote = @am__quote@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
+mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
EXTRA_DIST = $(dist_man1_MANS:%.1=%.x) help2man
MAINTAINERCLEANFILES = $(dist_man1_MANS)
S = $(top_srcdir)/src
+
+# Directory in which just-built programs reside. It is used
+# to ensure help2man invokes them via the use of PATH below.
+bin_dir = ../src
all: all-am
.SUFFIXES:
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu man/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu man/Makefile
-.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
pdf-am ps ps-am tags-am uninstall uninstall-am uninstall-man \
uninstall-man1
+.PRECIOUS: Makefile
+
cmp.1: $S/cmp.c cmp.x
diff.1: $S/diff.c diff.x
diff3.1: $S/diff3.c diff3.x
# Depend on the former to get version number changes.
$(dist_man1_MANS): $(SRC_VERSION_C) help2man
$(AM_V_GEN)base=`expr $@ : '\(.*\).1'` \
+ && test -x $(bin_dir)/$$base \
&& (echo '[NAME]' && sed 's@/\* *@@; s/-/\\-/; q' $S/$$base.c) \
- | PATH=..$(PATH_SEPARATOR)$$PATH \
+ | PATH="$(bin_dir)$(PATH_SEPARATOR)$$PATH" \
$(srcdir)/help2man -i - -i $(srcdir)/$$base.x \
-S '$(PACKAGE) $(VERSION)' $$base > $@-t && mv $@-t $@
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.40.4.
-.TH CMP "1" "March 2013" "diffutils 3.3" "User Commands"
+.TH CMP "1" "August 2016" "diffutils 3.4" "User Commands"
.SH NAME
cmp \- compare two files byte by byte
.SH SYNOPSIS
kB 1000, K 1024, MB 1,000,000, M 1,048,576,
GB 1,000,000,000, G 1,073,741,824, and so on for T, P, E, Z, Y.
.PP
-If a FILE is `\-' or missing, read standard input.
+If a FILE is '\-' or missing, read standard input.
Exit status is 0 if inputs are the same, 1 if different, 2 if trouble.
.SH AUTHOR
Written by Torbjorn Granlund and David MacKenzie.
.br
General help using GNU software: <http://www.gnu.org/gethelp/>
.SH COPYRIGHT
-Copyright \(co 2011 Free Software Foundation, Inc.
+Copyright \(co 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
.br
This is free software: you are free to change and redistribute it.
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.40.4.
-.TH DIFF "1" "March 2013" "diffutils 3.3" "User Commands"
+.TH DIFF "1" "August 2016" "diffutils 3.4" "User Commands"
.SH NAME
diff \- compare files line by line
.SH SYNOPSIS
show the most recent line matching RE
.TP
\fB\-\-label\fR LABEL
-use LABEL instead of file name
+use LABEL instead of file name and timestamp
(can be repeated)
.TP
\fB\-t\fR, \fB\-\-expand\-tabs\fR
suppress space or tab before empty output lines
.TP
\fB\-l\fR, \fB\-\-paginate\fR
-pass output through `pr' to paginate it
+pass output through 'pr' to paginate it
.TP
\fB\-r\fR, \fB\-\-recursive\fR
recursively compare any subdirectories found
.TP
+\fB\-\-no\-dereference\fR
+don't follow symbolic links
+.TP
\fB\-N\fR, \fB\-\-new\-file\fR
treat absent files as empty
.TP
ignore all white space
.TP
\fB\-B\fR, \fB\-\-ignore\-blank\-lines\fR
-ignore changes whose lines are all blank
+ignore changes where lines are all blank
.TP
\fB\-I\fR, \fB\-\-ignore\-matching\-lines\fR=\fIRE\fR
-ignore changes whose lines all match RE
+ignore changes where all lines match RE
.TP
\fB\-a\fR, \fB\-\-text\fR
treat all files as text
strip trailing carriage return on input
.TP
\fB\-D\fR, \fB\-\-ifdef\fR=\fINAME\fR
-output merged file with `#ifdef NAME' diffs
+output merged file with '#ifdef NAME' diffs
.TP
\fB\-\-GTYPE\-group\-format\fR=\fIGFMT\fR
format GTYPE input groups with GFMT
.IP
of diff, generalizing \fB\-D\fR/\-\-ifdef.
.TP
-LTYPE is `old', `new', or `unchanged'.
-GTYPE is LTYPE or `changed'.
+LTYPE is 'old', 'new', or 'unchanged'.
+GTYPE is LTYPE or 'changed'.
.IP
GFMT (only) may contain:
.TP
\fB\-\-speed\-large\-files\fR
assume large files and many scattered small changes
.TP
+\fB\-\-color\fR[=\fIWHEN\fR]
+colorize the output; WHEN can be 'never', 'always',
+or 'auto' (the default)
+.TP
+\fB\-\-palette\fR=\fIPALETTE\fR
+specify the colors to use when \fB\-\-color\fR is active
+PALETTE is a colon\-separated list terminfo capabilities
+.TP
\fB\-\-help\fR
display this help and exit
.TP
\fB\-v\fR, \fB\-\-version\fR
output version information and exit
.PP
-FILES are `FILE1 FILE2' or `DIR1 DIR2' or `DIR FILE...' or `FILE... DIR'.
+FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'.
If \fB\-\-from\-file\fR or \fB\-\-to\-file\fR is given, there are no restrictions on FILE(s).
-If a FILE is `\-', read standard input.
+If a FILE is '\-', read standard input.
Exit status is 0 if inputs are the same, 1 if different, 2 if trouble.
.SH AUTHOR
Written by Paul Eggert, Mike Haertel, David Hayes,
.br
General help using GNU software: <http://www.gnu.org/gethelp/>
.SH COPYRIGHT
-Copyright \(co 2011 Free Software Foundation, Inc.
+Copyright \(co 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
.br
This is free software: you are free to change and redistribute it.
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.40.4.
-.TH DIFF3 "1" "March 2013" "diffutils 3.3" "User Commands"
+.TH DIFF3 "1" "August 2016" "diffutils 3.4" "User Commands"
.SH NAME
diff3 \- compare three files line by line
.SH SYNOPSIS
like \fB\-x\fR, but bracket conflicts
.TP
\fB\-i\fR
-append `w' and `q' commands to ed scripts
+append 'w' and 'q' commands to ed scripts
.TP
\fB\-m\fR, \fB\-\-merge\fR
output actual merged file, according to
and output the actual merged file. For unusual input, this is more
robust than using ed.
.PP
-If a FILE is `\-', read standard input.
+If a FILE is '\-', read standard input.
Exit status is 0 if successful, 1 if conflicts, 2 if trouble.
.SH AUTHOR
Written by Randy Smith.
.br
General help using GNU software: <http://www.gnu.org/gethelp/>
.SH COPYRIGHT
-Copyright \(co 2011 Free Software Foundation, Inc.
+Copyright \(co 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
.br
This is free software: you are free to change and redistribute it.
#!/usr/bin/perl -w
# Generate a short man page from --help and --version output.
-# Copyright (C) 1997-2005, 2009-2011, 2013 Free Software Foundation, Inc.
+# Copyright (C) 1997-2005, 2009-2011, 2013, 2015-2016 Free Software Foundation,
+# Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.40.4.
-.TH SDIFF "1" "March 2013" "diffutils 3.3" "User Commands"
+.TH SDIFF "1" "August 2016" "diffutils 3.4" "User Commands"
.SH NAME
sdiff \- side-by-side merge of file differences
.SH SYNOPSIS
ignore changes whose lines are all blank
.TP
\fB\-I\fR, \fB\-\-ignore\-matching\-lines\fR=\fIRE\fR
-ignore changes whose lines all match RE
+ignore changes all whose lines match RE
.TP
\fB\-\-strip\-trailing\-cr\fR
strip trailing carriage return on input
\fB\-v\fR, \fB\-\-version\fR
output version information and exit
.PP
-If a FILE is `\-', read standard input.
+If a FILE is '\-', read standard input.
Exit status is 0 if inputs are the same, 1 if different, 2 if trouble.
.SH AUTHOR
Written by Thomas Lord.
.br
General help using GNU software: <http://www.gnu.org/gethelp/>
.SH COPYRIGHT
-Copyright \(co 2011 Free Software Foundation, Inc.
+Copyright \(co 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
.br
This is free software: you are free to change and redistribute it.
# Please note that the actual code of GNU gettext is covered by the GNU
# General Public License and is *not* in the public domain.
#
-# Origin: gettext-0.18.2
-GETTEXT_MACRO_VERSION = 0.18
+# Origin: gettext-0.19
+GETTEXT_MACRO_VERSION = 0.19
PACKAGE = @PACKAGE@
VERSION = @VERSION@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+SED = @SED@
SHELL = /bin/sh
@SET_MAKE@
CATALOGS = @CATALOGS@
+POFILESDEPS_ = $(srcdir)/$(DOMAIN).pot
+POFILESDEPS_yes = $(POFILESDEPS_)
+POFILESDEPS_no =
+POFILESDEPS = $(POFILESDEPS_$(PO_DEPENDS_ON_POT))
+
+DISTFILESDEPS_ = update-po
+DISTFILESDEPS_yes = $(DISTFILESDEPS_)
+DISTFILESDEPS_no =
+DISTFILESDEPS = $(DISTFILESDEPS_$(DIST_DEPENDS_ON_UPDATE_PO))
+
# Makevars gets inserted here. (Don't remove this line!)
.SUFFIXES:
# heuristic whether some file in the top level directory mentions "GNU xyz".
# If GNU 'find' is available, we avoid grepping through monster files.
$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
- if { if (LC_ALL=C find --version) 2>/dev/null | grep GNU >/dev/null; then \
- LC_ALL=C find -L $(top_srcdir) -maxdepth 1 -type f -size -10000000c -exec grep 'GNU @PACKAGE@' /dev/null '{}' ';' 2>/dev/null; \
- else \
- LC_ALL=C grep 'GNU @PACKAGE@' $(top_srcdir)/* 2>/dev/null; \
- fi; \
- } | grep -v 'libtool:' >/dev/null; then \
- package_gnu='GNU '; \
+ package_gnu="$(PACKAGE_GNU)"; \
+ test -n "$$package_gnu" || { \
+ if { if (LC_ALL=C find --version) 2>/dev/null | grep GNU >/dev/null; then \
+ LC_ALL=C find -L $(top_srcdir) -maxdepth 1 -type f \
+ -size -10000000c -exec grep 'GNU @PACKAGE@' \
+ /dev/null '{}' ';' 2>/dev/null; \
+ else \
+ LC_ALL=C grep 'GNU @PACKAGE@' $(top_srcdir)/* 2>/dev/null; \
+ fi; \
+ } | grep -v 'libtool:' >/dev/null; then \
+ package_gnu=yes; \
+ else \
+ package_gnu=no; \
+ fi; \
+ }; \
+ if test "$$package_gnu" = "yes"; then \
+ package_prefix='GNU '; \
else \
- package_gnu=''; \
+ package_prefix=''; \
fi; \
if test -n '$(MSGID_BUGS_ADDRESS)' || test '$(PACKAGE_BUGREPORT)' = '@'PACKAGE_BUGREPORT'@'; then \
msgid_bugs_address='$(MSGID_BUGS_ADDRESS)'; \
--add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \
--files-from=$(srcdir)/POTFILES.in \
--copyright-holder='$(COPYRIGHT_HOLDER)' \
- --package-name="$${package_gnu}@PACKAGE@" \
+ --package-name="$${package_prefix}@PACKAGE@" \
--package-version='@VERSION@' \
--msgid-bugs-address="$$msgid_bugs_address" \
;; \
# This target rebuilds a PO file if $(DOMAIN).pot has changed.
# Note that a PO file is not touched if it doesn't need to be changed.
-$(POFILES): $(srcdir)/$(DOMAIN).pot
+$(POFILES): $(POFILESDEPS)
@lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \
if test -f "$(srcdir)/$${lang}.po"; then \
+ test -f $(srcdir)/$(DOMAIN).pot || $(MAKE) $(srcdir)/$(DOMAIN).pot; \
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
cd $(srcdir) \
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
dist distdir:
- $(MAKE) update-po
+ test -z "$(DISTFILESDEPS)" || $(MAKE) $(DISTFILESDEPS)
@$(MAKE) dist2
# This is a separate target because 'update-po' must be executed before.
dist2: stamp-po $(DISTFILES)
# their copyright.
COPYRIGHT_HOLDER = Free Software Foundation, Inc.
+# This tells whether or not to prepend "GNU " prefix to the package
+# name that gets inserted into the header of the $(DOMAIN).pot file.
+# Possible values are "yes", "no", or empty. If it is empty, try to
+# detect it automatically by scanning the files in $(top_srcdir) for
+# "GNU packagename" string.
+PACKAGE_GNU =
+
# This is the email address or URL to which the translators shall report
# bugs in the untranslated strings:
# - Strings which are not entire sentences, see the maintainer guidelines
# --previous to keep previous msgids of translated messages,
# --quiet to reduce the verbosity.
MSGMERGE_OPTIONS =
+
+# This tells whether or not to regenerate a PO file when $(DOMAIN).pot
+# has changed. Possible values are "yes" and "no". Set this to no if
+# the POT file is checked in the repository and the version control
+# program ignores timestamps.
+PO_DEPENDS_ON_POT = yes
+
+# This tells whether or not to forcibly update $(DOMAIN).pot and
+# regenerate PO files on "make dist". Possible values are "yes" and
+# "no". Set this to no if the POT file and PO files are maintained
+# externally.
+DIST_DEPENDS_ON_UPDATE_PO = yes
# List of files that contain translatable strings.
-# Copyright (C) 2001-2002, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2002, 2009-2013, 2015-2016 Free Software Foundation, Inc.
# This 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 <http://www.gnu.org/licenses/>.
+lib/argmatch.c
lib/c-stack.c
lib/error.c
lib/file-type.c
+# This file, Rules-quot, can be copied and used freely without restrictions.
# Special Makefile rules for English message catalogs with quotation marks.
DISTFILES.common.extra1 = quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot
ll=`echo $$lang | sed -e 's/@.*//'`; \
LC_ALL=C; export LC_ALL; \
cd $(srcdir); \
- if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$lang -o - 2>/dev/null | sed -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | $(MSGFILTER) sed -f `echo $$lang | sed -e 's/.*@//'`.sed 2>/dev/null > $$tmpdir/$$lang.new.po; then \
+ if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$lang -o - 2>/dev/null \
+ | $(SED) -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | \
+ { case `$(MSGFILTER) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+ '' | 0.[0-9] | 0.[0-9].* | 0.1[0-8] | 0.1[0-8].*) \
+ $(MSGFILTER) $(SED) -f `echo $$lang | sed -e 's/.*@//'`.sed \
+ ;; \
+ *) \
+ $(MSGFILTER) `echo $$lang | sed -e 's/.*@//'` \
+ ;; \
+ esac } 2>/dev/null > $$tmpdir/$$lang.new.po \
+ ; then \
if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
rm -f $$tmpdir/$$lang.new.po; \
else \
msgstr ""
"Project-Id-Version: diffutils 2.8.7\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2004-04-21 13:33+0200\n"
"Last-Translator: Ernest Adrogué Calveras <eadrogue@gmx.net>\n"
"Language-Team: Catalan <ca@dodds.net>\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "el valor «%s» per l'opció --bytes no és vàlid"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "el valor «%s» per l'opció --bytes no és vàlid"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "error del programa"
msgid "stack overflow"
msgstr "desbordament de pila"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Error no identificat del sistema"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "fitxer ordinari buit"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "fitxer ordinari"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "directori"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "fitxer especial de blocs"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "fitxer especial de caràcters"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "cua FIFO"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "enllaç simbòlic"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "connector"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "cua de missatges"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semàfor"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "objecte de memòria compartida"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "objecte de memòria tipificada"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "fitxer especial de blocs"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "fitxer especial de caràcters"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "cua FIFO"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "fitxer especial de blocs"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "fitxer especial de caràcters"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "fitxer estrambòtic"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "fitxer especial de blocs"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "connector"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "fitxer estrambòtic"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, fuzzy, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: l'opció «%s» és ambigua\n"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: l'opció «-W %s» és ambigua\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, fuzzy, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: l'opció «--%s» no admet arguments\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, fuzzy, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: l'opció «%c%s» no admet arguments\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, fuzzy, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: l'opció «%s» requereix arguments\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, fuzzy, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: opció no reconeguda «--%s»\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, fuzzy, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: opció no reconeguda «%c%s»\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, fuzzy, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: opció no vàlida -- %c\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, fuzzy, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: l'opció requereix arguments -- %c\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, fuzzy, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: l'opció «-W %s» és ambigua\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, fuzzy, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: l'opció «-W %s» no admet arguments\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, fuzzy, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: l'opció «%s» requereix arguments\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr ""
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr ""
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Succés"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Cap resultat"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "L'expressió regular no és vàlida"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "El caràcter de col·lació no és vàlid"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "El nom de la classe de caràcter no és vàlid"
# al final o al principi? eac
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Hi ha una barra invertida al final"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Hi ha una referència cap enrera no vàlida"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "Hi ha un signe [ o ^[ desaparellat"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Hi ha un signe ( o \\( desaparellat"
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Hi ha un signe \\{ desaparellat"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "El contingut de \\{\\} no és vàlid"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "El límit superior de l'interval no vàlid"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Memòria exhaurida"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "L'expressió regular precedent no és vàlida"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Final prematur de l'expressió regular"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "L'expressió regular és massa gran"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "Hi ha un signe ) o \\) desaparellat"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "No hi ha cap expressió regular prèvia"
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr ""
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Els fitxers %s i %s difereixen\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, fuzzy, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Els fitxers %s i %s difereixen\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "No hi ha cap caràcter de salt de línia al final del fitxer"
msgid "David MacKenzie"
msgstr ""
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, fuzzy, c-format
msgid "Try '%s --help' for more information."
msgstr "Proveu «%s --help» per obtenir més informació."
msgid "options -l and -s are incompatible"
msgstr "les opcions -l i -s són incompatibles"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "error d'escriptura"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "sortida estàndard"
msgstr ""
"SALT1 i SALT2 són el nombre d'octets que es passen per alt de cada fitxer."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr "Si un FITXER és «-» o falta, llegeix l'entrada estàndard."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"L'estat de sortida és 0 si les entrades són iguals, 1 si són diferents\n"
msgid "invalid --bytes value '%s'"
msgstr "el valor «%s» per l'opció --bytes no és vàlid"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, fuzzy, c-format
msgid "missing operand after '%s'"
msgstr "falta un operand després de «%s»"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, fuzzy, c-format
msgid "extra operand '%s'"
msgstr "sobra l'operand «%s»"
# mirar el comentari del codi font
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s i %s difereixen: octet %s, línia %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s i %s difereixen: l'octet %s, línia %s, és %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: final de fitxer a %s\n"
msgid "Len Tower"
msgstr ""
-#: src/diff.c:339
+#: src/diff.c:351
#, fuzzy, c-format
msgid "invalid context length '%s'"
msgstr "el nombre de línies de context «%s» no és vàlid"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "aquest sistema no suporta paginació"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "massa opcions d'etiqueta de fitxer"
-#: src/diff.c:514
+#: src/diff.c:526
#, fuzzy, c-format
msgid "invalid width '%s'"
msgstr "l'amplada «%s» no és vàlida"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "opcions d'amplada incompatibles"
-#: src/diff.c:543
+#: src/diff.c:555
#, fuzzy, c-format
msgid "invalid horizon length '%s'"
msgstr "el nombre de línies d'horitzó «%s» no és vàlid"
-#: src/diff.c:598
+#: src/diff.c:611
#, fuzzy, c-format
msgid "invalid tabsize '%s'"
msgstr "la distància de tabulació «%s» no és vàlida"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "opcions de distància de tabulació incompatibles"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "heu especificat les opcions --from-file i --to-file al mateix temps"
-#: src/diff.c:854
+#: src/diff.c:883
#, fuzzy
msgid " --normal output a normal diff (the default)"
msgstr "--normal Genera un diff normal."
-#: src/diff.c:855
+#: src/diff.c:884
#, fuzzy
msgid "-q, --brief report only when files differ"
msgstr "-q --brief Indica només si els fitxers difereixen o no."
-#: src/diff.c:856
+#: src/diff.c:885
#, fuzzy
msgid "-s, --report-identical-files report when two files are the same"
msgstr "-s --report-identical-files Avisa quan dos fitxers són idèntics."
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
-#: src/diff.c:858
+#: src/diff.c:887
#, fuzzy
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"-w NÚM --width=NÚM No més de NÚM (130 per omissió) caràcters per línia."
-#: src/diff.c:859
+#: src/diff.c:888
#, fuzzy
msgid "-e, --ed output an ed script"
msgstr "-e --ed Genera un script ed."
-#: src/diff.c:860
+#: src/diff.c:889
#, fuzzy
msgid "-n, --rcs output an RCS format diff"
msgstr "-n --rcs Genera un diff en format RCS."
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr ""
-#: src/diff.c:862
+#: src/diff.c:891
#, fuzzy
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"-w NÚM --width=NÚM No més de NÚM (130 per omissió) caràcters per línia."
-#: src/diff.c:863
+#: src/diff.c:892
#, fuzzy
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
"-l --left-column Només escriu les línies en comú a la columna esquerra."
-#: src/diff.c:864
+#: src/diff.c:893
#, fuzzy
msgid " --suppress-common-lines do not output common lines"
msgstr "-s --suppress-common-lines No mostra les línies en comú."
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+"--from-file=FITXER1 Compara FITXER1 amb tots els operands. FITXER1 pot ser\n"
+" un directori."
-#: src/diff.c:871
+#: src/diff.c:900
#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr "-t --expand-tabs Expandeix les tabulacions de la sortida a espais."
-#: src/diff.c:872
+#: src/diff.c:901
#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
"-T --initial-tab Alinea el text de cada línia amb un caràcter de tabulació."
-#: src/diff.c:873
+#: src/diff.c:902
#, fuzzy
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
"--tabsize=NÚM Estableix la distància de tabulació en NÚM (8 per omissió)\n"
" caràcters."
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
-#: src/diff.c:875
+#: src/diff.c:904
#, fuzzy
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr "-l --paginate Pagina la sortida amb el programa «pr»."
-#: src/diff.c:877
+#: src/diff.c:906
#, fuzzy
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
"-r --recursive Compara recursivament qualsevol subdirectori existent."
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr ""
-#: src/diff.c:879
+#: src/diff.c:908
#, fuzzy
msgid "-N, --new-file treat absent files as empty"
msgstr "-N --new-file Considera els fitxers inexistents com si fóssin buits."
-#: src/diff.c:880
+#: src/diff.c:909
#, fuzzy
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
"--unidirectional-new-file Tracta els fitxers primers inexistents com si\n"
" fóssin buits."
-#: src/diff.c:881
+#: src/diff.c:910
#, fuzzy
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
"en\n"
" els noms dels fitxers."
-#: src/diff.c:882
+#: src/diff.c:911
#, fuzzy
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
"--no-ignore-file-name-case Té en compte diferències entre majúscules i\n"
" minúscules en comparar noms de fitxers."
-#: src/diff.c:883
+#: src/diff.c:912
#, fuzzy
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr "-x PAT --exclude=PAT Exclou fitxers que coincideixen amb PAT."
-#: src/diff.c:884
+#: src/diff.c:913
#, fuzzy
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
"-X FITXER --exclude-from=FITXER Exclou fitxers que coincideixen amb\n"
" qualsevol patró de FITXER."
-#: src/diff.c:885
+#: src/diff.c:914
#, fuzzy
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
"-S FITXER --starting-file=FITXER Comença per FITXER quan es comparen\n"
" directoris."
-#: src/diff.c:886
+#: src/diff.c:915
#, fuzzy
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
"--from-file=FITXER1 Compara FITXER1 amb tots els operands. FITXER1 pot ser\n"
" un directori."
-#: src/diff.c:888
+#: src/diff.c:917
#, fuzzy
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
"--to-file=FITXER1 Compara tots els operands amb FITXER2. FITXER2 pot ser\n"
" un directori."
-#: src/diff.c:891
+#: src/diff.c:920
#, fuzzy
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr "-i --ignore-case Ignora diferències entre majúscules i minúscules."
-#: src/diff.c:892
+#: src/diff.c:921
#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
"-E --ignore-tab-expansion Ignora canvis provocats per la distància de\n"
" tabulació."
-#: src/diff.c:893
+#: src/diff.c:922
#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr "-w --ignore-all-space Ignora tot l'espai en blanc."
-#: src/diff.c:894
+#: src/diff.c:923
#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
"-b --ignore-space-change Ignora canvis en la quantitat d'espai en blanc."
-#: src/diff.c:895
+#: src/diff.c:924
#, fuzzy
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w --ignore-all-space Ignora tot l'espai en blanc."
-#: src/diff.c:896
+#: src/diff.c:925
#, fuzzy
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr "-B --ignore-blank-lines Ignora canvis en línies que estan en blanc."
-#: src/diff.c:897
+#: src/diff.c:926
#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I ER --ignore-matching-lines=ER Ignora canvis en línies que continguin ER."
-#: src/diff.c:899
+#: src/diff.c:928
#, fuzzy
msgid "-a, --text treat all files as text"
msgstr "-a --text Tracta tots els fitxers com a text."
-#: src/diff.c:900
+#: src/diff.c:929
#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
"--strip-trailing-cr Treu els caràcters finals de retorn de carro de "
"l'entrada."
-#: src/diff.c:902
+#: src/diff.c:931
#, fuzzy
msgid " --binary read and write data in binary mode"
msgstr "--binary Escriu i llegeix dades en mode binari."
-#: src/diff.c:905
+#: src/diff.c:934
#, fuzzy
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
" amb directives `#ifdef NOM'."
# `grups' o `grups de línies' (no queda prou clar)
-#: src/diff.c:906
+#: src/diff.c:935
#, fuzzy
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
"--TIPUSG-group-format=FMTG Similar, però formata els grups TIPUSG amb FMTG."
-#: src/diff.c:907
+#: src/diff.c:936
#, fuzzy
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr "--line-format=FMTL Similar, però formata totes les línies amb FMTL."
-#: src/diff.c:908
+#: src/diff.c:937
#, fuzzy
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
"--TIPUSL-line-format=FMTL Similar, però formata les línies TIPUSL amb FMTL."
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
-#: src/diff.c:911
+#: src/diff.c:940
#, fuzzy
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
"«unchanged» (inalterades).\n"
" TIPUSG pot ser qualsevol TIPUSL o bé «changed» (alterades)."
-#: src/diff.c:912
+#: src/diff.c:941
#, fuzzy
msgid ""
" GFMT (only) may contain:\n"
" E F-1\n"
" M L+1"
-#: src/diff.c:924
+#: src/diff.c:953
#, fuzzy
msgid ""
" LFMT (only) may contain:\n"
" %[-][AMPLADA][.[PRECISIÓ]]{doxX}n espec. estil printf pel nombre de "
"línia"
-#: src/diff.c:928
+#: src/diff.c:957
#, fuzzy
msgid ""
" Both GFMT and LFMT may contain:\n"
" %c'C' el caràcter C\n"
" %c'\\OOO' el caràcter de codi octal OOO"
-#: src/diff.c:934
+#: src/diff.c:963
#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr "-d --minimal Intenta trobar canvis mínims."
-#: src/diff.c:935
+#: src/diff.c:964
#, fuzzy
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr "--horizon-lines=NÚM No descarta NÚM línies amb prefix i sufix comú."
-#: src/diff.c:936
+#: src/diff.c:965
#, fuzzy
msgid ""
" --speed-large-files assume large files and many scattered small changes"
"-H --speed-large-files Assumeix fitxers grans i molts canvis petits "
"dispersos."
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr "--normal Genera un diff normal."
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:972
#, fuzzy
msgid "-v, --version output version information and exit"
msgstr "-v --version Mostra la versió del programa."
-#: src/diff.c:941
+#: src/diff.c:974
#, fuzzy
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"FITXERS és «FITXER1 FITXER2» o «DIR1 DIR2» o «DIR FITXER...» o «FITXER... "
"DIR»."
-#: src/diff.c:942
+#: src/diff.c:975
#, fuzzy
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
"Amb les opcions --from-file o --to-file no hi ha restriccions de FITXERS."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
#, fuzzy
msgid "If a FILE is '-', read standard input."
msgstr "Si FITXER és «-», llegeix l'entrada estàndard."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Mode d'ús: %s [OPCIÓ]... FITXERS\n"
-#: src/diff.c:954
+#: src/diff.c:987
#, fuzzy
msgid "Compare FILES line by line."
msgstr "Compara fitxers línia per línia."
-#: src/diff.c:988
+#: src/diff.c:1021
#, fuzzy, c-format
msgid "conflicting %s option value '%s'"
msgstr "el valor «%s» per l'opció %s és conflictiu"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "opcions d'estil de sortida conflictives"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "l'amplada «%s» no és vàlida"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Només a %s: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
#, fuzzy
msgid "cannot compare '-' to a directory"
msgstr "no es pot comparar «-» amb un directori"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "l'opció -D no funciona amb directoris"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Subdirectoris comuns: %s i %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "El fitxer %s és un %s mentre que el fitxer %s és un %s\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, fuzzy, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "Els fitxers %s i %s difereixen\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Els fitxers %s i %s són idèntics\n"
msgid "'-' specified for more than one input file"
msgstr "heu especificat «-» per més d'un fitxer d'entrada"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "lectura fallida"
msgid "invalid diff format; invalid change separator"
msgstr "el format diff no és vàlid: el separador de canvis no és vàlid"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "el format diff no és vàlid: l'última línia està incompleta"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, fuzzy, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "no s'ha pogut invocar el programa subsidiari «%s»"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "el format diff no és vàlid: caràcters invàlids al principi de línia"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "error intern: tipus de diff no vàlid passat a la sortida"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "el fitxer d'entrada s'ha encongit"
-#: src/dir.c:158
+#: src/dir.c:156
#, fuzzy, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "no es poden comparar els noms de fitxer «%s» i «%s»"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr ""
"v:\tInclou les línies comunes i informa amb loquacitat\n"
"q:\tSurt.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: opció no reconeguda «--%s»\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "%s: illegal option -- %c\n"
#~ msgstr "%s: opció il·legal -- %c\n"
# Copyright (C) 1998, 2002, 2004, 2010 Free Software Foundation, Inc.
# This file is distributed under the same license as the diffutils package.
# Petr Kočvara <petr.kocvara@nemfm.cz>, 1998, 2002, 2004, 2010
+# Petr Pisar <petr.pisar@atlas.cz, 2014.
#
msgid ""
msgstr ""
-"Project-Id-Version: GNU diffutils 3.0\n"
+"Project-Id-Version: diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
-"PO-Revision-Date: 2010-05-04 17:21+0100\n"
-"Last-Translator: Petr Kočvara <petr.kocvara@nemfm.cz>\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
+"PO-Revision-Date: 2014-04-16 06:33+0200\n"
+"Last-Translator: Petr Pisar <petr.pisar@atlas.cz>\n"
"Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
"Language: cs\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "neplatný argument „%3$s“ přepínače %1$s%2$s"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "neplatný argument „%3$s“ přepínače %1$s%2$s"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "chyba programu"
msgid "stack overflow"
msgstr "přetečení zásobníku"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Neznámá chyba systému"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "obyčejný prázdný soubor"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "obyčejný soubor"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "adresář"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "speciální blokový soubor"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "speciální znakový soubor"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "roura"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "symbolický odkaz"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "soket"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "fronta zpráv"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semafor"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "objekt sdílené paměti"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "objekt typové paměti"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "speciální blokový soubor"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "speciální znakový soubor"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "roura"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "speciální blokový soubor"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "speciální znakový soubor"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "soubor neznámého typu"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "speciální blokový soubor"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "soket"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "soubor neznámého typu"
-#: lib/getopt.c:547 lib/getopt.c:576
-#, fuzzy, c-format
+#: lib/getopt.c:575 lib/getopt.c:604
+#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
-msgstr "%s: přepínač '%s' není jednoznačný\n"
+msgstr "%s: přepínač „%s“ není jednoznačný; možnosti:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: přepínač „-W %s“ není jednoznačný\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
-msgstr "%s: přepínač '--%s' musí být zadán bez argumentu\n"
+msgstr "%s: přepínač „--%s“ musí být zadán bez argumentu\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
-msgstr "%s: přepínač '%c%s' musí být zadán bez argumentu\n"
+msgstr "%s: přepínač „%c%s“ musí být zadán bez argumentu\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
-msgstr "%s: přepínač '--%s' vyžaduje argument\n"
+msgstr "%s: přepínač „--%s“ vyžaduje argument\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
-msgstr "%s: neznámý přepínač '--%s'\n"
+msgstr "%s: neznámý přepínač „--%s“\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
-msgstr "%s: neznámý přepínač '%c%s'\n"
+msgstr "%s: neznámý přepínač „%c%s“\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
-msgstr "%s: neznámý přepínač -- '%c'\n"
+msgstr "%s: neznámý přepínač – „%c“\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
-msgstr "%s: přepínač vyžaduje argument -- '%c'\n"
+msgstr "%s: přepínač vyžaduje argument – „%c“\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
-msgstr "%s: přepínač '-W %s' není jednoznačný\n"
+msgstr "%s: přepínač „-W %s“ není jednoznačný\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
-msgstr "%s: přepínač '-W %s' musí být zadán bez argumentu\n"
+msgstr "%s: přepínač „-W %s“ musí být zadán bez argumentu\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
-msgstr "%s: přepínač '-W %s' vyžaduje argument\n"
+msgstr "%s: přepínač „-W %s“ vyžaduje argument\n"
#. TRANSLATORS:
#. Get translations for open and closing quotation marks.
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "„"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr "“"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Hotovo"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Žádná shoda"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Neplatný regulární výraz"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Neplatný znak porovnání"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Neplatné jméno třídy znaků"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Koncové zpětné lomítko"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Neplatný zpětný odkaz"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "Nepárová [ nebo ]^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Nepárová ( nebo \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Nepárová \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Neplatný obsah \\{\\}"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Neplatný konec rozsahu"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Paměť vyčerpána"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Neplatný předchozí regulární výraz"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Předčasný konec regulárního výrazu"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Regulární výraz je příliš dlouhý"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "Nepárová ) nebo \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Předchozí regulární výraz neexistuje"
msgstr "nelze znovuotevřít %s v módu %s"
#: lib/xstrtol-error.c:63
-#, fuzzy, c-format
+#, c-format
msgid "invalid %s%s argument '%s'"
-msgstr "neplatná hodnota %s%s pÅ\99epÃnaÄ\8de `%s'"
+msgstr "neplatný argument â\80\9e%3$sâ\80\9c pÅ\99epÃnaÄ\8de %1$s%2$s"
#: lib/xstrtol-error.c:68
-#, fuzzy, c-format
+#, c-format
msgid "invalid suffix in %s%s argument '%s'"
-msgstr "neplatná přípona v hodnotě %s%s přepínače `%s'"
+msgstr "neplatná přípona argumentu „%3$s“ přepínače %2$s%1$s"
#: lib/xstrtol-error.c:72
-#, fuzzy, c-format
+#, c-format
msgid "%s%s argument '%s' too large"
-msgstr "hodnota %s%s přepínače `%s' je příliš velká"
+msgstr "argument „%3$s“ přepínače %1$s%2$s je příliš velký"
#: lib/version-etc.c:74
#, c-format
msgstr ""
"Obecná pomoc při používání softwaru GNU:: <http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Soubory %s a %s jsou různé\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Binární soubory %s a %s jsou rozdílné\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Chybí znak konce řádku na konci souboru"
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
-#, fuzzy, c-format
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
+#, c-format
msgid "Try '%s --help' for more information."
-msgstr "Více informací získáte příkazem `%s --help'."
+msgstr "Více informací získáte příkazem „%s --help“."
#: src/cmp.c:137
-#, fuzzy, c-format
+#, c-format
msgid "invalid --ignore-initial value '%s'"
-msgstr "neplatná hodnota --ignore-inital `%s'"
+msgstr "neplatná hodnota --ignore-inital „%s“"
#: src/cmp.c:147
#, c-format
msgid "options -l and -s are incompatible"
msgstr "přepínače -l a -s nejsou kompatibilní"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "zápis selhal"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "standardní výstup"
#: src/cmp.c:161
-#, fuzzy
msgid "-b, --print-bytes print differing bytes"
-msgstr "-b --print-bytes Vypíše rozdílné bajty."
+msgstr "-b --print-bytes vypíše rozdílné bajty"
#: src/cmp.c:162
-#, fuzzy
msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs"
-msgstr "-i N --ignore-initial=N Ignoruje prvních N bajtů na vstupu."
+msgstr "-i, --ignore-initial=N přeskočí prvních N bajtů obou vstupů"
#: src/cmp.c:163
-#, fuzzy
msgid ""
"-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n"
" first SKIP2 bytes of FILE2"
msgstr ""
-" Přeskočí prvních N1 bajtů souboru SOUBOR1 a prvních N2 bajtů souboru "
-"SOUBOR2."
+"-i, --ignore-initial=N1:N2 přeskočí prvních N1 bajtů SOUBORU1 a\n"
+" prvních N2 bajtů SOUBORU2"
#: src/cmp.c:165
-#, fuzzy
msgid ""
"-l, --verbose output byte numbers and differing byte values"
-msgstr "-l --verbose Vypíše pozice a hodnoty všech rozdílných bajtů."
+msgstr "-l --verbose vypíše pozice a hodnoty rozdílných bajtů"
#: src/cmp.c:166
-#, fuzzy
msgid "-n, --bytes=LIMIT compare at most LIMIT bytes"
-msgstr "-n LIMIT --bytes=LIMIT Porovná maximálně LIMIT bajtů."
+msgstr "-n, --bytes=LIMIT porovná nejvýše LIMIT bajtů"
#: src/cmp.c:167
msgid "-s, --quiet, --silent suppress all normal output"
-msgstr ""
+msgstr "-s, --quiet, --silent potlačí veškerý běžný výstup"
#: src/cmp.c:168
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help zobrazí tuto nápovědu a skončí"
#: src/cmp.c:169
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Informace o verzi."
+msgstr "-v --version vypíše údaje o verzi a skončí"
#: src/cmp.c:178
#, c-format
msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n"
-msgstr "Použití: %s [PŘEPÍNAČ]... SOUBOR1 [SOUBOR2 [SKIP1 [SKIP2]]]\n"
+msgstr "Použití: %s [PŘEPÍNAČ]… SOUBOR1 [SOUBOR2 [N1 [N2]]]\n"
#: src/cmp.c:180
msgid "Compare two files byte by byte."
-msgstr "Porovnání dvou soborů bajt po bajtu."
+msgstr "Porovnává dva soubory bajt po bajtu."
#: src/cmp.c:182
-#, fuzzy
msgid ""
"The optional SKIP1 and SKIP2 specify the number of bytes to skip\n"
"at the beginning of each file (zero by default)."
-msgstr "N1 a N2 udávají počet bajtů, které budou ignorovány v každém souboru."
+msgstr ""
+"Volitelné argumenty N1 a N2 udávají počet bajtů, které budou přeskočeny\n"
+"na začátku každého souboru (výchozí je nula)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
+"Povinné argumenty dlouhých přepínačů jsou též povinné u krátkých forem.\n"
#: src/cmp.c:191
msgid ""
"kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n"
"GB 1,000,000,000, G 1,073,741,824, and so on for T, P, E, Z, Y."
msgstr ""
-"Hodnoty SKIP mohou být doplněny následujícími příponami:\n"
-"kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n"
-"GB 1,000,000,000, G 1,073,741,824, a stejně tak i pro T, P, E, Z, Y."
+"Hodnoty N1 a N2 mohou být doplněny následujícími násobnými příponami:\n"
+"kB 1000, K 1024, MB 1 000 000, M 1 048 576,\n"
+"GB 1 000 000 000, G 1 073 741 824 a stejně tak i pro T, P, E, Z, Y."
#: src/cmp.c:194
-#, fuzzy
msgid "If a FILE is '-' or missing, read standard input."
-msgstr ""
-"Pokud SOUBOR bude `-' nebo nebude existovat, bude čten standardní vstup."
+msgstr "Pokud SOUBOR je „-“ nebo nebo chybí, bude čten standardní vstup."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"Návratový kód je roven 0 pokud jsou vstupy shodné, 1 pokud se liší a 2 při "
"chybě."
#: src/cmp.c:240
-#, fuzzy, c-format
+#, c-format
msgid "invalid --bytes value '%s'"
-msgstr "neplatná hodnota přepínače --bytes `%s'"
+msgstr "neplatná hodnota přepínače --bytes „%s“"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
-#, fuzzy, c-format
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
+#, c-format
msgid "missing operand after '%s'"
-msgstr "po `%s' je nesprávný operand"
+msgstr "po „%s“ chybí operand"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
-#, fuzzy, c-format
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
+#, c-format
msgid "extra operand '%s'"
-msgstr "operand `%s' je nadbytečný"
+msgstr "operand „%s“ je nadbytečný"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s se liší: bajt %s, řádek %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s se liší: bajt %s, řádek %s je %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
-msgstr "cmp: EOF v %s\n"
+msgstr "cmp: konec souboru v %s\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:49
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
-#, fuzzy, c-format
+#: src/diff.c:351
+#, c-format
msgid "invalid context length '%s'"
-msgstr "neplatná délka kontextu `%s'"
+msgstr "neplatná délka kontextu „%s“"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "přestránkování není na tomto počítači podporováno"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "příliš mnoho přepínačů popisu souboru"
-#: src/diff.c:514
-#, fuzzy, c-format
+#: src/diff.c:526
+#, c-format
msgid "invalid width '%s'"
-msgstr "nesprávná délka `%s'"
+msgstr "nesprávná délka „%s“"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "konfliktní volby šířky výstupu"
-#: src/diff.c:543
-#, fuzzy, c-format
+#: src/diff.c:555
+#, c-format
msgid "invalid horizon length '%s'"
-msgstr "neplatná délka obzoru `%s'"
+msgstr "neplatná výška obzoru „%s“"
-#: src/diff.c:598
-#, fuzzy, c-format
+#: src/diff.c:611
+#, c-format
msgid "invalid tabsize '%s'"
-msgstr "nesprávná hodnota tabsize `%s'"
+msgstr "nesprávná hodnota --tabsize „%s“"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "konfliktní přepínače tabsize"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "parametry --from-file i to-file použity najednou"
-#: src/diff.c:854
-#, fuzzy
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
-msgstr "--normal Výstup bude v normálním diff formátu."
+msgstr " --normal normálním formát výstupu diff (výchozí)"
-#: src/diff.c:855
-#, fuzzy
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
-msgstr "-q --brief Výstup pouze při rozdílných souborech."
+msgstr "-q --brief výstup pouze při rozdílných souborech"
-#: src/diff.c:856
-#, fuzzy
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
-msgstr "-s --report-identical-files Uvede pouze shodné soubory."
+msgstr "-s --report-identical-files hlásí shodné soubory"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
+"-c, -C POČET, --context[=POČET]\n"
+" vypíše POČET (výchozí je 3) řádků\n"
+" kopírovaného kontextu"
-#: src/diff.c:858
-#, fuzzy
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
-"-w POČ --width=POČ Vypíše maximálně POČ (implicitně 130) znaků na řádek."
+"-u, -U POČET, --unified[=POČET]\n"
+" vypíše POČET (výchozí je 3) řádků\n"
+" unifikovaného kontextu"
-#: src/diff.c:859
-#, fuzzy
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
-msgstr "-e --ed Vytvoří skript pro ed."
+msgstr "-e --ed vypíše skript pro ed"
-#: src/diff.c:860
-#, fuzzy
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
-msgstr "-n --rcs Výstup bude ve formátu RCS diff."
+msgstr "-n --rcs vypíše rozdíl ve formátu RCS"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
-msgstr ""
+msgstr "-y, --side-by-side vypíše ve dvou sloupcích"
-#: src/diff.c:862
-#, fuzzy
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
-"-w POČ --width=POČ Vypíše maximálně POČ (implicitně 130) znaků na řádek."
+"-W, --width=POČET vypíše nejvýše POČET (výchozí je 130)\n"
+" tiskových sloupců"
-#: src/diff.c:863
-#, fuzzy
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
-msgstr "-l --left-column Vypíše pouze levý sloupec společných řádků."
+msgstr ""
+" --left-column vypíše pouze levý sloupec společných řádků"
-#: src/diff.c:864
-#, fuzzy
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines Nevypisuje shodné řádky."
+msgstr " --suppress-common-lines nevypisuje shodné řádky"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
+"-p, --show-c-function ukáže, ve které funkci C se změna nachází"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
-msgstr ""
+msgstr "-F, --show-function-line=RV ukáže poslední řádek odpovídající RV"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+" --label NÁZEV použije NÁZEV místo názvu souboru\n"
+" (lze opakovat)"
-#: src/diff.c:871
-#, fuzzy
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
-msgstr "-t --expand-tabs Ve výstupu převede tabulátory na mezery."
+msgstr "-t, --expand-tabs ve výstupu převede tabulátory na mezery"
-#: src/diff.c:872
-#, fuzzy
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
-msgstr "-T --initial-tab Na začátek řádků se vloží tabulátor."
+msgstr "-T, --initial-tab na začátek řádků se vloží tabulátor"
-#: src/diff.c:873
-#, fuzzy
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
-"--tabsize=POČ Tab zastavuje každých POČ (implicitně 8) tiskových sloupců."
+" --tabsize=POČET tabulátor zastavuje každých POČET\n"
+" (výchozí je 8) tiskových sloupců"
-#: src/diff.c:874
-#, fuzzy
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
-"--suppress-blank-empty Potlačí mezeru nebo tabulátor před prázdnými\n"
-" řádky výstupu."
+" --suppress-blank-empty potlačí mezeru nebo tabulátor před prázdnými\n"
+" řádky výstupu"
-#: src/diff.c:875
-#, fuzzy
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
-msgstr "-l --paginate Výstup projde přes `pr' pro přestránkování."
+msgstr ""
+"-l, --paginate výstup projde přes „pr“ pro přestránkování"
-#: src/diff.c:877
-#, fuzzy
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
-msgstr "-r --recursive Rekurzívní porovnání všech nalezených podadresářů."
+msgstr ""
+"-r --recursive rekurzivně porovná všechny nalezené "
+"podadresáře"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
-msgstr ""
+msgstr " --no-dereference nenásleduje symbolické odkazy"
-#: src/diff.c:879
-#, fuzzy
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
-msgstr "-N --new-file Neexistující soubory považuje za prázdné."
+msgstr ""
+"-N, --new-file neexistující soubory považuje za prázdné"
-#: src/diff.c:880
-#, fuzzy
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
-"--unidirectional-new-file Při porovnávání adresářů považuje neexistující\n"
-" soubory v prvém adresáři za prázdné."
+" --unidirectional-new-file neexistující soubory z prvního adresáře\n"
+" považuje za prázdné"
-#: src/diff.c:881
-#, fuzzy
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
-msgstr "--ignore-file-name-case Ignoruje velikost písmen v názvech souborů."
+msgstr ""
+" --ignore-file-name-case ignoruje velikost písmen v názvech souborů"
-#: src/diff.c:882
-#, fuzzy
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
-"--no-ignore-file-name-case Bere v potaz velikost písmen v názvech souborů."
+" --no-ignore-file-name-case bere v potaz velikost písmen v názvech "
+"souborů"
-#: src/diff.c:883
-#, fuzzy
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
-msgstr "-x VZOR --exclude=VZOR Vynechá soubory odpovídající VZORu."
+msgstr "-x, --exclude=VZOR vynechá soubory odpovídající VZORU"
-#: src/diff.c:884
-#, fuzzy
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
-"-X SOUBOR --exclude-from=SOUBOR Vynechá soubory, které odpovídají\n"
-" libovolnému vzorku ze SOUBORu."
+"-X, --exclude-from=SOUBOR vynechá soubory, které odpovídají\n"
+" libovolnému vzoru ze SOUBORU"
-#: src/diff.c:885
-#, fuzzy
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
-"-S SOUBOR --starting-file=SOUBOR Při porovnávání adresářů začne souborem\n"
-" SOUBOR."
+"-S, --starting-file=SOUBOR při porovnávání adresářů začne SOUBOREM"
-#: src/diff.c:886
-#, fuzzy
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
msgstr ""
-"--from-file=SOUBOR1 Porovná SOUBOR1 se všemi operandy. SOUBOR1 může být\n"
-" adresář."
+" --from-file=SOUBOR1 porovná SOUBOR1 se všemi operandy,\n"
+" SOUBOR1 může být adresář"
-#: src/diff.c:888
-#, fuzzy
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
msgstr ""
-"--to-file=SOUBOR2 Porovná všechny operandy se SOUBOR2. SOUBOR2 může být\n"
-" adresář."
+" --to-file=SOUBOR2 porovná všechny operandy se SOUBOREM2,\n"
+" SOUBOR2 může být adresář"
-#: src/diff.c:891
-#, fuzzy
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
-msgstr "-i --ignore-case Ignoruje velikost písmen v obsahu souboru."
+msgstr ""
+"-i, --ignore-case ignoruje velikost písmen v obsahu souborů"
-#: src/diff.c:892
-#, fuzzy
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
-msgstr "-E --ignore-tab-expansion Ignoruje změny v odsazení tabelátorem."
+msgstr "-E, --ignore-tab-expansion ignoruje změny v odsazení tabulátorem"
-#: src/diff.c:893
-#, fuzzy
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Ignoruje všechny mezery."
+msgstr "-Z, --ignore-trailing-space ignoruje bílá místa na konci řádku"
-#: src/diff.c:894
-#, fuzzy
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b --ignore-space-change Ignoruje změny v počtu mezer."
+msgstr "-b, --ignore-space-change ignoruje změny v počtu bílých míst"
-#: src/diff.c:895
-#, fuzzy
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
-msgstr "-w --ignore-all-space Ignoruje všechny mezery."
+msgstr "-w, --ignore-all-space ignoruje všechna bílá místa"
-#: src/diff.c:896
-#, fuzzy
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
-msgstr "-B --ignore-blank-lines Ignoruje změny v případě prázdných řádků."
+msgstr ""
+"-B, --ignore-blank-lines ignoruje změny v případě prázdných řádků"
-#: src/diff.c:897
-#, fuzzy
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
-"-I RV --ignore-matching-lines=RV Ignoruje změny na všech řádcích\n"
-" odpovídajících RV."
+"-I, --ignore-matching-lines=RV ignoruje změny na všech řádcích\n"
+" odpovídajících RV"
-#: src/diff.c:899
-#, fuzzy
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
-msgstr "-a --text Pokládá všechny soubory za text."
+msgstr "-a, --text pokládá všechny soubory za text"
-#: src/diff.c:900
-#, fuzzy
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Odstraní ukončovací znak CR na vstupu."
+msgstr " --strip-trailing-cr odstraní ukončovací znak CR na vstupu"
-#: src/diff.c:902
-#, fuzzy
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
-msgstr "--binary Čte a zapisuje data v binárním režimu."
+msgstr ""
+" --binary data čte a zapisuje data v binárním režimu"
-#: src/diff.c:905
-#, fuzzy
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
-"-D JMENO --ifdef=JMENO Vypíše sloučený soubor s rozdíly `#ifdef JMENO'."
+"-D, --ifdef=NÁZEV vypíše sloučený soubor s rozdíly „#ifdef "
+"NÁZEV“"
-#: src/diff.c:906
-#, fuzzy
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
-"--GTYPE-group-format=FMTS Podobné, ale formátuje vstupní skupiny GTYPE\n"
-" podle FMTS."
+" --GTYPE-group-format=GFMT formátuje vstupní skupiny GTYPE podle FMTS"
-#: src/diff.c:907
-#, fuzzy
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
-"--line-format=FMTR Podobně, ale formátuje všechny vstupní řádky podle FMTR."
+" --line-format=LFMT formátuje všechny vstupní řádky podle LFMT"
-#: src/diff.c:908
-#, fuzzy
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
-"--LTYPE-line-format=FMTR Podobné, ale formátuje vstupní řádky LTYPE podle "
-"FMTR."
+" --LTYPE-line-format=LFMT formátuje vstupní řádky LTYPE podle LFMT"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
+" Tyto formátovací přepínače poskytují jemnou kontrolu nad výstupem diffu\n"
+" a zobecňují -D/--ifdef."
-#: src/diff.c:911
-#, fuzzy
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
-" LTYPE je `starý', `nový' nebo `nezměněn'. GTYPE je LTYPE nebo `změněn'."
+" LTYPE je „old“ (starý), „new“ (nový) nebo „unchanged“ (nezměněn). GTYPE\n"
+" je LTYPE nebo „changed“ (změněn)."
-#: src/diff.c:912
-#, fuzzy
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" %(A=B?T:E) if A equals B then T else E"
msgstr ""
" GFMT může obsahovat:\n"
-" %< řádky ze SOUBOR1\n"
-" %> řádky ze SOUBOR2\n"
+" %< řádky ze SOUBORU1\n"
+" %> řádky ze SOUBORU2\n"
" %= řádky společné pro SOUBOR1 i SOUBOR2\n"
-" %[-][DELKA][.[PRES]]{doxX}ZNAK formát stylu printf pro ZNAK\n"
+" %[-][DÉLKA][.[PŘESNOST]]{doxX}ZNAK formát stylu printf pro ZNAK\n"
" ZNAKy dále jsou pro novou skupinu, malými písmeny pro starou skupinu:\n"
" F číslo prvního řádku\n"
" L číslo posledního řádku\n"
" N počet řádků = L-F+1\n"
" E F-1\n"
-" M L+1"
+" M L+1\n"
+" %(A=B?T:E) pokud A se rovná B, tak T, jinak E"
-#: src/diff.c:924
-#, fuzzy
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %l contents of line, excluding any trailing newline\n"
" %[-][WIDTH][.[PREC]]{doxX}n printf-style spec for input line number"
msgstr ""
-" LFMT může obsahovat:\n"
+" LFMT (pouze) smí obsahovat:\n"
" %L obsah řádku\n"
-" %l obsah řádku, s vyjímkou znaku konce řádku\n"
-" %[-][ŠÍŘKA][.[PŘES]]{doxX}c formát stylu printf pro číslo vstupního "
-"řádku"
+" %l obsah řádku, bez znaku konce řádku\n"
+" %[-][ŠÍŘKA][.[PŘESNOST]]{doxX}n formát stylu printf pro číslo "
+"vstupního\n"
+" řádku"
-#: src/diff.c:928
-#, fuzzy
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO' the character with octal code OOO\n"
" C the character C (other characters represent themselves)"
msgstr ""
-" Jeden z GFMT nebo LFMT může obsahovat:\n"
+" Jak GFMT, tak i LFMT smí obsahovat:\n"
" %% %\n"
" %c'C' jeden znak C\n"
-" %c'\\000' znak s osmičkovým kódem 000"
+" %c'\\000' znak s osmičkovým kódem 000\n"
+" C znak C (ostatní znaky zastupují samy sebe)"
-#: src/diff.c:934
-#, fuzzy
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr "-d --minimal Pokusí se nalézt nejmenší sadu změn."
+msgstr "-d, --minimal pokusí se nalézt nejmenší sadu změn"
-#: src/diff.c:935
-#, fuzzy
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
-"--horizon-lines=POČET Ponechá POČET shodných řádků předpony a přípony."
+" --horizon-lines=POČET\n"
+" ponechá POČET shodných řádků předpony a přípony"
-#: src/diff.c:936
-#, fuzzy
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
-"-H --speed-large-files Předpokládá velké soubory a mnoho rozptýlených\n"
-" drobných změn."
+" --speed-large-files předpokládá velké soubory a mnoho rozptýlených\n"
+" drobných změn"
-#: src/diff.c:938
-msgid " --help display this help and exit"
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:967
#, fuzzy
-msgid "-v, --version output version information and exit"
-msgstr "-v --version Informace o verzi."
+msgid " or 'auto' (the default)"
+msgstr " --normal normálním formát výstupu diff (výchozí)"
-#: src/diff.c:941
-#, fuzzy
+#: src/diff.c:968
msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+" --palette=PALETTE specify the colors to use when --color is active"
msgstr ""
-"SOUBORY jsou `SOUBOR1 SOUBOR2' nebo `ADRESAR1 ADRESAR2' nebo\n"
-"`ADRESAR SOUBOR...' nebo `SOUBOR... ADRESAR'."
-#: src/diff.c:942
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
+msgid " --help display this help and exit"
+msgstr " --help zobrazí tuto nápovědu a skončí"
+
+#: src/diff.c:972
+msgid "-v, --version output version information and exit"
+msgstr "-v, --version vypíše údaje o verzi a skončí"
+
+#: src/diff.c:974
#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
+msgstr ""
+"SOUBORY jsou „SOUBOR1 SOUBOR2“ nebo „ADRESÁŘ1 ADRESÁŘ2' nebo\n"
+"„ADRESÁŘ SOUBOR…“ nebo „SOUBOR… ADRESÁŘ“."
+
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
-"Pokud je uveden --from-file nebo --to-file, pak nejsou u SOUBORů žádná "
+"Pokud je uveden --from-file nebo --to-file, pak nejsou u SOUBORŮ žádná "
"omezení."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
-#, fuzzy
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
-msgstr "Pokud SOUBOR bude `-', bude čten standardní vstup."
+msgstr "Pokud SOUBOR bude „-“, bude čten standardní vstup."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
-msgstr "Použití: %s [PŘEPÍNAČ]... SOUBORY\n"
+msgstr "Použití: %s [PŘEPÍNAČ]… SOUBORY\n"
-#: src/diff.c:954
-#, fuzzy
+#: src/diff.c:987
msgid "Compare FILES line by line."
-msgstr "Porovnání souborů řádek po řádku."
+msgstr "Porovnává SOUBORY řádek po řádku."
-#: src/diff.c:988
-#, fuzzy, c-format
+#: src/diff.c:1021
+#, c-format
msgid "conflicting %s option value '%s'"
-msgstr "pro přepínač %s konfliktní hodnota `%s'"
+msgstr "konfliktní hodnota „%2$s“ přepínače „%1$s“"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "konfliktní přepínače pro styl výstupu"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "nesprávná délka „%s“"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Pouze v %s: %s\n"
-#: src/diff.c:1192
-#, fuzzy
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
-msgstr "`-' s adresářem nelze porovnat"
+msgstr "„-“ s adresářem nelze porovnat"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "-D přepínač nepodporuje práci s adresáři"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Společné podadresáře: %s a %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
-msgstr "Soubor %s je %s pokud soubor %s je %s\n"
+msgstr "Soubor %s je %s zatímco soubor %s je %s\n"
-#: src/diff.c:1314
-#, fuzzy, c-format
+#: src/diff.c:1362
+#, c-format
msgid "Symbolic links %s and %s differ\n"
-msgstr "Soubory %s a %s jsou různé\n"
+msgstr "Symbolické odkazy %s a %s se liší\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Soubory %s a %s jsou identické\n"
msgstr "nekompatibilní přepínače"
#: src/diff3.c:353
-#, fuzzy
msgid "'-' specified for more than one input file"
-msgstr "`-' zadáno pro více než jeden vstupní soubor"
+msgstr "„-“ zadáno pro více než jeden vstupní soubor"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "čtení selhalo"
#: src/diff3.c:428
-#, fuzzy
msgid "-A, --show-all output all changes, bracketing conflicts"
-msgstr "-A --show-all Vypíše všechny rozdíly, konflikty v závorkách."
+msgstr ""
+"-A, --show-all vypíše všechny rozdíly, konflikty v závorkách"
#: src/diff3.c:430
-#, fuzzy
msgid ""
"-e, --ed output ed script incorporating changes\n"
" from OLDFILE to YOURFILE into MYFILE"
msgstr ""
-"-e --ed Vypíše nespojené změny ze STARYSOUBOR k VASSOUBOR do MUJSOUBOR."
+"-e, --ed vypíše ed skript zahrnující změny mezi\n"
+" STARÝM_SOUBOREM a VAŠÍM_SOUBOREM do MÉHO_SOUBORU"
#: src/diff3.c:432
-#, fuzzy
msgid "-E, --show-overlap like -e, but bracket conflicts"
-msgstr "-E --show-overlap Vypíše nesloučené změny, konflikty v závorkách."
+msgstr "-E, --show-overlap jako -e, ale konflikty umístí do závorek"
#: src/diff3.c:433
-#, fuzzy
msgid ""
"-3, --easy-only like -e, but incorporate only nonoverlapping "
"changes"
-msgstr "-3 --easy-only Vypíše nesloučené nepřekrývající se změny."
+msgstr ""
+"-3, --easy-only jako -e, ale zahrne jen nepřekrývající se změny"
#: src/diff3.c:434
-#, fuzzy
msgid ""
"-x, --overlap-only like -e, but incorporate only overlapping changes"
-msgstr "-x --overlap-only Vypíše překrývající se změny."
+msgstr ""
+"-x, --overlap-only jako -e, ale zahrne jen překrývající se změny"
#: src/diff3.c:435
msgid "-X like -x, but bracket conflicts"
-msgstr ""
+msgstr "-X jako -x, ale konflikty umístí do závorek"
#: src/diff3.c:436
-#, fuzzy
msgid "-i append 'w' and 'q' commands to ed scripts"
-msgstr "-i Přidá příkazy `w' a `q' do skriptů pro ed."
+msgstr "-i přidá příkazy „w“ a „q“ do skriptů pro ed"
#: src/diff3.c:438
msgid ""
"-m, --merge output actual merged file, according to\n"
" -A if no other options are given"
msgstr ""
+"-m, --merge vypíše vlastní spojený soubor podle -A, nebyly-"
+"li\n"
+" uvedeny další přepínače"
#: src/diff3.c:441
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Pokládá všechny soubory za text."
+msgstr "-a, --text pokládá všechny soubory za text"
#: src/diff3.c:442
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Odstraní ukončovací znak CR na vstupu."
+msgstr " --strip-trailing-cr odstraní ukončovací znak CR na vstupu"
#: src/diff3.c:443
-#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
-msgstr "-T --initial-tab Na začátek řádků se vloží tabulátor."
+msgstr "-T, --initial-tab na začátek řádků se vloží tabulátor"
#: src/diff3.c:444
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
-msgstr "--diff-program=PROGRAM Použij PROGRAM k porovnání souborů."
+msgstr " --diff-program=PROGRAM použije PROGRAM k porovnání souborů"
#: src/diff3.c:445
msgid ""
"-L, --label=LABEL use LABEL instead of file name\n"
" (can be repeated up to three times)"
msgstr ""
+"-L, --label=NÁZEV použije NÁZEV namísto názvu souboru\n"
+" (lze opakovat až třikrát)"
#: src/diff3.c:448
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help zobrazí tuto nápovědu a skončí"
#: src/diff3.c:449
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Informace o verzi."
+msgstr "-v, --version vypíše údaje o verzi a skončí"
#: src/diff3.c:458
#, c-format
msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n"
-msgstr "Použití: %s [PŘEPÍNAČ]... MUJSOUBOR STARYSOUBOR VASSOUBOR\n"
+msgstr "Použití: %s [PŘEPÍNAČ]… MŮJ_SOUBOR STARÝ_SOUBOR VÁŠ_SOUBOR\n"
#: src/diff3.c:460
msgid "Compare three files line by line."
"and output the actual merged file. For unusual input, this is more\n"
"robust than using ed.\n"
msgstr ""
+"\n"
+"Výchozí výstupní formát je více méně člověkem čitelná reprezentace změn.\n"
+"\n"
+"Přepínače -e, -E, -x, -X (a odpovídající dlouhé přepínače) způsobí vypsání\n"
+"skriptu pro program ed namísto výchozího formátu.\n"
+"\n"
+"Nakonec přepínač -m (--merge) způsobí, že diff3 provede spojení sám a "
+"vypíše\n"
+"vlastní spojený soubor. V případě neobvyklého vstupu, je toto spolehlivější\n"
+"způsob než použití programu ed.\n"
#: src/diff3.c:482
msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble."
msgid "invalid diff format; invalid change separator"
msgstr "neplatný formát diff souboru; neplatný oddělovač změny"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "neplatný formát diff souboru; nekompletní poslední řádek"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
-#, fuzzy, c-format
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
+#, c-format
msgid "subsidiary program '%s' could not be invoked"
-msgstr "pomocný program `%s' nelze spustit"
+msgstr "pomocný program „%s“ nebylo možné zavolat"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "neplatný formát diff souboru; nesprávné úvodní znaky na řádku"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "vnitřní chyba: nesprávný typ diffu pro výstup"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "vstupní soubor se zmenšil"
-#: src/dir.c:158
-#, fuzzy, c-format
+#: src/dir.c:156
+#, c-format
msgid "cannot compare file names '%s' and '%s'"
-msgstr "nemohu porovnat jména souborů `%s' a `%s'"
+msgstr "nelze porovnat názvy souborů „%s“ a „%s“"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: smyčka v rekurzi adresářů"
msgstr "Thomas Lord"
#: src/sdiff.c:173
-#, fuzzy
msgid ""
"-o, --output=FILE operate interactively, sending output to FILE"
msgstr ""
-"-o SOUBOR --output=SOUBOR Interaktivní práce, výstup půjde do SOUBORu."
+"-o, --output=SOUBOR interaktivní režim, výstup půjde do SOUBORU"
#: src/sdiff.c:175
-#, fuzzy
msgid ""
"-i, --ignore-case consider upper- and lower-case to be the same"
-msgstr "-i --ignore-case Nerozlišuje velká a malá písmena."
+msgstr "-i, --ignore-case nerozlišuje velká a malá písmena"
#: src/sdiff.c:176
-#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
-msgstr "-E --ignore-tab-expansion Ignoruje změny v odsazení tabelátorem."
+msgstr "-E, --ignore-tab-expansion ignoruje změny v odsazení tabulátorem"
#: src/sdiff.c:177
-#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Ignoruje všechny mezery."
+msgstr ""
+"-Z, --ignore-trailing-space ignoruje všechny bílé znaky na konci řádku"
#: src/sdiff.c:178
-#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b --ignore-space-change Ignoruje změny v počtu mezer."
+msgstr "-b, --ignore-space-change ignoruje změny v počtu bílých znaků"
#: src/sdiff.c:179
-#, fuzzy
msgid "-W, --ignore-all-space ignore all white space"
-msgstr "-W --ignore-all-space Ignoruje všechny mezery."
+msgstr "-W, --ignore-all-space ignoruje všechny bílé znaky"
#: src/sdiff.c:180
-#, fuzzy
msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank"
-msgstr "-B --ignore-blank-lines Ignoruje změny v případě prázdných řádků."
+msgstr "-B, --ignore-blank-lines ignoruje změny v případě prázdných řádků"
#: src/sdiff.c:181
-#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE"
msgstr ""
-"-I RV --ignore-matching-lines=RV Ignoruje změny na všech řádcích\n"
-" odpovídajících RV."
+"-I, --ignore-matching-lines=RV ignoruje změny na všech řádcích\n"
+" odpovídajících RV"
#: src/sdiff.c:182
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Odstraní ukončovací znak CR na vstupu."
+msgstr " --strip-trailing-cr odstraní ukončovací znak CR na vstupu"
#: src/sdiff.c:183
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Pokládá všechny soubory za text."
+msgstr "-a, --text pokládá všechny soubory za text"
#: src/sdiff.c:185
-#, fuzzy
msgid ""
"-w, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
-"-w POČ --width=POČ Vypíše maximálně POČ (implicitně 130) znaků na řádek."
+"-w, --width=POČET vypíše nejvýše POČET (výchozí je 130) "
+"tiskových\n"
+" sloupců"
#: src/sdiff.c:186
-#, fuzzy
msgid ""
"-l, --left-column output only the left column of common lines"
-msgstr "-l --left-column Vypíše pouze levý sloupec společných řádků."
+msgstr ""
+"-l, --left-column vypíše pouze levý sloupec společných řádků"
#: src/sdiff.c:187
-#, fuzzy
msgid "-s, --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines Nevypisuje shodné řádky."
+msgstr "-s, --suppress-common-lines nevypisuje společné řádky"
#: src/sdiff.c:189
-#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
-msgstr "-t --expand-tabs Ve výstupu převede tabulátory na mezery."
+msgstr "-t, --expand-tabs ve výstupu převede tabulátory na mezery"
#: src/sdiff.c:190
-#, fuzzy
msgid ""
" --tabsize=NUM tab stops at every NUM (default 8) print columns"
msgstr ""
-"--tabsize=POČ Tab zastavuje každých POČ (implicitně 8) tiskových sloupců."
+" --tabsize=POČET tabulátor zastavuje každých POČET (výchozí je "
+"8)\n"
+" tiskových sloupců"
#: src/sdiff.c:192
-#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr "-d --minimal Pokusí se nalézt nejmenší sadu změn."
+msgstr "-d, --minimal pokusí se nalézt nejmenší sadu změn"
#: src/sdiff.c:193
-#, fuzzy
msgid ""
"-H, --speed-large-files assume large files, many scattered small changes"
msgstr ""
-"-H --speed-large-files Předpokládá velké soubory a mnoho rozptýlených\n"
-" drobných změn."
+"-H, --speed-large-files předpokládá velké soubory a mnoho rozptýlených\n"
+" drobných změn"
#: src/sdiff.c:194
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
-msgstr "--diff-program=PROGRAM Použij PROGRAM k porovnání souborů."
+msgstr " --diff-program=PROGRAM použije PROGRAM k porovnání souborů"
#: src/sdiff.c:196
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help zobrazí tuto nápovědu a skončí"
#: src/sdiff.c:197
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Informace o verzi."
+msgstr "-v, --version vypíše údaje o verzi a skončí"
#: src/sdiff.c:206
#, c-format
msgid "Usage: %s [OPTION]... FILE1 FILE2\n"
-msgstr "Použití: %s [PŘEPÍNAČ]... SOUBOR1 SOUBOR2\n"
+msgstr "Použití: %s [PŘEPÍNAČ]… SOUBOR1 SOUBOR2\n"
#: src/sdiff.c:208
-#, fuzzy
msgid "Side-by-side merge of differences between FILE1 and FILE2."
-msgstr "Aplikace změn v souboru v módu `vedle sebe`."
+msgstr "Spojí změny mezi SOUBOREM1 a SOUBOREM2 v režimu „vedle sebe“."
#: src/sdiff.c:329
msgid "cannot interactively merge standard input"
"v:\tUpozorní na vložení společných řádků.\n"
"q:\tUkončení.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: neznámý přepínač „--%s“\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
#~ msgstr "-i N1:N2 --ignore-initial=N1:N2"
msgstr ""
"Project-Id-Version: diffutils-3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2012-11-03 14:34+0100\n"
"Last-Translator: Ask Hjorth Larsen <asklarsen@gmail.com>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 0.9.5\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "ugyldigt %s%s-argument '%s'"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "ugyldigt %s%s-argument '%s'"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "programfejl"
msgid "stack overflow"
msgstr "stakoverløb"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Ukendt systemfejl"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "almindelig tom fil"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "almindelig fil"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "katalog"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "blok-specialfil"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "tegn-specialfil"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "symbolsk lænke"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "stik"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "meddelelseskø"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "signal"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "delt hukommelses-objekt"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "typeangivet hukommelses-objekt"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "blok-specialfil"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "tegn-specialfil"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "blok-specialfil"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "tegn-specialfil"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "mystisk fil"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "blok-specialfil"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "stik"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "mystisk fil"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: tilvalget '%s' er flertydigt; muligheder:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: tilvalget '-W %s' er flertydigt\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: tilvalg '--%s' tillader ikke et argument\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: tilvalg '%c%s' tillader ikke et argument\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: tilvalg '--%s' kræver et argument\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: ukendt tilvalg '--%s'\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: ukendt tilvalg '%c%s'\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: ugyldigt tilvalg -- '%c'\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: tilvalg kræver et argument -- '%c'\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: tilvalget '-W %s' er flertydigt\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: tilvalget '-W %s' tillader ikke et argument\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: tilvalget '-W %s' tillader ikke et argument\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "'"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr "'"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Succes"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Ingen match"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Ugyldigt regulært udtryk"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Ugyldig sammenlignings-tegn"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Ugyldigt navn på tegn-klasse"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Efterstillet backslash"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Ugyldig bagud-reference"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "Uparret [ eller [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Uparret ( eller \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Uparret \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Ugyldigt indhold af \\{\\}"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Ugyldig område-afslutning"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Hukommelse opbrugt"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Ugyldigt foranstillet regulært udtryk"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "For tidlig afslutning på regulært udtryk"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "For stort regulært udtryk"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "Uparret ) eller \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Intet foranstillet regulært udtryk"
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr "Generel hjælp til GNU-programmer: <http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Filerne %s og %s er forskellige\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Binære filer %s og %s er forskellige\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Intet linjeskift ved filafslutning"
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, c-format
msgid "Try '%s --help' for more information."
msgstr "Prøv '%s --help' for mere information."
msgid "options -l and -s are incompatible"
msgstr "tilvalgene -l og -s er inkompatible"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "skrivning mislykkedes"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "standard-ud"
"De valgfri SPRING1 og SPRING2 angiver antallet af byte, der skal springes\n"
"over ved begyndelsen af hver fil (normalt 0)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr "Såfremt en FIL er '-' eller mangler, læses fra standard-ind."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"Slutstatus er 0 hvis inddata er ens, 1 hvis ikke, og 2 hvis der er problemer."
msgid "invalid --bytes value '%s'"
msgstr "ugyldig værdi '%s' for --bytes"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, c-format
msgid "missing operand after '%s'"
msgstr "manglende operand efter '%s'"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, c-format
msgid "extra operand '%s'"
msgstr "ekstra operand '%s'"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s afviger: byte %s, linje %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s afviger: tegn %s, linje %s er %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: filafslutning på %s\n"
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
+#: src/diff.c:351
#, c-format
msgid "invalid context length '%s'"
msgstr "ugyldig kontekstlængde '%s'"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "paginering understøttes ikke af denne vært"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "for mange fil-mærke tilvalg"
-#: src/diff.c:514
+#: src/diff.c:526
#, c-format
msgid "invalid width '%s'"
msgstr "ugyldig bredde '%s'"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "modstridende breddeangivelser"
-#: src/diff.c:543
+#: src/diff.c:555
#, c-format
msgid "invalid horizon length '%s'"
msgstr "ugyldig horisontlængde '%s'"
-#: src/diff.c:598
+#: src/diff.c:611
#, c-format
msgid "invalid tabsize '%s'"
msgstr "ugyldig tabulatorbredde '%s'"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "modstridende angivelser af tabulatorbredde"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "både --from-file og --to-file er angivet"
-#: src/diff.c:854
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
msgstr " --normal udskriv en almindelig diff (forvalg)"
-#: src/diff.c:855
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
msgstr "-q, --brief angiv kun når filerne er forskellige"
-#: src/diff.c:856
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
msgstr "-s, --report-identical-files rapportér hvis to filer er ens"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
"kopieret\n"
" kontekst"
-#: src/diff.c:858
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"-u, -U ANTAL, --unified[=ANTAL] Udskriv højst ANTAL (normalt 3) linjer\n"
" forenet kontekst"
-#: src/diff.c:859
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
msgstr "-e, --ed udskriv et ed-script"
-#: src/diff.c:860
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
msgstr "-n, --rcs udskriv en diff i RCS-format"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr "-y, --side-by-side udskriv i to kolonner"
-#: src/diff.c:862
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"-W, --width=ANTAL udskriv højst ANTAL (normalt 130) kolonner"
-#: src/diff.c:863
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
" --left-column udskriv kun venstre kolonne i fælles linjer"
-#: src/diff.c:864
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
msgstr " --suppress-common-lines udskriv ikke fælles linjer"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr "-p, --show-c-function vis hvilken C-funktion hver ændring er i"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr "-F, --show-function-line=RE vis den seneste linje der matcher RE"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
" --label MÆRKAT brug MÆRKAT frem for filnavn\n"
" (kan gentages)"
-#: src/diff.c:871
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr ""
"-t, --expand-tabs lav tabulatorer om til mellemrum i udskrift"
-#: src/diff.c:872
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
"-T, --initial-tab få tabulatorer på linje ved at forudstille en\n"
" tabulator"
-#: src/diff.c:873
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
" --tabsize=ANTAL tabulatorstop for hver ANTAL (normalt 8) "
"kolonner"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
" --suppress-blank-empty intet mellemrum eller tabulator før tomme\n"
" ud-linjer"
-#: src/diff.c:875
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
"-l, --paginate led uddata gennem 'pr' for at sideinddele det"
-#: src/diff.c:877
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
"-r, --recursive sammenlign alle fundne underkataloger "
"rekursivt"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr " --no-dereference følg ikke symbolske lænker"
-#: src/diff.c:879
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
msgstr ""
"-N, --new-file behandl manglende filer som var de tomme"
-#: src/diff.c:880
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
" --unidirectional-new-file behandl manglende førstefiler som var de "
"tomme"
-#: src/diff.c:881
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
" --ignore-file-name-case ingen forskel på store og små bogstaver ved\n"
" sammenligning af filnavne"
-#: src/diff.c:882
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
" --no-ignore-file-name-case skeln mellem store og små bogstaver ved\n"
" sammenligning af filnavne"
-#: src/diff.c:883
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr "-x, --exclude=MØNSTER udelad filer, det matcher MØNSTER"
-#: src/diff.c:884
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
"-X, --exclude-from=FIL udelad filer, der matcher ethvert mønster i "
"FIL"
-#: src/diff.c:885
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
"-S, --starting-file=FIL start med FIL, når der sammenlignes kataloger"
-#: src/diff.c:886
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
" --from-file=FIL1 sammenlign FIL1 med alle operander; FIL1 må\n"
" godt være et katalog"
-#: src/diff.c:888
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
"må\n"
" godt være et katalog"
-#: src/diff.c:891
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr "-i, --ignore-case ignorér versalforskelle i filindhold"
-#: src/diff.c:892
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
"-E, --ignore-tab-expansion ignorér ændringer der skyldes\n"
" tabulatoromsætning"
-#: src/diff.c:893
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr ""
"-Z, --ignore-trailing-space ignorér blanke tegn ved linjens afslutning"
-#: src/diff.c:894
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
"-b, --ignore-space-change ignorér ændringer i mængden af blanke tegn"
-#: src/diff.c:895
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w, --ignore-all-space ignorér alle blanke tegn"
-#: src/diff.c:896
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr "-B, --ignore-blank-lines ignorér ændringer med kun tomme linjer"
-#: src/diff.c:897
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I, --ignore-matching-lines=MØNSTER ignorér ændringer, hvis linjer alle\n"
" matcher MØNSTER"
-#: src/diff.c:899
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
msgstr "-a, --text behandl alle filer som tekst"
-#: src/diff.c:900
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr " --strip-trailing-cr fjern afsluttende vognretur i inddata"
-#: src/diff.c:902
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr " --binary læs og skriv data binært"
-#: src/diff.c:905
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
"-D, --ifdef=NAVN udskriv flettet fil med '#ifdef NAVN'-differ"
-#: src/diff.c:906
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr " --GTYPE-group-format=GFMT formatér GTYPE-inputgrupper med GFMT"
-#: src/diff.c:907
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr " --line-format=LFMT formatér alle inputlinjer med LFMT"
-#: src/diff.c:908
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr " --LTYPE-line-format=LFMT formatér LTYPE-inputlinjer med LFMT"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
" Disse formattilvalg giver finkontrol over udskriften af diff, og\n"
" generaliserer -D/--ifdef."
-#: src/diff.c:911
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" LTYPE er 'old' (gammel), 'new' (ny) eller 'unchanged' (uændret).\n"
# hvad er PREC? Det står ingen steder i filen. PRÆC blev brugt i tidligere
# oversættelse, så beholder. -Ask
-#: src/diff.c:912
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" M L+1\n"
" %(A=B?T:E) hvis A lig med B så T, ellers E"
-#: src/diff.c:924
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %l indhold af linje, undtagen eventuelt følgende linjeskift\n"
" %[-][BREDDE][.[PRÆC]]{doxX}n printf-angivelse for inputlinjenummer"
-#: src/diff.c:928
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO' tegnet med oktalkode OOO\n"
" C tegnet C (andre tegn repræsenterer sig selv)"
-#: src/diff.c:934
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr ""
"-d, --minimal grundigt forsøg på at finde et mindre antal "
"ændringer"
-#: src/diff.c:935
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
" --horizon-lines=ANTAL behold ANTAL linjer af fælles præfiks og suffiks"
-#: src/diff.c:936
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
" --speed-large-files antag store filer og mange spredte, små ændringer"
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr " --normal udskriv en almindelig diff (forvalg)"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr " --help vis denne hjælpetekst og afslut"
-#: src/diff.c:939
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
msgstr "-v, --version vis versionsoplysninger og afslut"
-#: src/diff.c:941
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+#: src/diff.c:974
+#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"FILER er 'FIL1 FIL2' eller 'KATALOG1 KATALOG2' eller 'KATALOG FIL...' eller "
"'FIL... KATALOG'."
-#: src/diff.c:942
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
"Hvis --from-file eller --to-file er givet, er der ingen restriktioner på "
"FILer."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
msgstr "Såfremt en FIL er '-', læses fra standard-ind."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Brug: %s [TILVALG]... FILER\n"
-#: src/diff.c:954
+#: src/diff.c:987
msgid "Compare FILES line by line."
msgstr "Sammenlign filer linjevis."
-#: src/diff.c:988
+#: src/diff.c:1021
#, c-format
msgid "conflicting %s option value '%s'"
msgstr "modstridende værdi for %s-tilvalget: '%s'"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "modstridende valg af uddata-stil"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "ugyldig bredde '%s'"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Kun i %s: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
msgstr "kan ikke sammenligne '-' med et katalog"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "-D tilvalg understøttes ikke for kataloger"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Identiske underkataloger: %s og %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "Filen %s er en %s mens filen %s er en %s\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "De symbolske lænker %s og %s er forskellige\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Filerne %s og %s er identiske\n"
msgid "'-' specified for more than one input file"
msgstr "'-' angivet for mere end én ind-fil"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "læsning mislykkedes"
msgid "invalid diff format; invalid change separator"
msgstr "ugyldigt diff format; ugyldig ændrings-separator"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "ugyldigt diff format; uafsluttet sidste linje"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "hjælpeprogrammet '%s' kunne ikke køres"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "ugyldigt diff format; forkerte linje-begyndelses-tegn"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "intern fejl: ugyldig diff type sendt til uddata"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "ind-fil formindskedes"
-#: src/dir.c:158
+#: src/dir.c:156
#, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "kan ikke sammenligne filnavnene '%s' og '%s'"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: rekursiv katalogløkke"
"v:\tMedtag og vis fælles linjer.\n"
"q:\tAfslut.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: ukendt tilvalg '--%s'\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
#~ msgstr "-i SPRING1:SPRING2 --ignore-initial=SPRING1:SPRING2"
# German messages for GNU diffutils.
# This file is distributed under the same license as the diffutils package.
-# Copyright (C) 1996, 2001, 2002 Free Software Foundation, Inc.
+# Copyright (C) 1996, 2001, 2002, 2012, 2013 Free Software Foundation, Inc.
# Karl Eichwalder <keichwa@gmx.net>, 1996
# Martin von Löwis <martin@v.loewis.de>, 1997, 2001, 2002
# Jakob Kramer <jakob.kramer@gmx.de>, 2012, 2013.
+# Benno Schulenberg <bensberg@justemail.net>, 2013.
+# Mario Blättermann <mario.blaettermann@gmail.com>, 2014.
#
msgid ""
msgstr ""
"Project-Id-Version: GNU diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
-"PO-Revision-Date: 2013-03-08 22:40+0100\n"
-"Last-Translator: Jakob Kramer <jakob.kramer@gmx.de>\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
+"PO-Revision-Date: 2014-04-20 20:43+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"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8-bit\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.5.4\n"
+
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "ungültiges %s%s-Argument »%s«"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "ungültiges %s%s-Argument »%s«"
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgid "stack overflow"
msgstr "Stacküberlauf"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Unbekannter Systemfehler"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "normale leere Datei"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "normale Datei"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "Verzeichnis"
-#: lib/file-type.c:44
+#: lib/file-type.c:46
+msgid "symbolic link"
+msgstr "Symbolische Verknüpfung"
+
+#: lib/file-type.c:52
+msgid "message queue"
+msgstr "Nachrichten-Warteschlange"
+
+#: lib/file-type.c:55
+msgid "semaphore"
+msgstr "Semaphor"
+
+#: lib/file-type.c:58
+msgid "shared memory object"
+msgstr "gemeinsames Speicherobjekt"
+
+#: lib/file-type.c:61
+msgid "typed memory object"
+msgstr "typisiertes Speicherobjekt"
+
+#: lib/file-type.c:66
msgid "block special file"
msgstr "Blockorientiertes Gerät"
-#: lib/file-type.c:47
+#: lib/file-type.c:69
msgid "character special file"
msgstr "Zeichenorientiertes Gerät"
-#: lib/file-type.c:50
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
msgid "fifo"
msgstr "FIFO"
-#: lib/file-type.c:53
-msgid "symbolic link"
-msgstr "symbolische Verknüpfung"
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "Socket"
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "Blockorientiertes Gerät"
-#: lib/file-type.c:59
-msgid "message queue"
-msgstr "Nachrichten-Warteschlange"
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "Zeichenorientiertes Gerät"
-#: lib/file-type.c:62
-msgid "semaphore"
-msgstr "Semaphor"
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
-#: lib/file-type.c:65
-msgid "shared memory object"
-msgstr "gemeinsames Speicherobjekt"
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "seltsame Datei"
-#: lib/file-type.c:68
-msgid "typed memory object"
-msgstr "typisiertes Speicherobjekt"
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "Blockorientiertes Gerät"
-#: lib/file-type.c:70
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "Socket"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "seltsame Datei"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: Option »%s« ist mehrdeutig, Möglichkeiten:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: Option »-W %s« ist mehrdeutig\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
-msgstr "%s: Option »--%s« verlangt kein Argument.\n"
+msgstr "%s: Option »--%s« erlaubt kein Argument.\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: Option »%c%s« erlaubt kein Argument.\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: Option »%s« verlangt ein Argument.\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: Unbekannte Option »--%s«.\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: Unbekannte Option »%c%s«.\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: ungültige Option -- »%c«\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: Option verlangt ein Argument -- »%c«\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: Option »-W %s« ist mehrdeutig\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: Option »-W %s« erlaubt kein Argument.\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: Option »-W %s« verlangt ein Argument.\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "»"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr "«"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Erfolg."
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Keine Übereinstimmung."
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Ungültiger regulärer Ausdruck."
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Ungültiges Sortierzeichen."
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Ungültiger Name für Zeichenklasse."
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Extra Backslash."
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Ungültige Rückreferenz."
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "Öffnende [ oder [^ ohne schließende."
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Öffnende ( oder \\( ohne schließende."
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Öffnende \\{ ohne schließende."
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Ungültiger Inhalt von \\{\\}."
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Ungültiges Bereichsende."
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Speicher verbraucht."
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
-msgstr "Ungüliger vorhergehender regulärer Ausdruck."
+msgstr "Ungültiger vorhergehender regulärer Ausdruck."
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Vorzeitiges Ende des regulären Ausdrucks."
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
-msgstr "Regulärer Ausdruck zu groß."
+msgstr "Regulärer Ausdruck ist zu groß."
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "Schließende ) oder \\) ohne öffnende."
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Kein vorhergehender regulärer Ausdruck."
#: lib/xstrtol-error.c:63
#, c-format
msgid "invalid %s%s argument '%s'"
-msgstr "ungültiges %s%s Argument »%s«"
+msgstr "ungültiges %s%s-Argument »%s«"
#: lib/xstrtol-error.c:68
#, c-format
#: lib/xstrtol-error.c:72
#, c-format
msgid "%s%s argument '%s' too large"
-msgstr "%s%s Argument »%s« zu groß"
+msgstr "%s%s Argument »%s« ist zu groß"
#: lib/version-etc.c:74
#, c-format
#: lib/version-etc.c:256
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr ""
-"Generelle Hilfe zur Benutzung von GNU-Software: <http://www.gnu.org/gethelp/"
-">.\n"
+"Allgemeine Hilfe zur Benutzung von GNU-Software: <http://www.gnu.org/gethelp/"
+">\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Dateien %s und %s sind verschieden.\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Binärdateien %s und %s sind verschieden.\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Kein Zeilenumbruch am Dateiende."
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, c-format
msgid "Try '%s --help' for more information."
msgstr "»%s --help« gibt Ihnen mehr Informationen."
#: src/cmp.c:137
#, c-format
msgid "invalid --ignore-initial value '%s'"
-msgstr "ungültiger --ignore-initial-Wert »%s«"
+msgstr "ungültiger --ignore-initial-Wert »%s«."
#: src/cmp.c:147
#, c-format
msgid "options -l and -s are incompatible"
msgstr "Die Optionen -l und -s sind inkompatibel."
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "Schreibfehler."
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "Standardausgabe"
#: src/cmp.c:161
msgid "-b, --print-bytes print differing bytes"
-msgstr "-b, --print-bytes Verschiedene Bytes ausgeben."
+msgstr "-b, --print-bytes Unterschiedliche Bytes ausgeben."
#: src/cmp.c:162
msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs"
"Die optionalen Argumente SKIP1 und SKIP2 geben die Zahl der Bytes an,\n"
"die in jeder Datei übersprungen werden (standardmäßig null)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr "Wenn DATEI »-« ist oder fehlt, von der Standardeingabe lesen."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"Der Rückgabewert des Programms ist 0, falls die Eingaben identisch\n"
-"sind, 1 falls sie gleich sind und 2 falls es Probleme gab."
+"sind, 1 falls sie unterschiedlich sind und 2, falls es Probleme gab."
#: src/cmp.c:240
#, c-format
msgid "invalid --bytes value '%s'"
msgstr "ungültiger --bytes-Wert »%s«"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, c-format
msgid "missing operand after '%s'"
msgstr "fehlender Operand nach »%s«"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, c-format
msgid "extra operand '%s'"
msgstr "extra Operand »%s«."
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s differieren: Byte %s, Zeile %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s differieren: Zeichen %s, Zeile %s ist %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: EOF auf %s.\n"
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
+#: src/diff.c:351
#, c-format
msgid "invalid context length '%s'"
-msgstr "ungültige Kontextlänge »%s«"
+msgstr "ungültige Kontextlänge »%s«."
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
-msgstr "Seitenumbruch ist auf diesem System nicht unterstützt."
+msgstr "Seitenumbruch wird auf diesem System nicht unterstützt."
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
-msgstr "Zu viele Datei-Label-Optionen."
+msgstr "Zu viele Datei-Label-Optionen wurden angegeben."
-#: src/diff.c:514
+#: src/diff.c:526
#, c-format
msgid "invalid width '%s'"
-msgstr "ungültige Breite »%s«"
+msgstr "ungültige Breite »%s«."
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
-msgstr "Widersprüchliche Breitenoptionen"
+msgstr "widersprüchliche Breitenoptionen"
-#: src/diff.c:543
+#: src/diff.c:555
#, c-format
msgid "invalid horizon length '%s'"
-msgstr "ungültige Horizontlänge »%s«"
+msgstr "ungültige Horizontlänge »%s«."
-#: src/diff.c:598
+#: src/diff.c:611
#, c-format
msgid "invalid tabsize '%s'"
-msgstr "ungültige Tabulatorbreite »%s«"
+msgstr "ungültige Tabulatorbreite »%s«."
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
-msgstr "Widersprüchliche Tabulatorbreitenoptionen."
+msgstr "widersprüchliche Tabulatorbreitenoptionen."
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "--from-file und --to-file sind beide angegeben."
-#: src/diff.c:854
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
msgstr " --normal Ein normales Diff ausgeben (Standard)."
-#: src/diff.c:855
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
msgstr ""
"-q, --brief Nur ausgeben, ob die Dateien verschieden sind."
-#: src/diff.c:856
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
msgstr "-s, --report-identical-files Meldung, wenn zwei Dateien gleich sind."
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
"-c, -C ZAHL, --context[=ZAHL] ZAHL Zeilen des kopierten Kontexts ausgeben "
"(Vorgabe: 3)."
-#: src/diff.c:858
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"-u, -U ZAHL, --unified[=ZAHL] ZAHL Zeilen des Unified-Kontexts ausgeben "
"(Vorgabe: 3)."
-#: src/diff.c:859
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
msgstr "-e, --ed Ein ed-Skript ausgeben."
-#: src/diff.c:860
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
msgstr "-n, --rcs Im RCS-Format ausgeben."
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr "-y, --side-by-side In zwei Spalten ausgeben."
-#: src/diff.c:862
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
-"-W, --width=ZAHL Maximal ZAHL Druckspalten pro Zeile ausgeben "
-"(Vorgabe: 130)."
+"-W, --width=ZAHL Maximal ZAHL Druckspalten pro Zeile ausgeben\n"
+" (Vorgabe: 130)."
-#: src/diff.c:863
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
" --left-column Nur linke Spalte der gemeinsamen Zeilen "
"ausgeben."
-#: src/diff.c:864
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
msgstr " --suppress-common-lines Keine gemeinsamen Zeilen ausgeben."
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
"-p, --show-c-function Für jede Änderung zeigen, in welcher C-"
"Funktion sie ist"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
-"-F, --show-function-line=RE Die neueste Zeile, die dem Muster RE "
-"entspricht, zeigen"
+"-F, --show-function-line=RE Die neueste Zeile zeigen, die dem Muster RE "
+"entspricht"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
-" --label LABEL LABEL statt Dateinamens benutzen\n"
-" (kann wiederholt werden)"
+" --label LABEL LABEL statt des Dateinamens benutzen\n"
+" (kann wiederholt werden)."
-#: src/diff.c:871
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr ""
-"-t, -expand-tabs Tabulatoren zu Leerzeichen in der Ausgabe "
+"-t, -expand-tabs Tabulatoren in der Ausgabe zu Leerzeichen "
"ausdehnen."
-#: src/diff.c:872
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
"-T, --initial-tab Einrückungen durch vorangestellte Tabulatoren "
"erzeugen."
-#: src/diff.c:873
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
" --tabsize=ZAHL Tabulatorstopps sind alle ZAHL Spalten "
"(Vorgabe: 8)."
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
" --suppress-blank-empty Leerzeichen oder Tabulator vor leeren\n"
" Ausgabezeilen verhindern."
-#: src/diff.c:875
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
"-l, --paginate Ausgabe an »pr« zum Seitenumbruch übergeben."
-#: src/diff.c:877
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
"-r, --recursive Rekursiv alle Unterverzeichnisse vergleichen."
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr ""
-" --no-derefence Symbolischen Verknüpfungen nicht folgen"
+" --no-derefence Symbolischen Verknüpfungen nicht folgen."
-#: src/diff.c:879
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
msgstr "-N, --new-file Fehlende Dateien als leer betrachten."
-#: src/diff.c:880
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
" --unidirectional-new-file Die ersten fehlenden Dateien als leer "
"betrachten."
-#: src/diff.c:881
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
" --ignore-file-name-case Unterschiede der Groß/Kleinschreibung von "
"Dateinamen\n"
" ignorieren."
-#: src/diff.c:882
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
" --no-ignore-file-name-case Unterschiede der Groß/Kleinschreibung von \n"
" Dateinamen beachten."
-#: src/diff.c:883
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr ""
-"-x, --exclude=MUSTER Dateien, die auf MUSTER passen, ausschließen."
+"-x, --exclude=MUSTER Dateien ausschließen, die auf MUSTER passen."
-#: src/diff.c:884
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
"-X, --exclude-from=DATEI Dateien überspringen, die auf eines der\n"
-"Muster in DATEI passen."
+" Muster in DATEI passen."
-#: src/diff.c:885
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
"-S, --starting-file=DATEI Beim Verzeichnisvergleich mit DATEI beginnen."
-#: src/diff.c:886
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
" --from-file=DATEI1 DATEI1 mit allen Operanden vergleichen.\n"
" DATEI1 kann ein Verzeichnis sein."
-#: src/diff.c:888
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
" --to-file=DATEI2 Alle Operanden mit DATEI2 vergleichen.\n"
" DATEI2 kann ein Verzeichnis sein."
-#: src/diff.c:891
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
-"-i, --ignore-case Unterschiede der Groß/Kleinschreibung im Dateiinhalt\n"
-" ignorieren."
+"-i, --ignore-case Unterschiede der Groß/Kleinschreibung\n"
+" im Dateiinhalt ignorieren."
-#: src/diff.c:892
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
-"-E, --ignore-tab-expansion Änderungen aufgrund von Tabausdehnungen "
+"-E, --ignore-tab-expansion Änderungen aufgrund von Tabausdehnungen "
"ignorieren."
-#: src/diff.c:893
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-Z, --ignore-trailing-space Freiraum am Zeilenende ignorieren."
+msgstr "-Z, --ignore-trailing-space Freiraum am Zeilenende ignorieren."
-#: src/diff.c:894
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b, --ignore-space-change Ignoriere Änderungen im Leerraum."
+msgstr "-b, --ignore-space-change Änderungen im Leerraum ignorieren."
-#: src/diff.c:895
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w, --ignore-all-space Freiraum ignorieren."
-#: src/diff.c:896
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr ""
"-B, --ignore-blank-lines Die Änderungen übergehen, wo alle Zeilen "
"leer sind."
-#: src/diff.c:897
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I, --ignore-matching-lines=RE Änderungen ignorieren, bei denen alle "
"Zeilen\n"
" auf das Muster RE passen."
-#: src/diff.c:899
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
msgstr "-a, --text Alle Dateien als Text behandeln."
-#: src/diff.c:900
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
-" --strip-trailing-cr Wagenrücklauf (CR) am Zeilenende beim "
-"Einlesen entfernen."
+" --strip-trailing-cr Wagenrücklauf (CR) am Zeilenende\n"
+" beim Einlesen entfernen."
-#: src/diff.c:902
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr ""
" --binary Daten im Binärmodus lesen und schreiben."
-#: src/diff.c:905
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
"-D, --ifdef=NAME Zusammengefügte Datei mit »#ifdef NAME« in\n"
" die Ausgabe mischen."
-#: src/diff.c:906
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr " --GTYPE-group-format=GFMT GTYPE-Eingabe mit GFMT formatieren."
-#: src/diff.c:907
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
" --line-format=LFMT Alle Eingabe-Zeilen mit LFMT formatieren."
-#: src/diff.c:908
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr " --LTYPE-line-format=LFMT LTYPE-Eingabe mit LFMT formatieren."
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
" Diese Formatoptionen stellen haargenaue Kontrolle über die Eingabe\n"
" von diff bereit, indem -D/--ifdef verallgemeinert wird."
-#: src/diff.c:911
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" LTYPE kann »old«, »new« oder »unchanged« sein. GTYPE ist LTYPE oder "
"»changed«."
-#: src/diff.c:912
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" GFMT kann (nur) enthalten:\n"
" %< Zeilen von DATEI1.\n"
" %> Zeilen von DATEI2.\n"
-" %= Zeilen, die sowohl zu DATEI1 als auc zu DATEI2 gehören.\n"
+" %= Zeilen, die sowohl zu DATEI1 als auch zu DATEI2 gehören.\n"
" %[-][BREITE][.[PRÄZ]]{doxX}BUCHST Ausgabe nach printf-Regeln für "
"BUCHST.\n"
" Folgende BUCHTSTaben gelten für neue Gruppen, Kleinschreibung für "
" M L+1.\n"
" %(A=B?T:E) Falls A gleich B, dann T, sonst E."
-#: src/diff.c:924
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
msgstr ""
" LFMT kann (nur) enthalten:\n"
" %L Inhalt der Zeile.\n"
-" %l Inhalt der Zeile, ohne Newline am Ende.\n"
+" %l Inhalt der Zeile, ohne Zeilenumbruch am Ende.\n"
" %[-][BREITE][.[PRÄZ]]{doxX}n Zeilennummer im printf-Stil."
-#: src/diff.c:928
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO' das Zeichen mit dem Oktalcode OOO\n"
" C Das Zeichen C (andere Zeichen stellen sich selbst dar)"
-#: src/diff.c:934
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr ""
"-d, --minimal Aufwendig nach einem kleineren Satz von Änderungen "
"suchen."
-#: src/diff.c:935
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
-" --horizon-lines=ZAHL Behalte ZAHL Zeilen mit gemeinsamem Prä- und Suffix."
+" --horizon-lines=ZAHL ZAHL Zeilen mit gemeinsamem Prä- und Suffix "
+"behalten."
-#: src/diff.c:936
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
"kleine\n"
" Änderungen vermutet."
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr " --normal Ein normales Diff ausgeben (Standard)."
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr " --help Diese Hilfe anzeigen und beenden."
-#: src/diff.c:939
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
msgstr "-v, -version Versionsinformation ausgeben und beenden."
-#: src/diff.c:941
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+#: src/diff.c:974
+#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"DATEIEN sind »DATEI1 DATEI2« oder »VERZ1 VERZ2« oder »VERZ DATEI...«\n"
"oder »DATEI... VERZ«."
-#: src/diff.c:942
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
"Wenn --from-file oder --to-file angegeben werden, gibt es keine\n"
"Einschränkungen für DATEI(EN)."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
msgstr "Wenn DATEI »-« ist, von der Standardeingabe lesen."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Aufruf: %s [OPTION]... DATEIEN\n"
-#: src/diff.c:954
+#: src/diff.c:987
msgid "Compare FILES line by line."
-msgstr "Dateien Zeile für Zeile vergleichen."
+msgstr "DATEIEN Zeile für Zeile vergleichen."
-#: src/diff.c:988
+#: src/diff.c:1021
#, c-format
msgid "conflicting %s option value '%s'"
-msgstr "Widersprüchlicher %s Optionswert »%s«."
+msgstr "Widersprüchlicher %s-Optionswert »%s«."
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
-msgstr "Widersprüchliche Optionenen für den Ausgabestil."
+msgstr "Widersprüchliche Optionen für den Ausgabestil."
+
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "ungültige Breite »%s«."
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Nur in %s: %s.\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
msgstr "»-« kann nicht mit Verzeichnis verglichen werden."
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "Option -D nicht unterstützt bei Verzeichnissen"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Gemeinsame Unterverzeichnisse: %s und %s.\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
-msgstr "Datei %s ist ein %s während Datei %s ein %s ist.\n"
+msgstr "Datei %s ist ein %s, während Datei %s ein %s ist.\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "Symbolische Verknüpfungen %s und %s sind verschieden.\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Dateien %s und %s sind identisch.\n"
msgid "'-' specified for more than one input file"
msgstr "»-« für mehr als eine Eingabedatei angegeben."
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "Lesefehler."
"-L, --label=LABEL use LABEL instead of file name\n"
" (can be repeated up to three times)"
msgstr ""
-"-L, --label=LABEL LABEL statt Dateinamens benutzen\n"
+"-L, --label=LABEL LABEL statt des Dateinamens benutzen\n"
" (kann bis zu dreimal wiederholt werden)"
#: src/diff3.c:448
#: src/diff3.c:458
#, c-format
msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n"
-msgstr "Benutzung: %s [OPTION]... MEINEDATEI ALTEDATEI DEINEDATEI\n"
+msgstr "Aufruf: %s [OPTION]... MEINEDATEI ALTEDATEI DEINEDATEI\n"
#: src/diff3.c:460
msgid "Compare three files line by line."
msgstr ""
"\n"
"Das Standardausgabeformat ist eine einigermaßen menschenlesbare\n"
-"Repräsentierung der Änderungen.\n"
+"Darstellung der Änderungen.\n"
"\n"
"Die Optionen -e, -E, -x und -X (und deren entsprechende lange Versionen)\n"
"erzeugen ein ed-Skript als Ausgabe statt des Standards.\n"
msgid "invalid diff format; invalid change separator"
msgstr "Ungültiges Diff-Format; ungültiger Änderungstrenner."
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
-msgstr "Ungültiges Diff-Format; felende letzte Zeile."
+msgstr "Ungültiges Diff-Format; fehlende letzte Zeile."
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "Unterprogramm »%s« konnte nicht aufgerufen werden."
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "Ungültiges Diff-Format; inkorrektes Zeichen in führender Zeile"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "Interner Fehler: Ungültiger diff-Typ an Ausgabe übergeben."
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "Eingabedatei schrumpfte."
-#: src/dir.c:158
+#: src/dir.c:156
#, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "Die Dateinamen »%s« und »%s« können nicht verglichen werden."
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: Rekursive Verzeichnisschleife"
#: src/sdiff.c:178
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b, --ignore-space-change Ignoriere Änderungen im Leerraum."
+msgstr "-b, --ignore-space-change Änderungen im Leerraum ignorieren."
#: src/sdiff.c:179
msgid "-W, --ignore-all-space ignore all white space"
#: src/sdiff.c:183
msgid "-a, --text treat all files as text"
-msgstr "-a, --text Betrachte alle Dateien als Text."
+msgstr "-a, --text Alle Dateien als Text betrachten."
#: src/sdiff.c:185
msgid ""
"-w, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
-"-w, --width=ZAHL Maximal ZAHL Druckspalten pro Zeile (Vorgabe: "
+"-w, --width=ZAHL Maximale ZAHL Druckspalten pro Zeile (Vorgabe: "
"130)."
#: src/sdiff.c:186
#: src/sdiff.c:189
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr ""
-"-t, --expand-tabs Tabulatoren zu Leerzeichen in der Ausgabe "
+"-t, --expand-tabs Tabulatoren in der Ausgabe zu Leerzeichen "
"ausdehnen."
#: src/sdiff.c:190
msgid "Usage: %s [OPTION]... FILE1 FILE2\n"
msgstr "Aufruf: %s [OPTION]... DATEI1 DATEI2\n"
-# XXX Was ist das?
#: src/sdiff.c:208
-#, fuzzy
msgid "Side-by-side merge of differences between FILE1 and FILE2."
msgstr ""
-"Nebeneinanderstehendes Zusammenbringen der Unterschiede zwischen DATEI1 und "
-"DATEI2."
+"Nebeneinanderstehendes Zusammenbringen der Unterschiede zwischen\n"
+"DATEI1 und DATEI2."
#: src/sdiff.c:329
msgid "cannot interactively merge standard input"
-msgstr "Kann nicht die Standardeingabe interaktiv mischen."
+msgstr "Die Standardeingabe kann nicht interaktiv gemischt werden."
#: src/sdiff.c:595
msgid "both files to be compared are directories"
-msgstr "Beide zu vergleichenden Dateien sind Verzeichnisse."
+msgstr "Beide zu vergleichende Dateien sind Verzeichnisse."
#: src/sdiff.c:818
msgid ""
"e:\tBeide Versionen verwerfen und dann eine neue Version editieren.\n"
"l:\tLinke Version benutzen.\n"
"r:\tRechte Version benutzen.\n"
-"s:\tSchweigend gemeinsame Zeilen übernehmen.\n"
-"v:\tLauthals gemeinsame Zeilen übernehmen.\n"
+"s:\tStillschweigend gemeinsame Zeilen übernehmen.\n"
+"v:\tAusführlich gemeinsame Zeilen übernehmen.\n"
"q:\tBeenden.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: Unbekannte Option »--%s«.\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid ""
#~ "This program comes with NO WARRANTY, to the extent permitted by law.\n"
#~ "You may redistribute copies of this program\n"
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Free Software Foundation, Inc.
-# This file is distributed under the same license as the PACKAGE package.
+# This file is distributed under the same license as the GNU diffutils package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: GNU diffutils 3.3\n"
+"Project-Id-Version: GNU diffutils 3.4\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\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"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
+#: lib/argmatch.c:133
+#, c-format
+msgid "invalid argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+msgid "Valid arguments are:"
+msgstr ""
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr ""
msgid "stack overflow"
msgstr ""
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr ""
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr ""
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr ""
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr ""
-#: lib/file-type.c:44
+#: lib/file-type.c:46
+msgid "symbolic link"
+msgstr ""
+
+#: lib/file-type.c:52
+msgid "message queue"
+msgstr ""
+
+#: lib/file-type.c:55
+msgid "semaphore"
+msgstr ""
+
+#: lib/file-type.c:58
+msgid "shared memory object"
+msgstr ""
+
+#: lib/file-type.c:61
+msgid "typed memory object"
+msgstr ""
+
+#: lib/file-type.c:66
msgid "block special file"
msgstr ""
-#: lib/file-type.c:47
+#: lib/file-type.c:69
msgid "character special file"
msgstr ""
-#: lib/file-type.c:50
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
msgid "fifo"
msgstr ""
-#: lib/file-type.c:53
-msgid "symbolic link"
+#: lib/file-type.c:78
+msgid "door"
msgstr ""
-#: lib/file-type.c:56
-msgid "socket"
+#: lib/file-type.c:81
+msgid "multiplexed block special file"
msgstr ""
-#: lib/file-type.c:59
-msgid "message queue"
+#: lib/file-type.c:84
+msgid "multiplexed character special file"
msgstr ""
-#: lib/file-type.c:62
-msgid "semaphore"
+#: lib/file-type.c:87
+msgid "multiplexed file"
msgstr ""
-#: lib/file-type.c:65
-msgid "shared memory object"
+#: lib/file-type.c:90
+msgid "named file"
msgstr ""
-#: lib/file-type.c:68
-msgid "typed memory object"
+#: lib/file-type.c:93
+msgid "network special file"
+msgstr ""
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
msgstr ""
-#: lib/file-type.c:70
+#: lib/file-type.c:105
+msgid "socket"
+msgstr ""
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr ""
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr ""
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr ""
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr ""
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr ""
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr ""
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr ""
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr ""
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr ""
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr ""
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr ""
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr ""
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr ""
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr ""
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr ""
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr ""
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr ""
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr ""
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr ""
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr ""
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr ""
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr ""
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+msgid "Unmatched [, [^, [:, [., or [="
msgstr ""
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr ""
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr ""
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr ""
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr ""
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr ""
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr ""
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr ""
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr ""
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr ""
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr ""
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr ""
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr ""
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr ""
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr ""
msgid "David MacKenzie"
msgstr ""
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, c-format
msgid "Try '%s --help' for more information."
msgstr ""
msgid "options -l and -s are incompatible"
msgstr ""
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr ""
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr ""
"at the beginning of each file (zero by default)."
msgstr ""
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr ""
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
msgid "invalid --bytes value '%s'"
msgstr ""
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, c-format
msgid "missing operand after '%s'"
msgstr ""
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, c-format
msgid "extra operand '%s'"
msgstr ""
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr ""
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr ""
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr ""
msgid "Len Tower"
msgstr ""
-#: src/diff.c:339
+#: src/diff.c:351
#, c-format
msgid "invalid context length '%s'"
msgstr ""
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr ""
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr ""
-#: src/diff.c:514
+#: src/diff.c:526
#, c-format
msgid "invalid width '%s'"
msgstr ""
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr ""
-#: src/diff.c:543
+#: src/diff.c:555
#, c-format
msgid "invalid horizon length '%s'"
msgstr ""
-#: src/diff.c:598
+#: src/diff.c:611
#, c-format
msgid "invalid tabsize '%s'"
msgstr ""
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr ""
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr ""
-#: src/diff.c:854
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
msgstr ""
-#: src/diff.c:855
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
msgstr ""
-#: src/diff.c:856
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
msgstr ""
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
-#: src/diff.c:858
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
-#: src/diff.c:859
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
msgstr ""
-#: src/diff.c:860
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
msgstr ""
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr ""
-#: src/diff.c:862
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
-#: src/diff.c:863
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
-#: src/diff.c:864
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
msgstr ""
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
-#: src/diff.c:868
+#: src/diff.c:897
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
-#: src/diff.c:871
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr ""
-#: src/diff.c:872
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
-#: src/diff.c:873
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
-#: src/diff.c:875
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
-#: src/diff.c:877
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr ""
-#: src/diff.c:879
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
msgstr ""
-#: src/diff.c:880
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
-#: src/diff.c:881
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
-#: src/diff.c:882
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
-#: src/diff.c:883
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr ""
-#: src/diff.c:884
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
-#: src/diff.c:885
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
-#: src/diff.c:886
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
msgstr ""
-#: src/diff.c:888
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
msgstr ""
-#: src/diff.c:891
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
-#: src/diff.c:892
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
-#: src/diff.c:893
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr ""
-#: src/diff.c:894
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
-#: src/diff.c:895
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
msgstr ""
-#: src/diff.c:896
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr ""
-#: src/diff.c:897
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
-#: src/diff.c:899
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
msgstr ""
-#: src/diff.c:900
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
-#: src/diff.c:902
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr ""
-#: src/diff.c:905
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
-#: src/diff.c:906
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
-#: src/diff.c:907
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
-#: src/diff.c:908
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
-#: src/diff.c:911
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
-#: src/diff.c:912
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" %(A=B?T:E) if A equals B then T else E"
msgstr ""
-#: src/diff.c:924
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %[-][WIDTH][.[PREC]]{doxX}n printf-style spec for input line number"
msgstr ""
-#: src/diff.c:928
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" C the character C (other characters represent themselves)"
msgstr ""
-#: src/diff.c:934
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr ""
-#: src/diff.c:935
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
-#: src/diff.c:936
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+msgid " or 'auto' (the default)"
+msgstr ""
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
msgstr ""
-#: src/diff.c:941
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+#: src/diff.c:974
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
-#: src/diff.c:942
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
msgstr ""
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr ""
-#: src/diff.c:954
+#: src/diff.c:987
msgid "Compare FILES line by line."
msgstr ""
-#: src/diff.c:988
+#: src/diff.c:1021
#, c-format
msgid "conflicting %s option value '%s'"
msgstr ""
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr ""
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, c-format
+msgid "invalid color '%s'"
+msgstr ""
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr ""
-#: src/diff.c:1192
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
msgstr ""
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr ""
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr ""
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr ""
-#: src/diff.c:1314
+#: src/diff.c:1362
#, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr ""
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr ""
msgid "'-' specified for more than one input file"
msgstr ""
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr ""
msgid "invalid diff format; invalid change separator"
msgstr ""
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr ""
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr ""
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr ""
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr ""
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr ""
-#: src/dir.c:158
+#: src/dir.c:156
#, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr ""
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr ""
"v:\tVerbosely include common lines.\n"
"q:\tQuit.\n"
msgstr ""
+
+#: src/util.c:665
+#, c-format
+msgid "unrecognized prefix: %s"
+msgstr ""
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
-# translation of diffutils-2.8.7.po to Greek
+# translation of diffutils to Greek
# Copyright (C) 2004 Free Software Foundation, Inc.
-# This file is distributed under the same license as the diffutils-2.8.7 package.
-# Lefteris Dimitroulakis <edimitro@tee.gr>, 2004.
+# This file is distributed under the same license as the diffutils package.
#
+# Lefteris Dimitroulakis <edimitro@tee.gr>, 2004.
+# Lefteris Dimitroulakis <ledimitro@gmail.com>, 2013, 2014.
msgid ""
msgstr ""
-"Project-Id-Version: diffutils-2.8.7\n"
+"Project-Id-Version: diffutils-3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
-"PO-Revision-Date: 2004-12-28 15:50+0000\n"
-"Last-Translator: Lefteris Dimitroulakis <edimitro@tee.gr>\n"
-"Language-Team: Greek <nls@tux.hellug.gr>\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
+"PO-Revision-Date: 2014-11-28 23:51+0200\n"
+"Last-Translator: Lefteris Dimitroulakis <ledimitro@gmail.com>\n"
+"Language-Team: Greek <team@lists.gnome.gr>\n"
"Language: el\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3.1\n"
+"X-Generator: Lokalize 1.5\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "μη έγκυρο %s%s όρισμα «%s»"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "μη έγκυρο %s%s όρισμα «%s»"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "σφάλμα προγράμματος"
msgid "stack overflow"
msgstr "υπερχείλιση στοίβας"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Άγνωστο σφάλμα συστήματος"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "τυπικό κενό αρχείο"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "τυπικό αρχείο"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "κατάλογος"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "ειδικό αρχείο μπλοκ"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "ειδικό αρχείο χαρακτήρων"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "συμβολικός σύνδεσμος"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "socket"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "ουρά μηνύματος"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "σηματοφορέας"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "αντικείμενο κοινόχρηστης μνήμης"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "typed memory object"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "ειδικό αρχείο μπλοκ"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "ειδικό αρχείο χαρακτήρων"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "ειδικό αρχείο μπλοκ"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "ειδικό αρχείο χαρακτήρων"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "αλλόκοτο αρχείο"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "ειδικό αρχείο μπλοκ"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "socket"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "αλλόκοτο αρχείο"
-#: lib/getopt.c:547 lib/getopt.c:576
-#, fuzzy, c-format
+#: lib/getopt.c:575 lib/getopt.c:604
+#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
-msgstr "%s: η επιλογή «%s» είναι ασαφής\n"
+msgstr "%s: η επιλογή «%s» είναι ασαφής·επιλογές:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: η επιλογή «-W %s» είναι ασαφής\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
+#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: η επιλογή «--%s» δεν επιτρέπει όρισμα\n"
-#: lib/getopt.c:637 lib/getopt.c:642
-#, fuzzy, c-format
+#: lib/getopt.c:667 lib/getopt.c:672
+#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: η επιλογή «%c%s» δεν επιτρέπει όρισμα\n"
-#: lib/getopt.c:685 lib/getopt.c:704
-#, fuzzy, c-format
+#: lib/getopt.c:715 lib/getopt.c:734
+#, c-format
msgid "%s: option '--%s' requires an argument\n"
-msgstr "%s: η επιλογή «%s» απαιτεί όρισμα\n"
+msgstr "%s: η επιλογή «--%s» απαιτεί όρισμα\n"
-#: lib/getopt.c:742 lib/getopt.c:745
-#, fuzzy, c-format
+#: lib/getopt.c:772 lib/getopt.c:775
+#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: η επιλογή «--%s» δεν αναγνωρίζεται\n"
-#: lib/getopt.c:753 lib/getopt.c:756
-#, fuzzy, c-format
+#: lib/getopt.c:783 lib/getopt.c:786
+#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: η επιλογή «%c%s» δεν αναγνωρίζεται\n"
-#: lib/getopt.c:805 lib/getopt.c:808
-#, fuzzy, c-format
+#: lib/getopt.c:835 lib/getopt.c:838
+#, c-format
msgid "%s: invalid option -- '%c'\n"
-msgstr "%s: η επιλογή -- %c είναι άκυρη\n"
+msgstr "%s: η επιλογή -- «%c» δεν είναι έγκυρη\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
-#, fuzzy, c-format
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
+#, c-format
msgid "%s: option requires an argument -- '%c'\n"
-msgstr "%s: η επιλογή απαιτεί όρισμα -- %c\n"
+msgstr "%s: η επιλογή απαιτεί όρισμα -- «%c»\n"
-#: lib/getopt.c:934 lib/getopt.c:950
-#, fuzzy, c-format
+#: lib/getopt.c:964 lib/getopt.c:980
+#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: η επιλογή «-W %s» είναι ασαφής\n"
-#: lib/getopt.c:974 lib/getopt.c:992
-#, fuzzy, c-format
+#: lib/getopt.c:1004 lib/getopt.c:1022
+#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: η επιλογή «-W %s» δεν επιτρέπει όρισμα\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
-#, fuzzy, c-format
+#: lib/getopt.c:1043 lib/getopt.c:1061
+#, c-format
msgid "%s: option '-W %s' requires an argument\n"
-msgstr "%s: η επιλογή «%s» απαιτεί όρισμα\n"
+msgstr "%s: η επιλογή «-W %s» απαιτεί όρισμα\n"
#. TRANSLATORS:
#. Get translations for open and closing quotation marks.
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
-msgstr ""
+msgstr "«"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
-msgstr ""
+msgstr "»"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Επιτυχία"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Δεν υπάρχει ταίριασμα"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
-msgstr "Î\86κυρη κανονική έκφραση"
+msgstr "Î\9cη Îγκυρη κανονική έκφραση"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
-msgstr "Î\86κυρος χαρακτήρας διαταξινόμησης"
+msgstr "Î\9cη Îγκυρος χαρακτήρας διαταξινόμησης"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
-msgstr "Î\86κυρο όνομα κλάσεως χαρακτήρων"
+msgstr "Î\9cη Îγκυρο όνομα κλάσεως χαρακτήρων"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Αντιπλαγία στο τέλος"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Άκυρη πίσω παραπομπή"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "Δε βρέθηκε [ ή [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Δε βρέθηκε ( ή \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Δε βρέθηκε \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Το περιεχόμενο του \\{\\} είναι άκυρο"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Άκυρο πέρας διαστήματος"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Η μνήμη εξαντλήθηκε"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Η προηγούμενη κανονική έκφραση είναι άκυρη"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Πρόωρο τέλος κανονικής έκφρασης"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Πολύ μεγάλη κανονική έκφραση"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "Δε βρέθηκε ) ή \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Δεν προηγήθηκε κανονική έκφραση"
#: lib/xfreopen.c:35
msgid "stdin"
-msgstr ""
+msgstr "stdin"
#: lib/xfreopen.c:36
msgid "stdout"
-msgstr ""
+msgstr "stdout"
#: lib/xfreopen.c:37
msgid "stderr"
-msgstr ""
+msgstr "stderr"
#: lib/xfreopen.c:38
-#, fuzzy
msgid "unknown stream"
-msgstr "Î\86γνÏ\89Ï\83Ï\84ο Ï\83Ï\86άλμα Ï\83Ï\85Ï\83Ï\84ήμαÏ\84οÏ\82"
+msgstr "άγνÏ\89Ï\83Ï\84ο Ï\81εÏ\8dμα"
#: lib/xfreopen.c:39
#, c-format
msgid "failed to reopen %s with mode %s"
-msgstr ""
+msgstr "αποτυχία ξανανοίγματος %s σε κατάσταση %s"
#: lib/xstrtol-error.c:63
-#, fuzzy, c-format
+#, c-format
msgid "invalid %s%s argument '%s'"
-msgstr "άκÏ\85Ï\81η Ï\84ιμή «%s» για Ï\84ην εÏ\80ιλογή --bytes "
+msgstr "μη ÎγκÏ\85Ï\81ο %s%s Ï\8cÏ\81ιÏ\83μα «%s»"
#: lib/xstrtol-error.c:68
#, c-format
msgid "invalid suffix in %s%s argument '%s'"
-msgstr ""
+msgstr "μη έγκυρη κατάληξη «%s» στο όρισμα %s%s"
#: lib/xstrtol-error.c:72
#, c-format
msgid "%s%s argument '%s' too large"
-msgstr ""
+msgstr "%s%s όρισμα «%s» πολύ μεγάλο"
#: lib/version-etc.c:74
#, c-format
msgid "Packaged by %s (%s)\n"
-msgstr ""
+msgstr "Packaged by %s (%s)\n"
#: lib/version-etc.c:77
#, c-format
msgid "Packaged by %s\n"
-msgstr ""
+msgstr "Packaged by %s\n"
#. TRANSLATORS: Translate "(C)" to the copyright symbol
#. (C-in-a-circle), if this symbol is available in the user's
#. locale. Otherwise, do not translate "(C)"; leave it as-is.
#: lib/version-etc.c:84
msgid "(C)"
-msgstr ""
+msgstr "(C)"
#: lib/version-etc.c:86
msgid ""
"There is NO WARRANTY, to the extent permitted by law.\n"
"\n"
msgstr ""
+"\n"
+"Άδεια GPLv3+: GNU GPL έκδοση 3 ή νεότερη <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"
#. TRANSLATORS: %s denotes an author name.
#: lib/version-etc.c:102
"\n"
"Report bugs to: %s\n"
msgstr ""
+"\n"
+"Report bugs to: %s\n"
#: lib/version-etc.c:247
#, c-format
msgid "Report %s bugs to: %s\n"
-msgstr ""
+msgstr "Report %s bugs to: %s\n"
#: lib/version-etc.c:251
#, c-format
msgid "%s home page: <%s>\n"
-msgstr ""
+msgstr "%s home page: <%s>\n"
#: lib/version-etc.c:253
#, c-format
msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
-msgstr ""
+msgstr "%s home page: <http://www.gnu.org/software/%s/>\n"
#: lib/version-etc.c:256
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr ""
+"Γενική βοήθεια στη χρήση λογισμικού GNU: <http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Τα αρχεία %s και %s διαφέρουν\n"
-#: src/analyze.c:462
-#, fuzzy, c-format
+#: src/analyze.c:455
+#, c-format
msgid "Binary files %s and %s differ\n"
-msgstr "Τα αρχεία %s και %s διαφέρουν\n"
+msgstr "Τα δÏ\85αδικά αÏ\81Ï\87εία %s και %s διαÏ\86ÎÏ\81οÏ\85ν\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Δεν υπάρχει χαρακτήρας νέας γραμμής στο τέλος του αρχείου"
#. This is a proper name. See the gettext manual, section Names.
#: src/cmp.c:44
msgid "David MacKenzie"
-msgstr ""
+msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
-#, fuzzy, c-format
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
+#, c-format
msgid "Try '%s --help' for more information."
-msgstr "Δοκιμάστε `%s --help' για περισσότερες πληροφορίες."
+msgstr "Δοκιμάστε «%s --help» για περισσότερες πληροφορίες."
#: src/cmp.c:137
-#, fuzzy, c-format
+#, c-format
msgid "invalid --ignore-initial value '%s'"
-msgstr "άκυρη τιμή --ignore-initial `%s'"
+msgstr "άκυρη τιμή --ignore-initial «%s»"
#: src/cmp.c:147
#, c-format
msgid "options -l and -s are incompatible"
msgstr "οι επιλογές -l και -s είναι ασύμβατες"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "η εγγραφή απέτυχε"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "κανονική έξοδος"
#: src/cmp.c:161
-#, fuzzy
msgid "-b, --print-bytes print differing bytes"
-msgstr "-b --print-bytes Εμφανίζει ψηφιολέξεις που διαφέρουν."
+msgstr "-b, --print-bytes Εμφανίζει bytes που διαφέρουν."
#: src/cmp.c:162
-#, fuzzy
msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs"
msgstr ""
-"-i SKIP --ignore-initial=SKIP Παράβλεψη των πρώτων SKIP ψηφιολέξεων της "
-"εισόδου."
+"-i, --ignore-initial=SKIP Παράβλεψη των πρώτων SKIP bytes και των δύο "
+"εισόδων"
#: src/cmp.c:163
-#, fuzzy
msgid ""
"-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n"
" first SKIP2 bytes of FILE2"
msgstr ""
-"Παράβλεψη των πρώτων SKIP1 ψηφιολέξεων του ΑΡΧΕΙΟ1 και των πρώτων SKIP2 "
-"ψηφιολέξεων του ΑΡΧΕΙΟ2."
+"-i, --ignore-initial=SKIP1:SKIP2 παράβλεψη των πρώτων SKIP1 bytes του "
+"αρχείου FILE1 και\n"
+" των πρώτων SKIP2 bytes του αρχείου FILE2"
#: src/cmp.c:165
-#, fuzzy
msgid ""
"-l, --verbose output byte numbers and differing byte values"
msgstr "-l --verbose Έξοδος αριθμού και τιμής όλων των bytes που διαφέρουν."
#: src/cmp.c:166
-#, fuzzy
msgid "-n, --bytes=LIMIT compare at most LIMIT bytes"
-msgstr "-n ΟΡΙΟ --bytes=ΟΡΙΟ Σύγκριση αριθμού bytes ανά ΟΡΙΟ."
+msgstr "-n, --bytes=ΟΡΙΟ Σύγκριση το πολύ ΟΡΙΟ bytes."
#: src/cmp.c:167
msgid "-s, --quiet, --silent suppress all normal output"
-msgstr ""
+msgstr "-s, --quiet, --silent απάλειψη κανονικής εξόδου"
#: src/cmp.c:168
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help εμφάνιση αυτής εδώ της βοήθειας κι έξοδος"
#: src/cmp.c:169
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Έξοδος ονόματος κι έκδοσης."
+msgstr "-v, --version εμφάνιση πληροφοριών έκδοσης κι έξοδος"
#: src/cmp.c:178
#, c-format
msgstr "Σύγκριση δύο αρχείων byte προς byte."
#: src/cmp.c:182
-#, fuzzy
msgid ""
"The optional SKIP1 and SKIP2 specify the number of bytes to skip\n"
"at the beginning of each file (zero by default)."
-msgstr "SKIP1 και SKIP2 είναι ο αριθμός των byte προς παράλειψη ανά αρχείο."
+msgstr ""
+"Οι προαιρετικές παράμετροι SKIP1 και SKIP2 καθορίζουν τον αριθμό των bytes "
+"προς παράβλεψη\n"
+"στην αρχή κάθε αρχείου (η προεπιλογή είναι μηδέν)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
+"Υποχρεωτικά ορίσματα στις μακρές επιλογές είναι υποχρεωτικά και στις κοντές "
+"επιλογές επίσης.\n"
#: src/cmp.c:191
msgid ""
"GB 1,000,000,000, G 1,073,741,824, κτλ γιά T, P, E, Z, Y."
#: src/cmp.c:194
-#, fuzzy
msgid "If a FILE is '-' or missing, read standard input."
-msgstr "Αν ένα ΑΡΧΕΙΟ είναι `-' ή απών, τότε ανάγνωση από την κανονική είσοδο."
+msgstr "Αν ένα ΑΡΧΕΙΟ είναι «-» ή απών, τότε ανάγνωση από την κανονική είσοδο."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"Η έξοδος είναι 0 αν τα δεδομένα αρχεία είναι ίδια, 1 αν είναι διαφορετικά,\n"
"2 αν υπάρχει πρόβλημα."
#: src/cmp.c:240
-#, fuzzy, c-format
+#, c-format
msgid "invalid --bytes value '%s'"
msgstr "άκυρη τιμή «%s» για την επιλογή --bytes "
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
-#, fuzzy, c-format
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
+#, c-format
msgid "missing operand after '%s'"
msgstr "απών τελεστέος μετά από «%s»"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
-#, fuzzy, c-format
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
+#, c-format
msgid "extra operand '%s'"
msgstr "συμπληρωματικός τελεστέος «%s»"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s διαφέρουν: byte %s, γραμμή %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s διαφέρουν: byte %s, γραμμή %s είναι %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: Τέλος-Αρχείου (EOF) σε %s\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:49
msgid "Paul Eggert"
-msgstr ""
+msgstr "Paul Eggert"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:50
msgid "Mike Haertel"
-msgstr ""
+msgstr "Mike Haertel"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:51
msgid "David Hayes"
-msgstr ""
+msgstr "David Hayes"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:52
msgid "Richard Stallman"
-msgstr ""
+msgstr "Richard Stallman"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:53
msgid "Len Tower"
-msgstr ""
+msgstr "Len Tower"
-#: src/diff.c:339
-#, fuzzy, c-format
+#: src/diff.c:351
+#, c-format
msgid "invalid context length '%s'"
-msgstr "άκυρο μήκος συμφραζομένων «%s»"
+msgstr "μη Îγκυρο μήκος συμφραζομένων «%s»"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "Η αρίθμιση σελίδων δεν υποστηρίζεται σ' αυτόν τον υπολογιστή"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
-msgstr "πάρα πολλές επιλογές ετικέτας αρχείου"
+msgstr "πάρα πολλές επιλογές ετικέττας αρχείου"
-#: src/diff.c:514
-#, fuzzy, c-format
+#: src/diff.c:526
+#, c-format
msgid "invalid width '%s'"
msgstr "άκυρο πλάτος «%s»"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "αντικρουόμενες επιλογές πλάτους"
-#: src/diff.c:543
-#, fuzzy, c-format
+#: src/diff.c:555
+#, c-format
msgid "invalid horizon length '%s'"
msgstr "άκυρο μήκος ορίζοντα «%s»"
-#: src/diff.c:598
-#, fuzzy, c-format
+#: src/diff.c:611
+#, c-format
msgid "invalid tabsize '%s'"
msgstr "άκυρο μήκος στηλοθέτησης `%s'"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "αντικρουόμενες επιλογές μήκους στηλοθέτησης"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "--from-file και --to-file έχουν οριστεί μαζί"
-#: src/diff.c:854
-#, fuzzy
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
-msgstr "--normal Δημιουργία ενός `diff' σε κανονική μορφή."
+msgstr " --normal Δημιουργία ενός κανονικού `diff' (προεπιλογή)"
-#: src/diff.c:855
-#, fuzzy
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
-msgstr "-q --brief Î\88ξοδοÏ\82 μÏ\8cνο Ï\8cÏ\84αν Ï\84α αÏ\81Ï\87εία διαÏ\86ÎÏ\81οÏ\85ν."
+msgstr "-q --brief αÏ\80οÏ\84ÎλεÏ\83μα Ï\83Ï\84ην Îξοδο μÏ\8cνο αν Ï\84' αÏ\81Ï\87εία διαÏ\86ÎÏ\81οÏ\85ν"
-#: src/diff.c:856
-#, fuzzy
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
-msgstr "-s --report-identical-files Ειδοποιεί όταν δύο αρχεία είναι ίδια."
+msgstr "-s, --report-identical-files Ειδοποιεί όταν δύο αρχεία είναι ίδια"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
+"-c, -C NUM, --context[=NUM] έξοδος NUM (προεπιλογή 3) γραμμές of copied "
+"context"
-#: src/diff.c:858
-#, fuzzy
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
-"-w ΑΡ --width=ΑΡ Έξοδος με το πολύ ΑΡ στήλες εκτύπωσης (προεπιλογή 130)."
+"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
-#: src/diff.c:859
-#, fuzzy
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
-msgstr "-e --ed Δημιουργία προγράμματος εντολών για τον `ed'."
+msgstr "-e, --ed εμφανίζει ένα ed script"
-#: src/diff.c:860
-#, fuzzy
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
-msgstr "-n --rcs Δημιουργία αρχείου `diff' σε μορφή RCS."
+msgstr "-n --rcs Δημιουργία αρχείου «diff» σε μορφή RCS."
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
-msgstr ""
+msgstr "-y, --side-by-side έξοδος σε δυο στήλες"
-#: src/diff.c:862
-#, fuzzy
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
-"-w ΑΡ --width=ΑΡ Έξοδος με το πολύ ΑΡ στήλες εκτύπωσης (προεπιλογή 130)."
+"-W, --width=NUM output at most NUM (default 130) print columns"
-#: src/diff.c:863
-#, fuzzy
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
-"-l --left-column Εμφάνιση στην αριστερή στήλη των ταυτόσημων γραμμών."
+"--left-column Εμφάνιση μόνο της αριστερής στήλης των ταυτόσημων γραμμών."
-#: src/diff.c:864
-#, fuzzy
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
msgstr "-s --suppress-common-lines Οι ταυτόσημες γραμμές δεν εμφανίζονται."
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
+"-p, --show-c-function εμφάνιση σε ποιά συνάρτηση C βρίσκεται κάθε αλλαγή"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
+"-F, --show-function-line=RE εμφάνιση του πιο πρόσφατου ταιριάσματος "
+"γραμμής RE"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+"-L, --label=LABEL χρήση LABEL αντί ονόματος αρχείου\n"
+" (μπορεί να επαναληφθεί)"
-#: src/diff.c:871
-#, fuzzy
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
-msgstr "-t --expand-tabs Μετατροπή στηλοθετών σε διαστήματα στην έξοδο."
+msgstr "-t, --expand-tabs Μετατροπή στηλοθετών σε διαστήματα στην έξοδο."
-#: src/diff.c:872
-#, fuzzy
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
-"-T --initial-tab Στοίχιση των στηλοθετών με την επιπρόσθεση ενός στην αρχή."
+"-T, --initial-tab Στοίχιση των στηλοθετών με την επιπρόσθεση ενός στην "
+"αρχή."
-#: src/diff.c:873
-#, fuzzy
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
-"--tabsize=ΑΡ Ο αριθμός διαστημάτων του στηλοθέτη είναι ΑΡ (προεπιλογή 8)."
+" --tabsize=ΑΡ Ο αριθμός διαστημάτων του στηλοθέτη είναι ΑΡ (προεπιλογή 8)"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
+" --suppress-blank-empty απάλειψη διαστήματος ή στ/θέτη πριν από κενές "
+"γραμμές στην έξοδο"
-#: src/diff.c:875
-#, fuzzy
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
-"-l --paginate Έξοδος δια μέσου του `pr' ώστε να αριθμιθούν οι σελίδες."
+" -l, --paginate Έξοδος δια μέσου του «pr» ώστε να αριθμιθούν οι σελίδες"
-#: src/diff.c:877
-#, fuzzy
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
-msgstr "-r --recursive Αναδρομική σύγκριση όσων υποκαταλόγων βρεθούν."
+msgstr "-r, --recursive Αναδρομική σύγκριση όσων υποκαταλόγων βρεθούν"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
-msgstr ""
+msgstr " --no-dereference μην ακολουθείς συμβολικούς συνδέσμους"
-#: src/diff.c:879
-#, fuzzy
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
-msgstr "-N --new-file Θεωρεί τα απόντα αρχεία ως κενά."
+msgstr "-N, --new-file Θεωρεί τα απόντα αρχεία ως κενά"
-#: src/diff.c:880
-#, fuzzy
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr "--unidirectional-new-file Θεωρεί τα απόντα πρώτα αρχεία ως κενά."
-#: src/diff.c:881
-#, fuzzy
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
"--ignore-file-name-case Αγνοεί τις διαφορές λόγω πεζών-κεφαλαίων\n"
-" κατά τη σύγκριση ονομάτων αρχείων."
+" κατά τη σύγκριση ονομάτων αρχείων."
-#: src/diff.c:882
-#, fuzzy
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
"--no-ignore-file-name-case Λαμβάνει υπ' όψιν τις διαφορές λόγω\n"
" πεζών-κεφαλαίων κατά τη σύγκριση ονομάτων αρχείων."
-#: src/diff.c:883
-#, fuzzy
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
-msgstr "-x PAT --exclude=PAT Εξαίρεση αρχείων με όνομα που ταιριάζει με PAT."
+msgstr "-x, --exclude=PAT Εξαίρεση αρχείων με όνομα που ταιριάζει με PAT."
-#: src/diff.c:884
-#, fuzzy
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
-"-X ΑΡΧΕΙΟ --exclude-from=ΑΡΧΕΙΟ Εξαίρεση αρχείων με όνομα που ταιράζει\n"
-" με τα ονόματα που βρίσκονται στο ΑΡΧΕΙΟ."
+"-X, --exclude-from=ΑΡΧΕΙΟ Εξαίρεση αρχείων με όνομα που ταιράζει\n"
+" με τα ονόματα που βρίσκονται στο ΑΡΧΕΙΟ"
-#: src/diff.c:885
-#, fuzzy
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
-"-S ΑΡΧΕΙΟ --starting-file=ΑΡΧΕΙΟ Εκκίνηση σύγκρισης καταλόγων από το "
-"ΑΡΧΕΙΟ."
+"-S, --starting-file=ΑΡΧΕΙΟ Εκκίνηση σύγκρισης καταλόγων από το ΑΡΧΕΙΟ"
-#: src/diff.c:886
-#, fuzzy
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
msgstr ""
-"--from-file=ΑΡΧΕΙΟ1\n"
-" Σύγκριση ΑΡΧΕΙΟ1 με όλους τους τελεστέους.\n"
-" ΑΡΧΕΙΟ1 μπορεί να είναι κατάλογος."
+"--from-file=ΑΡΧΕΙΟ1 Σύγκριση ΑΡΧΕΙΟ1 με όλους τους τελεστέους·\n"
+" ΑΡΧΕΙΟ1 μπορεί να είναι κατάλογος"
-#: src/diff.c:888
-#, fuzzy
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
msgstr ""
-"--to-file=ΑΡΧΕΙΟ2\n"
-" Σύγκριση όλων των τελεστέων στο ΑΡΧΕΙΟ2.\n"
-" ΑΡΧΕΙΟ2 μπορεί να είναι κατάλογος."
+"--to-file=ΑΡΧΕΙΟ2 Σύγκριση όλων των τελεστέων στο ΑΡΧΕΙΟ2·\n"
+" ΑΡΧΕΙΟ2 μπορεί να είναι κατάλογος"
-#: src/diff.c:891
-#, fuzzy
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
-"-i --ignore-case Αγνοεί τις διαφορές λόγω πεζών-κεφαλαίων\n"
-"Ï\83Ï\84α Ï\80εÏ\81ιεÏ\87Ï\8cμενα αÏ\81Ï\87είÏ\89ν."
+"-i, --ignore-case Αγνοεί τις διαφορές λόγω πεζών-κεφαλαίων στα περιεχόμενα "
+"Ï\84Ï\89ν αÏ\81Ï\87είÏ\89ν"
-#: src/diff.c:892
-#, fuzzy
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
-"-E --ignore-tab-expansion Αγνοεί αλλαγές οφειλόμενες στη στηλοθέτηση."
+"-E, --ignore-tab-expansion Αγνοεί αλλαγές οφειλόμενες στη στηλοθέτηση"
-#: src/diff.c:893
-#, fuzzy
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Αγνοεί όλα τα λευκά διαστήματα."
+msgstr ""
+"-Z, --ignore-trailing-space αγνοεί λευκά διαστήματα στο τέλος γραμμής"
-#: src/diff.c:894
-#, fuzzy
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
-"-b --ignore-space-change Αγνοεί αλλαγές οφειλόμενες στα λευκά διαστήματα."
+"-b, --ignore-space-change Αγνοεί αλλαγές οφειλόμενες στον αριθμό λευκών "
+"διαστημάτων."
-#: src/diff.c:895
-#, fuzzy
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
-msgstr "-w --ignore-all-space Αγνοεί όλα τα λευκά διαστήματα."
+msgstr "-w, --ignore-all-space Αγνοεί όλα τα λευκά διαστήματα."
-#: src/diff.c:896
-#, fuzzy
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr ""
-"-B --ignore-blank-lines Αγνοεί αλλαγές οφειλόμενες στις λευκές γραμμές."
+"-B, --ignore-blank-lines Αγνοεί αλλαγές οφειλόμενες στις λευκές γραμμές"
-#: src/diff.c:897
-#, fuzzy
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
-"-I RE --ignore-matching-lines=RE Αγνοεί αλλαγές που οι γραμμές τους "
+"-I, --ignore-matching-lines=RE Αγνοεί αλλαγές που οι γραμμές τους "
"ταιριάζουν με RE."
-#: src/diff.c:899
-#, fuzzy
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
-msgstr "-a --text Θεωρεί όλα τα αρχεία ως κείμενο."
+msgstr "-a, --text Θεωρεί όλα τα αρχεία ως κείμενο."
-#: src/diff.c:900
-#, fuzzy
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr "--strip-trailing-cr Απαλειφή του χαρακτήρα επιστροφής στην είσοδο."
-#: src/diff.c:902
-#, fuzzy
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr "--binary Ανάγνωση και εγγραφή πληροφορίας σε δυαδική μορφή."
-#: src/diff.c:905
-#, fuzzy
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
-"-D ΟΝΟΜΑ --ifdef=ΟΝΟΜΑ Έξοδος συγχωνευμένου αρχείου\n"
-"με τις διαφορές `#ifdef NAME'."
+"-D, --ifdef=ΟΝΟΜΑ Έξοδος συγχωνευμένου αρχείου με τις διαφορές «#ifdef "
+"NAME»."
-#: src/diff.c:906
-#, fuzzy
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
-msgstr ""
-"--GTYPE-group-format=GFMT Αντίστοιχο, αλλά μορφοποίηση ομάδων\n"
-" εισόδου GTYPE με GFMT."
+msgstr "--GTYPE-group-format=GFMT μορφοποίηση ομάδων εισόδου GTYPE με GFMT."
-#: src/diff.c:907
-#, fuzzy
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
-"--line-format=LFMT Αντίστοιχο, αλλά μορφοποίηση\n"
-"όλων των γραμμών εισόδου με LFMT."
+"--line-format=LFMT μορφοποίηση όλων των γραμμών εισόδου με LFMT"
-#: src/diff.c:908
-#, fuzzy
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
-msgstr ""
-"--LTYPE-line-format=LFMT Αντίστοιχο, αλλά μορφοποίηση \n"
-"γραμμών εισόδου LTYPE με LFMT."
+msgstr "--LTYPE-line-format=LFMT μορφοποίηση γραμμών εισόδου LTYPE με LFMT."
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
+"Αυτές οι επιλογές μορφής παρέχουν λεπτομερή έλεγχο πάνω στην έξοδο\n"
+" του diff, γενικεύοντας -D/--ifdef."
-#: src/diff.c:911
-#, fuzzy
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
-" LTYPE είναι `old', `new', ή `unchanged'. GTYPE είναι LTYPE ή `changed'."
+" LTYPE είναι «old», «new», ή «unchanged». GTYPE είναι LTYPE ή «changed»."
-#: src/diff.c:912
-#, fuzzy
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" L αριθμός τελευταίας γραμμής\n"
" N αριθμός γραμμών = L-F+1\n"
" E F-1\n"
-" M L+1"
+" M L+1\n"
+" %(A=B?T:E) αν A ίσον B τότε T αλλιώς E"
-#: src/diff.c:924
-#, fuzzy
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %L για το περιεχόμενο της γραμμής\n"
" %l για το περιεχόμενο της γραμμής χωρίς το τέλος γραμμής\n"
" %[-][ΠΛΑΤΟΣ][.[PREC]]{doxX}n την προδιαγραφή του αριθμού γραμμής\n"
-" ειÏ\83Ï\8cδοÏ\85 ανάλογα με τη μορφή της printf()"
+" ειÏ\83Ï\8cδοÏ\85 καÏ\84ά τη μορφή της printf()"
-#: src/diff.c:928
-#, fuzzy
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO' the character with octal code OOO\n"
" C the character C (other characters represent themselves)"
msgstr ""
-"GFMT ή LFMT μπορούν να περιέχουν:\n"
+" GFMT και LFMT μπορεί να περιέχουν:\n"
" %% %\n"
-" %c'C' τον ίδιο το χαρακτήρα C\n"
-" %c'\\OOO' το χαρακτήρα με οκταδικό κωδικό OOO"
+" %c'C' το μοναδικό χαρακτήρα C\n"
+" %c'\\OOO' το χαρακτήρα με οκταδικό κωδικό OOO\n"
+" C το χαρακτήρα C (οι άλλοι χαρακτήρες αναπαριστούν τον εαυτόν τους)"
-#: src/diff.c:934
-#, fuzzy
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr ""
-"-d --minimal Αν είναι δυνατόν εμφάνιση του μικρότερου συνόλου διαφορών."
+msgstr "-d --minimal προσπάθεια εύρεσης μικρότερου συνόλου διαφορών."
-#: src/diff.c:935
-#, fuzzy
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
"--horizon-lines=ΑΡ Διατηρεί ΑΡ γραμμές με ταυτόσημα προθέματα κι επιθέματα."
-#: src/diff.c:936
-#, fuzzy
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
-"-H --speed-large-files Υποθέτει μεγάλα αρχεία με πολλές σκόρπιες "
-"μικροαλλαγές."
+"--speed-large-files Υποθέτει μεγάλα αρχεία με πολλές σκόρπιες μικροαλλαγές."
-#: src/diff.c:938
-msgid " --help display this help and exit"
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:967
#, fuzzy
-msgid "-v, --version output version information and exit"
-msgstr "-v --version Έξοδος ονόματος κι έκδοσης."
+msgid " or 'auto' (the default)"
+msgstr " --normal Δημιουργία ενός κανονικού `diff' (προεπιλογή)"
-#: src/diff.c:941
-#, fuzzy
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
msgstr ""
-"ΑΡΧΕΙΑ είναι `ΑΡΧΕΙΟ1 ΑΡΧΕΙΟ2' ή `ΚΑΤ1 ΚΑΤ2' ή `ΚΑΤ ΑΡΧΕΙΟ...' ή `ΑΡΧΕΙΟ... "
-"ΚΑΤ'."
-#: src/diff.c:942
+#: src/diff.c:971
+msgid " --help display this help and exit"
+msgstr " --help εμφάνιση αυτής εδώ της βοήθειας κι έξοδος"
+
+#: src/diff.c:972
+msgid "-v, --version output version information and exit"
+msgstr "-v --version Εμφάνιση πληροφοριών έκδοσης κι έξοδος"
+
+#: src/diff.c:974
#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
+msgstr ""
+"ΑΡΧΕΙΑ είναι «ΑΡΧΕΙΟ1 ΑΡΧΕΙΟ2» ή «ΚΑΤ1 ΚΑΤ2» ή «ΚΑΤ ΑΡΧΕΙΟ...» ή «ΑΡΧΕΙΟ..."
+"ΚΑΤ»."
+
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
-"Αν το --from-file ή --to-file είναι δεδομένο, τότε δεν υπάρχει περιορισμός "
-"στα ΑΡΧΕΙΑ."
+"Αν δίδεται το --from-file ή το --to-file, τότε δεν υπάρχει περιορισμός στα "
+"ΑΡΧΕΙΑ."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
-#, fuzzy
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
-msgstr "Αν ένα ΑΡΧΕΙΟ είναι `-', τότε ανάγνωση από την τυπική είσοδο."
+msgstr "Αν ένα ΑΡΧΕΙΟ είναι «-», τότε ανάγνωση από την τυπική είσοδο."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Χρήση: %s [ΕΠΙΛΟΓΗ]... ΑΡΧΕΙΑ\n"
-#: src/diff.c:954
-#, fuzzy
+#: src/diff.c:987
msgid "Compare FILES line by line."
msgstr "Σύγκριση αρχείων γραμμή προς γραμμή."
-#: src/diff.c:988
-#, fuzzy, c-format
+#: src/diff.c:1021
+#, c-format
msgid "conflicting %s option value '%s'"
msgstr "η επιλογή %s είναι αντικρουόμενη με την τιμή «%s»"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "αντικρουόμενες επιλογές για τη μορφή εξόδου"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "άκυρο πλάτος «%s»"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Μόνο στο %s: %s\n"
-#: src/diff.c:1192
-#, fuzzy
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
-msgstr "Αδύνατη η σύγκριση του `-' με ένα κατάλογο"
+msgstr "Αδύνατη η σύγκριση του «-» με ένα κατάλογο"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
-msgstr "Η επιλογή -D δεν υποστηρίζεται για καταλόγους."
+msgstr "Η επιλογή -D δεν υποστηρίζεται για καταλόγους"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Οι υποκατάλογοι %s και %s είναι ταυτόσημοι\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "Το αρχείο %s είναι %s ενώ το αρχείο %s είναι %s\n"
-#: src/diff.c:1314
-#, fuzzy, c-format
+#: src/diff.c:1362
+#, c-format
msgid "Symbolic links %s and %s differ\n"
-msgstr "Τα αÏ\81Ï\87εία %s και %s διαφέρουν\n"
+msgstr "Î\9fι Ï\83Ï\85μβολικοί Ï\83Ï\8dνδεÏ\83μοι %s και %s διαφέρουν\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Τα αρχεία %s καί %s είναι πανομοιότυπα\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff3.c:41
msgid "Randy Smith"
-msgstr ""
+msgstr "Randy Smith"
#: src/diff3.c:313
#, c-format
msgstr "ασύμβατες επιλογές"
#: src/diff3.c:353
-#, fuzzy
msgid "'-' specified for more than one input file"
-msgstr "`-' ορίστηκε για περισσότερα από ένα αρχεία εισόδου"
+msgstr "«-» ορίστηκε για περισσότερα από ένα αρχεία εισόδου"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "αποτυχία ανάγνωσης"
#: src/diff3.c:428
-#, fuzzy
msgid "-A, --show-all output all changes, bracketing conflicts"
-msgstr "-A --show-all Î\88ξοδοÏ\82 Ï\8cλÏ\89ν Ï\84Ï\89ν αλλαγών σε αγκύλες."
+msgstr "-A --show-all Î\88ξοδοÏ\82 Ï\8cλÏ\89ν Ï\84Ï\89ν διαÏ\86οÏ\81ών σε αγκύλες."
#: src/diff3.c:430
-#, fuzzy
msgid ""
"-e, --ed output ed script incorporating changes\n"
" from OLDFILE to YOURFILE into MYFILE"
msgstr ""
-"-e --ed Έξοδος ασυγχώνευτων αλλαγών από OLDFILE σε YOURFILE στο MYFILE."
+"-e, --ed έξοδος ενός ed script που περιλαμβάνει τις αλλαγές από OLDFILE σε "
+"YOURFILE στο MYFILE"
#: src/diff3.c:432
-#, fuzzy
msgid "-E, --show-overlap like -e, but bracket conflicts"
-msgstr "-E --show-overlap Έξοδος ασυγχώνευτων αλλαγών σε αγκύλες."
+msgstr "-E, --show-overlap όπως -e, αλλά οι διαφορές σε αγκύλες"
#: src/diff3.c:433
-#, fuzzy
msgid ""
"-3, --easy-only like -e, but incorporate only nonoverlapping "
"changes"
-msgstr "-3 --easy-only Έξοδος ασυγχώνευτων μη επικαλυπτόμενων αλλαγών."
+msgstr ""
+"-3, --easy-only όπως -e, αλλά περιλαμβάνει μόνο τις μη "
+"αλληλοεπικαλυπτόμενες αλλαγές"
#: src/diff3.c:434
-#, fuzzy
msgid ""
"-x, --overlap-only like -e, but incorporate only overlapping changes"
-msgstr "-x --overlap-only Έξοδος μόνο των αλλαγών που επικαλύπτονται."
+msgstr ""
+"-x, --overlap-only όπως -e, αλλά περιλαμβάνει μόνο τις αλληλοκαλυπτόμενες "
+"αλλαγές"
#: src/diff3.c:435
msgid "-X like -x, but bracket conflicts"
-msgstr ""
+msgstr "-X like -x, but bracket conflicts"
#: src/diff3.c:436
-#, fuzzy
msgid "-i append 'w' and 'q' commands to ed scripts"
-msgstr "-i Προσάρτηση των διαταγών `w' και `q' στα σενάρια του `ed'."
+msgstr "-i προσάρτηση των εντολών «w» και «q» στα σενάρια του «ed»"
#: src/diff3.c:438
msgid ""
"-m, --merge output actual merged file, according to\n"
" -A if no other options are given"
msgstr ""
+"-m, --merge έξοδος του συγχωνευμένου αρχείου σύμφωνα με την\n"
+" -A αν δεν δίνεται άλλη επιλογή"
#: src/diff3.c:441
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Θεωρεί όλα τα αρχεία ως κείμενο."
+msgstr "-a, --text Θεωρεί όλα τα αρχεία ως κείμενο."
#: src/diff3.c:442
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr "--strip-trailing-cr Απαλειφή του χαρακτήρα επιστροφής στην είσοδο."
#: src/diff3.c:443
-#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
-"-T --initial-tab Στοίχιση των στηλοθετών με την επιπρόσθεση ενός στην αρχή."
+"-T, --initial-tab στοίχιση των στηλοθετών με την επιπρόσθεση ενός στην "
+"αρχή."
#: src/diff3.c:444
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
msgstr "--diff-program=ΠΡΟΓΡ Χρήση του ΠΡΟΓΡάμματος στη σύγκριση αρχείων."
"-L, --label=LABEL use LABEL instead of file name\n"
" (can be repeated up to three times)"
msgstr ""
+"-L, --label=LABEL χρήση LABEL αντί ονόματος αρχείου\n"
+" (μπορεί να επαναληφθεί μέχρι τρεις φορές)"
#: src/diff3.c:448
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help εμφάνιση αυτής εδώ της βοήθειας κι έξοδος"
#: src/diff3.c:449
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Έξοδος ονόματος κι έκδοσης."
+msgstr "-v, --version εμφάνιση πληροφοριών έκδοσης κι έξοδος"
#: src/diff3.c:458
#, c-format
"and output the actual merged file. For unusual input, this is more\n"
"robust than using ed.\n"
msgstr ""
+"\n"
+"Η προεπιλεγμένη μορφή εξόδου είναι η λίγο πολύ αναγνώσιμη αναπαράσταση των "
+"αλλαγών.\n"
+"\n"
+"Οι -e, -E, -x, -X (και οι αντίστοιχες μακρές) επιλογές δημιουργούν ένα ed "
+"script\n"
+"στην έξοδο αντί της προεπιλογής.\n"
+"\n"
+"Τελικά, η επιλογή -m (--merge) υποχρεώνει το diff3 να κάνει τη συγχώνευση "
+"εσωτερικά\n"
+"και να εμφανίσει στην έξοδο το συγχωνευμένο αρχείο. Για μη συνηθισμένη "
+"είσοδο, αυτό είναι\n"
+"σταθερότερο απο την χρήση του ed.\n"
#: src/diff3.c:482
msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble."
#: src/diff3.c:675
msgid "internal error: screwup in format of diff blocks"
-msgstr "εσωτερικό σφάλμα: μπέρδεμα στις μορφές των μπλοκ `diff'"
+msgstr "εσωτερικό σφάλμα: μπέρδεμα στις μορφές των μπλοκ diff"
#: src/diff3.c:968
#, c-format
msgid "%s: diff failed: "
-msgstr "%s: αποτυχία του `diff': "
+msgstr "%s: αποτυχία του diff: "
#: src/diff3.c:990
msgid "internal error: invalid diff type in process_diff"
-msgstr "εσωτερικό σφάλμα: άκυρος τύπος `diff' στο process_diff"
+msgstr "εσωτερικό σφάλμα: άκυρος τύπος diff στο process_diff"
#: src/diff3.c:1015
msgid "invalid diff format; invalid change separator"
-msgstr "άκυρη μορφή `diff': άκυρος οριοθέτης αλλαγής"
+msgstr "άκυρη μορφή diff· άκυρος οριοθέτης αλλαγής"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
-msgstr "άκυρη μορφή `diff': ασυμπλήρωτη τελευταία γραμμή"
+msgstr "άκυρη μορφή diff· ασυμπλήρωτη τελευταία γραμμή"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
-#, fuzzy, c-format
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
+#, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "το υποπρόγραμμα «%s» δεν ήταν δυνατόν να κληθεί"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
-msgstr "άκυρη μορφή `diff': λάθος χαρακτήρες στη γραμμή αποτελεσμάτων"
+msgstr "άκυρη μορφή diff· λάθος χαρακτήρες στη γραμμή αποτελεσμάτων"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
-msgstr "εσωτερικό σφάλμα: άκυρος τύπος `diff' πέρασε στην έξοδο"
+msgstr "εσωτερικό σφάλμα: άκυρος τύπος diff πέρασε στην έξοδο"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "Το αρχείο εισόδου συρρικνώθηκε"
-#: src/dir.c:158
-#, fuzzy, c-format
+#: src/dir.c:156
+#, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "αδύνατη η σύγκριση των ονομάτων αρχείων «%s» και «%s»"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
-msgstr ""
+msgstr "%s: αναδρομικός βρόχος στον κατάλογο"
#. This is a proper name. See the gettext manual, section Names.
#: src/sdiff.c:42
msgid "Thomas Lord"
-msgstr ""
+msgstr "Thomas Lord"
#: src/sdiff.c:173
-#, fuzzy
msgid ""
"-o, --output=FILE operate interactively, sending output to FILE"
msgstr ""
-"-o ΑΡΧΕΙΟ --output=ΑΡΧΕΙΟ Αλληλεπιδραστική λειτουργία\n"
-" με αποστολή εξόδου στο ΑΡΧΕΙΟ."
+"-o, --output=ΑΡΧΕΙΟ Αλληλεπιδραστική λειτουργία με αποστολή εξόδου στο "
+"ΑΡΧΕΙΟ."
#: src/sdiff.c:175
-#, fuzzy
msgid ""
"-i, --ignore-case consider upper- and lower-case to be the same"
-msgstr "-i --ignore-case Θεωρεί πεζά-κεφαλαία ίδια."
+msgstr "-i, --ignore-case Θεωρεί πεζά-κεφαλαία ίδια"
#: src/sdiff.c:176
-#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
-"-E --ignore-tab-expansion Αγνοεί αλλαγές οφειλόμενες στη στηλοθέτηση."
+"-E, --ignore-tab-expansion Αγνοεί αλλαγές οφειλόμενες στη στηλοθέτηση"
#: src/sdiff.c:177
-#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Αγνοεί όλα τα λευκά διαστήματα."
+msgstr ""
+"-Z, --ignore-trailing-space αγνοεί το λευκό διάστημα στο τέλος γραμμής"
#: src/sdiff.c:178
-#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
-"-b --ignore-space-change Αγνοεί αλλαγές οφειλόμενες στα λευκά διαστήματα."
+"-b --ignore-space-change αγνοεί αλλαγές οφειλόμενες στον αριθμό λευκών "
+"διαστημάτων"
#: src/sdiff.c:179
-#, fuzzy
msgid "-W, --ignore-all-space ignore all white space"
-msgstr "-W --ignore-all-space Αγνοεί όλα τα λευκά διαστήματα."
+msgstr "-W, --ignore-all-space Αγνοεί όλα τα λευκά διαστήματα."
#: src/sdiff.c:180
-#, fuzzy
msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank"
msgstr ""
-"-B --ignore-blank-lines Αγνοεί αλλαγές οφειλόμενες στις λευκές γραμμές."
+"-B, --ignore-blank-lines Αγνοεί αλλαγές οφειλόμενες στις λευκές γραμμές"
#: src/sdiff.c:181
-#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE"
msgstr ""
-"-I RE --ignore-matching-lines=RE Αγνοεί αλλαγές που οι γραμμές τους "
-"ταιριάζουν με RE."
+"-I, --ignore-matching-lines=RE αγνοεί αλλαγές που οι γραμμές τους "
+"ταιριάζουν με RE"
#: src/sdiff.c:182
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Απαλειφή του χαρακτήρα επιστροφής στην είσοδο."
+msgstr "--strip-trailing-cr Απαλειφή του χαρακτήρα επιστροφής στην είσοδο"
#: src/sdiff.c:183
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Θεωρεί όλα τα αρχεία ως κείμενο."
+msgstr "-a --text Θεωρεί όλα τα αρχεία ως κείμενο"
#: src/sdiff.c:185
-#, fuzzy
msgid ""
"-w, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
-"-w ΑΡ --width=ΑΡ Έξοδος με το πολύ ΑΡ στήλες εκτύπωσης (προεπιλογή 130)."
+"-w, --width=ΑΡ Έξοδος με το πολύ ΑΡ στήλες εκτύπωσης (προεπιλογή 130)."
#: src/sdiff.c:186
-#, fuzzy
msgid ""
"-l, --left-column output only the left column of common lines"
-msgstr ""
-"-l --left-column Εμφάνιση στην αριστερή στήλη των ταυτόσημων γραμμών."
+msgstr "-l, --left-column Εμφάνιση στην αριστερή στήλη των κοινών γραμμών"
#: src/sdiff.c:187
-#, fuzzy
msgid "-s, --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines Οι ταυτόσημες γραμμές δεν εμφανίζονται."
+msgstr "-s, --suppress-common-lines Οι ταυτόσημες γραμμές δεν εμφανίζονται"
#: src/sdiff.c:189
-#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
-msgstr "-t --expand-tabs Μετατροπή στηλοθετών σε διαστήματα στην έξοδο."
+msgstr "-t, --expand-tabs Μετατροπή στηλοθετών σε διαστήματα στην έξοδο"
#: src/sdiff.c:190
-#, fuzzy
msgid ""
" --tabsize=NUM tab stops at every NUM (default 8) print columns"
msgstr ""
-"--tabsize=ΑΡ Ο αριθμός διαστημάτων του στηλοθέτη είναι ΑΡ (προεπιλογή 8)."
+" --tabsize=ΑΡ Ο αριθμός διαστημάτων του στηλοθέτη είναι ΑΡ (προεπιλογή 8) "
+"στήλες"
#: src/sdiff.c:192
-#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr ""
-"-d --minimal Αν είναι δυνατόν εμφάνιση του μικρότερου συνόλου διαφορών."
+msgstr "-d, --minimal προσπάθεια εύρεσης μικρότερου συνόλου αλλαγών"
#: src/sdiff.c:193
-#, fuzzy
msgid ""
"-H, --speed-large-files assume large files, many scattered small changes"
msgstr ""
-"-H --speed-large-files Υποθέτει μεγάλα αρχεία με πολλές σκόρπιες "
-"μικÏ\81οαλλαγÎÏ\82."
+"-H, --speed-large-files Υποθέτει μεγάλα αρχεία με πολλές σκόρπιες "
+"μικÏ\81οδιαÏ\86οÏ\81ÎÏ\82"
#: src/sdiff.c:194
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
-msgstr "--diff-program=ΠΡΟΓΡ Χρήση του ΠΡΟΓΡάμματος στη σύγκριση αρχείων."
+msgstr "--diff-program=ΠΡΟΓΡ Χρήση του ΠΡΟΓΡάμματος στη σύγκριση αρχείων"
#: src/sdiff.c:196
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help εμφάνιση αυτής εδώ της βοήθειας κι έξοδος "
#: src/sdiff.c:197
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Î\88ξοδοÏ\82 ονÏ\8cμαÏ\84οÏ\82 κι ÎκδοÏ\83ηÏ\82."
+msgstr "-v --version ονÏ\8cμα, ÎκδοÏ\83η κι ÎξοδοÏ\82"
#: src/sdiff.c:206
#, c-format
msgstr "Χρήση: %s [ΕΠΙΛΟΓΗ]... ΑΡΧΕΙΟ1 ΑΡΧΕΙΟ2\n"
#: src/sdiff.c:208
-#, fuzzy
msgid "Side-by-side merge of differences between FILE1 and FILE2."
-msgstr "Συγχώνευση δίπλα-δίπλα των διαφορών του αρχείου."
+msgstr "Συγχώνευση δίπλα-δίπλα των διαφορών των ΑΡΧΕΙΟ1 και ΑΡΧΕΙΟ2."
#: src/sdiff.c:329
msgid "cannot interactively merge standard input"
msgstr "και τα δύο προς σύγκριση αρχεία είναι κατάλογοι"
#: src/sdiff.c:818
-#, fuzzy
msgid ""
"ed:\tEdit then use both versions, each decorated with a header.\n"
"eb:\tEdit then use both versions.\n"
"v:\tΣυμπεριλαμβάνει τις ταυτόσημες γραμμές και το επισημαίνει.\n"
"q:\tΈξοδος.\n"
-#~ msgid "%s: illegal option -- %c\n"
-#~ msgstr "%s: η επιλογή -- %c είναι παράτυπη\n"
-
-#~ msgid ""
-#~ "This is free software; see the source for copying conditions. There is "
-#~ "NO\n"
-#~ "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR "
-#~ "PURPOSE.\n"
-#~ msgstr ""
-#~ "This is free software; see the source for copying conditions. There is "
-#~ "NO\n"
-#~ "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR "
-#~ "PURPOSE.\n"
-
-#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
-#~ msgstr "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
-
-#~ msgid "-s --quiet --silent Output nothing; yield exit status only."
-#~ msgstr ""
-#~ "-s --quiet --silent Ουδεμία έξοδος, μόνο μήνυμα πέρατος εκτέλεσης."
-
-#~ msgid "--help Output this help."
-#~ msgstr "--help Έξοδος αυτής εδώ της βοήθειας."
-
-#~ msgid "Report bugs to <bug-gnu-utils@gnu.org>."
-#~ msgstr "Αναφέρατε σφάλματα στη <bug-gnu-utils@gnu.org>."
-
-#~ msgid "`-%ld' option is obsolete; use `-%c %ld'"
-#~ msgstr "η επιλογή «-%ld» έχει καταργηθεί, χρησιμοποιείστε την «-%c %ld»"
-
-#~ msgid "`-%ld' option is obsolete; omit it"
-#~ msgstr "η επιλογή «-%ld» έχει καταργηθεί, παραλείψτε την "
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: η επιλογή «--%s» δεν αναγνωρίζεται\n"
-#~ msgid ""
-#~ "-c -C NUM --context[=NUM] Output NUM (default 3) lines of copied "
-#~ "context.\n"
-#~ "-u -U NUM --unified[=NUM] Output NUM (default 3) lines of unified "
-#~ "context.\n"
-#~ " --label LABEL Use LABEL instead of file name.\n"
-#~ " -p --show-c-function Show which C function each change is in.\n"
-#~ " -F RE --show-function-line=RE Show the most recent line matching RE."
-#~ msgstr ""
-#~ "-c -C ΑΡ --context[=ΑΡ] Έξοδος ΑΡ (προεπιλογή 3) γραμμών\n"
-#~ " συμφραζομένων.\n"
-#~ "-u -U ΑΡ --unified[=ΑΡ] Έξοδος ΑΡ (προεπιλογή 3) γραμμών\n"
-#~ " ενοποιημένων συμφραζομένων.\n"
-#~ " --label LABEL Χρήση LABEL αντί όνοματος αρχείου.\n"
-#~ " -p --show-c-function Δείχνει τη συνάρτηση της C\n"
-#~ " που περιέχει κάθε διαφορά.\n"
-#~ "-F RE --show-function-line=RE Δείχνει την πιο πρόσφατη γραμμή\n"
-#~ " που ταιριάζει με τη RE."
-
-#~ msgid ""
-#~ "-y --side-by-side Output in two columns.\n"
-#~ " -W NUM --width=NUM Output at most NUM (default 130) print columns.\n"
-#~ " --left-column Output only the left column of common lines.\n"
-#~ " --suppress-common-lines Do not output common lines."
-#~ msgstr ""
-#~ "-y --side-by-side Έξοδος σε δύο στήλες.\n"
-#~ " -W ΑΡ --width=ΑΡ Έξοδος με ΑΡ το πολύ χαρακτήρες ανά γραμμή "
-#~ "(προεπιλογή 130).\n"
-#~ " --left-column Έξοδος μόνο αριστερής στήλης με τις ταυτόσημες γραμμές.\n"
-#~ " --suppress-common-lines Δεν εμφανίζει τις ταυτόσημες γραμμές."
-
-#~ msgid ""
-#~ "--speed-large-files Assume large files and many scattered small changes."
-#~ msgstr ""
-#~ "--speed-large-files Υποθέτει μεγάλα αρχεία και πολλές σκόρπιες "
-#~ "μικροαλλαγές."
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
-#~ msgid "-X Output overlapping changes, bracketing them."
-#~ msgstr "-X Έξοδος των αλλαγών που επικαλύπτονται, σε αγκύλες."
+#~ msgid "-v, --version output version information and exit"
+#~ msgstr "-v --version εμφάνιση έκδοσης κι έξοδος."
-#~ msgid "-m --merge Output merged file instead of ed script (default -A)."
+#~ msgid " --label LABEL use LABEL instead of file name (can be repeated)"
#~ msgstr ""
-#~ "-m --merge Έξοδος αρχείου συγχώνευσης αντί σεναρίου εντολών "
-#~ "`ed' (προεπιλογή -A)."
-
-#~ msgid "-L LABEL --label=LABEL Use LABEL instead of file name."
-#~ msgstr "-L ΕΤΙΚ --label=ΕΤΙΚ Χρήση ΕΤΙΚέτας αντί του ονόματος αρχείου."
-
-#~ msgid "subsidiary program `%s' not found"
-#~ msgstr "Δε βρέθηκε το βοηθητικό πρόγραμμα <%s>"
-
-#~ msgid "subsidiary program `%s' failed"
-#~ msgstr "Αποτυχία του βοηθητικού προγράμματος «%s»"
-
-#~ msgid "subsidiary program `%s' failed (exit status %d)"
-#~ msgstr "το βοηθητικό πρόγραμμα «%s» διεκόπη (κατάσταση έξοδου %d)"
+#~ " --label LABEL χρήση LABEL αντί ονόματος αρχείου (μπορεί να "
+#~ "επαναληφθεί)"
# Esperantaj mesaĝoj por GNU diffutils.
-# Copyright (C) 1996 Free Software Foundation, Inc.
-# Edmund GRIMLEY EVANS <edmundo@rano.org>, 2001-2004.
+# Copyright (C) 1996, 2001, 2002, 2004, 2013 Free Software Foundation, Inc.
+# This file is distributed under the same license as the diffutils package.
+# Edmund GRIMLEY EVANS <edmundo@rano.org>, 2001, 2002, 2003, 2004.
+# Felipe Castro <fefcas@gmail.com>, 2013.
#
msgid ""
msgstr ""
-"Project-Id-Version: GNU diffutils 2.8.7\n"
+"Project-Id-Version: GNU diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
-"PO-Revision-Date: 2004-05-22 15:31+0100\n"
-"Last-Translator: Edmund GRIMLEY EVANS <edmundo@rano.org>\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
+"PO-Revision-Date: 2013-10-31 13:16-0300\n"
+"Last-Translator: Felipe Castro <fefcas@gmail.com>\n"
"Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
"Language: eo\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8-bit\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.5.4\n"
+
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "malvalida %s%s-argumento '%s'"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "malvalida %s%s-argumento '%s'"
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
-msgstr "programeraro"
+msgstr "program-eraro"
#: lib/c-stack.c:205 lib/c-stack.c:298
msgid "stack overflow"
msgstr "stako tro granda"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Nekonata sistemeraro"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "normala malplena dosiero"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "normala dosiero"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "dosierujo"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "blokaparatdosiero"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "signoaparatdosiero"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "simbola ligo"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "konektilo"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "mesaĝovico"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semaforo"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "komuna memoro"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "tipita memora objekto"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "blok-aparatdosiero"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "sign-aparatdosiero"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "blok-aparatdosiero"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "sign-aparatdosiero"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "stranga dosiero"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "blok-aparatdosiero"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "konektilo"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "stranga dosiero"
-#: lib/getopt.c:547 lib/getopt.c:576
-#, fuzzy, c-format
+#: lib/getopt.c:575 lib/getopt.c:604
+#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
-msgstr "%s: opcio '%s' estas plursenca\n"
+msgstr "%s: la modifilo '%s' estas plursenca; ebloj:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: la modifilo '-W %s' estas plursenca\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
+#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
-msgstr "%s: opcio '--%s' ne permesas argumenton\n"
+msgstr "%s: la modifilo '--%s' ne permesas argumenton\n"
-#: lib/getopt.c:637 lib/getopt.c:642
-#, fuzzy, c-format
+#: lib/getopt.c:667 lib/getopt.c:672
+#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
-msgstr "%s: opcio '%c%s' ne permesas argumenton\n"
+msgstr "%s: la modifilo '%c%s' ne permesas argumenton\n"
-#: lib/getopt.c:685 lib/getopt.c:704
-#, fuzzy, c-format
+#: lib/getopt.c:715 lib/getopt.c:734
+#, c-format
msgid "%s: option '--%s' requires an argument\n"
-msgstr "%s opcio '%s' postulas argumenton\n"
+msgstr "%s: la modifilo '--%s' postulas argumenton\n"
-#: lib/getopt.c:742 lib/getopt.c:745
-#, fuzzy, c-format
+#: lib/getopt.c:772 lib/getopt.c:775
+#, c-format
msgid "%s: unrecognized option '--%s'\n"
-msgstr "%s: nekonata opcio '--%s'\n"
+msgstr "%s: nerekonata modifilo '--%s'\n"
-#: lib/getopt.c:753 lib/getopt.c:756
-#, fuzzy, c-format
+#: lib/getopt.c:783 lib/getopt.c:786
+#, c-format
msgid "%s: unrecognized option '%c%s'\n"
-msgstr "%s: nekonata opcio '%c%s'\n"
+msgstr "%s: nerekonata modifilo '%c%s'\n"
-#: lib/getopt.c:805 lib/getopt.c:808
-#, fuzzy, c-format
+#: lib/getopt.c:835 lib/getopt.c:838
+#, c-format
msgid "%s: invalid option -- '%c'\n"
-msgstr "%s: nevalida opcio -- %c\n"
+msgstr "%s: malvalida modifilo -- '%c'\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
-#, fuzzy, c-format
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
+#, c-format
msgid "%s: option requires an argument -- '%c'\n"
-msgstr "%s: opcio postulas argumenton -- %c\n"
+msgstr "%s: la modifilo postulas argumenton -- '%c'\n"
-#: lib/getopt.c:934 lib/getopt.c:950
-#, fuzzy, c-format
+#: lib/getopt.c:964 lib/getopt.c:980
+#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
-msgstr "%s: opcio '-W %s' estas plursenca\n"
+msgstr "%s: la modifilo '-W %s' estas plursenca\n"
-#: lib/getopt.c:974 lib/getopt.c:992
-#, fuzzy, c-format
+#: lib/getopt.c:1004 lib/getopt.c:1022
+#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
-msgstr "%s: opcio '-W %s' ne permesas argumenton\n"
+msgstr "%s: la modifilo '-W %s' ne permesas argumenton\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
-#, fuzzy, c-format
+#: lib/getopt.c:1043 lib/getopt.c:1061
+#, c-format
msgid "%s: option '-W %s' requires an argument\n"
-msgstr "%s opcio '%s' postulas argumenton\n"
+msgstr "%s: la modifilo '-W %s' postulas argumenton\n"
#. TRANSLATORS:
#. Get translations for open and closing quotation marks.
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
-msgstr ""
+msgstr "‘"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
-msgstr ""
+msgstr "’"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Sukceso"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Nenia trafo"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
-msgstr "Nevalida regula esprimo"
+msgstr "Malvalida regulesprimo"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
-msgstr "Nevalida ordiga signo"
+msgstr "Malvalida ordiga signo"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
-msgstr "Nevalida nomo de signoklaso"
+msgstr "Malvalida nomo de signoklaso"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
-msgstr "'\\' ĉe la fino"
+msgstr "Vosta retroklino"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
-msgstr "Nevalida retroreferenco"
+msgstr "Malvalida retroreferenco"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "Neparigita [ aŭ [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Neparigita ( aŭ \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Neparigita \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
-msgstr "Nevalida kunteksto de \\{\\}"
+msgstr "Malvalida kunteksto de \\{\\}"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
-msgstr "Nevalida fino de gamo"
+msgstr "Malvalida intervalo-fino"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
-msgstr "Memoro elĉerpiĝis"
+msgstr "Memoro estas elĉerpita"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
-msgstr "Nevalida antaŭa regula esprimo"
+msgstr "Malvalida antaŭa regulesprimo"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
-msgstr "Neatendita fino de regula esprimo"
+msgstr "Neatendita fino de regulesprimo"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
-msgstr "Regula esprimo estas tro granda"
+msgstr "Regula esprimo tro grandas"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "Neparigita ) aŭ \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
-msgstr "Mankas antaŭa regula esprimo"
+msgstr "Mankas antaŭa regulesprimo"
#: lib/xalloc-die.c:34
msgid "memory exhausted"
#: lib/xfreopen.c:35
msgid "stdin"
-msgstr ""
+msgstr "ĉefenigujo"
#: lib/xfreopen.c:36
msgid "stdout"
-msgstr ""
+msgstr "ĉefeligujo"
#: lib/xfreopen.c:37
msgid "stderr"
-msgstr ""
+msgstr "ĉeferar-eligujo"
#: lib/xfreopen.c:38
-#, fuzzy
msgid "unknown stream"
-msgstr "Nekonata sistemeraro"
+msgstr "nekonata fluo"
#: lib/xfreopen.c:39
#, c-format
msgid "failed to reopen %s with mode %s"
-msgstr ""
+msgstr "malsukcesis remalfermi %s per reĝimo %s"
#: lib/xstrtol-error.c:63
-#, fuzzy, c-format
+#, c-format
msgid "invalid %s%s argument '%s'"
-msgstr "nevalida valoro '%s' de --bytes"
+msgstr "malvalida %s%s-argumento '%s'"
#: lib/xstrtol-error.c:68
#, c-format
msgid "invalid suffix in %s%s argument '%s'"
-msgstr ""
+msgstr "malvalida sufikso en %s%s-argumento '%s'"
#: lib/xstrtol-error.c:72
#, c-format
msgid "%s%s argument '%s' too large"
-msgstr ""
+msgstr "%s%s-argumento '%s' tro larĝas"
#: lib/version-etc.c:74
#, c-format
msgid "Packaged by %s (%s)\n"
-msgstr ""
+msgstr "Pakigita de %s (%s)\n"
#: lib/version-etc.c:77
#, c-format
msgid "Packaged by %s\n"
-msgstr ""
+msgstr "Pakigita de %s\n"
#. TRANSLATORS: Translate "(C)" to the copyright symbol
#. (C-in-a-circle), if this symbol is available in the user's
#. locale. Otherwise, do not translate "(C)"; leave it as-is.
#: lib/version-etc.c:84
msgid "(C)"
-msgstr ""
+msgstr "©"
#: lib/version-etc.c:86
msgid ""
"There is NO WARRANTY, to the extent permitted by law.\n"
"\n"
msgstr ""
+"\n"
+"Permeso GPLv3+: GNU GPL versio 3 aŭ posta <http://gnu.org/licenses/gpl."
+"html>.\n"
+"Tio ĉi estas libera programaro: vi estas libera por ŝanĝi kaj redisdoni "
+"ĝin.\n"
+"Ekzistas NENIU GARANTIO, laŭ plej amplekse permesate de la leĝoj.\n"
+"\n"
#. TRANSLATORS: %s denotes an author name.
#: lib/version-etc.c:102
"\n"
"Report bugs to: %s\n"
msgstr ""
+"\n"
+"Raportu program-misojn al: %s\n"
+"\n"
+"Raportu tradukajn misojn al: <translation-team-eo@lists.sourceforge.net>\n"
#: lib/version-etc.c:247
#, c-format
msgid "Report %s bugs to: %s\n"
-msgstr ""
+msgstr "Raportu %s misojn al: %s\n"
#: lib/version-etc.c:251
#, c-format
msgid "%s home page: <%s>\n"
-msgstr ""
+msgstr "%s hejm-paĝo: <%s>\n"
#: lib/version-etc.c:253
#, c-format
msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
-msgstr ""
+msgstr "%s hejm-paĝo: <http://www.gnu.org/software/%s/>\n"
#: lib/version-etc.c:256
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr ""
+"Ĝenerala helpo por uzi programaron GNU: <http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Dosieroj %s kaj %s estas malsamaj\n"
-#: src/analyze.c:462
-#, fuzzy, c-format
+#: src/analyze.c:455
+#, c-format
msgid "Binary files %s and %s differ\n"
-msgstr "Dosieroj %s kaj %s estas malsamaj\n"
+msgstr "Ciferecaj dosieroj %s kaj %s estas malsamaj\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Mankas linifino ĉe fino de dosiero"
#. This is a proper name. See the gettext manual, section Names.
#: src/cmp.c:43
msgid "Torbjorn Granlund"
-msgstr "Torbjorn Granlund"
+msgstr "Torbjorn GRANLUND"
#. This is a proper name. See the gettext manual, section Names.
#: src/cmp.c:44
msgid "David MacKenzie"
-msgstr ""
+msgstr "David MACKENZIE"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
-#, fuzzy, c-format
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
+#, c-format
msgid "Try '%s --help' for more information."
msgstr "Provu '%s --help' por pli da informoj."
#: src/cmp.c:137
-#, fuzzy, c-format
+#, c-format
msgid "invalid --ignore-initial value '%s'"
-msgstr "nevalida valoro '%s' de --ignore-initial"
+msgstr "malvalida valoro '%s' de --ignore-initial"
#: src/cmp.c:147
#, c-format
msgid "options -l and -s are incompatible"
-msgstr "opcioj -l kaj -s malkongruas"
+msgstr "modifiloj -l kaj -s malakordas"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "skriberaro"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "normala eligo"
#: src/cmp.c:161
-#, fuzzy
msgid "-b, --print-bytes print differing bytes"
-msgstr "-b --print-bytes Eligi diferencajn bitokojn."
+msgstr "-b, --print-bytes eligi malsamajn bajtojn"
#: src/cmp.c:162
-#, fuzzy
msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs"
-msgstr "-i N --ignore-initial=N Ignori la unuajn N bitokojn de la enigo."
+msgstr ""
+"-i N --ignore-initial=SALTO preterpasi la unuajn SALTO bajtojn de ambaŭ "
+"enigoj"
#: src/cmp.c:163
-#, fuzzy
msgid ""
"-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n"
" first SKIP2 bytes of FILE2"
msgstr ""
-" Ignori la unuajn N1 bitokojn de DOSIERO1 kaj la unuajn N2 bitokojn de "
-"DOSIERO2."
+"-i, --ignore-initial=SALT1:SALT2 pretersalti la unuajn SALT1 bajtojn de\n"
+" DOSIERO1 kaj la unuajn SALT2 bajtojn\n"
+" de DOSIERO2"
#: src/cmp.c:165
-#, fuzzy
msgid ""
"-l, --verbose output byte numbers and differing byte values"
-msgstr "-l --verbose Eligi indeksojn kaj kodojn de ĉiuj diferencaj bitokoj."
+msgstr ""
+"-l, --verbose montri numerojn kaj valorojn de ĉiuj malsamaj "
+"bajtoj"
#: src/cmp.c:166
-#, fuzzy
msgid "-n, --bytes=LIMIT compare at most LIMIT bytes"
-msgstr "-n LIMO --bytes=LIMO Kompari maksimume LIMO bitokojn."
+msgstr "-n, --bytes=LIMO kompari maksimume LIMO bajtojn"
#: src/cmp.c:167
msgid "-s, --quiet, --silent suppress all normal output"
-msgstr ""
+msgstr "-s, --quiet, --silent forkaŝi ĉiun normalan eligon"
#: src/cmp.c:168
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help montri ĉi tiun helpon kaj eliri"
#: src/cmp.c:169
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Eligi informojn pri la versio."
+msgstr " -v, --version eligi informon pri versio kaj eliri"
#: src/cmp.c:178
#, c-format
msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n"
-msgstr "Uzado: %s [OPCIO]... DOSIERO1 [DOSIERO2 [N1 [N2]]]\n"
+msgstr "Uzmaniero: %s [MODIFILO]... DOSIERO1 [DOSIERO2 [SALT1 [SALT2]]]\n"
#: src/cmp.c:180
msgid "Compare two files byte by byte."
-msgstr "Kompari du dosierojn bitokon post bitoko."
+msgstr "Kompari du dosierojn bajton post bajto."
#: src/cmp.c:182
-#, fuzzy
msgid ""
"The optional SKIP1 and SKIP2 specify the number of bytes to skip\n"
"at the beginning of each file (zero by default)."
-msgstr "N1 kaj N2 estas la nombro de bitokoj ignorendaj en ĉiu dosiero."
+msgstr ""
+"La nedevigaj SALT1 kaj SALT2 indikas la nombron da bajtoj por salti\n"
+"en la komenco de ĉiu dosiero (aprioras nulo)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
+"Nepraj argumentoj por longaj modifiloj ankaŭ nepras por la mallongaj.\n"
#: src/cmp.c:191
msgid ""
"kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n"
"GB 1,000,000,000, G 1,073,741,824, and so on for T, P, E, Z, Y."
msgstr ""
-"Valoroj povas esti sekvataj de la sekvaj multobligaj sufiksoj:\n"
+"Valoroj de SALTO povas esti sekvataj de la sekvaj multobligaj sufiksoj:\n"
"kB 1000, K 1024, MB 1 000 000, M 1 048 576,\n"
"GB 1 000 000 000, G 1 073 741 824, kaj tiel plu por T, P, E, Z, Y."
#: src/cmp.c:194
-#, fuzzy
msgid "If a FILE is '-' or missing, read standard input."
msgstr "Se DOSIERO estas '-' aŭ mankas, legi la normalan enigon."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
-"Elig-valoro estas 0, se enigoj estas samaj, 1, se malsamaj, 2 se problemo."
+"Elig-valoro estas 0 se enigoj estas samaj, 1 se malsamaj, 2 se problemaj."
#: src/cmp.c:240
-#, fuzzy, c-format
+#, c-format
msgid "invalid --bytes value '%s'"
-msgstr "nevalida valoro '%s' de --bytes"
+msgstr "malvalida valoro '%s' de --bytes"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
-#, fuzzy, c-format
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
+#, c-format
msgid "missing operand after '%s'"
-msgstr "argumento mankas post '%s'"
+msgstr "mankas argumento post '%s'"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
-#, fuzzy, c-format
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
+#, c-format
msgid "extra operand '%s'"
-msgstr "kroma argumento '%s'"
+msgstr "superflua argumento '%s'"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
-msgstr "%s %s malsamaj: bitoko %s, linio %s\n"
+msgstr "%s %s malsamas: bajto %s, linio %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
-msgstr "%s %s malsamaj: bitoko %s, linio %s estas %3o %s %3o %s\n"
+msgstr "%s %s malsamas: bajto %s, linio %s estas %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: EOF ĉe %s\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:49
msgid "Paul Eggert"
-msgstr ""
+msgstr "Paul EGGERT"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:50
msgid "Mike Haertel"
-msgstr ""
+msgstr "Mike HAERTEL"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:51
msgid "David Hayes"
-msgstr ""
+msgstr "David HAYES"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:52
msgid "Richard Stallman"
-msgstr ""
+msgstr "Richard STALLMANN"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:53
msgid "Len Tower"
-msgstr ""
+msgstr "Len TOWER"
-#: src/diff.c:339
-#, fuzzy, c-format
+#: src/diff.c:351
+#, c-format
msgid "invalid context length '%s'"
-msgstr "nevalida longo '%s' de kunteksto"
+msgstr "malvalida longo '%s' de kunteksto"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "dispaĝigo ne eblas kun ĉi tiu sistemo"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
-msgstr "tro da dosieretikedopcioj"
+msgstr "tro multe da dosier-etikedaj modifiloj"
-#: src/diff.c:514
-#, fuzzy, c-format
+#: src/diff.c:526
+#, c-format
msgid "invalid width '%s'"
-msgstr "nevalida larĝo '%s'"
+msgstr "malvalida larĝo '%s'"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
-msgstr "malkongruaj opcioj pri larĝo"
+msgstr "malakordaj modifiloj pri larĝo"
-#: src/diff.c:543
-#, fuzzy, c-format
+#: src/diff.c:555
+#, c-format
msgid "invalid horizon length '%s'"
-msgstr "nevalida horizonta longo '%s'"
+msgstr "malvalida horizonta longo '%s'"
-#: src/diff.c:598
-#, fuzzy, c-format
+#: src/diff.c:611
+#, c-format
msgid "invalid tabsize '%s'"
-msgstr "nevalida TAB-larĝo '%s'"
+msgstr "malvalida TAB-larĝo '%s'"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
-msgstr "malkongruaj opcioj pri TAB-larĝo"
+msgstr "malkongruaj modifiloj pri TAB-larĝo"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "--from-file kaj --to-file ambaŭ specifitaj"
-#: src/diff.c:854
-#, fuzzy
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
-msgstr "--normal Eligi normalan diferencaron."
+msgstr " --normal montri normalan malsamon (aprioras)"
-#: src/diff.c:855
-#, fuzzy
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
-msgstr "-q --brief Eligi nur, ĉu la dosieroj estas malsamaj."
+msgstr "-q, --brief montri nur kiam la dosieroj malsamas"
-#: src/diff.c:856
-#, fuzzy
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
-msgstr "-s --report-identical-files Raporti, kiam du dosieroj estas samaj."
+msgstr "-s, --report-identical-files montri kiam du dosieroj samas"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
+"-c, -C NUM, --context[=NUM] montri NUM (aprioras 3) liniojn da kopiita "
+"kunteksto"
-#: src/diff.c:858
-#, fuzzy
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
-msgstr "-w NOM --width=NOM Eligi maksimume NOM (implicite 130) kolumnojn."
+msgstr ""
+"-u, -U NUM, --unified[=NUM] montri NUM (aprioras 3) liniojn da unuigita "
+"kunteksto"
-#: src/diff.c:859
-#, fuzzy
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
-msgstr "-e --ed Eligi ed-programeton."
+msgstr "-e, --ed montri ed-skripton"
-#: src/diff.c:860
-#, fuzzy
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
-msgstr "-n --rcs Eligi diferencaron en RCS-formo."
+msgstr "-n, --rcs montri malsamon laŭ RCS-formo"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
-msgstr ""
+msgstr "-y, --side-by-side montri en du kolumnoj"
-#: src/diff.c:862
-#, fuzzy
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
-msgstr "-w NOM --width=NOM Eligi maksimume NOM (implicite 130) kolumnojn."
+msgstr ""
+"-W, --width=NUM montri maksimume NUM (aprioras 130) kolumnojn"
-#: src/diff.c:863
-#, fuzzy
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
-"-l --left-column Montri nur la maldekstran kolumnon de komunaj linioj."
+" --left-column montri nur la maldekstran kolumnon de komunaj "
+"linioj"
-#: src/diff.c:864
-#, fuzzy
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines Ne eligi komunajn liniojn."
+msgstr " --suppress-common-lines ne montri komunajn liniojn"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
-msgstr ""
+msgstr "-p, --show-c-function montri en kiu C-funkcio ĉiu ŝanĝo estas"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
+"-F, --show-function-line=RE montri la plej freŝa linio kongruanta al RE"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+" --label ETIKEDO uzi ETIKEDOn anstataŭ dosiernomo\n"
+" (povas esti ripetata)"
-#: src/diff.c:871
-#, fuzzy
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
-msgstr "-t --expand-tabs Konverti TABojn al spacetoj en la eligo."
+msgstr "-t, --expand-tabs etendigi tabojn al spacoj en la eligo"
-#: src/diff.c:872
-#, fuzzy
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
-msgstr "-T --initial-tab Ĝustigi TABojn per antaŭmetado de spaceto."
+msgstr "-T, --initial-tab ĝustigi tabojn per antaŭmeto de tabo"
-#: src/diff.c:873
-#, fuzzy
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
-msgstr "--tabsize=NOM TAB-lokoj estas post ĉiuj NOM (implicite 8) kolumnoj."
+msgstr ""
+" --tabsize=NUM tab-lokoj estas post ĉiuj NUM (aprioras 8) "
+"kolumnoj"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
+" --suppress-blank-empty forkaŝi spacon aŭ tabon antaŭ malplenaj "
+"eligitaj linioj"
-#: src/diff.c:875
-#, fuzzy
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
-msgstr "-l --paginate Pasigi la eligon tra 'pr' por enpaĝigi ĝin."
+msgstr ""
+"-l, --paginate pasigi la eligon tra 'pr' por enpaĝigi ĝin"
-#: src/diff.c:877
-#, fuzzy
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
-msgstr "-r --recursive Rekurse kompari trovitajn subdosierujojn."
+msgstr ""
+"-r, --recursive rikure kompari trovitajn subdosierujojn"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
-msgstr ""
+msgstr " --no-dereference ne sekvi simbolajn ligojn"
-#: src/diff.c:879
-#, fuzzy
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
-msgstr "-N --new-file Trakti mankantajn dosierojn kiel malplenajn."
+msgstr ""
+"-N, --new-file trakti mankantajn dosierojn kiel malplenajn"
-#: src/diff.c:880
-#, fuzzy
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
-"--unidirectional-new-file Trakti mankantajn unuajn dosierojn kiel "
-"malplenajn."
+" --unidirectional-new-file trakti mankantajn unuajn dosierojn kiel "
+"malplenajn"
-#: src/diff.c:881
-#, fuzzy
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
-msgstr "--ignore-file-name-case Ignori usklecon en komparado de dosiernomoj."
+msgstr ""
+" --ignore-file-name-case preteratenti usklecon dum komparo de "
+"dosiernomoj"
-#: src/diff.c:882
-#, fuzzy
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
-"--no-ignore-file-name-case Konsideri usklecon en komparado de dosiernomoj."
+" --no-ignore-file-name-case konsideri usklecon dum komparo de dosiernomoj"
-#: src/diff.c:883
-#, fuzzy
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
-msgstr "-x ŜAB --exclude=ŜAB Ignori dosierojn, kiuj kongruas kun ŜABlono."
+msgstr ""
+"-x, --exclude=ŜABLONO forigi dosierojn, kiuj kongruas kun ŜABLONO"
-#: src/diff.c:884
-#, fuzzy
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
-"-X DOS --exclude-from=DOS Ignori dosierojn, kiuj kongruas kun iu ŝablono "
-"en DOSiero."
+"-X, --exclude-from=DOSIERO forigi dosierojn, kiuj kongruas kun iu "
+"ŝablono en DOSIERO"
-#: src/diff.c:885
-#, fuzzy
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
-"-S DOS --starting-file=DOS Komenci per DOSiero, komparante dosierujojn."
+"-S, --starting-file=DOSIERO komenci per DOSIERO, komparante dosierujojn"
-#: src/diff.c:886
-#, fuzzy
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
msgstr ""
-"--from-file=DOS1 Kompari DOS1 kun ĉiuj argumentoj. DOS1 povas esti "
-"dosierujo."
+" --from-file=DOSIERO1 kompari DOSIERO1 kun ĉiuj argumentoj;\n"
+" DOSIERO1 povas esti dosierujo"
-#: src/diff.c:888
-#, fuzzy
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
msgstr ""
-"--to-file=DOS2 Kompari ĉiujn argumentoj kun DOS2. DOS2 povas esti "
-"dosierujo."
+" --to-file=DOSIERO2 kompari ĉiujn argumentojn kun DOSIERO2;\n"
+" DOSIERO2 povas esti dosierujo"
-#: src/diff.c:891
-#, fuzzy
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
-msgstr "-i --ignore-case Ignori diferencojn en uskleco en dosierenhavo."
+msgstr ""
+"-i, --ignore-case preteratenti malsamojn en uskleco en "
+"dosierenhavo"
-#: src/diff.c:892
-#, fuzzy
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
-msgstr "-E --ignore-tab-expansion Ignori ŝanĝojn kaŭzatajn de TAB-oj."
+msgstr ""
+"-E, --ignore-tab-expansion preteratenti ŝanĝojn kaŭzatajn de tab-"
+"etendigo"
-#: src/diff.c:893
-#, fuzzy
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Ignori ĉian blankan spacon."
+msgstr "-Z, --ignore-trailing-space preteratenti blank-spacon ĉe linifino"
-#: src/diff.c:894
-#, fuzzy
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b --ignore-space-change Ignori ŝanĝojn en blanka spaco."
+msgstr ""
+"-b, --ignore-space-change preteratenti ŝanĝojn en kvanto da blank-spaco"
-#: src/diff.c:895
-#, fuzzy
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
-msgstr "-w --ignore-all-space Ignori ĉian blankan spacon."
+msgstr "-w, --ignore-all-space preteratenti ĉiun blankan spacon"
-#: src/diff.c:896
-#, fuzzy
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
-msgstr "-B --ignore-blank-lines Ignori ŝanĝojn, kies linioj estas malplenaj."
+msgstr ""
+"-B, --ignore-blank-lines preteratenti ŝanĝojn, kie linioj estas ĉiuj "
+"malplenaj"
-#: src/diff.c:897
-#, fuzzy
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
-"-I RE --ignore-matching-lines=RE Ignori ŝanĝojn, kies linioj ĉiuj kongruas "
-"kun RE."
+"-I, --ignore-matching-lines=RE preteratenti ŝanĝojn, kie ĉiuj linioj "
+"kongruas al RE"
-#: src/diff.c:899
-#, fuzzy
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
-msgstr "-a --text Trakti ĉiujn dosierojn kiel tekstajn."
+msgstr "-a, --text trakti ĉiujn dosierojn kiel tekstajn"
-#: src/diff.c:900
-#, fuzzy
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Forigi linifinan CR ĉe enigo."
+msgstr " --strip-trailing-cr forigi linifinan CR ĉe enigo"
-#: src/diff.c:902
-#, fuzzy
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
-msgstr "--binary Legi kaj skribi datenojn binare."
+msgstr " --binary legi kaj skribi datumaron ciferece"
-#: src/diff.c:905
-#, fuzzy
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
-"-D NOMO --ifdef=NOMO Eligi kunfanditan dosieron por montri '#ifdef NOMO'-"
-"diferencojn."
+"-D, --ifdef=NOMO montri kunfanditan dosieron kun malsamoj "
+"'#ifdef NOMO'"
-#: src/diff.c:906
-#, fuzzy
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
-msgstr ""
-"--GTYPE-group-format=GFMT Simile, sed montri GTYPE-enig-grupojn per GFMT."
+msgstr " --GTYPE-group-format=GFMT enformigi enig-grupojn GTYPE per GFMT"
-#: src/diff.c:907
-#, fuzzy
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
-msgstr "--line-format=LFMT Simile, sed montri ĉiujn enigliniojn per LFMT."
+msgstr " --line-format=LFMT enformigi ĉiujn enigliniojn per LFMT"
-#: src/diff.c:908
-#, fuzzy
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
-msgstr ""
-"--LTYPE-line-format=LFMT Simile, sed montri LTYPE-enig-grupojn per LFMT."
+msgstr " --LTYPE-line-format=LFMT enformigi enig-grupojn LTYPE per LFMT"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
+" Tiuj enformigaj modifiloj provizas rafinitan regadon pri la eligo\n"
+" de diff, ĝeneraliganta -D/--ifdef."
-#: src/diff.c:911
-#, fuzzy
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
-" LTYPE estas 'old', 'new' aŭ 'unchanged'. GTYPE estas LTYPE aŭ 'changed'."
+" LTYPE estas 'old', 'new' aŭ 'unchanged'. GTYPE estas LTYPE aŭ 'changed'."
-#: src/diff.c:912
-#, fuzzy
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" M L+1\n"
" %(A=B?T:E) if A equals B then T else E"
msgstr ""
-" GFMT povas enhavi:\n"
+" GFMT (nur) povas enhavi:\n"
" %< linioj el DOSIERO1\n"
" %> linioj el DOSIERO2\n"
" %= linioj komunaj al DOSIERO1 kaj DOSIERO2\n"
-" %[-][LARĜO][.[PREC]]{doxX}LITERO printf-stila specifo por LITERO\n"
+" %[-][LARĜO][.[PREC]]{doxX}LITERO printf-stila indiko por LITERO\n"
" LITEROJ estas jenaj por nova grupo, minuskle por malnova grupo:\n"
" F unua lininumero\n"
" L lasta lininumero\n"
" N nombro de linioj = L-F+1\n"
" E F-1\n"
-" M L+1"
+" M L+1\n"
+" %(A=B?T:E) se A egalas al B, do T, male E"
-#: src/diff.c:924
-#, fuzzy
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %l contents of line, excluding any trailing newline\n"
" %[-][WIDTH][.[PREC]]{doxX}n printf-style spec for input line number"
msgstr ""
-" LFMT povas enhavi:\n"
+" LFMT (nur) povas enhavi:\n"
" %L enhavo de linio\n"
" %l enhavo linio, sen eventuala linifino\n"
-" %[-][LARĜO][.[PREC]]{doxX}n printf-stila specifo de lininumero"
+" %[-][LARĜO][.[PREC]]{doxX}n printf-stila indiko de lininumero"
-#: src/diff.c:928
-#, fuzzy
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" Kaj GFMT kaj LFMT povas enhavi:\n"
" %% %\n"
" %c'C' la unuopa signo C\n"
-" %c'\\000' la signo kun okuma kodo OOO"
+" %c'\\000' la signo kun okuma kodo OOO\n"
+" C la signo C (aliaj signoj reprezentas ili mem)"
-#: src/diff.c:934
-#, fuzzy
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr "-d --minimal Pene serĉi malpli grandan aron da ŝanĝoj."
+msgstr "-d, --minimal strebe serĉi pli etan aron da ŝanĝoj"
-#: src/diff.c:935
-#, fuzzy
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
-"--horizon-lines=NOM Gardi NOM liniojn de la komuna prefikso kaj sufikso."
+" --horizon-lines=NUM teni NUM liniojn de la komuna prefikso kaj sufikso"
-#: src/diff.c:936
-#, fuzzy
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
-"-H --speed-large-files Atendi grandajn dosierojn kaj multajn disajn "
-"ŝanĝetojn."
+" --speed-large-files atendi grandajn dosierojn kaj multajn disajn "
+"ŝanĝetojn"
-#: src/diff.c:938
-msgid " --help display this help and exit"
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:967
#, fuzzy
-msgid "-v, --version output version information and exit"
-msgstr "-v --version Eligi informojn pri la versio."
+msgid " or 'auto' (the default)"
+msgstr " --normal montri normalan malsamon (aprioras)"
-#: src/diff.c:941
-#, fuzzy
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
msgstr ""
-"DOSIEROJ estas 'DOSIERO1 DOSIERO2' aŭ 'DOSIERUJO1 DOSIERUJO2' aŭ DOSIERUJO "
-"DOSIERO...' aŭ 'DOSIERO... DOSIERUJO'."
-#: src/diff.c:942
+#: src/diff.c:971
+msgid " --help display this help and exit"
+msgstr " --help montri ĉi tiun helpon kaj eliri"
+
+#: src/diff.c:972
+msgid "-v, --version output version information and exit"
+msgstr "-v, --version montri informon pri versio kaj eliri"
+
+#: src/diff.c:974
#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
+msgstr ""
+"DOSIEROJ estas 'DOSIERO1 DOSIERO2' aŭ 'UJO1 UJO2' aŭ 'UJO DOSIERO...' aŭ "
+"'DOSIERO... UJO'."
+
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
-"Se --from-file aŭ --to-file estas donita, ne estas limigoj de DOSIEROJ."
+"Se --from-file aŭ --to-file estas donita, ne estas limigoj por DOSIERO(j)."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
-#, fuzzy
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
-msgstr "Se DOSIERO estas '-', legi la normalan enigon."
+msgstr "Se DOSIERO estas '-', legi la ĉefenigujon."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
-msgstr "Uzado: %s [OPCIO]... DOSIEROJ\n"
+msgstr "Uzmaniero: %s [MODIFILO]... DOSIEROJ\n"
-#: src/diff.c:954
-#, fuzzy
+#: src/diff.c:987
msgid "Compare FILES line by line."
-msgstr "Kompari dosierojn linion post linio."
+msgstr "Kompari DOSIEROJn linion post linio."
-#: src/diff.c:988
-#, fuzzy, c-format
+#: src/diff.c:1021
+#, c-format
msgid "conflicting %s option value '%s'"
-msgstr "malkongrua valoro de opcio %s: '%s'"
+msgstr "malakorda valoro de opcio %s: '%s'"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
-msgstr "malkongruaj opcioj pri eligostilo"
+msgstr "malakordaj modifiloj pri elig-stilo"
+
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "malvalida larĝo '%s'"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Nur en %s: %s\n"
-#: src/diff.c:1192
-#, fuzzy
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
-msgstr "ne povas kompari '-' kun dosierujo"
+msgstr "ne eblas kompari '-' al dosierujo"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
-msgstr "opcio -D ne eblas kun dosierujoj"
+msgstr "modifilo -D ne estas subtenata kun dosierujoj"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Komunaj subdosierujoj: %s kaj %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "Dosiero %s estas %s, dum dosiero %s estas %s\n"
-#: src/diff.c:1314
-#, fuzzy, c-format
+#: src/diff.c:1362
+#, c-format
msgid "Symbolic links %s and %s differ\n"
-msgstr "Dosieroj %s kaj %s estas malsamaj\n"
+msgstr "Simbolaj ligoj %s kaj %s malsamas\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
-msgstr "Dosieroj %s kaj %s estas samaj\n"
+msgstr "Dosieroj %s kaj %s samas\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff3.c:41
msgid "Randy Smith"
-msgstr ""
+msgstr "Randy SMITH"
#: src/diff3.c:313
#, c-format
msgid "incompatible options"
-msgstr "malkongruaj opcioj"
+msgstr "malkongruaj modifiloj"
#: src/diff3.c:353
-#, fuzzy
msgid "'-' specified for more than one input file"
-msgstr "'-' donita por pli ol unu enigdosiero"
+msgstr "'-' indikita por pli ol unu enigdosiero"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
-msgstr "legeraro"
+msgstr "lego fiaskis"
#: src/diff3.c:428
-#, fuzzy
msgid "-A, --show-all output all changes, bracketing conflicts"
-msgstr "-A --show-all Eligi ĉiujn ŝanĝojn, kun konfliktoj en parentezoj."
+msgstr ""
+"-A, --show-all montri ĉiujn ŝanĝojn, kun konfliktoj inter "
+"krampoj"
#: src/diff3.c:430
-#, fuzzy
msgid ""
"-e, --ed output ed script incorporating changes\n"
" from OLDFILE to YOURFILE into MYFILE"
msgstr ""
-"-e --ed Eligi nekunfanditajn ŝanĝojn de OLDFILE al YOURFILE en MYFILE."
+"-e, --ed montri ed-skripton enkorpigantan ŝanĝojn\n"
+" de PRADOSIERO al VIADOSIERO en MIADOSIEROn"
#: src/diff3.c:432
-#, fuzzy
msgid "-E, --show-overlap like -e, but bracket conflicts"
-msgstr ""
-"-E --show-overlap Eligi nekunfanditajn ŝanĝojn, kun konfliktoj en "
-"parentezoj."
+msgstr "-E, --show-overlap kiel -e, sed kun konfliktoj inter krampoj"
#: src/diff3.c:433
-#, fuzzy
msgid ""
"-3, --easy-only like -e, but incorporate only nonoverlapping "
"changes"
-msgstr "-3 --easy-only Eligi nekunfanditajn neinterkovriĝantajn ŝanĝojn."
+msgstr ""
+"-3, --easy-only kiel -e, sed enkorpigi nur ne-interkovriĝantajn "
+"ŝanĝojn"
#: src/diff3.c:434
-#, fuzzy
msgid ""
"-x, --overlap-only like -e, but incorporate only overlapping changes"
-msgstr "-x --overlap-only Eligi interkovriĝantajn ŝanĝojn."
+msgstr ""
+"-x, --overlap-only kiel -e, sed enkorpigi nur interkovriĝantajn "
+"ŝanĝojn"
#: src/diff3.c:435
msgid "-X like -x, but bracket conflicts"
-msgstr ""
+msgstr "-X kiel -x, sed kun konfliktoj inter krampoj"
#: src/diff3.c:436
-#, fuzzy
msgid "-i append 'w' and 'q' commands to ed scripts"
-msgstr "-i Aldoni la komandojn 'w' kaj 'q' al ed-programetoj."
+msgstr ""
+"-i aldoni la komandojn 'w' kaj 'q' al ed-skriptoj"
#: src/diff3.c:438
msgid ""
"-m, --merge output actual merged file, according to\n"
" -A if no other options are given"
msgstr ""
+"-m, --merge montri veran kunfanditan dosieron, akorde al\n"
+" -A se neniu alia modifilo ĉeestas"
#: src/diff3.c:441
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Trakti ĉiujn dosierojn kiel tekstajn."
+msgstr "-a, --text trakti ĉiujn dosierojn kiel tekstajn"
#: src/diff3.c:442
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Forigi linifinan CR ĉe enigo."
+msgstr " --strip-trailing-cr forigi linifinan CR ĉe enigo"
#: src/diff3.c:443
-#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
-msgstr "-T --initial-tab Ĝustigi TABojn per antaŭmetado de spaceto."
+msgstr "-T, --initial-tab ĝustigi tabojn per antaŭmeto de tabo"
#: src/diff3.c:444
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
-msgstr "--diff-program=PROGRAMO Uzi PROGRAMOn por kompari dosierojn."
+msgstr " --diff-program=PROGRAMO uzi PROGRAMOn por kompari dosierojn"
#: src/diff3.c:445
msgid ""
"-L, --label=LABEL use LABEL instead of file name\n"
" (can be repeated up to three times)"
msgstr ""
+"-L, --label=ETIKEDO uzi ETIKEDOn anstataŭ dosiernomo\n"
+" (povas esti ripetata ĝis 3 fojoj)"
#: src/diff3.c:448
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help montri ĉi tiun helpon kaj eliri"
#: src/diff3.c:449
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Eligi informojn pri la versio."
+msgstr "-v, --version eligi informon pri versio kaj eliri"
#: src/diff3.c:458
#, c-format
msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n"
-msgstr "Uzado: %s [OPCIO]... MYFILE OLDFILE YOURFILE\n"
+msgstr "Uzmaniero: %s [MODIFILO]... MIADOSIERO PRADOSIERO VIADOSIERO\n"
#: src/diff3.c:460
msgid "Compare three files line by line."
"and output the actual merged file. For unusual input, this is more\n"
"robust than using ed.\n"
msgstr ""
+"\n"
+"La apriora elig-formo estas iom hom-legebla reprezento de la ŝanĝoj.\n"
+"\n"
+"La modifiloj -e, -E, -x, -X (kaj korespondaj long-formoj) eligas ed-"
+"skripton\n"
+"anstataŭ la aprioron.\n"
+"\n"
+"Fine, la modifilo -m (--merge) igas ke diff3 kunfandu interne kaj\n"
+"eligu la veran kunfanditan dosieron. Por ne-ordinara enigo, tio ĉi estas\n"
+"pli fortika ol la uzo de ed.\n"
#: src/diff3.c:482
msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble."
#: src/diff3.c:990
msgid "internal error: invalid diff type in process_diff"
-msgstr "interna eraro: nevalida diff-speco en process_diff"
+msgstr "interna eraro: malvalida diff-speco en process_diff"
#: src/diff3.c:1015
msgid "invalid diff format; invalid change separator"
-msgstr "nevalida diff-formato; nevalida ŝanĝ-apartigilo"
+msgstr "malvalida diff-formato; malvalida ŝanĝ-apartigilo"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
-msgstr "nevalida diff-formato; malkompleta lasta linio"
+msgstr "malvalida diff-formato; malkompleta lasta linio"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
-#, fuzzy, c-format
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
+#, c-format
msgid "subsidiary program '%s' could not be invoked"
-msgstr "ne povis alvoki la subprogramon '%s'"
+msgstr "ne eblis alvoki la subprogramon '%s'"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
-msgstr "nevalida diff-formato; malĝusta signo en antaŭa linio"
+msgstr "malvalida diff-formato; malĝusta signo en antaŭa linio"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
-msgstr "interna eraro: nevalida diff-speco donita al eligo"
+msgstr "interna eraro: malvalida diff-speco donita al eligo"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "enigdosiero ŝrumpis"
-#: src/dir.c:158
-#, fuzzy, c-format
+#: src/dir.c:156
+#, c-format
msgid "cannot compare file names '%s' and '%s'"
-msgstr "ne povas kompari dosiernomojn '%s' kaj '%s'"
+msgstr "ne eblas kompari dosiernomojn '%s' kaj '%s'"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
-msgstr ""
+msgstr "%s: rikura dosieruja ciklo"
#. This is a proper name. See the gettext manual, section Names.
#: src/sdiff.c:42
msgid "Thomas Lord"
-msgstr ""
+msgstr "Thomas LORD"
#: src/sdiff.c:173
-#, fuzzy
msgid ""
"-o, --output=FILE operate interactively, sending output to FILE"
-msgstr "-o DOS --output=DOS Funkcii interage, sendante eligon al DOSiero."
+msgstr ""
+"-o, --output=DOSIERO funkcii interage, sendante eligon al DOSIERO"
#: src/sdiff.c:175
-#, fuzzy
msgid ""
"-i, --ignore-case consider upper- and lower-case to be the same"
-msgstr "-i --ignore-case Trakti majusklojn kaj minusklojn kiel samajn."
+msgstr ""
+"-i, --ignore-case konsideri majusklojn kaj minusklojn kiel samajn"
#: src/sdiff.c:176
-#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
-msgstr "-E --ignore-tab-expansion Ignori ŝanĝojn kaŭzatajn de TAB-oj."
+msgstr ""
+"-E, --ignore-tab-expansion preteratenti ŝanĝojn kaŭzatajn de tab-etendigo"
#: src/sdiff.c:177
-#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Ignori ĉian blankan spacon."
+msgstr ""
+"-Z, --ignore-trailing-space preteratenti ĉiun blank-spacon ĉe linifino"
#: src/sdiff.c:178
-#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b --ignore-space-change Ignori ŝanĝojn en blanka spaco."
+msgstr ""
+"-b, --ignore-space-change preteratenti ŝanĝojn en la kvanto da blank-"
+"spaco"
#: src/sdiff.c:179
-#, fuzzy
msgid "-W, --ignore-all-space ignore all white space"
-msgstr "-W --ignore-all-space Ignori ĉian blankan spacon."
+msgstr "-W, --ignore-all-space preteratenti ĉiun blank-spacon"
#: src/sdiff.c:180
-#, fuzzy
msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank"
-msgstr "-B --ignore-blank-lines Ignori ŝanĝojn, kies linioj estas malplenaj."
+msgstr ""
+"-B, --ignore-blank-lines preteratenti ŝanĝojn, kie linioj estas ĉiuj "
+"malplenaj"
#: src/sdiff.c:181
-#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE"
msgstr ""
-"-I RE --ignore-matching-lines=RE Ignori ŝanĝojn, kies linioj ĉiuj kongruas "
-"kun RE."
+"-I, --ignore-matching-lines=RE preteratenti ŝanĝojn, kie ĉiuj linioj "
+"kongruas al RE"
#: src/sdiff.c:182
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Forigi linifinan CR ĉe enigo."
+msgstr " --strip-trailing-cr forigi linifinan CR ĉe enigo"
#: src/sdiff.c:183
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Trakti ĉiujn dosierojn kiel tekstajn."
+msgstr "-a, --text trakti ĉiujn dosierojn kiel tekstajn"
#: src/sdiff.c:185
-#, fuzzy
msgid ""
"-w, --width=NUM output at most NUM (default 130) print columns"
-msgstr "-w NOM --width=NOM Eligi maksimume NOM (implicite 130) kolumnojn."
+msgstr ""
+"-w, --width=NUM montri maksimume NUM (aprioras 130) kolumnojn"
#: src/sdiff.c:186
-#, fuzzy
msgid ""
"-l, --left-column output only the left column of common lines"
msgstr ""
-"-l --left-column Montri nur la maldekstran kolumnon de komunaj linioj."
+"-l, --left-column montri nur la maldekstran kolumnon de komunaj "
+"linioj"
#: src/sdiff.c:187
-#, fuzzy
msgid "-s, --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines Ne eligi komunajn liniojn."
+msgstr "-s, --suppress-common-lines ne eligi komunajn liniojn"
#: src/sdiff.c:189
-#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
-msgstr "-t --expand-tabs Konverti TABojn al spacetoj en la eligo."
+msgstr "-t, --expand-tabs etendigi tabojn al spacoj en la eligo"
#: src/sdiff.c:190
-#, fuzzy
msgid ""
" --tabsize=NUM tab stops at every NUM (default 8) print columns"
-msgstr "--tabsize=NOM TAB-lokoj estas post ĉiuj NOM (implicite 8) kolumnoj."
+msgstr ""
+" --tabsize=NUM tab-lokoj estas post ĉiu NUM (aprioras 8) "
+"kolumnoj"
#: src/sdiff.c:192
-#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr "-d --minimal Pene serĉi malpli grandan aron da ŝanĝoj."
+msgstr "-d, --minimal strebe serĉi pli etan aron da ŝanĝoj"
#: src/sdiff.c:193
-#, fuzzy
msgid ""
"-H, --speed-large-files assume large files, many scattered small changes"
msgstr ""
-"-H --speed-large-files Atendi grandajn dosierojn kaj multajn disajn "
-"ŝanĝetojn."
+"-H, --speed-large-files atendi grandajn dosierojn kaj multajn disajn "
+"ŝanĝetojn"
#: src/sdiff.c:194
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
-msgstr "--diff-program=PROGRAMO Uzi PROGRAMOn por kompari dosierojn."
+msgstr " --diff-program=PROGRAMO uzi PROGRAMOn por kompari dosierojn"
#: src/sdiff.c:196
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help montri ĉi tiun helpon kaj eliri"
#: src/sdiff.c:197
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Eligi informojn pri la versio."
+msgstr "-v, --version montri informon pri versio kaj eliri"
#: src/sdiff.c:206
#, c-format
msgid "Usage: %s [OPTION]... FILE1 FILE2\n"
-msgstr "Uzado: %s [OPCIO]... DOSIERO1 DOSIERO2\n"
+msgstr "Uzmaniero: %s [MODIFILO]... DOSIERO1 DOSIERO2\n"
#: src/sdiff.c:208
-#, fuzzy
msgid "Side-by-side merge of differences between FILE1 and FILE2."
-msgstr "Ĉeflanka kunfando de dosierodiferencoj."
+msgstr "Apuda kunfando de malsamoj inter DOSIERO1 kaj DOSIERO2."
#: src/sdiff.c:329
msgid "cannot interactively merge standard input"
-msgstr "ne povas interage kunfandi la normalan enigon"
+msgstr "ne eblas interage kunfandi la ĉefenigujon"
#: src/sdiff.c:595
msgid "both files to be compared are directories"
msgstr "ambaŭ komparendaj dosieroj estas dosierujoj"
#: src/sdiff.c:818
-#, fuzzy
msgid ""
"ed:\tEdit then use both versions, each decorated with a header.\n"
"eb:\tEdit then use both versions.\n"
"v:\tVerbosely include common lines.\n"
"q:\tQuit.\n"
msgstr ""
-"ed:\tredakti kaj uzi ambaŭ versiojn, ĉiu kun ĉapaĵo\n"
-"eb:\tredakti kaj uzi ambaŭ versiojn\n"
-"el:\tredakti kaj uzi maldekstran version\n"
-"er:\tredakti kaj uzi dekstran version\n"
-"e:\tredakti novan version\n"
-"l:\tuzi maldekstran version\n"
-"r:\tuzi dekstran version\n"
-"s:\tsilente transpreni komunajn liniojn\n"
-"v:\tlaŭte transpreni komunajn liniojn\n"
-"q:\tfini\n"
-
-#~ msgid "%s: illegal option -- %c\n"
-#~ msgstr "%s: nepermesita opcio -- %c.\n"
-
-#~ msgid ""
-#~ "This is free software; see the source for copying conditions. There is "
-#~ "NO\n"
-#~ "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR "
-#~ "PURPOSE.\n"
-#~ msgstr ""
-#~ "Ĉi tio estas libera programo; vidu la fonton por kopi-kondiĉoj. Estas\n"
-#~ "NENIA GARANTIO; eĉ ne por KOMERCA KVALITO aŭ ADEKVATECO POR DIFINITA "
-#~ "CELO.\n"
-
-#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
-#~ msgstr "-i N1:N2 --ignore-initial=N1:N2"
-
-#~ msgid "-s --quiet --silent Output nothing; yield exit status only."
-#~ msgstr "-s --quiet --silent Eligi nenion; doni nur elig-valoron."
-
-#~ msgid "--help Output this help."
-#~ msgstr "--help Montri ĉi tiun helpon."
-
-#~ msgid "Report bugs to <bug-gnu-utils@gnu.org>."
-#~ msgstr "Raportu pri cimoj al <bug-gnu-utils@gnu.org>."
-
-#~ msgid "`-%ld' option is obsolete; use `-%c %ld'"
-#~ msgstr "opcio '-%ld' estas malnova; uzu '-%c %ld'"
-
-#~ msgid "`-%ld' option is obsolete; omit it"
-#~ msgstr "opcio '-%ld' estas malnova; ellasu ĝin"
-
-#~ msgid ""
-#~ "-c -C NUM --context[=NUM] Output NUM (default 3) lines of copied "
-#~ "context.\n"
-#~ "-u -U NUM --unified[=NUM] Output NUM (default 3) lines of unified "
-#~ "context.\n"
-#~ " --label LABEL Use LABEL instead of file name.\n"
-#~ " -p --show-c-function Show which C function each change is in.\n"
-#~ " -F RE --show-function-line=RE Show the most recent line matching RE."
-#~ msgstr ""
-#~ "-c -C NOM --context[=NOM] Eligi NOM (implicite 3) liniojn da kopiita "
-#~ "kunteksto.\n"
-#~ "-u -U NOM --unified[=NOM] Eligi NOM (implicite 3) liniojn da unuigita "
-#~ "kunteksto.\n"
-#~ " --label ETIK Uzi ETIKedon anstataŭ dosiernomo.\n"
-#~ " -p --show-c-function Montri, en kiu C-funkcio estas ĉiu ŝanĝo.\n"
-#~ " -F RE -show-function-line=RE Montri la plej lastan linion, kiu "
-#~ "kongruas kun RE."
-
-#~ msgid ""
-#~ "-y --side-by-side Output in two columns.\n"
-#~ " -W NUM --width=NUM Output at most NUM (default 130) print columns.\n"
-#~ " --left-column Output only the left column of common lines.\n"
-#~ " --suppress-common-lines Do not output common lines."
-#~ msgstr ""
-#~ "-y --side-by-side Eligi en du kolumnoj.\n"
-#~ " -W NOM --width=NOM Eligi maksimume NOM (implicite 130) signojn en "
-#~ "linio.\n"
-#~ " --left-column Eligi nur la maldekstran kolumnon de komunaj linioj.\n"
-#~ " --suppress-common-lines Ne eligi komunajn liniojn."
-
-#~ msgid ""
-#~ "--speed-large-files Assume large files and many scattered small changes."
-#~ msgstr ""
-#~ "--speed-large-files Atendi grandajn dosierojn kaj multajn disajn "
-#~ "ŝanĝetojn."
-
-#~ msgid "-X Output overlapping changes, bracketing them."
-#~ msgstr "-X Eligi interkovriĝantajn ŝanĝojn, en parentezoj."
-
-#~ msgid "-m --merge Output merged file instead of ed script (default -A)."
-#~ msgstr ""
-#~ "-m --merge Eligi kunfanditan dosieron anstataŭ ed-programeto (implicite "
-#~ "-A)."
-
-#~ msgid "-L LABEL --label=LABEL Use LABEL instead of file name."
-#~ msgstr "-L ETIK --label=ETIK Uzi ETIKedon anstataŭ la dosiernomo."
-
-#~ msgid "subsidiary program `%s' not found"
-#~ msgstr "subprogramo '%s' ne trovita"
-
-#~ msgid "subsidiary program `%s' failed"
-#~ msgstr "subprogramo '%s' malsukcesis"
-
-#~ msgid "subsidiary program `%s' failed (exit status %d)"
-#~ msgstr "subprogramo '%s' malsukcesis (elig-valoro %d)"
+"ed:\tredakti kaj uzi ambaŭ versiojn, ĉiu kun kaplinioj.\n"
+"eb:\tredakti kaj uzi ambaŭ versiojn.\n"
+"el aŭ e1:\tredakti kaj uzi maldekstran version.\n"
+"er aŭ e2:\tredakti kaj uzi dekstran version.\n"
+"e:\tredakti novan version.\n"
+"l aŭ 1:\tuzi maldekstran version.\n"
+"r aŭ 2:\tuzi dekstran version.\n"
+"s:\tsilente transpreni komunajn liniojn.\n"
+"v:\tlaŭte transpreni komunajn liniojn.\n"
+"q:\tĉesi.\n"
+
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: nerekonata modifilo '--%s'\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
msgstr ""
"Project-Id-Version: GNU diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2013-02-19 00:30+0100\n"
"Last-Translator: Santiago Vila Doncel <sanvila@unex.es>\n"
"Language-Team: Spanish <es@li.org>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "argumento de %s%s inválido '%s'"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "argumento de %s%s inválido '%s'"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "error del programa"
msgid "stack overflow"
msgstr "desbordamiento de pila"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Error del sistema desconocido"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "fichero regular vacío"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "fichero regular"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "directorio"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "fichero especial de bloques"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "fichero especial de caracteres"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "`fifo'"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "enlace simbólico"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "`socket'"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "cola de mensajes"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semáforo"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "objeto de memoria compartido"
# ¿Alguien sabe lo que es esto?
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "objeto de memoria `typed'"
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "fichero especial de bloques"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "fichero especial de caracteres"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "`fifo'"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "fichero especial de bloques"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "fichero especial de caracteres"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
# FIXME
# se podría decir algo más decente para "weird" ... pero ¿qué?
# ¿ no habitual ? em
# ¡Nchts! Prefiero extraño ... no habitual me suena muy difuso
# siempre podemos poner escachifollado ;) ipg
-#: lib/file-type.c:70
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "fichero extraño"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "fichero especial de bloques"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "`socket'"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+# FIXME
+# se podría decir algo más decente para "weird" ... pero ¿qué?
+# ¿ no habitual ? em
+# ¡Nchts! Prefiero extraño ... no habitual me suena muy difuso
+# siempre podemos poner escachifollado ;) ipg
+#: lib/file-type.c:110
msgid "weird file"
msgstr "fichero extraño"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: la opción '%s' es ambigua; posibilidades:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: la opción '-W %s' es ambigua\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: la opción '--%s' no admite ningún argumento\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: la opción '%c%s' no admite ningún argumento\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: la opción '--%s' requiere un argumento\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: opción no reconocida '--%s'\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: opción no reconocida '%c%s'\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: opción inválida -- '%c'\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: la opción requiere un argumento -- '%c'\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: la opción '-W %s' es ambigua\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: la opción '-W %s' no admite ningún argumento\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: la opción '-W %s' requiere un argumento\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "«"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr "»"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Conseguido"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "No hay ninguna coincidencia"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Expresión regular inválida"
# Se refiere probablemente a cosas tales como que la c con la h es "ch",
# aunque este ejemplo ya no es válido, pues la Real Academia dice
# que para propósitos de ordenación son letras independientes.
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Carácter de unión inválido"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Carácter de clase inválido"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Barra invertida al final"
# no estoy dispuesto a matar por ello... sv
# :) Gracias, pero por ahora dejaré retro-referencia, me parece más clara
# en cuanto al significado preciso de la frase. ipg
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Retro-referencia inválida"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "[ ó [^ desemparejados"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "( ó \\( desemparejado"
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "\\{ desemparejado"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "El contenido de \\{\\} no es válido"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Final de rango inválido"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Memoria agotada"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Expresión regular precedente inválida"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Final prematuro de la expresión regular"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "La expresión regular es demasiado grande"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr ") ó \\) desemparejado"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "No hay ninguna expresión regular previa"
"Ayuda general sobre el uso de software de GNU: <http://www.gnu.org/gethelp/"
">\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Los ficheros %s y %s son distintos\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Los ficheros binarios %s y %s son distintos\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "No hay ningún carácter de nueva línea al final del fichero"
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, c-format
msgid "Try '%s --help' for more information."
msgstr "Pruebe '%s --help' para más información."
msgid "options -l and -s are incompatible"
msgstr "las opciones -l y -s son incompatibles"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "la escritura falló"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "salida estándar"
"Los parámetros opcionales SALTO1 y SALTO2 especifican el número de\n"
"bytes que se saltan en cada fichero (cero por omisión)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr "Si un FICHERO es '-' o no se especifica, lee la entrada estándar."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"El estado de salida es 0 si las entradas son iguales, 1 si son diferentes,\n"
msgid "invalid --bytes value '%s'"
msgstr "valor --bytes inválido '%s'"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, c-format
msgid "missing operand after '%s'"
msgstr "falta un operando después de '%s'"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, c-format
msgid "extra operand '%s'"
msgstr "operando extra '%s'"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s son distintos: byte %s, línea %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s son distintos: el byte %s, en la línea %s es %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: fin de fichero encontrado en %s\n"
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
+#: src/diff.c:351
#, c-format
msgid "invalid context length '%s'"
msgstr "longitud de contexto inválida '%s'"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "este sistema no admite paginación"
# se refiere. la opción de etiqueta de fichero se ha especificado demasiadas
# veces. O más cortito, dejarlo como está :) em+
# Me parece que así está bien ...
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "demasiadas opciones de etiqueta de fichero"
-#: src/diff.c:514
+#: src/diff.c:526
#, c-format
msgid "invalid width '%s'"
msgstr "ancho inválido '%s'"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "opciones de ancho conflictivas"
-#: src/diff.c:543
+#: src/diff.c:555
#, c-format
msgid "invalid horizon length '%s'"
msgstr "longitud del horizonte inválida '%s'"
-#: src/diff.c:598
+#: src/diff.c:611
#, c-format
msgid "invalid tabsize '%s'"
msgstr "tamaño de tab inválido '%s'"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "opciones de tamaño de tab conflictivas"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "se ha especificado tanto --from-file como --to-file"
-#: src/diff.c:854
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
msgstr " --normal produce un diff normal (predeterminado)"
-#: src/diff.c:855
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
msgstr ""
"-q --brief indica sólo si los ficheros son diferentes o no"
-#: src/diff.c:856
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
msgstr ""
"-s --report-identical-files notifica cuándo dos ficheros son idénticos"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
"-c, -C NÚM, --context[=NÚM] muestra NÚM (por omisión 3) líneas de contexto"
-#: src/diff.c:858
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"-u, -U NÚM, --unified[=NÚM] muestra NÚM (por omisión 3) línea de contexto\n"
" unificado"
-#: src/diff.c:859
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
msgstr "-e --ed produce un script ed"
-#: src/diff.c:860
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
msgstr "-n --rcs produce un diff en formato RCS"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr "-y, --side-by-side muestra en dos columnas"
-#: src/diff.c:862
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"impresión\n"
" (por omisión 130)"
-#: src/diff.c:863
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
" --left-column muestra sólo en la columna izquierda las líneas "
"comunes"
-#: src/diff.c:864
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
msgstr " --suppress-common-lines no muestra las líneas comunes"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
"-p, --show-c-function muestra en qué función C está cada cambio"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
"-F, --show-function-line=ER muestra la línea más reciente que encaje con ER"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
" --label ETIQUETA utiliza ETIQUETA en lugar del nombre del "
" (se puede repetir)"
# Aquí a lo mejor también: la salida -> el resultado. sv
-#: src/diff.c:871
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr ""
"-t --expand-tabs expande los tabuladores a espacios en la salida"
-#: src/diff.c:872
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
"-T, --initial-tab hace que los tabuladores se alineen\n"
" anteponiendo uno"
-#: src/diff.c:873
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
"columnas\n"
" de impresión (por omisión, 8)"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
# Te mandaré el gettext, para que veas lo que vale un peine... sv
# X'D ... no soy tan malo ... ipg
# Medita de nuevo si no usas resultado em
-#: src/diff.c:875
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
"-l, --paginate pasa la salida a través de 'pr' para paginarla"
-#: src/diff.c:877
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
"-r, --recursive compara recursivamente todos los "
"subdirectorios"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr " --no-dereference no sigue los enlaces simbólicos"
-#: src/diff.c:879
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
msgstr ""
"-N, --new-file trata los ficheros que no existan como vacíos"
-#: src/diff.c:880
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
" --unidirectional-new-file trata los ficheros originales que no "
"existan\n"
" como vacíos"
-#: src/diff.c:881
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
" --ignore-file-name-case descarta las diferencias entre mayúsculas y\n"
" minúsculas al comparar los nombres de los "
"ficheros"
-#: src/diff.c:882
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
"--no-ignore-file-name-case considera distintas mayúsculas y minúsculas\n"
" cuando compara los nombres de los ficheros"
-#: src/diff.c:883
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr ""
"-x, --exclude=PAT excluye los ficheros que coincidan con PAT"
-#: src/diff.c:884
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
"alguna\n"
" expresión regular de FICHERO"
-#: src/diff.c:885
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
"-S, --starting-file=FICHERO comienza por FICHERO cuando se comparan\n"
" directorios"
-#: src/diff.c:886
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
" --from-file=FICHERO1 compara FICHERO1 con todos los operandos;\n"
" FICHERO1 puede ser un directorio"
-#: src/diff.c:888
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
" --to-file=FICHERO2 compara todos los operandos con FICHERO2\n"
" FICHERO2 puede ser un directorio"
-#: src/diff.c:891
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
"minúsculas\n"
" en el contenido de los ficheros"
-#: src/diff.c:892
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
"-E, --ignore-tab-expansion descarta cambios debidos a expansiones de "
"tabs"
-#: src/diff.c:893
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr ""
"-Z, --ignore-trailing-space descarta espacio en blanco al final de línea"
-#: src/diff.c:894
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
"-b, --ignore-space-change descarta las diferencias en la cantidad de\n"
" espacio en blanco"
-#: src/diff.c:895
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w, --ignore-all-space descarta los espacios en blanco"
-#: src/diff.c:896
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr ""
"-B, --ignore-blank-lines descarta los cambios en líneas completamente "
"vacías"
-#: src/diff.c:897
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I, --ignore-matching-lines=EXPR-REG descarta las líneas que coincidan con "
"EXPR-REG"
-#: src/diff.c:899
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
msgstr ""
"-a, --text trata todos los ficheros como de tipo texto"
-#: src/diff.c:900
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
" --strip-trailing-cr elimina los retornos de carro finales en la "
"entrada"
-#: src/diff.c:902
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr ""
" --binary lee y escribe los datos en modo binario"
-#: src/diff.c:905
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
# Propongo similar -> parecida. Ver gettext. sv
# Hmmm ... prefiero similar. Antes estaba puesto `parecida' y la verdad,
# no quedaba tan bien. ipg
-#: src/diff.c:906
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
" --GTYPE-group-format=GFMT formatea los grupos de entrada GTYPE con GFMT"
-#: src/diff.c:907
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
" --line-format=LFMT formatea todas las líneas de entrada con LFMT"
# ídem. sv
-#: src/diff.c:908
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
" --LTYPE-line-format=LFMT formatea las líneas de entrada LTYPE con LFMT"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
"resultado\n"
" de diff, generalizando -D/--ifdef."
-#: src/diff.c:911
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" LTYPE es 'old' (antiguo), 'new' (nuevo) o 'unchanged' (sin cambios).\n"
" GTYPE es como LTYPE o 'changed' (cambiado)."
-#: src/diff.c:912
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" M L+1\n"
" %(A=B?T:E) si A es igual a B entonces T en caso contrario E"
-#: src/diff.c:924
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
"el\n"
" número de línea de entrada"
-#: src/diff.c:928
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO' el carácter con código octal OOO\n"
" C el carácter C (los otros caracteres se representan a sí mismos)"
-#: src/diff.c:934
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr ""
"-d, --minimal se esfuerza en encontrar un grupo de cambios menor"
-#: src/diff.c:935
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
" --horizon-lines=NÚM mantiene NÚM líneas de prefijos y sufijos comunes"
-#: src/diff.c:936
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
"son\n"
" numerosos, pequeños y dispersos"
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr " --normal produce un diff normal (predeterminado)"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr " --help muestra esta ayuda y finaliza"
-#: src/diff.c:939
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
msgstr "-v, --version informa de la versión y finaliza"
-#: src/diff.c:941
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+#: src/diff.c:974
+#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"FICHEROS puede ser 'FICHERO1 FICHERO2' o 'DIRECTORIO1 DIRECTORIO2'\n"
" o 'DIRECTORIO FICHERO...' o 'FICHERO... DIRECTORIO'."
-#: src/diff.c:942
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr "Si se da --from-file o --to-file, no hay restricciones en FICHERO(s)."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
msgstr "Si un FICHERO es '-', lee la entrada estándar."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Modo de empleo: %s [OPCIÓN]... FICHEROS\n"
-#: src/diff.c:954
+#: src/diff.c:987
msgid "Compare FILES line by line."
msgstr "Compara FICHEROS línea por línea."
-#: src/diff.c:988
+#: src/diff.c:1021
#, c-format
msgid "conflicting %s option value '%s'"
msgstr "la opción %s tiene el valor conflictivo '%s'"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "las especificaciones del estilo de salida son conflictivas"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "ancho inválido '%s'"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Sólo en %s: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
msgstr "no se puede comparar '-' con un directorio"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "la opción -D no se puede usar con directorios"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Subdirectorios comunes: %s y %s\n"
# Nota: El segundo y el cuarto `%s' son tipos de fichero.
# Por ejemplo, "texto C", "texto FORTRAN", etc.
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "El fichero %s es un %s mientras que el %s es un %s\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "Los enlaces simbólicos %s y %s son distintos\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Los ficheros %s y %s son idénticos\n"
msgid "'-' specified for more than one input file"
msgstr "se ha especificado '-' para más de un fichero de entrada"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "la lectura falló"
msgid "invalid diff format; invalid change separator"
msgstr "formato de diff inválido; separador de cambio inválido"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "formato de diff inválido; línea final incompleta"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "no se ha podido invocar al programa subsidiario '%s'"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr ""
"formato de diff inválido; caracteres incorrectos al comienzo de la línea"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "error interno: tipo de diff inválido pasado a la salida"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "el fichero de entrada ha menguado"
-#: src/dir.c:158
+#: src/dir.c:156
#, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "no se pueden comparar los nombres de fichero '%s' y '%s'"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: bucle de directorio recursivo"
"v: Incluye líneas comunes verbosamente.\n"
"q: Salir.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: opción no reconocida '--%s'\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid ""
#~ "-b --ignore-space-change ignore changes in the amount of white "
#~ "space"
# Finnish translation of GNU diffutils.
-# Copyright © 2004 Free Software Foundation, Inc.
-# Lauri Nurmi <lanurmi@iki.fi>, 2002-2004.
+# This file is distributed under the same license as the diffutils package.
+# Copyright © 2016 Free Software Foundation, Inc.
+# Lauri Nurmi <lanurmi@iki.fi>, 2002-2004,2015-2016.
#
msgid ""
msgstr ""
-"Project-Id-Version: diffutils 2.8.7\n"
+"Project-Id-Version: diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
-"PO-Revision-Date: 2004-04-19 14:36+03:00\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
+"PO-Revision-Date: 2016-05-26 21:28+0300\n"
"Last-Translator: Lauri Nurmi <lanurmi@iki.fi>\n"
"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.7\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "argumentti %s on virheellinen %s:lle"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "argumentti %s on virheellinen %s:lle"
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgid "stack overflow"
msgstr "pinon ylivuoto"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Tuntematon järjestelmävirhe"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "tavallinen tyhjä tiedosto"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "tavallinen tiedosto"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "hakemisto"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "lohkolaite-erikoistiedosto"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "merkkilaite-erikoistiedosto"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "symbolinen linkki"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "pistoke"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "viestijono"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semafori"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "jaettu muistiobjekti"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "tyypitetty muistiobjekti"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "lohkolaite-erikoistiedosto"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "merkkilaite-erikoistiedosto"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "lohkolaite-erikoistiedosto"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "merkkilaite-erikoistiedosto"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "outo tiedosto"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "lohkolaite-erikoistiedosto"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "pistoke"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "outo tiedosto"
-#: lib/getopt.c:547 lib/getopt.c:576
-#, fuzzy, c-format
+#: lib/getopt.c:575 lib/getopt.c:604
+#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
-msgstr "%s: valitsin \"%s\" on moniselitteinen\n"
+msgstr "%s: valitsin ”%s” on moniselitteinen; vaihtoehdot:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: valitsin ”-W %s” on moniselitteinen\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
+#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
-msgstr "%s: valitsin \"--%s\" ei salli argumenttia\n"
+msgstr "%s: valitsin ”--%s” ei salli argumenttia\n"
-#: lib/getopt.c:637 lib/getopt.c:642
-#, fuzzy, c-format
+#: lib/getopt.c:667 lib/getopt.c:672
+#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
-msgstr "%s: valitsin \"%c%s\" ei salli argumenttia\n"
+msgstr "%s: valitsin ”%c%s” ei salli argumenttia\n"
-#: lib/getopt.c:685 lib/getopt.c:704
-#, fuzzy, c-format
+#: lib/getopt.c:715 lib/getopt.c:734
+#, c-format
msgid "%s: option '--%s' requires an argument\n"
-msgstr "%s: valitsin \"%s\" vaatii argumentin\n"
+msgstr "%s: valitsin ”--%s” vaatii argumentin\n"
-#: lib/getopt.c:742 lib/getopt.c:745
-#, fuzzy, c-format
+#: lib/getopt.c:772 lib/getopt.c:775
+#, c-format
msgid "%s: unrecognized option '--%s'\n"
-msgstr "%s: tunnistamaton valitsin \"--%s\"\n"
+msgstr "%s: tunnistamaton valitsin ”--%s”\n"
-#: lib/getopt.c:753 lib/getopt.c:756
-#, fuzzy, c-format
+#: lib/getopt.c:783 lib/getopt.c:786
+#, c-format
msgid "%s: unrecognized option '%c%s'\n"
-msgstr "%s: tunnistamaton valitsin \"%c%s\"\n"
+msgstr "%s: tunnistamaton valitsin ”%c%s”\n"
-#: lib/getopt.c:805 lib/getopt.c:808
-#, fuzzy, c-format
+#: lib/getopt.c:835 lib/getopt.c:838
+#, c-format
msgid "%s: invalid option -- '%c'\n"
-msgstr "%s: virheellinen valitsin -- %c\n"
+msgstr "%s: virheellinen valitsin -- ”%c”\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
-#, fuzzy, c-format
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
+#, c-format
msgid "%s: option requires an argument -- '%c'\n"
-msgstr "%s: valitsin vaatii argumentin -- %c\n"
+msgstr "%s: valitsin vaatii argumentin -- ”%c”\n"
-#: lib/getopt.c:934 lib/getopt.c:950
-#, fuzzy, c-format
+#: lib/getopt.c:964 lib/getopt.c:980
+#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
-msgstr "%s: valitsin \"-W %s\" on moniselitteinen\n"
+msgstr "%s: valitsin ”-W %s” on moniselitteinen\n"
-#: lib/getopt.c:974 lib/getopt.c:992
-#, fuzzy, c-format
+#: lib/getopt.c:1004 lib/getopt.c:1022
+#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
-msgstr "%s: valitsin \"-W %s\" ei salli argumenttia\n"
+msgstr "%s: valitsin ”-W %s” ei salli argumenttia\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
-#, fuzzy, c-format
+#: lib/getopt.c:1043 lib/getopt.c:1061
+#, c-format
msgid "%s: option '-W %s' requires an argument\n"
-msgstr "%s: valitsin \"%s\" vaatii argumentin\n"
+msgstr "%s: valitsin ”%s” vaatii argumentin\n"
#. TRANSLATORS:
#. Get translations for open and closing quotation marks.
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
-msgstr ""
+msgstr "”"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
-msgstr ""
+msgstr "”"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Onnistui"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Ei vastaavuutta"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Virheellinen säännöllinen lauseke"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Virheellinen vertailumerkki"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Virheellinen merkkiluokan nimi"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Kenoviiva lopussa"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Virheellinen takaisinviittaus"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "Pariton [ tai [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Pariton ( tai \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Pariton \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Virheellinen \"\\{\\}\":n sisältö"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Virheellinen välin loppu"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Muisti lopussa"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Virheellinen edeltävä säännöllinen lauseke"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Ennenaikainen säännöllisen lausekkeen loppu"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Liian suuri säännöllinen lauseke"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "Pariton ) tai \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Ei edellistä säännöllistä lauseketta"
#: lib/xfreopen.c:35
msgid "stdin"
-msgstr ""
+msgstr "vakiosyöte"
#: lib/xfreopen.c:36
msgid "stdout"
-msgstr ""
+msgstr "vakiotuloste"
#: lib/xfreopen.c:37
msgid "stderr"
-msgstr ""
+msgstr "vakiovirhetuloste"
#: lib/xfreopen.c:38
-#, fuzzy
msgid "unknown stream"
-msgstr "Tuntematon järjestelmävirhe"
+msgstr "tuntematon virta"
#: lib/xfreopen.c:39
-#, c-format
+#, fuzzy, c-format
msgid "failed to reopen %s with mode %s"
-msgstr ""
+msgstr "%s: Oikeuksien muuttaminen tilaan %s ei onnistu"
#: lib/xstrtol-error.c:63
#, fuzzy, c-format
msgid "invalid %s%s argument '%s'"
-msgstr "virheellinen arvo \"%s\" valitsimelle --bytes"
+msgstr "argumentti %s on virheellinen %s:lle"
#: lib/xstrtol-error.c:68
-#, c-format
+#, fuzzy, c-format
msgid "invalid suffix in %s%s argument '%s'"
-msgstr ""
+msgstr "virheellinen loppuliite ”%.*s” liukulukuvakiolla"
#: lib/xstrtol-error.c:72
-#, c-format
+#, fuzzy, c-format
msgid "%s%s argument '%s' too large"
-msgstr ""
+msgstr "lukumäärä %s on liian suuri"
#: lib/version-etc.c:74
#, c-format
msgid "Packaged by %s (%s)\n"
-msgstr ""
+msgstr "Paketoinut %s (%s)\n"
#: lib/version-etc.c:77
#, c-format
msgid "Packaged by %s\n"
-msgstr ""
+msgstr "Paketoinut %s\n"
#. TRANSLATORS: Translate "(C)" to the copyright symbol
#. (C-in-a-circle), if this symbol is available in the user's
"There is NO WARRANTY, to the extent permitted by law.\n"
"\n"
msgstr ""
+"\n"
+"Lisenssi GPLv3+: GNU GPL versio 3 tai myöhempi <http://gnu.org/licenses/gpl."
+"html>.\n"
+"Tämä on vapaa ohjelmisto; sitä saa vapaasti muuttaa ja levittää edelleen.\n"
+"Siinä määrin kuin laki sallii, TAKUUTA EI OLE.\n"
+"\n"
#. TRANSLATORS: %s denotes an author name.
#: lib/version-etc.c:102
"\n"
"Report bugs to: %s\n"
msgstr ""
+"\n"
+"Ilmoita ohjelmistovioista (englanniksi) osoitteeseen: %s\n"
#: lib/version-etc.c:247
#, c-format
msgid "Report %s bugs to: %s\n"
-msgstr ""
+msgstr "Ilmoita %s-vioista (englanniksi) osoitteeseen %s\n"
#: lib/version-etc.c:251
#, c-format
msgid "%s home page: <%s>\n"
-msgstr ""
+msgstr "%s-kotisivu: <%s>\n"
#: lib/version-etc.c:253
#, c-format
msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
-msgstr ""
+msgstr "%s-kotisivu: <http://www.gnu.org/software/%s/>\n"
#: lib/version-etc.c:256
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr ""
+"Yleisohjeita GNU-ohjelmistojen käyttöön: <http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Tiedostot %s ja %s eroavat\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Binääritiedostot %s ja %s eroavat\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Ei rivinvaihtoa tiedoston lopussa"
#. This is a proper name. See the gettext manual, section Names.
#: src/cmp.c:44
msgid "David MacKenzie"
-msgstr ""
+msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
-#, fuzzy, c-format
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
+#, c-format
msgid "Try '%s --help' for more information."
-msgstr "Kokeile \"%s --help\" saadaksesi lisää tietoa."
+msgstr "Komento ”%s --help” antaa lisää tietoa."
#: src/cmp.c:137
#, fuzzy, c-format
msgid "invalid --ignore-initial value '%s'"
-msgstr "virheellinen arvo \"%s\" valitsimelle --ignore-initial"
+msgstr "virheellinen alkuarvo jäsenelle %qE"
#: src/cmp.c:147
#, c-format
msgid "options -l and -s are incompatible"
msgstr "valitsimet -l ja -s eivät ole yhteensopivia"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "kirjoitus epäonnistui"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "vakiotuloste"
#: src/cmp.c:167
msgid "-s, --quiet, --silent suppress all normal output"
-msgstr ""
+msgstr "-s, --quiet, --silent vaienna kaikki tavanomainen tuloste"
#: src/cmp.c:168
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help näytä tämä ohje ja poistu"
#: src/cmp.c:169
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Näyttää versiotiedot."
+msgstr "-v, --version näytä versiotiedot ja poistu"
#: src/cmp.c:178
#, c-format
msgstr "Vertaa kahta tiedostoa tavu tavulta."
#: src/cmp.c:182
-#, fuzzy
msgid ""
"The optional SKIP1 and SKIP2 specify the number of bytes to skip\n"
"at the beginning of each file (zero by default)."
msgstr ""
-"OHITA1 ja OHITA2 ovat jokaisessa tiedostossa ohitettavien tavujen määrä."
+"OHITA1 ja OHITA2 ovat jokaisen tiedostn alusta ohitettavien tavujen\n"
+"määrä (oletusarvo on nolla)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
+"Pitkien valitsinten pakolliset argumentit ovat pakollisia myös lyhyille.\n"
#: src/cmp.c:191
msgid ""
"GB 1,000,000,000, G 1,073,741,824, sekä T, P, E, Z, Y."
#: src/cmp.c:194
-#, fuzzy
msgid "If a FILE is '-' or missing, read standard input."
-msgstr "Jos TIEDOSTO on \"-\" tai puuttuu, luetaan vakiosyötteestä."
+msgstr "Jos TIEDOSTOa ei ole annettu, tai se on ”-”, luetaan vakiosyötettä."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"Paluuarvo on 0, jos syötteet ovat samoja, 1 jos erilaisia, "
"ongelmatilanteissa 2."
#: src/cmp.c:240
-#, fuzzy, c-format
+#, c-format
msgid "invalid --bytes value '%s'"
-msgstr "virheellinen arvo \"%s\" valitsimelle --bytes"
+msgstr "virheellinen arvo ”%s” valitsimelle --bytes"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
-#, fuzzy, c-format
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
+#, c-format
msgid "missing operand after '%s'"
-msgstr "puuttuva operandi argumentin \"%s\" jälkeen"
+msgstr "puuttuva operandi argumentin ”%s” jälkeen"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
-#, fuzzy, c-format
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
+#, c-format
msgid "extra operand '%s'"
-msgstr "ylimääräinen operandi \"%s\""
+msgstr "ylimääräinen operandi ”%s”"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s eroavat: tavu %s, rivi %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s eroavat: tavu %s, rivi %s on %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: Tiedoston %s loppu\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:49
msgid "Paul Eggert"
-msgstr ""
+msgstr "Paul Eggert"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:50
msgid "Mike Haertel"
-msgstr ""
+msgstr "Mike Haertel"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:51
msgid "David Hayes"
-msgstr ""
+msgstr "David Hayes"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:52
msgid "Richard Stallman"
-msgstr ""
+msgstr "Richard Stallman"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:53
msgid "Len Tower"
-msgstr ""
+msgstr "Len Tower"
-#: src/diff.c:339
-#, fuzzy, c-format
+#: src/diff.c:351
+#, c-format
msgid "invalid context length '%s'"
-msgstr "virheellinen kontekstin pituus \"%s\""
+msgstr "virheellinen kontekstin pituus ”%s”"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "tämä isäntä ei tue sivunumerointia"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "liian monta tiedostonimivalitsinta"
-#: src/diff.c:514
-#, fuzzy, c-format
+#: src/diff.c:526
+#, c-format
msgid "invalid width '%s'"
msgstr "virheellinen leveys \"%s\""
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "ristiriitaiset leveysvalinnat"
-#: src/diff.c:543
-#, fuzzy, c-format
+#: src/diff.c:555
+#, c-format
msgid "invalid horizon length '%s'"
msgstr "virheellinen horisontin pituus \"%s\""
-#: src/diff.c:598
-#, fuzzy, c-format
+#: src/diff.c:611
+#, c-format
msgid "invalid tabsize '%s'"
msgstr "virheellinen sarkaimen koko \"%s\""
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "ristiriitaiset sarkaimen kokovalinnat"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "sekä valitsin --from-file että --to-file on määritetty"
-#: src/diff.c:854
+#: src/diff.c:883
#, fuzzy
msgid " --normal output a normal diff (the default)"
msgstr "--normal Tulosta normaali diff."
-#: src/diff.c:855
+#: src/diff.c:884
#, fuzzy
msgid "-q, --brief report only when files differ"
msgstr "-q --brief Kertoo vain, eroavatko tiedostot."
-#: src/diff.c:856
+#: src/diff.c:885
#, fuzzy
msgid "-s, --report-identical-files report when two files are the same"
msgstr "-s --report-identical-files Ilmoita, jos kaksi tiedostoa ovat samat."
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
-#: src/diff.c:858
+#: src/diff.c:887
#, fuzzy
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"-w MÄÄRÄ --width=MÄÄRÄ Tulosta enintään MÄÄRÄ (oletus 130) merkkiä riville."
-#: src/diff.c:859
+#: src/diff.c:888
#, fuzzy
msgid "-e, --ed output an ed script"
msgstr "-e --ed Tulosta ed-skripti."
-#: src/diff.c:860
+#: src/diff.c:889
#, fuzzy
msgid "-n, --rcs output an RCS format diff"
msgstr "-n --rcs Tulosta RCS-muotoinen diff."
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr ""
-#: src/diff.c:862
+#: src/diff.c:891
#, fuzzy
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"-w MÄÄRÄ --width=MÄÄRÄ Tulosta enintään MÄÄRÄ (oletus 130) merkkiä riville."
-#: src/diff.c:863
+#: src/diff.c:892
#, fuzzy
msgid ""
" --left-column output only the left column of common lines"
msgstr "-l --left-column Tulosta vain yhteisten rivien vasen palsta"
-#: src/diff.c:864
+#: src/diff.c:893
#, fuzzy
msgid " --suppress-common-lines do not output common lines"
msgstr "-s --suppress-common-lines Älä tulosta yhteisiä rivejä."
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+"--from-file=TIEDOSTO1 Vertaa TIEDOSTO1:ä kaikkiin operandeihin. TIEDOSTO1 "
+"voi olla hakemisto."
-#: src/diff.c:871
+#: src/diff.c:900
#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr "-t --expand-tabs Laajentaa sarkaimet välilyönneiksi tulosteessa."
-#: src/diff.c:872
+#: src/diff.c:901
#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr "-T --initial-tab Lisää sarkain rivien alkuun."
-#: src/diff.c:873
+#: src/diff.c:902
#, fuzzy
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr "--tabsize=KOKO Sarkaimen koko on KOKO (oletus 8) merkkiä."
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
-#: src/diff.c:875
-#, fuzzy
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
"-l --paginate Ohjaa tuloste ohjelman \"pr\" läpi sivunumerointia varten."
-#: src/diff.c:877
-#, fuzzy
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
-msgstr "-r --recursive Vertaa löytyneitä alihakemistoja rekursiivisesti."
+msgstr ""
+"-r, --recursive vertaa löytyneitä alihakemistoja "
+"rekursiivisesti"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr ""
-#: src/diff.c:879
+#: src/diff.c:908
#, fuzzy
msgid "-N, --new-file treat absent files as empty"
msgstr "-N --new-file Käsittele puuttuvia tiedostoja tyhjinä."
-#: src/diff.c:880
+#: src/diff.c:909
#, fuzzy
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr "--unidirectional-new-file Käsittele puuttuvia tiedostoja tyhjinä."
-#: src/diff.c:881
+#: src/diff.c:910
#, fuzzy
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
"--ignore-file-name-case Älä huomioi kirjainkokoa tiedostojen nimiä "
"verrattaessa."
-#: src/diff.c:882
+#: src/diff.c:911
#, fuzzy
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
"--no-ignore-file-name-case Kirjainkoko huomioidaan tiedostonimiä "
"verrattaessa."
-#: src/diff.c:883
+#: src/diff.c:912
#, fuzzy
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr ""
"-x HAHMO --exclude=HAHMO Jätä pois tiedostot, jotka vastaavat HAHMOa."
-#: src/diff.c:884
+#: src/diff.c:913
#, fuzzy
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
"-X TIEDOSTO --exclude-from=TIEDOSTO Jätä pois TIEDOSTOssa listatut "
"tiedostot."
-#: src/diff.c:885
+#: src/diff.c:914
#, fuzzy
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
"-S TIEDOSTO --starting-file=TIEDOSTO Aloita TIEDOSTOlla verrattaessa "
"hakemistoja."
-#: src/diff.c:886
+#: src/diff.c:915
#, fuzzy
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
"--from-file=TIEDOSTO1 Vertaa TIEDOSTO1:ä kaikkiin operandeihin. TIEDOSTO1 "
"voi olla hakemisto."
-#: src/diff.c:888
+#: src/diff.c:917
#, fuzzy
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
"--to-file=TIEDOSTO2 Vertaa kaikkia operandeja TIEDOSTO2:een. TIEDOSTO2 voi "
"olla hakemisto."
-#: src/diff.c:891
+#: src/diff.c:920
#, fuzzy
msgid ""
"-i, --ignore-case ignore case differences in file contents"
"-i --ignore-case Älä huomioi kirjainkokoa tiedostojen sisältöä "
"verrattaessa."
-#: src/diff.c:892
+#: src/diff.c:921
#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
"-E --ignore-tab-expansion Älä huomioi sarkainten laajennuksesta johtuvia "
"eroja."
-#: src/diff.c:893
+#: src/diff.c:922
#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr "-w --ignore-all-white-space Älä huomioi tyhjiä merkkejä."
-#: src/diff.c:894
+#: src/diff.c:923
#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
"-b --ignore-space-change Älä huomioi tyhjistä merkeistä johtuvia eroja."
-#: src/diff.c:895
-#, fuzzy
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
-msgstr "-w --ignore-all-white-space Ã\84lä huomioi tyhjiä merkkejä."
+msgstr "-w --ignore-all-white-space älä huomioi tyhjiä merkkejä"
-#: src/diff.c:896
-#, fuzzy
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
-msgstr ""
-"-B --ignore-blank-lines Älä huomioi tyhjistä riveistä johtuvia eroja."
+msgstr "-B --ignore-blank-lines älä huomioi tyhjistä riveistä johtuvia eroja"
-#: src/diff.c:897
+#: src/diff.c:926
#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I SI --ignore-matching-lines=SI Älä huomioi eroavia rivejä, jotka "
"vastaavat säännöllistä lauseketta."
-#: src/diff.c:899
-#, fuzzy
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
-msgstr "-a --text Käsittelee kaikki tiedostot tekstinä."
+msgstr "-a --text käsittelee kaikki tiedostot tekstinä"
-#: src/diff.c:900
-#, fuzzy
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Poista lopussa oleva vaununpalautus syötteestä."
+msgstr "--strip-trailing-cr poista vaununpalautus syötteen lopusta"
-#: src/diff.c:902
-#, fuzzy
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
-msgstr "--binary Lukee ja kirjoittaa dataa binääritilassa."
+msgstr " --binary lue ja kirjoita dataa binääritilassa"
-#: src/diff.c:905
+#: src/diff.c:934
#, fuzzy
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
"-D NIMI --ifdef=NIMI Tulosta yhdistetty tiedosto näyttämään \"#ifdef NIMI"
"\"-erot."
-#: src/diff.c:906
+#: src/diff.c:935
#, fuzzy
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
"--GTYYPPI-group-format=GMUOTO Sama, muotoile GTYYPPIset syöteryhmät "
"GMUOTOon."
-#: src/diff.c:907
-#, fuzzy
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
-msgstr "--line-format=LMUOTO Sama, muotoile kaikki syöterivit LMUOTOon."
+msgstr " --line-format=LMUOTO muotoile kaikki syöterivit LMUOTOon"
-#: src/diff.c:908
+#: src/diff.c:937
#, fuzzy
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
-msgstr ""
-"--LTYYPPI-line-format=MUOTO Sama, muotoile LTYYPPIset syöterivit LMUOTOon."
+msgstr " --line-format=LMUOTO muotoile kaikki syöterivit LMUOTOon"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
-#: src/diff.c:911
-#, fuzzy
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" LTYYPPI on \"old\", \"new\" tai \"unchanged\". GTYYPPI on LTYYPPI tai "
"\"changed\"."
-#: src/diff.c:912
+#: src/diff.c:941
#, fuzzy
msgid ""
" GFMT (only) may contain:\n"
" E F-1\n"
" M L+1"
-#: src/diff.c:924
+#: src/diff.c:953
#, fuzzy
msgid ""
" LFMT (only) may contain:\n"
" %l rivin sisältö, mahdollinen edeltävä rivinvaihto poislukien\n"
" %[-][LEVEYS][.[TARKK]]{doxX}n syöterivin numero printf-tyylillä"
-#: src/diff.c:928
+#: src/diff.c:957
#, fuzzy
msgid ""
" Both GFMT and LFMT may contain:\n"
" %c'C' yksittäinen merkki C\n"
" %c'\\OOO' yksittäinen merkki oktaalikoodilla OOO"
-#: src/diff.c:934
+#: src/diff.c:963
#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr "-d --minimal Yrittää löytää pienemmän määrän muutoksia."
-#: src/diff.c:935
+#: src/diff.c:964
#, fuzzy
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
"--horizon-lines=MÄÄRÄ Säilytä MÄÄRÄ riviä yhteisestä etu- ja "
"jälkiliitteestä."
-#: src/diff.c:936
+#: src/diff.c:965
#, fuzzy
msgid ""
" --speed-large-files assume large files and many scattered small changes"
"-H --speed-large-files Oleta suuret tiedostot, joissa pieniä muutoksia "
"ympäri tiedoston."
-#: src/diff.c:938
-msgid " --help display this help and exit"
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:967
#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr "--normal Tulosta normaali diff."
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
+#, fuzzy
+msgid " --help display this help and exit"
+msgstr " --help näytä tämä ohje ja poistu"
+
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
-msgstr "-v --version Näyttää versiotiedot."
+msgstr "-v, --version näytä versiotiedot ja poistu"
-#: src/diff.c:941
+#: src/diff.c:974
#, fuzzy
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"TIEDOSTOT ovat \"TIEDOSTO1 TIEDOSTO2\" tai \"HAK1 HAK2\" tai \"HAK "
"TIEDOSTO...\" tai \"TIEDOSTO... HAK\"."
-#: src/diff.c:942
+#: src/diff.c:975
#, fuzzy
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
-msgstr ""
-"Jos valitsin --from-file tai --to-file on annettu, TIEDOSTOILLE ei ole "
-"rajoituksia."
+msgstr "Tiedoston lisääminen hakemiston %s ulkopuolelta epäonnistui"
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
#, fuzzy
msgid "If a FILE is '-', read standard input."
-msgstr "Jos TIEDOSTO on \"-\", luetaan vakiosyötteestä."
+msgstr ""
+"\n"
+"Jos TIEDOSTOa ei ole annettu, tai se on ”-”, luetaan vakiosyötettä.\n"
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Käyttö: %s [VALITSIN]... TIEDOSTOT\n"
-#: src/diff.c:954
-#, fuzzy
+#: src/diff.c:987
msgid "Compare FILES line by line."
-msgstr "Vertaa tiedostoja rivi riviltä."
+msgstr "Vertaa TIEDOSTOja rivi riviltä."
-#: src/diff.c:988
+#: src/diff.c:1021
#, fuzzy, c-format
msgid "conflicting %s option value '%s'"
-msgstr "ristiriitainen arvo \"%2$s\" valitsimelle %1$s"
+msgstr "ristiriitaiset tyypit kohteelle %<%c%s%>:lle"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "ristiriitaiset tulostustyylin valinnat"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "virheellinen leveys \"%s\""
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Vain hakemistossa %s: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
#, fuzzy
msgid "cannot compare '-' to a directory"
-msgstr "ei voi verrata syötettä \"-\" hakemistoon"
+msgstr "hakemiston %s luominen ei onnistu"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "valitsin -D ei toimi hakemistojen kanssa"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Yhteiset alihakemistot: %s ja %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "Tiedosto %s on %s, kun taas tiedosto %s on %s\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, fuzzy, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "Tiedostot %s ja %s eroavat\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Tiedostot %s ja %s ovat identtiset\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff3.c:41
msgid "Randy Smith"
-msgstr ""
+msgstr "Randy Smith"
#: src/diff3.c:313
#, c-format
#: src/diff3.c:353
#, fuzzy
msgid "'-' specified for more than one input file"
-msgstr "\"-\" on määritetty useammaksi kuin yhdeksi syötetiedostoksi"
+msgstr "Voidaan antaa vain yksi syötetiedosto!\n"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "lukeminen epäonnistui"
msgstr ""
#: src/diff3.c:441
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Käsittelee kaikki tiedostot tekstinä."
+msgstr "-a, --text käsittele kaikki tiedostot tekstinä"
#: src/diff3.c:442
#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Poista lopussa oleva vaununpalautus syötteestä."
+msgstr "--strip-trailing-cr poista vaununpalautus syötteen lopusta"
#: src/diff3.c:443
#, fuzzy
#: src/diff3.c:448
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help näytä tämä ohje ja poistu"
#: src/diff3.c:449
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Näyttää versiotiedot."
+msgstr "-v, --version näytä versiotiedot ja poistu"
#: src/diff3.c:458
#, c-format
msgid "invalid diff format; invalid change separator"
msgstr "virheellinen diff-muoto; virheellinen muutoserotin"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "virheellinen diff-muoto; viimeinen rivi vajaa"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, fuzzy, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "apuohjelmaa \"%s\" ei voitu käynnistää"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "virheellinen diff-muoto; väärät rivin alkumerkit"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "sisäinen virhe: virheellinen diff-muoto välitetty tulosteeseen"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "syötetiedosto kutistui"
-#: src/dir.c:158
+#: src/dir.c:156
#, fuzzy, c-format
msgid "cannot compare file names '%s' and '%s'"
-msgstr "ei voi verrata tiedostonimiä \"%s\" ja \"%s\""
+msgstr "tiedostonimiä %s ja %s ei voi vertailla"
-#: src/dir.c:209
-#, c-format
+#: src/dir.c:225
+#, fuzzy, c-format
msgid "%s: recursive directory loop"
-msgstr ""
+msgstr "%s: syöte sisältää silmukan:"
#. This is a proper name. See the gettext manual, section Names.
#: src/sdiff.c:42
msgid "Thomas Lord"
-msgstr ""
+msgstr "Thomas Lord"
#: src/sdiff.c:173
#, fuzzy
"-b --ignore-space-change Älä huomioi tyhjistä merkeistä johtuvia eroja."
#: src/sdiff.c:179
-#, fuzzy
msgid "-W, --ignore-all-space ignore all white space"
-msgstr "-W --ignore-all-white Älä huomioi tyhjiä merkkejä."
+msgstr "-W, --ignore-all-space älä huomioi tyhjiä merkkejä"
#: src/sdiff.c:180
-#, fuzzy
msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank"
msgstr ""
-"-B --ignore-blank-lines Älä huomioi tyhjistä riveistä johtuvia eroja."
+"-B, --ignore-blank-lines älä huomioi tyhjistä riveistä johtuvia eroja"
#: src/sdiff.c:181
#, fuzzy
"vastaavat säännöllistä lauseketta."
#: src/sdiff.c:182
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Poista lopussa oleva vaununpalautus syötteestä."
+msgstr " --strip-trailing-cr poista vaununpalautus syötteen lopusta"
#: src/sdiff.c:183
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Käsittelee kaikki tiedostot tekstinä."
+msgstr "-a --text käsittele kaikki tiedostot tekstinä"
#: src/sdiff.c:185
#, fuzzy
#: src/sdiff.c:196
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help näytä tämä ohje ja poistu"
#: src/sdiff.c:197
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Näyttää versiotiedot."
+msgstr "-v --version näytä versiotiedot ja poistu"
#: src/sdiff.c:206
#, c-format
msgstr "Käyttö: %s [VALITSIN]...TIEDOSTO1 TIEDOSTO2\n"
#: src/sdiff.c:208
-#, fuzzy
msgid "Side-by-side merge of differences between FILE1 and FILE2."
-msgstr "Tiedostojen erojen yhdistäminen vierekkäisillä palstoilla."
+msgstr ""
+"Tiedostojen TIED1 ja TIED2 erojen yhdistäminen vierekkäisillä palstoilla."
#: src/sdiff.c:329
msgid "cannot interactively merge standard input"
msgstr "molemmat vertailtavat tiedostot ovat hakemistoja"
#: src/sdiff.c:818
-#, fuzzy
msgid ""
"ed:\tEdit then use both versions, each decorated with a header.\n"
"eb:\tEdit then use both versions.\n"
msgstr ""
"ed:\tMuokkaa ja käytä molempia versioita, kumpaankin otsake.\n"
"eb:\tMuokkaa ja käytä molempia versioita.\n"
-"el:\tMuokkaa ja käytä vasenta versiota.\n"
-"er:\tMuokkaa ja käytä oikeata versiota.\n"
-"e:\tMuokkaa uusi versio.\n"
-"l:\tKäytä vasenta versiota.\n"
-"r:\tKäytä oikeata versiota.\n"
-"s:\tSisällytä yhteiset rivit automaattisesti, ei ilmoitusta.\n"
-"v:\tSisällytä yhteiset rivit automaattisesti ja ilmoita niistä.\n"
+"el tai e1:\tMuokkaa ja käytä vasenta versiota.\n"
+"er tai e2:\tMuokkaa ja käytä oikeata versiota.\n"
+"e:\tHylkää molemmat versiot ja muokkaa uusi.\n"
+"l tai 1:\tKäytä vasenta versiota.\n"
+"r tai 2:\tKäytä oikeata versiota.\n"
+"s:\tSisällytä yhteiset rivit automaattisesti, ilmoittamatta.\n"
+"v:\tSisällytä yhteiset rivit automaattisesti, ilmoittaen.\n"
"q:\tLopeta.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: tunnistamaton valitsin ”--%s”\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "%s: illegal option -- %c\n"
#~ msgstr "%s: virheellinen valitsin -- %c\n"
msgstr ""
"Project-Id-Version: GNU diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2012-10-31 08:16+0100\n"
"Last-Translator: Frédéric Marchal <fmarchal@perso.be>\n"
"Language-Team: French <traduc@traduc.org>\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Lokalize 1.0\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "argument pour %s%s pas valable: « %s »"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "argument pour %s%s pas valable: « %s »"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "erreur du programme"
msgid "stack overflow"
msgstr "débordement de pile"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Erreur système inconnue"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "fichier régulier vide"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "fichier régulier"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "répertoire"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "fichier spécial-blocs"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "fichier spécial-caractères"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "« fifo »"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "lien symbolique"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "« socket »"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "queue de messages"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "sémaphore"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "objet en mémoire partagée"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "objet mémoire typé"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "fichier spécial-blocs"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "fichier spécial-caractères"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "« fifo »"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "fichier spécial-blocs"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "fichier spécial-caractères"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "fichier bizarre"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "fichier spécial-blocs"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "« socket »"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "fichier bizarre"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: l'option « %s » est ambiguë ; les possibilités sont :"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: l'option « -W %s » est ambiguë\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: l'option « --%s » n'accepte aucun argument\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: l'option « %c%s » n'accepte aucun argument\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: l'option « --%s » requiert un argument\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: l'option « --%s » n'est pas reconnue\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: l'option « %c%s » n'est pas reconnue\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: l'option -- « %c » est invalide\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: l'option -- « %c » requiert un argument\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: l'option « -W %s » est ambiguë\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: l'option « -W %s » n'accepte aucun argument.\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: l'option « -W %s » requiert un argument\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "« "
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr " »"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Succès"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Pas de concordance"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "L'expression régulière est invalide"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Le caractère de regroupement est invalide"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Le nom d'un ensemble de caractères est invalide"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Barre oblique inverse à la fin"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "La référence arrière est invalide"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "[ or [^ sans vis-à-vis"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr " ( ou \\( sans vis-à-vis"
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "\\{ sans vis-à-vis"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Le contenu de \\{\\} est invalide"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "La fin d'intervalle est invalide"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Mémoire épuisée"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "L'expression régulière précédente est invalide"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Fin prématurée de l'expression régulière"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Expression régulière trop grande"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr ") or \\) sans vis-à-vis"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "N'est pas précédé d'une expression régulière"
"Aide générale sur l'utilisation des logiciels GNU: <http://www.gnu.org/"
"gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Les fichiers %s et %s sont différents\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Les fichiers binaires %s et %s sont différents\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Pas de fin de ligne à la fin du fichier"
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, c-format
msgid "Try '%s --help' for more information."
msgstr "Utilisez « %s --help » pour en savoir d'avantage."
msgid "options -l and -s are incompatible"
msgstr "options -l et -s sont incompatibles"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "échec d'écriture"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "sortie standard"
"escamoter\n"
"au début de chaque fichier (zéro par défaut)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr "Si un FICHIER est « - » ou manquant, lire sur l'entrée standard."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"Le statut de fin d'exécution est 0 si les entrées sont les mêmes, 1 si "
msgid "invalid --bytes value '%s'"
msgstr "valeur invalide pour --bytes: « %s »"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, c-format
msgid "missing operand after '%s'"
msgstr "opérande manquante après « %s »"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, c-format
msgid "extra operand '%s'"
msgstr "opérande supplémentaire « %s »"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s sont différents: octet %s, ligne %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s diffèrent: octet %s, ligne %s est %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: Fin-de-fichier (EOF) sur %s\n"
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
+#: src/diff.c:351
#, c-format
msgid "invalid context length '%s'"
msgstr "longueur du contexte invalide « %s »"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "La pagination n'est pas supporté sur cette machine"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "Trop de noms de fichiers dans les options"
-#: src/diff.c:514
+#: src/diff.c:526
#, c-format
msgid "invalid width '%s'"
msgstr "largeur invalide « %s »"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "options de largeur conflictuelles"
-#: src/diff.c:543
+#: src/diff.c:555
#, c-format
msgid "invalid horizon length '%s'"
msgstr "longueur d'horizon invalide « %s »"
-#: src/diff.c:598
+#: src/diff.c:611
#, c-format
msgid "invalid tabsize '%s'"
msgstr "taille de tabulation invalide « %s »"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "options conflictuelles de taille de tabulation"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "--from-file et --to-file ont été spécifiés ensemble"
-#: src/diff.c:854
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
msgstr ""
" --normal Produire un « diff » en format normal (par "
"défaut)"
-#: src/diff.c:855
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
msgstr ""
"-q, --brief Indiquer seulement si les fichiers diffèrent"
-#: src/diff.c:856
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
msgstr ""
"-s, --report-identical-files Indiquer si les deux fichiers sont identiques"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
"-c, -C N, --context[=N] Afficher N (3 par défaut) lignes du "
"contexte copié"
-#: src/diff.c:858
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"-u, -U N, --unified[=N] Afficher N (3 par défaut) lignes dans "
"le context unifié"
-#: src/diff.c:859
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
msgstr "-e, --ed Générer un script pour « ed »"
-#: src/diff.c:860
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
msgstr ""
"-n, --rcs Générer un fichier « diff » au format RCS"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr "-y, --side-by-side Affichage sur deux colonnes"
-#: src/diff.c:862
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"-w, --width=N Limiter la sortie à au plus N colonnes "
"imprimées (130 par défaut)"
-#: src/diff.c:863
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
" --left-column Afficher les lignes identiques uniquement dans "
"la colonne de gauche"
-#: src/diff.c:864
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
msgstr " --suppress-common-lines Ne pas afficher les lignes identiques"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
"-p, --show-c-function Afficher dans quelle fonction C le changement "
"se trouve"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
"-F, --show-function-line=RE Montrer la ligne la plus récente correspondant "
"à RE"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
" --label ÉTIQUETTE Utiliser ÉTIQUETTE au lieu du nom de fichier\n"
" (peut être répété)"
-#: src/diff.c:871
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr ""
"-t, --expand-tabs Étaler les tabulateurs en espaces dans la "
"sortie"
-#: src/diff.c:872
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
"-T, --initial-tab Aligner les tabulateurs en préfixant un "
"tabulateur"
-#: src/diff.c:873
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
" --tabsize=N Les balises de tabulation sont à chaque N (8 "
"par défaut) colonnes"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
" --suppress-blank-empty Supprimer les espaces et les tabulations avant "
"les lignes vides"
-#: src/diff.c:875
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
"-l, --paginate Relayer la sortie à « pr » afin de la paginer"
-#: src/diff.c:877
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
"-r, --recursive Comparer récursivement les sous-répertoires "
"trouvés"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr " --no-dereference Ne pas suivre les liens symboliques"
-#: src/diff.c:879
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
msgstr ""
"-N, --new-file Traiter les fichiers absents comme des "
"fichiers vides"
-#: src/diff.c:880
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
" --unidirectional-new-file Traiter les premiers fichiers absents comme "
"vides"
-#: src/diff.c:881
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
" --ignore-file-name-case Ignorer la casse lors de la comparaison des "
"noms de fichiers"
-#: src/diff.c:882
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
" --no-ignore-file-name-case Tenir compte de la casse lors de la "
"comparaison des noms de fichiers"
-#: src/diff.c:883
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr ""
"-x, --exclude=PAT Exclure les fichiers dont les noms concordent "
"avec le PATron"
-#: src/diff.c:884
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
"-X, --exclude-from=FICHIER Exclure les fichiers dont les noms\n"
" concordent avec ceux contenus dans le FICHIER"
-#: src/diff.c:885
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
"-S, --starting-file=FICHIER Débuter la comparaison des répertoires par le "
"FICHIER"
-#: src/diff.c:886
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
" --from-file=FICHIER1 Comparer le FICHIER1 à toutes les opérandes.\n"
" FICHIER1 peut être un répertoire"
-#: src/diff.c:888
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
" --to-file=FICHIER2 Comparer toutes les opérandes à FICHIER2.\n"
" FICHIER2 peut être un répertoire"
-#: src/diff.c:891
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
"-i, --ignore-case Ignorer les différences de casses dans le "
"contenu des fichiers"
-#: src/diff.c:892
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
"-E, --ignore-tab-expansion Ignorer les changements liés à l'expansion des "
"tabulations"
-#: src/diff.c:893
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr ""
"-Z, --ignore-trailing-space Ignorer les blancs d'espacement à la fin "
"de la ligne"
-#: src/diff.c:894
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
"-b, --ignore-space-change Ignorer les changements dans le nombre "
"d'espaces"
-#: src/diff.c:895
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w, --ignore-all-space Ignorer tout blanc d'espacement"
-#: src/diff.c:896
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr ""
"-B, --ignore-blank-lines Ignorer les changements dont toutes les lignes "
"sont blanches"
-#: src/diff.c:897
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I, --ignore-matching-lines=RE Ignorer les différences dont toutes les\n"
" lignes concordent avec l'expression régulière RE"
-#: src/diff.c:899
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
msgstr ""
"-a, --text Traiter tous les fichiers comme des textes"
-#: src/diff.c:900
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
" --strip-trailing-cr Éliminer les retours de chariot de l'entrée"
-#: src/diff.c:902
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr " --binary Lire et écrire les données en binaire"
-#: src/diff.c:905
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
"-D, --ifdef=NOM Afficher les fichiers fusionnés en marquant les "
"différences par des « #ifdef NOM »"
-#: src/diff.c:906
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
" --GTYPE-group-format=GFMT Formater les groupes d'entrée GTYPE avec GFMT"
-#: src/diff.c:907
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
" --line-format=LFMT Formater toutes les lignes d'entrée avec LFMT"
-#: src/diff.c:908
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
" --LTYPE-line-format=LFMT Formater les lignes d'entrée LTYPE avec LFMT"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
" Ces options de formatage fournissent un contrôle fin sur la sortie\n"
" de diff et généralise -D/--ifdef."
-#: src/diff.c:911
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" LTYPE peut être soit « old », « new », ou « unchanged ». GTYPE prend une "
"des valeurs de LTYPE ou « changed »."
-#: src/diff.c:912
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" E F-1\n"
" M L+1 %(A=B?T:E) si A égal B alors T sinon E"
-#: src/diff.c:924
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %[-][LARGEUR][.[PREC]]{doxX}n la spécification du numéro de ligne\n"
" d'entrée selon le format de printf"
-#: src/diff.c:928
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO» le caractère dont le code octal est OOO C le "
"caractère C (les autres caractères se représentent eux-mêmes)"
-#: src/diff.c:934
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr ""
"-d, --minimal Rechercher assidûment le plus petit ensemble de "
"différences"
-#: src/diff.c:935
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
" --horizon-lines=N Retenir N lignes ayant des préfixes et suffixes "
"identiques"
-#: src/diff.c:936
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
" --speed-large-files Suppose de grands fichiers et de nombreux "
"petits changements éparpillés"
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr ""
+" --normal Produire un « diff » en format normal (par "
+"défaut)"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr " --help Afficher cette aide et terminer"
-#: src/diff.c:939
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
msgstr ""
"-v, --version Afficher le nom et la version du logiciel et "
"terminer"
-#: src/diff.c:941
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+#: src/diff.c:974
+#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"FICHIERS sont « FICHIER1 FICHIER2 » ou « RÉP1 RÉP2 » ou « RÉP FICHIER... » "
"ou « FICHIER... RÉP »."
-#: src/diff.c:942
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
"Si --from-file ou --to-file sont fournis, il n'y a pas de restriction sur "
"les FICHIERS."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
msgstr "Si un FICHIER est « - » alors lire depuis l'entrée standard."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Usage: %s [OPTION]... FICHIERS\n"
-#: src/diff.c:954
+#: src/diff.c:987
msgid "Compare FILES line by line."
msgstr "Comparer les fichiers ligne par ligne."
-#: src/diff.c:988
+#: src/diff.c:1021
#, c-format
msgid "conflicting %s option value '%s'"
msgstr "valeur conflictuelle de l'option %s: « %s »"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "options de style de sortie conflictuelles"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "largeur invalide « %s »"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Seulement dans %s: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
msgstr "ne peut comparer « - » avec un répertoire"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "L'option -D ne traite pas les répertoires"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Les sous-répertoires %s et %s sont identiques\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "Le fichier %s est un %s alors que le fichier %s est un %s\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "Les liens symboliques %s et %s sont différents\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Les fichiers %s et %s sont identiques\n"
msgid "'-' specified for more than one input file"
msgstr "« - » fourni pour plus d'un fichier d'entrée"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "lecture non-réussie"
msgid "invalid diff format; invalid change separator"
msgstr "format de « diff » invalide ; séparateur de changement invalide"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "format de « diff » invalide ; dernière ligne incomplète"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "programme subsidiaire « %s » n'a pu être invoqué"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr ""
"format de « diff » invalide ; caractères incorrects au début de la ligne"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "erreur interne : type de « diff » invalide fourni en sortie"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "le fichier d'entrée a rétréci"
-#: src/dir.c:158
+#: src/dir.c:156
#, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "ne peut comparer les noms de fichier « %s » et « %s »"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: boucle récursive dans le répertoire"
"v:\tInclure les lignes identiques et le signaler.\n"
"q:\tQuitter.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: l'option « --%s » n'est pas reconnue\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
#~ msgstr "-i SAUT1:SAUT2 --ignore-initial=SAUT1:SAUT2"
msgstr ""
"Project-Id-Version: diffutils 2.8.7\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2004-12-03 13:47-0500\n"
"Last-Translator: Kevin Patrick Scannell <scannell@SLU.EDU>\n"
"Language-Team: Irish <ga@li.org>\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "luach neamhbhailí --bytes `%s'"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "luach neamhbhailí --bytes `%s'"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "earráid chláir"
msgid "stack overflow"
msgstr "cruach thar maoil"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Earráid chórais anaithnid"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "gnáthchomhad folamh"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "gnáthchomhad"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "comhadlann"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "comhad speisialta den chineál `bloc'"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "comhad speisialta den chineál `carachtar'"
-
-# `TITA' ?! -KPS
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "nasc siombalach"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "soicéad"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "ciú teachtaireachta"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "séamafór"
# FARF --KPS
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "comhad comhchuimhne"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "comhad cuimhne le cineál"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "comhad speisialta den chineál `bloc'"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "comhad speisialta den chineál `carachtar'"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+# `TITA' ?! -KPS
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "comhad speisialta den chineál `bloc'"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "comhad speisialta den chineál `carachtar'"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "comhad aisteach"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "comhad speisialta den chineál `bloc'"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "soicéad"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "comhad aisteach"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, fuzzy, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: Tá an rogha `%s' débhríoch\n"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: Tá an rogha `-W %s' débhríoch\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, fuzzy, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: ní cheadaítear argóint i ndiaidh na rogha `--%s'\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, fuzzy, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: ní cheadaítear argóint i ndiaidh na rogha `%c%s'\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, fuzzy, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: ní foláir argóint don rogha `%s'\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, fuzzy, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: rogha anaithnid `--%s'\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, fuzzy, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: rogha anaithnid `%c%s'\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, fuzzy, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: rogha neamhbhailí -- %c\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, fuzzy, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: ní foláir argóint don rogha -- %c\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, fuzzy, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: Tá an rogha `-W %s' débhríoch\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, fuzzy, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: ní cheadaítear argóint i ndiaidh na rogha `-W %s'\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, fuzzy, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: ní foláir argóint don rogha `%s'\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr ""
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr ""
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Bua!"
# #-#-#-#-# findutils-4.2.6.ga.po (findutils 4.2.6) #-#-#-#-#
# ugh. Not clear what kind of things we're matching -- KPS
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Níl a leithéid ann"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Slonn ionadaíochta neamhbhailí"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Carachtar cóimheasa neamhbhailí"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Aicme charachtair neamhbhailí"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Cúlslais ag deireadh"
# #-#-#-#-# sed-4.1.1.ga.po (sed 4.1.1) #-#-#-#-#
# coinage - KPS
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Cúltagairt neamhbhailí"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "[ nó [^ corr"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "( nó \\( corr"
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "\\{ corr"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Ábhar neamhbhailí idir \\{\\}"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Deireadh raoin neamhbhailí"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Cuimhne ídithe"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Is neamhbhailí an slonn ionadaíochta roimhe seo"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Deireadh le slonn ionadaíochta gan choinne"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Slonn ionadaíochta rómhór"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr ") nó \\) corr"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Níl aon slonn ionadaíochta roimhe seo"
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr ""
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Tá difríocht idir na comhaid %s agus %s\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, fuzzy, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Tá difríocht idir na comhaid %s agus %s\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Gan líne nua ag an chomhadchríoch"
msgid "David MacKenzie"
msgstr ""
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, fuzzy, c-format
msgid "Try '%s --help' for more information."
msgstr "Bain triail as `%s --help' chun tuilleadh eolais a fháil."
msgid "options -l and -s are incompatible"
msgstr "Níl na roghanna -l agus -s comhoiriúnach"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "teipeadh ag scríobh"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "aschur caighdeánach"
msgstr ""
"Is éard atá i SCIP1 agus SCIP2 ná líonta na mbeart a scipeáil i ngach comhad."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr "Mura bhfuil COMHAD ann, nó más `-' é, léigh ón ionchur caighdeánach."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr "Stádas scortha: 0 más ionann iad, 1 más difriúil, 2 má tá fadhb ann."
msgid "invalid --bytes value '%s'"
msgstr "luach neamhbhailí --bytes `%s'"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, fuzzy, c-format
msgid "missing operand after '%s'"
msgstr "ní foláir argóint i ndiaidh `%s'"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, fuzzy, c-format
msgid "extra operand '%s'"
msgstr "oibreann breise `%s'"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s difriúil: beart %s, líne %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s difriúil: beart %s, líne %s = %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: EOF ar %s\n"
msgid "Len Tower"
msgstr ""
-#: src/diff.c:339
+#: src/diff.c:351
#, fuzzy, c-format
msgid "invalid context length '%s'"
msgstr "Fad neamhbhailí comhthéacs `%s'"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "Ní thacaítear leis an uimhriú leathanach ar an óstríomhaire seo"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "an iomarca argóintí do lipéid chomhaid"
-#: src/diff.c:514
+#: src/diff.c:526
#, fuzzy, c-format
msgid "invalid width '%s'"
msgstr "leithead neamhbhailí `%s'"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "roghanna leithid contrártha"
-#: src/diff.c:543
+#: src/diff.c:555
#, fuzzy, c-format
msgid "invalid horizon length '%s'"
msgstr "fad léaslíne neamhbhailí `%s'"
-#: src/diff.c:598
+#: src/diff.c:611
#, fuzzy, c-format
msgid "invalid tabsize '%s'"
msgstr "tá an mhéid tháib `%s' neamhbhailí"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "Roghanna tábmhéid contrártha"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "tugadh --from-file agus --to-file lena chéile"
-#: src/diff.c:854
+#: src/diff.c:883
#, fuzzy
msgid " --normal output a normal diff (the default)"
msgstr "--normal Aschuir diff coitianta."
-#: src/diff.c:855
+#: src/diff.c:884
#, fuzzy
msgid "-q, --brief report only when files differ"
msgstr "-q --brief Ná taispeáin ach difriúil nó nach ea."
-#: src/diff.c:856
+#: src/diff.c:885
#, fuzzy
msgid "-s, --report-identical-files report when two files are the same"
msgstr ""
"-s --report-identical-files Tuairiscigh nuair atá dhá chomhad comhionanna."
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
-#: src/diff.c:858
+#: src/diff.c:887
#, fuzzy
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"-w UIMH --width=UIMH UIMH colún priontála ar a mhéad (réamhshocrú=130)."
-#: src/diff.c:859
+#: src/diff.c:888
#, fuzzy
msgid "-e, --ed output an ed script"
msgstr "-e --ed Aschuir script `ed'."
-#: src/diff.c:860
+#: src/diff.c:889
#, fuzzy
msgid "-n, --rcs output an RCS format diff"
msgstr "-n --rcs Aschuir diff i gcruth RCS."
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr ""
-#: src/diff.c:862
+#: src/diff.c:891
#, fuzzy
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"-w UIMH --width=UIMH UIMH colún priontála ar a mhéad (réamhshocrú=130)."
-#: src/diff.c:863
+#: src/diff.c:892
#, fuzzy
msgid ""
" --left-column output only the left column of common lines"
msgstr "-l --left-column Ná taispeáin an colún ar dheis más ionann iad."
-#: src/diff.c:864
+#: src/diff.c:893
#, fuzzy
msgid " --suppress-common-lines do not output common lines"
msgstr "-s --suppress-common-lines Ná taispeáin línte atá i bpáirt acu."
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+"--from-file=COMHAD Cuir COMHAD (nó comhadlann) i gcomparáid le gach oibreann."
-#: src/diff.c:871
+#: src/diff.c:900
#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr "-t --expand-tabs leathnaigh táib go spásanna san aschur."
-#: src/diff.c:872
+#: src/diff.c:901
#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
"-T --initial-tab Ailínigh táib trí tháb a chur in ionad spás tosaigh."
-#: src/diff.c:873
+#: src/diff.c:902
#, fuzzy
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr "--tabsize=UIMH Tábstop gach UIMH colún (réamhshocrú=8)."
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
-#: src/diff.c:875
+#: src/diff.c:904
#, fuzzy
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr "-l --paginate uimhrigh leathanaigh le `pr'."
-#: src/diff.c:877
+#: src/diff.c:906
#, fuzzy
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr "-r --recursive Cuir fochomhadlanna i gcomparáid go hathchúrsach."
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr ""
-#: src/diff.c:879
+#: src/diff.c:908
#, fuzzy
msgid "-N, --new-file treat absent files as empty"
msgstr "-N --new-file Caith le comhad ar iarraidh mar chomhad folamh."
-#: src/diff.c:880
+#: src/diff.c:909
#, fuzzy
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
"--unidirectional-new-file Más ar iarraidh, caith leis an chéad chomhad\n"
" mar chomhad folamh."
-#: src/diff.c:881
+#: src/diff.c:910
#, fuzzy
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr "--ignore-file-name-case Ná bí cásíogair le hainmneacha comhaid."
-#: src/diff.c:882
+#: src/diff.c:911
#, fuzzy
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
"--no-ignore-file-name-case Bí cásíogair maidir le hainmneacha comhaid."
-#: src/diff.c:883
+#: src/diff.c:912
#, fuzzy
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr ""
"-X SLONN --exclude=SLONN Fág comhaid as má tá siad comhoiriúnacha le SLONN."
-#: src/diff.c:884
+#: src/diff.c:913
#, fuzzy
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
"haon\n"
" slonn ionadaíochta as an CHOMHAD."
-#: src/diff.c:885
+#: src/diff.c:914
#, fuzzy
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
"-S COMHAD --starting-file=COMHAD Tosaigh le COMHAD agus comhadlanna á "
"gcóimheas."
-#: src/diff.c:886
+#: src/diff.c:915
#, fuzzy
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
msgstr ""
"--from-file=COMHAD Cuir COMHAD (nó comhadlann) i gcomparáid le gach oibreann."
-#: src/diff.c:888
+#: src/diff.c:917
#, fuzzy
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
msgstr ""
"--to-file=COMHAD Cuir gach oibreann i gcomparáid le COMHAD (nó comhadlann)."
-#: src/diff.c:891
+#: src/diff.c:920
#, fuzzy
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr "-i --ignore-case Ná bí cásíogair le hinneachar na gcomhad."
-#: src/diff.c:892
+#: src/diff.c:921
#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
"-E --ignore-tab-expansion Déan neamhshuim ar athruithe ó leathnú na dtáib."
-#: src/diff.c:893
+#: src/diff.c:922
#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr "-w --ignore-all-space Déan neamhshuim ar spás bán go hiomlán."
-#: src/diff.c:894
+#: src/diff.c:923
#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr "-b --ignore-space-change Déan neamhshuim ar mhéid an spáis bán."
-#: src/diff.c:895
+#: src/diff.c:924
#, fuzzy
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w --ignore-all-space Déan neamhshuim ar spás bán go hiomlán."
-#: src/diff.c:896
+#: src/diff.c:925
#, fuzzy
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr "-B --ignore-blank-lines Déan neamhshuim ar línte folmha."
-#: src/diff.c:897
+#: src/diff.c:926
#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"comhoiriúnach\n"
" leis an slonn SI."
-#: src/diff.c:899
+#: src/diff.c:928
#, fuzzy
msgid "-a, --text treat all files as text"
msgstr "-a --text Caith le gach comhad mar théacschomhad."
-#: src/diff.c:900
+#: src/diff.c:929
#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
"--strip-trailing-cr Dealaigh aisfhilleadh carráiste ó gach líne ionchurtha."
-#: src/diff.c:902
+#: src/diff.c:931
#, fuzzy
msgid " --binary read and write data in binary mode"
msgstr "--binary Léigh agus scríobh sonraí sa mhód dénártha."
-#: src/diff.c:905
+#: src/diff.c:934
#, fuzzy
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
"-D AINM --ifdef=AINM Taispeáin comhad cumaiscthe chun na diff-aí\n"
" `#ifdef AINM' a léiriú"
-#: src/diff.c:906
+#: src/diff.c:935
#, fuzzy
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
"--GCINL-group-format=GFMD Taispeáin grúpaí GCINL ionchuir de réir GFMD."
-#: src/diff.c:907
+#: src/diff.c:936
#, fuzzy
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr "--line-format=LFMD Taispeáin gach líne ionchuir de réir LFMD."
-#: src/diff.c:908
+#: src/diff.c:937
#, fuzzy
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
"--LCINL-line-format=LFMD Taispeáin línte LCINL ionchuir de réir LFMD."
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
-#: src/diff.c:911
+#: src/diff.c:940
#, fuzzy
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr " LCINL = `old', `new', nó `unchanged'. GCINL = LCINL nó `changed'."
-#: src/diff.c:912
+#: src/diff.c:941
#, fuzzy
msgid ""
" GFMT (only) may contain:\n"
" E F-1\n"
" M L+1"
-#: src/diff.c:924
+#: src/diff.c:953
#, fuzzy
msgid ""
" LFMT (only) may contain:\n"
" %l ábhar na líne, gan aon líne nua\n"
" %[-][LEITHEAD][.[SONRÚ]]{doxX}n sonrú do líne-uimhir mar C `printf'"
-#: src/diff.c:928
+#: src/diff.c:957
#, fuzzy
msgid ""
" Both GFMT and LFMT may contain:\n"
" %c'C' an carachtar litriúil C\n"
" %c'\\OOO' an carachtar le cód ochtnártha OOO"
-#: src/diff.c:934
+#: src/diff.c:963
#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr "-d --minimal Obair go crua le haghaidh níos lú athruithe."
-#: src/diff.c:935
+#: src/diff.c:964
#, fuzzy
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr "--horizon-lines=UIMH Coinnigh UIMH líne den réimír/iarmhír choiteann."
-#: src/diff.c:936
+#: src/diff.c:965
#, fuzzy
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
"-H --speed-large-files Comhaid móra agus go leor mionathruithe forleata."
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr "--normal Aschuir diff coitianta."
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:972
#, fuzzy
msgid "-v, --version output version information and exit"
msgstr "-v --version Taispeáin eolas faoin leagan."
-#: src/diff.c:941
+#: src/diff.c:974
#, fuzzy
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"COMHAID = `COMHAD1 COMHAD2' nó `COMHADLANN1 COMHADLANN2' nó `COMHADLANN "
"COMHAD...' nó `COMHAD... COMHADLANN'."
-#: src/diff.c:942
+#: src/diff.c:975
#, fuzzy
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
"Má tá --from-file nó --to-file tugtha, níl a leithéid de shrian ar COMHAID."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
#, fuzzy
msgid "If a FILE is '-', read standard input."
msgstr "Más '-' é an COMHAD, léigh ón ionchur caighdeánach."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Úsáid: %s [ROGHA]... COMHAID\n"
-#: src/diff.c:954
+#: src/diff.c:987
#, fuzzy
msgid "Compare FILES line by line."
msgstr "Déan comparáid idir na comhaid, líne ar líne."
-#: src/diff.c:988
+#: src/diff.c:1021
#, fuzzy, c-format
msgid "conflicting %s option value '%s'"
msgstr "luach contrártha don rogha %s: `%s'"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "roghanna contrártha le haghaidh na stíle aschuir"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "leithead neamhbhailí `%s'"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "I %s amháin: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
#, fuzzy
msgid "cannot compare '-' to a directory"
msgstr "ní féidir `-' a chur i gcomparáid le comhadlann"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "Níl an rogha -D ar fáil do chomhadlanna"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Fochomhadlanna i gcoitianta: %s agus %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "Tá comhad %s ina %s ach tá comhad %s ina %s\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, fuzzy, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "Tá difríocht idir na comhaid %s agus %s\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Is comhionann iad na comhaid %s agus %s\n"
msgid "'-' specified for more than one input file"
msgstr "bhí `-' tugtha le haghaidh níos mó ná inchomhad amháin"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "theip ar léamh"
msgid "invalid diff format; invalid change separator"
msgstr "formáid diff neamhbhailí; teorantóir neamhbhailí idir athruithe"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "formáid neamhbhailí diff; líne deiridh neamhiomlán"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, fuzzy, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "níorbh fhéidir an fochlár `%s' a rith"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "formáid neamhbhailí diff; carachtair mhíchearta ag tosach na líne"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr ""
"earráid inmheánach: seachadadh cineál neamhbhailí diff go dtí an aschur"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "crapadh an t-inchomhad"
-#: src/dir.c:158
+#: src/dir.c:156
#, fuzzy, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr ""
"ní féidir na hainmneacha comhaid `%s' agus `%s' a chur i gcomparáid le chéile"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr ""
"v:\tCuir comhlínte san áireamh go foclach.\n"
"q:\tScoir.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: rogha anaithnid `--%s'\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "%s: illegal option -- %c\n"
#~ msgstr "%s: rogha neamhcheadaithe -- %c\n"
msgstr ""
"Project-Id-Version: GNU diffutils 3.2\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2011-10-17 12:43+0100\n"
"Last-Translator: Leandro Regueiro <leandro.regueiro@gmail.com>\n"
"Language-Team: Galician <proxecto@trasno.net>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "o argumento «%s» de %s%s é incorrecto"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "o argumento «%s» de %s%s é incorrecto"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "erro do programa"
msgid "stack overflow"
msgstr "desbordamento da pila"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Produciuse un erro descoñecido do sistema"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "ficheiro regular baleiro"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "ficheiro regular"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "directorio"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "ficheiro especial de bloques"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "ficheiro especial de caracteres"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "ligazón simbólica"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "socket"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "cola de mensaxes"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semáforo"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "obxecto de memoria compartida"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "obxecto de memoria con tipo"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "ficheiro especial de bloques"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "ficheiro especial de caracteres"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "ficheiro especial de bloques"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "ficheiro especial de caracteres"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "ficheiro estraño"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "ficheiro especial de bloques"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "socket"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "ficheiro estraño"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, fuzzy, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "'%s' está danado. A liña %d na sección Opción é incorrecta"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: a opción «-W %s» é ambigua\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: a opción «--%s» non permite un argumento\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: a opción «%c%s» non permite un argumento\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: a opción «--%s» require un argumento\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: non se recoñece a opción «--%s»\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: non se recoñece a opción «%c%s»\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: opción incorrecta -- «%c»\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: a opción require un argumento -- «%c»\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: a opción «-W %s» é ambigua\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: a opción «-W %s» non permite un argumento\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: a opción «-W %s» require un argumento\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "«"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr "»"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Correcto"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Non hai coincidencias"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Expresión regular incorrecta"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Carácter de ordenamento incorrecto"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Nome da clase de caracteres incorrecto"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Barra invertida ao final"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Referencia cara a atrás incorrecta"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "[ ou [^ non emparellado"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "( ou \\( non emparellado"
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "\\{ non emparellado"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "O contido entre \\{\\} non é correcto"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Final do rango incorrecto"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Memoria esgotada"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Expresión regular precedente incorrecta"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Final prematura da expresión regular"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Expresión regular demasiado grande"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr ") ou \\) non emparellado"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Non hai unha expresión regular anterior"
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr "Axuda xeral ao usar software GNU: <http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Os ficheiros %s e %s son diferentes\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Os ficheiros binarios %s e %s son diferentes\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Non hai un salto de liña na fin da liña"
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, fuzzy, c-format
msgid "Try '%s --help' for more information."
msgstr "Probe «%s --help» para obter máis información."
msgid "options -l and -s are incompatible"
msgstr "as opcións -l e -s son incompatíbeis"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "fallou a escritura"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "saída estándar"
"at the beginning of each file (zero by default)."
msgstr "N1 e N2 son o número de bytes a omitir en cada ficheiro."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr "Se un FICHEIRO é «-» ou non se indica, lese da entrada estándar."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"O estado de saída é 0 se as entradas son iguais, 1 se son diferentes, 2 en "
msgid "invalid --bytes value '%s'"
msgstr "valor de --bytes «%s» non válido"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, fuzzy, c-format
msgid "missing operand after '%s'"
msgstr "falta un operando despois de «%s»"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, fuzzy, c-format
msgid "extra operand '%s'"
msgstr "operando «%s» sobrante"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s son diferentes: byte %s, liña %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s son diferentes: byte %s, liña %s é %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: Fin de ficheiro en %s\n"
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
+#: src/diff.c:351
#, fuzzy, c-format
msgid "invalid context length '%s'"
msgstr "lonxitude do contexto «%s» non válida"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "a paxinación non está admitida nesta máquina"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "demasiadas opcións de etiquetas de ficheiro"
-#: src/diff.c:514
+#: src/diff.c:526
#, fuzzy, c-format
msgid "invalid width '%s'"
msgstr "largo «%s» non válido"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "opcións de largura conflitivas"
-#: src/diff.c:543
+#: src/diff.c:555
#, fuzzy, c-format
msgid "invalid horizon length '%s'"
msgstr "lonxitude do horizonte «%s» non válida"
-#: src/diff.c:598
+#: src/diff.c:611
#, fuzzy, c-format
msgid "invalid tabsize '%s'"
msgstr "tamaño de tabulación «%s» non válido"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "opcións de tamaño de tabulación conflitivas"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "Especificáronse --from-file e --to-file ao mesmo tempo"
-#: src/diff.c:854
+#: src/diff.c:883
#, fuzzy
msgid " --normal output a normal diff (the default)"
msgstr "Aparencia predefinida no modo normal"
-#: src/diff.c:855
+#: src/diff.c:884
#, fuzzy
msgid "-q, --brief report only when files differ"
msgstr "-q --brief Producir unha saída só se os ficheiros teñen diferencias."
-#: src/diff.c:856
+#: src/diff.c:885
#, fuzzy
msgid "-s, --report-identical-files report when two files are the same"
msgstr ""
"-s --report-identical-files Informar cando dous ficheiros son o mesmo."
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
-#: src/diff.c:858
+#: src/diff.c:887
#, fuzzy
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr "-w NÚM --width=NÚM Amosar como moito NÚM columnas (130 por omisión)."
-#: src/diff.c:859
+#: src/diff.c:888
#, fuzzy
msgid "-e, --ed output an ed script"
msgstr "Gardar a saída da consola de Script-Fu"
-#: src/diff.c:860
+#: src/diff.c:889
#, fuzzy
msgid "-n, --rcs output an RCS format diff"
msgstr "-n --rcs Producir un diff en formato RCS."
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr ""
-#: src/diff.c:862
+#: src/diff.c:891
#, fuzzy
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr "-w NÚM --width=NÚM Amosar como moito NÚM columnas (130 por omisión)."
-#: src/diff.c:863
+#: src/diff.c:892
#, fuzzy
msgid ""
" --left-column output only the left column of common lines"
msgstr "-l --left-column Amosar só a columna da esquerda nas liñas comúns."
-#: src/diff.c:864
+#: src/diff.c:893
#, fuzzy
msgid " --suppress-common-lines do not output common lines"
msgstr "-s --suppress-common-lines Non amosar as liñas comúns."
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+"--from-file=FICH1 Comparar FICH1 con todos os operandos. Pode ser "
+"directorio."
-#: src/diff.c:871
+#: src/diff.c:900
#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr "-t --expand-tabs Expandir as tabulacións a espazos na saída."
-#: src/diff.c:872
+#: src/diff.c:901
#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
"-T --initial-tab Facer que as tabulacións queden aliñadas poñendo outra\n"
" tabulación ao principio da liña."
-#: src/diff.c:873
+#: src/diff.c:902
#, fuzzy
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr "--tabsize=NÚM Tabulacións de NÚM columnas (8 por omisión)."
-#: src/diff.c:874
+#: src/diff.c:903
#, fuzzy
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
"--suppress-blank-empty Suprime espazos ou tabuladores antes dunha liña "
"baleira."
-#: src/diff.c:875
+#: src/diff.c:904
#, fuzzy
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr "-l --paginate Pasar a saída por «pr» para paxinala."
-#: src/diff.c:877
+#: src/diff.c:906
#, fuzzy
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
"-r --recursive Comparar recursivamente os subdirectorios que se atopen."
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr ""
-#: src/diff.c:879
+#: src/diff.c:908
#, fuzzy
msgid "-N, --new-file treat absent files as empty"
msgstr "-N --new-file Tratar os ficheiros ausentes como baleiros."
-#: src/diff.c:880
+#: src/diff.c:909
#, fuzzy
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
"--unidirectional-new-file Tratar os ficheiros antigos ausentes como\r\n"
"a baleiros."
-#: src/diff.c:881
+#: src/diff.c:910
#, fuzzy
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
"--ignore-file-name-case Ignorar maiúsculas/minúsculas no nome do ficheiro."
-#: src/diff.c:882
+#: src/diff.c:911
#, fuzzy
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
"--no-ignore-file-name-case Ter en conta as maiúsculas/minúsculas\r\n"
" ao comparar os nomes dos ficheiros."
-#: src/diff.c:883
+#: src/diff.c:912
#, fuzzy
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr "-x MOD --exclude=MOD Excluír os ficheiros que coinciden co MODelo."
-#: src/diff.c:884
+#: src/diff.c:913
#, fuzzy
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
"-X FICH --exclude-from=FICH Excluír ficheiros que coinciden con algún\r\n"
" modelo do FICHeiro."
-#: src/diff.c:885
+#: src/diff.c:914
#, fuzzy
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
"-S FICH --starting-file=FICH Comezar no FICHeiro ao comparar directorios."
-#: src/diff.c:886
+#: src/diff.c:915
#, fuzzy
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
"--from-file=FICH1 Comparar FICH1 con todos os operandos. Pode ser "
"directorio."
-#: src/diff.c:888
+#: src/diff.c:917
#, fuzzy
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
"--to-file=FICH2 Comparar todos os operandos con FICH2. Pode ser un "
"directorio."
-#: src/diff.c:891
+#: src/diff.c:920
#, fuzzy
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
"-i --ignore-case Ignorar maiúsculas/minúsculas no contido do ficheiro."
-#: src/diff.c:892
+#: src/diff.c:921
#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
"-E --ignore-tab-expansion Ignorar os cambios pola expansión de tabulacións."
-#: src/diff.c:893
+#: src/diff.c:922
#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr "-w --ignore-all-space Ignorar todos os espazos en branco."
-#: src/diff.c:894
+#: src/diff.c:923
#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr "-b --ignore-space-change Ignorar os cambios na cantidade de espazos."
-#: src/diff.c:895
+#: src/diff.c:924
#, fuzzy
msgid "-w, --ignore-all-space ignore all white space"
msgstr "Todo visíbel (ignorar patrón)"
-#: src/diff.c:896
+#: src/diff.c:925
#, fuzzy
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
"-B --ignore-blank-lines Ignorar os cambios que teñan todas as liñas en "
"branco"
-#: src/diff.c:897
+#: src/diff.c:926
#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"todas as liñas\r\n"
" conteñan EXPR-REG."
-#: src/diff.c:899
+#: src/diff.c:928
#, fuzzy
msgid "-a, --text treat all files as text"
msgstr "-a --text Tratar todos os ficheiros como texto"
-#: src/diff.c:900
+#: src/diff.c:929
#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
"--strip-trailing-cr Eliminar os retornos de carro á fin das liñas de "
"entrada."
-#: src/diff.c:902
+#: src/diff.c:931
#, fuzzy
msgid " --binary read and write data in binary mode"
msgstr "--binary Ler e escribir datos en modo binario."
-#: src/diff.c:905
+#: src/diff.c:934
#, fuzzy
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
"-D NOME -ifdef=NOME Amosar o ficheiro mesturado con diffs «#ifdef NOME»."
-#: src/diff.c:906
+#: src/diff.c:935
#, fuzzy
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
"\r\n"
" con GFMT."
-#: src/diff.c:907
+#: src/diff.c:936
#, fuzzy
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
"--line-format=LFMT Similar, mais formatar todas as liñas de entrada con "
"LFMT."
-#: src/diff.c:908
+#: src/diff.c:937
#, fuzzy
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
"\r\n"
" con LFMT."
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
-#: src/diff.c:911
+#: src/diff.c:940
#, fuzzy
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" LTYPE é «old» (antigo), «new» (novo) ou «unchanged» (sen cambios).\r\n"
" GTYPE é LTYPE ou «changed» (con cambios)."
-#: src/diff.c:912
+#: src/diff.c:941
#, fuzzy
msgid ""
" GFMT (only) may contain:\n"
" E F-1\n"
" M L+1"
-#: src/diff.c:924
+#: src/diff.c:953
#, fuzzy
msgid ""
" LFMT (only) may contain:\n"
" %l contido da liña, excluíndo os saltos de liña finais\n"
" %[-][ANCHO][.[PREC]]{doxX}n especif. estilo printf do número da liña"
-#: src/diff.c:928
+#: src/diff.c:957
#, fuzzy
msgid ""
" Both GFMT and LFMT may contain:\n"
" %c«C» o carácter C\n"
" %c«\\OOO» o carácter de código octal OOO"
-#: src/diff.c:934
+#: src/diff.c:963
#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr "-d --minimal Procurar atopar o conxunto de cambios máis pequeno."
-#: src/diff.c:935
+#: src/diff.c:964
#, fuzzy
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr "--horizon-lines=NUM Manter NUM liñas do prefixo e sufixo comúns."
-#: src/diff.c:936
+#: src/diff.c:965
#, fuzzy
msgid ""
" --speed-large-files assume large files and many scattered small changes"
"-H --speed-large-files Asumir ficheiros longos e pequenos cambios "
"dispersos."
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr "Aparencia predefinida no modo normal"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:972
#, fuzzy
msgid "-v, --version output version information and exit"
msgstr "Mostrar información da versión e saír"
-#: src/diff.c:941
+#: src/diff.c:974
#, fuzzy
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"Os FICHEIROS son «FICH1 FICH2», «DIR1 DIR2», «DIR FICH...» ou «FICH... DIR»."
-#: src/diff.c:942
+#: src/diff.c:975
#, fuzzy
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
"Se se indica --from-file ou --to-file, non hai restricións nos FICHEIROS."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
#, fuzzy
msgid "If a FILE is '-', read standard input."
msgstr "Se un FICHEIRO é «-», lese da entrada estándar."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Uso: %s [OPCIÓN]... FICHEIROS\n"
-#: src/diff.c:954
+#: src/diff.c:987
#, fuzzy
msgid "Compare FILES line by line."
msgstr "Comparar os ficheiros liña a liña."
-#: src/diff.c:988
+#: src/diff.c:1021
#, fuzzy, c-format
msgid "conflicting %s option value '%s'"
msgstr "valor «%1$s» da opción %2$s conflitivo"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "opcións de estilo da saída conflitivas"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "largo «%s» non válido"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Só en %s: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
#, fuzzy
msgid "cannot compare '-' to a directory"
msgstr "non se pode comparar «-» cun directorio"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "A opción -D non está admitida con directorios"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Subdirectorios comúns: %s e %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "O ficheiro %s é un %s mentres que o ficheiro %s é un %s\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, fuzzy, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "Os ficheiros %s e %s son diferentes\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Os ficheiros %s e %s son idénticos\n"
msgid "'-' specified for more than one input file"
msgstr "Especificouse «-» para máis dun ficheiro de entrada"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "fallou a lectura"
msgid "invalid diff format; invalid change separator"
msgstr "formato de diff non válido; separador de cambios non válido"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "formato de diff non válido: última liña incompleta"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, fuzzy, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "non foi posíbel invocar o programa subsidiario «%s»"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "formato de diff non válido: caracteres a principio de liña incorrectos"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "erro interno_ tipo de diff non válido pasado á saída"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "o ficheiro de entrada minguou"
-#: src/dir.c:158
+#: src/dir.c:156
#, fuzzy, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "non se poden comparar os ficheiros «%s» e «%s»"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: bucle de directorio recursivo"
"v: Inclúe liñas comúns de xeito detallado.\n"
"q: Saír.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: non se recoñece a opción «--%s»\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
#~ msgstr "-i N1:N2 --ignore-initial=N1:N2"
msgstr ""
"Project-Id-Version: diffutils 2.8.3\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2002-06-17 13:03+0300\n"
"Last-Translator: Eli Zaretskii <eliz@gnu.org>\n"
"Language-Team: Hebrew <eliz@gnu.org>\n"
"Content-Type: text/plain; charset=ISO-8859-8\n"
"Content-Transfer-Encoding: 8bit\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "--bytes ïééôàî øåáò `%s' éåâù êøò"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "--bytes ïééôàî øåáò `%s' éåâù êøò"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "úéðëúá äøåîç äì÷ú"
msgid "stack overflow"
msgstr "úéðñçî úùéìâ"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "ääåæî-éúìá äì÷ú"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "÷éø õáå÷"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "õáå÷"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "äé÷éú"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "íé÷åìá ï÷úä õáå÷"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "íéåú ï÷úä õáå÷"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo õáå÷"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "éìåáîéñ øåùé÷"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "ò÷ù"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "úåòãåä øåú"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "øåôîñ"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "óúåùî ïåøëæ è÷ééáåà"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "âååéñ ìòá ïåøëæ è÷ééáåà"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "íé÷åìá ï÷úä õáå÷"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "íéåú ï÷úä õáå÷"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo õáå÷"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "íé÷åìá ï÷úä õáå÷"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "íéåú ï÷úä õáå÷"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "øæåî õáå÷"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "íé÷åìá ï÷úä õáå÷"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "ò÷ù"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "øæåî õáå÷"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, fuzzy, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s úéðëú øåáò éòîùî-ãç åðéà `%s' ïééôàî\n"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s úéðëú øåáò éòîùî-ãç åðéà `-W %s' ïééôàî\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, fuzzy, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s úéðëú øåáò èðîåâøà ìá÷î åðéà `--%s' ïééôàî\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, fuzzy, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s úéðëú øåáò èðîåâøà ìá÷î åðéà `%c%s' ïééôàî\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, fuzzy, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s úéðëú øåáò èðîåâøà áééçî `%s' ïééôàî\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, fuzzy, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s úéðëú øåáò `--%s' ääåæî-éúìá ïééôàî\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, fuzzy, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s úéðëú øåáò `%c%s' ääåæî-éúìá ïééôàî\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, fuzzy, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s úéðëú øåáò éåâù ïééôàî -- %c\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, fuzzy, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: èðîåâøà áééçî ïééôàî -- %c\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, fuzzy, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s úéðëú øåáò éòîùî-ãç åðéà `-W %s' ïééôàî\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, fuzzy, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s úéðëú øåáò èðîåâøà ìá÷î åðéà `-W %s' ïééôàî\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, fuzzy, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s úéðëú øåáò èðîåâøà áééçî `%s' ïééôàî\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr ""
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr ""
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "äçìöä"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "äîéàúî úæåøçî äàöîð àì"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "éåâù éøìåâø éåèéá"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "òåãé-éúìá øåãéñ åú"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "íéåú úöåá÷ ìù øëåî-éúìá íù"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "`\\' éøåçà ïñëåìá íééúñî éøìåâø éåèéá"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "íãå÷ éåèéá-úúì äéåâù äééðôä"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "âåæ-ïá åì ïéàù [^ åà ["
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "âåæ-ïá åì ïéàù \\( åà ("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "âåæ-ïá åì ïéàù \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "\\{\\} êåúá éåâù äðáî"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "íéåú íåçú ìù äéåâù äøãâä"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "ïåøëæä øîâð"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "íéé÷ åðéà åà éåâù íãå÷ éøìåâø éåèéá"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "éãî íã÷åî íééúñî éøìåâø éåèéá"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "éãî áëøåî åà ìåãâ éøìåâø éåèéá"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "âåæ-ïá åì ïéàù \\) åà )"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "íãå÷ éøìåâø éåèéá ïéà"
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr ""
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "äæî äæ íéðåù `%s'-å `%s' íéöá÷ä\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "äæî äæ íéðåù `%s'-å `%s' íééøðéá íéöá÷\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "õáå÷ä óåñá äùãç-äøåù åú øñç"
msgid "David MacKenzie"
msgstr ""
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, fuzzy, c-format
msgid "Try '%s --help' for more information."
msgstr ".øúåé áø òãéî úâöäì `%s --help' ùé÷äì äñð"
msgid "options -l and -s are incompatible"
msgstr "äæ úà äæ íéøúåñ -s-å -l íéðééôàîä"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "äáéúëá äì÷ú"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "éð÷ú èìô õåøòì"
"at the beginning of each file (zero by default)."
msgstr " .íéöá÷äî ãçà ìëá âìãì ùé íäéìò íéúáä éøôñî íä SKIP2-å SKIP1"
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr " .éð÷ú èì÷ õåøòî àø÷ ,ïééåöî åðéà åà `-' åðéä FILE íà"
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
msgid "invalid --bytes value '%s'"
msgstr "--bytes ïééôàî øåáò `%s' éåâù êøò"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, fuzzy, c-format
msgid "missing operand after '%s'"
msgstr "`%s' éøçà øñç èðîåâøà"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, fuzzy, c-format
msgid "extra operand '%s'"
msgstr "`%s' éøçà øúåéî èðîåâøà"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s-å %s íéöá÷ä ïéá %s úéá ,%s äøåùî ìçä éðåù\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s-å %s íéöá÷ä ïéá %s úéá ,%s äøåùî ìçä %3o %s %3o %s éðåù\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: %s õáå÷ óåñ\n"
msgid "Len Tower"
msgstr ""
-#: src/diff.c:339
+#: src/diff.c:351
#, fuzzy, c-format
msgid "invalid context length '%s'"
msgstr "`%s' éåâù øù÷ä êøåà"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "åæ úëøòîá èìôä ãåîéòá äëéîú ïéà"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "íéöá÷ úéååú øåáò -L éðééôàî éãî øúåé"
-#: src/diff.c:514
+#: src/diff.c:526
#, fuzzy, c-format
msgid "invalid width '%s'"
msgstr "`%s' éåâù äøåù áçåø"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "íéøúåñ äøåù áçåø éðééôàî"
-#: src/diff.c:543
+#: src/diff.c:555
#, fuzzy, c-format
msgid "invalid horizon length '%s'"
msgstr "--horizon-lines ïééôàîá `%s' éåâù úåøåù øôñî"
-#: src/diff.c:598
+#: src/diff.c:611
#, fuzzy, c-format
msgid "invalid tabsize '%s'"
msgstr "`%s' éåâù Tab áçåø"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "íéøúåñ Tab áçåø éðééôàî"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "--to-file ïäå --from-file ïä úðééö"
-#: src/diff.c:854
+#: src/diff.c:883
#, fuzzy
msgid " --normal output a normal diff (the default)"
msgstr " .ìéâø èîøåôá íééåðéù ÷ôä --normal"
-#: src/diff.c:855
+#: src/diff.c:884
#, fuzzy
msgid "-q, --brief report only when files differ"
msgstr " .íéðåù íéöá÷ä íà øåîà ÷ø -q --brief"
-#: src/diff.c:856
+#: src/diff.c:885
#, fuzzy
msgid "-s, --report-identical-files report when two files are the same"
msgstr ""
" .íéäæ íéöá÷ ìò çååã -s --report-identical-files"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
-#: src/diff.c:858
+#: src/diff.c:887
#, fuzzy
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ".äøåùì (130 ç\"îøá) íéååú NUM øúåéä ìëì âöä -w NUM --width=NUM"
-#: src/diff.c:859
+#: src/diff.c:888
#, fuzzy
msgid "-e, --ed output an ed script"
msgstr " .ed êøåò øåáò úåàøåä úîéùø ÷ôä -e --ed"
-#: src/diff.c:860
+#: src/diff.c:889
#, fuzzy
msgid "-n, --rcs output an RCS format diff"
msgstr " .RCS èîøåôá íééåðéù ÷ôä -n --rcs"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr ""
-#: src/diff.c:862
+#: src/diff.c:891
#, fuzzy
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ".äøåùì (130 ç\"îøá) íéååú NUM øúåéä ìëì âöä -w NUM --width=NUM"
-#: src/diff.c:863
+#: src/diff.c:892
#, fuzzy
msgid ""
" --left-column output only the left column of common lines"
msgstr " .úéìàîùä úà ÷ø âöä ,úåäæ úåøåùä íà -l --left-column"
-#: src/diff.c:864
+#: src/diff.c:893
#, fuzzy
msgid " --suppress-common-lines do not output common lines"
msgstr ""
" .úåäæ úåøåù ììë âéöú ìà -s --suppress-common-lines"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+".äé÷éú úåéäì ìåëé FILE1 .íéèðîåâøàä øàù ìëì FILE1 äååùä --from-file=FILE1"
-#: src/diff.c:871
+#: src/diff.c:900
#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr " .èìôá íéçååøì TAB éååú êåôä -t --expand-tabs"
-#: src/diff.c:872
+#: src/diff.c:901
#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr " .äøåùä éðôì TAB \"ò íé-TAB øùé -T --initial-tab"
-#: src/diff.c:873
+#: src/diff.c:902
#, fuzzy
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr " .(8 ç\"îøá) úåãåîò NUM ìë Tab --tabsize=NUM"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
-#: src/diff.c:875
+#: src/diff.c:904
#, fuzzy
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr " .ãåîéò íùì `pr' êøã èìô áúð -l --paginate"
-#: src/diff.c:877
+#: src/diff.c:906
#, fuzzy
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr " .éáéñøå÷ø ïôåàá úåé÷éú-úú äååùä -r --recursive"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr ""
-#: src/diff.c:879
+#: src/diff.c:908
#, fuzzy
msgid "-N, --new-file treat absent files as empty"
msgstr " .íé÷éø åéä åìéàë íéøñç íéöá÷á ìôè -N --new-file"
-#: src/diff.c:880
+#: src/diff.c:909
#, fuzzy
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
" .íé÷éø åéä åìéàë íéøñç íéðåùàø íéöá÷á ìôè --unidirectional-new-file"
-#: src/diff.c:881
+#: src/diff.c:910
#, fuzzy
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ".íéöá÷ä úåîùá úåðè÷î úåìåãâ úåéúåà ìéãáú ìà --ignore-file-name-case"
-#: src/diff.c:882
+#: src/diff.c:911
#, fuzzy
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
" .íéöá÷ä úåîùá úåðè÷î úåìåãâ úåéúåà ìéãáú --no-ignore-file-name-case"
-#: src/diff.c:883
+#: src/diff.c:912
#, fuzzy
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr " .PAT úéðáúì íéîéàúî íäéúåîùù íéöá÷ ìò âìã -x PAT --exclude=PAT"
-#: src/diff.c:884
+#: src/diff.c:913
#, fuzzy
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
"FILE-á úåéðáúì íéîéàúî íäéúåîùù íéöá÷ ìò âìã -X FILE --exclude-from=FILE"
-#: src/diff.c:885
+#: src/diff.c:914
#, fuzzy
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
" .FILE õáå÷á úåé÷éú úàååùä ìçúä -S FILE --starting-file=FILE"
-#: src/diff.c:886
+#: src/diff.c:915
#, fuzzy
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
msgstr ""
".äé÷éú úåéäì ìåëé FILE1 .íéèðîåâøàä øàù ìëì FILE1 äååùä --from-file=FILE1"
-#: src/diff.c:888
+#: src/diff.c:917
#, fuzzy
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
msgstr ""
" .äé÷éú úåéäì ìåëé FILE2 .FILE2-ì íéèðîåâøàä ìë äååùä --to-file=FILE2"
-#: src/diff.c:891
+#: src/diff.c:920
#, fuzzy
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ".íéöá÷ä ïëåúá úåðè÷î úåìåãâ úåéúåà ìéãáú ìà -i --ignore-case"
-#: src/diff.c:892
+#: src/diff.c:921
#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
" .íéçååøì TAB ïéá íéìãáäî íìòúä -E --ignore-tab-expansion"
-#: src/diff.c:893
+#: src/diff.c:922
#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr " .íéçååøä ìëî íìòúä -w --ignore-all-space"
-#: src/diff.c:894
+#: src/diff.c:923
#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr " .íéçååø úåîëá íéìãáäî íìòúä -b --ignore-space-change"
-#: src/diff.c:895
+#: src/diff.c:924
#, fuzzy
msgid "-w, --ignore-all-space ignore all white space"
msgstr " .íéçååøä ìëî íìòúä -w --ignore-all-space"
-#: src/diff.c:896
+#: src/diff.c:925
#, fuzzy
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr " .úå÷éø íäéúåøåùù íééåðéùî íìòúä -B --ignore-blank-lines"
-#: src/diff.c:897
+#: src/diff.c:926
#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
".RE úéðáúì úåîéàúî íäéúåøåùù íééåðéùî íìòúä -I RE --ignore-matching-lines=RE"
-#: src/diff.c:899
+#: src/diff.c:928
#, fuzzy
msgid "-a, --text treat all files as text"
msgstr " .èñ÷è éöá÷áë íéöá÷ä ìëá ìôè -a --text"
-#: src/diff.c:900
+#: src/diff.c:929
#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr " .èì÷ úøåù ìë óåñî CR éååú ÷ìñ --strip-trailing-cr"
-#: src/diff.c:902
+#: src/diff.c:931
#, fuzzy
msgid " --binary read and write data in binary mode"
msgstr " .éøàðéá ïôåàá áåúëå àø÷ --binary"
-#: src/diff.c:905
+#: src/diff.c:934
#, fuzzy
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr "`#ifdef NAME'-á íééåðéù ãøôä ,áìåùî õáå÷ ÷ôä -D NAME --ifdef=NAME"
-#: src/diff.c:906
+#: src/diff.c:935
#, fuzzy
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
"GFMT úøæòá GTYPE âåñî èì÷ úåöåá÷ èîøô êà ,ì\"ðë --GTYPE-group-format=GFMT"
-#: src/diff.c:907
+#: src/diff.c:936
#, fuzzy
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr " .LFMT úøæòá úåøåù èîøô êà ,ì\"ðë --line-format=LFMT"
-#: src/diff.c:908
+#: src/diff.c:937
#, fuzzy
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
".LFMT úøæòá LTYPE âåñî èì÷ úåøåù èîøô êà ,ì\"ðë --LTYPE-group-format=LFMT"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
-#: src/diff.c:911
+#: src/diff.c:940
#, fuzzy
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr " .`changed' åà LTYPE åîë GTYPE .`unchanged' åà `new' ,`old' àåä LTYPE"
-#: src/diff.c:912
+#: src/diff.c:941
#, fuzzy
msgid ""
" GFMT (only) may contain:\n"
" F-1 E\n"
" M+1 M"
-#: src/diff.c:924
+#: src/diff.c:953
#, fuzzy
msgid ""
" LFMT (only) may contain:\n"
" äøåùä óåñ åú èòîì äøåù ïëåú %l\n"
"èì÷ úøåù øåáò printf ïåðâñá úæåøçî %[-][WIDTH][.[PREC]]{doxX}n"
-#: src/diff.c:928
+#: src/diff.c:957
#, fuzzy
msgid ""
" Both GFMT and LFMT may contain:\n"
" C ããåá åú %c'C'\n"
" OOO éìè÷åà ãå÷ ìòá åú %c'\\OOO'"
-#: src/diff.c:934
+#: src/diff.c:963
#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr " .íééåðéùä úöåá÷ úà ïéè÷äì ìãúùä -d --minimal"
-#: src/diff.c:935
+#: src/diff.c:964
#, fuzzy
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
".íéöá÷ä íåéñå äìéçúá úåôúåùî úåøåù NUM øàùä --horizon-lines=NUM"
-#: src/diff.c:936
+#: src/diff.c:965
#, fuzzy
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr " .íé÷çåøîå íéðè÷ íééåðéùå íéìåãâ íéöá÷ çðä -H --speed-large-files"
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr " .ìéâø èîøåôá íééåðéù ÷ôä --normal"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:972
#, fuzzy
msgid "-v, --version output version information and exit"
msgstr " .úéðëúä úñøéâ úà âöä -v --version"
-#: src/diff.c:941
+#: src/diff.c:974
#, fuzzy
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
".`FILE... DIR' åà `DIR FILE...' åà `DIR1 DIR2' åà `FILE1 FILE2' íä FILES"
-#: src/diff.c:942
+#: src/diff.c:975
#, fuzzy
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
" .FILES ìò úåìáâî ïéà éæà ,--to-file åà --from-file ïééôàî ïåúð íà"
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
#, fuzzy
msgid "If a FILE is '-', read standard input."
msgstr ""
" .éð÷úä èì÷ä õøòî àø÷ ,`-' àåä FILE íà"
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "%s [OPTION]... FILES :ùåîéù ïôåà\n"
-#: src/diff.c:954
+#: src/diff.c:987
#, fuzzy
msgid "Compare FILES line by line."
msgstr ".äøåù äøåù íéöá÷ éðù äååùä"
-#: src/diff.c:988
+#: src/diff.c:1021
#, fuzzy, c-format
msgid "conflicting %s option value '%s'"
msgstr "%s ïééôàî ìù íãå÷ êøò øúåñ `%s' êøò"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "èìô ïåðâñ ìù íéøúåñ íéðééôàî"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "`%s' éåâù äøåù áçåø"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "%s-á ÷ø àöîð %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
#, fuzzy
msgid "cannot compare '-' to a directory"
msgstr "äé÷éúì `-' úååùäì úåøùôà ïéà"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "úåé÷éú øåáò -D ïééôàîá äëéîú ïéà"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "%s-å %s :úåäæ úåé÷éú-úú\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "%s %s-ì %s %s úååùäì ïúéð àì\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, fuzzy, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "äæî äæ íéðåù `%s'-å `%s' íéöá÷ä\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "íéäæ íðéä %s-å %s íéöá÷ä\n"
msgid "'-' specified for more than one input file"
msgstr "ãçà èì÷ õáå÷î øúåé øåáò `-' úðééö"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "äàéø÷á äì÷ú"
msgid "invalid diff format; invalid change separator"
msgstr "äéåâù íééåðéù úãøôä úæåøçî :éåðéù ìù éåâù èîøåô"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "äîìù äðéà äðåøçà äøåù :éåðéù ìù éåâù èîøåô"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, fuzzy, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "äàöîð àì `%s' úéðëú-úú"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "äøåù úìéçúá íééåâù íéååú :éåðéù ìù éåâù èîøåô"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "èìô éëøöì éåðéù ìù éåâù âåñ :úéîéðô äðëú úàéâù"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "÷îèöä èì÷ õáå÷"
-#: src/dir.c:158
+#: src/dir.c:156
#, fuzzy, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "`%s'-å `%s' íéöá÷ úåîù úååùäì ïúéð àì"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr ""
"v -- ïúâöä êåú úåôúåùî úåøåù ÷úòä\n"
"q -- äàéöé\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s úéðëú øåáò `--%s' ääåæî-éúìá ïééôàî\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "%s: illegal option -- %c\n"
#~ msgstr "%s: é÷åç-éúìá ïééôàî -- %c\n"
msgstr ""
"Project-Id-Version: GNU diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2012-12-21 00:37+0100\n"
"Last-Translator: Tomislav Krznar <tomislav.krznar@gmail.com>\n"
"Language-Team: Croatian <lokalizacija@linux.hr>\n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Gtranslator 2.91.5\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "neispravan %s%s argument „%s”"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "neispravan %s%s argument „%s”"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "programska greška"
msgid "stack overflow"
msgstr "preljev stoga"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Nepoznata greška sustava"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "obična prazna datoteka"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "obična datoteka"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "direktorij"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "posebna blokovska datoteka"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "posebna znakovna datoteka"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "simbolička veza"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "utičnica"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "red poruka"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semafor"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "dijeljeni memorijski objekt"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "tipizirani memorijski objekt"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "posebna blokovska datoteka"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "posebna znakovna datoteka"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "posebna blokovska datoteka"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "posebna znakovna datoteka"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "čudna datoteka"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "posebna blokovska datoteka"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "utičnica"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "čudna datoteka"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: opcija „%s” je višeznačna, mogućnosti:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: opcija „-W %s” je višeznačna\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: opcija „--%s” ne dozvoljava argument\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: opcija „%c%s” ne dozvoljava argument\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: opcija „--%s” zahtijeva argument\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: neprepoznata opcija „--%s”\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: neprepoznata opcija „%c%s”\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: neispravna opcija -- „%c”\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: opcija zahtijeva argument -- „%c”\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: opcija „-W %s” je višeznačna\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: opcija „-W %s” ne dozvoljava argument\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: opcija „-W %s” zahtijeva argument\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "„"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr "”"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Uspjeh"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Nema poklapanja"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Neispravan regularni izraz"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Neispravan znak razvrstavanja"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Neispravno ime razreda znakova"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Obrnuta kosa crta na kraju"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Neispravna povratna referenca"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "Neuparena [ ili [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Neuparena ( ili \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Neuparena \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Neispravan sadržaj \\{\\}"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Neispravan kraj raspona"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Memorija iscrpljena"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Neispravan prethodni regularni izraz"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Preuranjen kraj regularnog izraza"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Regularni izraz je prevelik"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "Neuparena ) ili \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Nedostaje prethodni regularni izraz"
msgstr ""
"Općenita pomoć za korištenje GNU softvera: <http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Datoteke %s i %s se razlikuju\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Binarne datoteke %s i %s se razlikuju\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Nema novog retka na kraju datoteke"
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, c-format
msgid "Try '%s --help' for more information."
msgstr "Pokušajte „%s --help” za više informacija."
msgid "options -l and -s are incompatible"
msgstr "opcije -l i -s nisu kompatibilne"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "pisanje nije uspjelo"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "standardni izlaz"
"at the beginning of each file (zero by default)."
msgstr ""
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr "Ako DATOTEKA nije navedena ili je „-”, čitaj standardni ulaz."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"Izlazno stanje je 0 ako su ulazi jednaki, 1 ako se razlikuju, 2 u slučaju "
msgid "invalid --bytes value '%s'"
msgstr "neispravna --bytes vrijednost „%s”"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, c-format
msgid "missing operand after '%s'"
msgstr "nedostaje operand nakon „%s”"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, c-format
msgid "extra operand '%s'"
msgstr "operand viška „%s”"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr ""
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr ""
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr ""
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
+#: src/diff.c:351
#, c-format
msgid "invalid context length '%s'"
msgstr "neispravna duljina sadržaja „%s”"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "straničenje nije podržano na ovom računalu"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "previše opcija oznaka datoteka"
-#: src/diff.c:514
+#: src/diff.c:526
#, c-format
msgid "invalid width '%s'"
msgstr "neispravna širina „%s”"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "konfliktne opcije širine"
-#: src/diff.c:543
+#: src/diff.c:555
#, c-format
msgid "invalid horizon length '%s'"
msgstr "neispravna duljina sadržaja „%s”"
-#: src/diff.c:598
+#: src/diff.c:611
#, c-format
msgid "invalid tabsize '%s'"
msgstr "neispravna širina „%s”"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "konfliktne opcije širine"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr ""
-#: src/diff.c:854
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
msgstr " --normal ispiši normalnu razliku (zadano)"
-#: src/diff.c:855
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
msgstr "-q, --brief izvještaj samo kad se datoteke razlikuju"
-#: src/diff.c:856
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
msgstr "-s, --report-identical-files izvještaj samo kad su datoteke jednake"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
-#: src/diff.c:858
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
-#: src/diff.c:859
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
msgstr "-e, --ed ispiši ed skriptu"
-#: src/diff.c:860
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
msgstr "-n, --rcs ispiši razliku u RCS obliku"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr "-y, --side-by-side ispiši u dva stupca"
-#: src/diff.c:862
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
-#: src/diff.c:863
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
-#: src/diff.c:864
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
msgstr ""
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
-#: src/diff.c:868
+#: src/diff.c:897
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
-#: src/diff.c:871
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr "-t, --expand-tabs pretvori tabulatore u praznine u izlazu"
-#: src/diff.c:872
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
-#: src/diff.c:873
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
-#: src/diff.c:875
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
-#: src/diff.c:877
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr " --no-dereference ne slijedi simboličke veze"
-#: src/diff.c:879
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
msgstr ""
"-N, --new-file postupaj s odsutnim datotekama kao s praznim"
-#: src/diff.c:880
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
-#: src/diff.c:881
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
" --ignore-file-name-case zanemari veličinu slova pri uspoređivanju "
"imena datoteka"
-#: src/diff.c:882
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
" --no-ignore-file-name-case ne zanemaruj veličinu slova pri "
"uspoređivanju imena datoteka"
-#: src/diff.c:883
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr ""
-#: src/diff.c:884
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
-#: src/diff.c:885
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
-#: src/diff.c:886
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
msgstr ""
-#: src/diff.c:888
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
msgstr ""
-#: src/diff.c:891
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
-#: src/diff.c:892
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
-#: src/diff.c:893
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr ""
-#: src/diff.c:894
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
-#: src/diff.c:895
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
msgstr ""
-#: src/diff.c:896
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr ""
-#: src/diff.c:897
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
-#: src/diff.c:899
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
msgstr ""
"-a, --text postupaj sa svim datotekama kao s tekstualnim"
-#: src/diff.c:900
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
-#: src/diff.c:902
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr " --binary čitaj i piši podatke u binarnom načinu"
-#: src/diff.c:905
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
-#: src/diff.c:906
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
-#: src/diff.c:907
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
-#: src/diff.c:908
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
-#: src/diff.c:911
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
-#: src/diff.c:912
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" %(A=B?T:E) if A equals B then T else E"
msgstr ""
-#: src/diff.c:924
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %[-][WIDTH][.[PREC]]{doxX}n printf-style spec for input line number"
msgstr ""
-#: src/diff.c:928
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" C the character C (other characters represent themselves)"
msgstr ""
-#: src/diff.c:934
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr ""
-#: src/diff.c:935
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
-#: src/diff.c:936
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr " --normal ispiši normalnu razliku (zadano)"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr " --help prikaži ovu pomoć i izađi"
-#: src/diff.c:939
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
msgstr "-v, --version ispiši informacije o inačici i izađi"
-#: src/diff.c:941
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+#: src/diff.c:974
+#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"DATOTEKE su „DATOTEKA1 DATOTEKA2”, „DIR1 DIR2”, „DIR DATOTEKA...” ili "
"„DATOTEKA... DIR”."
-#: src/diff.c:942
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
msgstr "Ako je DATOTEKA „-”, čitaj standardni ulaz."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Uporaba: %s [OPCIJA]... DATOTEKE\n"
-#: src/diff.c:954
+#: src/diff.c:987
msgid "Compare FILES line by line."
msgstr "Usporedi DATOTEKE redak po redak."
# Ovdje trebam zamijeniti poredak... Pogledati kako se to radi.
-#: src/diff.c:988
+#: src/diff.c:1021
#, fuzzy, c-format
msgid "conflicting %s option value '%s'"
msgstr "konfliktna vrijednost „%s” opcije „%s”"
#
# Format:
# C
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "konfliktne opcije izlaznog stila"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "neispravna širina „%s”"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Samo u %s: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
msgstr "ne mogu usporediti „-” s direktorijem"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "opcija -D nije podržana s direktorijima"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Uobičajeni poddirektoriji: %s i %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "Datoteka %s je %s, a datoteka %s je %s\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "Simboličke veze %s i %s se razlikuju\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Datoteke %s i %s su identične\n"
msgid "'-' specified for more than one input file"
msgstr "„-” je navedeno za više od jedne ulazne datoteke"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "čitanje nije uspjelo"
msgid "invalid diff format; invalid change separator"
msgstr ""
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "neispravan diff oblik, nepotpun posljednji redak"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "podređeni program „%s” se ne može pozvati"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr ""
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr ""
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "ulazna datoteka se smanjila"
-#: src/dir.c:158
+#: src/dir.c:156
#, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "ne mogu usporediti imena datoteka „%s” i „%s”"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: rekurzivna petlja direktorija"
"v:\tVerbosely include common lines.\n"
"q:\tQuit.\n"
msgstr ""
+
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: neprepoznata opcija „--%s”\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
-# Hungarian traslation of diffutils
-# Copyright (C) 2002 Free Software Foundation, Inc.
-# Gábor István <stive@mezobereny.hu>, 2002
-# Andras Timar <timar@fsf.hu>, 2004
+# Hungarian traslation for diffutils.
+# Copyright (C) 2002, 2014 Free Software Foundation, Inc.
+# This file is distributed under the same license as the diffutils package.
#
+#
+# Gábor István <stive@mezobereny.hu>, 2002.
+# Andras Timar <timar@fsf.hu>, 2004.
+# Balázs Úr <urbalazs@gmail.com>, 2014.
msgid ""
msgstr ""
-"Project-Id-Version: diffutils 2.8.7\n"
+"Project-Id-Version: diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
-"PO-Revision-Date: 2004-07-04 11:22+0100\n"
-"Last-Translator: Andras Timar <timar@fsf.hu>\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
+"PO-Revision-Date: 2014-07-13 22:01+0200\n"
+"Last-Translator: Balázs Úr <urbalazs@gmail.com>\n"
"Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
"Language: hu\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=ISO-8859-2\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.2\n"
+"X-Generator: Lokalize 1.5\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "érvénytelen %s%s argumentum: „%s”"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "érvénytelen %s%s argumentum: „%s”"
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
#: lib/c-stack.c:205 lib/c-stack.c:298
msgid "stack overflow"
-msgstr "veremtúlcsordulás"
+msgstr "veremtúlcsordulás"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Ismeretlen rendszerhiba"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
-msgstr "reguláris üres fájl"
+msgstr "szabályos üres fájl"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
-msgstr "reguláris fájl"
+msgstr "szabályos fájl"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
-msgstr "könyvtár"
+msgstr "könyvtár"
+
+#: lib/file-type.c:46
+msgid "symbolic link"
+msgstr "szimbolikus link"
-#: lib/file-type.c:44
+#: lib/file-type.c:52
+msgid "message queue"
+msgstr "üzenetsor"
+
+#: lib/file-type.c:55
+msgid "semaphore"
+msgstr "szemafor"
+
+#: lib/file-type.c:58
+msgid "shared memory object"
+msgstr "osztott memóriaobjektum"
+
+#: lib/file-type.c:61
+msgid "typed memory object"
+msgstr "típusos memóriaobjektum"
+
+#: lib/file-type.c:66
msgid "block special file"
-msgstr "blokkos speciális fájl"
+msgstr "speciális blokkfájl"
-#: lib/file-type.c:47
+#: lib/file-type.c:69
msgid "character special file"
-msgstr "karakteres speciális fájl"
+msgstr "speciális karakterfájl"
-#: lib/file-type.c:50
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
msgid "fifo"
msgstr "fifo"
-#: lib/file-type.c:53
-msgid "symbolic link"
-msgstr "szimbolikus link"
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "socket"
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "speciális blokkfájl"
-#: lib/file-type.c:59
-msgid "message queue"
-msgstr "üzenetsor"
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "speciális karakterfájl"
-#: lib/file-type.c:62
-msgid "semaphore"
-msgstr "szemafor"
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
-#: lib/file-type.c:65
-msgid "shared memory object"
-msgstr "osztott memóriaobjektum"
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "szokatlan fájl"
-#: lib/file-type.c:68
-msgid "typed memory object"
-msgstr "típusos memória objektum"
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "speciális blokkfájl"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "foglalat"
-#: lib/file-type.c:70
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
-msgstr "furcsa fájl"
+msgstr "szokatlan fájl"
-#: lib/getopt.c:547 lib/getopt.c:576
-#, fuzzy, c-format
+#: lib/getopt.c:575 lib/getopt.c:604
+#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
-msgstr "%s: a `%s' kapcsoló nem egyértelmû\n"
+msgstr "%s: a(z) „%s” kapcsoló nem egyértelmű; lehetőségek:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: a „-W %s” kapcsoló nem egyértelmű\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
+#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
-msgstr "%s: a `--%s' kapcsoló nem fogad el argumentumot\n"
+msgstr "%s: a(z) „--%s” kapcsoló nem enged meg argumentumot\n"
-#: lib/getopt.c:637 lib/getopt.c:642
-#, fuzzy, c-format
+#: lib/getopt.c:667 lib/getopt.c:672
+#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
-msgstr "%s: a `%c%s' kapcsoló nem fogad el argumentumot\n"
+msgstr "%s: a(z) „%c%s” kapcsoló nem enged meg argumentumot\n"
-#: lib/getopt.c:685 lib/getopt.c:704
-#, fuzzy, c-format
+#: lib/getopt.c:715 lib/getopt.c:734
+#, c-format
msgid "%s: option '--%s' requires an argument\n"
-msgstr "%s: a `%s' kapcsolóhoz argumentum szükséges\n"
+msgstr "%s: a(z) „--%s” kapcsolóhoz egy argumentum szükséges\n"
-#: lib/getopt.c:742 lib/getopt.c:745
-#, fuzzy, c-format
+#: lib/getopt.c:772 lib/getopt.c:775
+#, c-format
msgid "%s: unrecognized option '--%s'\n"
-msgstr "%s: ismeretlen kapcsoló: `--%s'\n"
+msgstr "%s: ismeretlen „--%s” kapcsoló\n"
-#: lib/getopt.c:753 lib/getopt.c:756
-#, fuzzy, c-format
+#: lib/getopt.c:783 lib/getopt.c:786
+#, c-format
msgid "%s: unrecognized option '%c%s'\n"
-msgstr "%s: ismeretlen kapcsoló: `%c%s'\n"
+msgstr "%s: ismeretlen „%c%s” kapcsoló\n"
-#: lib/getopt.c:805 lib/getopt.c:808
-#, fuzzy, c-format
+#: lib/getopt.c:835 lib/getopt.c:838
+#, c-format
msgid "%s: invalid option -- '%c'\n"
-msgstr "%s: érvénytelen kapcsoló -- %c\n"
+msgstr "%s: érvénytelen kapcsoló -- „%c”\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
-#, fuzzy, c-format
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
+#, c-format
msgid "%s: option requires an argument -- '%c'\n"
-msgstr "%s: a kapcsoló argumentumot igényel -- %c\n"
+msgstr "%s: a kapcsoló egy argumentumot igényel -- „%c”\n"
-#: lib/getopt.c:934 lib/getopt.c:950
-#, fuzzy, c-format
+#: lib/getopt.c:964 lib/getopt.c:980
+#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
-msgstr "%s: a `-W %s' kapcsoló nem egyértelmû\n"
+msgstr "%s: a „-W %s” kapcsoló nem egyértelmű\n"
-#: lib/getopt.c:974 lib/getopt.c:992
-#, fuzzy, c-format
+#: lib/getopt.c:1004 lib/getopt.c:1022
+#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
-msgstr "%s: a `-W %s' kapcsoló nem fogad el argumentumot\n"
+msgstr "%s: a „-W %s” kapcsoló nem enged meg argumentumot\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
-#, fuzzy, c-format
+#: lib/getopt.c:1043 lib/getopt.c:1061
+#, c-format
msgid "%s: option '-W %s' requires an argument\n"
-msgstr "%s: a `%s' kapcsolóhoz argumentum szükséges\n"
+msgstr "%s: a „-W %s” kapcsolóhoz egy argumentum szükséges\n"
#. TRANSLATORS:
#. Get translations for open and closing quotation marks.
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
-msgstr ""
+msgstr "„"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
-msgstr ""
+msgstr "”"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
-msgstr "Sikerült"
+msgstr "Sikerült"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
-msgstr "Nincs találat"
+msgstr "Nincs találat"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
-msgstr "Érvénytelen reguláris kifejezés"
+msgstr "Érvénytelen reguláris kifejezés"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
-msgstr "Érvénytelen collation karakter"
+msgstr "Érvénytelen egyeztető karakter"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
-msgstr "Érvénytelen karakterosztálynév"
+msgstr "Érvénytelen karakterosztálynév"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
-msgstr "Záró backslash"
+msgstr "Záró visszaper"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
-msgstr "Érvénytelen visszahivatkozás"
+msgstr "Érvénytelen visszahivatkozás"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
-msgstr "Pár nélküli [ vagy [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
+msgstr "Pár nélküli [ vagy [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
-msgstr "Pár nélküli ( vagy \\("
+msgstr "Pár nélküli ( vagy \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
-msgstr "Pár nélküli \\{"
+msgstr "Pár nélküli \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
-msgstr "Érvénytelen tartalom a \\{\\}-ben"
+msgstr "A \\{\\} tartalma érvénytelen"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
-msgstr "Érvénytelen tartományvég"
+msgstr "Érvénytelen tartományvég"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
-msgstr "Elfogyott a memória"
+msgstr "Elfogyott a memória"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
-msgstr "Érvénytelen volt az elõzõ reguláris kifejezés"
+msgstr "Érvénytelen megelőző reguláris kifejezés"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
-msgstr "A reguláris kifejezés túl hamar ért véget"
+msgstr "A reguláris kifejezés túl korán véget ért"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
-msgstr "Túl nagy reguláris kifejezés"
+msgstr "A reguláris kifejezés túl nagy"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
-msgstr "Pár nélküli ) vagy \\)"
+msgstr "Pár nélküli ) vagy \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
-msgstr "Nincs elõzõ reguláris kifejezés"
+msgstr "Nincs megelőző reguláris kifejezés"
#: lib/xalloc-die.c:34
msgid "memory exhausted"
-msgstr "elfogyott a memória"
+msgstr "elfogyott a memória"
#: lib/xfreopen.c:35
msgid "stdin"
-msgstr ""
+msgstr "szabványos bemenet"
#: lib/xfreopen.c:36
msgid "stdout"
-msgstr ""
+msgstr "szabványos kimenet"
#: lib/xfreopen.c:37
msgid "stderr"
-msgstr ""
+msgstr "szabványos hibakimenet"
#: lib/xfreopen.c:38
-#, fuzzy
msgid "unknown stream"
-msgstr "Ismeretlen rendszerhiba"
+msgstr "ismeretlen adatfolyam"
#: lib/xfreopen.c:39
#, c-format
msgid "failed to reopen %s with mode %s"
-msgstr ""
+msgstr "%s újranyitása %s móddal meghiúsult"
#: lib/xstrtol-error.c:63
-#, fuzzy, c-format
+#, c-format
msgid "invalid %s%s argument '%s'"
-msgstr "érvénytelen --bytes érték `%s'"
+msgstr "érvénytelen %s%s argumentum: „%s”"
#: lib/xstrtol-error.c:68
#, c-format
msgid "invalid suffix in %s%s argument '%s'"
-msgstr ""
+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 ""
+msgstr "%s%s: a(z) „%s” argumentum túl nagy"
#: lib/version-etc.c:74
#, c-format
msgid "Packaged by %s (%s)\n"
-msgstr ""
+msgstr "Csomagolta: %s (%s)\n"
#: lib/version-etc.c:77
#, c-format
msgid "Packaged by %s\n"
-msgstr ""
+msgstr "Csomagolta: %s\n"
#. TRANSLATORS: Translate "(C)" to the copyright symbol
#. (C-in-a-circle), if this symbol is available in the user's
#. locale. Otherwise, do not translate "(C)"; leave it as-is.
#: lib/version-etc.c:84
msgid "(C)"
-msgstr ""
+msgstr "©"
#: lib/version-etc.c:86
msgid ""
"There is NO WARRANTY, to the extent permitted by law.\n"
"\n"
msgstr ""
+"\n"
+"A licenc GPLv3+: a GNU GPL 3. vagy újabb változata <http://gnu.org/licenses/"
+"gpl.html>\n"
+"Ez egy szabad szoftver, terjesztheti és/vagy módosíthatja.\n"
+"NINCS GARANCIA, a törvény által engedélyezett mértékig.\n"
+"\n"
#. TRANSLATORS: %s denotes an author name.
#: lib/version-etc.c:102
#, c-format
msgid "Written by %s.\n"
-msgstr "Írta %s.\n"
+msgstr "Írta: %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#: lib/version-etc.c:106
#, c-format
msgid "Written by %s and %s.\n"
-msgstr "Írta %s és %s.\n"
+msgstr "Írta: %s és %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#: lib/version-etc.c:110
#, c-format
msgid "Written by %s, %s, and %s.\n"
-msgstr "Írta %s, %s és %s.\n"
+msgstr "Írta: %s, %s és %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"Written by %s, %s, %s,\n"
"and %s.\n"
msgstr ""
-"Írta %s, %s, %s\n"
-"és %s.\n"
+"Írta: %s, %s, %s\n"
+"és %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"Written by %s, %s, %s,\n"
"%s, and %s.\n"
msgstr ""
-"Írta %s, %s, %s,\n"
-"%s és %s.\n"
+"Írta: %s, %s, %s,\n"
+"%s és %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"Written by %s, %s, %s,\n"
"%s, %s, and %s.\n"
msgstr ""
-"Írta %s, %s, %s,\n"
-"%s, %s és %s.\n"
+"Írta: %s, %s, %s,\n"
+"%s, %s és %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"Written by %s, %s, %s,\n"
"%s, %s, %s, and %s.\n"
msgstr ""
-"Írta %s, %s, %s,\n"
-"%s, %s, %s és %s.\n"
+"Írta: %s, %s, %s,\n"
+"%s, %s, %s és %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"%s, %s, %s, %s,\n"
"and %s.\n"
msgstr ""
-"Írta %s, %s, %s,\n"
+"Írta: %s, %s, %s,\n"
"%s, %s, %s, %s\n"
-"és %s.\n"
+"és %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"%s, %s, %s, %s,\n"
"%s, and %s.\n"
msgstr ""
-"Írta %s, %s, %s,\n"
+"Írta: %s, %s, %s,\n"
"%s, %s, %s, %s,\n"
-"%s és %s.\n"
+"%s és %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"%s, %s, %s, %s,\n"
"%s, %s, and others.\n"
msgstr ""
-"Írta %s, %s, %s,\n"
+"Írta: %s, %s, %s,\n"
"%s, %s, %s, %s,\n"
-"%s, %s és mások.\n"
+"%s, %s és mások.\n"
#. TRANSLATORS: The placeholder indicates the bug-reporting address
#. for this package. Please add _another line_ saying
"\n"
"Report bugs to: %s\n"
msgstr ""
+"\n"
+"A hibák a(z) %s címen jelenthetők.\n"
#: lib/version-etc.c:247
#, c-format
msgid "Report %s bugs to: %s\n"
-msgstr ""
+msgstr "A(z) %s hibái a(z) %s címen jelenthetők.\n"
#: lib/version-etc.c:251
#, c-format
msgid "%s home page: <%s>\n"
-msgstr ""
+msgstr "A(z) %s honlapja: <%s>\n"
#: lib/version-etc.c:253
#, c-format
msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
-msgstr ""
+msgstr "A(z) %s honlapja: <http://www.gnu.org/software/%s/>.\n"
#: lib/version-etc.c:256
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr ""
+"Általános segítség a GNU szoftverek használatához: <http://www.gnu.org/"
+"gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
-msgstr "A(z) %s és a(z) %s fájlok különböznek\n"
+msgstr "A(z) %s és a(z) %s fájlok különböznek\n"
-#: src/analyze.c:462
-#, fuzzy, c-format
+#: src/analyze.c:455
+#, c-format
msgid "Binary files %s and %s differ\n"
-msgstr "A(z) %s és a(z) %s fájlok különböznek\n"
+msgstr "A(z) %s és a(z) %s bináris fájlok különböznek\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
-msgstr "Nincs újsor a fájl végén"
+msgstr "Nincs új sor a fájl végén"
#. This is a proper name. See the gettext manual, section Names.
#: src/cmp.c:43
#. This is a proper name. See the gettext manual, section Names.
#: src/cmp.c:44
msgid "David MacKenzie"
-msgstr ""
+msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
-#, fuzzy, c-format
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
+#, c-format
msgid "Try '%s --help' for more information."
-msgstr "Próbálja a `%s --help' kapcsolót további információért."
+msgstr "További információkért próbálja a(z) „%s --help” parancsot."
#: src/cmp.c:137
-#, fuzzy, c-format
+#, c-format
msgid "invalid --ignore-initial value '%s'"
-msgstr "érvénytelen --ignore-initial érték: `%s'"
+msgstr "érvénytelen --ignore-initial érték: „%s”"
#: src/cmp.c:147
#, c-format
msgid "options -l and -s are incompatible"
-msgstr "a -l és a -s kapcsolók összeférhetetlenek"
+msgstr "a -l és a -s kapcsolók összeférhetetlenek"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
-msgstr "az írás sikertelen"
+msgstr "az írás sikertelen"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
-msgstr "szabványos kimenet"
+msgstr "szabványos kimenet"
#: src/cmp.c:161
-#, fuzzy
msgid "-b, --print-bytes print differing bytes"
-msgstr "-b --print-bytes Kiírja a különbözõ byte-okat."
+msgstr "-b, --print-bytes eltérő bájtok kiírása"
#: src/cmp.c:162
-#, fuzzy
msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs"
-msgstr "-i UGRÁS --ignore-initial=UGRÁS Az elsõ UGRÁS db byte-ot kihagyja."
+msgstr ""
+"-i, --ignore-initial=UGRÁS az első UGRÁS bájt kihagyása mindkét "
+"bemeneten"
#: src/cmp.c:163
-#, fuzzy
msgid ""
"-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n"
" first SKIP2 bytes of FILE2"
-msgstr " Átlépi a FÁJL1 elsõ UGRÁS1 byte-ját és a FÁJL2 elsõ UGRÁS2 byte-ját"
+msgstr ""
+"-i, --ignore-initial=UGRÁS1:UGRÁS2 a FÁJL1 első UGRÁS1 bájtjának és a "
+"FÁJL2\n"
+" első UGRÁS2 bájtjának kihagyása"
#: src/cmp.c:165
-#, fuzzy
msgid ""
"-l, --verbose output byte numbers and differing byte values"
msgstr ""
-"-l --verbose Kiírja a byte-ok számát és az összes különbözõ byte értékét."
+"-l, --verbose a bájt számok és az eltérő bájt értékek kiírása"
#: src/cmp.c:166
-#, fuzzy
msgid "-n, --bytes=LIMIT compare at most LIMIT bytes"
-msgstr "-n HATÁR --bytes=HATÁR Legfeljebb HATÁR byte-ot hasonlít össze."
+msgstr "-n, --bytes=KORLÁT legfeljebb KORLÁT bájt összehasonlítása"
#: src/cmp.c:167
msgid "-s, --quiet, --silent suppress all normal output"
-msgstr ""
+msgstr "-s, --quiet, --silent minden normál kimenet elfojtása"
#: src/cmp.c:168
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help ezen súgó megjelenítése és kilépés"
#: src/cmp.c:169
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version A kimenet a verziószám."
+msgstr "-v, --version verzióinformációk kiírása és kilépés"
#: src/cmp.c:178
#, c-format
msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n"
-msgstr "Használat: %s [KAPCSOLÓ]... FÁJL1 [FÁJL2 [UGRÁS1 [UGRÁS2]]]\n"
+msgstr "Használat: %s [KAPCSOLÓ]… FÁJL1 [FÁJL2 [UGRÁS1 [UGRÁS2]]]\n"
#: src/cmp.c:180
msgid "Compare two files byte by byte."
-msgstr "Összehasonlít két fájlt byte-onként."
+msgstr "Két fájl összehasonlítása bájtról bájtra."
#: src/cmp.c:182
-#, fuzzy
msgid ""
"The optional SKIP1 and SKIP2 specify the number of bytes to skip\n"
"at the beginning of each file (zero by default)."
-msgstr "UGRÁS1 és UGRÁS2 byte-ot lép át az egyes fájlokban."
+msgstr ""
+"Az opcionális UGRÁS1 és UGRÁS2 megadja a minden egyes fájl elejéről "
+"kihagyandó bájtok számát (alapértelmezetten nulla)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
+"A hosszú kapcsolók kötelező argumentumai a rövid kapcsolókhoz is "
+"kötelezőek.\n"
#: src/cmp.c:191
msgid ""
"kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n"
"GB 1,000,000,000, G 1,073,741,824, and so on for T, P, E, Z, Y."
msgstr ""
-"Az UGRÁS értékek után a következõ szorzóutótagokat lehet írni:\n"
-"kB 1000, K 1024, MB 1 000 000, M 1 048 576,\n"
-"GB 1 000 000 000, G 1 073 741 824, és így tovább: T, P, E, Z, Y."
+"Az UGRÁS értékek után a következő szorzóutótagokat lehet írni:\n"
+"kB 1000, K 1024, MB 1.000.000, M 1.048.576,\n"
+"GB 1.000.000.000, G 1.073.741.824 és így tovább: T, P, E, Z, Y."
#: src/cmp.c:194
-#, fuzzy
msgid "If a FILE is '-' or missing, read standard input."
-msgstr "Ha a FÁJL a `-' vagy hiányzik, akkor a szabványos bemenetet használja."
+msgstr "Ha a FÁJL a „-” vagy hiányzik, akkor a szabványos bemenetről olvas."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
-"A kilépési állapotkód 0, ha a bemenetek azonosak; 1, ha különbözõk; 2, ha "
-"hiba történt."
+"A kilépési állapotkód 0, ha a bemenetek azonosak; 1, ha különbözők; 2, ha\n"
+"hiba történt."
#: src/cmp.c:240
-#, fuzzy, c-format
+#, c-format
msgid "invalid --bytes value '%s'"
-msgstr "érvénytelen --bytes érték `%s'"
+msgstr "érvénytelen --bytes érték: „%s”"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
-#, fuzzy, c-format
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
+#, c-format
msgid "missing operand after '%s'"
-msgstr "hiányzó operandus a `%s' után"
+msgstr "hiányzó operandus a(z) „%s” után"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
-#, fuzzy, c-format
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
+#, c-format
msgid "extra operand '%s'"
-msgstr "felesleges operandus `%s'"
+msgstr "extra operandus: „%s”"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
-msgstr "%s %s eltér: byte: %s, sor: %s\n"
+msgstr "%s %s eltér: byte: %s, sor: %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
-msgstr "%s %s eltér: byte %s, sor %s %3o %s %3o %s\n"
+msgstr "%s %s eltér: byte %s, sor %s %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
-msgstr "cmp: EOF %s-nél\n"
+msgstr "cmp: EOF ennél: %s\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:49
msgid "Paul Eggert"
-msgstr ""
+msgstr "Paul Eggert"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:50
msgid "Mike Haertel"
-msgstr ""
+msgstr "Mike Haertel"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:51
msgid "David Hayes"
-msgstr ""
+msgstr "David Hayes"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:52
msgid "Richard Stallman"
-msgstr ""
+msgstr "Richard Stallman"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:53
msgid "Len Tower"
-msgstr ""
+msgstr "Len Tower"
-#: src/diff.c:339
-#, fuzzy, c-format
+#: src/diff.c:351
+#, c-format
msgid "invalid context length '%s'"
-msgstr "érvénytelen környezethossz `%s'"
+msgstr "érvénytelen környezethossz: „%s”"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
-msgstr "a tördelés nem támogatott ezen a gépen"
+msgstr "a tördelés nem támogatott ezen a gépen"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
-msgstr "túl sok fájlcímke-beállítás"
+msgstr "túl sok fájlcímke-beállítás"
-#: src/diff.c:514
-#, fuzzy, c-format
+#: src/diff.c:526
+#, c-format
msgid "invalid width '%s'"
-msgstr "érvénytelen szélesség `%s'"
+msgstr "érvénytelen szélesség: „%s”"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
-msgstr "összeférhetlen szélességbeállítások"
+msgstr "ütköző szélességbeállítások"
-#: src/diff.c:543
-#, fuzzy, c-format
+#: src/diff.c:555
+#, c-format
msgid "invalid horizon length '%s'"
-msgstr "érvénytelen munkaszinthossz `%s'"
+msgstr "érvénytelen munkaszinthossz: „%s”"
-#: src/diff.c:598
-#, fuzzy, c-format
+#: src/diff.c:611
+#, c-format
msgid "invalid tabsize '%s'"
-msgstr "érvénytelen tabulátorméret `%s'"
+msgstr "érvénytelen tabulátorméret: „%s”"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
-msgstr "összeférhetlen tabulátorméret-beállítások"
+msgstr "ütköző tabulátorméret beállítások"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
-msgstr "a --from-file és a --to-file is meg van adva"
+msgstr "a --from-file és a --to-file is meg van adva"
-#: src/diff.c:854
-#, fuzzy
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
-msgstr "--normal A kimenet egy normál diff."
+msgstr ""
+" --normal egy normál diff kimenet (az alapértelmezett)"
-#: src/diff.c:855
-#, fuzzy
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
-msgstr "-q --brief Csak akkor van kimenet, ha a fájlok eltérnek."
+msgstr "-q, --brief csak akkor jelent, ha a fájlok eltérnek"
-#: src/diff.c:856
-#, fuzzy
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
-msgstr "-s --report-identical-files Jelenti, ha a két fájl azonos."
+msgstr "-s, --report-identical-files jelentés, ha a két fájl ugyanaz"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
+"-c, -C SZÁM, --context[=SZÁM] a másolt környezet SZÁM (alapértelmezetten "
+"3)\n"
+" sorának kiírása"
-#: src/diff.c:858
-#, fuzzy
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
-msgstr "-w SZÁM --width=SZÁM Legfeljebb SZÁM széles kimenet (alapból 130)."
+msgstr ""
+"-u, -U SZÁM, --unified[=SZÁM] a egységesített környezet SZÁM\n"
+" (alapértelmezetten 3) sorának kiírása"
-#: src/diff.c:859
-#, fuzzy
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
-msgstr "-e --ed A kimenet egy ed-parancsfájl."
+msgstr "-e, --ed egy ed parancsfájl kiírása"
-#: src/diff.c:860
-#, fuzzy
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
-msgstr "-n --rcs A kimenet RCS formátumú diff."
+msgstr "-n, --rcs egy RCS formátumú diff kiírása"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
-msgstr ""
+msgstr "-y, --side-by-side kimenet két oszlopban"
-#: src/diff.c:862
-#, fuzzy
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
-msgstr "-w SZÁM --width=SZÁM Legfeljebb SZÁM széles kimenet (alapból 130)."
+msgstr ""
+"-W, --width=SZÁM legfeljebb SZÁM (alapértelmezetten 130)\n"
+" nyomtatási oszlop kiírása"
-#: src/diff.c:863
-#, fuzzy
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
-msgstr "-l --left-column A közös sorokat csak bal oldra írja ki."
+msgstr ""
+" --left-column a közös soroknak csak a bal oszlopának kiírása"
-#: src/diff.c:864
-#, fuzzy
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines Nem írja ki a közös sorokat."
+msgstr " --suppress-common-lines ne írja ki a közös sorokat"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
+"-p, --show-c-function jelenítse meg, mely C függvényben van változás"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
+"-F, --show-function-line=RK a legutóbbi RK-ra illeszkedő sor megjelenítése"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+" --label CÍMKE CÍMKE használata fájlnév helyett (ismételhető)"
-#: src/diff.c:871
-#, fuzzy
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr ""
-"-t --expand-tabs A tabulátorokat szóközzel helyettesíti a kimenetben."
+"-t, --expand-tabs tabulátorok bővítése szóközökké a kimeneten"
-#: src/diff.c:872
-#, fuzzy
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
-"-T --initial-tab A tabulátorok helyesen jelennek meg a kezdõ tabulátornak "
-"köszönhetõen."
+"-T, --initial-tab beigazítja a tabulátorokat egy tabulátor\n"
+" hozzáfűzésével"
-#: src/diff.c:873
-#, fuzzy
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
-"--tabsize=NUM Tabulátorpozíció minden NUM. nyomtatási oszlopban (alapból 8)."
+" --tabsize=SZÁM a tabulátor megáll minden SZÁMADIK\n"
+" (alapértelmezetten 8) nyomtatási oszlopnál"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
+" --suppress-blank-empty szóköz vagy tabulátor elnyomása az üres "
+"kimeneti\n"
+" sorok előtt"
-#: src/diff.c:875
-#, fuzzy
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
-"-l --paginate A kimenet oldalainak a lapokra tördelése a`pr' programmal."
+"-l, --paginate kimenet átadása a „pr” parancsnak "
+"lapszámozáshoz"
-#: src/diff.c:877
-#, fuzzy
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
-msgstr "-r --recursive Az összes alkönyvtárat megvizsgálja."
+msgstr ""
+"-r, --recursive a talált alkönyvtár rekurzív összehasonlítása"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
-msgstr ""
+msgstr " --no-dereference ne kövesse a szimbolikus linkeket"
-#: src/diff.c:879
-#, fuzzy
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
-msgstr "-N --new-file A hiányzó fájlokat üresként kezeli."
+msgstr "-N, --new-file a hiányzó fájlokat üresként kezelje"
-#: src/diff.c:880
-#, fuzzy
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
-msgstr "--unidirectional-new-file A hiányzó elsõ fájlokat üresként kezeli."
+msgstr ""
+" --unidirectional-new-file a hiányzó első fájlokat üresként kezelje"
-#: src/diff.c:881
-#, fuzzy
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
-"--ignore-file-name-case Fájlneveknél nem tesz különbséget\n"
-" a kis- és nagybetûk közt."
+" --ignore-file-name-case kis- és nagybetűk figyelmen kívül hagyása\n"
+" fájlnevek összehasonlításakor"
-#: src/diff.c:882
-#, fuzzy
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
-"--no-ignore-file-name-case Fájlneveknél figyeli a kis- és nagybetûk\n"
-" közti különbséget"
+" --no-ignore-file-name-case kis- és nagybetűk figyelembe vétele\n"
+" fájlnevek összehasonlításakor"
-#: src/diff.c:883
-#, fuzzy
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
-msgstr "-x MINTA --exclude=MINTA Kihagyja a MINTÁ-ra illeszkedõ fájlokat."
+msgstr "-x, --exclude=MINTA a MINTÁRA illeszkedő fájlok kizárása"
-#: src/diff.c:884
-#, fuzzy
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
-"-X FÁJL --exclude-from=FÁJL Kihagyja a FÁJL-ban megtalálható mintákra\n"
-" illeszkedõ fájlokat."
+"-X, --exclude-from=FÁJL a FÁJLBAN lévő bármely mintára illeszkedő\n"
+" fájlok kizárása"
-#: src/diff.c:885
-#, fuzzy
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
-"-S FÁJL --starting-file=FÁJL A FÁJL-lal kezdi a könyvtárak "
-"összehasolítását."
+"-S, --starting-file=FÁJL a FÁJLLAL kezdjen könyvtárak "
+"összehasonlítását"
-#: src/diff.c:886
-#, fuzzy
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
msgstr ""
-"--from-file=FÁJL1 FÁJL1 összehasonlítása minden operandussal.\n"
-" FÁJL1 lehet könyvtár is."
+" --from-file=FÁJL1 FÁJL1 összehasonlítása minden operandussal;\n"
+" FÁJL1 lehet könyvtár is"
-#: src/diff.c:888
-#, fuzzy
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
msgstr ""
-"--to-file=FÁJL2 Minden operandus összehasonlítása FÁJL2-vel.\n"
-" FÁJL2 lehet könyvtár."
+" --to-file=FÁJL2 minden operandus összehasonlítása FÁJL2-"
+"vel;\n"
+" FÁJL2 lehet könyvtár is"
-#: src/diff.c:891
-#, fuzzy
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
-msgstr "-i --ignore-case Nem tesz különbséget a kis- és nagybetûk között."
+msgstr ""
+"-i, --ignore-case kis- és nagybetű eltérések figyelmen kívül\n"
+" hagyása a fájlok tartalmában"
-#: src/diff.c:892
-#, fuzzy
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
-msgstr "-E --ignore-tab-expansion Nem figyeli a tab/szóköz cserét."
+msgstr ""
+"-E, --ignore-tab-expansion a tabulátorbővítés miatti változások "
+"mellőzése"
-#: src/diff.c:893
-#, fuzzy
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Nem figyel semmilyen üres helyet."
+msgstr "-Z, --ignore-trailing-space a sorvégi üres helyek mellőzése"
-#: src/diff.c:894
-#, fuzzy
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b --ignore-space-change Nem figyeli az üres helyek változtatását."
+msgstr ""
+"-b, --ignore-space-change üres helyek számában lévő változások "
+"mellőzése"
-#: src/diff.c:895
-#, fuzzy
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
-msgstr "-w --ignore-all-space Nem figyel semmilyen üres helyet."
+msgstr "-w, --ignore-all-space minden üres hely mellőzése"
-#: src/diff.c:896
-#, fuzzy
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
-msgstr "-B --ignore-blank-lines Figyelmen kívül hagyja az üres sorokat."
+msgstr ""
+"-B, --ignore-blank-lines változások mellőzése, ahol a sorok üresek"
-#: src/diff.c:897
-#, fuzzy
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
-"-I RK --ignore-matching-lines=RK Nem figyeli a RK-re illeszkedõ sorokat."
+"-I, --ignore-matching-lines=RK változások mellőzése, ahol minden sor\n"
+" illeszkedik az RK-ra"
-#: src/diff.c:899
-#, fuzzy
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
-msgstr "-a --text Az összes fájlt szövegként kezeli"
+msgstr "-a, --text az összes fájl szövegként kezelése"
-#: src/diff.c:900
-#, fuzzy
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
-"--strip-trailing-cr A bemenetbõl elhagyja a befejezõ kocsivissza "
-"karaktereket."
+" --strip-trailing-cr a záró kocsi vissza levágása a bemenetről"
-#: src/diff.c:902
-#, fuzzy
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
-msgstr "--binary Olvasás és írás bináris módban."
+msgstr " --binary adatok olvasása és írása bináris módon"
-#: src/diff.c:905
-#, fuzzy
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
-"-D NÉV--ifdef=NÉV Kiírja az összefésült fájlt `#ifdef NÉV' direktívákkal "
-"jelölve a különbségeket."
+"-D, --ifdef=NÉV egyesített fájlkiírás a „#ifdef NÉV” diffs\n"
+" használatával"
-#: src/diff.c:906
-#, fuzzy
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
-"--GTYPE-group-format=GFMT Hasonló, de a GTYPE bemeneti csoportokat formázza "
-"a GFMT formátumra."
+" --GTYPE-group-format=GFMT a GTYPE bemeneti csoportok formázása GFMT-vel"
-#: src/diff.c:907
-#, fuzzy
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
-msgstr ""
-"--line-format=LFMT Hasonló, de minden bemeneti sort a LFMT formátumúra "
-"formáz."
+msgstr " --line-format=LFMT minden bemeneti sor formázása LFMT-vel"
-#: src/diff.c:908
-#, fuzzy
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
-"--LTYPE-line-format=LFMT Hasonló, de az LTYPE típusú bemeneti sorokat LFMT "
-"formátumúra formázza."
+" --LTYPE-line-format=LFMT az LTYPE bemeneti sorok formázása LFMT-vel"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
+" Ezek a formázási lehetőségek részletes vezérlést biztosítanak a diff\n"
+" kimenetén, általánosítva: -D/--ifdef."
-#: src/diff.c:911
-#, fuzzy
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
-" az LTYPE `old', `new', vagy `unchanged'. a GTYPE LTYPE vagy `changed'."
+" Az LTYPE „old”, „new” vagy „unchanged”. A GTYPE értéke LTYPE vagy "
+"„changed”."
-#: src/diff.c:912
-#, fuzzy
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" M L+1\n"
" %(A=B?T:E) if A equals B then T else E"
msgstr ""
-" GFMT tartalmazhatja:\n"
-" %< a FÁJL1 sorait\n"
-" %> a FÁJL2 sorait\n"
-" %= a FÁJL1 és FÁJL2 közös sorait\n"
-" %[-][WIDTH][.[PREC]]{doxX}BETÛ printf-stílusú formázást\n"
-" BETÛ a következõ lehet az új csoportra, kisbetûvel régi csoportra:\n"
-" F elsõ sor száma\n"
-" L utolsó sor száma\n"
-" N sorok száma = L-F+1\n"
+" A GFMT (csak) a következőket tartalmazhatja:\n"
+" %< FÁJL1 sorai\n"
+" %> FÁJL2 sorai\n"
+" %= FÁJL1 és FÁJL2 közös sorai\n"
+" %[-][SZÉLESSÉG][.[PONTOSSÁG]]{doxX}BETŰ a BETŰ printf-stílusú megadása\n"
+" a BETŰK a következők lehetnek az új csoporthoz, kisbetűsek a régi\n"
+" csoporthoz:\n"
+" F első sor száma\n"
+" L utolsó sor száma\n"
+" N sorok száma = L-F+1\n"
" E F-1\n"
-" M L+1"
+" M L+1\n"
+" %(A=B?T:E) ha A egyenlő B, akkor T, egyébként E"
-#: src/diff.c:924
-#, fuzzy
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %l contents of line, excluding any trailing newline\n"
" %[-][WIDTH][.[PREC]]{doxX}n printf-style spec for input line number"
msgstr ""
-" LFMT tartalmazhatja:\n"
-" %L sor tartalma\n"
-" %l sor tartalma, új sorral nélkül\n"
-" %[-][WIDTH][.[PREC]]{doxX}n bemeneti sorok számának printf-stílusú "
-"megadása"
+" Az LFMT (csak) a következőket tartalmazhatja:\n"
+" %L a sor tartalma\n"
+" %l a sor tartalma, kivéve bármilyen záró üres karaktert\n"
+" %[-][SZÉLESSÉG][.[PONTOSSÁG]]{doxX}n printf-stílusú megadás a bemeneti\n"
+" sor számához"
-#: src/diff.c:928
-#, fuzzy
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO' the character with octal code OOO\n"
" C the character C (other characters represent themselves)"
msgstr ""
-" GFMT és LFMT is tartalmazhatja:\n"
+" A GFMT és az LFMT is tartalmazhatja:\n"
" %% %\n"
-" %c'C' egyetlen C karakter\n"
-" %c'\\OOO' karakter nyolcas számrendszer beli értéke"
+" %c'C' az önálló C karakter\n"
+" %c'\\OOO' a OOO oktális kódú karakter\n"
+" C a C karakter (más karakterek saját magukat ábrázolják)"
-#: src/diff.c:934
-#, fuzzy
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr "-d --minimal Megpróbál kevesebb különbséget találni."
+msgstr ""
+"-d, --minimal igyekszik egy kisebb változási halmazt megtalálni"
-#: src/diff.c:935
-#, fuzzy
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
-"--horizon-lines=SZÁM SZÁM számú sort tart meg a közös elõ és utótagból."
+" --horizon-lines=SZÁM a közös előtag és utótag SZÁM sorának megtartása"
-#: src/diff.c:936
-#, fuzzy
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
-"-H --speed-large-files Nagy fájlokat feltételez sok, elszórt, kis "
-"változással."
+" --speed-large-files nagy fájlokat és sok apró kis változást tételez fel"
-#: src/diff.c:938
-msgid " --help display this help and exit"
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:967
#, fuzzy
-msgid "-v, --version output version information and exit"
-msgstr "-v --version A kimenet a verziószám."
+msgid " or 'auto' (the default)"
+msgstr ""
+" --normal egy normál diff kimenet (az alapértelmezett)"
-#: src/diff.c:941
-#, fuzzy
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
msgstr ""
-"A FÁJLOK lehetnek `FÁJL1 FÁJL2' vagy `KÖNYVTÁR1 KÖNYVTÁR2' vagy\n"
-"`KÖNYVTÁR FÁJL...' vagy `FÁJL... KÖNYVTÁR'."
-#: src/diff.c:942
+#: src/diff.c:971
+msgid " --help display this help and exit"
+msgstr " --help ezen súgó megjelenítése és kilépés"
+
+#: src/diff.c:972
+msgid "-v, --version output version information and exit"
+msgstr "-v, --version verzióinformációk kiírása és kilépés"
+
+#: src/diff.c:974
#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
+msgstr ""
+"A FÁJLOK az alábbiak lehetnek „FÁJL1 FÁJL2” vagy „KÖNYVTÁR1 KÖNYVTÁR2” vagy\n"
+"„KÖNYVTÁR FÁJL…” vagy „FÁJL… KÖNYVTÁR”."
+
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
-"Ha --from-file vagy --to-file meg van adva, nincsenek megszorítások a FÁJLOK-"
-"ra."
+"Ha a --from-file vagy a --to-file meg van adva, akkor nincsenek "
+"megszorítások\n"
+"a FÁJLOKRA."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
-#, fuzzy
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
-msgstr "Ha a FÁJL `-', a szabványos bemenetrõl olvas."
+msgstr "Ha a FÁJL a „-”, akkor a szabványos bemenetről olvas."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
-msgstr "Használat: %s [KAPCSOLÓK]... FÁJLOK\n"
+msgstr "Használat: %s [KAPCSOLÓ]… FÁJLOK\n"
-#: src/diff.c:954
-#, fuzzy
+#: src/diff.c:987
msgid "Compare FILES line by line."
-msgstr "Fájlok összehasonlítása sorról sorra."
+msgstr "FÁJLOK összehasonlítása sorról sorra."
-#: src/diff.c:988
-#, fuzzy, c-format
+#: src/diff.c:1021
+#, c-format
msgid "conflicting %s option value '%s'"
-msgstr "összeférhetetlen %s kapcsoló értéke: `%s'"
+msgstr "ütköző %s kapcsoló érték: „%s”"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
-msgstr "összeférhetetlen kimenetistílus-kapcsolók"
+msgstr "ütköző kimeneti stílus kapcsolók"
+
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "érvénytelen szélesség: „%s”"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
-msgstr "Csak %s -ben: %s\n"
+msgstr "Csak ebben: %s: %s\n"
-#: src/diff.c:1192
-#, fuzzy
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
-msgstr "`-'-t nem lehet összehasonlítani egy könyvtárral"
+msgstr "a „-” nem hasonlítható össze egy könyvtárral"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
-msgstr "-D kapcsoló nem támogatott könyvtárak esetén"
+msgstr "A -D kapcsoló könyvtáraknál nem támogatott"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
-msgstr "Közös alkönyvtárak: %s és %s\n"
+msgstr "Közös alkönyvtárak: %s és %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
-msgstr "A(z) %s fájl egy %s, viszont a(z) %s fájl egy %s\n"
+msgstr "A(z) %s fájl egy %s, viszont a(z) %s fájl egy %s\n"
-#: src/diff.c:1314
-#, fuzzy, c-format
+#: src/diff.c:1362
+#, c-format
msgid "Symbolic links %s and %s differ\n"
-msgstr "A(z) %s és a(z) %s fájlok különböznek\n"
+msgstr "A(z) %s és a(z) %s szimbolikus linkek különböznek\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
-msgstr "%s és %s fájlok azonosak\n"
+msgstr "A(z) %s és a(z) %s fájlok azonosak\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff3.c:41
msgid "Randy Smith"
-msgstr ""
+msgstr "Randy Smith"
#: src/diff3.c:313
#, c-format
msgid "incompatible options"
-msgstr "összeférhetetlen kapcsolók"
+msgstr "összeférhetetlen kapcsolók"
#: src/diff3.c:353
-#, fuzzy
msgid "'-' specified for more than one input file"
-msgstr "`-' több mint egy bemeneti fájlhoz lett megadva"
+msgstr "a „-” több mint egy bemeneti fájlhoz lett megadva"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
-msgstr "olvasás sikertelen"
+msgstr "olvasás sikertelen"
#: src/diff3.c:428
-#, fuzzy
msgid "-A, --show-all output all changes, bracketing conflicts"
-msgstr "-A --show-all Kiírja az összes változást, zárójelezi az ütközéseket."
+msgstr ""
+"-A, --show-all minden változás kiírása, zárójelbe téve az\n"
+" ütközéseket"
#: src/diff3.c:430
-#, fuzzy
msgid ""
"-e, --ed output ed script incorporating changes\n"
" from OLDFILE to YOURFILE into MYFILE"
msgstr ""
-"-e --ed A RÉGI fájlból az ÚJ fájlba át nem került változásokat kiírja a "
-"SAJÁT fájlba."
+"-e, --ed egy ed parancsfájlt ír ki, amely a SAJÁTFÁJLBAN\n"
+" tartalmazza a RÉGIFÁJL és ÖNFÁJLJA "
+"változásait"
#: src/diff3.c:432
-#, fuzzy
msgid "-E, --show-overlap like -e, but bracket conflicts"
msgstr ""
-"-E --show-overlap Kiírja az át nem vitt változásokat, zárójelezi az "
-"ütközéseket."
+"-E, --show-overlap mint a -e, de zárójelbe teszi az ütközéseket"
#: src/diff3.c:433
-#, fuzzy
msgid ""
"-3, --easy-only like -e, but incorporate only nonoverlapping "
"changes"
-msgstr "-3 --easy-only Kiírja a nem átvitt és nem átfedõ változásokat."
+msgstr ""
+"-3, --easy-only mint a -e, de csak a nem átfedő változásokat\n"
+" tartalmazza"
#: src/diff3.c:434
-#, fuzzy
msgid ""
"-x, --overlap-only like -e, but incorporate only overlapping changes"
-msgstr "-x --overlap-only Kiírja az átfedõ változtatásokat."
+msgstr ""
+"-x, --overlap-only mint a -e, de csak az átfedő változásokat\n"
+" tartalmazza"
#: src/diff3.c:435
msgid "-X like -x, but bracket conflicts"
msgstr ""
+"-X mint a -x, de zárójelbe teszi az ütközéseket"
#: src/diff3.c:436
-#, fuzzy
msgid "-i append 'w' and 'q' commands to ed scripts"
-msgstr "-i Hozzáfûzi a `w' és a`q' parancsokat az ed-parancsfájlhoz."
+msgstr ""
+"-i „w” és „q” parancsok hozzáfűzése az ed\n"
+" parancsfájlokhoz"
#: src/diff3.c:438
msgid ""
"-m, --merge output actual merged file, according to\n"
" -A if no other options are given"
msgstr ""
+"-m, --merge az aktuális egyesített fájl kiírása a -A "
+"szerint,\n"
+" ha más kapcsoló nincs megadva"
#: src/diff3.c:441
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Az összes fájlt szövegként kezeli"
+msgstr "-a, --text az összes fájl szövegként kezelése"
#: src/diff3.c:442
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr ""
-"--strip-trailing-cr A bemenetbõl elhagyja a befejezõ kocsivissza "
-"karaktereket."
+msgstr " --strip-trailing-cr a záró kocsi vissza levágása a bemenetről"
#: src/diff3.c:443
-#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
-"-T --initial-tab A tabulátorok helyesen jelennek meg a kezdõ tabulátornak "
-"köszönhetõen."
+"-T, --initial-tab beigazítja a tabulátorokat egy tabulátor\n"
+" hozzáfűzésével"
#: src/diff3.c:444
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
msgstr ""
-"--diff-program=PROGRAM A PROGRAM-ot használja a fájlok\n"
-" összehasonlításához."
+" --diff-program=PROGRAM a PROGRAM használata fájlok összehasonlításához"
#: src/diff3.c:445
msgid ""
"-L, --label=LABEL use LABEL instead of file name\n"
" (can be repeated up to three times)"
msgstr ""
+"-L, --label=CÍMKE CÍMKE használata fájlnév helyett\n"
+" (legfeljebb háromszor ismételhető)"
#: src/diff3.c:448
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help ezen súgó megjelenítése és kilépés"
#: src/diff3.c:449
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version A kimenet a verziószám."
+msgstr "-v, --version verzióinformációk kiírása és kilépés"
#: src/diff3.c:458
#, c-format
msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n"
-msgstr "Használat: %s [KAPCSOLÓ]... SAJÁT RÉGI ÚJ\n"
+msgstr "Használat: %s [KAPCSOLÓ]… SAJÁTFÁJL RÉGIFÁJL ÖNFÁJLJA\n"
#: src/diff3.c:460
msgid "Compare three files line by line."
-msgstr "Három fájlt hasonlít össze sorról sorra."
+msgstr "Három fájl összehasonlítása sorról sorra."
#: src/diff3.c:470
msgid ""
"and output the actual merged file. For unusual input, this is more\n"
"robust than using ed.\n"
msgstr ""
+"\n"
+"Az alapértelmezett kimeneti formátum a változásoknak az ember által kevésbé\n"
+"olvasható ábrázolása.\n"
+"\n"
+"A -e, -E, -x, -X (és a megfelelő hosszú) kapcsolók egy ed parancsfájlt "
+"idéznek\n"
+"elő az alapértelmezett kimenet helyett.\n"
+"\n"
+"Végül a -m (--merge) kapcsoló diff3 formátumot hoz létre az egyesítés\n"
+"belsőleg történő elvégzéséhez, és az aktuális egyesített fájlt írja ki.\n"
+"Szokatlan bemenethez ez sokkal erőteljesebb az ed használatánál.\n"
#: src/diff3.c:482
msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble."
msgstr ""
-"A kilépési állapotkód 0, ha sikeres; 1, ha konfliktus van; 2, ha hiba "
-"történt."
+"A kilépési állapotkód 0, ha sikeres; 1, ha ütközés van; 2, ha hiba történt."
#: src/diff3.c:675
msgid "internal error: screwup in format of diff blocks"
-msgstr "belsõ hiba: a program megzavarodott a különbségblokkok formátumánál"
+msgstr "belső hiba: zűrzavar az összehasonlítási blokkok formátumában"
#: src/diff3.c:968
#, c-format
msgid "%s: diff failed: "
-msgstr "%s: összehasonlítás sikertelen: "
+msgstr "%s: összehasonlítás sikertelen: "
#: src/diff3.c:990
msgid "internal error: invalid diff type in process_diff"
-msgstr "belsõ hiba: érvénytelen összehasonlítási típus a process_diff-ben"
+msgstr ""
+"belső hiba: érvénytelen összehasonlítási típus a process_diff függvényben"
#: src/diff3.c:1015
msgid "invalid diff format; invalid change separator"
-msgstr "érvénytelen összehasonlítás-formátum; érvénytelen változáselválasztó"
+msgstr "érvénytelen összehasonlítási formátum; érvénytelen változáselválasztó"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
-msgstr "érvénytelen összehasonlítás-formátum; befejezetlen utolsó sor"
+msgstr "érvénytelen összehasonlítási formátum; befejezetlen utolsó sor"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
-#, fuzzy, c-format
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
+#, c-format
msgid "subsidiary program '%s' could not be invoked"
-msgstr "`%s' segédprogram nem indítható"
+msgstr "a(z) „%s” kisegítő programot nem sikerült meghívni"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
-msgstr "érvénytelen összehasonlítási formátum; rossz sor eleji karakter"
+msgstr "érvénytelen összehasonlítási formátum; helytelen sor eleji karakterek"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
-msgstr "belsõ hiba: érvénytelen összehasonlítási típus került a kimenetre"
+msgstr "belső hiba: érvénytelen összehasonlítási típus lett átadva kimenetnek"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
-msgstr "a bementi fájl összement"
+msgstr "a bementi fájl összement"
-#: src/dir.c:158
-#, fuzzy, c-format
+#: src/dir.c:156
+#, c-format
msgid "cannot compare file names '%s' and '%s'"
-msgstr "nem lehet a(z) `%s' és a(z) `%s' fájlneveket összehasonlítani"
+msgstr "nem sikerült a(z) „%s” és a(z) „%s” fájlneveket összehasonlítani"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
-msgstr ""
+msgstr "%s: rekurzív könyvtárhurok"
#. This is a proper name. See the gettext manual, section Names.
#: src/sdiff.c:42
msgid "Thomas Lord"
-msgstr ""
+msgstr "Thomas Lord"
#: src/sdiff.c:173
-#, fuzzy
msgid ""
"-o, --output=FILE operate interactively, sending output to FILE"
msgstr ""
-"-o FÁJL --output=FÁJL Interaktívan dolgozik, a kimenetet a FÁJL-ba küldi."
+"-o, --output=FÁJL interaktív működés, kimenet küldése FÁJLBA"
#: src/sdiff.c:175
-#, fuzzy
msgid ""
"-i, --ignore-case consider upper- and lower-case to be the same"
-msgstr "-i --ignore-case A kis- és nagybetûket azonosnak tekinti."
+msgstr "-i, --ignore-case a kis- és nagybetűket azonosnak tekinti"
#: src/sdiff.c:176
-#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
-msgstr "-E --ignore-tab-expansion Nem figyeli a tab/szóköz cserét."
+msgstr ""
+"-E, --ignore-tab-expansion a tabulátorbővítés miatti változások mellőzése"
#: src/sdiff.c:177
-#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Nem figyel semmilyen üres helyet."
+msgstr "-Z, --ignore-trailing-space a sorvégi üres helyek mellőzése"
#: src/sdiff.c:178
-#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b --ignore-space-change Nem figyeli az üres helyek változtatását."
+msgstr ""
+"-b, --ignore-space-change üres helyek számában lévő változások mellőzése"
#: src/sdiff.c:179
-#, fuzzy
msgid "-W, --ignore-all-space ignore all white space"
-msgstr "-W --ignore-all-space Figyelmen kívül hagy minden üres helyet."
+msgstr "-W, --ignore-all-space minden üres hely mellőzése"
#: src/sdiff.c:180
-#, fuzzy
msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank"
-msgstr "-B --ignore-blank-lines Figyelmen kívül hagyja az üres sorokat."
+msgstr "-B, --ignore-blank-lines változások mellőzése, ahol a sorok üresek"
#: src/sdiff.c:181
-#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE"
msgstr ""
-"-I RK --ignore-matching-lines=RK Nem figyeli a RK-re illeszkedõ sorokat."
+"-I, --ignore-matching-lines=RK változások mellőzése, ahol minden sor\n"
+" illeszkedik az RK-ra"
#: src/sdiff.c:182
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr ""
-"--strip-trailing-cr A bemenetbõl elhagyja a befejezõ kocsivissza "
-"karaktereket."
+msgstr " --strip-trailing-cr a záró kocsi vissza levágása a bemenetről"
#: src/sdiff.c:183
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Az összes fájlt szövegként kezeli"
+msgstr "-a, --text az összes fájl szövegként kezelése"
#: src/sdiff.c:185
-#, fuzzy
msgid ""
"-w, --width=NUM output at most NUM (default 130) print columns"
-msgstr "-w SZÁM --width=SZÁM Legfeljebb SZÁM széles kimenet (alapból 130)."
+msgstr ""
+"-w, --width=SZÁM legfeljebb SZÁM (alapértelmezetten 130)\n"
+" nyomtatási oszlop kiírása"
#: src/sdiff.c:186
-#, fuzzy
msgid ""
"-l, --left-column output only the left column of common lines"
-msgstr "-l --left-column A közös sorokat csak bal oldra írja ki."
+msgstr ""
+"-l, --left-column a közös soroknak csak a bal oszlopának kiírása"
#: src/sdiff.c:187
-#, fuzzy
msgid "-s, --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines Nem írja ki a közös sorokat."
+msgstr "-s, --suppress-common-lines ne írja ki a közös sorokat"
#: src/sdiff.c:189
-#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr ""
-"-t --expand-tabs A tabulátorokat szóközzel helyettesíti a kimenetben."
+"-t, --expand-tabs tabulátorok bővítése szóközökké a kimeneten"
#: src/sdiff.c:190
-#, fuzzy
msgid ""
" --tabsize=NUM tab stops at every NUM (default 8) print columns"
msgstr ""
-"--tabsize=NUM Tabulátorpozíció minden NUM. nyomtatási oszlopban (alapból 8)."
+" --tabsize=SZÁM a tabulátor megáll minden SZÁMADIK\n"
+" (alapértelmezetten 8) nyomtatási oszlopnál"
#: src/sdiff.c:192
-#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr "-d --minimal Megpróbál kevesebb különbséget találni."
+msgstr ""
+"-d, --minimal igyekszik egy kisebb változási halmazt "
+"megtalálni"
#: src/sdiff.c:193
-#, fuzzy
msgid ""
"-H, --speed-large-files assume large files, many scattered small changes"
msgstr ""
-"-H --speed-large-files Nagy fájlokat feltételez sok, elszórt, kis "
-"változással."
+"-H, --speed-large-files nagy fájlokat, sok apró kis változást tételez "
+"fel"
#: src/sdiff.c:194
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
msgstr ""
-"--diff-program=PROGRAM A PROGRAM-ot használja a fájlok\n"
-" összehasonlításához."
+" --diff-program=PROGRAM a PROGRAM használata fájlok összehasonlításához"
#: src/sdiff.c:196
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help ezen súgó megjelenítése és kilépés"
#: src/sdiff.c:197
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version A kimenet a verziószám."
+msgstr "-v, --version verzióinformációk kiírása és kilépés"
#: src/sdiff.c:206
#, c-format
msgid "Usage: %s [OPTION]... FILE1 FILE2\n"
-msgstr "Használat: %s [KAPCSOLÓ]... FÁJL1 FÁJL2\n"
+msgstr "Használat: %s [KAPCSOLÓ]… FÁJL1 FÁJL2\n"
#: src/sdiff.c:208
-#, fuzzy
msgid "Side-by-side merge of differences between FILE1 and FILE2."
-msgstr "Egymás mellett jeleníti a fájlokat és a különbségeiket."
+msgstr "A FÁJL1 és FÁJL2 közötti különbségek egymás melletti egyesítése."
#: src/sdiff.c:329
msgid "cannot interactively merge standard input"
-msgstr "nem lehet interaktívan összefûzni a szabványos bemenetet."
+msgstr "nem sikerült interaktívan egyesíteni a szabványos bemenetet"
#: src/sdiff.c:595
msgid "both files to be compared are directories"
-msgstr "mindkét összehasonlítandó fájl könyvtár"
+msgstr "mindkét összehasonlítandó fájl könyvtár"
#: src/sdiff.c:818
-#, fuzzy
msgid ""
"ed:\tEdit then use both versions, each decorated with a header.\n"
"eb:\tEdit then use both versions.\n"
"v:\tVerbosely include common lines.\n"
"q:\tQuit.\n"
msgstr ""
-"ed:\tSzerkesztés, majd mind a két változat használata fejlécekkel díszítve.\n"
-"eb:\tSzerkesztés, majd mind a két változat használata.\n"
-"el:\tSzerkesztés, majd a bal oldali változat használata.\n"
-"er:\tSzerkesztés, majd a jobb oldali változat használata.\n"
-"e:\tÚj változat írása.\n"
-"l:\tA bal oldali változat használata.\n"
-"r:\tA jobb oldali változat használata.\n"
-"s:\tAz azonos sorok beépítése figyelmeztetés nélkül.\n"
-"v:\tAz azonos sorok beépítése figyelmeztetéssel.\n"
-"q:\tKilépés.\n"
-
-#~ msgid "%s: illegal option -- %c\n"
-#~ msgstr "%s: nem megengedett kapcsoló -- %c\n"
-
-#~ msgid ""
-#~ "This is free software; see the source for copying conditions. There is "
-#~ "NO\n"
-#~ "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR "
-#~ "PURPOSE.\n"
-#~ msgstr ""
-#~ "Ez szabad szoftver; a sokszorosításra vonatkozó feltételeket lásd a "
-#~ "forrásban.\n"
-#~ "SEMMILYEN garanciát nem vállalunk, még azt sem állítjuk, hogy ez a "
-#~ "program\n"
-#~ "KERESKEDELMI CÉLOKRA ALKALMAS vagy HASZNÁLHATÓ EGY ADOTT FELADATRA.\n"
-
-#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
-#~ msgstr "-i UGRÁS1:UGRÁS2 --ignore-initial=UGRÁS1:UGRÁS2"
-
-#~ msgid "-s --quiet --silent Output nothing; yield exit status only."
-#~ msgstr "-s --quiet --silent Nincs kimenet, csak visszatérési érték."
-
-#~ msgid "--help Output this help."
-#~ msgstr "--help Kiírja ezt a segítséget."
-
-#~ msgid "Report bugs to <bug-gnu-utils@gnu.org>."
-#~ msgstr "A hibákat <bug-gnu-utils@gnu.org> címre kérjük jelenteni."
-
-#~ msgid "`-%ld' option is obsolete; use `-%c %ld'"
-#~ msgstr "a `-%ld' kapcsoló elavult; használja a `-%c %ld' kapcsolót "
-
-#~ msgid "`-%ld' option is obsolete; omit it"
-#~ msgstr "a `-%ld' kapcsoló elavult; ne használja"
-
-#~ msgid ""
-#~ "-c -C NUM --context[=NUM] Output NUM (default 3) lines of copied "
-#~ "context.\n"
-#~ "-u -U NUM --unified[=NUM] Output NUM (default 3) lines of unified "
-#~ "context.\n"
-#~ " --label LABEL Use LABEL instead of file name.\n"
-#~ " -p --show-c-function Show which C function each change is in.\n"
-#~ " -F RE --show-function-line=RE Show the most recent line matching RE."
-#~ msgstr ""
-#~ "-c -C SZÁM --context[=SZÁM] SZÁM (alapból 3) sor 'másolt' környezetet "
-#~ "ír ki.\n"
-#~ "-u -U SZÁM --unified[=SZÁM] SZÁM (alapból 3) sor 'egyesített' "
-#~ "környezetet ír ki.\n"
-#~ " --label CÍMKE CÍMKE használata a fájlnév helyett.\n"
-#~ " -p --show-c-function Megmutatja, hogy a változás melyik C függvényben "
-#~ "van.\n"
-#~ " -F RK --show-function-line=RK Megmutatja a legközelebbi RK-ra "
-#~ "illeszkedõ sort."
-
-#~ msgid ""
-#~ "-y --side-by-side Output in two columns.\n"
-#~ " -W NUM --width=NUM Output at most NUM (default 130) print columns.\n"
-#~ " --left-column Output only the left column of common lines.\n"
-#~ " --suppress-common-lines Do not output common lines."
-#~ msgstr ""
-#~ "-y --side-by-side A kimenet két oszlop.\n"
-#~ " -W SZÁM --width=SZÁM Legfeljebb SZÁM széles kimenet (alapból 130).\n"
-#~ " --left-column A közös sorokat csak bal oldalon írja ki.\n"
-#~ " --suppress-common-lines Nem írja ki a közös sorokat."
-
-#~ msgid ""
-#~ "--speed-large-files Assume large files and many scattered small changes."
-#~ msgstr ""
-#~ "--speed-large-files Nagy fájlokat feltételez sok, elszórt, kis "
-#~ "változással."
-
-#~ msgid "-X Output overlapping changes, bracketing them."
-#~ msgstr " -X Kiírja és zárójelezi az átfedõ változtatásokat."
-
-#~ msgid "-m --merge Output merged file instead of ed script (default -A)."
-#~ msgstr ""
-#~ "-m --merge Az összefésült fájlt írja ki ed-parancsfájl helyett (alapból "
-#~ "-A)."
-
-#~ msgid "-L LABEL --label=LABEL Use LABEL instead of file name."
-#~ msgstr "-L CÍMKE --label=CÍMKE A CÍMKÉ-t használja fájlnév helyet."
-
-#~ msgid "subsidiary program `%s' not found"
-#~ msgstr "`%s' segédprogram nem található"
-
-#~ msgid "subsidiary program `%s' failed"
-#~ msgstr "`%s' segédprogram futása sikertelen"
-
-#~ msgid "subsidiary program `%s' failed (exit status %d)"
-#~ msgstr "`%s' segédprogram futása sikertelen (kilépési állapotkód: %d)"
+"ed:\tSzerkesztés, majd mindkét változat használata fejlécekkel díszítve.\n"
+"eb:\tSzerkesztés, majd mindkét változat használata.\n"
+"el vagy e1:\tSzerkesztés, majd a bal oldali változat használata.\n"
+"er vagy e2:\tSzerkesztés, majd a jobb oldali változat használata.\n"
+"e:\tMindkét változat eldobása, majd az új szerkesztése.\n"
+"l vagy 1:\tA bal oldali változat használata.\n"
+"r vagy 2:\tA jobb oldali változat használata.\n"
+"s:\tA közös sorok felvétele csendben.\n"
+"v:\tA közös sorok felvétele bőbeszédűen.\n"
+"q:\tKilépés.\n"
+
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: ismeretlen „--%s” kapcsoló\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
# Copyright (C) 2002 Free Software Foundation, Inc.
# This file is distributed under the same license as the diffutils package.
# Tedi Heriyanto <tedi_h@gmx.net>, 2002.
-# Arif E. Nugroho <arif_endro@yahoo.com>, 2008, 2010.
+# Arif E. Nugroho <arif_endro@yahoo.com>, 2008, 2009, 2010, 2011, 2012, 2013, 2014.
#
msgid ""
msgstr ""
-"Project-Id-Version: diffutils 2.9\n"
+"Project-Id-Version: diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
-"PO-Revision-Date: 2010-02-14 08:00+0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
+"PO-Revision-Date: 2014-08-03 08:00+0700\n"
"Last-Translator: Arif E. Nugroho <arif_endro@yahoo.com>\n"
"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
"Language: id\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "argumen %s%s tidak valid '%s'"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "argumen %s%s tidak valid '%s'"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "kesalahan program"
msgid "stack overflow"
msgstr "overflow stack"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Kesalahan sistem tidak dikenal"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "berkas reguler kosong"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "berkas reguler"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "direktori"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "berkas blok spesial"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "berkas karakter spesial"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "link simbolik"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "soket"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "antrian pesan"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semaphore"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "objek memori bersama"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "tipe objek memori"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "berkas blok spesial"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "berkas karakter spesial"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "berkas blok spesial"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "berkas karakter spesial"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "berkas aneh"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "berkas blok spesial"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "soket"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "berkas aneh"
-#: lib/getopt.c:547 lib/getopt.c:576
-#, fuzzy, c-format
+#: lib/getopt.c:575 lib/getopt.c:604
+#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
-msgstr "%s: pilihan '%s' ambigu\n"
+msgstr "%s: pilihan '%s' ambigu"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: pilihan '-W %s' ambigu\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: pilihan '--%s' tidak mengijinkan sebuah argumen\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: pilihan '%c%s' tidak mengijinkan sebuah argumen\n"
-#: lib/getopt.c:685 lib/getopt.c:704
-#, fuzzy, c-format
+#: lib/getopt.c:715 lib/getopt.c:734
+#, c-format
msgid "%s: option '--%s' requires an argument\n"
-msgstr "%s: pilihan '%s' membutuhkan sebuah argumen\n"
+msgstr "%s: pilihan '--%s' membutuhkan sebuah argumen\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: pilihan '--%s' tidak dikenal\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: pilihan '%c%s' tidak dikenal\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: pilihan -- '%c' tidak valid\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: pilihan -- '%c' membutuhkan sebuah argumen\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: pilihan '-W %s' ambigu\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: pilihan '-W %s' tidak mengijinkan sebuah argumen\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
-#, fuzzy, c-format
+#: lib/getopt.c:1043 lib/getopt.c:1061
+#, c-format
msgid "%s: option '-W %s' requires an argument\n"
-msgstr "%s: pilihan '%s' membutuhkan sebuah argumen\n"
+msgstr "%s: pilihan '-W %s' membutuhkan sebuah argumen\n"
#. TRANSLATORS:
#. Get translations for open and closing quotation marks.
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "`"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr "'"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Sukses"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Tidak cocok"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Ekspresi reguler tidak valid"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Karakter kolasi tidak valid"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Nama kelas karakter tidak valid"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Akhiran backslash"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Referensi balik tidak valid"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "Tidak cocok [ atau [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Tidak cocok ( atau \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Tidak cocok \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Isi dari \\{\\} tidak valid"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Batas akhir tidak valid"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Kehabisan memori"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Ekspresi reguler yang mengawali tidak valid"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Ekspresi reguler berakhir dengan prematur"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Ekspresi reguler terlalu besar"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "Tidak cocok ) atau \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Tidak ada ekspresi reguler sebelumnya"
msgstr "gagal untuk membuka kembali %s dengan mode %s"
#: lib/xstrtol-error.c:63
-#, fuzzy, c-format
+#, c-format
msgid "invalid %s%s argument '%s'"
-msgstr "argumen %s%s tidak valid `%s'"
+msgstr "argumen %s%s tidak valid '%s'"
#: lib/xstrtol-error.c:68
-#, fuzzy, c-format
+#, c-format
msgid "invalid suffix in %s%s argument '%s'"
-msgstr "akhiran dalam argumen %s%s tidak valid `%s'"
+msgstr "akhiran dalam argumen %s%s tidak valid '%s'"
#: lib/xstrtol-error.c:72
-#, fuzzy, c-format
+#, c-format
msgid "%s%s argument '%s' too large"
-msgstr "%s%s argumen `%s' terlalu besar"
+msgstr "%s%s argumen '%s' terlalu besar"
#: lib/version-etc.c:74
#, c-format
msgstr ""
"Bantuan umum menggunakan perangkat lunak GNU: <http://www.gnu.org/gethelp>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Berkas %s dan %s berbeda\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "File biner %s dan %s berbeda\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Tidak ada baris-baru di akhir dari berkas"
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
-#, fuzzy, c-format
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
+#, c-format
msgid "Try '%s --help' for more information."
-msgstr "Coba `%s --help' untuk informasi lebih lanjut."
+msgstr "Coba '%s --help' untuk informasi lebih lanjut."
#: src/cmp.c:137
-#, fuzzy, c-format
+#, c-format
msgid "invalid --ignore-initial value '%s'"
-msgstr "tidak valid --ignore-initial nilai `%s'"
+msgstr "tidak valid --ignore-initial nilai '%s'"
#: src/cmp.c:147
#, c-format
msgid "options -l and -s are incompatible"
msgstr "pilihan -l dan -s tidak kompatibel"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "gagal menulis"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "standar keluaran"
#: src/cmp.c:161
-#, fuzzy
msgid "-b, --print-bytes print differing bytes"
-msgstr "-b --print-bytes Tampilkan byte yang berbeda."
+msgstr "-b, --print-bytes Tampilkan byte yang berbeda."
#: src/cmp.c:162
-#, fuzzy
msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs"
-msgstr "-i SKIP --ignore-initial=SKIP Lewati SKIP byte pertama dari masukan."
+msgstr "-i, --ignore-initial=SKIP Lewati SKIP byte pertama dari masukan."
#: src/cmp.c:163
-#, fuzzy
msgid ""
"-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n"
" first SKIP2 bytes of FILE2"
-msgstr " Lewati SKIP1 byte pertama FILE1 dan SKIP2 byte pertama FILE2."
+msgstr ""
+"-i, --ignore-initial=SKIP1:SKIP2 Lewati SKIP1 byte pertama FILE1 dan SKIP2 "
+"byte pertama FILE2.\n"
+" first SKIP2 bytes of FILE2"
#: src/cmp.c:165
-#, fuzzy
msgid ""
"-l, --verbose output byte numbers and differing byte values"
msgstr ""
-"-l --verbose Keluarkan jumlah byte dan nilai semua byte yang berbeda."
+"-l, --verbose Keluarkan jumlah byte dan nilai semua byte yang berbeda."
#: src/cmp.c:166
-#, fuzzy
msgid "-n, --bytes=LIMIT compare at most LIMIT bytes"
-msgstr "-n LIMIT --bytes=LIMIT Bandingkan paling banyak LIMIT byte."
+msgstr "-n, --bytes=LIMIT Bandingkan paling banyak LIMIT byte."
#: src/cmp.c:167
msgid "-s, --quiet, --silent suppress all normal output"
-msgstr ""
+msgstr "-s, --quiet, --silent suppress all normal output"
#: src/cmp.c:168
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help display this help and exit"
#: src/cmp.c:169
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Tampilkan informasi versi."
+msgstr "-v, --version Tampilkan informasi versi."
#: src/cmp.c:178
#, c-format
msgstr "Bandingkan dua file byte per byte"
#: src/cmp.c:182
-#, fuzzy
msgid ""
"The optional SKIP1 and SKIP2 specify the number of bytes to skip\n"
"at the beginning of each file (zero by default)."
-msgstr "SKIP1 dan SKIP2 adalah jumlah byte yang harus dilewati di tiap file."
+msgstr ""
+"SKIP1 dan SKIP2 adalah jumlah byte yang harus dilewati di tiap file.\n"
+"at the beginning of each file (zero by default)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
+"Mandatory arguments to long options are mandatory for short options too.\n"
#: src/cmp.c:191
msgid ""
"GB 1,000,000,000, G 1,073,741,824, dan seterusnya untuk T, P, E, Z, Y."
#: src/cmp.c:194
-#, fuzzy
msgid "If a FILE is '-' or missing, read standard input."
-msgstr "Jika sebuah FILE adalah `-' atau tidak ada, baca input standar"
+msgstr "Jika sebuah FILE adalah '-' atau tidak ada, baca input standar"
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"Status keluar adalah 0 jika masukan sama, 1 jika berbeda, 2 jika bermasalah."
#: src/cmp.c:240
-#, fuzzy, c-format
+#, c-format
msgid "invalid --bytes value '%s'"
-msgstr "nilai --byte tidak valid `%s'"
+msgstr "nilai --byte tidak valid '%s'"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
-#, fuzzy, c-format
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
+#, c-format
msgid "missing operand after '%s'"
-msgstr "tidak ada operand setelah `%s'"
+msgstr "tidak ada operand setelah '%s'"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
-#, fuzzy, c-format
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
+#, c-format
msgid "extra operand '%s'"
-msgstr "operand ekstra `%s'"
+msgstr "operand ekstra '%s'"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s berbeda: byte %s, baris %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s berbeda: byte %s, baris %s adalah %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: EOF pada %s\n"
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
-#, fuzzy, c-format
+#: src/diff.c:351
+#, c-format
msgid "invalid context length '%s'"
-msgstr "panjang context tidak valid `%s'"
+msgstr "panjang context tidak valid '%s'"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "paginasi tidak didukung pada host ini"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "terlalu banyak option label file"
-#: src/diff.c:514
-#, fuzzy, c-format
+#: src/diff.c:526
+#, c-format
msgid "invalid width '%s'"
-msgstr "lebar tidak valid `%s'"
+msgstr "lebar tidak valid '%s'"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "option lebar konflik"
-#: src/diff.c:543
-#, fuzzy, c-format
+#: src/diff.c:555
+#, c-format
msgid "invalid horizon length '%s'"
-msgstr "panjang horizon tidak valid `%s'"
+msgstr "panjang horizon tidak valid '%s'"
-#: src/diff.c:598
-#, fuzzy, c-format
+#: src/diff.c:611
+#, c-format
msgid "invalid tabsize '%s'"
-msgstr "tabsize tidak valid `%s'"
+msgstr "tabsize tidak valid '%s'"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "option tabsize konflik"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "--from-file dan --to-file keduanya disebutkan"
-#: src/diff.c:854
-#, fuzzy
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
msgstr "--normal Output normal diff."
-#: src/diff.c:855
-#, fuzzy
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
-msgstr "-q --brief Tampilkan hanya apakah file berbeda."
+msgstr "-q, --brief Tampilkan hanya apakah file berbeda."
-#: src/diff.c:856
-#, fuzzy
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
-msgstr "-s --report-identical-files Laporkan ketika dua file sama."
+msgstr "-s, --report-identical-files Laporkan ketika dua file sama."
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
+"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
-#: src/diff.c:858
-#, fuzzy
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
-"-w NUM --width=NUM Output paling banyak NUM (baku 130) kolom cetakan."
+"-w, NUM --width=NUM Output paling banyak NUM (baku 130) kolom cetakan."
-#: src/diff.c:859
-#, fuzzy
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
-msgstr "-e --ed Output adalah script ed."
+msgstr "-e, --ed Output adalah script ed."
-#: src/diff.c:860
-#, fuzzy
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
-msgstr "-n --rcs Output dalam format RCS diff."
+msgstr "-n, --rcs Output dalam format RCS diff."
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
-msgstr ""
+msgstr "-y, --side-by-side output in two columns"
-#: src/diff.c:862
-#, fuzzy
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
-msgstr ""
-"-w NUM --width=NUM Output paling banyak NUM (baku 130) kolom cetakan."
+msgstr "-W, --width=NUM Output paling banyak NUM (baku 130) kolom cetakan."
-#: src/diff.c:863
-#, fuzzy
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
-msgstr "-l --left-column Hanya tampilkan kolom kiri baris yang sama."
+msgstr " --left-column Hanya tampilkan kolom kiri baris yang sama."
-#: src/diff.c:864
-#, fuzzy
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines Jangan tampilkan baris yang sama."
+msgstr " --suppress-common-lines Jangan tampilkan baris yang sama."
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
-msgstr ""
+msgstr "-p, --show-c-function show which C function each change is in"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
-msgstr ""
+msgstr "-F, --show-function-line=RE show the most recent line matching RE"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+" --label LABEL use LABEL instead of file name\n"
+" (can be repeated)"
-#: src/diff.c:871
-#, fuzzy
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
-msgstr "-t --expand-tabs Ekspansi tab ke spasi dalam output."
+msgstr "-t, --expand-tabs Ekspansi tab ke spasi dalam output."
-#: src/diff.c:872
-#, fuzzy
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
-msgstr "-T --initial-tab Buat tab beraturan dg menambahkan sebuah tab."
+msgstr "-T, --initial-tab Buat tab beraturan dg menambahkan sebuah tab."
-#: src/diff.c:873
-#, fuzzy
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr "--tabsize=NUM Tab stop adalah setiap NUM (default 8) kolom cetakan."
-#: src/diff.c:874
-#, fuzzy
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
"--suppress-blank-empty Tekan spasi atau tab sebelum mengeluarkan baris "
"kosong."
-#: src/diff.c:875
-#, fuzzy
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
-msgstr "-l --paginate Berikan output ke `pr' untuk di-paginate."
+msgstr "-l, --paginate Berikan output ke `pr' untuk di-paginate."
-#: src/diff.c:877
-#, fuzzy
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
-msgstr "-r --recursive Membandingkan subdirektori secara rekursif."
+msgstr "-r, --recursive Membandingkan subdirektori secara rekursif."
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
-msgstr ""
+msgstr " --no-dereference don't follow symbolic links"
-#: src/diff.c:879
-#, fuzzy
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
-msgstr "-N --new-file Perlakukan tiada file sebagai kosong."
+msgstr "-N, --new-file Perlakukan tiada file sebagai kosong."
-#: src/diff.c:880
-#, fuzzy
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
"--unidirectional-new-file Anggap file tidak ada pertama sebagai kosong."
-#: src/diff.c:881
-#, fuzzy
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr "--ignore-file-name-case Abaikan case saat membandingkan nama file."
-#: src/diff.c:882
-#, fuzzy
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
"--no-ignore-file-name-case Pertimbangkan case saat membandingkan nama file."
-#: src/diff.c:883
-#, fuzzy
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
-msgstr "-x PAT --exclude=PAT Tanpa file yang cocok dengan PAT."
+msgstr "-x, --exclude=PAT Tanpa file yang cocok dengan PAT."
-#: src/diff.c:884
-#, fuzzy
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
-"-X FILE --exclude-from=FILE Abaikan file yang cocok dengan pola dalam FILE"
+"-X, --exclude-from=FILE Abaikan file yang cocok dengan pola dalam FILE"
-#: src/diff.c:885
-#, fuzzy
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
-"-S FILE --starting-file=FILE Mulai dengan FILE ketika membandingkan "
-"direktori."
+"-S, --starting-file=FILE Mulai dengan FILE ketika membandingkan direktori."
-#: src/diff.c:886
-#, fuzzy
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
msgstr ""
"--from-file=FILE1 Bandingkan FILE1 ke semua operand. FILE1 dapat berupa "
-"direktori."
+"direktori.\n"
+" FILE1 can be a directory"
-#: src/diff.c:888
-#, fuzzy
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
msgstr ""
"--to-file=FILE2 Bandingkan semua operand dengan FILE2. FILE2 dapat berupa "
-"direktori."
+"direktori.\n"
+" FILE2 can be a directory"
-#: src/diff.c:891
-#, fuzzy
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
-msgstr "-i --ignore-case Abaikan beda case dalam isi file."
+msgstr "-i, --ignore-case Abaikan beda case dalam isi file."
-#: src/diff.c:892
-#, fuzzy
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
-msgstr "-E --ignore-tab-expansion Abaikan perubahan akibat ekspansi tab."
+msgstr "-E, --ignore-tab-expansion Abaikan perubahan akibat ekspansi tab."
-#: src/diff.c:893
-#, fuzzy
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Abaikan seluruh white space."
+msgstr "-Z, --ignore-all-space Abaikan seluruh white space."
-#: src/diff.c:894
-#, fuzzy
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b --ignore-space-change Abaikan perubahan sejumlah white space."
+msgstr "-b, --ignore-space-change Abaikan perubahan sejumlah white space."
-#: src/diff.c:895
-#, fuzzy
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
-msgstr "-w --ignore-all-space Abaikan seluruh white space."
+msgstr "-w, --ignore-all-space Abaikan seluruh white space."
-#: src/diff.c:896
-#, fuzzy
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
-msgstr "-B --ignore-blank-lines Abaikan perubahan baris kosong."
+msgstr "-B, --ignore-blank-lines Abaikan perubahan baris kosong."
-#: src/diff.c:897
-#, fuzzy
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
-"-I RE --ignore-matching-lines=RE Abaikan perubahan baris yang cocok dg RE."
+"-I, --ignore-matching-lines=RE Abaikan perubahan baris yang cocok dg RE."
-#: src/diff.c:899
-#, fuzzy
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
-msgstr "-a --text Perlakukan seluruh file sebagai teks."
+msgstr "-a, --text Perlakukan seluruh file sebagai teks."
-#: src/diff.c:900
-#, fuzzy
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr "--strip-trailing-cr Hapus trailing carriage return pada input."
-#: src/diff.c:902
-#, fuzzy
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr "--binary Baca dan tulis data dalam mode biner."
-#: src/diff.c:905
-#, fuzzy
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
-"-D NAME --ifdef=NAME Output file merge untuk tampilkan `#ifdef NAME' diffs."
+"-D, --ifdef=NAME Output file merge untuk tampilkan `#ifdef NAME' diffs."
-#: src/diff.c:906
-#, fuzzy
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
"--GTYPE-group-format=GFMT Serupa, tapi format input kelompok GTYPE dg GFMT. "
-#: src/diff.c:907
-#, fuzzy
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr "--line-format=LFMT Serupa, tapi format seluruh baris input dg LFMT."
-#: src/diff.c:908
-#, fuzzy
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
"--LTYPE-line-format=LFMT Serupa, tapi format baris input LTYPE dg LFMT."
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
+" These format options provide fine-grained control over the output\n"
+" of diff, generalizing -D/--ifdef."
-#: src/diff.c:911
-#, fuzzy
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
-" LTYPE adalah `old', `new', atau `unchanged'. GTYPE adalah LTYPE atau "
-"`changed'."
+" LTYPE adalah 'old', 'new', atau 'unchanged'. GTYPE adalah LTYPE atau "
+"'changed'."
-#: src/diff.c:912
-#, fuzzy
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" L nomor baris terakhir\n"
" N jumlah baris = L-F+1\n"
" E F-1\n"
-" M L+1"
+" M L+1\n"
+" %(A=B?T:E) if A equals B then T else E"
-#: src/diff.c:924
-#, fuzzy
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %l isi baris, tanpa baris baru\n"
" %[-][WIDTH][.[PREC]]{doxX}n printf-style spec untuk nomor baris input"
-#: src/diff.c:928
-#, fuzzy
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'C' karakter tunggal C\n"
" %c'\\OOO' karakter dengan kode oktal OOO"
-#: src/diff.c:934
-#, fuzzy
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr "-d --minimal Usahakan mencari perubahan terkecil."
+msgstr "-d, --minimal Usahakan mencari perubahan terkecil."
-#: src/diff.c:935
-#, fuzzy
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr "--horizon-lines=NUM Pertahankan NUM baris prefiks dan suffiks umum."
-#: src/diff.c:936
-#, fuzzy
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
-"-H --speed-large-files Asumsikan file besar dan banyak sebaran perubahan "
+" --speed-large-files Asumsikan file besar dan banyak sebaran perubahan "
"kecil."
-#: src/diff.c:938
-msgid " --help display this help and exit"
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:967
#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr "--normal Output normal diff."
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
+msgid " --help display this help and exit"
+msgstr " --help display this help and exit"
+
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
-msgstr "-v --version Tampilkan informasi versi."
+msgstr "-v, --version Tampilkan informasi versi."
-#: src/diff.c:941
+#: src/diff.c:974
#, fuzzy
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
-"FILES adalah `FILE1 FILE2' atau `DIR1 DIR2' atau `DIR FILE...' atau `FILE... "
+"FILES adalah 'FILE1 FILE2' atau 'DIR1 DIR2' atau 'DIR FILE...' atau 'FILE... "
"DIR'."
-#: src/diff.c:942
-#, fuzzy
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
"Bila --from-file atau --to-file diberikan, tidak ada batasan untuk FILES."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
-#, fuzzy
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
-msgstr "Jika sebuah file FILE adalah `-', baca standard input."
+msgstr "Jika sebuah file FILE adalah '-', baca standard input."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Penggunaan: %s [OPTION]... FILES\n"
-#: src/diff.c:954
-#, fuzzy
+#: src/diff.c:987
msgid "Compare FILES line by line."
msgstr "Bandingkan file baris per baris"
-#: src/diff.c:988
-#, fuzzy, c-format
+#: src/diff.c:1021
+#, c-format
msgid "conflicting %s option value '%s'"
-msgstr "Nilai option %s konflik dengan `%s'"
+msgstr "Nilai option %s konflik dengan '%s'"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "option gaya output konflik"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "lebar tidak valid '%s'"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Hanya dalam %s: %s\n"
-#: src/diff.c:1192
-#, fuzzy
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
-msgstr "tidak dapat membandingkan `-' dg direktori"
+msgstr "tidak dapat membandingkan '-' dg direktori"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "-D option tidak didukung dg direktori"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Subdirektori sama: %s dan %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "File %s adalah %s sementara file %s adalah %s\n"
-#: src/diff.c:1314
-#, fuzzy, c-format
+#: src/diff.c:1362
+#, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "Berkas %s dan %s berbeda\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "File %s dan %s identik\n"
msgstr "option tidak kompatibel"
#: src/diff3.c:353
-#, fuzzy
msgid "'-' specified for more than one input file"
-msgstr "`-' dispesifikasikan lebih dari satu file input"
+msgstr "'-' dispesifikasikan lebih dari satu file input"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "gagal membaca"
#: src/diff3.c:428
-#, fuzzy
msgid "-A, --show-all output all changes, bracketing conflicts"
-msgstr "-A --show-all Output seluruh perubahan, konflik dalam tanda kurung."
+msgstr "-A, --show-all Output seluruh perubahan, konflik dalam tanda kurung."
#: src/diff3.c:430
-#, fuzzy
msgid ""
"-e, --ed output ed script incorporating changes\n"
" from OLDFILE to YOURFILE into MYFILE"
"MYFILE."
#: src/diff3.c:432
-#, fuzzy
msgid "-E, --show-overlap like -e, but bracket conflicts"
-msgstr "-E --show-overlap Output perubahan unmerge, konflik dl tanda kurung."
+msgstr ""
+"-E, --show-overlap Output perubahan unmerge, konflik dl tanda kurung."
#: src/diff3.c:433
-#, fuzzy
msgid ""
"-3, --easy-only like -e, but incorporate only nonoverlapping "
"changes"
-msgstr "-3 --easy-only Output unmerged perubahan nonoverlap."
+msgstr "-3, --easy-only Output unmerged perubahan nonoverlap."
#: src/diff3.c:434
-#, fuzzy
msgid ""
"-x, --overlap-only like -e, but incorporate only overlapping changes"
-msgstr "-x --overlap-only Tampilkan perubahan yang overlap."
+msgstr "-x, --overlap-only Tampilkan perubahan yang overlap."
#: src/diff3.c:435
msgid "-X like -x, but bracket conflicts"
-msgstr ""
+msgstr "-X like -x, but bracket conflicts"
#: src/diff3.c:436
-#, fuzzy
msgid "-i append 'w' and 'q' commands to ed scripts"
-msgstr "-i Tambah perintah `w' dan `q' ke script ed."
+msgstr "-i Tambah perintah 'w' dan 'q' ke script ed."
#: src/diff3.c:438
msgid ""
"-m, --merge output actual merged file, according to\n"
" -A if no other options are given"
msgstr ""
+"-m, --merge output actual merged file, according to\n"
+" -A if no other options are given"
#: src/diff3.c:441
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Perlakukan seluruh file sebagai teks."
+msgstr "-a, --text Perlakukan seluruh file sebagai teks."
#: src/diff3.c:442
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr "--strip-trailing-cr Hapus trailing carriage return pada input."
#: src/diff3.c:443
-#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
-msgstr "-T --initial-tab Buat tab beraturan dg menambahkan sebuah tab."
+msgstr "-T, --initial-tab Buat tab beraturan dg menambahkan sebuah tab."
#: src/diff3.c:444
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
msgstr "--diff-program=PROGRAM Gunakan PROGRAM untuk membandingkan file."
"-L, --label=LABEL use LABEL instead of file name\n"
" (can be repeated up to three times)"
msgstr ""
+"-L, --label=LABEL use LABEL instead of file name\n"
+" (can be repeated up to three times)"
#: src/diff3.c:448
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help display this help and exit"
#: src/diff3.c:449
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Tampilkan informasi versi."
+msgstr "-v, --version Tampilkan informasi versi."
#: src/diff3.c:458
#, c-format
"and output the actual merged file. For unusual input, this is more\n"
"robust than using ed.\n"
msgstr ""
+"\n"
+"The default output format is a somewhat human-readable representation of\n"
+"the changes.\n"
+"\n"
+"The -e, -E, -x, -X (and corresponding long) options cause an ed script\n"
+"to be output instead of the default.\n"
+"\n"
+"Finally, the -m (--merge) option causes diff3 to do the merge internally\n"
+"and output the actual merged file. For unusual input, this is more\n"
+"robust than using ed.\n"
#: src/diff3.c:482
msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble."
msgid "invalid diff format; invalid change separator"
msgstr "format diff tidak valid; separator perubahan tidak valid"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "format diff tidak valid; baris akhir tidak lengkap"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
-#, fuzzy, c-format
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
+#, c-format
msgid "subsidiary program '%s' could not be invoked"
-msgstr "program subsider `%s' tidak dipanggil"
+msgstr "program subsider '%s' tidak dipanggil"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "format diff tidak valid; karakter leading line tidak tepat"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "kesalahan internal: tipe diff tidak valid dimasukkan ke output"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "file input mengecil"
-#: src/dir.c:158
-#, fuzzy, c-format
+#: src/dir.c:156
+#, c-format
msgid "cannot compare file names '%s' and '%s'"
-msgstr "tidak dapat membandingkan nama file `%s' dan `%s'"
+msgstr "tidak dapat membandingkan nama file '%s' dan '%s'"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: rekursif loop direktori"
msgstr "Thomas Lord"
#: src/sdiff.c:173
-#, fuzzy
msgid ""
"-o, --output=FILE operate interactively, sending output to FILE"
-msgstr ""
-"-o FILE --output=FILE Operasi secara interaktif, kirim output ke FILE."
+msgstr "-o, --output=FILE Operasi secara interaktif, kirim output ke FILE."
#: src/sdiff.c:175
-#, fuzzy
msgid ""
"-i, --ignore-case consider upper- and lower-case to be the same"
-msgstr "-i --ignore-case Abaikan huruf kapital dan huruf kecil."
+msgstr "-i, --ignore-case Abaikan huruf kapital dan huruf kecil."
#: src/sdiff.c:176
-#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
-msgstr "-E --ignore-tab-expansion Abaikan perubahan akibat ekspansi tab."
+msgstr "-E, --ignore-tab-expansion Abaikan perubahan akibat ekspansi tab."
#: src/sdiff.c:177
-#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Abaikan seluruh white space."
+msgstr "-Z, --ignore-trailling-space Abaikan seluruh white space."
#: src/sdiff.c:178
-#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b --ignore-space-change Abaikan perubahan sejumlah white space."
+msgstr "-b, --ignore-space-change Abaikan perubahan sejumlah white space."
#: src/sdiff.c:179
-#, fuzzy
msgid "-W, --ignore-all-space ignore all white space"
msgstr "-W --ignore-all-space Abaikan seluruh white space."
#: src/sdiff.c:180
-#, fuzzy
msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank"
-msgstr "-B --ignore-blank-lines Abaikan perubahan baris kosong."
+msgstr "-B, --ignore-blank-lines Abaikan perubahan baris kosong."
#: src/sdiff.c:181
-#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE"
msgstr ""
-"-I RE --ignore-matching-lines=RE Abaikan perubahan baris yang cocok dg RE."
+"-I, --ignore-matching-lines=RE Abaikan perubahan baris yang cocok dg RE."
#: src/sdiff.c:182
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr "--strip-trailing-cr Hapus trailing carriage return pada input."
#: src/sdiff.c:183
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Perlakukan seluruh file sebagai teks."
+msgstr "-a, --text Perlakukan seluruh file sebagai teks."
#: src/sdiff.c:185
-#, fuzzy
msgid ""
"-w, --width=NUM output at most NUM (default 130) print columns"
-msgstr ""
-"-w NUM --width=NUM Output paling banyak NUM (baku 130) kolom cetakan."
+msgstr "-w, --width=NUM Output paling banyak NUM (baku 130) kolom cetakan."
#: src/sdiff.c:186
-#, fuzzy
msgid ""
"-l, --left-column output only the left column of common lines"
-msgstr "-l --left-column Hanya tampilkan kolom kiri baris yang sama."
+msgstr "-l, --left-column Hanya tampilkan kolom kiri baris yang sama."
#: src/sdiff.c:187
-#, fuzzy
msgid "-s, --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines Jangan tampilkan baris yang sama."
+msgstr "-s, --suppress-common-lines Jangan tampilkan baris yang sama."
#: src/sdiff.c:189
-#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
-msgstr "-t --expand-tabs Ekspansi tab ke spasi dalam output."
+msgstr "-t, --expand-tabs Ekspansi tab ke spasi dalam output."
#: src/sdiff.c:190
-#, fuzzy
msgid ""
" --tabsize=NUM tab stops at every NUM (default 8) print columns"
msgstr "--tabsize=NUM Tab stop adalah setiap NUM (default 8) kolom cetakan."
#: src/sdiff.c:192
-#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr "-d --minimal Usahakan mencari perubahan terkecil."
+msgstr "-d, --minimal Usahakan mencari perubahan terkecil."
#: src/sdiff.c:193
-#, fuzzy
msgid ""
"-H, --speed-large-files assume large files, many scattered small changes"
msgstr ""
-"-H --speed-large-files Asumsikan file besar dan banyak sebaran perubahan "
+"-H, --speed-large-files Asumsikan file besar dan banyak sebaran perubahan "
"kecil."
#: src/sdiff.c:194
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
msgstr "--diff-program=PROGRAM Gunakan PROGRAM untuk membandingkan file."
#: src/sdiff.c:196
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help display this help and exit"
#: src/sdiff.c:197
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Tampilkan informasi versi."
+msgstr "-v, --version Tampilkan informasi versi."
#: src/sdiff.c:206
#, c-format
msgstr "Pemakaian: %s [OPTION]... FILE1 FILE2\n"
#: src/sdiff.c:208
-#, fuzzy
msgid "Side-by-side merge of differences between FILE1 and FILE2."
msgstr "Merge side-by-side beda file."
"v:\tSertakan baris bersama secara verbose.\n"
"q:\tKeluar.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: pilihan '--%s' tidak dikenal\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
#~ msgstr "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
# Italian messages for diffutils.
# Copyright (C) 2004, 2005, 2010 Free Software Foundation, Inc.
# This file is distributed under the same license as the diffutils package.
-# Marco Colombo <m.colombo@ed.ac.uk>, 2004, 2005, 2010, 2011.
+# Marco Colombo <m.colombo@ed.ac.uk>, 2004, 2005, 2010, 2011, 2015.
#
msgid ""
msgstr ""
-"Project-Id-Version: diffutils 3.2\n"
+"Project-Id-Version: diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
-"PO-Revision-Date: 2011-09-14 16:26+0100\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
+"PO-Revision-Date: 2015-08-05 14:57+0100\n"
"Last-Translator: Marco Colombo <m.colombo@ed.ac.uk>\n"
"Language-Team: Italian <tp@lists.linux.it>\n"
"Language: it\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "argomento '%3$s' di %1$s%2$s non valido"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "argomento '%3$s' di %1$s%2$s non valido"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "errore del programma"
msgid "stack overflow"
msgstr "overflow dello stack"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Errore di sistema sconosciuto"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "file normale vuoto"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "file normale"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "directory"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "file speciale a blocchi"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "file speciale a caratteri"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "link simbolico"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "socket"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "coda di messaggi"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semaforo"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "oggetto di memoria condivisa"
# La memoria è tipizzata, non l'oggetto.
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "oggetto di memoria tipizzata"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "file speciale a blocchi"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "file speciale a caratteri"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "file speciale a blocchi"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "file speciale a caratteri"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "file strano"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "file speciale a blocchi"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "socket"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "file strano"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: l'opzione '%s' è ambigua; alternative:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: l'opzione '-W %s' è ambigua\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: l'opzione '--%s' non accetta argomenti\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: l'opzione '%c%s' non accetta argomenti\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: l'opzione '%s' richiede un argomento\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: opzione '--%s' non riconosciuta\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: opzione '%c%s' non riconosciuta\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: opzione non valida -- '%c'\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: l'opzione richiede un argomento -- '%c'\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: l'opzione '-W %s' è ambigua\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: l'opzione '-W %s' non accetta argomenti\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: l'opzione '-W %s' richiede un argomento\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "'"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr "'"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Successo"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Nessuna corrispondenza"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Espressione regolare non valida"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Carattere di collazione non valido"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Nome della classe di caratteri non valido"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Backslash finale"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Riferimento all'indietro non valido"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "[ o [^ non accoppiata"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "( o \\( non accoppiata"
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "\\{ non accoppiata"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Contenuto di \\{\\} non valido"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Fine dell'intervallo non valida"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Memoria esaurita"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "L'espressione regolare precedente non è valida"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Fine prematura dell'espressione regolare"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "L'espressione regolare è troppo grande"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr ") o \\) non accoppiata"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Non c'è una espressione regolare precedente"
msgstr "riapertura di %s in modalità %s non riuscita"
#: lib/xstrtol-error.c:63
-#, fuzzy, c-format
+#, c-format
msgid "invalid %s%s argument '%s'"
msgstr "argomento '%3$s' di %1$s%2$s non valido"
#: lib/xstrtol-error.c:68
-#, fuzzy, c-format
+#, c-format
msgid "invalid suffix in %s%s argument '%s'"
msgstr "suffisso '%3$s' non valido nell'argomento di %1$s%2$s"
#: lib/xstrtol-error.c:72
-#, fuzzy, c-format
+#, c-format
msgid "%s%s argument '%s' too large"
msgstr "argomento '%3$s' di %1$s%2$s troppo grande"
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr "Aiuto sull'uso di software GNU: <http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "I file %s e %s sono diversi\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "I file binari %s e %s sono diversi\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Manca newline alla fine del file"
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
-#, fuzzy, c-format
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
+#, c-format
msgid "Try '%s --help' for more information."
msgstr "Usare '%s --help' per maggiori informazioni."
#: src/cmp.c:137
-#, fuzzy, c-format
+#, c-format
msgid "invalid --ignore-initial value '%s'"
msgstr "Valore '%s' non valido per --ignore-initial"
msgid "options -l and -s are incompatible"
msgstr "le opzioni -l e -s sono incompatibili"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "scrittura non riuscita"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "standard output"
"I valori opzionali SKIP1 e SKIP2 indicano il numero di byte da saltare\n"
"all'inizio di ogni file (zero se non indicato)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
"GB 1,000,000,000, G 1,073,741,824, e così via per T, P, E, Z, Y."
#: src/cmp.c:194
-#, fuzzy
msgid "If a FILE is '-' or missing, read standard input."
msgstr "Se un FILE è '-' o è mancante, legge lo standard input."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"Il codice d'uscita è 0 se gli input sono identici, 1 se sono differenti, 2 "
"quando si riscontrano dei problemi."
#: src/cmp.c:240
-#, fuzzy, c-format
+#, c-format
msgid "invalid --bytes value '%s'"
msgstr "valore '%s' non valido per --bytes"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
-#, fuzzy, c-format
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
+#, c-format
msgid "missing operand after '%s'"
msgstr "operando mancante dopo '%s'"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
-#, fuzzy, c-format
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
+#, c-format
msgid "extra operand '%s'"
msgstr "extra operando '%s'"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s differenza: byte %s, riga %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s differenza: byte %s, riga %s è %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: EOF in %s\n"
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
-#, fuzzy, c-format
+#: src/diff.c:351
+#, c-format
msgid "invalid context length '%s'"
msgstr "lunghezza di contesto '%s' non valida"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "paginazione non supportata su questo host"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "troppe opzioni di etichetta"
-#: src/diff.c:514
-#, fuzzy, c-format
+#: src/diff.c:526
+#, c-format
msgid "invalid width '%s'"
msgstr "larghezza '%s' non valida"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "opzioni di larghezza in conflitto"
-#: src/diff.c:543
-#, fuzzy, c-format
+#: src/diff.c:555
+#, c-format
msgid "invalid horizon length '%s'"
msgstr "lunghezza di orizzonte '%s' non valida"
-#: src/diff.c:598
-#, fuzzy, c-format
+#: src/diff.c:611
+#, c-format
msgid "invalid tabsize '%s'"
msgstr "lunghezza di tabulazione '%s' non valida"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "opzioni di lunghezza di tabulazione in conflitto"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "--from-file e --to-file specificati entrambi"
-#: src/diff.c:854
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
msgstr " --normal Mostra una diff normale (predefinito)"
-#: src/diff.c:855
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
msgstr "-q, --brief Segnala solo se i file sono diversi"
-#: src/diff.c:856
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
msgstr "-s, --report-identical-files Segnala quando due file sono identici"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
"-c, -C NUM, --context[=NUM] Mostra NUM righe di contesto copiato\n"
" (predefinito 3)"
-#: src/diff.c:858
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"-u, -U NUM, --unified[=NUM] Mostra NUM righe di contesto unificato\n"
" (predefinito 3)"
-#: src/diff.c:859
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
msgstr "-e, --ed Mostra uno script per ed"
-#: src/diff.c:860
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
msgstr "-n, --rcs Mostra una diff in formato RCS"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr "-y, --side-by-side Output in due colonne"
-#: src/diff.c:862
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"-W, --width=NUM Mostra al massimo NUM colonne (predefinito 130)"
# Lo strano allineamento della seconda riga è corretto.
-#: src/diff.c:863
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
"righe\n"
" in comune"
-#: src/diff.c:864
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
msgstr " --suppress-common-lines Non mostra le righe in comune"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
"-p, --show-c-function Mostra in quale funzione C si trova ogni\n"
" differenza"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
"-F, --show-function-line=ER Mostra la riga più recente che corrisponde\n"
" all'espressione regolare ER"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
" --label ETICHETTA Usa ETHICHETTA invece del nome del file\n"
" (può essere ripetuta)"
-#: src/diff.c:871
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr ""
"-t, --expand-tabs Espande le tabulazioni in spazi nell'output"
-#: src/diff.c:872
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
"-T, --initial-tab Allinea le tabulazioni usando una tabulazione"
-#: src/diff.c:873
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
" --tabsize=NUM Stop di tabulazione ogni NUM colonne\n"
" (predefinito 8)"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
" --suppress-blank-empty Rimuove spazi e tabulazioni prima di righe\n"
" di output vuote"
-#: src/diff.c:875
-#, fuzzy
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
"-l, --paginate Passa l'output attraverso 'pr' per impaginarlo"
-#: src/diff.c:877
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
"-r, --recursive Confronta ricorsivamente ogni sottodirectory\n"
" incontrata"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
-msgstr ""
+msgstr " --no-dereference Non segue i collegamenti simbolici"
-#: src/diff.c:879
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
msgstr "-N, --new-file Considera i file mancanti come vuoti"
-#: src/diff.c:880
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
" --unidirectional-new-file Considera i file mancanti in prima posizione\n"
" come vuoti"
-#: src/diff.c:881
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
" --ignore-file-name-case Ignora differenze in maiuscole e minuscole\n"
" confrontando nomi di file"
-#: src/diff.c:882
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
" --no-ignore-file-name-case Considera differenze in maiuscole e "
"minuscole\n"
" confrontando nomi di file"
-#: src/diff.c:883
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr ""
"-x, --exclude=MODELLO Esclude i file che corrispondono al MODELLO"
-#: src/diff.c:884
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
"-X, --exclude-from=FILE Esclude i file che corrispondono a qualsiasi\n"
" modello in FILE"
-#: src/diff.c:885
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
"-S, --starting-file=FILE Comincia da FILE quando si confrontano "
"directory"
-#: src/diff.c:886
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
" --from-file=FILE1 Confronta FILE1 con tutti gli operandi;\n"
" FILE1 può essere una directory"
-#: src/diff.c:888
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
" --to-file=FILE2 Confronta tutti gli operandi con FILE2;\n"
" FILE2 può essere una directory"
-#: src/diff.c:891
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
"nel\n"
" contenuto del file"
-#: src/diff.c:892
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
"-E, --ignore-tab-expansion Ignora differenze causate dall'espansione\n"
" delle tabulazioni"
-#: src/diff.c:893
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr "-Z, --ignore-trailing-space Ignora gli spazi a fine riga"
-#: src/diff.c:894
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr "-b, --ignore-space-change Ignora differenze nel numero di spazi"
-#: src/diff.c:895
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w, --ignore-all-space Ignora tutti gli spazi"
-#: src/diff.c:896
-#, fuzzy
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr "-B, --ignore-blank-lines Ignora differenze in righe vuote"
# Lo strano allineamento della seconda riga è corretto
-#: src/diff.c:897
-#, fuzzy
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I, --ignore-matching-lines=ER Ignora differenze che corrispondono\n"
" all'espressione regolare ER"
-#: src/diff.c:899
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
msgstr "-a, --text Considera tutti i file come testo"
-#: src/diff.c:900
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
" --strip-trailing-cr Elimina i ritorni a capo a fine riga in input"
-#: src/diff.c:902
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr " --binary Legge e scrive in modalità binaria"
# #endif /* NOME */
# Testo comune.
#
-#: src/diff.c:905
-#, fuzzy
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
"-D, --ifdef=NOME Mostra le differenze in un unico file usando\n"
" '#ifdef NOME'"
-#: src/diff.c:906
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
" --GTYPE-group-format=GFMT Simile, ma formatta i gruppi di input GTYPE\n"
" con GFMT"
-#: src/diff.c:907
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
" --line-format=LFMT Formatta tutte le righe di input con LFMT"
-#: src/diff.c:908
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
" --LTYPE-line-format=LFMT Formatta le righe di input LTYPE con LFMT"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
" Queste opzioni di formato forniscono un controllo preciso dell'output di\n"
" diff, generalizzando -D/--ifdef."
-#: src/diff.c:911
-#, fuzzy
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr " LTYPE è 'old', 'new', o 'unchanged'. GTYPE è LTYPE o 'changed'."
-#: src/diff.c:912
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" M L+1\n"
" %(A=B?T:E) se A è uguale a B allora T, altrimenti E"
-#: src/diff.c:924
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %[-][LARGHEZZA][.[PREC]]{doxX}n formato in stile printf del numero\n"
" di riga di input"
-#: src/diff.c:928
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO' il carattere con codice ottale OOO\n"
" C il carattere C (altri caratteri rappresentano se stessi)"
-#: src/diff.c:934
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr "-d, --minimal Minimizza il numero di differenze"
-#: src/diff.c:935
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
" --horizon-lines=NUM Mantiene NUM righe di prefisso e suffisso comune"
-#: src/diff.c:936
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
" --speed-large-files Assume file grandi e tante piccole differenze"
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr " --normal Mostra una diff normale (predefinito)"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr " --help Mostra questo aiuto ed esce"
-#: src/diff.c:939
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
msgstr ""
"-v, --version Stampa le informazioni sulla versione ed esce"
-#: src/diff.c:941
+#: src/diff.c:974
#, fuzzy
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"FILES sono 'FILE1 FILE2' o 'DIR1 DIR2' o 'DIR FILE...' o 'FILE... DIR'."
-#: src/diff.c:942
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
"Se --from-file o --to-file sono usati, non ci sono restrizioni per FILES."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
-#, fuzzy
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
msgstr "Se un FILE è '-', legge lo standard input."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Uso: %s [OPZIONE]... FILES\n"
-#: src/diff.c:954
+#: src/diff.c:987
msgid "Compare FILES line by line."
msgstr "Confronta i file riga per riga."
-#: src/diff.c:988
-#, fuzzy, c-format
+#: src/diff.c:1021
+#, c-format
msgid "conflicting %s option value '%s'"
msgstr "conflitto nell'opzione %s: valore '%s'"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "opzioni di stile di output in conflitto"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "larghezza '%s' non valida"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Solo in %s: %s\n"
-#: src/diff.c:1192
-#, fuzzy
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
msgstr "impossibile confrontare '-' con una directory"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "opzione -D non supportata con directory"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Sottodirectory in comune: %s e %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "File %s è un %s mentre file %s è un %s\n"
-#: src/diff.c:1314
-#, fuzzy, c-format
+#: src/diff.c:1362
+#, c-format
msgid "Symbolic links %s and %s differ\n"
-msgstr "I file %s e %s sono diversi\n"
+msgstr "I collegamenti simbolici %s e %s sono diversi\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "I file %s e %s sono identici\n"
msgstr "opzioni incompatibili"
#: src/diff3.c:353
-#, fuzzy
msgid "'-' specified for more than one input file"
msgstr "'-' specificato per più di un file di input"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "lettura fallita"
msgstr "-X Come -x, ma tiene separati i conflitti"
#: src/diff3.c:436
-#, fuzzy
msgid "-i append 'w' and 'q' commands to ed scripts"
msgstr ""
"-i Aggiunge i comandi 'w' e 'q' agli script per ed"
msgid "invalid diff format; invalid change separator"
msgstr "formato di diff non valido; separatore di modifica non valido"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "formato di diff non valido; ultima riga incompleta"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
-#, fuzzy, c-format
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
+#, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "programma accessorio '%s' non può essere chiamato"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "formato di diff non valido; caratteri incorretti a inizio riga"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "errore interno: il tipo di diff passato all'output non è valido"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "il file di input è rimpicciolito"
-#: src/dir.c:158
-#, fuzzy, c-format
+#: src/dir.c:156
+#, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "impossibile confrontare i nomi dei file '%s' e '%s'"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: ciclo ricorsivo tra le directory"
# Lo strano allineamento della seconda riga è corretto
#: src/sdiff.c:181
-#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE"
msgstr ""
"-I, --ignore-matching-lines=ER Ignora differenze che corrispondono\n"
"s:\tInclude silenziosamente le righe in comune.\n"
"v:\tInclude prolissamente le righe in comune.\n"
"q:\tEsce.\n"
+
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: opzione '--%s' non riconosciuta\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
msgstr ""
"Project-Id-Version: GNU diffutils 3.2\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2011-09-08 14:13+0900\n"
"Last-Translator: Yasuaki Taniguchi <yasuakit@gmail.com>\n"
"Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "引数 `%3$s' に対して %1$s%2$s が無効です"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "引数 `%3$s' に対して %1$s%2$s が無効です"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "プログラムエラー"
msgid "stack overflow"
msgstr "スタックオーバーフロー"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "不明なシステムエラー"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "通常の空ファイル"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "通常ファイル"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "ディレクトリー"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "ブロックスペシャルファイル"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "キャラクタスペシャルファイル"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "シンボリックリンク"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "ソケット"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "メッセージキュー"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "セマフォ"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "共有メモリオブジェクト"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "型付メモリオブジェクト"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "ブロックスペシャルファイル"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "キャラクタスペシャルファイル"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "ブロックスペシャルファイル"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "キャラクタスペシャルファイル"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "不明なファイル"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "ブロックスペシャルファイル"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "ソケット"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "不明なファイル"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: オプション '%s' は曖昧です。次のものが可能です:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: オプション '-W %s' は曖昧です\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: オプション '--%s' は引数を取ることができません\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: オプション '%c%s' は引数を取ることができません\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: オプション '--%s' は引数が必要です\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: オプション '--%s' を認識できません\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: オプション '%c%s' を認識できません\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: 無効なオプション -- '%c'\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: オプションには引数が必要です -- '%c'\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: オプション '-W %s' は曖昧です\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: オプション '-W %s' は引数を取ることができません\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: オプション '-W %s' は引数が必要です\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "`"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr "'"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "成功です"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "一致しません"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "無効な正規表現です"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "無効な照合文字です"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "無効な文字クラス名です"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "終端のバックスラッシュ"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "無効な前方参照です"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "[ または [^ が不一致です"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "( または \\( が不一致です"
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "\\{ が不一致です"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "\\{\\} の中身が無効です"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "無効な範囲終了です"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "メモリを使い果たしました"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "無効な前方正規表現です"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "正規表現が途中で終了しました"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "正規表現が大きすぎます"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr ") または \\) が不一致です"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "以前に正規表現がありません"
msgstr ""
"GNU ソフトウェアを使用する際の一般的なヘルプ: <http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "ファイル %s と %s は異なります\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "バイナリーファイル %s と%s は異なります\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "ファイル末尾に改行がありません"
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, fuzzy, c-format
msgid "Try '%s --help' for more information."
msgstr "詳しくは`%s --help'を実行してください。"
msgid "options -l and -s are incompatible"
msgstr "オプション -l と -s は同時に指定できません"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "書き込みに失敗しました"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "標準出力"
"オプションの SKIP1 と SKIP2 はそれぞれのファイルの先頭からスキップする\n"
"バイト数を指定します(デフォルトは 0)。"
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr "FILE が `-' または指定しない場合、標準入力から読み込みます。"
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"終了コードは、入力ファイルが同じ場合は 0、入力ファイルが異なる場合は 1、\n"
msgid "invalid --bytes value '%s'"
msgstr "無効な --bytes の値 `%s' です。"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, fuzzy, c-format
msgid "missing operand after '%s'"
msgstr "`%s' の後に被演算子がありません"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, fuzzy, c-format
msgid "extra operand '%s'"
msgstr "余分な被演算子 `%s' です。"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s 異なります: バイト %s、行 %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s 異なります: バイト %s、行 %s %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: %s でファイル終端 (EOF) に達しました\n"
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
+#: src/diff.c:351
#, fuzzy, c-format
msgid "invalid context length '%s'"
msgstr "無効な前後の行数 `%s' です"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "このホストではページ割付けをサポートしません"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "ファイル・ラベル・オプションが多すぎます"
-#: src/diff.c:514
+#: src/diff.c:526
#, fuzzy, c-format
msgid "invalid width '%s'"
msgstr "無効な幅 `%s' です"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "幅のオプションが競合しています"
-#: src/diff.c:543
+#: src/diff.c:555
#, fuzzy, c-format
msgid "invalid horizon length '%s'"
msgstr "無効な横幅 `%s' です"
-#: src/diff.c:598
+#: src/diff.c:611
#, fuzzy, c-format
msgid "invalid tabsize '%s'"
msgstr "無効なタブ幅 `%s' です"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "タブ幅のオプションが競合しています"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "--from-file および --to-file の両方が指定されています"
-#: src/diff.c:854
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
msgstr " --normal 通常の diff を出力する (デフォルト)"
-#: src/diff.c:855
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
msgstr "-q, --brief ファイルが異なるかどうかのみ表示する"
-#: src/diff.c:856
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
msgstr ""
"-s, --report-identical-files 両方のファイルが同一であるかどうかのみ表示する"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
"-c, -C NUM, --context[=NUM] コンテキスト diff 形式で前後 NUM (デフォルト: "
"3) 行を表示する"
-#: src/diff.c:858
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"-u, -U NUM, --unified[=NUM] ユニファイド diff 形式で前後 NUM (デフォルト: "
"3) 行を表示する"
-#: src/diff.c:859
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
msgstr "-e, --ed ed スクリプトを出力する"
-#: src/diff.c:860
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
msgstr "-n, --rcs RCS 形式の diff を出力する"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr "-y, --side-by-side 出力を2列にする"
-#: src/diff.c:862
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"-W, --width=NUM 表示する列を最大 NUM (デフォルト: 130) 列にする"
-#: src/diff.c:863
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr " --left-column 共通行は左側の列のみ表示する"
-#: src/diff.c:864
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
msgstr " --suppress-common-lines 共通行の出力を抑止する"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr "-p, --show-c-function 変更がある C 関数を表示する"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr "-F, --show-function-line=RE RE に一致する最も近い行を表示する"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
" --label LABEL ファイル名の代わりに LABEL を使用する\n"
" (繰り返し指定できます)"
-#: src/diff.c:871
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr "-t, --expand-tabs 出力時にタブをスペースに展開する"
-#: src/diff.c:872
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
"-T, --initial-tab タブで始まる行は、前にタブを置いてそろえる"
-#: src/diff.c:873
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
" --tabsize=NUM タブ幅を NUM (デフォルト: 8) 列に設定する"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
" --suppress-blank-empty 空の出力行の前後ではスペースまたはタブを抑止す"
"る"
-#: src/diff.c:875
+#: src/diff.c:904
#, fuzzy
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
"-l, --paginate ページ割り付けを行うために `pr' を通して出力す"
"る"
-#: src/diff.c:877
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr "-r, --recursive サブディレクトリーを再帰的に比較する"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr ""
-#: src/diff.c:879
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
msgstr ""
"-N, --new-file 存在しないファイルを空ファイルとして扱う"
-#: src/diff.c:880
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
" --unidirectional-new-file 存在しない最初のファイルを空ファイルとして扱"
"う"
-#: src/diff.c:881
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr " --ignore-file-name-case ファイル名の大文字と小文字を区別しない"
-#: src/diff.c:882
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr " --no-ignore-file-name-case ファイル名の大文字と小文字を区別する"
-#: src/diff.c:883
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr "-x, --exclude=PAT PAT に一致するファイルを除外する"
-#: src/diff.c:884
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
"-X, --exclude-from=FILE FILE 内のパターンに一致するファイルを除外する"
-#: src/diff.c:885
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
"-S, --starting-file=FILE ディレクトリーを比較する時に FILE から始める"
-#: src/diff.c:886
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
" --from-file=FILE1 すべての被演算子と FILE1 を比較する\n"
" FILE1 はディレクトリーでもよい"
-#: src/diff.c:888
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
" --to-file=FILE2 すべての被演算子を FILE2 を比較する\n"
" FILE2 はディレクトリーでもよい"
-#: src/diff.c:891
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
"-i, --ignore-case ファイル内容の比較時に大文字と小文字を区別し"
"ない"
-#: src/diff.c:892
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr "-E, --ignore-tab-expansion タブ展開によって発生する違いを無視する"
-#: src/diff.c:893
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr "-Z, --ignore-trailing-space 行末にあるスペースを無視する"
-#: src/diff.c:894
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr "-b, --ignore-space-change スペース数により生じる違いを無視する"
-#: src/diff.c:895
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w, --ignore-all-space すべてのスペースを無視する"
-#: src/diff.c:896
+#: src/diff.c:925
#, fuzzy
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr ""
"-B, --ignore-blank-lines 空白類文字だけの行により生じる違いを無視する"
-#: src/diff.c:897
+#: src/diff.c:926
#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I, --ignore-matching-lines=RE RE と一致するすべての行の違いを無視する"
-#: src/diff.c:899
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
msgstr "-a, --text すべてのファイルをテキストとして扱う"
-#: src/diff.c:900
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
" --strip-trailing-cr 入力から CR (キャリッジリターン) を除去する"
-#: src/diff.c:902
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr " --binary バイナリーモードでデータを読み書きする"
-#: src/diff.c:905
+#: src/diff.c:934
#, fuzzy
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
"-D, --ifdef=NAME パッチ適用時に `#ifdef NAME' で併合されるよう"
"に差分を出力する"
-#: src/diff.c:906
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr " --GTYPE-group-format=GFMT GTYPE の入力グループを GFMT で整形する"
-#: src/diff.c:907
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr " --line-format=LFMT すべての入力行を LFMT で整形する"
-#: src/diff.c:908
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr " --LTYPE-line-format=LFMT LTYPE 入力行を LFMT で整形する"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
"に\n"
" 見えるように制御するために提供されます。"
-#: src/diff.c:911
+#: src/diff.c:940
#, fuzzy
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" LTYPE は `old'、`new'、または`unchanged'です。GTYPE は LTYPE または "
"`changed' です。"
-#: src/diff.c:912
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" M L+1\n"
" %(A=B?T:E) A と B が等しい場合は T、等しくない場合は E"
-#: src/diff.c:924
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %l 行末にあるすべての種類の改行文字を除いた行の内容\n"
" %[-][WIDTH][.[PREC]]{doxX}n printf 書式の入力行"
-#: src/diff.c:928
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO' 八進数コード OOO\n"
" C 文字 C (他の文字も同様に表す)"
-#: src/diff.c:934
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr "-d, --minimal 差分の大きさが最小となるように違いを検出する"
-#: src/diff.c:935
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr " --horizon-lines=NUM 差分の前後にある共通部分を NUM 行保持する"
-#: src/diff.c:936
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
" --speed-large-files 巨大なファイルに小さな差分が分散していると仮定する"
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr " --normal 通常の diff を出力する (デフォルト)"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr " --help このヘルプを表示して終了する"
-#: src/diff.c:939
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
msgstr "-v, --version バージョン情報を表示して終了する"
-#: src/diff.c:941
+#: src/diff.c:974
#, fuzzy
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"FILES は `FILE1 FILE2'、`DIR1 DIR2' 、`DIR FILE...'、または `FILE... DIR' で"
"す。"
-#: src/diff.c:942
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
"--from-file または --to-file が与えられた場合、FILE に制限はありません。"
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
#, fuzzy
msgid "If a FILE is '-', read standard input."
msgstr "FILE が `-' の場合、標準入力から読み込みます。"
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "使用法: %s [OPTION]... FILES\n"
-#: src/diff.c:954
+#: src/diff.c:987
msgid "Compare FILES line by line."
msgstr "FILES を行ごとに比較します。"
-#: src/diff.c:988
+#: src/diff.c:1021
#, fuzzy, c-format
msgid "conflicting %s option value '%s'"
msgstr "%s オプションの値 `%s' が競合しています"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "出力形式オプションが競合しています"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "無効な幅 `%s' です"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "%s のみに存在: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
#, fuzzy
msgid "cannot compare '-' to a directory"
msgstr "`-' とディレクトリーは比較できません"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "-D オプションはディレクトリーにはサポートされません"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "共通のサブディレクトリー: %s と %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "ファイル %s は %s です。一方、ファイル %s は %s です\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, fuzzy, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "ファイル %s と %s は異なります\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "ファイル %s と %s は同一です\n"
msgid "'-' specified for more than one input file"
msgstr "入力ファイルとして `-' が複数回指定されています"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "読み込みに失敗しました"
msgid "invalid diff format; invalid change separator"
msgstr "無効な差分形式です。無効な変更区切りです"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "無効な差分形式です。最後の行が不完全です"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, fuzzy, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "下位プログラム `%s' が起動できません"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "無効な差分形式です。行の先頭文字が誤っています"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "内部エラー: 無効な差分型が出力に渡されました"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "入力ファイルが小さくなりました"
-#: src/dir.c:158
+#: src/dir.c:156
#, fuzzy, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "ファイル `%s' と `%s' を比較できません"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: ディレクトリーが再帰的にループしています"
"v: 共通行を明示して含める。\n"
"q: 終了する。\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: オプション '--%s' を認識できません\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
#~ msgstr "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
# Latvian translation of diffutils.
# Copyright (C) 2009 Free Software Foundation, Inc.
# This file is distributed under the same license as the diffutils package.
-# Rihards Priedītis <rprieditis@gmail.com>, 2009, 2010.
#
+# Rihards Priedītis <rprieditis@gmail.com>, 2009, 2010.
+# Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>, 2014.
msgid ""
msgstr ""
-"Project-Id-Version: diffutils-3.0\n"
+"Project-Id-Version: diffutils-3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
-"PO-Revision-Date: 2010-07-07 11:28+0100\n"
-"Last-Translator: Rihards Priedītis <rprieditis@gmail.com>\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
+"PO-Revision-Date: 2014-04-20 15:28+0300\n"
+"Last-Translator: Rihards Prieditis <rprieditis@gmail.com>\n"
"Language-Team: Latvian <translation-team-lv@lists.sourceforge.net>\n"
"Language: lv\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : "
"2);\n"
+"X-Generator: Lokalize 1.5\n"
+
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "nederīgs %s%s arguments “%s”"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "nederīgs %s%s arguments “%s”"
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgid "stack overflow"
msgstr "steka pārplūšana"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Nezināma sistēmas kļūda"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
-msgstr "parasts tukšs fails"
+msgstr "parasta tukša datne"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
-msgstr "parasts fails"
+msgstr "parasta datne"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "direktorija"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "īpašais bloka fails"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "īpašaias rakstzīmes fails"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "simboliskā saite"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "sokets"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
-msgstr "ziņu rinda"
+msgstr "ziņojumu rinda"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semafors"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "koplietots atmiņas objekts"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "tipa atmiņas objekts"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "īpaša bloka datne"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "īpaša rakstzīmes datne"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "īpaša bloka datne"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "īpaša rakstzīmes datne"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "dīvaina datne"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "īpaša bloka datne"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "sokets"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
-msgstr "dīvains fails"
+msgstr "dīvaina datne"
-#: lib/getopt.c:547 lib/getopt.c:576
-#, fuzzy, c-format
+#: lib/getopt.c:575 lib/getopt.c:604
+#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
-msgstr "%s: opcija \"%s\" ir divdomīga\n"
+msgstr "%s: opcija “%s” nav viennozīmīga, iespējas:"
+
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: opcija “-W %s” ir divdomīga\n"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
-msgstr "%s: opcija \"--%s\" neatļauj argumentu\n"
+msgstr "%s: opcija “--%s” neatļauj argumentu\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
-msgstr "%s: opcija \"%c%s\" neatļauj argumentu\n"
+msgstr "%s: opcija “%c%s” neatļauj argumentu\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
-msgstr "%s: opcijai \"%s\" nepieciešams arguments\n"
+msgstr "%s: opcijai “--%s” nepieciešams arguments\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
-msgstr "%s: neatpazīta opcija \"--%s\"\n"
+msgstr "%s: neatpazīta opcija “--%s”\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
-msgstr "%s: neatpzīta opcija \"%c%s\"\n"
+msgstr "%s: neatpazīta opcija “%c%s”\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
-msgstr "%s: nderīga opcija -- \"%c\"\n"
+msgstr "%s: nederīga opcija -- “%c”\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
-msgstr "%s: opcijai nepieciešams arguments -- \"%c\"\n"
+msgstr "%s: opcijai nepieciešams arguments -- “%c”\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
-msgstr "%s: opcija \"-W %s\" ir divdomīga\n"
+msgstr "%s: opcija “-W %s” ir divdomīga\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
-msgstr "%s: opcija \"-W %s\" neatļauj argumentu\n"
+msgstr "%s: opcija “-W %s” neatļauj argumentu\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
-msgstr "%s: opcijai \"-W %s\" nepieciešams arguments\n"
+msgstr "%s: opcijai “-W %s” nepieciešams arguments\n"
#. TRANSLATORS:
#. Get translations for open and closing quotation marks.
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
-msgstr "\""
+msgstr "“"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
-msgstr "\""
+msgstr "”"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Veiksmīgi"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
-msgstr "Nav sakritību"
+msgstr "Nav atbilstību"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Nederīga regulārā izteiksme"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Nederīga salīdzināmā rakstzīme"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Nederīgs rakstzīmju klases nosaukums"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
-msgstr "Atkārtojošās otrādās slīpsvītras"
+msgstr "Sekojošās otrādās slīpsvītras"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
-msgstr "Nederīga aizmugures atsauce"
+msgstr "Nederīga atpakaļ norāde"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
-msgstr "Nesakrītošs [ vao [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
+msgstr "Nesakrītošs [ vai [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Nesakrītošs ( vai \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Nesakrītošs \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
-msgstr "Nederīgs saturs iekš \\{\\}"
+msgstr "Nederīgs \\{\\} saturs"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Nederīgas apgabala beigas"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
-msgstr "Izskausta atmiņa"
+msgstr "Atmiņa izsmelta"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Nederīga iepriekšējā regulārā izteiksme"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Priekšlaicīgas beigas regulārai izteiksmei"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Pārāk liela regulārā izteiksme"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
-msgstr "Nesakrītošs ) vai \\)"
+msgstr "Nav atbilstoša ) vai \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Nav iepriekšējas regulārās izteiksmes"
#: lib/xalloc-die.c:34
msgid "memory exhausted"
-msgstr "atmiņa izskausta"
+msgstr "atmiņa izsmelta"
#: lib/xfreopen.c:35
msgid "stdin"
#: lib/xfreopen.c:38
msgid "unknown stream"
-msgstr "nezināma plūsma"
+msgstr "nezināma straume"
#: lib/xfreopen.c:39
#, c-format
msgstr "neizdevās atkārtoti atvērt %s režīmā %s"
#: lib/xstrtol-error.c:63
-#, fuzzy, c-format
+#, c-format
msgid "invalid %s%s argument '%s'"
-msgstr "nederīgs %s%s arguments \"%s\""
+msgstr "nederīgs %s%s arguments “%s”"
#: lib/xstrtol-error.c:68
-#, fuzzy, c-format
+#, c-format
msgid "invalid suffix in %s%s argument '%s'"
-msgstr "nederīgs piedēklis iekš %s%s argumenta \"%s\""
+msgstr "nederīgs piedēklis %s%s argumentā “%s”"
#: lib/xstrtol-error.c:72
-#, fuzzy, c-format
+#, c-format
msgid "%s%s argument '%s' too large"
-msgstr "%s%s arguments \"%s\" ir pārak liels"
+msgstr "%s%s arguments “%s” ir pārāk liels"
#: lib/version-etc.c:74
#, c-format
"\n"
"Licence GPLv3+: GNU GPL versija 3 vai vēlāka <http://gnu.org/licenses/gpl."
"html>.\n"
-"Šī ir brīva programatūra: jums ir brīvība mainīt un izplatīt to.\n"
-"NAV GARANTIJAS, līdz likuma atļautajam līmenim.\n"
+"Šī ir brīva programmatūra: jums ir brīvība to mainīt un izplatīt.\n"
+"Tai NAV GARANTIJAS, cik to pieļauj likums.\n"
"\n"
#. TRANSLATORS: %s denotes an author name.
#: lib/version-etc.c:106
#, c-format
msgid "Written by %s and %s.\n"
-msgstr "Sarkstīja %s un %s.\n"
+msgstr "Sarakstīja %s un %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#: lib/version-etc.c:110
#, c-format
msgid "Written by %s, %s, and %s.\n"
-msgstr "Sarkstīja %s, %s un %s\n"
+msgstr "Sarakstīja %s, %s un %s\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"Written by %s, %s, %s,\n"
"and %s.\n"
msgstr ""
-"Sarkstīja %s, %s, %s\n"
+"Sarakstīja %s, %s, %s\n"
"un %s\n"
#. TRANSLATORS: Each %s denotes an author name.
"Written by %s, %s, %s,\n"
"%s, and %s.\n"
msgstr ""
-"Sarkstīja %s, %s, %s,\n"
+"Sarakstīja %s, %s, %s,\n"
"%s un %s\n"
#. TRANSLATORS: Each %s denotes an author name.
"Written by %s, %s, %s,\n"
"%s, %s, and %s.\n"
msgstr ""
-"Sarkstīja %s, %s, %s,\n"
+"Sarakstīja %s, %s, %s,\n"
"%s, %s un %s\n"
#. TRANSLATORS: Each %s denotes an author name.
"Written by %s, %s, %s,\n"
"%s, %s, %s, and %s.\n"
msgstr ""
-"Sarkstīja %s, %s, %s,\n"
+"Sarakstīja %s, %s, %s,\n"
"%s, %s, %s un %s\n"
#. TRANSLATORS: Each %s denotes an author name.
"%s, %s, %s, %s,\n"
"and %s.\n"
msgstr ""
-"Sarkstīja %s, %s, %s,\n"
+"Sarakstīja %s, %s, %s,\n"
"%s,%s, %s, %s,\n"
"un %s.\n"
"%s, %s, %s, %s,\n"
"%s, and %s.\n"
msgstr ""
-"Sarkstīja %s, %s, %s,\n"
+"Sarakstīja %s, %s, %s,\n"
"%s,%s, %s, %s,\n"
"%s un %s.\n"
"%s, %s, %s, %s,\n"
"%s, %s, and others.\n"
msgstr ""
-"Sarkstīja %s, %s, %s,\n"
+"Sarakstīja %s, %s, %s,\n"
"%s,%s, %s, %s,\n"
"%s, %s un citi.\n"
#: lib/version-etc.c:256
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr ""
-"Vispārēja palīdzība izmantojot GNU programmatūru: <http://www.gnu.org/"
+"Vispārēja palīdzība, izmantojot GNU programmatūru: <http://www.gnu.org/"
"gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
-msgstr "Faili %s un %s atšķiras\n"
+msgstr "Datnes %s un %s atšķiras\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
-msgstr "Binārie faili %s un %s atšķiras\n"
+msgstr "Binārās datnes %s un %s atšķiras\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
-msgstr "Nav jaunu rindu faila beigās"
+msgstr "Nav jaunu rindu datnes beigās"
#. This is a proper name. See the gettext manual, section Names.
#: src/cmp.c:43
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
-#, fuzzy, c-format
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
+#, c-format
msgid "Try '%s --help' for more information."
-msgstr "Mēģiniet \"%s --help\" , lai iegūtu vairāk informācijas."
+msgstr "Lietojiet “%s --help”, lai uzzinātu vairāk."
#: src/cmp.c:137
-#, fuzzy, c-format
+#, c-format
msgid "invalid --ignore-initial value '%s'"
-msgstr "nederīga --ignore-initial vērtība \"%s\""
+msgstr "nederīga --ignore-initial vērtība “%s”"
#: src/cmp.c:147
#, c-format
msgid "options -l and -s are incompatible"
msgstr "opcijas -l un -s nav savstarpēji saderīgas"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "rakstīšana neizdevās"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
-msgstr "standarta izvads"
+msgstr "standarta izvade"
#: src/cmp.c:161
-#, fuzzy
msgid "-b, --print-bytes print differing bytes"
-msgstr "-b --print-bytes Drukāt atšķirīgos bitus."
+msgstr "-b, --print-bytes drukāt atšķirīgos baitus"
#: src/cmp.c:162
-#, fuzzy
msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs"
msgstr ""
-"-i IZLAIST --ignore-initial=IZLAIST Izlaists pirmos IZLAIŽAMOS baitus "
-"ievadā."
+"-i, --ignore-initial=IZLAIST izlaists pirmos IZLAIŽAMOS baitus ievadē"
#: src/cmp.c:163
-#, fuzzy
msgid ""
"-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n"
" first SKIP2 bytes of FILE2"
msgstr ""
-"Izalist pirmo IZLAIST1 baitus no FAILA1 un pirmos IZLAIST2 baitus no FAILA2."
+"-i, --ignore-initial=IZLAIST1:IZLAIST2 izlaist pirmos IZLAIST1 DATNE1 "
+"baitus\n"
+" un pirmos IZLAIST2 DATNE2 baitus"
#: src/cmp.c:165
-#, fuzzy
msgid ""
"-l, --verbose output byte numbers and differing byte values"
msgstr ""
-"-l --verbose Izvadīt baita numurus un vērtības visiem atšķirīgajiem "
-"baitiem."
+"-l, --verbose izvadīt baitu numurus un atšķirīgo baitu vērtības"
#: src/cmp.c:166
-#, fuzzy
msgid "-n, --bytes=LIMIT compare at most LIMIT bytes"
-msgstr "-n ROBEŽA --bytes=ROBEŽA Salīdzināt līdz ROBEŽAS baitiem."
+msgstr "-n, --bytes=ROBEŽA salīdzināt līdz ROBEŽAs baitiem"
#: src/cmp.c:167
msgid "-s, --quiet, --silent suppress all normal output"
-msgstr ""
+msgstr "-s, --quiet, --silent nomākt visu parasto izvadi"
#: src/cmp.c:168
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help parādīt šo palīdzību un iziet"
#: src/cmp.c:169
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Izvada versijas informāciju."
+msgstr "-v, --version izvada informāciju par versiju un iziet"
#: src/cmp.c:178
#, c-format
msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n"
-msgstr "Izmantošana: %s [OPCIJAS]... FAILS1 [FAILS2 [IZLAIST1 [IZLAIST2]]]\n"
+msgstr "Izmantošana: %s [OPCIJAS]... DATNE1 [DATNE2 [IZLAIST1 [IZLAIST2]]]\n"
#: src/cmp.c:180
msgid "Compare two files byte by byte."
-msgstr "Salīdzināt divus faili baitu pa baitam."
+msgstr "Salīdzināt divas datnes baitu pa baitam."
#: src/cmp.c:182
-#, fuzzy
msgid ""
"The optional SKIP1 and SKIP2 specify the number of bytes to skip\n"
"at the beginning of each file (zero by default)."
-msgstr "IZLAIST1 un IZLAIST2 ir cipari, cik baitus izlaist katrā failā."
+msgstr ""
+"Neobligātie IZLAIST1 un IZLAIST2 norāda, cik baitus izlaist\n"
+"katras datnes sākumā (pēc noklusējuma nulle)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
+"Parametri, kas ir obligāti garajām opcijām, ir obligāti arī īsajām opcijām.\n"
#: src/cmp.c:191
msgid ""
"GB 1,000,000,000, G 1,073,741,824, un tā tālāk T, P, E, Z, Y."
#: src/cmp.c:194
-#, fuzzy
msgid "If a FILE is '-' or missing, read standard input."
-msgstr "Ja FAILAM ir \"-\" vai trūkst, tad lasīt standarta ievadu."
+msgstr "Ja DATNEI ir “-” vai tā nav, tad lasīt standarta ievadi."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
-"Izejas stāvoklis ir 0, ja ievads ir tāds pats, 1 ja tas ir atšķirīgs, 2 ja "
-"ir neptikšanas."
+"Izejas status ir 0, ja ievads ir tāds pats, 1, ja tas ir atšķirīgs, 2, ja ir "
+"nepatikšanas."
#: src/cmp.c:240
-#, fuzzy, c-format
+#, c-format
msgid "invalid --bytes value '%s'"
-msgstr "nederīga --bytes vērtība \"%s\""
+msgstr "nederīga --bytes vērtība “%s”"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
-#, fuzzy, c-format
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
+#, c-format
msgid "missing operand after '%s'"
-msgstr "trūkst operands pēc \"%s\""
+msgstr "trūkst operands pēc “%s”"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
-#, fuzzy, c-format
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
+#, c-format
msgid "extra operand '%s'"
-msgstr "papildus operands \"%s\""
+msgstr "papildu operands “%s”"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s atšķiras: baits %s, rinda %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s atšķiras: baits %s, rinda %s ir %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: EOF uz %s\n"
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
-#, fuzzy, c-format
+#: src/diff.c:351
+#, c-format
msgid "invalid context length '%s'"
-msgstr "nederīgs konteksta garums \"%s\""
+msgstr "nederīgs konteksta garums “%s”"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "lapošana netiek atbalstīta uz šī resursdatora"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
-msgstr "pārāk daudz faila etiķešu opciju"
+msgstr "pārāk daudz datnes etiķešu opciju"
-#: src/diff.c:514
-#, fuzzy, c-format
+#: src/diff.c:526
+#, c-format
msgid "invalid width '%s'"
-msgstr "nederīgs platums \"%s\""
+msgstr "nederīgs platums “%s”"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "konfliktējošas platuma opcijas"
-#: src/diff.c:543
-#, fuzzy, c-format
+#: src/diff.c:555
+#, c-format
msgid "invalid horizon length '%s'"
-msgstr "nederīgs horizontālais garums \"%s\""
+msgstr "nederīgs horizontālais garums “%s”"
-#: src/diff.c:598
-#, fuzzy, c-format
+#: src/diff.c:611
+#, c-format
msgid "invalid tabsize '%s'"
-msgstr "nederīgs tabulācijas izmērs \"%s\""
+msgstr "nederīgs tabulācijas izmērs “%s”"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "konfliktējošas tabulācijas izmēru opcijas"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "--from-file un --to-file abi norādīti"
-#: src/diff.c:854
-#, fuzzy
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
-msgstr "--normal Izvada parastu diff."
+msgstr " --normal izvada parastu diff (noklusējuma)"
-#: src/diff.c:855
-#, fuzzy
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
-msgstr "-q --brief Izvadit tikai, ja faili atšķiras."
+msgstr "-q, --brief ziņot tikai, ja datnes atšķiras"
-#: src/diff.c:856
-#, fuzzy
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
-msgstr "-s --report-identical-files Ziņot, kad divi faili ir vienādi."
+msgstr "-s, --report-identical-files ziņot, ja divas datnes ir vienādas"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
+"-c, -C NUM, --context[=NUM] izvadīt NUM (noklus. 3) kopētā konteksta rindas"
-#: src/diff.c:858
-#, fuzzy
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
-"-w NUMURS --width=NUMURS Izvada līdz NUMURAM (noklusētais 130) drukas "
-"kolonas."
+"-u, -U NUM, --unified[=NUM] izvadīt NUM (noklus. 3) vienotā konteksta "
+"rindas"
-#: src/diff.c:859
-#, fuzzy
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
-msgstr "-e --ed Izvada ed skriptā."
+msgstr "-e, --ed izvada ed skriptu"
-#: src/diff.c:860
-#, fuzzy
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
-msgstr "-n --rcs Izvada RCS diff formātā."
+msgstr "-n, --rcs izvada RCS formāta diff"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
-msgstr ""
+msgstr "-y, --side-by-side izvade divās kolonnās"
-#: src/diff.c:862
-#, fuzzy
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
-"-w NUMURS --width=NUMURS Izvada līdz NUMURAM (noklusētais 130) drukas "
-"kolonas."
+"-W, --width=NUM izvada līdz NUM (noklusējuma 130) drukas "
+"kolonas"
-#: src/diff.c:863
-#, fuzzy
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
-msgstr "-l --left-column Izvadīt tikai kreiso kolonu no kopējām rindām."
+msgstr ""
+" --left-column izvadīt tikai kreiso kolonu no kopējām rindām"
-#: src/diff.c:864
-#, fuzzy
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines Neizvadīt kopējās rindas."
+msgstr " --suppress-common-lines neizvadīt kopējās rindas"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
-msgstr ""
+msgstr "-p, --show-c-function rādīt, kurās C funkcijās ir izmaiņas"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
-msgstr ""
+msgstr "-F, --show-function-line=RE rādīt visnesenāko rindu, kas atbilst RE"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+" --label ETIĶETE izmantot ETIĶETI nevis datnes nosaukumu\n"
+" (var atkārtot)"
-#: src/diff.c:871
-#, fuzzy
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
-msgstr "-t --expand-tabs Izplest tabulācijas atstarpi izvadā."
+msgstr ""
+"-t, --expand-tabs pārveidot tabulācijas par atstarpēm izvadē"
-#: src/diff.c:872
-#, fuzzy
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
-msgstr "-T --initial-tab Pacelt tabulācijas rindu pirm tabulācijas."
+msgstr ""
+"-T, --initial-tab pacelt tabulācijas rindu pirms tabulācijas"
-#: src/diff.c:873
-#, fuzzy
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
-"--tabsize=NUMURS Tabulāciju apstāšanāss ir katru NUMURU (noklusētais ir 8) "
-"drukas kolonas."
+" --tabsize=NUM tabulāciju pietura ik NUM drukas "
+"kolonas (noklusējuma ir 8)"
-#: src/diff.c:874
-#, fuzzy
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
-"--suppress-blank-empty Apspiest atstarpes vai tabulācijas pirms tukšam "
-"izvades rindām."
+" --suppress-blank-empty apspiest atstarpes vai tabulācijas pirms "
+"tukšām\n"
+" izvades rindām."
-#: src/diff.c:875
-#, fuzzy
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
-msgstr "-l --paginate Izlaist izvadu caur \"pr\", lai lapotu to."
+msgstr "-l, --paginate izlaist izvadi caur “pr”, lai to lapotu"
-#: src/diff.c:877
-#, fuzzy
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
-"-r --recursive Rekursīvā salīdzināšana jebkurai atrastai apakšdirektorijai."
+"-r, --recursive rekursīvi salīdzina atrastās "
+"apakšdirektorijas"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
-msgstr ""
+msgstr " --no-dereference nerādīt simboliskās saites"
-#: src/diff.c:879
-#, fuzzy
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
-msgstr "-N --new-file Izturēties pret trūkstošiem faili, kā tukšiem failiem."
+msgstr "-N, --new-file trūkstošas datnes uzskatīt par tukšām"
-#: src/diff.c:880
-#, fuzzy
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
-"--unidirectional-new-file Izturēties pret trūkstošiem failiem kā tukšiem."
+" --unidirectional-new-file trūkstošas pirmās datnes uzskatīt par tukšām"
-#: src/diff.c:881
-#, fuzzy
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
-"--ignore-file-name-case Ignorēt reģistru, kad salīdzina faila nosaukumus."
+" --ignore-file-name-case ignorēt reģistru, salīdzinot datņu nosaukumus"
-#: src/diff.c:882
-#, fuzzy
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
-"--no-ignore-file-name-case Neignorēt reģistru kad salīdzina faila "
-"nosaukumus."
+" --no-ignore-file-name-case neignorēt reģistru, salīdzinot datņu "
+"nosaukumus"
-#: src/diff.c:883
-#, fuzzy
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
-msgstr "-x PAT --exclude=PAT Izslēgt failus, kuri atbilst PAT."
+msgstr "-x, --exclude=ŠABLONS izslēgt datnes, kuras atbilst ŠABLONAM"
-#: src/diff.c:884
-#, fuzzy
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
-"-X FAILS --exclude-from=FAILS Izslēgt failus, kuri atbilst jebkuram "
-"paternam FAILĀ."
+"-X, --exclude-from=DATNE izslēgt datnes, kuras atbilst jebkuram\n"
+" šablonam DATNĒ"
-#: src/diff.c:885
-#, fuzzy
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
-"-S FAILS --starting-file=FAILS Sākt ar FAILU, kad salīdzina direktorijas."
+"-S, --starting-file=DATNE sākt ar DATNI, kad salīdzina direktorijas"
-#: src/diff.c:886
-#, fuzzy
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
msgstr ""
-"--from-file=FAILS1 Salīdzini FAILU1 ar visiem operandiem. FAILS1 nevar būt "
-"direktorija."
+" --from-file=DATNE1 salīdzina DANTE1 ar visiem operandiem;\n"
+" DATNE1 var būt direktorija"
-#: src/diff.c:888
-#, fuzzy
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
msgstr ""
-"--to-file=FAILS2 Salīdzini visus operandus ar FAILU2. FAILS2 nevar būt "
-"direktorija."
+" --to-file=FILE2 salīdzina visus operandus ar DANTE2;\n"
+" DATNE2 var būt direktorija"
-#: src/diff.c:891
-#, fuzzy
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
-msgstr "-i --ignore-case Ignorē reģistra atšķirības faila saturā."
+msgstr ""
+"-i, --ignore-case ignorē reģistra atšķirības datnes saturā"
-#: src/diff.c:892
-#, fuzzy
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
-"-E --ignore-tab-expansion Ignorēt izmaiņas, dēļ tabulācijas izplešanās."
+"-E, --ignore-tab-expansion ignorēt izmaiņas dēļ tabulācijas izplešanās"
-#: src/diff.c:893
-#, fuzzy
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Ignorēt visas atstarpes."
+msgstr "-Z, --ignore-trailing-space ignorēt visas atstarpes rindu beigās"
-#: src/diff.c:894
-#, fuzzy
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b --ignore-space-change Ignorēt izmaiņas, dēļ atstarpēm."
+msgstr "-b, --ignore-space-change ignorēt izmaiņas dēļ atstarpēm"
-#: src/diff.c:895
-#, fuzzy
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
-msgstr "-w --ignore-all-space Ignorēt visas atstarpes."
+msgstr "-w, --ignore-all-space ignorēt visas atstarpes"
-#: src/diff.c:896
-#, fuzzy
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
-msgstr "-B --ignore-blank-lines Ignorēt izmaiņas rindās, kur viss ir tukšs."
+msgstr "-B, --ignore-blank-lines ignorēt izmaiņas tukšajās rindās"
-#: src/diff.c:897
-#, fuzzy
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
-"-I RE --ignore-matching-lines=RE Ignorēt izmaiņas rindās, kuras sakrīt ar "
-"RE."
+"-I, --ignore-matching-lines=RE ignorēt izmaiņas rindās, kuras sakrīt ar RE"
-#: src/diff.c:899
-#, fuzzy
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
-msgstr "-a --text Izturēties pret visiem failiem, kā teksta."
+msgstr "-a, --text uztvert visas datnes kā teksta datnes"
-#: src/diff.c:900
-#, fuzzy
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Noņemt atkārtojošo rakstatgrieze ievadā."
+msgstr ""
+" --strip-trailing-cr noņemt atkārtojošos rakstatgriezi ievadē"
-#: src/diff.c:902
-#, fuzzy
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
-msgstr "--binary Lasīt un rakstīt datus binārajā režīmā."
+msgstr " --binary lasīt un rakstīt datus binārajā režīmā"
-#: src/diff.c:905
-#, fuzzy
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
-"-D NOSAUKUMS --ifdef=NOSAUKUMS Izvads sapludināts failā, lai rāda \"#ifdef "
-"NOSAUKUMS\" diffs."
+"-D, --ifdef=NOSAUKUMS izvadīt sapludināto datni ar\n"
+" “#ifdef NOSAUKUMS” diff"
-#: src/diff.c:906
-#, fuzzy
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
-msgstr ""
-"--GTYPE-group-format=GFMT Līdzigs, bet formāts GTYPE ievades grupām ar GFMT."
+msgstr " --GTYPE-group-format=GFMT formatēt GTYPE ievades grupas ar GFMT"
-#: src/diff.c:907
-#, fuzzy
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
-msgstr "--line-format=LFMT Līdzīgs, bet formāts visam ievades rindām ar LFMT."
+msgstr " --line-format=LFMT formatēt visas ievades rindas ar LFMT"
-#: src/diff.c:908
-#, fuzzy
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
-msgstr ""
-"--LTYPE-line-format=LFMT Līdzīgs, bet formāts LTYPE ievades rindām ir LFMT."
+msgstr " --LTYPE-line-format=LFMT formatēt LTYPE ievades rindām ar LFMT"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
+" Šīs formāta opcijas sniedz detalizētu kontroli pār diff izvadi,\n"
+" vispārinot -D/--ifdef."
-#: src/diff.c:911
-#, fuzzy
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
-" LTYPE ir \"old\", \"new\", vai \"unchanged\". GTYPE ir LTYPE vai \"changed"
-"\"."
+" LTYPE ir “old”, “new” vai “unchanged”. GTYPE ir LTYPE vai “changed”."
-#: src/diff.c:912
-#, fuzzy
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" M L+1\n"
" %(A=B?T:E) if A equals B then T else E"
msgstr ""
-" GFMT var saturēt:\n"
-" %< rindas no FAILA1\n"
-" %> rindas no FAILA2\n"
-" %= rindas kopīgas FAILĀ1 un FAILĀ2\n"
+" GFMT (tikai) var saturēt:\n"
+" %< rindas no DATNE1\n"
+" %> rindas no DATNE2\n"
+" %= rindas kopīgas DATNE1 un DATNE2\n"
" %[-][PLATUMS][.[PREC]]{doxX}BURTS printf-style specifikācija BURTAM\n"
" BURTS ir šāds jaunai grupai, mazais reģistrs vecais grupai:\n"
" F pirmās rindas numurs\n"
" L pēdējās rindas numurs\n"
" N rindu skaits = L-F+1\n"
" E F-1\n"
-" M L+1"
+" M L+1 %(A=B?T:E) ja A vienāds ar B tad T citādi E"
-#: src/diff.c:924
-#, fuzzy
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %l contents of line, excluding any trailing newline\n"
" %[-][WIDTH][.[PREC]]{doxX}n printf-style spec for input line number"
msgstr ""
-" LFMT var saturēt:\n"
+" LFMT (tikai) var saturēt:\n"
" %L rindas saturs\n"
-" %l rindas saturs, izņemot atkārtojošās jaunās rindas\n"
-" %[-][PLATUMS][.[PREC]]{doxX}n printf-style specifikācija ievades rindu "
-"numuriem"
+" %l rindas saturs, izņemot sekojošās jaunās rindas rakstzīmes\n"
+" %[-][PLATUMS][.[PREC]]{doxX}n printf-style specifikācija ievades rindu\n"
+" numuriem"
-#: src/diff.c:928
-#, fuzzy
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" Gan GFMT, gan LFMT var saturēt:\n"
" %% %\n"
" %c'C' vienu rakstzīmi C\n"
-" %c'\\OOO' rakstzīmi ar oktālo kodu OOO"
+" %c'\\OOO' rakstzīmi ar oktālo kodu OOO\n"
+" C rakstzīme C (vai citas rakstzīmes, kas attēlo pašas sevi)"
-#: src/diff.c:934
-#, fuzzy
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr "-d --minimal Mēģināt smagi atrast pašas mazākas izmaiņu kopas."
+msgstr "-d, --minimal ļoti censties atrast mazāku izmaiņu kopu"
-#: src/diff.c:935
-#, fuzzy
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
-"--horizon-lines=SKAITS Uzturēt SKAITU līniju kopējiem prefiksiem un "
-"sufiksiem."
+" --horizon-lines=NUM uzturēt NUM rindas kopējiem prefiksiem un sufiksiem"
-#: src/diff.c:936
-#, fuzzy
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
-"-H --speed-large-files Pieņemt, ka faili ir lieli un satur daudzas mazas "
-"izmaiņas."
+" --speed-large-files pieņemt, ka datnes ir lielas ar daudz mazām izmaiņām"
-#: src/diff.c:938
-msgid " --help display this help and exit"
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:967
#, fuzzy
-msgid "-v, --version output version information and exit"
-msgstr "-v --version Izvada versijas informāciju."
+msgid " or 'auto' (the default)"
+msgstr " --normal izvada parastu diff (noklusējuma)"
-#: src/diff.c:941
-#, fuzzy
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
msgstr ""
-"FAILI ir \"FAILS1 FAILS2\" vai \"DIREKTORIJA1 DIREKTORIJA2\" vai "
-"\"DIREKTORIJA FAILS...\" vai \"FAILS... DIREKTORIJA\"."
-#: src/diff.c:942
+#: src/diff.c:971
+msgid " --help display this help and exit"
+msgstr " --help parādīt šo palīdzību un iziet"
+
+#: src/diff.c:972
+msgid "-v, --version output version information and exit"
+msgstr "-v, --version izvada informāciju par versiju un iziet"
+
+#: src/diff.c:974
#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
+msgstr ""
+"DATNES ir “DATNE1 DATNE2” vai “DIREKTORIJA1 DIREKTORIJA2” vai\n"
+"“DIREKTORIJA DATNE...” vai “DATNE... DIREKTORIJA”"
+
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
-"Ja --from-file vai --to-file ir dots, nav nekādu ierobežojumu uz FAILIEM."
+"Ja ir doti --from-file vai --to-file, nav nekādu ierobežojumu uz DATNĒM."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
-#, fuzzy
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
-msgstr "Ja FAILS ir \"-\", lasīt standarta ievadu"
+msgstr "Ja DATNE ir “-”, lasīt standarta ievadi."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
-msgstr "Izmantošana: %s [OPCIJAS]... FAILI\n"
+msgstr "Lietošana: %s [OPCIJAS]... DATNES\n"
-#: src/diff.c:954
-#, fuzzy
+#: src/diff.c:987
msgid "Compare FILES line by line."
-msgstr "Salīdzina failu rindu pa rindai"
+msgstr "Salīdzina DATNES rindu pa rindai."
-#: src/diff.c:988
-#, fuzzy, c-format
+#: src/diff.c:1021
+#, c-format
msgid "conflicting %s option value '%s'"
-msgstr "konfliktējoša %s opcijas vērtība \"%s\""
+msgstr "konfliktējoša %s opcijas vērtība “%s”"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "konfliktējoša izvades stila opcijas"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "nederīgs platums “%s”"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Tikai iekš %s: %s\n"
-#: src/diff.c:1192
-#, fuzzy
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
-msgstr "nevar salīdzināt \"-\" ar direktoriju"
+msgstr "nevar salīdzināt “-” ar direktoriju"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
-msgstr "-D opcija netik atbalstīta ar direktorijām"
+msgstr "-D opcija nav atbalstīta ar direktorijām"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Kopējās apakšdirektorijas: %s un %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
-msgstr "Fails %s ir %s kamēr fails %s ir %s\n"
+msgstr "Datne %s ir %s kamēr datne %s ir %s\n"
-#: src/diff.c:1314
-#, fuzzy, c-format
+#: src/diff.c:1362
+#, c-format
msgid "Symbolic links %s and %s differ\n"
-msgstr "Faili %s un %s atšķiras\n"
+msgstr "Simboliskās saites %s un %s atšķiras\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
-msgstr "Fails %s un %s ir identiski\n"
+msgstr "Datnes %s un %s ir identiskas\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff3.c:41
msgstr "savstarpēji nesaderīgas opcijas"
#: src/diff3.c:353
-#, fuzzy
msgid "'-' specified for more than one input file"
-msgstr "\"-\" norādīts vairāk par vienu ievades failu"
+msgstr "“-” norādīts vairāk par vienu ievades datni"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "lasīšana neizdevās"
#: src/diff3.c:428
-#, fuzzy
msgid "-A, --show-all output all changes, bracketing conflicts"
-msgstr "-A --show-all Izvada visas izmaņas, ieliekot iekavās konfliktus."
+msgstr ""
+"-A, --show-all izvada visas izmaņas, ieliekot iekavās konfliktus"
#: src/diff3.c:430
-#, fuzzy
msgid ""
"-e, --ed output ed script incorporating changes\n"
" from OLDFILE to YOURFILE into MYFILE"
msgstr ""
-"-e --ed Izvada nesapludinātas izmaiņas no VECĀFAILĀ uz JŪSUFAILU iekš "
-"MANAFAILA."
+"-e, --ed izvada ed skirpta iekļautās izmaiņas\n"
+" no VECĀSDATNES uz JŪSUDATNI iekš MANUDATNI."
#: src/diff3.c:432
-#, fuzzy
msgid "-E, --show-overlap like -e, but bracket conflicts"
msgstr ""
-"-E --show-overlap Izvada nesapludinātās izmaiņas, ieliekot iekavās "
-"konfliktus."
+"-E, --show-overlap tāpat kā -e, bet ieliekot iekavās konfliktus"
#: src/diff3.c:433
-#, fuzzy
msgid ""
"-3, --easy-only like -e, but incorporate only nonoverlapping "
"changes"
-msgstr "-3 --easy-only Izvada nesapludinātās nepārklājušās izmaiņas."
+msgstr ""
+"-3, --easy-only līdzīgs -e, bet iekļauj tikai nepārklājošās "
+"izmaiņas"
#: src/diff3.c:434
-#, fuzzy
msgid ""
"-x, --overlap-only like -e, but incorporate only overlapping changes"
-msgstr "-x --overlap-only Izvada pārklājušas izmaiņas."
+msgstr ""
+"-x, --overlap-only līdzīgs -e, bet iekļauj tikai pārklājošās "
+"izmaiņas"
#: src/diff3.c:435
msgid "-X like -x, but bracket conflicts"
msgstr ""
+"-X līdzīgs -x, bet ieliekot iekavās konfliktus"
#: src/diff3.c:436
-#, fuzzy
msgid "-i append 'w' and 'q' commands to ed scripts"
-msgstr "-i Apvienot `w' un `q' komandas ed skriptā."
+msgstr "-i pievieno “w” un “q” komandas ed skriptā"
#: src/diff3.c:438
msgid ""
"-m, --merge output actual merged file, according to\n"
" -A if no other options are given"
msgstr ""
+"-m, --merge izvada pašu sapludināto datni, vadoties pēc -A,\n"
+" ja nav dotu citu opciju"
#: src/diff3.c:441
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Izturēties pret visiem failiem, kā teksta."
+msgstr "-a, --text uztvert visas datnes kā teksta datnes"
#: src/diff3.c:442
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Noņemt atkārtojošo rakstatgrieze ievadā."
+msgstr " --strip-trailing-cr noņemt atkārtojošos rakstatgriezi ievadē"
#: src/diff3.c:443
-#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
-msgstr "-T --initial-tab Pacelt tabulācijas rindu pirm tabulācijas."
+msgstr "-T, --initial-tab pacelt tabulācijas rindu pirms tabulācijas"
#: src/diff3.c:444
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
msgstr ""
-"--diff-program=PROGRAMMA Izmantot PROGRAMMU, lai salīdzinātu divus failus."
+" --diff-program=PROGRAMMA izmantot PROGRAMMU, lai salīdzinātu divas datnes"
#: src/diff3.c:445
msgid ""
"-L, --label=LABEL use LABEL instead of file name\n"
" (can be repeated up to three times)"
msgstr ""
+"-L, --label=ETIĶETE izmantot ETIĶETI nevis datnes nosaukumu\n"
+" (var atkārtot)"
#: src/diff3.c:448
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help parādīt šo palīdzību un iziet"
#: src/diff3.c:449
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Izvada versijas informāciju."
+msgstr "-v, --version izvada informāciju par versiju un iziet"
#: src/diff3.c:458
#, c-format
msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n"
-msgstr "Izmantošana: %s [OPCIJAS]... MANSFAILS VECAISFAILS JŪSUFAILS\n"
+msgstr "Izmantošana: %s [OPCIJAS]... MANADATNE VECĀDATNE JŪSUDATNE\n"
#: src/diff3.c:460
msgid "Compare three files line by line."
-msgstr "Salīdzināt trīs failus rindiņu pa rindiņai."
+msgstr "Salīdzināt trīs datnes rindiņu pa rindiņai."
#: src/diff3.c:470
msgid ""
"and output the actual merged file. For unusual input, this is more\n"
"robust than using ed.\n"
msgstr ""
+"\n"
+"Noklusējuma izvades formāts ir daudz maz cilvēkam lasāma izmaiņu "
+"attēlojums.\n"
+"\n"
+"Opcijas -e, -E, -x, -X (un to garie varianti) liek izvadīt ed skriptu, "
+"nevis\n"
+"noklusējuma.\n"
+"\n"
+"Visbeidzot, -m (--merge) opcija liek iekšēji sapludināt diff3 un izvadīt "
+"pašu\n"
+"sapludināto datni. Netipiskām ievadēm, šis ir vēl spēcīgāks paņēmiens, nekā\n"
+"ed izmantošana.\n"
#: src/diff3.c:482
msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble."
msgstr ""
-"Izejas stāvoklis ir 0, ja tas ir veiksmīgs, 1 ja ir konflikts, 2 ja ir "
+"Izejas statuss ir 0, ja tas ir veiksmīgs, 1, ja ir konflikts, 2, ja ir "
"nepatikšanas."
#: src/diff3.c:675
msgid "internal error: screwup in format of diff blocks"
-msgstr "iekšējā kļūda: grīstē saiešana diff bloku formātā"
+msgstr "iekšējā kļūda: sagāja grīstē diff bloku formāts"
#: src/diff3.c:968
#, c-format
msgid "invalid diff format; invalid change separator"
msgstr "nederīgs diff formāts; nederīgs izmaiņu atdalītājs"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
-msgstr "nederīgs diff formāts; nepilnīga pēdējā rindiņa"
+msgstr "nederīgs diff formāts; nepilnīga pēdējā rinda"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
-#, fuzzy, c-format
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
+#, c-format
msgid "subsidiary program '%s' could not be invoked"
-msgstr "nevarēja izsaukt palīgprogrammu \"%s\""
+msgstr "nevarēja izsaukt palīgprogrammu “%s”"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "nederīgs diff formāts; nederīgas rindas ievades rakstzīmes"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
-msgstr "iekšējā kļūda: nederīgs uz izvadu padotais diff veids"
+msgstr "iekšējā kļūda: nederīgs uz izvadi padotais diff veids"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
-msgstr "ievades fails saruka"
+msgstr "ievades datne saruka"
-#: src/dir.c:158
-#, fuzzy, c-format
+#: src/dir.c:156
+#, c-format
msgid "cannot compare file names '%s' and '%s'"
-msgstr "nevar salīdzināt faila nosaukumus \"%s\" un \"%s\""
+msgstr "nevar salīdzināt datņu nosaukumus “%s” un “%s”"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
-msgstr "%s: rekrusīvs direktorijas cikls"
+msgstr "%s: rekursīvs direktorijas cikls"
#. This is a proper name. See the gettext manual, section Names.
#: src/sdiff.c:42
msgstr "Thomas Lord"
#: src/sdiff.c:173
-#, fuzzy
msgid ""
"-o, --output=FILE operate interactively, sending output to FILE"
msgstr ""
-"-o FAILS --output=FAILS Darboties interaktīvi, izvadot izvadu uz FAILU."
+"-o, --output=DATNE darboties interaktīvi, izvadot izvadu uz DATNI"
#: src/sdiff.c:175
-#, fuzzy
msgid ""
"-i, --ignore-case consider upper- and lower-case to be the same"
msgstr ""
-"-i --ignore-case Uzskatīt ka augšējais un apkšējais reģistrs ir viens un "
-"tas pats."
+"-i, --ignore-case uzskatīt ka augšējais un apakšējais reģistrs "
+"ir\n"
+" viens un tas pats"
#: src/sdiff.c:176
-#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
-"-E --ignore-tab-expansion Ignorēt izmaiņas, dēļ tabulācijas izplešanās."
+"-E, --ignore-tab-expansion ignorēt izmaiņas dēļ tabulācijas izplešanās"
#: src/sdiff.c:177
-#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Ignorēt visas atstarpes."
+msgstr "-Z, --ignore-trailing-space ignorēt visas atstarpes rindu beigās"
#: src/sdiff.c:178
-#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b --ignore-space-change Ignorēt izmaiņas, dēļ atstarpēm."
+msgstr "-b, --ignore-space-change ignorēt izmaiņas dēļ atstarpēm"
#: src/sdiff.c:179
-#, fuzzy
msgid "-W, --ignore-all-space ignore all white space"
-msgstr "-W --ignore-all-space Ignorēt visas atstarpes."
+msgstr "-W, --ignore-all-space ignorēt visas atstarpes"
#: src/sdiff.c:180
-#, fuzzy
msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank"
-msgstr "-B --ignore-blank-lines Ignorēt izmaiņas rindās, kur viss ir tukšs."
+msgstr "-B, --ignore-blank-lines ignorēt izmaiņas tukšajās rindās"
#: src/sdiff.c:181
-#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE"
msgstr ""
-"-I RE --ignore-matching-lines=RE Ignorēt izmaiņas rindās, kuras sakrīt ar "
-"RE."
+"-I, --ignore-matching-lines=RE ignorēt izmaiņas rindās, kuras sakrīt ar RE"
#: src/sdiff.c:182
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Noņemt atkārtojošo rakstatgrieze ievadā."
+msgstr " --strip-trailing-cr noņemt atkārtojošos rakstatgriezi ievadē"
#: src/sdiff.c:183
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Izturēties pret visiem failiem, kā teksta."
+msgstr "-a, --text uztvert visas datnes kā teksta datnes"
#: src/sdiff.c:185
-#, fuzzy
msgid ""
"-w, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
-"-w NUMURS --width=NUMURS Izvada līdz NUMURAM (noklusētais 130) drukas "
-"kolonas."
+"-w, --width=NUM izvada līdz NUM (noklusējuma 130) drukas kolonas"
#: src/sdiff.c:186
-#, fuzzy
msgid ""
"-l, --left-column output only the left column of common lines"
-msgstr "-l --left-column Izvadīt tikai kreiso kolonu no kopējām rindām."
+msgstr ""
+"-l, --left-column izvadīt tikai kreiso kolonu no kopējām rindām"
#: src/sdiff.c:187
-#, fuzzy
msgid "-s, --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines Neizvadīt kopējās rindas."
+msgstr "-s, --suppress-common-lines neizvadīt kopējās rindas"
#: src/sdiff.c:189
-#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
-msgstr "-t --expand-tabs Izplest tabulācijas atstarpi izvadā."
+msgstr ""
+"-t, --expand-tabs pārveidot tabulācijas par atstarpēm izvadē"
#: src/sdiff.c:190
-#, fuzzy
msgid ""
" --tabsize=NUM tab stops at every NUM (default 8) print columns"
msgstr ""
-"--tabsize=NUMURS Tabulāciju apstāšanāss ir katru NUMURU (noklusētais ir 8) "
-"drukas kolonas."
+" --tabsize=NUM tabulāciju pietura ik NUM drukas "
+"kolonas (noklusējuma ir 8)"
#: src/sdiff.c:192
-#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr "-d --minimal Mēģināt smagi atrast pašas mazākas izmaiņu kopas."
+msgstr "-d, --minimal ļoti censties atrast mazāku izmaiņu kopu"
#: src/sdiff.c:193
-#, fuzzy
msgid ""
"-H, --speed-large-files assume large files, many scattered small changes"
msgstr ""
-"-H --speed-large-files Pieņemt, ka faili ir lieli un satur daudzas mazas "
-"izmaiņas."
+"-H, --speed-large-files pieņemt, ka datnes ir lielas, daudz mazu izmaiņu"
#: src/sdiff.c:194
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
msgstr ""
-"--diff-program=PROGRAMMA Izmantot PROGRAMMU, lai salīdzinātu divus failus."
+" --diff-program=PROGRAMMA izmantot PROGRAMMU, lai salīdzinātu divas datnes"
#: src/sdiff.c:196
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help parādīt šo palīdzību un iziet"
#: src/sdiff.c:197
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Izvada versijas informāciju."
+msgstr "-v, --version izvada informāciju par versiju un iziet"
#: src/sdiff.c:206
#, c-format
msgid "Usage: %s [OPTION]... FILE1 FILE2\n"
-msgstr "Izmantošana: %s [OPCIJAS]... FAILS1 FAILS2\n"
+msgstr "Lietošana: %s [OPCIJAS]... DATNE1 DATNE1\n"
#: src/sdiff.c:208
-#, fuzzy
msgid "Side-by-side merge of differences between FILE1 and FILE2."
-msgstr "Plecu-pie-pleca failu atšķirību sapludināšana"
+msgstr "Sānu-pie-sāna datņu DATNE1 un DATNE2 atšķirību sapludināšana."
#: src/sdiff.c:329
msgid "cannot interactively merge standard input"
-msgstr "nevar interaktīvi sapludināt standarta ievadu"
+msgstr "nevar interaktīvi sapludināt standarta ievadi"
#: src/sdiff.c:595
msgid "both files to be compared are directories"
-msgstr "abi salīdzināmie faili ir direktorijas"
+msgstr "abas salīdzināmās datnes ir direktorijas"
#: src/sdiff.c:818
msgid ""
"v:\tDetalizēti iekļaut kopējās rindas.\n"
"q:\tIziet.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: neatpazīta opcija “--%s”\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
#~ msgstr "-i IZLAIST1:IZLAIST2 --ignore-initial=IZLAIST1:IZLAIST2"
-# Diffutils Bahasa Melayu (Malay) (ms).
-# Copyright (C) 2003 Free Software Foundation, Inc.
+# diffutils Bahasa Melayu (Malay) (ms).
+# Copyright (C) 2003, 2015 Free Software Foundation, Inc.
# This file is distributed under the same license as the diffutils package.
-# Sharuzzaman Ahmat Raslan <sharuzzaman@myrealbox.com>, 2003.
+# Sharuzzaman Ahmat Raslan <sharuzzaman@gmail.com>, 2003, 2015.
#
msgid ""
msgstr ""
-"Project-Id-Version: diffutils 2.8.7\n"
+"Project-Id-Version: diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
-"PO-Revision-Date: 2005-03-29 19:43+0800\n"
-"Last-Translator: Sharuzzaman Ahmat Raslan <sharuzzaman@myrealbox.com>\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
+"PO-Revision-Date: 2015-09-24 17:50+0800\n"
+"Last-Translator: Sharuzzaman Ahmat Raslan <sharuzzaman@gmail.com>\n"
"Language-Team: Malay <translation-team-ms@lists.sourceforge.net>\n"
"Language: ms\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 0.9.5\n"
+"X-Generator: Poedit 1.8.5\n"
+
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "hujah tidak sah %s untuk %s"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "hujah tidak sah %s untuk %s"
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgid "stack overflow"
msgstr "stack melimpah"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Ralat sistem tidak diketahui"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "fail kosong biasa"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "fail biasa"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "direktori"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "fail khas blok"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "fail khas aksara"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "pautan simbolik"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "soket"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "barisan mesej"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semaphore"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "objek ingatan dikongsi"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "objek memori berjenis"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "fail khas blok"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "fail khas aksara"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "fail khas blok"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "fail khas aksara"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "fail pelik"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "fail khas blok"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "soket"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "fail pelik"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, fuzzy, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
-msgstr "%s: pilihan `%s' adalah kabur\n"
+msgstr "%s: pilihan '%s' adalah kabur; kemungkinan:"
+
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: pilihan '%s' adalah kabur; kemungkinan:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:654 lib/getopt.c:658
#, fuzzy, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
-msgstr "%s: pilihan `--%s' tidak mengizinkan hujah\n"
+msgstr "%s: pilihan `-W %s' tidak mengizinkan hujah\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, fuzzy, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
-msgstr "%s: pilihan `%c%s' tidak mengizinkan hujah\n"
+msgstr "%s: pilihan `-W %s' tidak mengizinkan hujah\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, fuzzy, c-format
msgid "%s: option '--%s' requires an argument\n"
-msgstr "%s: pilihan `%s' memerlukan hujah\n"
+msgstr "Pilihan \"%s\" memerlukan hujah"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, fuzzy, c-format
msgid "%s: unrecognized option '--%s'\n"
-msgstr "%s: pilihan tidak dikenali `--%s'\n"
+msgstr "%s: pilihan '%s' adalah kabur; kemungkinan:"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, fuzzy, c-format
msgid "%s: unrecognized option '%c%s'\n"
-msgstr "%s: pilihan tidak dikenali `%c%s'\n"
+msgstr "%s: -c tidak disokong pada rekabentuk %s\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, fuzzy, c-format
msgid "%s: invalid option -- '%c'\n"
-msgstr "%s: pilihan tidak sah -- %c\n"
+msgstr "Tetapan pilihan lekapan tidak sah: %s\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, fuzzy, c-format
msgid "%s: option requires an argument -- '%c'\n"
-msgstr "%s: pilihan memerlukan hujah -- %c\n"
+msgstr "Pilihan \"%s\" memerlukan hujah"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, fuzzy, c-format
msgid "%s: option '-W %s' is ambiguous\n"
-msgstr "%s: pilihan `-W %s' adalah kabur\n"
+msgstr "%s: pilihan '%s' adalah kabur; kemungkinan:"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, fuzzy, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: pilihan `-W %s' tidak mengizinkan hujah\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, fuzzy, c-format
msgid "%s: option '-W %s' requires an argument\n"
-msgstr "%s: pilihan `%s' memerlukan hujah\n"
+msgstr "Pilihan \"%s\" memerlukan hujah"
#. TRANSLATORS:
#. Get translations for open and closing quotation marks.
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
-msgstr ""
+msgstr "`"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
-msgstr ""
+msgstr "'"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Berjaya"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Tiada padanan"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Regular expression tidak sah"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Aksara pengumpulsemakan tidak sah"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Nama kelas aksara tidak sah"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Slash dibelakang"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Rujukan belakang tidak sah"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "[ atau [^ tidak sepadan"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "( atau \\( tidak sepadan"
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "\\{ tidak sepadan"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Kandungan \\{\\} tidak sah"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Julat akhir tidak sah"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Kehabisan memori"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Regular expression awalan tidak sah"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Regular expression tamat tiba-tiba"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Regular expression terlalu besar"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr ") atau \\) tidak sepadan"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Tiada regular expression terdahulu"
#: lib/xfreopen.c:35
msgid "stdin"
-msgstr ""
+msgstr "stdin"
#: lib/xfreopen.c:36
msgid "stdout"
-msgstr ""
+msgstr "stdout"
#: lib/xfreopen.c:37
msgid "stderr"
-msgstr ""
+msgstr "stderr"
#: lib/xfreopen.c:38
#, fuzzy
msgid "unknown stream"
-msgstr "Ralat sistem tidak diketahui"
+msgstr "Tidak dapat mencipta soket aliran."
#: lib/xfreopen.c:39
-#, c-format
+#, fuzzy, c-format
msgid "failed to reopen %s with mode %s"
-msgstr ""
+msgstr "regcomp() gagal pada %s: %s."
#: lib/xstrtol-error.c:63
#, fuzzy, c-format
msgid "invalid %s%s argument '%s'"
-msgstr "nilai --bytes `%s' tidak sah"
+msgstr "hujah tidak sah %s untuk %s"
#: lib/xstrtol-error.c:68
-#, c-format
+#, fuzzy, c-format
msgid "invalid suffix in %s%s argument '%s'"
-msgstr ""
+msgstr "hujah tidak sah %s untuk %s"
#: lib/xstrtol-error.c:72
-#, c-format
+#, fuzzy, c-format
msgid "%s%s argument '%s' too large"
-msgstr ""
+msgstr "hujah kabur %s untuk %s"
#: lib/version-etc.c:74
-#, c-format
+#, fuzzy, c-format
msgid "Packaged by %s (%s)\n"
msgstr ""
+"Ditulis oleh by %s, %s, %s,\n"
+"and %s.\n"
#: lib/version-etc.c:77
-#, c-format
+#, fuzzy, c-format
msgid "Packaged by %s\n"
-msgstr ""
+msgstr "Ditulis oleh %s, %s, and %s.\n"
#. TRANSLATORS: Translate "(C)" to the copyright symbol
#. (C-in-a-circle), if this symbol is available in the user's
#. locale. Otherwise, do not translate "(C)"; leave it as-is.
#: lib/version-etc.c:84
msgid "(C)"
-msgstr ""
+msgstr "(C)"
#: lib/version-etc.c:86
+#, fuzzy
msgid ""
"\n"
"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl."
"There is NO WARRANTY, to the extent permitted by law.\n"
"\n"
msgstr ""
+"Lesen GPLv3+: GNU GPL vesri 3 atau selepasnya <http://gnu.org/licenses/gpl."
+"html>\n"
+"Ini adalah perisan bebas: anda bebas untuk mengubah dan mengulangedarnya.\n"
+"TIADA JAMINAN diberikan, sehingga had yang dibenarkan oleh undang-undang.\n"
+"\n"
#. TRANSLATORS: %s denotes an author name.
#: lib/version-etc.c:102
#. "Report translation bugs to <...>\n" with the address for translation
#. bugs (typically your translation team's web or email address).
#: lib/version-etc.c:245
-#, c-format
+#, fuzzy, c-format
msgid ""
"\n"
"Report bugs to: %s\n"
-msgstr ""
+msgstr "Lapor pepijat ke %s.\n"
#: lib/version-etc.c:247
-#, c-format
+#, fuzzy, c-format
msgid "Report %s bugs to: %s\n"
msgstr ""
+"\n"
+"Lapor pepijat ke <%s>.\n"
#: lib/version-etc.c:251
-#, c-format
+#, fuzzy, c-format
msgid "%s home page: <%s>\n"
msgstr ""
+"// Dijana oleh %s.\n"
+"// Lapor pepijat ke <%s>.\n"
+"// Laman utama: <%s>.\n"
+"\n"
#: lib/version-etc.c:253
#, c-format
msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
-msgstr ""
+msgstr "Laman web %s: <http://www.gnu.org/software/%s/>\n"
#: lib/version-etc.c:256
+#, fuzzy
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr ""
+"Bantuan umum menggunakan perisian GNU: <http://www.gnu.org/gethelp/>.\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Fail %s dan %s berbeza\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, fuzzy, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Fail %s dan %s berbeza\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Tiada baris baru pada penghujung fail"
#. This is a proper name. See the gettext manual, section Names.
#: src/cmp.c:44
msgid "David MacKenzie"
-msgstr ""
+msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, fuzzy, c-format
msgid "Try '%s --help' for more information."
msgstr "Cuba `%s --help' untuk maklumat lanjut."
msgid "options -l and -s are incompatible"
msgstr "pilihan -l dan -s tidak sepadan"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "gagal menulis"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "keluaran piawai"
#: src/cmp.c:167
msgid "-s, --quiet, --silent suppress all normal output"
-msgstr ""
+msgstr "-s, --quiet, --silent sekat semua keluaran normal"
#: src/cmp.c:168
+#, fuzzy
msgid " --help display this help and exit"
-msgstr ""
+msgstr "Papar teks bantuan ini"
#: src/cmp.c:169
#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Keluarkan maklumat versi."
+msgstr "Papar maklumat versi dan keluar"
#: src/cmp.c:178
#, c-format
msgstr ""
"LANGKAU1 dan LANGKAU2 adalah jumlah byte untuk dilangkau dalam setiap fail."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
+#, fuzzy
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
+"Hujah wajib kepada pilihan panjang adalah wajib untuk pilihan pendek juga.\n"
#: src/cmp.c:191
msgid ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr "Jika FAIL adalah `-' atau tiada, baca masukan piawai."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"Status keluar adalah 0 jika masukan adalah sama, 1 jika berbeza, 2 jika "
msgid "invalid --bytes value '%s'"
msgstr "nilai --bytes `%s' tidak sah"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, fuzzy, c-format
msgid "missing operand after '%s'"
msgstr "operan hilang selepas `%s'"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, fuzzy, c-format
msgid "extra operand '%s'"
msgstr "operan tambahan `%s'"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s berbeza: byte %s, baris %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s berbeza: byte %s, baris %s adalah %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: EOF pada %s\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:49
msgid "Paul Eggert"
-msgstr ""
+msgstr "Paul Eggert"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:50
msgid "Mike Haertel"
-msgstr ""
+msgstr "Mike Haertel"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:51
msgid "David Hayes"
-msgstr ""
+msgstr "David Hayes"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:52
msgid "Richard Stallman"
-msgstr ""
+msgstr "Richard Stallman"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:53
msgid "Len Tower"
-msgstr ""
+msgstr "Len Tower"
-#: src/diff.c:339
+#: src/diff.c:351
#, fuzzy, c-format
msgid "invalid context length '%s'"
msgstr "panjang konteks `%s' tidak sah"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "pagination tidak disokong pada hos ini"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "terlalu banyak pilihan label fail"
-#: src/diff.c:514
+#: src/diff.c:526
#, fuzzy, c-format
msgid "invalid width '%s'"
msgstr "lebar `%s' tidak sah"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "pilihan lebar berkonflik"
-#: src/diff.c:543
+#: src/diff.c:555
#, fuzzy, c-format
msgid "invalid horizon length '%s'"
msgstr "panjang horizon `%s' tidak sah"
-#: src/diff.c:598
+#: src/diff.c:611
#, fuzzy, c-format
msgid "invalid tabsize '%s'"
msgstr "saiz tab `%s' tidak sah"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "pilihan saiz tab berkonflik"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "--from-file dan --to-file kedua-duanya dinyatakan"
-#: src/diff.c:854
+#: src/diff.c:883
#, fuzzy
msgid " --normal output a normal diff (the default)"
msgstr "--normal Keluarkan diff normal."
-#: src/diff.c:855
+#: src/diff.c:884
#, fuzzy
msgid "-q, --brief report only when files differ"
msgstr "-q --brief Keluaran hanya jika fail berbeza."
-#: src/diff.c:856
+#: src/diff.c:885
#, fuzzy
msgid "-s, --report-identical-files report when two files are the same"
msgstr "-s --report-identical-files Lapor apabila dua fail adalah sama."
-#: src/diff.c:857
+#: src/diff.c:886
+#, fuzzy
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
+"-c -C NOM --context[=NOM] Keluarkan NOM (default 3) baris konteks yang "
+"disalin.\n"
+"-u -U NOM --unified[=NOM] Keluarkan NOM (default 3) baris konteks "
+"tergabung.\n"
+" --label LABEL Guna LABEL selain daripada nama fail.\n"
+" -p --show-c-function Papar fungsi C yang mana dalam setiap perubahan.\n"
+" -F RE --show-function-line=RE Papar baris terbaru sepadan RE."
-#: src/diff.c:858
+#: src/diff.c:887
#, fuzzy
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
-"-w NOM --width=NOM Keluarkan paling banyak NOM (default 130) lajur cetakan."
+"-c -C NOM --context[=NOM] Keluarkan NOM (default 3) baris konteks yang "
+"disalin.\n"
+"-u -U NOM --unified[=NOM] Keluarkan NOM (default 3) baris konteks "
+"tergabung.\n"
+" --label LABEL Guna LABEL selain daripada nama fail.\n"
+" -p --show-c-function Papar fungsi C yang mana dalam setiap perubahan.\n"
+" -F RE --show-function-line=RE Papar baris terbaru sepadan RE."
-#: src/diff.c:859
+#: src/diff.c:888
#, fuzzy
msgid "-e, --ed output an ed script"
msgstr "-e --ed Keluarkan skrip ed."
-#: src/diff.c:860
+#: src/diff.c:889
#, fuzzy
msgid "-n, --rcs output an RCS format diff"
msgstr "-n --rcs Keluarkan diff format RCS."
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
-msgstr ""
+msgstr "-y, --side-by-side keluaran dalam dua lajur"
-#: src/diff.c:862
+#: src/diff.c:891
#, fuzzy
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"-w NOM --width=NOM Keluarkan paling banyak NOM (default 130) lajur cetakan."
-#: src/diff.c:863
+#: src/diff.c:892
#, fuzzy
msgid ""
" --left-column output only the left column of common lines"
msgstr "-l --left-column Keluarkan hanya lajur kiri baris yang sama."
-#: src/diff.c:864
+#: src/diff.c:893
#, fuzzy
msgid " --suppress-common-lines do not output common lines"
msgstr "-s --suppress-common-lines Jangan keluarkan baris sama."
-#: src/diff.c:866
+#: src/diff.c:895
+#, fuzzy
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
+"-c -C NOM --context[=NOM] Keluarkan NOM (default 3) baris konteks yang "
+"disalin.\n"
+"-u -U NOM --unified[=NOM] Keluarkan NOM (default 3) baris konteks "
+"tergabung.\n"
+" --label LABEL Guna LABEL selain daripada nama fail.\n"
+" -p --show-c-function Papar fungsi C yang mana dalam setiap perubahan.\n"
+" -F RE --show-function-line=RE Papar baris terbaru sepadan RE."
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
-msgstr ""
+msgstr "-F, --show-function-line=RE papar baris paling terkini sepadan RE"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
-msgstr ""
+msgstr "-L LABEL --label=LABEL Guna LABEL selain daripada nama fail."
-#: src/diff.c:871
+#: src/diff.c:900
#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr "-t --expand-tabs Kembang tab kepada ruang dalam keluaran."
-#: src/diff.c:872
+#: src/diff.c:901
#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr "-T --initial-tab Jadikan tab sebaris dengan menambah awalan tab."
-#: src/diff.c:873
+#: src/diff.c:902
#, fuzzy
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr "--tabsize=NOM Hentian tab setial NOM (default 8) lajur cetakan."
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
+" --suppress-blank-empty sekat ruang atau tab sebelum baris keluaran "
+"kosong"
-#: src/diff.c:875
+#: src/diff.c:904
#, fuzzy
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr "-l --paginate Salur keluaran menerusi `pr' untuk paginate."
-#: src/diff.c:877
+#: src/diff.c:906
#, fuzzy
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
"-r --recursive Banding berulang-ulang sebarang subdirektori yang dijumpai."
-#: src/diff.c:878
+#: src/diff.c:907
+#, fuzzy
msgid " --no-dereference don't follow symbolic links"
-msgstr ""
+msgstr "Jangan ikut pautan simbolik, tulisemula"
-#: src/diff.c:879
+#: src/diff.c:908
#, fuzzy
msgid "-N, --new-file treat absent files as empty"
msgstr "-N --new-file Anggap fail tidak wujud sebagai kosong."
-#: src/diff.c:880
+#: src/diff.c:909
#, fuzzy
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr "--unidirectional-new-file Anggap fail tidak wujud sebagai kosong."
-#: src/diff.c:881
+#: src/diff.c:910
#, fuzzy
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr "--ignore-file-name-case Abai case apabila membanding nama fail."
-#: src/diff.c:882
+#: src/diff.c:911
#, fuzzy
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
"--no-ignore-file-name-case Ambil kira case ketika membanding nama fail."
-#: src/diff.c:883
+#: src/diff.c:912
#, fuzzy
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr "-x PAT --exclude=PAT Asing fail yang sepadan PAT."
-#: src/diff.c:884
+#: src/diff.c:913
#, fuzzy
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
"-X FAIL --exclude-from=FAIL Asing fail yang sepadan sebarang corak dalam "
"FAIL."
-#: src/diff.c:885
+#: src/diff.c:914
#, fuzzy
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
"-S FAIL --starting-file=FAIL Mula dengan FAIL apabila membanding direktori."
-#: src/diff.c:886
+#: src/diff.c:915
#, fuzzy
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
"--from-file=FAIL1 Banding FAIL1 kepada semua operan. FAIL1 boleh jadi "
"direktori."
-#: src/diff.c:888
+#: src/diff.c:917
#, fuzzy
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
"--to-file=FAIL2 Banding semua operan kepada FAIL2. FAIL2 boleh jadi "
"direktori."
-#: src/diff.c:891
+#: src/diff.c:920
#, fuzzy
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr "-i --ignore-case Abai perbezaan case dalam kandungan fail."
-#: src/diff.c:892
+#: src/diff.c:921
#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
"-E --ignore-tab-expansion Abai perubahan diakibatkan oleh pengembangan tab."
-#: src/diff.c:893
+#: src/diff.c:922
#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr "-w --ignore-all-space Abai semua ruang putih."
-#: src/diff.c:894
+#: src/diff.c:923
#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr "-b --ignore-space-change Abai perubahan dalam jumlah ruang putih."
-#: src/diff.c:895
+#: src/diff.c:924
#, fuzzy
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w --ignore-all-space Abai semua ruang putih."
-#: src/diff.c:896
+#: src/diff.c:925
#, fuzzy
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
"-B --ignore-blank-lines Abai perubahan dimana baris adalah kesemuanya "
"kosong."
-#: src/diff.c:897
+#: src/diff.c:926
#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I RE --ignore-matching-lines=RE Abai perubahan dimana baris semua sepadan "
"RE."
-#: src/diff.c:899
+#: src/diff.c:928
#, fuzzy
msgid "-a, --text treat all files as text"
msgstr "-a --text Layan semua fail sebagai teks."
-#: src/diff.c:900
+#: src/diff.c:929
#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr "--strip-trailing-cr Buang enter penghujung pada masukan."
-#: src/diff.c:902
+#: src/diff.c:931
#, fuzzy
msgid " --binary read and write data in binary mode"
msgstr "--binary Baca dan tulis data dalam mod binari."
-#: src/diff.c:905
+#: src/diff.c:934
#, fuzzy
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
"-D NAMA --ifdef=NAMA Keluarkan fail tergabung untuk menunjukkan perbezaa "
"`#ifdef NAMA'."
-#: src/diff.c:906
+#: src/diff.c:935
#, fuzzy
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
"--GTYPE-group-format=GFMT Hampir sama, tetapi format masukan GTYPE "
"dikumpulkan dengan GFMT."
-#: src/diff.c:907
+#: src/diff.c:936
#, fuzzy
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
"--line-format=LFMT Hampir sama, tetapi format semua baris masukan dengan "
"LFMT."
-#: src/diff.c:908
+#: src/diff.c:937
#, fuzzy
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
"--LTYPE-line-format=LFMT Hampir sama, tetapi format baris masukan LTYPE "
"dengan LFMT."
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
-#: src/diff.c:911
+#: src/diff.c:940
#, fuzzy
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" LTYPE adalah `old', `new', atau `unchanged'. GTYPE adalah LTYPE atau "
"`changed'."
-#: src/diff.c:912
+#: src/diff.c:941
#, fuzzy
msgid ""
" GFMT (only) may contain:\n"
" E F-1\n"
" M L+1"
-#: src/diff.c:924
+#: src/diff.c:953
#, fuzzy
msgid ""
" LFMT (only) may contain:\n"
" %l kandungan baris, tidak termasuk baris baru dipenghujung\n"
" %[-][WIDTH][.[PREC]]{doxX}n spec gaya-printf untuk nombor baris masukan"
-#: src/diff.c:928
+#: src/diff.c:957
#, fuzzy
msgid ""
" Both GFMT and LFMT may contain:\n"
" %c'C' satu aksara C\n"
" %c'\\OOO' aksara dengan kod oktal OOO"
-#: src/diff.c:934
+#: src/diff.c:963
#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr "-d --minimal Cuba cari dengan tekun set perbezaan yang kecil."
-#: src/diff.c:935
+#: src/diff.c:964
#, fuzzy
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr "--horizon-lines=NOM Pastikan NOM baris prefix dan suffix sama."
-#: src/diff.c:936
+#: src/diff.c:965
#, fuzzy
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
-"-H --speed-large-files Anggap fail besar dan banyak perubahan kecil "
-"tersebar."
+"--speed-large-files Anggap fail besar dan banyak perubahan kecil tersebar."
-#: src/diff.c:938
-msgid " --help display this help and exit"
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr "--normal Keluarkan diff normal."
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:971
+#, fuzzy
+msgid " --help display this help and exit"
+msgstr "Papar teks bantuan ini"
+
+#: src/diff.c:972
#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Keluarkan maklumat versi."
+msgstr "Papar maklumat versi dan keluar"
-#: src/diff.c:941
+#: src/diff.c:974
#, fuzzy
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"FAIL-FAIL adalah `FAIL1 FAIL2' atau `DIR1 DIR2' atau `DIR FAIL...' atau "
"`FAIL... DIR'."
-#: src/diff.c:942
+#: src/diff.c:975
#, fuzzy
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr "Jika --from-file atau --to-file diberi, tiada sekatan pada FAIL."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
#, fuzzy
msgid "If a FILE is '-', read standard input."
msgstr "Jika FAIL adalah `-', baca masukan piawai."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Penggunaan: %s [PILIHAN]... FAIL\n"
-#: src/diff.c:954
+#: src/diff.c:987
#, fuzzy
msgid "Compare FILES line by line."
msgstr "Banding fail setiap baris."
-#: src/diff.c:988
+#: src/diff.c:1021
#, fuzzy, c-format
msgid "conflicting %s option value '%s'"
msgstr "nilai pilihan %s berkonflik `%s'"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "pilihan gaya keluaran berkonflik"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "lebar `%s' tidak sah"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Hanya dalam %s: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
#, fuzzy
msgid "cannot compare '-' to a directory"
msgstr "tidak dapat membandingkan `-' kepada direktori"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "pilihan -D tidak disokong dengan direktori"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Subdirektori umum: %s dan %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "Fail %s adalah %s manakala fail %s adalah %s\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, fuzzy, c-format
msgid "Symbolic links %s and %s differ\n"
-msgstr "Fail %s dan %s berbeza\n"
+msgstr "%s bukan fail biasa atau pautan simbolik."
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Fail %s dan %s adalah serupa\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff3.c:41
msgid "Randy Smith"
-msgstr ""
+msgstr "Randy Smith"
#: src/diff3.c:313
#, c-format
msgid "'-' specified for more than one input file"
msgstr "`-' dinyatakan untuk lebih daripada satu fail masukan"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "gagal membaca"
msgstr ""
#: src/diff3.c:448
+#, fuzzy
msgid " --help display this help and exit"
-msgstr ""
+msgstr "Papar teks bantuan ini"
#: src/diff3.c:449
#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Keluarkan maklumat versi."
+msgstr "Papar maklumat versi dan keluar"
#: src/diff3.c:458
#, c-format
msgid "invalid diff format; invalid change separator"
msgstr "format diff tidak sah; pengasing perbezaan tidak sah"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "format diff tidak sah; baris akhir tidak lengkap"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, fuzzy, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "program subsidiari `%s' tidak dapat dilaksanakan"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "format diff tidak sah; aksara awal baris tidak betul"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "ralat dalaman: jenis diff tidak sah diberikan kepada keluaran"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "fail masukan mengecil"
-#: src/dir.c:158
+#: src/dir.c:156
#, fuzzy, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "tidak dapat membandingkan fail bernama `%s' dan `%s'"
-#: src/dir.c:209
-#, c-format
+#: src/dir.c:225
+#, fuzzy, c-format
msgid "%s: recursive directory loop"
-msgstr ""
+msgstr "\"%s\" adalah sebuah direktori"
#. This is a proper name. See the gettext manual, section Names.
#: src/sdiff.c:42
msgid "Thomas Lord"
-msgstr ""
+msgstr "Thomas Lord"
#: src/sdiff.c:173
#, fuzzy
#: src/sdiff.c:179
#, fuzzy
msgid "-W, --ignore-all-space ignore all white space"
-msgstr "-W --ignore-all-space Abai semua ruang putih."
+msgstr "-w --ignore-all-space Abai semua ruang putih."
#: src/sdiff.c:180
#, fuzzy
msgstr "--diff-program=PROGRAM Guna PROGRAM untuk membanding fail."
#: src/sdiff.c:196
+#, fuzzy
msgid " --help display this help and exit"
-msgstr ""
+msgstr "Papar teks bantuan ini"
#: src/sdiff.c:197
#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Keluarkan maklumat versi."
+msgstr "Papar maklumat versi dan keluar"
#: src/sdiff.c:206
#, c-format
"v:\tSertakan baris sama dengan berjela.\n"
"q:\tKeluar.\n"
-#~ msgid "%s: illegal option -- %c\n"
-#~ msgstr "%s: pilihan salah -- %c\n"
-
-#~ msgid ""
-#~ "This is free software; see the source for copying conditions. There is "
-#~ "NO\n"
-#~ "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR "
-#~ "PURPOSE.\n"
-#~ msgstr ""
-#~ "Ini adalah perisian bebas; lihat sumber untuk syarat menyalin. TIADA "
-#~ "jaminan disediakan;\n"
-#~ "tidak juga untuk KEBOLEHDAGANGAN atau KEUPAYAAN UNTUK SESUATU TUJUAN "
-#~ "KHUSUS.\n"
-
-#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
-#~ msgstr "-i LANGKAU1:LANGKAU2 --ignore-initial=LANGKAU1:LANGKAU2"
-
-#~ msgid "-s --quiet --silent Output nothing; yield exit status only."
-#~ msgstr ""
-#~ "-s --quiet --silent Tiada keluaran; hasilkan status keluaran sahaja."
-
-#~ msgid "--help Output this help."
-#~ msgstr "--help Keluarkan bantuan ini."
-
-#~ msgid "Report bugs to <bug-gnu-utils@gnu.org>."
-#~ msgstr "Lapor pepijat kepada <bug-gnu-utils@gnu.org>."
-
-#~ msgid "`-%ld' option is obsolete; use `-%c %ld'"
-#~ msgstr "pilihan `-%ld' tidak lagi digunakan; guna `-%c %ld'"
-
-#~ msgid "`-%ld' option is obsolete; omit it"
-#~ msgstr "pilihan `-%ld' tidak lagi digunakan; abaikannya"
-
-#~ msgid ""
-#~ "-c -C NUM --context[=NUM] Output NUM (default 3) lines of copied "
-#~ "context.\n"
-#~ "-u -U NUM --unified[=NUM] Output NUM (default 3) lines of unified "
-#~ "context.\n"
-#~ " --label LABEL Use LABEL instead of file name.\n"
-#~ " -p --show-c-function Show which C function each change is in.\n"
-#~ " -F RE --show-function-line=RE Show the most recent line matching RE."
-#~ msgstr ""
-#~ "-c -C NOM --context[=NOM] Keluarkan NOM (default 3) baris konteks yang "
-#~ "disalin.\n"
-#~ "-u -U NOM --unified[=NOM] Keluarkan NOM (default 3) baris konteks "
-#~ "tergabung.\n"
-#~ " --label LABEL Guna LABEL selain daripada nama fail.\n"
-#~ " -p --show-c-function Papar fungsi C yang mana dalam setiap "
-#~ "perubahan.\n"
-#~ " -F RE --show-function-line=RE Papar baris terbaru sepadan RE."
-
-#~ msgid ""
-#~ "-y --side-by-side Output in two columns.\n"
-#~ " -W NUM --width=NUM Output at most NUM (default 130) print columns.\n"
-#~ " --left-column Output only the left column of common lines.\n"
-#~ " --suppress-common-lines Do not output common lines."
-#~ msgstr ""
-#~ "-y --side-by-side Keluaran dalam dua lajur.\n"
-#~ " -W NOM --width=NOM Keluarkan paling banyak NOM (default 130) lajur "
-#~ "cetakan.\n"
-#~ " --left-column Keluarkan hanya lajur kiri pada baris sama.\n"
-#~ " --suppress-common-lines Jangan keluarkan baris sama."
-
-#~ msgid ""
-#~ "--speed-large-files Assume large files and many scattered small changes."
-#~ msgstr ""
-#~ "--speed-large-files Anggap fail besar dan banyak perubahan kecil "
-#~ "tersebar."
-
-#~ msgid "-X Output overlapping changes, bracketing them."
-#~ msgstr "-X Keluarkan perubahan bertindih, kurungkan mereka."
-
-#~ msgid "-m --merge Output merged file instead of ed script (default -A)."
-#~ msgstr ""
-#~ "-m --merge Keluarkan fail tergabung selain daripada skrip ed (default -"
-#~ "A)."
-
-#~ msgid "-L LABEL --label=LABEL Use LABEL instead of file name."
-#~ msgstr "-L LABEL --label=LABEL Guna LABEL selain daripada nama fail."
-
-#~ msgid "subsidiary program `%s' not found"
-#~ msgstr "program subsidiari `%s' tidak dijumpai"
-
-#~ msgid "subsidiary program `%s' failed"
-#~ msgstr "program subsidiari `%s' gagal"
-
-#~ msgid "subsidiary program `%s' failed (exit status %d)"
-#~ msgstr "program subsidiari `%s' gagal (status keluar %d)"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: pilihan '%s' adalah kabur; kemungkinan:"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
--- /dev/null
+# Norwegian bokmål translation of GNU diffutils
+# Copyright (C) 2000, 2012 Free Software Foundation, Inc.
+# This file is distributed under the same license as the diffutils package.
+# Åka Sikrom <a4@hush.com>, 2015.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: diffutils-3.3-pre1\n"
+"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
+"PO-Revision-Date: 2015-01-23 18:51+0100\n"
+"Last-Translator: Åka Sikrom <a4@hush.com>\n"
+"Language-Team: Norwegian Bokmaal <i18n-nb@lister.ping.uio.no>\n"
+"Language: nb\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Poedit 1.5.4\n"
+
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "%s%s-argumentet «%s» er ugyldig"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "%s%s-argumentet «%s» er ugyldig"
+
+#: lib/c-stack.c:204 lib/c-stack.c:297
+msgid "program error"
+msgstr "programfeil"
+
+#: lib/c-stack.c:205 lib/c-stack.c:298
+msgid "stack overflow"
+msgstr "stabel er full"
+
+#: lib/error.c:191
+msgid "Unknown system error"
+msgstr "Ukjent systemfeil"
+
+#: lib/file-type.c:40
+msgid "regular empty file"
+msgstr "vanlig tom fil"
+
+#: lib/file-type.c:40
+msgid "regular file"
+msgstr "vanlig fil"
+
+#: lib/file-type.c:43
+msgid "directory"
+msgstr "mappe"
+
+#: lib/file-type.c:46
+msgid "symbolic link"
+msgstr "symbolsk lenke"
+
+#: lib/file-type.c:52
+msgid "message queue"
+msgstr "meldingskø"
+
+#: lib/file-type.c:55
+msgid "semaphore"
+msgstr "semafor"
+
+#: lib/file-type.c:58
+msgid "shared memory object"
+msgstr "delt minneobjekt"
+
+#: lib/file-type.c:61
+msgid "typed memory object"
+msgstr "typebestemt minneobjekt"
+
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "blokk-spesialfil"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "tegn-spesialfil"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "blokk-spesialfil"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "tegn-spesialfil"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "rar fil"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "blokk-spesialfil"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "sokkel"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
+msgid "weird file"
+msgstr "rar fil"
+
+#: lib/getopt.c:575 lib/getopt.c:604
+#, c-format
+msgid "%s: option '%s' is ambiguous; possibilities:"
+msgstr "%s: valget «%s» er flertydig, og kan bety følgende:"
+
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: valget «-W %s» er flertydig\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
+#, c-format
+msgid "%s: option '--%s' doesn't allow an argument\n"
+msgstr "%s: valget «--%s» tillater ikke argumenter\n"
+
+#: lib/getopt.c:667 lib/getopt.c:672
+#, c-format
+msgid "%s: option '%c%s' doesn't allow an argument\n"
+msgstr "%s: valget «%c%s» tillater ikke argumenter\n"
+
+#: lib/getopt.c:715 lib/getopt.c:734
+#, c-format
+msgid "%s: option '--%s' requires an argument\n"
+msgstr "%s: krever «--%s» krever et argument\n"
+
+#: lib/getopt.c:772 lib/getopt.c:775
+#, c-format
+msgid "%s: unrecognized option '--%s'\n"
+msgstr "%s: «--%s» er et ukjent valg\n"
+
+#: lib/getopt.c:783 lib/getopt.c:786
+#, c-format
+msgid "%s: unrecognized option '%c%s'\n"
+msgstr "%s: «%c%s» er et ukjent valg\n"
+
+#: lib/getopt.c:835 lib/getopt.c:838
+#, c-format
+msgid "%s: invalid option -- '%c'\n"
+msgstr "%s: «%c» er et ugyldig valg\n"
+
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
+#, c-format
+msgid "%s: option requires an argument -- '%c'\n"
+msgstr "%s: valget -- «%c» krever et argument\n"
+
+#: lib/getopt.c:964 lib/getopt.c:980
+#, c-format
+msgid "%s: option '-W %s' is ambiguous\n"
+msgstr "%s: valget «-W %s» er flertydig\n"
+
+#: lib/getopt.c:1004 lib/getopt.c:1022
+#, c-format
+msgid "%s: option '-W %s' doesn't allow an argument\n"
+msgstr "%s: valget «-W %s» tillater ikke argumenter\n"
+
+#: lib/getopt.c:1043 lib/getopt.c:1061
+#, c-format
+msgid "%s: option '-W %s' requires an argument\n"
+msgstr "%s: valget «-W %s» krever et argument\n"
+
+#. TRANSLATORS:
+#. Get translations for open and closing quotation marks.
+#. The message catalog should translate "`" to a left
+#. quotation mark suitable for the locale, and similarly for
+#. "'". For example, a French Unicode local should translate
+#. these to U+00AB (LEFT-POINTING DOUBLE ANGLE
+#. QUOTATION MARK), and U+00BB (RIGHT-POINTING DOUBLE ANGLE
+#. QUOTATION MARK), respectively.
+#.
+#. If the catalog has no translation, we will try to
+#. use Unicode U+2018 (LEFT SINGLE QUOTATION MARK) and
+#. Unicode U+2019 (RIGHT SINGLE QUOTATION MARK). If the
+#. current locale is not Unicode, locale_quoting_style
+#. will quote 'like this', and clocale_quoting_style will
+#. quote "like this". You should always include translations
+#. for "`" and "'" even if U+2018 and U+2019 are appropriate
+#. for your locale.
+#.
+#. If you don't know what to put here, please see
+#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
+#. and use glyphs suitable for your language.
+#: lib/quotearg.c:347
+msgid "`"
+msgstr "«"
+
+#: lib/quotearg.c:348
+msgid "'"
+msgstr "»"
+
+#: lib/regcomp.c:135
+msgid "Success"
+msgstr "Fullført"
+
+#: lib/regcomp.c:138
+msgid "No match"
+msgstr "Ingen treff"
+
+#: lib/regcomp.c:141
+msgid "Invalid regular expression"
+msgstr "Ugyldig regulært uttrykk"
+
+#: lib/regcomp.c:144
+msgid "Invalid collation character"
+msgstr "Ugyldig sorteringstegn"
+
+#: lib/regcomp.c:147
+msgid "Invalid character class name"
+msgstr "Ugyldig tegnklassenavn"
+
+#: lib/regcomp.c:150
+msgid "Trailing backslash"
+msgstr "Etterfølgende omvendt skråstrek"
+
+#: lib/regcomp.c:153
+msgid "Invalid back reference"
+msgstr "Ugyldig tilbakereferanse"
+
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
+msgstr "Ingen treff på «[» eller «[^»"
+
+#: lib/regcomp.c:159
+msgid "Unmatched ( or \\("
+msgstr "Ingen treff på «(» eller «\\(»"
+
+#: lib/regcomp.c:162
+msgid "Unmatched \\{"
+msgstr "Ingen treff på «\\{{»"
+
+#: lib/regcomp.c:165
+msgid "Invalid content of \\{\\}"
+msgstr "Ugyldig innhold i «\\{\\}»"
+
+#: lib/regcomp.c:168
+msgid "Invalid range end"
+msgstr "Ugyldig slutt på rekkevidde"
+
+#: lib/regcomp.c:171
+msgid "Memory exhausted"
+msgstr "Minnet er fullt"
+
+#: lib/regcomp.c:174
+msgid "Invalid preceding regular expression"
+msgstr "Ugyldig foregående regulært uttrykk"
+
+#: lib/regcomp.c:177
+msgid "Premature end of regular expression"
+msgstr "For tidlig slutt på regulært uttrykk"
+
+#: lib/regcomp.c:180
+msgid "Regular expression too big"
+msgstr "Regulært uttrykk er for stort"
+
+#: lib/regcomp.c:183
+msgid "Unmatched ) or \\)"
+msgstr "Ingen treff på «)» eller «\\)»"
+
+#: lib/regcomp.c:687
+msgid "No previous regular expression"
+msgstr "Intet tidligere regulært uttrykk"
+
+#: lib/xalloc-die.c:34
+msgid "memory exhausted"
+msgstr "minnet er fullt"
+
+#: lib/xfreopen.c:35
+msgid "stdin"
+msgstr "std.innkanal"
+
+#: lib/xfreopen.c:36
+msgid "stdout"
+msgstr "std.utkanal"
+
+#: lib/xfreopen.c:37
+msgid "stderr"
+msgstr "std.feilkanal"
+
+#: lib/xfreopen.c:38
+msgid "unknown stream"
+msgstr "ukjent strøm"
+
+#: lib/xfreopen.c:39
+#, c-format
+msgid "failed to reopen %s with mode %s"
+msgstr "klarte ikke å åpne %s på nytt med modus %s"
+
+#: lib/xstrtol-error.c:63
+#, c-format
+msgid "invalid %s%s argument '%s'"
+msgstr "%s%s-argumentet «%s» er ugyldig"
+
+#: lib/xstrtol-error.c:68
+#, c-format
+msgid "invalid suffix in %s%s argument '%s'"
+msgstr "ugyldig suffiks i %s%s-argument «%s»"
+
+#: lib/xstrtol-error.c:72
+#, c-format
+msgid "%s%s argument '%s' too large"
+msgstr "%s%s-argumentet «%s» er for stort"
+
+#: lib/version-etc.c:74
+#, c-format
+msgid "Packaged by %s (%s)\n"
+msgstr "Pakket av %s (%s)\n"
+
+#: lib/version-etc.c:77
+#, c-format
+msgid "Packaged by %s\n"
+msgstr "Pakket av %s\n"
+
+#. TRANSLATORS: Translate "(C)" to the copyright symbol
+#. (C-in-a-circle), if this symbol is available in the user's
+#. locale. Otherwise, do not translate "(C)"; leave it as-is.
+#: lib/version-etc.c:84
+msgid "(C)"
+msgstr "©"
+
+#: lib/version-etc.c:86
+msgid ""
+"\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"
+msgstr ""
+"\n"
+"Lisens GPLv3+: GNU GPL versjon 3 eller senere <http://gnu.org/licenses/gpl."
+"html>.\n"
+"Dette er fri programvare. Du kan endre den og dele den videre.\n"
+"Det stilles INGEN GARANTI, i den grad dette tillates av gjeldende lovverk.\n"
+"\n"
+
+#. TRANSLATORS: %s denotes an author name.
+#: lib/version-etc.c:102
+#, c-format
+msgid "Written by %s.\n"
+msgstr "Skrevet av %s.\n"
+
+#. TRANSLATORS: Each %s denotes an author name.
+#: lib/version-etc.c:106
+#, c-format
+msgid "Written by %s and %s.\n"
+msgstr "Skrevet av %s og %s.\n"
+
+#. TRANSLATORS: Each %s denotes an author name.
+#: lib/version-etc.c:110
+#, c-format
+msgid "Written by %s, %s, and %s.\n"
+msgstr "Skrevet av %s, %s og %s.\n"
+
+#. TRANSLATORS: Each %s denotes an author name.
+#. You can use line breaks, estimating that each author name occupies
+#. ca. 16 screen columns and that a screen line has ca. 80 columns.
+#: lib/version-etc.c:117
+#, c-format
+msgid ""
+"Written by %s, %s, %s,\n"
+"and %s.\n"
+msgstr ""
+"Skrevet av %s, %s, %s\n"
+"og %s.\n"
+
+#. TRANSLATORS: Each %s denotes an author name.
+#. You can use line breaks, estimating that each author name occupies
+#. ca. 16 screen columns and that a screen line has ca. 80 columns.
+#: lib/version-etc.c:124
+#, c-format
+msgid ""
+"Written by %s, %s, %s,\n"
+"%s, and %s.\n"
+msgstr ""
+"Skrevet av %s, %s, %s,\n"
+"%s og %s.\n"
+
+#. TRANSLATORS: Each %s denotes an author name.
+#. You can use line breaks, estimating that each author name occupies
+#. ca. 16 screen columns and that a screen line has ca. 80 columns.
+#: lib/version-etc.c:131
+#, c-format
+msgid ""
+"Written by %s, %s, %s,\n"
+"%s, %s, and %s.\n"
+msgstr ""
+"Skrevet av %s, %s, %s,\n"
+"%s, %s og %s.\n"
+
+#. TRANSLATORS: Each %s denotes an author name.
+#. You can use line breaks, estimating that each author name occupies
+#. ca. 16 screen columns and that a screen line has ca. 80 columns.
+#: lib/version-etc.c:139
+#, c-format
+msgid ""
+"Written by %s, %s, %s,\n"
+"%s, %s, %s, and %s.\n"
+msgstr ""
+"Skrevet av %s, %s, %s,\n"
+"%s, %s, %s og %s.\n"
+
+#. TRANSLATORS: Each %s denotes an author name.
+#. You can use line breaks, estimating that each author name occupies
+#. ca. 16 screen columns and that a screen line has ca. 80 columns.
+#: lib/version-etc.c:147
+#, c-format
+msgid ""
+"Written by %s, %s, %s,\n"
+"%s, %s, %s, %s,\n"
+"and %s.\n"
+msgstr ""
+"Skrevet av %s, %s, %s,\n"
+"%s, %s, %s, %s\n"
+"og %s.\n"
+
+#. TRANSLATORS: Each %s denotes an author name.
+#. You can use line breaks, estimating that each author name occupies
+#. ca. 16 screen columns and that a screen line has ca. 80 columns.
+#: lib/version-etc.c:156
+#, c-format
+msgid ""
+"Written by %s, %s, %s,\n"
+"%s, %s, %s, %s,\n"
+"%s, and %s.\n"
+msgstr ""
+"Skrevet av %s, %s, %s,\n"
+"%s, %s, %s, %s,\n"
+"%s og %s.\n"
+
+#. TRANSLATORS: Each %s denotes an author name.
+#. You can use line breaks, estimating that each author name occupies
+#. ca. 16 screen columns and that a screen line has ca. 80 columns.
+#: lib/version-etc.c:167
+#, c-format
+msgid ""
+"Written by %s, %s, %s,\n"
+"%s, %s, %s, %s,\n"
+"%s, %s, and others.\n"
+msgstr ""
+"Skrevet av %s, %s, %s,\n"
+"%s, %s, %s, %s,\n"
+"%s, %s og andre.\n"
+
+#. TRANSLATORS: The placeholder indicates the bug-reporting address
+#. for this package. Please add _another line_ saying
+#. "Report translation bugs to <...>\n" with the address for translation
+#. bugs (typically your translation team's web or email address).
+#: lib/version-etc.c:245
+#, c-format
+msgid ""
+"\n"
+"Report bugs to: %s\n"
+msgstr ""
+"\n"
+"Rapporter programfeil til: %s\n"
+"Rapporter oversettelsesfeil til: <i18n-no@lister.ping.uio.no>\n"
+
+#: lib/version-etc.c:247
+#, c-format
+msgid "Report %s bugs to: %s\n"
+msgstr "Rapporter programfeil i %s til: %s\n"
+
+#: lib/version-etc.c:251
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr "Nettside for %s: <%s>\n"
+
+#: lib/version-etc.c:253
+#, c-format
+msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
+msgstr "Nettside for %s: <http://www.gnu.org/software/%s/>\n"
+
+#: lib/version-etc.c:256
+msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
+msgstr ""
+"Generell hjelp til å bruke GNU-programmer: <http://www.gnu.org/gethelp/>\n"
+
+#: src/analyze.c:454 src/diff.c:1393
+#, c-format
+msgid "Files %s and %s differ\n"
+msgstr "Filene %s og %s er ulike\n"
+
+#: src/analyze.c:455
+#, c-format
+msgid "Binary files %s and %s differ\n"
+msgstr "Binærfilene %s og %s er ulike\n"
+
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
+msgid "No newline at end of file"
+msgstr "Intet linjeskift i slutten av fila"
+
+#. This is a proper name. See the gettext manual, section Names.
+#: src/cmp.c:43
+msgid "Torbjorn Granlund"
+msgstr "Torbjörn Granlund"
+
+#. This is a proper name. See the gettext manual, section Names.
+#: src/cmp.c:44
+msgid "David MacKenzie"
+msgstr "David MacKenzie"
+
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
+#, c-format
+msgid "Try '%s --help' for more information."
+msgstr "Prøv «%s --help» for ytterligere informasjon."
+
+#: src/cmp.c:137
+#, c-format
+msgid "invalid --ignore-initial value '%s'"
+msgstr "«%s» er en ugyldig verdi for «--ignore-initial»"
+
+#: src/cmp.c:147
+#, c-format
+msgid "options -l and -s are incompatible"
+msgstr "valgene «-l» og «-s» kan ikke brukes samtidig"
+
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
+msgid "write failed"
+msgstr "skriving mislyktes"
+
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
+msgid "standard output"
+msgstr "standardutdata"
+
+#: src/cmp.c:161
+msgid "-b, --print-bytes print differing bytes"
+msgstr "-b, --print-bytes skriv ut byte som er ulike"
+
+#: src/cmp.c:162
+msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs"
+msgstr ""
+"-i, --ignore-initial=ANT hopp over første valgt ANTall byte begge "
+"FILer"
+
+#: src/cmp.c:163
+msgid ""
+"-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n"
+" first SKIP2 bytes of FILE2"
+msgstr ""
+"-i, --ignore-initial=ANT1:ANT2 hopp over første valgt ANT1 byte i FIL1 og\n"
+" ANT2 byte i FIL2"
+
+#: src/cmp.c:165
+msgid ""
+"-l, --verbose output byte numbers and differing byte values"
+msgstr ""
+"-l, --verbose skriv ut byte-nummer og avvikende byte-verdier"
+
+#: src/cmp.c:166
+msgid "-n, --bytes=LIMIT compare at most LIMIT bytes"
+msgstr "-n, --bytes=ANT ikke sammenlikn flere enn valgt ANTall byte"
+
+#: src/cmp.c:167
+msgid "-s, --quiet, --silent suppress all normal output"
+msgstr "-s, --quiet, --silent ikke skriv ut vanlig utdata"
+
+#: src/cmp.c:168
+msgid " --help display this help and exit"
+msgstr " --help vis denne hjelpeteksten og avslutt"
+
+#: src/cmp.c:169
+msgid "-v, --version output version information and exit"
+msgstr "-v, --version skriv ut versjonsinformasjon og avslutt"
+
+#: src/cmp.c:178
+#, c-format
+msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n"
+msgstr "Bruk: %s [VALG] … FIL1 [FIL2 [ANT1 [ANT2]]]\n"
+
+#: src/cmp.c:180
+msgid "Compare two files byte by byte."
+msgstr "Sammenlikn to filer byte for byte."
+
+#: src/cmp.c:182
+msgid ""
+"The optional SKIP1 and SKIP2 specify the number of bytes to skip\n"
+"at the beginning of each file (zero by default)."
+msgstr ""
+"Du kan hoppe over valgfritt ANT1 og ANT2 byte i begynnelsen\n"
+"av henholdsvis første og andre fil (standard er null)."
+
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
+msgid ""
+"Mandatory arguments to long options are mandatory for short options too.\n"
+msgstr ""
+"Argumenter som er obligatoriske for lange valg, er også obligatoriske for "
+"korte valg.\n"
+
+#: src/cmp.c:191
+msgid ""
+"SKIP values may be followed by the following multiplicative suffixes:\n"
+"kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n"
+"GB 1,000,000,000, G 1,073,741,824, and so on for T, P, E, Z, Y."
+msgstr ""
+"ANT-verdier kan etterfølges av følgende multipliseringsuttrykk:\n"
+"kB (1000), K (1024), MB (1 000 000), M (1 048 576),\n"
+"GB (1 000 000 000), G (1 073 741 824), og så videre (T, P, E, Z, Y)."
+
+#: src/cmp.c:194
+msgid "If a FILE is '-' or missing, read standard input."
+msgstr "Hvis FIL er tom eller «-», leser programmet standard inndata."
+
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
+msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
+msgstr ""
+"Avsluttende status er 0 hvis inndata er like, 1 hvis ulike og 2 hvis det "
+"oppstår problemer."
+
+#: src/cmp.c:240
+#, c-format
+msgid "invalid --bytes value '%s'"
+msgstr "«%s» er en ugyldig verdi for «--bytes»"
+
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
+#, c-format
+msgid "missing operand after '%s'"
+msgstr "operand mangler etter «%s»"
+
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
+#, c-format
+msgid "extra operand '%s'"
+msgstr "ekstra operand «%s»"
+
+#: src/cmp.c:494
+#, c-format
+msgid "%s %s differ: byte %s, line %s\n"
+msgstr "%s %s er ulike: byte %s, linje %s\n"
+
+#: src/cmp.c:510
+#, c-format
+msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
+msgstr "%s %s er ulike: byte %s, linje %s er %3o %s %3o %s\n"
+
+#: src/cmp.c:562
+#, c-format
+msgid "cmp: EOF on %s\n"
+msgstr "cmp: EOF ved %s\n"
+
+#. This is a proper name. See the gettext manual, section Names.
+#: src/diff.c:49
+msgid "Paul Eggert"
+msgstr "Paul Eggert"
+
+#. This is a proper name. See the gettext manual, section Names.
+#: src/diff.c:50
+msgid "Mike Haertel"
+msgstr "Mike Haertel"
+
+#. This is a proper name. See the gettext manual, section Names.
+#: src/diff.c:51
+msgid "David Hayes"
+msgstr "David Hayes"
+
+#. This is a proper name. See the gettext manual, section Names.
+#: src/diff.c:52
+msgid "Richard Stallman"
+msgstr "Richard Stallman"
+
+#. This is a proper name. See the gettext manual, section Names.
+#: src/diff.c:53
+msgid "Len Tower"
+msgstr "Len Tower"
+
+#: src/diff.c:351
+#, c-format
+msgid "invalid context length '%s'"
+msgstr "«%s» er en ugyldig kontekstlengde"
+
+#: src/diff.c:434
+#, c-format
+msgid "pagination not supported on this host"
+msgstr "sidedeling støttes ikke på denne verten"
+
+#: src/diff.c:449 src/diff3.c:300
+#, c-format
+msgid "too many file label options"
+msgstr "for mange filetikett-valg"
+
+#: src/diff.c:526
+#, c-format
+msgid "invalid width '%s'"
+msgstr "«%s» er en ugyldig bredde"
+
+#: src/diff.c:530
+msgid "conflicting width options"
+msgstr "breddevalg i konflikt"
+
+#: src/diff.c:555
+#, c-format
+msgid "invalid horizon length '%s'"
+msgstr "«%s» er en ugyldig horisontlengde"
+
+#: src/diff.c:611
+#, c-format
+msgid "invalid tabsize '%s'"
+msgstr "«%s» er en ugyldig tabulatorstørrelse"
+
+#: src/diff.c:615
+msgid "conflicting tabsize options"
+msgstr "tabulatorvalg i konflikt"
+
+#: src/diff.c:763
+msgid "--from-file and --to-file both specified"
+msgstr "du har valgt både «--from-file» og «--to-file»"
+
+#: src/diff.c:883
+msgid " --normal output a normal diff (the default)"
+msgstr ""
+" --normal skriv ut en normal diff (dette er standard)"
+
+#: src/diff.c:884
+msgid "-q, --brief report only when files differ"
+msgstr "-q, --brief bare rapporter når filer er ulike"
+
+#: src/diff.c:885
+msgid "-s, --report-identical-files report when two files are the same"
+msgstr "-s, --report-identical-files rapporter når to filer er like"
+
+#: src/diff.c:886
+msgid ""
+"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
+msgstr ""
+"-c, -C ANT, --context[=ANT] skriv ut valgt ANTall linjer med kopiert "
+"kontekst (standard: 3)"
+
+#: src/diff.c:887
+msgid ""
+"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
+msgstr ""
+"-u, -U ANT, --unified[=ANT] skriv ut valgt ANTall linjer med sammenslått "
+"kontekst (standard: 3)"
+
+#: src/diff.c:888
+msgid "-e, --ed output an ed script"
+msgstr "-e, --ed skriv ut et ed-skript"
+
+#: src/diff.c:889
+msgid "-n, --rcs output an RCS format diff"
+msgstr "-n, --rcs skriv ut diff i RCS-format"
+
+#: src/diff.c:890
+msgid "-y, --side-by-side output in two columns"
+msgstr "-y, --side-by-side skriv ut i to kolonner"
+
+#: src/diff.c:891
+msgid ""
+"-W, --width=NUM output at most NUM (default 130) print columns"
+msgstr ""
+"-W, --width=ANT skriv ut maks valgt ANTall kolonner (standard: "
+"130)"
+
+#: src/diff.c:892
+msgid ""
+" --left-column output only the left column of common lines"
+msgstr ""
+" --left-column bare skriv ut venstre kolonne med vanlige "
+"linjer"
+
+#: src/diff.c:893
+msgid " --suppress-common-lines do not output common lines"
+msgstr " --suppress-common-lines ikke skriv ut vanlige linjer"
+
+#: src/diff.c:895
+msgid "-p, --show-c-function show which C function each change is in"
+msgstr ""
+"-p, --show-c-function vis hvilken C-funksjon hver endring ligger i"
+
+#: src/diff.c:896
+msgid "-F, --show-function-line=RE show the most recent line matching RE"
+msgstr "-F, --show-function-line=RE vis nyeste linje som samsvarer med RE"
+
+#: src/diff.c:897
+#, fuzzy
+msgid ""
+" --label LABEL use LABEL instead of file name and timestamp\n"
+" (can be repeated)"
+msgstr ""
+" --label ETIK bruk valgt ETIKett i stedet for filnavn\n"
+" (dette kan gjentas)"
+
+#: src/diff.c:900
+msgid "-t, --expand-tabs expand tabs to spaces in output"
+msgstr ""
+"-t, --expand-tabs utvid tabulatorer til mellomrom på utskrift"
+
+#: src/diff.c:901
+msgid "-T, --initial-tab make tabs line up by prepending a tab"
+msgstr ""
+"-T, --initial-tab still opp tabulatorer ved å legge til en "
+"tabulator først"
+
+#: src/diff.c:902
+msgid ""
+" --tabsize=NUM tab stops every NUM (default 8) print columns"
+msgstr ""
+" --tabsize=NUM tabulatorer stopper for hvert valgte "
+"utskriftskolonne-NUMmer (standard: 8)"
+
+#: src/diff.c:903
+msgid ""
+" --suppress-blank-empty suppress space or tab before empty output lines"
+msgstr ""
+" --suppress-blank-empty ikke skriv ut mellomrom eller tabulator før "
+"tomme linjer"
+
+#: src/diff.c:904
+msgid "-l, --paginate pass output through 'pr' to paginate it"
+msgstr "-l, --paginate del utdata i sider via «pr»"
+
+#: src/diff.c:906
+msgid ""
+"-r, --recursive recursively compare any subdirectories found"
+msgstr "-r, --recursive sammenlikn evt. undermapper rekursivt"
+
+#: src/diff.c:907
+msgid " --no-dereference don't follow symbolic links"
+msgstr " --no-dereference ikke følg symbolske lenker"
+
+#: src/diff.c:908
+msgid "-N, --new-file treat absent files as empty"
+msgstr "-N, --new-file behandle fraværende filer som tomme"
+
+#: src/diff.c:909
+msgid " --unidirectional-new-file treat absent first files as empty"
+msgstr " --unidirectional-new-file behandle fraværende førstefil som tom"
+
+#: src/diff.c:910
+msgid " --ignore-file-name-case ignore case when comparing file names"
+msgstr ""
+" --ignore-file-name-case skill mellom store og små bokstaver ved "
+"sammenlikning av filnavn"
+
+#: src/diff.c:911
+msgid " --no-ignore-file-name-case consider case when comparing file names"
+msgstr ""
+" --no-ignore-file-name-case skill mellom store og små bokstaver ved "
+"sammenlikning av filnavn"
+
+#: src/diff.c:912
+msgid "-x, --exclude=PAT exclude files that match PAT"
+msgstr ""
+"-x, --exclude=MØN utelat filer som samsvarer med valgt MØNster"
+
+#: src/diff.c:913
+msgid ""
+"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
+msgstr ""
+"-X, --exclude-from=FIL utelat filer som samsvarer med mønster(e) i "
+"valgt FIL"
+
+#: src/diff.c:914
+msgid ""
+"-S, --starting-file=FILE start with FILE when comparing directories"
+msgstr ""
+"-S, --starting-file=FIL begynn med valgt FIL ved sammenlikning av "
+"mapper"
+
+#: src/diff.c:915
+msgid ""
+" --from-file=FILE1 compare FILE1 to all operands;\n"
+" FILE1 can be a directory"
+msgstr ""
+" --from-file=FIL1 sammenlikn FIL1 med alle operand-er\n"
+" (FIL1 kan være en mappe)"
+
+#: src/diff.c:917
+msgid ""
+" --to-file=FILE2 compare all operands to FILE2;\n"
+" FILE2 can be a directory"
+msgstr ""
+" --to-file=FIL2 sammenlikn alle operand-er med FIL2\n"
+" (FIL2 kan være en mappe)"
+
+#: src/diff.c:920
+msgid ""
+"-i, --ignore-case ignore case differences in file contents"
+msgstr ""
+"-i, --ignore-case ikke skill mellom små og store bokstaver i "
+"fil-innhold"
+
+#: src/diff.c:921
+msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
+msgstr ""
+"-E, --ignore-tab-expansion ignorer endringer som skyldes tabulator-"
+"utvidelse"
+
+#: src/diff.c:922
+msgid "-Z, --ignore-trailing-space ignore white space at line end"
+msgstr "-Z, --ignore-trailing-space ignorer blanktegn i slutten av linjer"
+
+#: src/diff.c:923
+msgid ""
+"-b, --ignore-space-change ignore changes in the amount of white space"
+msgstr "-b, --ignore-space-change ignorer endringer i antall blanktegn"
+
+#: src/diff.c:924
+msgid "-w, --ignore-all-space ignore all white space"
+msgstr "-w, --ignore-all-space ignorer alle blanktegn"
+
+#: src/diff.c:925
+msgid ""
+"-B, --ignore-blank-lines ignore changes where lines are all blank"
+msgstr ""
+"-B, --ignore-blank-lines ignorer endringer når alle linjer er tomme"
+
+#: src/diff.c:926
+msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
+msgstr ""
+"-I, --ignore-matching-lines=RE ignorer endringer når alle linjer samsvarer "
+"med RE"
+
+#: src/diff.c:928
+msgid "-a, --text treat all files as text"
+msgstr "-a, --text behandle filer som tekst"
+
+#: src/diff.c:929
+msgid " --strip-trailing-cr strip trailing carriage return on input"
+msgstr ""
+" --strip-trailing-cr fjern etterfølgende linjeskift-tegn fra "
+"inndata"
+
+#: src/diff.c:931
+msgid " --binary read and write data in binary mode"
+msgstr " --binary les og skriv data i binærmodus"
+
+#: src/diff.c:934
+msgid ""
+"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
+msgstr ""
+"-D, --ifdef=NAVN skriv ut sammenslått fil med ulikheter i "
+"«#ifdef NAVN»"
+
+#: src/diff.c:935
+msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
+msgstr " --GTYPE-group-format=GFMT formater GTYPE-inndatagrupper med GFMT"
+
+#: src/diff.c:936
+msgid " --line-format=LFMT format all input lines with LFMT"
+msgstr " --line-format=LFMT formater inndatalinjer med LFMT"
+
+#: src/diff.c:937
+msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
+msgstr " --LTYPE-line-format=LFMT formater LTYPE-inndatalinjer med LFMT"
+
+#: src/diff.c:938
+msgid ""
+" These format options provide fine-grained control over the output\n"
+" of diff, generalizing -D/--ifdef."
+msgstr ""
+" Disse formatvalgene gjør det mulig å detaljstyre utdata\n"
+" fra diff, og generaliserer -D/--ifdef."
+
+#: src/diff.c:940
+msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
+msgstr ""
+" LTYPE er enten «old», «new» eller «unchanged». GTYPE er enten LTYPE eller "
+"«changed»."
+
+#: src/diff.c:941
+msgid ""
+" GFMT (only) may contain:\n"
+" %< lines from FILE1\n"
+" %> lines from FILE2\n"
+" %= lines common to FILE1 and FILE2\n"
+" %[-][WIDTH][.[PREC]]{doxX}LETTER printf-style spec for LETTER\n"
+" LETTERs are as follows for new group, lower case for old group:\n"
+" F first line number\n"
+" L last line number\n"
+" N number of lines = L-F+1\n"
+" E F-1\n"
+" M L+1\n"
+" %(A=B?T:E) if A equals B then T else E"
+msgstr ""
+" GFMT (alene) kan inneholde følgende:\n"
+" %< linjer fra FIL1\n"
+" %> linjer fra FIL2\n"
+" %= linjer som finnes i både FIL1 og FIL2\n"
+" %[-][BREDDE][.[PREC]]{doxX}BOKST spesifikasjon av BOKSTav i printf-"
+"stil.\n"
+" BOKSTaver kan være som følger for ny gruppe (bruk små bokstaver for "
+"gammel gruppe):\n"
+" F første linjenummer\n"
+" L siste linjenummer\n"
+" N antall linjer = L-F+1\n"
+" E F-1\n"
+" M L+1\n"
+" %(A=B?T:E) hvis A er lik B, så T eller E"
+
+#: src/diff.c:953
+msgid ""
+" LFMT (only) may contain:\n"
+" %L contents of line\n"
+" %l contents of line, excluding any trailing newline\n"
+" %[-][WIDTH][.[PREC]]{doxX}n printf-style spec for input line number"
+msgstr ""
+" LFMT (alene) kan inneholde følgende:\n"
+" %L linjeinnhold\n"
+" %l linjeinnhold, unntatt evt. etterfølgende linjeskift\n"
+" %[-][BREDDE][.[PREC]]{doxX}n spesifikasjon av inndata-linjenummer i "
+"printf-stil"
+
+#: src/diff.c:957
+msgid ""
+" Both GFMT and LFMT may contain:\n"
+" %% %\n"
+" %c'C' the single character C\n"
+" %c'\\OOO' the character with octal code OOO\n"
+" C the character C (other characters represent themselves)"
+msgstr ""
+" Både GFMT og LFMT kan inneholde følgende:\n"
+" %% %\n"
+" %c'C' enkelttegnet C\n"
+" %c'\\OOO' tegnet med oktalkode OOO\n"
+" C tegnet C (andre tegn representerer seg selv)"
+
+#: src/diff.c:963
+msgid "-d, --minimal try hard to find a smaller set of changes"
+msgstr "-d, --minimal prøv hardt å finne en mindre rekke endringer"
+
+#: src/diff.c:964
+msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
+msgstr ""
+" --horizon-lines=ANT behold valgt ANTall linjer av vanlig pre- og suffiks"
+
+#: src/diff.c:965
+msgid ""
+" --speed-large-files assume large files and many scattered small changes"
+msgstr " --speed-large-files forvent store filer og små, spredte endringer"
+
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr ""
+" --normal skriv ut en normal diff (dette er standard)"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
+msgid " --help display this help and exit"
+msgstr " --help vis denne hjelpeteksten og avslutt"
+
+#: src/diff.c:972
+msgid "-v, --version output version information and exit"
+msgstr "-v, --version vis versjonsinformasjon og avslutt"
+
+#: src/diff.c:974
+#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
+msgstr ""
+"FILER er «FIL1 FIL2», «MAPPE1 MAPPE2», «MAPPE FIL …» eller «FIL… MAPPE»."
+
+#: src/diff.c:975
+msgid ""
+"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
+msgstr ""
+"Programmet bruker ingen restriksjoner på FIL(er) hvis «--from-file» eller «--"
+"to-file» er valgt."
+
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
+msgid "If a FILE is '-', read standard input."
+msgstr "Programmet leser fra standard inndata hvis FIL er «-»."
+
+#: src/diff.c:986
+#, c-format
+msgid "Usage: %s [OPTION]... FILES\n"
+msgstr "Bruk: %s [VALG] … FILER\n"
+
+#: src/diff.c:987
+msgid "Compare FILES line by line."
+msgstr "Sammenlikn FILER linje for linje."
+
+#: src/diff.c:1021
+#, c-format
+msgid "conflicting %s option value '%s'"
+msgstr "valget %s er i konflikt med verdien «%s»"
+
+#: src/diff.c:1034
+#, c-format
+msgid "conflicting output style options"
+msgstr "utdata-stilvalg er i konflikt med hverandre"
+
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "«%s» er en ugyldig bredde"
+
+#: src/diff.c:1106 src/diff.c:1316
+#, c-format
+msgid "Only in %s: %s\n"
+msgstr "Bare i %s: %s\n"
+
+#: src/diff.c:1240
+msgid "cannot compare '-' to a directory"
+msgstr "du kan ikke sammenlikne «-» med en mappe"
+
+#: src/diff.c:1275
+msgid "-D option not supported with directories"
+msgstr "valget «-D» støttes ikke for mapper"
+
+#: src/diff.c:1284
+#, c-format
+msgid "Common subdirectories: %s and %s\n"
+msgstr "Vanlige undermapper: %s og %s\n"
+
+#: src/diff.c:1326 src/diff.c:1376
+#, c-format
+msgid "File %s is a %s while file %s is a %s\n"
+msgstr "Fila %s er en %s, og fila %s er en %s\n"
+
+#: src/diff.c:1362
+#, c-format
+msgid "Symbolic links %s and %s differ\n"
+msgstr "De symbolske lenkene %s og %s er ulike\n"
+
+#: src/diff.c:1449
+#, c-format
+msgid "Files %s and %s are identical\n"
+msgstr "Filene %s og %s er identiske\n"
+
+#. This is a proper name. See the gettext manual, section Names.
+#: src/diff3.c:41
+msgid "Randy Smith"
+msgstr "Randy Smith"
+
+#: src/diff3.c:313
+#, c-format
+msgid "incompatible options"
+msgstr "gjeldende valg kan ikke brukes samtidig"
+
+#: src/diff3.c:353
+msgid "'-' specified for more than one input file"
+msgstr "«-» er valgt for flere enn én inndatafil"
+
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
+#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
+msgid "read failed"
+msgstr "lesing mislyktes"
+
+#: src/diff3.c:428
+msgid "-A, --show-all output all changes, bracketing conflicts"
+msgstr ""
+"-A, --show-all skriv ut alle endringer, med konflikter i "
+"parentes"
+
+#: src/diff3.c:430
+msgid ""
+"-e, --ed output ed script incorporating changes\n"
+" from OLDFILE to YOURFILE into MYFILE"
+msgstr ""
+"-e, --ed skriv ut ed-skript med endringer\n"
+" mellom GAMMELFIL og NYFIL til FIL"
+
+#: src/diff3.c:432
+msgid "-E, --show-overlap like -e, but bracket conflicts"
+msgstr ""
+"-E, --show-overlap likner «-e», men viser konflikter i parentes"
+
+#: src/diff3.c:433
+msgid ""
+"-3, --easy-only like -e, but incorporate only nonoverlapping "
+"changes"
+msgstr ""
+"-3, --easy-only likner «-e», men tar ikke med endringer som "
+"overlapper hverandre"
+
+#: src/diff3.c:434
+msgid ""
+"-x, --overlap-only like -e, but incorporate only overlapping changes"
+msgstr ""
+"-x, --overlap-only likner «-e», men tar bare med endringer som "
+"overlapper hverandre"
+
+#: src/diff3.c:435
+msgid "-X like -x, but bracket conflicts"
+msgstr ""
+"-X likner «-x», men viser også konflikter i parentes"
+
+#: src/diff3.c:436
+msgid "-i append 'w' and 'q' commands to ed scripts"
+msgstr ""
+"-i legg til kommandoene «w» og «q» i ed-skript"
+
+#: src/diff3.c:438
+msgid ""
+"-m, --merge output actual merged file, according to\n"
+" -A if no other options are given"
+msgstr ""
+"-m, --merge skriv ut sammenslått fil ihht. «-A»,\n"
+" med mindre noe annet er valgt"
+
+#: src/diff3.c:441
+msgid "-a, --text treat all files as text"
+msgstr "-a, --text behandle filer som tekst"
+
+#: src/diff3.c:442
+msgid " --strip-trailing-cr strip trailing carriage return on input"
+msgstr ""
+" --strip-trailing-cr fjern etterfølgende linjeskift-tegn fra inndata"
+
+#: src/diff3.c:443
+msgid "-T, --initial-tab make tabs line up by prepending a tab"
+msgstr ""
+"-T, --initial-tab still opp tabulatorer på rekke ved å legge til "
+"en ekstra tab foran"
+
+#: src/diff3.c:444
+msgid " --diff-program=PROGRAM use PROGRAM to compare files"
+msgstr " --diff-program=PROGRAM bruk valgt PROGRAM til å sammenlikne filer"
+
+#: src/diff3.c:445
+msgid ""
+"-L, --label=LABEL use LABEL instead of file name\n"
+" (can be repeated up to three times)"
+msgstr ""
+"-L, --label=ETIKETT bruk valgt ETIKETT i stedet for filnavn\n"
+" (dette kan gjentas opptil tre ganger)"
+
+#: src/diff3.c:448
+msgid " --help display this help and exit"
+msgstr " --help vis denne hjelpeteksten og avslutt"
+
+#: src/diff3.c:449
+msgid "-v, --version output version information and exit"
+msgstr "-v, --version vis versjonsinformasjon og avslutt"
+
+#: src/diff3.c:458
+#, c-format
+msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n"
+msgstr "Usage: %s [VALG] … FIL GAMMELFIL NYFIL\n"
+
+#: src/diff3.c:460
+msgid "Compare three files line by line."
+msgstr "Sammenlikn tre filer, linje for linje."
+
+#: src/diff3.c:470
+msgid ""
+"\n"
+"The default output format is a somewhat human-readable representation of\n"
+"the changes.\n"
+"\n"
+"The -e, -E, -x, -X (and corresponding long) options cause an ed script\n"
+"to be output instead of the default.\n"
+"\n"
+"Finally, the -m (--merge) option causes diff3 to do the merge internally\n"
+"and output the actual merged file. For unusual input, this is more\n"
+"robust than using ed.\n"
+msgstr ""
+"\n"
+"Standard utskriftsformat er en nogen lunde menneskevennlig visning\n"
+"av endringene.\n"
+"\n"
+"Valgene «-e», «-E», «-x» og «-X» (samt tilsv. lange valgnavn) fører til\n"
+"utskrift av ed-skript i stedet for standardformatet.\n"
+"\n"
+"Valget «-m» («--merge») lar diff3 utføre sammenslåing internt\n"
+"og skrive ut sammenslått fil. Dette er sikrere for behandling av\n"
+"uvanlig inndata enn å bruke ed.\n"
+
+#: src/diff3.c:482
+msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble."
+msgstr ""
+"Avsluttende status er 0 hvis alt er i orden, 1 ved konflikter og 2 ved "
+"problemer."
+
+#: src/diff3.c:675
+msgid "internal error: screwup in format of diff blocks"
+msgstr "intern feil: rot i diff-blokkformat"
+
+#: src/diff3.c:968
+#, c-format
+msgid "%s: diff failed: "
+msgstr "%s: diff mislyktes: "
+
+#: src/diff3.c:990
+msgid "internal error: invalid diff type in process_diff"
+msgstr "intern feil: ugyldig diff-type i process_diff"
+
+#: src/diff3.c:1015
+msgid "invalid diff format; invalid change separator"
+msgstr "ugyldig diff-format. Ugyldig endringsskilletegn"
+
+#: src/diff3.c:1252
+msgid "invalid diff format; incomplete last line"
+msgstr "ugyldig diff-format. Siste linje er ufullstendig"
+
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
+#, c-format
+msgid "subsidiary program '%s' could not be invoked"
+msgstr "klarte ikke å starte hjelpeprogrammet «%s»"
+
+#: src/diff3.c:1301
+msgid "invalid diff format; incorrect leading line chars"
+msgstr "ugyldig diff-format. Feil ledende linjetegn"
+
+#: src/diff3.c:1374
+msgid "internal error: invalid diff type passed to output"
+msgstr "intern feil: ugyldig diff-type sendt til utdata"
+
+#: src/diff3.c:1648 src/diff3.c:1705
+msgid "input file shrank"
+msgstr "inndata-fila er krympet"
+
+#: src/dir.c:156
+#, c-format
+msgid "cannot compare file names '%s' and '%s'"
+msgstr "klarte ikke å sammenlikne filnavn «%s» med «%s»"
+
+#: src/dir.c:225
+#, c-format
+msgid "%s: recursive directory loop"
+msgstr "%s: rekursiv mappesløyfe"
+
+#. This is a proper name. See the gettext manual, section Names.
+#: src/sdiff.c:42
+msgid "Thomas Lord"
+msgstr "Thomas Lord"
+
+#: src/sdiff.c:173
+msgid ""
+"-o, --output=FILE operate interactively, sending output to FILE"
+msgstr "-o, --output=FIL jobb interaktivt, og send utdata til FIL"
+
+#: src/sdiff.c:175
+msgid ""
+"-i, --ignore-case consider upper- and lower-case to be the same"
+msgstr "-i, --ignore-case ikke skill mellom store og små bokstaver"
+
+#: src/sdiff.c:176
+msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
+msgstr ""
+"-E, --ignore-tab-expansion ikke regn tabulator-forskjeller som endringer"
+
+#: src/sdiff.c:177
+msgid "-Z, --ignore-trailing-space ignore white space at line end"
+msgstr "-Z, --ignore-trailing-space ignorer blanktegn i slutten av linjer"
+
+#: src/sdiff.c:178
+msgid ""
+"-b, --ignore-space-change ignore changes in the amount of white space"
+msgstr ""
+"-b, --ignore-space-change ikke regn ulikt antall blanktegn som endringer"
+
+#: src/sdiff.c:179
+msgid "-W, --ignore-all-space ignore all white space"
+msgstr "-W, --ignore-all-space ignorer alle blanktegn"
+
+#: src/sdiff.c:180
+msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank"
+msgstr ""
+"-B, --ignore-blank-lines ignorer endringer hvis linjer er fullstendig "
+"tomme"
+
+#: src/sdiff.c:181
+msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE"
+msgstr ""
+"-I, --ignore-matching-lines=RE ignorer endringer hvis linjer samsvarer med "
+"RE"
+
+#: src/sdiff.c:182
+msgid " --strip-trailing-cr strip trailing carriage return on input"
+msgstr ""
+" --strip-trailing-cr fjern etterfølgende linjeskift-tegn fra inndata"
+
+#: src/sdiff.c:183
+msgid "-a, --text treat all files as text"
+msgstr "-a, --text behandle filer som tekst"
+
+#: src/sdiff.c:185
+msgid ""
+"-w, --width=NUM output at most NUM (default 130) print columns"
+msgstr ""
+"-w, --width=ANT ikke skriv ut flere enn valgt ANTall kolonner "
+"(standard: 130)"
+
+#: src/sdiff.c:186
+msgid ""
+"-l, --left-column output only the left column of common lines"
+msgstr ""
+"-l, --left-column bare skriv ut venstre kolonne med vanlige linjer"
+
+#: src/sdiff.c:187
+msgid "-s, --suppress-common-lines do not output common lines"
+msgstr "-s, --suppress-common-lines ikke skriv ut vanlige linjer"
+
+#: src/sdiff.c:189
+msgid "-t, --expand-tabs expand tabs to spaces in output"
+msgstr "-t, --expand-tabs utvid tabulatorer til mellomrom i utdata"
+
+#: src/sdiff.c:190
+msgid ""
+" --tabsize=NUM tab stops at every NUM (default 8) print columns"
+msgstr ""
+" --tabsize=NUM tabulatorer slutter ved hvert valgte "
+"kolonneNUMmer (standard: 8)"
+
+#: src/sdiff.c:192
+msgid "-d, --minimal try hard to find a smaller set of changes"
+msgstr "-d, --minimal prøv hardt å finne små endringer"
+
+#: src/sdiff.c:193
+msgid ""
+"-H, --speed-large-files assume large files, many scattered small changes"
+msgstr ""
+"-H, --speed-large-files forvent store filer med små, spredte endringer"
+
+#: src/sdiff.c:194
+msgid " --diff-program=PROGRAM use PROGRAM to compare files"
+msgstr ""
+" --diff-program=PROGRAM bruk valgt PROGRAM til å sammenlikne filer"
+
+#: src/sdiff.c:196
+msgid " --help display this help and exit"
+msgstr " --help vis denne hjelpeteksten og avslutt"
+
+#: src/sdiff.c:197
+msgid "-v, --version output version information and exit"
+msgstr "-v, --version vis versjonsinformasjon og avslutt"
+
+#: src/sdiff.c:206
+#, c-format
+msgid "Usage: %s [OPTION]... FILE1 FILE2\n"
+msgstr "Bruk: %s [VALG] … FIL1 FIL2\n"
+
+#: src/sdiff.c:208
+msgid "Side-by-side merge of differences between FILE1 and FILE2."
+msgstr "Sammenslåing av forskjeller mellom FIL1 og FIL2, side ved side."
+
+#: src/sdiff.c:329
+msgid "cannot interactively merge standard input"
+msgstr "du kan ikke slå sammen standard inndata interaktivt"
+
+#: src/sdiff.c:595
+msgid "both files to be compared are directories"
+msgstr "begge filer som skal sammenliknes er mapper"
+
+#: src/sdiff.c:818
+msgid ""
+"ed:\tEdit then use both versions, each decorated with a header.\n"
+"eb:\tEdit then use both versions.\n"
+"el or e1:\tEdit then use the left version.\n"
+"er or e2:\tEdit then use the right version.\n"
+"e:\tDiscard both versions then edit a new one.\n"
+"l or 1:\tUse the left version.\n"
+"r or 2:\tUse the right version.\n"
+"s:\tSilently include common lines.\n"
+"v:\tVerbosely include common lines.\n"
+"q:\tQuit.\n"
+msgstr ""
+"ed:\tRediger og bruk begge versjoner, og dekorer hver av dem med "
+"overskrift.\n"
+"eb:\tRediger og bruk deretter begge versjoner.\n"
+"el or e1:\tRediger og bruk deretter venstre versjon.\n"
+"er or e2:\tRediger og bruk deretter høyre versjon.\n"
+"e:\tForkast begge versjon, og rediger en ny versjon.\n"
+"l or 1:\tBruk venstre versjon.\n"
+"r or 2:\tBruk høyre versjon.\n"
+"s:\tInkluder kommandolinjer uten å nevne noe om det.\n"
+"v:\tInkluder kommandolinjer i detaljert modus.\n"
+"q:\tAvslutt.\n"
+
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: «--%s» er et ukjent valg\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
msgstr ""
"Project-Id-Version: diffutils-3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2012-10-31 21:04+0100\n"
"Last-Translator: Benno Schulenberg <benno@vertaalt.nl>\n"
"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
"X-Generator: Lokalize 1.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "ongeldig argument '%3$s' van %1$s%2$s"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "ongeldig argument '%3$s' van %1$s%2$s"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "programmafout"
msgid "stack overflow"
msgstr "stack-overloop"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Onbekende systeemfout"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "leeg normaal bestand"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "normaal bestand"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "map"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "blok-apparaat"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "byte-apparaat"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "symbolische koppeling"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "socket"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "berichtenwachtrij"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semafoor"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "gedeeld geheugenobject"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "zelfstandig geheugenobject"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "blok-apparaat"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "byte-apparaat"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "blok-apparaat"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "byte-apparaat"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "merkwaardig bestand"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "blok-apparaat"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "socket"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "merkwaardig bestand"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: optie '%s' is niet eenduidig; mogelijkheden zijn:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: optie '-W %s' is niet eenduidig\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: optie '--%s' staat geen argument toe\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: optie '%c%s' staat geen argument toe\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: optie '--%s' vereist een argument\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: onbekende optie '--%s'\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: onbekende optie '%c%s'\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: ongeldige optie -- '%c'\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: optie vereist een argument -- '%c'\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: optie '-W %s' is niet eenduidig\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: optie '-W %s' staat geen argument toe\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: optie '-W %s' vereist een argument\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "‘"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr "’"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Gelukt"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Geen overeenkomsten"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Ongeldige reguliere expressie"
# Zie http://mailman.vrijschrift.org/pipermail/vertaling/2005-August/004670.html
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Ongeldig samengesteld teken"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Ongeldige tekenklassenaam"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Backslash aan het eind"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Ongeldige terugverwijzing"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "Ongepaarde [ of [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Ongepaarde ( of \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Ongepaarde \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Ongeldige inhoud van \\{\\}"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Ongeldig bereikeinde"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Onvoldoende geheugen beschikbaar"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Ongeldige voorafgaande reguliere expressie"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Voortijdig einde van reguliere expressie"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Reguliere expressie is te groot"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "Ongepaarde ) of \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Geen eerdere reguliere expressie"
msgstr ""
"Algemene hulp bij gebruik van GNU-software: <http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Bestanden %s en %s zijn verschillend\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Binaire bestanden %s en %s zijn verschillend\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Geen regeleindeteken (LF) aan einde van bestand"
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, c-format
msgid "Try '%s --help' for more information."
msgstr "Typ '%s --help' voor meer informatie."
msgid "options -l and -s are incompatible"
msgstr "opties '-l' en '-s' gaan niet samen"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "schrijven is mislukt"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "standaarduitvoer"
"dat\n"
"aan het begin van elk bestand moet worden overgeslagen (standaard nul)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgstr ""
"Als een BESTAND ontbreekt of '-' is, wordt er van standaardinvoer gelezen."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"De afsluitwaarde is 0 als de invoeren gelijk zijn, 1 als ze verschillen,\n"
msgid "invalid --bytes value '%s'"
msgstr "ongeldige waarde '%s' voor '--bytes'"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, c-format
msgid "missing operand after '%s'"
msgstr "ontbrekend argument na '%s'"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, c-format
msgid "extra operand '%s'"
msgstr "overtollig argument '%s'"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s verschillen: byte %s, regel %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s verschillen: byte %s, regel %s, is %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: einde-van-bestand op %s\n"
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
+#: src/diff.c:351
#, c-format
msgid "invalid context length '%s'"
msgstr "ongeldige contextlengte '%s'"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "het in pagina's indelen is op deze computer niet mogelijk"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "te veel bestandslabel-opties"
-#: src/diff.c:514
+#: src/diff.c:526
#, c-format
msgid "invalid width '%s'"
msgstr "ongeldige breedte '%s'"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "conflicterende breedte-opties"
-#: src/diff.c:543
+#: src/diff.c:555
#, c-format
msgid "invalid horizon length '%s'"
msgstr "ongeldige horizonlengte '%s'"
-#: src/diff.c:598
+#: src/diff.c:611
#, c-format
msgid "invalid tabsize '%s'"
msgstr "ongeldige tabgrootte '%s'"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "conflicterende tabgrootte-opties"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "zowel '--from-file' als '--to-file' zijn opgegeven"
-#: src/diff.c:854
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
msgstr " --normal een gewone diff produceren (standaard)"
-#: src/diff.c:855
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
msgstr "-q, --brief alleen aangeven of bestanden verschillen"
-#: src/diff.c:856
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
msgstr ""
"-s, --report-identical-files vermelden of twee bestanden hetzelfde zijn"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
"-c, -C AANTAL, --context[=AANTAL] dit AANTAL regels (standaard 3) van\n"
" gekopieerde context tonen"
-#: src/diff.c:858
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"-u, -U AANTAL, --unified[=AANTAL] dit AANTAL regels (standaard 3) van\n"
" geünificeerde context tonen"
-#: src/diff.c:859
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
msgstr "-e, --ed een ed-script produceren"
-#: src/diff.c:860
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
msgstr "-n, --rcs een diff in RCS-opmaak produceren"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr "-y, --side-by-side het resultaat weergeven in twee kolommen"
-#: src/diff.c:862
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"-w, --width=AANTAL maximaal dit AANTAL kolommen tonen (standaard 130)"
-#: src/diff.c:863
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
" --left-column bij gelijke regels alleen de linkerkolom tonen"
-#: src/diff.c:864
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
msgstr " --suppress-common-lines de gelijke regels onderdrukken"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
"-p, --show-c-function vermelden in welke C-functie elke wijziging is"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
"-F, --show-function-line=RE recentste regel overeenkomend met RE tonen"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
" --label LABEL dit LABEL gebruiken in plaats van bestandsnaam\n"
" (mag herhaald worden)"
-#: src/diff.c:871
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr "-t, --expand-tabs tabs uitschrijven naar spaties in uitvoer"
-#: src/diff.c:872
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
"-T, --initial-tab tabs uitlijnen door invoegen van tab aan het begin"
-#: src/diff.c:873
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
" --tabsize=AANTAL tab-stops op elke AANTAL posities (standaard 8)"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
" --suppress-blank-empty spatie of tab onderdrukken voor lege uitregels"
-#: src/diff.c:875
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
"-l, --paginate de uitvoer door 'pr' halen om deze in pagina's\n"
" in te delen"
-#: src/diff.c:877
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr "-r, --recursive recursief elke gevonden submap vergelijken"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr " --no-dereference symbolische koppelingen niet volgen"
-#: src/diff.c:879
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
msgstr "-N, --new-file afwezige bestanden als leeg behandelen"
-#: src/diff.c:880
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
" --unidirectional-new-file alleen bestanden die afwezig zijn in de\n"
" eerste map als leeg behandelen"
-#: src/diff.c:881
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
" --ignore-file-name-case verschil tussen hoofd- en kleine letters "
"negeren\n"
" bij vergelijken van bestandsnamen"
-#: src/diff.c:882
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
" --no-ignore-file-name-case onderscheid maken tussen hoofd- en kleine\n"
" letters bij vergelijken van bestandsnamen"
-#: src/diff.c:883
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr ""
"-x, --exclude=PATROON bestanden uitsluiten als ze overeenkomen met "
"PATROON"
-#: src/diff.c:884
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
"-X, --exclude-from=BESTAND bestanden uitsluiten die overeenkomen met\n"
" een patroon in BESTAND"
-#: src/diff.c:885
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
"-S, --starting-file=BESTAND beginnen met BESTAND bij vergelijken van "
"mappen"
-#: src/diff.c:886
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
" --from-file=BESTAND1 BESTAND1 met alle argumenten vergelijken;\n"
" BESTAND1 mag een map zijn"
-#: src/diff.c:888
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
" --to-file=BESTAND2 alle argumenten met BESTAND2 vergelijken;\n"
" BESTAND2 mag een map zijn"
-#: src/diff.c:891
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
"-i, --ignore-case verschil tussen hoofd- en kleine letters\n"
" negeren in bestandsinhoud"
-#: src/diff.c:892
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr "-E, --ignore-tab-expansion omzettingen van tabs in spaties negeren"
-#: src/diff.c:893
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr "-Z, --ignore-trailing-space witruimte aan einde van regel negeren"
-#: src/diff.c:894
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
"-b, --ignore-space-change wijzigingen in hoeveelheid witruimte negeren"
-#: src/diff.c:895
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w, --ignore-all-space alle witruimte negeren"
-#: src/diff.c:896
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr ""
"-B, --ignore-blank-lines wijzigingen waarvan alle regels leeg zijn "
"negeren"
-#: src/diff.c:897
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I, --ignore-matching-lines=RE wijzigingen waarvan alle regels "
"overeenkomen\n"
" met reguliere expressie RE negeren"
-#: src/diff.c:899
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
msgstr "-a, --text alle bestanden als tekst behandelen"
-#: src/diff.c:900
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
" --strip-trailing-cr Enter-tekens (CR's) aan einde van regels weglaten"
-#: src/diff.c:902
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr ""
" --binary gegevens in binaire modus lezen en schrijven"
-#: src/diff.c:905
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
"-D, --ifdef=NAAM samengevoegd bestand tonen om verschillen in\n"
" '#ifdef NAAM' te laten zien"
-#: src/diff.c:906
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
" --GSOORT-group-format=GOPMAAK iets dergelijks, maar dan invoergroepen "
"van\n"
" soort GSOORT opmaken met GOPMAAK"
-#: src/diff.c:907
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
" --line-format=LOPMAAK iets dergelijks, maar dan alle invoerregels "
"opmaken\n"
" met LOPMAAK"
-#: src/diff.c:908
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
" --LSOORT-line-format=LOPMAAK iets dergelijks, maar dan invoerregels "
"van\n"
" soort LSOORT opmaken met LOPMAAK"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
" Deze opmaakopties bieden een fijnafregeling van de uitvoer aan,\n"
" een generalisatie van de optie '-d/--ifdef'."
-#: src/diff.c:911
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" LSOORT is 'old' (oud), 'new' (nieuw), of 'unchanged' (ongewijzigd);\n"
" GSOORT is LSOORT of 'changed' (gewijzigd)."
-#: src/diff.c:912
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" M L+1\n"
" %(A=B?Z:V) als A gelijk is aan B, dan Z anders V"
-#: src/diff.c:924
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %[-][BREEDTE][.[PREC]]{doxX}n specificatie in printf-stijl voor\n"
" invoerregelnummer"
-#: src/diff.c:928
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO' het teken met octaalcode OOO\n"
" C het teken C (andere tekens representeren zichzelf)"
-#: src/diff.c:934
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr ""
"-d, --minimal moeite doen om een kleinere verzameling "
"wijzigingen\n"
" te vinden"
-#: src/diff.c:935
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
" --horizon-lines=AANTAL dit AANTAL regels met identieke kop en staart\n"
" bij vergelijkingsproces meenemen"
-#: src/diff.c:936
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
"verspreide\n"
" kleine wijzigingen"
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr " --normal een gewone diff produceren (standaard)"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr " --help deze hulptekst tonen en stoppen"
-#: src/diff.c:939
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
msgstr "-v, --version programmaversie tonen en stoppen"
-#: src/diff.c:941
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+#: src/diff.c:974
+#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"BESTANDEN is 'BESTAND1 BESTAND2' of 'MAP1 MAP2' of\n"
" 'MAP BESTAND...' of 'BESTAND... MAP'."
-#: src/diff.c:942
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
"Als '--from-file' of '--to-file' gegeven is, mag BESTANDEN van alles zijn."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
msgstr "Als een BESTAND '-' is, wordt er van standaardinvoer gelezen."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr ""
"Gebruik: %s [OPTIE...] BESTANDEN\n"
"\n"
-#: src/diff.c:954
+#: src/diff.c:987
msgid "Compare FILES line by line."
msgstr "Bestanden regel-voor-regel vergelijken."
-#: src/diff.c:988
+#: src/diff.c:1021
#, c-format
msgid "conflicting %s option value '%s'"
msgstr "conflicterende waarde '%2$s' van optie %1$s"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "conflicterende uitvoerstijl-opties"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "ongeldige breedte '%s'"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Alleen in %s: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
msgstr "kan '-' niet met een map vergelijken"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "optie '-D' is niet mogelijk bij mappen"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Gemeenschappelijke submappen: %s en %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "Bestand %s is een %s terwijl bestand %s een %s is\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "Symbolische koppelingen %s en %s zijn verschillend\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Bestanden %s en %s zijn identiek\n"
msgid "'-' specified for more than one input file"
msgstr "'-' opgegeven voor meer dan één invoerbestand"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "lezen is mislukt"
msgid "invalid diff format; invalid change separator"
msgstr "ongeldige diff-opmaak: ongeldig scheidingsteken voor veranderingen"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "ongeldige diff-opmaak: incomplete laatste regel"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "hulpprogramma '%s' kan niet worden aangeroepen"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "ongeldige diff-opmaak: onjuiste tekens aan begin van regel"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "*interne programmafout*: ongeldig soort diff naar uitvoer gestuurd"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "invoerbestand is gekrompen"
-#: src/dir.c:158
+#: src/dir.c:156
#, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "kan bestandsnamen '%s' en '%s' niet vergelijken"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: oneindige lus in de mappen"
"v: Overeenkomende regels invoegen en tonen.\n"
"q: Afsluiten.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: onbekende optie '--%s'\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
#~ msgstr "-i OVERSLAAN1:OVERSLAAN2 --ignore-initial=OVERSLAAN1:OVERSLAAN2"
msgstr ""
"Project-Id-Version: GNU diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2012-10-31 17:30+0100\n"
"Last-Translator: Rafał Maszkowski <rzm@icm.edu.pl>\n"
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "błędny argument %s%s: '%s'"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "błędny argument %s%s: '%s'"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "błąd programu"
msgid "stack overflow"
msgstr "przepełnienie stosu"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Nieznany błąd systemu"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "zwykły pusty plik"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "zwykły plik"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "katalog"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "specjalny plik blokowy"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "specjalny plik znakowy"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "dowiązanie symboliczne"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "gniazdo"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "kolejka komunikatów"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semafor"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "obiekt w pamięci dzielonej"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "obiekt w pamięci z określeniem typu"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "specjalny plik blokowy"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "specjalny plik znakowy"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "specjalny plik blokowy"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "specjalny plik znakowy"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "dziwny plik"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "specjalny plik blokowy"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "gniazdo"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "dziwny plik"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: opcja '%s' jest niejednoznaczna; możliwości:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: opcja '-W %s' jest niejednoznaczna\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: opcja '--%s' nie może mieć argumentu\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: opcja '%c%s' nie może mieć argumentu\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: opcja '--%s' wymaga argumentu\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: nierozpoznana opcja '--%s'\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: nierozpoznana opcja '%c%s'\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: błędna opcja -- '%c'\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: opcja wymaga argumentu -- '%c'\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: opcja '-W %s' jest niejednoznaczna\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: opcja '-W %s' nie może mieć argumentu\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: opcja -W '%s' wymaga argumentu\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "„"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr "”"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Powodzenie"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Nie pasuje"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Błędne wyrażenie regularne"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Znak błędny dla bieżącego uporządkowania"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Błędne nazwa klasy znaków"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Końcowy ukośnik odwrotny"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Błędny odnośnik wstecz"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "Nie sparowany [ lub [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Nie sparowany ( lub \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Nie sparowany \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Błędna zawartość \\{\\}"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Błędny koniec zakresu"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Brak pamięci"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Błędne poprzedzające wyrażenie regularne"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Przedwczesny koniec wyrażenia regularnego"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Wyrażenia regularne jest za duże"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "Nie sparowany ) lub \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Brak poprzedniego wyrażenia regularnego"
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr "Pomoc w używaniu oprogramowania GNU: http://www.gnu.org/gethelp/\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Pliki %s i %s różnią się\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Binarne pliki %s i %s różnią się\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Brak znaku nowej linii na końcu pliku"
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, c-format
msgid "Try '%s --help' for more information."
msgstr "Napisz '%s --help' żeby dowiedzieć się więcej."
msgid "options -l and -s are incompatible"
msgstr "sprzeczne opcje -l i -s"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "zapis nieudany"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "standardowe wyjście"
"Opcjonalne argumenty OMIŃ1 i OMIŃ2 to liczby bajtów do pominięcia na\n"
"początku każdego z plików (domyślnie zero)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr "Obowiązkowe argumenty długich opcji są obowiązkowe też dla krótkich.\n"
msgid "If a FILE is '-' or missing, read standard input."
msgstr "Jeżeli PLIK to '-' lub go brak, czytane jest standardowe wejście."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"Status wyjściowy ma wartość 0 gdy pliki wejściowe są takie same, 1 - jeżeli\n"
msgid "invalid --bytes value '%s'"
msgstr "błędna wartość --bytes '%s'"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, c-format
msgid "missing operand after '%s'"
msgstr "brakujący argument po '%s'"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, c-format
msgid "extra operand '%s'"
msgstr "nadmiarowy argument '%s'"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s różnią się: bajt %s, linia %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s różnią się: bajt %s, linia %s zawiera %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: EOF przy %s\n"
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
+#: src/diff.c:351
#, c-format
msgid "invalid context length '%s'"
msgstr "błędna długość kontekstu '%s'"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "stronicowanie nie jest możliwe na tej maszynie"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "za dużo opcji etykietowania plików"
-#: src/diff.c:514
+#: src/diff.c:526
#, c-format
msgid "invalid width '%s'"
msgstr "błędna szerokość '%s'"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "sprzeczne opcje szerokości"
-#: src/diff.c:543
+#: src/diff.c:555
#, c-format
msgid "invalid horizon length '%s'"
msgstr "błędna długość horyzontu '%s'"
-#: src/diff.c:598
+#: src/diff.c:611
#, c-format
msgid "invalid tabsize '%s'"
msgstr "błędny rozmiar tabulacji '%s'"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "sprzeczne opcje rozmiarów TAB-a"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "równocześnie podane --from-file i --to-file"
-#: src/diff.c:854
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
msgstr ""
"--normal wynik w postaci zwykłego diff-a (domyślnie)"
-#: src/diff.c:855
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
msgstr ""
"-q --brief wypisanie wyniku tylko gdy pliki się różnią"
-#: src/diff.c:856
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
msgstr "-s --report-identical-files informowanie gdy dwa pliki są takie same"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
"-c, -C NUM, --context[=ILE] wypisanie ILU (domyślnie 3) linii kontekstu"
-#: src/diff.c:858
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"--u, -U ILE, --unified=ILE wypisanie najwyżej ILE (domyślnie 3)\n"
" linii kontekstu w trybie unified"
-#: src/diff.c:859
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
msgstr "-e --ed wynik w postaci poleceń ed-a"
-#: src/diff.c:860
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
msgstr "-n --rcs wynik w postaci diff-a z RCS"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr "-y, --side-by-side wyniki w dwóch kolumnach"
-#: src/diff.c:862
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"-W, --width=ILE wypisanie najwyżej ILE (domyślnie 130) kolumn"
-#: src/diff.c:863
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
" --left-column wypisanie tylko lewej kolumny dla wspólnych "
"linii"
-#: src/diff.c:864
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
msgstr " --suppress-common-lines bez wypisania wspólnych linii"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr "-p, --show-c-function podanie w jakiej funkcji C są zmiany"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
"-F, --show-function-line=WYRREG wypisanie ostatniej linii pasującej do "
"WYRREG"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
" --label ETYKIETA użycie ETYKIETY zamiast nazwy pliku\n"
" (może być powtarzane)"
-#: src/diff.c:871
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr "-t --expand-tabs rozwinięcie TAB-ów w spacje w wyniku"
-#: src/diff.c:872
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr "-T --initial-tab wyrównanie linii przez użycie TAB-ów"
-#: src/diff.c:873
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr " --tabsize=ILE TAB-y co ILE (domyślnie 8) kolumn"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
" --suppress-blank-empty bez wypisywania spacji i znaków TAB przed\n"
" pustymi liniami"
-#: src/diff.c:875
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
"-I --paginate przepuszczenie wyniku przez 'pr' żeby go "
"stronnicować"
-#: src/diff.c:877
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr "-r --recursive porównanie podkatalogów rekurencyjnie"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr ""
" --no-dereference bez podążania za dowiązaniami symbolicznymi"
-#: src/diff.c:879
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
msgstr ""
"-N --new-file traktowanie brakujących plików jak pustych"
-#: src/diff.c:880
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
" --unidirectional-new-file traktowanie brakujących pierwszych plików\n"
" w pierwszym zestawie jako pustych"
-#: src/diff.c:881
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
" --ignore-space-change zignorowanie wielkości liter przy\n"
" porównywaniu nazw plików"
-#: src/diff.c:882
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
" --no-ignore-file-name-case uwzględnianie wielkości liter przy\n"
" porównywaniu nazw plików"
-#: src/diff.c:883
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr "-x, --exclude=WZÓR wykluczenie plików pasujących do WZORU"
-#: src/diff.c:884
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
"-X, --exclude-from=PLIK pominięcie plików pasujących do wzorców w "
"PLIKU"
-#: src/diff.c:885
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
"-S, --starting-file=PLIK zacznij od PLIKU przy porównywaniu katalogów"
-#: src/diff.c:886
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
" --from-file=PLIK1 porównanie PLIKU1 z wszystkimi\n"
" argumentami; PLIK1 może być katalogiem"
-#: src/diff.c:888
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
" --to-file=PLIK2 porównanie wszystkich argumentów\n"
" z PLIKIEM2; PLIK2 może być katalogiem"
-#: src/diff.c:891
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
"-i --ignore-case ignorowanie różnic między wielkimi i małymi "
"literami"
-#: src/diff.c:892
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
"-E --ignore-tab-expansion zignorowanie zmian spowodowanych\n"
" rozwinięciem TAB-ów"
-#: src/diff.c:893
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr ""
"-Z --ignore-trailing-space ignorowanie znaków odstępu na końcu linii"
-#: src/diff.c:894
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
"-b --ignore-space-change Zignorowanie zmian ilości znaków odstępu"
-#: src/diff.c:895
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w --ignore-all-space zignorowanie znaków odstępu"
-#: src/diff.c:896
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr ""
"-B --ignore-blank-lines zignorowanie zmian liczby pustych linii"
-#: src/diff.c:897
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I, --ignore-matching-lines=RE zignorowanie zmian w liniach pasujących\n"
" do RE"
-#: src/diff.c:899
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
msgstr "-a --text traktowanie plików jako tekstowych"
-#: src/diff.c:900
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
"--strip-trailing-cr pominięcie znaków nowej linii na wejściu"
-#: src/diff.c:902
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr "--binary czytanie i zapisywanie danych binarnie"
-#: src/diff.c:905
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
"-D, --ifdef=NAZWA wypisanie połączonego pliku dla pokazania\n"
" różnic w '#ifdef NAZWA'"
-#: src/diff.c:906
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
" --GTYPE-group-format=FMTG użyciem FMTF do sformatowania grup\n"
" wejściowych typu GTYPE"
-#: src/diff.c:907
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
" --line-format=LFMT podobnie, ale z użyciem LFMT do\n"
" sformatowania linii wejściowych"
-#: src/diff.c:908
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
" --LTYPE-line-format=FMTL użycie FMTL do sformatowania linii\n"
" wejściowych typu LTYPE"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
" Te opcje formatowania dają dokładną kontrolę nad wynikami diff-a,\n"
" są uogólnieniem -D/--ifdef."
-#: src/diff.c:911
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr "TYPL to 'old', 'new' albo 'unchanged'. TYPG to TYPL albo 'changed'."
-#: src/diff.c:912
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" E F-1\n"
" M L+1 %(A=B?T:E) jeżeli A równa się B, to T, jeżeli nie, to E"
-#: src/diff.c:924
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %l zawartość linii z wyłączeniem znaku nowej linii\n"
" %[-][SZER][.[DOKŁ]]{doxX}n specyfikację numeru linii w stylu printf"
-#: src/diff.c:928
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO' znak o kodzie ósemkowym OOO Z znak Z (inne znaki "
"reprezentują same siebie)"
-#: src/diff.c:934
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr ""
"-d --minimal usiłowanie znalezienia mniejszego zbioru zmian"
-#: src/diff.c:935
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
" --horizon-lines=ILE zostawienie ILE linii wspólnego przedrostka i "
"przyrostka"
-#: src/diff.c:936
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
" --speed-large-files założenie: duże pliki i rozrzucone małe zmiany"
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr ""
+"--normal wynik w postaci zwykłego diff-a (domyślnie)"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr " --help wypisanie tej pomocy i zakończenie"
-#: src/diff.c:939
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
msgstr "-v --version wypisanie informacji o wersji i zakończenie"
-#: src/diff.c:941
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+#: src/diff.c:974
+#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"PLIKI to 'PLIK1 PLIK2' albo 'KATALOG1 KATALOG2' albo 'KATALOG PLIK...' albo\n"
"'PLIK... KATALOG'."
-#: src/diff.c:942
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
"Jeżeli użyta jest opcja --from-file albo --to-file, nie ma ograniczeń co do\n"
"PLIKU/ÓW."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
msgstr "Jeżeli PLIK to '-', czytane jest standardowe wejście."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Składnia: %s [OPCJA]... PLIKI\n"
-#: src/diff.c:954
+#: src/diff.c:987
msgid "Compare FILES line by line."
msgstr "Porównanie PLIKÓW kolejnymi liniami."
-#: src/diff.c:988
+#: src/diff.c:1021
#, c-format
msgid "conflicting %s option value '%s'"
msgstr "sprzeczna wartość opcji %s: '%s'"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "sprzeczne opcje stylu wyniku"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "błędna szerokość '%s'"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Tylko w %s: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
msgstr "nie można porównać '-' z katalogiem"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "opcja -D nie działa dla katalogów"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Wspólne podkatalogi: %s i %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "Plik %s jest %s, podczas gdy plik %s jest %s\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "Dowiązania symboliczne %s i %s różnią się\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Pliki %s i %s są identyczne\n"
msgid "'-' specified for more than one input file"
msgstr "'-' podany dla więcej niż jednego pliku wejściowego"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "nieudany odczyt"
msgid "invalid diff format; invalid change separator"
msgstr "błędny format diff; błędny separator zmian"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "błędny format diff; niekompletna ostatnia linia"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "nie mógł być wywołany program pomocniczy '%s'"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "błędny format diff; nieprawidłowe znaki na początku linii"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "błąd wenwętrzny: błędny typ diff-a przekazany na wyjście"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "plik wejściowy się zmniejszył"
-#: src/dir.c:158
+#: src/dir.c:156
#, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "nie można porównać nazw plików '%s' i '%s'"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: rekurencyjne zapętlenie katalogów"
"s:\tDołączenie wspólnych linii bez informowania o tym.\n"
"v:\tDołączenie wspólnych linii z podaniem informacji.\n"
"q:\tZakończenie.\n"
+
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: nierozpoznana opcja '--%s'\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
-# diffutils: Translation to Brazilian Portuguese (pt_BR).
-# Copyright © 2002 Free Software Foundation, Inc.
+# Brazilian Portuguese translation for diffutis.
+# Copyright © 2016 Free Software Foundation, Inc.
+# This file is distributed under the same license as the diffutils package.
# Halley Pacheco de Oliveira <halleypo@ig.com.br>, 2002.
-#
+# Rafael Fontenelle <rffontenelle@gmail.com>, 2016.
msgid ""
msgstr ""
-"Project-Id-Version: diffutils 2.8.3\n"
+"Project-Id-Version: diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
-"PO-Revision-Date: 2002-06-24 09:07GMT -3\n"
-"Last-Translator: Halley Pacheco de Oliveira <halleypo@ig.com.br>\n"
-"Language-Team: Brazilian Portuguese <ldp-br@bazar.conectiva.com.br>\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
+"PO-Revision-Date: 2016-05-06 21:25-0200\n"
+"Last-Translator: Rafael Fontenelle <rffontenelle@gmail.com>\n"
+"Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge."
+"net>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 0.9.5\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"X-Generator: Virtaal 0.7.1\n"
+
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "argumento inválido para %s%s: \"%s\""
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "argumento inválido para %s%s: \"%s\""
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgid "stack overflow"
msgstr "estouro da pilha"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Erro de sistema desconhecido"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "arquivo regular vazio"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "arquivo regular"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
-msgstr "diretório"
+msgstr "diretório"
+
+#: lib/file-type.c:46
+msgid "symbolic link"
+msgstr "link simbólico"
+
+#: lib/file-type.c:52
+msgid "message queue"
+msgstr "fila de mensagem"
+
+#: lib/file-type.c:55
+msgid "semaphore"
+msgstr "semáforo"
+
+#: lib/file-type.c:58
+msgid "shared memory object"
+msgstr "objeto em memória compartilhada"
+
+#: lib/file-type.c:61
+msgid "typed memory object"
+msgstr "objeto de memória tipificada"
-#: lib/file-type.c:44
+#: lib/file-type.c:66
msgid "block special file"
msgstr "arquivo do tipo especial de bloco"
-#: lib/file-type.c:47
+#: lib/file-type.c:69
msgid "character special file"
msgstr "arquivo do tipo especial de caracter"
-#: lib/file-type.c:50
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
msgid "fifo"
msgstr "fila"
-#: lib/file-type.c:53
-msgid "symbolic link"
-msgstr "vínculo simbólico"
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "soquete"
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "arquivo do tipo especial de bloco"
-#: lib/file-type.c:59
-msgid "message queue"
-msgstr "fila de mensagem"
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "arquivo do tipo especial de caracter"
-#: lib/file-type.c:62
-msgid "semaphore"
-msgstr "semáforo"
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
-#: lib/file-type.c:65
-msgid "shared memory object"
-msgstr "objeto em memória compartilhada"
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "arquivo estranho"
-#: lib/file-type.c:68
+#: lib/file-type.c:93
#, fuzzy
-msgid "typed memory object"
-msgstr "objeto em memória compartilhada"
+msgid "network special file"
+msgstr "arquivo do tipo especial de bloco"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "socket"
-#: lib/file-type.c:70
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "arquivo estranho"
-#: lib/getopt.c:547 lib/getopt.c:576
-#, fuzzy, c-format
+#: lib/getopt.c:575 lib/getopt.c:604
+#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
-msgstr "%s: a opção `%s' é ambígua\n"
+msgstr "%s: a opção \"%s\" está ambígua; possibilidades:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: a opção \"-W %s\" é ambígua\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
+#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
-msgstr "%s: a opção `--%s' não permite um argumento\n"
+msgstr "%s: a opção \"--%s\" não admite argumentos\n"
-#: lib/getopt.c:637 lib/getopt.c:642
-#, fuzzy, c-format
+#: lib/getopt.c:667 lib/getopt.c:672
+#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
-msgstr "%s: a opção `%c%s' não permite um argumento\n"
+msgstr "%s: a opção \"%c%s\" não admite argumentos\n"
-#: lib/getopt.c:685 lib/getopt.c:704
-#, fuzzy, c-format
+#: lib/getopt.c:715 lib/getopt.c:734
+#, c-format
msgid "%s: option '--%s' requires an argument\n"
-msgstr "%s: a opção `%s' requer um argumento\n"
+msgstr "%s: a opção \"--%s\" exige um argumento\n"
-#: lib/getopt.c:742 lib/getopt.c:745
-#, fuzzy, c-format
+#: lib/getopt.c:772 lib/getopt.c:775
+#, c-format
msgid "%s: unrecognized option '--%s'\n"
-msgstr "%s: a opção `--%s' não é reconhecida\n"
+msgstr "%s: opção não reconhecida \"--%s\"\n"
-#: lib/getopt.c:753 lib/getopt.c:756
-#, fuzzy, c-format
+#: lib/getopt.c:783 lib/getopt.c:786
+#, c-format
msgid "%s: unrecognized option '%c%s'\n"
-msgstr "%s: a opção `%c%s' não é reconhecida\n"
+msgstr "%s: opção não reconhecida \"%c%s\"\n"
-#: lib/getopt.c:805 lib/getopt.c:808
-#, fuzzy, c-format
+#: lib/getopt.c:835 lib/getopt.c:838
+#, c-format
msgid "%s: invalid option -- '%c'\n"
-msgstr "%s: a opção -- %c é inválida\n"
+msgstr "%s: opção inválida -- \"%c\"\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
-#, fuzzy, c-format
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
+#, c-format
msgid "%s: option requires an argument -- '%c'\n"
-msgstr "%s: a opção -- %c requer um argumento\n"
+msgstr "%s: a opção requer um argumento -- \"%c\"\n"
-#: lib/getopt.c:934 lib/getopt.c:950
-#, fuzzy, c-format
+#: lib/getopt.c:964 lib/getopt.c:980
+#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
-msgstr "%s: a opção `-W %s' é ambígua\n"
+msgstr "%s: a opção \"-W %s\" é ambígua\n"
-#: lib/getopt.c:974 lib/getopt.c:992
-#, fuzzy, c-format
+#: lib/getopt.c:1004 lib/getopt.c:1022
+#, 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"
+msgstr "%s: a opção \"-W %s\" não admite argumentos\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
-#, fuzzy, c-format
+#: lib/getopt.c:1043 lib/getopt.c:1061
+#, c-format
msgid "%s: option '-W %s' requires an argument\n"
-msgstr "%s: a opção `%s' requer um argumento\n"
+msgstr "%s: a opção \"-W %s\" requer um argumentos\n"
#. TRANSLATORS:
#. Get translations for open and closing quotation marks.
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
-msgstr ""
+msgstr "“"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
-msgstr ""
+msgstr "”"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Sucesso"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Sem correspondente"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
-msgstr "A expressão regular não é válida"
+msgstr "Expressão regular inválida"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
-msgstr "O caracter de classificação não é válido"
+msgstr "caractere de classificação inválido"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
-msgstr "O nome da classe de caracteres não é válido"
+msgstr "Nome da classe de caracteres inválido"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
-msgstr "Contrabarra final"
+msgstr "Barra invertida ao final"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
-msgstr "A referência retroativa não é válida"
+msgstr "Referência retroativa inválida"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "[ ou [^ sem correspondente"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
-msgstr "( or \\( sem correspondente"
+msgstr "( ou \\( sem correspondente"
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "\\{ sem correspondente"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
-msgstr "O counteúdo de \\{\\} não é válido"
+msgstr "Conteúdo de \\{\\} inválido"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
-msgstr "O fim do intervalo não é válido"
+msgstr "Fim do intervalo inválido"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
-msgstr "Memória esgotada"
+msgstr "Memória esgotada"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
-msgstr "A expressão regular precedente não é válida"
+msgstr "Expressão regular precedente inválida"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
-msgstr "Fim prematuro da expressão regular"
+msgstr "Fim prematuro da expressão regular"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
-msgstr "A expressão regular é muito grande"
+msgstr "Expressão regular muito grande"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
-msgstr ") or \\) sem correspondente"
+msgstr ") ou \\) sem correspondente"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
-msgstr "Sem expressão regular prévia"
+msgstr "Sem expressão regular prévia"
#: lib/xalloc-die.c:34
msgid "memory exhausted"
-msgstr "memória esgotada"
+msgstr "memória esgotada"
#: lib/xfreopen.c:35
msgid "stdin"
-msgstr ""
+msgstr "entrada padrão (stdin)"
#: lib/xfreopen.c:36
msgid "stdout"
-msgstr ""
+msgstr "saída padrão (stdout)"
#: lib/xfreopen.c:37
msgid "stderr"
-msgstr ""
+msgstr "erro padrão (stderr)"
#: lib/xfreopen.c:38
-#, fuzzy
msgid "unknown stream"
-msgstr "Erro de sistema desconhecido"
+msgstr "fluxo desconhecido"
#: lib/xfreopen.c:39
#, c-format
msgid "failed to reopen %s with mode %s"
-msgstr ""
+msgstr "falha ao reabrir %s com modo %s"
#: lib/xstrtol-error.c:63
-#, fuzzy, c-format
+#, c-format
msgid "invalid %s%s argument '%s'"
-msgstr "valor inválido --bytes `%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 ""
+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 ""
+msgstr "argumento de %s%s \"%s\" é grande demais"
#: lib/version-etc.c:74
#, c-format
msgid "Packaged by %s (%s)\n"
-msgstr ""
+msgstr "Empacotado por %s (%s)\n"
#: lib/version-etc.c:77
#, c-format
msgid "Packaged by %s\n"
-msgstr ""
+msgstr "Empacotado por %s\n"
#. TRANSLATORS: Translate "(C)" to the copyright symbol
#. (C-in-a-circle), if this symbol is available in the user's
#. locale. Otherwise, do not translate "(C)"; leave it as-is.
#: lib/version-etc.c:84
msgid "(C)"
-msgstr "©"
+msgstr "©"
#: lib/version-etc.c:86
msgid ""
"There is NO WARRANTY, to the extent permitted by law.\n"
"\n"
msgstr ""
+"\n"
+"Licença GPLv3+: GNU GPL versão 3 ou posterior <http://gnu.org/licenses/gpl."
+"html>\n"
+"Este é um software livre: você é livre para alterá-lo e redistribuí-lo.\n"
+"NÃO HÁ GARANTIA, na máxima extensão permitida pela lei.\n"
+"\n"
#. TRANSLATORS: %s denotes an author name.
#: lib/version-etc.c:102
-#, fuzzy, c-format
+#, c-format
msgid "Written by %s.\n"
-msgstr "Escrito por Thomas Lord."
+msgstr "Escrito por %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#: lib/version-etc.c:106
-#, fuzzy, c-format
+#, c-format
msgid "Written by %s and %s.\n"
-msgstr "Escrito por Randy Smith."
+msgstr "Escrito por %s e %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#: lib/version-etc.c:110
-#, fuzzy, c-format
+#, c-format
msgid "Written by %s, %s, and %s.\n"
-msgstr "Escrito por Randy Smith."
+msgstr "Escrito por %s, %s e %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"Written by %s, %s, %s,\n"
"and %s.\n"
msgstr ""
+"Escrito por %s, %s, %s\n"
+"e %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"Written by %s, %s, %s,\n"
"%s, and %s.\n"
msgstr ""
+"Escrito por %s, %s, %s\n"
+"%s e %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"Written by %s, %s, %s,\n"
"%s, %s, and %s.\n"
msgstr ""
+"Escrito por %s, %s, %s\n"
+"%s, %s e %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"Written by %s, %s, %s,\n"
"%s, %s, %s, and %s.\n"
msgstr ""
+"Escrito por %s, %s, %s\n"
+"%s, %s, %s e %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"%s, %s, %s, %s,\n"
"and %s.\n"
msgstr ""
+"Escrito por %s, %s, %s\n"
+"%s, %s, %s, %s\n"
+"e %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"%s, %s, %s, %s,\n"
"%s, and %s.\n"
msgstr ""
+"Escrito por %s, %s, %s\n"
+"%s, %s, %s, %s\n"
+"%s e %s.\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"%s, %s, %s, %s,\n"
"%s, %s, and others.\n"
msgstr ""
+"Escrito por %s, %s, %s\n"
+"%s, %s, %s, %s,\n"
+"%s, %s e outros.\n"
#. TRANSLATORS: The placeholder indicates the bug-reporting address
#. for this package. Please add _another line_ saying
"\n"
"Report bugs to: %s\n"
msgstr ""
+"\n"
+"Relate os erros para: %s\n"
#: lib/version-etc.c:247
#, c-format
msgid "Report %s bugs to: %s\n"
-msgstr ""
+msgstr "Relate os erros de %s para: %s\n"
#: lib/version-etc.c:251
#, c-format
msgid "%s home page: <%s>\n"
-msgstr ""
+msgstr "Página do %s: <%s>\n"
#: lib/version-etc.c:253
#, c-format
msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
-msgstr ""
+msgstr "Página do %s: <http://www.gnu.org/software/%s/>\n"
#: lib/version-etc.c:256
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
-msgstr ""
+msgstr "Ajuda geral sobre uso de software GNU: <http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
-msgstr "Os arquivos %s e %s são diferentes\n"
+msgstr "Os arquivos %s e %s são diferentes\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
-msgstr "Os arquivos binários %s e %s são diferentes\n"
+msgstr "Os arquivos binários %s e %s são diferentes\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
-msgstr "Falta o caracter nova linha no final do arquivo"
+msgstr "Nenhum caractere de nova linha no final do arquivo"
#. This is a proper name. See the gettext manual, section Names.
#: src/cmp.c:43
msgid "Torbjorn Granlund"
-msgstr ""
+msgstr "Torbjorn Granlund"
#. This is a proper name. See the gettext manual, section Names.
#: src/cmp.c:44
msgid "David MacKenzie"
-msgstr ""
+msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
-#, fuzzy, c-format
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
+#, c-format
msgid "Try '%s --help' for more information."
-msgstr "Utilize `%s --help' para obter mais informações."
+msgstr "Tente \"%s --help\" para mais informações."
#: src/cmp.c:137
-#, fuzzy, c-format
+#, c-format
msgid "invalid --ignore-initial value '%s'"
-msgstr "valor inválido --ignore-initial `%s'"
+msgstr "valor inválido --ignore-initial \"%s\""
#: src/cmp.c:147
#, c-format
msgid "options -l and -s are incompatible"
-msgstr "as opções -l e -s não são compatíveis"
+msgstr "as opções -l e -s são incompatíveis"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "erro de escrita"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
-msgstr "saída padrão"
+msgstr "saída padrão"
#: src/cmp.c:161
-#, fuzzy
msgid "-b, --print-bytes print differing bytes"
-msgstr "-b --print-bytes Imprimir os bytes diferentes."
+msgstr "-b, --print-bytes imprime os bytes diferentes"
#: src/cmp.c:162
-#, fuzzy
msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs"
msgstr ""
-"-i SALTO --ignore-initial=SALTO\n"
-" Saltar os primeiros SALTO bytes da entrada."
+"-i, --ignore-initial=SALTO ignora os primeiros SALTO bytes da entrada"
#: src/cmp.c:163
-#, fuzzy
msgid ""
"-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n"
" first SKIP2 bytes of FILE2"
msgstr ""
-" Saltar os primeiros SALTO1 bytes do ARQUIVO1\n"
-" e os primeiros SALTO2 bytes do ARQUIVO2."
+"-i, --ignore-initial=SALTO1:SALTO2\n"
+" ignora os primeiros SALTO1 bytes do "
+"ARQUIVO1\n"
+" e os primeiros SALTO2 bytes do ARQUIVO2"
#: src/cmp.c:165
-#, fuzzy
msgid ""
"-l, --verbose output byte numbers and differing byte values"
msgstr ""
-"-l --verbose Exibir os números dos bytes e os valores de "
-"todos\n"
-" os bytes diferentes."
+"-l, --verbose emite os números de bytes e os valores de\n"
+" todos os bytes diferentes"
#: src/cmp.c:166
-#, fuzzy
msgid "-n, --bytes=LIMIT compare at most LIMIT bytes"
-msgstr "-n LIMITE --bytes=LIMITE Comparar no máximo LIMITE bytes."
+msgstr "-n, --bytes=LIMITE compara no máximo LIMITE bytes"
#: src/cmp.c:167
msgid "-s, --quiet, --silent suppress all normal output"
-msgstr ""
+msgstr "-s, --quiet, --silent suprime todas saídas normais"
#: src/cmp.c:168
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help mostra esta ajuda e sai"
#: src/cmp.c:169
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Exibir as informações da versão."
+msgstr "-v, --version mostra informação sobre a versão e sai"
#: src/cmp.c:178
#, c-format
msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n"
-msgstr "Utilização: %s [OPÇÃO]... ARQUIVO1 [ARQUIVO2 [SALTO1 [SALTO2]]]\n"
+msgstr "Uso: %s [OPÇÃO]... ARQUIVO1 [ARQUIVO2 [SALTO1 [SALTO2]]]\n"
#: src/cmp.c:180
msgid "Compare two files byte by byte."
-msgstr "Comparar dois arquivos byte por byte."
+msgstr "Compara dois arquivos byte por byte."
#: src/cmp.c:182
-#, fuzzy
msgid ""
"The optional SKIP1 and SKIP2 specify the number of bytes to skip\n"
"at the beginning of each file (zero by default)."
msgstr ""
-"SALTO1 e SALTO2 correspondem ao número de bytes saltados em cada arquivo."
+"Os argumentos opcionais SALTO1 e SALTO2 especificam o número de\n"
+"bytes para ignorar no começo de cada arquivo (zero por padrão)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
+"Argumentos obrigatórios para opções longas também o são para opções curtas.\n"
#: src/cmp.c:191
msgid ""
"kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n"
"GB 1,000,000,000, G 1,073,741,824, and so on for T, P, E, Z, Y."
msgstr ""
-"Os valores do SALTO podem ser seguidos por um\n"
-"dos sufixos multiplicadores mostrados abaixo:\n"
+"Os valores do SALTO podem ser seguidos por sufixos multiplicativos a "
+"seguir:\n"
"kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n"
"GB 1,000,000,000, G 1,073,741,824,\n"
"e assim por diante para T, P, E, Z, Y."
#: src/cmp.c:194
-#, fuzzy
msgid "If a FILE is '-' or missing, read standard input."
-msgstr "Se ARQUIVO for igual a `-' ou for omitido, ler da entrada padrão."
+msgstr "Se ARQUIVO for igual a \"-\" ou for omitido, ler da entrada padrão."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
+"Status de saída é 0 se as entradas forem iguais, 1 se diferente e 2 se "
+"problema."
#: src/cmp.c:240
-#, fuzzy, c-format
+#, c-format
msgid "invalid --bytes value '%s'"
-msgstr "valor inválido --bytes `%s'"
+msgstr "valor inválido --bytes \"%s\""
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
-#, fuzzy, c-format
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
+#, c-format
msgid "missing operand after '%s'"
-msgstr "faltando operando após `%s'"
+msgstr "faltando operando após \"%s\""
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
-#, fuzzy, c-format
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
+#, c-format
msgid "extra operand '%s'"
-msgstr "operando extra `%s'"
+msgstr "operando extra \"%s\""
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
-msgstr "%s e %s são diferentes: byte %s, linha %s\n"
+msgstr "%s e %s são diferentes: byte %s, linha %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
-msgstr "%s e %s são diferentes: byte %s, linha %s é %3o %s %3o %s\n"
+msgstr "%s e %s são diferentes: byte %s, linha %s é %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: Fim de arquivo (EOF) em %s\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:49
msgid "Paul Eggert"
-msgstr ""
+msgstr "Paul Eggert"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:50
msgid "Mike Haertel"
-msgstr ""
+msgstr "Mike Haertel"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:51
msgid "David Hayes"
-msgstr ""
+msgstr "David Hayes"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:52
msgid "Richard Stallman"
-msgstr ""
+msgstr "Richard Stallman"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:53
msgid "Len Tower"
-msgstr ""
+msgstr "Len Tower"
-#: src/diff.c:339
-#, fuzzy, c-format
+#: src/diff.c:351
+#, c-format
msgid "invalid context length '%s'"
-msgstr "o comprimento do contexto não é válido `%s'"
+msgstr "o comprimento do contexto não é válido \"%s\""
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
-msgstr "este computador não suporta paginação"
+msgstr "sem suporte a paginação neste computador"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
-msgstr "opções de rótulo de arquivo em número excessivo"
+msgstr "número excessivo de opções de rótulo de arquivo"
-#: src/diff.c:514
-#, fuzzy, c-format
+#: src/diff.c:526
+#, c-format
msgid "invalid width '%s'"
-msgstr "largura inválida `%s'"
+msgstr "largura inválida \"%s\""
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
-msgstr "opções de largura conflitantes"
+msgstr "opções de largura conflitantes"
-#: src/diff.c:543
-#, fuzzy, c-format
+#: src/diff.c:555
+#, c-format
msgid "invalid horizon length '%s'"
-msgstr "comprimento do horizonte inválido `%s'"
+msgstr "comprimento do horizonte inválido \"%s\""
-#: src/diff.c:598
-#, fuzzy, c-format
+#: src/diff.c:611
+#, c-format
msgid "invalid tabsize '%s'"
-msgstr "tamanho de tabulação inválido `%s'"
+msgstr "tamanho de tabulação inválido \"%s\""
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
-msgstr "opções de tamanho de tabulação conflitantes"
+msgstr "opções de tamanho de tabulação conflitantes"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "ambos --from-file e --to-file especificados"
-#: src/diff.c:854
-#, fuzzy
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
-msgstr "--normal Criar o diff no formato normal."
+msgstr " --normal cria um diff no formato normal (padrão)"
-#: src/diff.c:855
-#, fuzzy
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
msgstr ""
-"-q --brief Indicar apenas se os arquivos são diferentes."
+"-q, --brief indica apenas se os arquivos forem diferentes"
-#: src/diff.c:856
-#, fuzzy
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
msgstr ""
-"-s --report-identical-files Indicar quando dois arquivos forem o idênticos."
+"-s, --report-identical-files indica quando dois arquivos forem o idênticos"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
+"-c, -C NÚM, --context[=NÚM] cria em NÚM linhas (padrão 3) de contexto "
+"copiado"
-#: src/diff.c:858
-#, fuzzy
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
-"-w NUM --width=NUM Limitar a saída a NUM colunas por linha (padrão "
-"130)."
+"-u, -U NÚM, --unified[=NÚM] cria em NÚM linhas (padrão 3) de contexto "
+"unificado"
-#: src/diff.c:859
-#, fuzzy
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
-msgstr "-e --ed Criar um script para o editor ed"
+msgstr "-e, --ed cria um script para o editor ed"
-#: src/diff.c:860
-#, fuzzy
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
-msgstr "-n --rcs Criar o diff no formato RCS."
+msgstr "-n, --rcs cria um diff no formato RCS"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
-msgstr ""
+msgstr "-y, --side-by-side cria em duas colunas"
-#: src/diff.c:862
-#, fuzzy
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
-"-w NUM --width=NUM Limitar a saída a NUM colunas por linha (padrão "
-"130)."
+"-W, --width=NÚM limita a saída a NÚM colunas por linha (padrão "
+"130)"
-#: src/diff.c:863
-#, fuzzy
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
-"-l --left-column Exibir apenas a coluna da esquerda nas linhas\n"
-" idênticas."
+" --left-column emite apenas a coluna da esquerda das linhas\n"
+" idênticas"
-#: src/diff.c:864
-#, fuzzy
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines Não exibir as linhas em idênticas."
+msgstr " --suppress-common-lines não exibe as linhas idênticas"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
+"-p, --show-c-function mostra em qual função C está cada alteração"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
+"-F, --show-function-line=ER mostra a linha mais recente correspondendo à ER"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+" --label RÓTULO usa RÓTULO ao invés do nome do arquivo\n"
+" (pode ser repetido)"
-#: src/diff.c:871
-#, fuzzy
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr ""
-"-t --expand-tabs Expandir as tabulações para espaços na saída."
+"-t, --expand-tabs expande as tabulações para espaços na saída"
-#: src/diff.c:872
-#, fuzzy
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
-"-T --initial-tab Alinhar as diferenças introduzindo um\n"
-" caracter de tabulação no início."
+"-T, --initial-tab alinha tabulações introduzindo uma\n"
+" tabulação no início"
-#: src/diff.c:873
-#, fuzzy
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
-"--tabsize=NUM Parada de tabulação a cada NUM colunas\n"
-" (padrão=8)."
+" --tabsize=NÚM paradas de tabulação a cada NÚM colunas\n"
+" (padrão=8)"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
+" --suppress-blank-empty suprime espaço ou tabulação antes de linhas\n"
+" vazias na saída"
-#: src/diff.c:875
-#, fuzzy
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
-"-l --paginate Passar a saída através da `pr' para paginar."
+"-l, --paginate passa a saída por meio de \"pr\" para paginá-la"
-#: src/diff.c:877
-#, fuzzy
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
-"-r --recursive Comparar recursivamente os subdiretórios\n"
-" encontrados."
+"-r, --recursive compara recursivamente os subdiretórios\n"
+" encontrados"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
-msgstr ""
+msgstr " --no-dereference não interpreta links simbólicos"
-#: src/diff.c:879
-#, fuzzy
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
msgstr ""
-"-N --new-file Considerar os arquivos ausentes como vazios."
+"-N, --new-file considera os arquivos ausentes como vazios"
-#: src/diff.c:880
-#, fuzzy
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
-"--unidirectional-new-file Considerar os primeiros arquivos ausentes\n"
-" como vazios."
+" --unidirectional-new-file considera os primeiros arquivos ausentes\n"
+" como vazios"
-#: src/diff.c:881
-#, fuzzy
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
-"--ignore-file-name-case Não fazer distinção entre letras maiúsculas e\n"
-" minúsculas nos nomes dos arquivos."
+" --ignore-file-name-case não faz distinção entre letras maiúsculas e\n"
+" minúsculas nos nomes dos arquivos"
-#: src/diff.c:882
-#, fuzzy
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
-"--no-ignore-file-name-case Fazer distinção entre letras maiúsculas e\n"
-" minúsculas nos nomes dos arquivos."
+" --no-ignore-file-name-case faz distinção entre letras maiúsculas e\n"
+" minúsculas nos nomes dos arquivos"
-#: src/diff.c:883
-#, fuzzy
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr ""
-"-x PADRÃO --exclude=PADRÃO Não comparar os arquivos cujos nomes\n"
-" correspondem ao PADRÃO."
+"-x, --exclude=PADRÃO exclui arquivos correspondendo a PADRÃO"
-#: src/diff.c:884
-#, fuzzy
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
-"-X ARQUIVO --exclude-from=ARQUIVO\n"
-" Excluir os arquivos com nomes que correspondem\n"
-" a qualquer padrão contido em ARQUIVO."
+"-X, --exclude-from=ARQUIVO exclui arquivos com correspondam a qualquer\n"
+" padrão contido em ARQUIVO"
-#: src/diff.c:885
-#, fuzzy
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
-"-S ARQUIVO --starting-file=ARQUIVO\n"
-" Iniciar por ARQUIVO ao comparar dois diretórios."
+"-S, --starting-file=ARQUIVO inicia por ARQUIVO ao comparar diretórios"
-#: src/diff.c:886
-#, fuzzy
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
msgstr ""
-"--from-file=ARQUIVO1 Comparar ARQUIVO1 com todos os operandos.\n"
-" ARQUIVO1 pode ser um diretório."
+" --from-file=ARQUIVO1 compara ARQUIVO1 com todos os operandos;\n"
+" ARQUIVO1 pode ser um diretório"
-#: src/diff.c:888
-#, fuzzy
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
msgstr ""
-"--to-file=ARQUIVO2 Comparar todos os operandos com ARQUIVO2.\n"
-" ARQUIVO2 pode ser um diretório."
+" --to-file=ARQUIVO2 compara todos os operandos com ARQUIVO2;\n"
+" ARQUIVO2 pode ser um diretório"
-#: src/diff.c:891
-#, fuzzy
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
-"-i --ignore-case Não fazer distinção entre letras maiúsculas e\n"
-" minúsculas no conteúdo do arquivo."
+"-i, --ignore-case não faz distinção entre letras maiúsculas e\n"
+" minúsculas no conteúdo do arquivo"
-#: src/diff.c:892
-#, fuzzy
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
-"-E --ignore-tab-expansion Ignorar as diferenças causadas pela expansão\n"
-" da tabulação."
+"-E, --ignore-tab-expansion ignora as diferenças causadas pela expansão\n"
+" da tabulação"
-#: src/diff.c:893
-#, fuzzy
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Ignorar todos os espaços em branco."
+msgstr ""
+"-Z, --ignore-trailing-space ignora espaços em branco no fim das linhas"
-#: src/diff.c:894
-#, fuzzy
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
-"-b --ignore-space-change Ignorar a diferença na quantidade de espaços\n"
-" em branco."
+"-b, --ignore-space-change ignora as diferenças na quantidade de "
+"espaços\n"
+" em branco"
-#: src/diff.c:895
-#, fuzzy
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
-msgstr "-w --ignore-all-space Ignorar todos os espaços em branco."
+msgstr "-w, --ignore-all-space ignora todos os espaços em branco"
-#: src/diff.c:896
-#, fuzzy
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr ""
-"-B --ignore-blank-lines Ignorar diferenças nas linhas somente com "
-"brancos."
+"-B, --ignore-blank-lines ignora diferenças onde as linhas estão vazias"
-#: src/diff.c:897
-#, fuzzy
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
-"-I EXPREG --ignore-matching-lines=EXPREG\n"
-" Ignorar as diferenças nas linhas que "
+"-I, --ignore-matching-lines=ER ignora as diferenças nas linhas que "
"correspondem\n"
-" à EXPressão REGular."
+" à Expressão Regular"
-#: src/diff.c:899
-#, fuzzy
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
-msgstr ""
-"-a --text Considerar todos os arquivos como sendo de texto."
+msgstr "-a, --text trata todos os arquivos como texto"
-#: src/diff.c:900
-#, fuzzy
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
-"--strip-trailing-cr Remover o caracter final de retorno de carro\n"
-" (CR) da entrada."
+" --strip-trailing-cr remove o caractere de retorno de carro\n"
+" (CR) ao final da linha na entrada"
-#: src/diff.c:902
-#, fuzzy
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
-msgstr "--binary Ler e escrever os dados em modo binário."
+msgstr " --binary lê e escreve os dados em modo binário"
-#: src/diff.c:905
-#, fuzzy
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
-"-D NOME --ifdef=NOME Exibir o arquivo mesclado incluindo\n"
-" `#ifndef NOME original #else modificado'\n"
-" nas diferenças."
+"-D, --ifdef=NOME exibe o arquivo mesclado incluindo\n"
+" \"#ifndef NOME\" nas diferenças"
-#: src/diff.c:906
-#, fuzzy
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
-msgstr "--GTYPE-group-format=GFMT Formata grupos de entrada GTYPE com GFMT."
+msgstr ""
+" --GTYPE-group-format=GFMT formata grupos de entrada GTYPE com GFMT"
-#: src/diff.c:907
-#, fuzzy
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
-"--line-format=LFMT Formata todas as linhas de entrada com LFMT."
+" --line-format=LFMT formata todas as linhas de entrada com LFMT"
-#: src/diff.c:908
-#, fuzzy
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
-"--LTYPE-line-format=LFMT Formata todas as linhas de entrada LTYPE com "
-"LFMT."
+" --LTYPE-line-format=LFMT formata todas as linhas de entrada LTYPE com "
+"LFMT"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
+" Essa opções de formatação fornece um controle refinado sobre a saída\n"
+" das diferenças, generalizando -D/--ifdef."
-#: src/diff.c:911
-#, fuzzy
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
-" LTYPE pode ser `old', `new', ou `unchanged'.\n"
-" GTYPE pode ser um dos valores de LTYPE ou `changed'."
+" LTYPE pode ser \"old\", \"new\" ou \"unchanged\". GTYPE é LTYPE ou "
+"\"changed\"."
-#: src/diff.c:912
-#, fuzzy
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" M L+1\n"
" %(A=B?T:E) if A equals B then T else E"
msgstr ""
-" GFMT pode conter:\n"
+" GFMT pode conter (apenas):\n"
" %< linhas do ARQUIVO1\n"
" %> linhas do ARQUIVO2\n"
-" %= linhas idênticas em ARQUIVO1 e ARQUIVO2\n"
-" %[-][LARGURA][.[PREC]]{doxX}LETRA especificação para LETRA\n"
-" utilizando a mesma notação do comando printf(). \n"
-" Os códigos permitidos para LETRA são,\n"
-" em maiúsculas para grupos novos,\n"
-" em minúsculas para grupos antigos:\n"
-" F número da primeira linha\n"
-" L número da última linha\n"
-" N número de linhas = L-F+1\n"
+" %= linhas idênticas em ARQUIVO1 e ARQUIVO2\n"
+" %[-][LARGURA][.[PREC]]{doxX}LETRA especificação para LETRA\n"
+" utilizando a mesma notação do comando printf(). \n"
+" Os códigos permitidos para LETRA são,\n"
+" em maiúsculas para grupos novos,\n"
+" em minúsculas para grupos antigos:\n"
+" F número da primeira linha\n"
+" L número da última linha\n"
+" N número de linhas = L-F+1\n"
" E F-1\n"
-" M L+1"
+" M L+1\n"
+" %(A=B?T:E) se A igual B, então T; senão E"
-#: src/diff.c:924
-#, fuzzy
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %l contents of line, excluding any trailing newline\n"
" %[-][WIDTH][.[PREC]]{doxX}n printf-style spec for input line number"
msgstr ""
-" LFMT pode conter:\n"
-" %L conteúdo da linha\n"
-" %l conteúdo da linha, excluindo o caracter final de nova linha\n"
-" %[-][LARGURA][.[PREC]]{doxX}n especificação do número da linha da \n"
-" entrada utilizando a mesma notação do comando printf()."
+" LFMT pode conter (apenas):\n"
+" %L conteúdo da linha\n"
+" %l conteúdo da linha, excluindo o caractere final de nova linha\n"
+" %[-][LARGURA][.[PREC]]{doxX}n especificação estilo printf() do número\n"
+" da linha da utilizando"
-#: src/diff.c:928
-#, fuzzy
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
msgstr ""
" GFMT ou LFMT pode conter:\n"
" %% %\n"
-" %c'C' o caracter C\n"
-" %c'\\OOO' o caracter com código octal OOO"
+" %c'C' o caractere C\n"
+" %c'\\OOO' o caractere com código octal OOO\n"
+" C o caractere C (outros caracteres representam a si próprios)"
-#: src/diff.c:934
-#, fuzzy
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr ""
-"-d --minimal Se esforçar para encontrar o menor conjunto\n"
-" de diferenças."
+"-d, --minimal se esforça para localizar o menor conjunto\n"
+" de diferenças"
-#: src/diff.c:935
-#, fuzzy
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
-"--horizon-lines=N Manter N linhas de prefixo e sufixo idênticos."
+" --horizon-lines=NÚM mantém NÚM linhas de prefixo e sufixo idênticos"
-#: src/diff.c:936
-#, fuzzy
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
-"-H --speed-large-files Assumir arquivos grandes e muitas alterações\n"
-" pequenas espalhadas."
+" --speed-large-files assume arquivos grandes e muitas alterações\n"
+" pequenas espalhadas"
-#: src/diff.c:938
-msgid " --help display this help and exit"
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:967
#, fuzzy
-msgid "-v, --version output version information and exit"
-msgstr "-v --version Exibir as informações da versão."
+msgid " or 'auto' (the default)"
+msgstr " --normal cria um diff no formato normal (padrão)"
-#: src/diff.c:941
-#, fuzzy
+#: src/diff.c:968
msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+" --palette=PALETTE specify the colors to use when --color is active"
msgstr ""
-"ARQUIVOS são `ARQUIVO1 ARQUIVO2' ou\n"
-" `DIR1 DIR2' ou\n"
-" `DIR ARQUIVO...' ou\n"
-" `ARQUIVO... DIR'."
-#: src/diff.c:942
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
+msgid " --help display this help and exit"
+msgstr " --help mostra esta ajuda e sai"
+
+#: src/diff.c:972
+msgid "-v, --version output version information and exit"
+msgstr "-v, --version mostra as informações da versão e sai"
+
+#: src/diff.c:974
#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
+msgstr ""
+"ARQUIVOS são \"ARQUIVO1 ARQUIVO2\" ou \"DIR1 DIR2\" ou \"DIR ARQUIVO...\" "
+"ou\n"
+"\"ARQUIVO... DIR\"."
+
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
-"Se --from-file ou --to-file for especificado, não há restrição em ARQUIVOS."
+"Se --from-file ou --to-file for especificado, não há restrição em ARQUIVO(s)."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
-#, fuzzy
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
-msgstr "Se ARQUIVO for igual a `-', ler da entrada padrão."
+msgstr "Se um ARQUIVO for igual a \"-\", lê da entrada padrão."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
-msgstr "Utilização: %s [OPÇÃO]... ARQUIVOS\n"
+msgstr "Uso: %s [OPÇÃO]... ARQUIVOS\n"
-#: src/diff.c:954
-#, fuzzy
+#: src/diff.c:987
msgid "Compare FILES line by line."
-msgstr "Comparar os arquivos linha por linha"
+msgstr "Compara ARQUIVOS linha por linha."
-#: src/diff.c:988
-#, fuzzy, c-format
+#: src/diff.c:1021
+#, c-format
msgid "conflicting %s option value '%s'"
-msgstr "conflitando %s valor da opção `%s'"
+msgstr "opção %s com valor conflitante \"%s\""
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
-msgstr "opções de estilo de saída conflitantes"
+msgstr "opções conflitantes de estilo de saída"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "largura inválida \"%s\""
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Somente em %s: %s\n"
-#: src/diff.c:1192
-#, fuzzy
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
-msgstr "impossível comparar `-' com um diretório"
+msgstr "não é possível comparar \"-\" com um diretório"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
-msgstr "a opção -D não é suportada com diretórios"
+msgstr "Sem suporte à opção -D com diretórios"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
-msgstr "Subdiretórios idênticos: %s e %s\n"
+msgstr "Subdiretórios idênticos: %s e %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
-msgstr "O arquivo %s é %s enquanto o arquivo %s é %s\n"
+msgstr "O arquivo %s é %s, enquanto o arquivo %s é %s\n"
-#: src/diff.c:1314
-#, fuzzy, c-format
+#: src/diff.c:1362
+#, c-format
msgid "Symbolic links %s and %s differ\n"
-msgstr "Os arquivos %s e %s são diferentes\n"
+msgstr "Os links simbólicos %s e %s são diferentes\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
-msgstr "Os aquivos %s e %s são idênticos\n"
+msgstr "Os aquivos %s e %s são idênticos\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff3.c:41
-#, fuzzy
msgid "Randy Smith"
-msgstr "Escrito por Randy Smith."
+msgstr "Randy Smith"
#: src/diff3.c:313
#, c-format
msgid "incompatible options"
-msgstr "opções incompatíveis"
+msgstr "opções incompatíveis"
#: src/diff3.c:353
-#, fuzzy
msgid "'-' specified for more than one input file"
-msgstr "`-' especificado para mais de um arquivo de entrada"
+msgstr "\"-\" especificado para mais de um arquivo de entrada"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "falha de leitura"
#: src/diff3.c:428
-#, fuzzy
msgid "-A, --show-all output all changes, bracketing conflicts"
msgstr ""
-"-A --show-all Exibir todas as diferenças,\n"
-" com os conflitos entre parênteses."
+"-A, --show-all exibe todas as diferenças, com os conflitos\n"
+" entre parênteses"
#: src/diff3.c:430
-#, fuzzy
msgid ""
"-e, --ed output ed script incorporating changes\n"
" from OLDFILE to YOURFILE into MYFILE"
msgstr ""
-"-e --ed Criar um arquivo de ed para incorporar em\n"
-" ARQUIVO1 as diferenças não mescladas\n"
-" entre ARQUIVO2 e ARQUIVO3."
+"-e, --ed cria um script de ed para incorporar as\n"
+" diferenças entre ARQUIVO1 e ARQUIVO2\n"
+" em ARQUIVO3"
#: src/diff3.c:432
-#, fuzzy
msgid "-E, --show-overlap like -e, but bracket conflicts"
msgstr ""
-"-E --show-overlap Exibir as diferenças sem mesclar,\n"
-" conflitos entre parênteses."
+"-E, --show-overlap similar a -e, mas exibe conflitos entre "
+"parênteses"
#: src/diff3.c:433
-#, fuzzy
msgid ""
"-3, --easy-only like -e, but incorporate only nonoverlapping "
"changes"
msgstr ""
-"-3 --easy-only Exibir sem mesclar as diferenças sem "
-"sobreposição."
+"-3, --easy-only similar a -e, mas incorpora apenas as "
+"alterações\n"
+" que não se sobreponham"
#: src/diff3.c:434
-#, fuzzy
msgid ""
"-x, --overlap-only like -e, but incorporate only overlapping changes"
msgstr ""
-"-x --overlap-only Exibir somente as diferenças que se sobrepõem."
+"-x, --overlap-only similar a -e, mas incorpora apenas as "
+"alterações\n"
+" que se sobrepõem"
#: src/diff3.c:435
msgid "-X like -x, but bracket conflicts"
msgstr ""
+"-X similar a -x, mas exibe conflitos entre parentes"
#: src/diff3.c:436
-#, fuzzy
msgid "-i append 'w' and 'q' commands to ed scripts"
msgstr ""
-"-i Incluir os comandos `w' e `q' no script do ed."
+"-i anexa os comandos \"w\" e \"q\" aos scripts de ed"
#: src/diff3.c:438
msgid ""
"-m, --merge output actual merged file, according to\n"
" -A if no other options are given"
msgstr ""
+"-m, --merge emite arquivo mesclado atual, conforme\n"
+" -A se nenhuma outra opções for fornecida"
#: src/diff3.c:441
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr ""
-"-a --text Considerar todos os arquivos como sendo de texto."
+msgstr "-a, --text trata todos os arquivos como texto"
#: src/diff3.c:442
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
-"--strip-trailing-cr Remover o caracter final de retorno de carro\n"
-" (CR) da entrada."
+" --strip-trailing-cr remove o caractere de retorno de carro\n"
+" (CR) ao final da linha na entrada"
#: src/diff3.c:443
-#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
-"-T --initial-tab Alinhar as diferenças introduzindo um\n"
-" caracter de tabulação no início."
+"-T, --initial-tab alinha tabulações introduzindo uma\n"
+" tabulação no início."
#: src/diff3.c:444
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
-msgstr "--diff-program=PROGRAMA Usar o PROGRAMA para comparar os arquivos."
+msgstr " --diff-program=PROGRAMA usa o PROGRAMA para comparar os arquivos"
#: src/diff3.c:445
msgid ""
"-L, --label=LABEL use LABEL instead of file name\n"
" (can be repeated up to three times)"
msgstr ""
+"-L, --label RÓTULO usa RÓTULO ao invés do nome do arquivo\n"
+" (pode ser repetido até três vezes)"
#: src/diff3.c:448
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help mostra esta ajuda e sai"
#: src/diff3.c:449
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Exibir as informações da versão."
+msgstr "-v, --version mostra informação da versão e sai"
#: src/diff3.c:458
#, c-format
msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n"
-msgstr "Utilização: %s [OPÇÃO]... ARQUIVO1 ARQUIVO2 ARQUIVO3\n"
+msgstr "Uso: %s [OPÇÃO]... ARQUIVO1 ARQUIVO2 ARQUIVO3\n"
#: src/diff3.c:460
msgid "Compare three files line by line."
-msgstr "Comparar três arquivos linha por linha."
+msgstr "Compara três arquivos linha por linha."
#: src/diff3.c:470
msgid ""
"and output the actual merged file. For unusual input, this is more\n"
"robust than using ed.\n"
msgstr ""
+"\n"
+"O formato padrão de saída é uma forma legível por humanos de representação\n"
+"das alterações.\n"
+"\n"
+"As opções -e, -E, -x, -X (e opções extensas correspondentes) fazem com que\n"
+"um script de ed seja criado, ao invés do padrão.\n"
+"\n"
+"Finalmente, a opção -m (--merge) faz com que diff3 faça a mesclagem\n"
+"internalmente e emite o arquivo mesclado atual. Para entradas incomuns,\n"
+"isto é mais robusto do que usar o ed.\n"
#: src/diff3.c:482
msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble."
-msgstr ""
+msgstr "Status de saída é 0 se houver sucesso, 1 se conflitos e 2 se problema."
#: src/diff3.c:675
msgid "internal error: screwup in format of diff blocks"
-msgstr "erro interno: confusão no formato dos blocos diff"
+msgstr "erro interno: confusão no formato dos blocos diff"
#: src/diff3.c:968
#, c-format
#: src/diff3.c:990
msgid "internal error: invalid diff type in process_diff"
-msgstr "erro interno: tipo de diff inválido em process_diff"
+msgstr "erro interno: tipo de diff inválido em process_diff"
#: src/diff3.c:1015
msgid "invalid diff format; invalid change separator"
-msgstr "formato de diff inválido; separador de diferença inválido"
+msgstr "formato de diff inválido; separador de diferença inválido"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
-msgstr "formato de diff inválido; a última linha não está completa"
+msgstr "formato de diff inválido; última linha incompleta"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
-#, fuzzy, c-format
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
+#, c-format
msgid "subsidiary program '%s' could not be invoked"
-msgstr "o programa auxiliar `%s' não foi encontrado"
+msgstr "o programa subsidiário \"%s\" não pôde ser invocado"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
-msgstr "formato de diff inválido; caracteres incorretos na linha de início"
+msgstr "formato de diff inválido; caracteres incorretos na linha de início"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
-msgstr "erro interno: tipo de diff inválido passado para a saída"
+msgstr "erro interno: tipo de diff inválido passado para a saída"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "o arquivo de entrada diminuiu"
-#: src/dir.c:158
-#, fuzzy, c-format
+#: src/dir.c:156
+#, c-format
msgid "cannot compare file names '%s' and '%s'"
-msgstr "impossível comparar os nomes dos arquivos `%s' e `%s'"
+msgstr "não foi possível comparar os nomes dos arquivos \"%s\" e \"%s\""
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
-msgstr ""
+msgstr "%s: loop de diretório recursivo"
#. This is a proper name. See the gettext manual, section Names.
#: src/sdiff.c:42
-#, fuzzy
msgid "Thomas Lord"
-msgstr "Escrito por Thomas Lord."
+msgstr "Thomas Lord"
#: src/sdiff.c:173
-#, fuzzy
msgid ""
"-o, --output=FILE operate interactively, sending output to FILE"
msgstr ""
-"-o ARQUIVO --output=ARQUIVO Agir interativamente, direcionando a saída "
-"para ARQUIVO."
+"-o, --output=ARQUIVO age interativamente, enviando a saída para "
+"ARQUIVO"
#: src/sdiff.c:175
-#, fuzzy
msgid ""
"-i, --ignore-case consider upper- and lower-case to be the same"
msgstr ""
-"-i --ignore-case Não fazer distinção entre letras maiúsculas\n"
-" e minúsculas."
+"-i, --ignore-case não faz distinção entre letras maiúsculas\n"
+" e minúsculas"
#: src/sdiff.c:176
-#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
-"-E --ignore-tab-expansion Ignorar as diferenças causadas pela expansão\n"
-" da tabulação."
+"-E, --ignore-tab-expansion ignorar as diferenças causadas pela expansão\n"
+" da tabulação"
#: src/sdiff.c:177
-#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Ignorar todos os espaços em branco."
+msgstr ""
+"-Z, --ignore-trailing-space ignora espaços em branco no fim das linhas"
#: src/sdiff.c:178
-#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
-"-b --ignore-space-change Ignorar a diferença na quantidade de espaços\n"
-" em branco."
+"-b, --ignore-space-change ignora as diferenças na quantidade de espaços\n"
+" em branco"
#: src/sdiff.c:179
-#, fuzzy
msgid "-W, --ignore-all-space ignore all white space"
-msgstr "-W --ignore-all-space Ignorar todos os espaços em branco."
+msgstr "-W, --ignore-all-space ignora todos os espaços em branco"
#: src/sdiff.c:180
-#, fuzzy
msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank"
msgstr ""
-"-B --ignore-blank-lines Ignorar diferenças nas linhas somente com "
-"brancos."
+"-B, --ignore-blank-lines ignora diferenças onde as linhas estão vazias"
#: src/sdiff.c:181
-#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE"
msgstr ""
-"-I EXPREG --ignore-matching-lines=EXPREG\n"
-" Ignorar as diferenças nas linhas que "
+"-I, --ignore-matching-lines=ER ignora as diferenças em linhas que "
"correspondem\n"
-" à EXPressão REGular."
+" à Expressão Regular"
#: src/sdiff.c:182
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
-"--strip-trailing-cr Remover o caracter final de retorno de carro\n"
-" (CR) da entrada."
+" --strip-trailing-cr remove o caractere de retorno de carro\n"
+" (CR) ao final da linha na entrada"
#: src/sdiff.c:183
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr ""
-"-a --text Considerar todos os arquivos como sendo de texto."
+msgstr "-a, --text trata todos os arquivos como texto"
#: src/sdiff.c:185
-#, fuzzy
msgid ""
"-w, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
-"-w NUM --width=NUM Limitar a saída a NUM colunas por linha (padrão "
-"130)."
+"-w, --width=NÚM limita a saída a NÚM colunas por linha (padrão "
+"130)"
#: src/sdiff.c:186
-#, fuzzy
msgid ""
"-l, --left-column output only the left column of common lines"
msgstr ""
-"-l --left-column Exibir apenas a coluna da esquerda nas linhas\n"
-" idênticas."
+"-l, --left-column emite apenas a coluna da esquerda das linhas\n"
+" idênticas"
#: src/sdiff.c:187
-#, fuzzy
msgid "-s, --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines Não exibir as linhas em idênticas."
+msgstr "-s, --suppress-common-lines não emite as linhas idênticas"
#: src/sdiff.c:189
-#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr ""
-"-t --expand-tabs Expandir as tabulações para espaços na saída."
+"-t, --expand-tabs expande as tabulações para espaços na saída"
#: src/sdiff.c:190
-#, fuzzy
msgid ""
" --tabsize=NUM tab stops at every NUM (default 8) print columns"
msgstr ""
-"--tabsize=NUM Parada de tabulação a cada NUM colunas\n"
-" (padrão=8)."
+" --tabsize=NÚM paradas de tabulação a cada NÚM colunas\n"
+" (padrão=8)"
#: src/sdiff.c:192
-#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr ""
-"-d --minimal Se esforçar para encontrar o menor conjunto\n"
-" de diferenças."
+"-d, --minimal se esforça para localizar o menor conjunto\n"
+" de diferenças"
#: src/sdiff.c:193
-#, fuzzy
msgid ""
"-H, --speed-large-files assume large files, many scattered small changes"
msgstr ""
-"-H --speed-large-files Assumir arquivos grandes e muitas alterações\n"
-" pequenas espalhadas."
+"-H, --speed-large-files assume arquivos grandes e muitas alterações\n"
+" pequenas espalhadas"
#: src/sdiff.c:194
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
-msgstr "--diff-program=PROGRAMA Usar o PROGRAMA para comparar os arquivos."
+msgstr " --diff-program=PROGRAMA usa o PROGRAMA para comparar os arquivos"
#: src/sdiff.c:196
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help mostra esta ajuda e sai"
#: src/sdiff.c:197
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Exibir as informações da versão."
+msgstr "-v, --version mostra informação da versão e sai"
#: src/sdiff.c:206
#, c-format
msgid "Usage: %s [OPTION]... FILE1 FILE2\n"
-msgstr "Utilização: %s [OPÇÃO]... ARQUIVO1 ARQUIVO2\n"
+msgstr "Uso: %s [OPÇÃO]... ARQUIVO1 ARQUIVO2\n"
#: src/sdiff.c:208
-#, fuzzy
msgid "Side-by-side merge of differences between FILE1 and FILE2."
-msgstr "Mesclagem lado a lado das diferenças dos arquivos."
+msgstr "Mesclagem lado a lado das diferenças entre ARQUIVO1 e ARQUIVO2."
#: src/sdiff.c:329
msgid "cannot interactively merge standard input"
-msgstr "impossível mesclar interativamente a entrada padrão"
+msgstr "não foi possível mesclar interativamente a entrada padrão"
#: src/sdiff.c:595
msgid "both files to be compared are directories"
-msgstr "os dois arquivos a serem comparados são diretórios"
+msgstr "os dois arquivos a serem comparados são diretórios"
#: src/sdiff.c:818
-#, fuzzy
msgid ""
"ed:\tEdit then use both versions, each decorated with a header.\n"
"eb:\tEdit then use both versions.\n"
"v:\tVerbosely include common lines.\n"
"q:\tQuit.\n"
msgstr ""
-"ed:\tEditar e então usar ambas as versões, cada uma com seu cabeçalho.\n"
-"eb:\tEditar e então usar ambas as versões.\n"
-"el:\tEditar e então usar a versão da esquerda.\n"
-"er:\tEditar e então usar a versão da direita.\n"
-"e:\tEditar uma nova versão.\n"
-"l:\tUsar a versão da esquerda.\n"
-"r:\tUsar a versão da direita.\n"
-"s:\tIncluir silenciosamente as linhas idênticas.\n"
-"v:\tIncluir verbosamente as linhas idênticas.\n"
-"q:\tSair.\n"
+"ed:\tEdita e, então, usa ambas as versões, cada uma com seu cabeçalho.\n"
+"eb:\tEdita e, então, usa ambas as versões.\n"
+"el ou e1:\tEdita e, então, usa a versão da esquerda.\n"
+"er ou e2:\tEdita e, então, usa a versão da direita.\n"
+"e:\tEdita uma nova versão.\n"
+"l ou 1:\tUsa a versão da esquerda.\n"
+"r ou 2:\tUsa a versão da direita.\n"
+"s:\tInclui silenciosamente as linhas idênticas.\n"
+"v:\tInclui verbosamente as linhas idênticas.\n"
+"q:\tSai.\n"
+
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: opção não reconhecida \"--%s\"\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
#~ msgid "%s: illegal option -- %c\n"
-#~ msgstr "%s: a opção -- %c é ilegal\n"
+#~ msgstr "%s: a opção -- %c é ilegal\n"
#~ msgid ""
#~ "This program comes with NO WARRANTY, to the extent permitted by law.\n"
#~ "under the terms of the GNU General Public License.\n"
#~ "For more information about these matters, see the files named COPYING."
#~ msgstr ""
-#~ "Este programa não tem nenhum tipo de garantia, o tanto quanto\n"
-#~ "é permitido por lei. Você pode redistribuir cópias deste\n"
-#~ "programa sob os termos da Licença Pública Geral GNU. Para\n"
-#~ "mais informações a este respeito, leia o arquivo COPYING."
+#~ "Este programa não tem nenhum tipo de garantia, o tanto quanto\n"
+#~ "é permitido por lei. Você pode redistribuir cópias deste\n"
+#~ "programa sob os termos da Licença Pública Geral GNU. Para\n"
+#~ "mais informações a este respeito, leia o arquivo COPYING."
#~ msgid "Written by Torbjorn Granlund and David MacKenzie."
-#~ msgstr "Escrito por Torbjörn Granlund e David MacKenzie."
+#~ msgstr "Escrito por Torbjörn Granlund e David MacKenzie."
#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
#~ msgstr "-i SALTO1:SALTO2 --ignore-initial=SALTO1:SALTO2"
#~ msgid "-s --quiet --silent Output nothing; yield exit status only."
#~ msgstr ""
-#~ "-s --quiet --silent Não exibir nada; retornar apenas o status de "
+#~ "-s --quiet --silent Não exibir nada; retornar apenas o status de "
#~ "fim."
#~ msgid "--help Output this help."
#~ "Richard Stallman, e Len Tower."
#~ msgid "`-%ld' option is obsolete; use `-%c %ld'"
-#~ msgstr "a opção `-%ld' está obsoleta; usar `-%c %ld'"
+#~ msgstr "a opção `-%ld' está obsoleta; usar `-%c %ld'"
#~ msgid "`-%ld' option is obsolete; omit it"
-#~ msgstr "a opção `-%ld' está obsoleta; omita-a"
+#~ msgstr "a opção `-%ld' está obsoleta; omita-a"
#~ msgid ""
#~ "-c -C NUM --context[=NUM] Output NUM (default 3) lines of copied "
#~ " -p --show-c-function Show which C function each change is in.\n"
#~ " -F RE --show-function-line=RE Show the most recent line matching RE."
#~ msgstr ""
-#~ "-c -C N --context[=N] Exibir o contexto regular das diferenças\n"
+#~ "-c -C N --context[=N] Exibir o contexto regular das diferenças\n"
#~ " usando N linhas de contexto (N=3 por "
-#~ "padrão).\n"
-#~ "-u -U N --unified[=N] Exibir o contexto unificado das diferenças\n"
+#~ "padrão).\n"
+#~ "-u -U N --unified[=N] Exibir o contexto unificado das diferenças\n"
#~ " usando N linhas de contexto (N=3 por "
-#~ "padrão).\n"
-#~ " --label RÓTULO Usar RÓTULO em vez do nome do arquivo.\n"
-#~ " -p --show-c-function Mostrar em qual função C (ed) está cada "
-#~ "diferença.\n"
+#~ "padrão).\n"
+#~ " --label RÓTULO Usar RÓTULO em vez do nome do arquivo.\n"
+#~ " -p --show-c-function Mostrar em qual função C (ed) está cada "
+#~ "diferença.\n"
#~ " -F EXPREG --show-function-line=EXPREG\n"
#~ " Exibir a linha mais recente que corresponde\n"
-#~ " à EXPressão REGular."
+#~ " à EXPressão REGular."
#~ msgid ""
#~ "-y --side-by-side Output in two columns.\n"
#~ " --suppress-common-lines Do not output common lines."
#~ msgstr ""
#~ "-y --side-by-side Exibir em duas colunas.\n"
-#~ " -W N --width=N Exibir no máximo N colunas. (N=130 por "
-#~ "padrão)\n"
+#~ " -W N --width=N Exibir no máximo N colunas. (N=130 por "
+#~ "padrão)\n"
#~ " --left-column Exibir apenas a coluna da esquerda nas "
#~ "linhas\n"
-#~ " idênticas.\n"
-#~ " --suppress-common-lines Não exibir as linhas idênticas."
+#~ " idênticas.\n"
+#~ " --suppress-common-lines Não exibir as linhas idênticas."
#~ msgid ""
#~ "--speed-large-files Assume large files and many scattered small changes."
#~ msgstr ""
-#~ "--speed-large-files Assumir arquivos grandes e muitas alterações\n"
+#~ "--speed-large-files Assumir arquivos grandes e muitas alterações\n"
#~ " pequenas espalhadas."
#~ msgid "-X Output overlapping changes, bracketing them."
#~ msgstr ""
-#~ "-X Exibir as diferenças que se sobrepõem,\n"
-#~ " entre parênteses."
+#~ "-X Exibir as diferenças que se sobrepõem,\n"
+#~ " entre parênteses."
#~ msgid "-m --merge Output merged file instead of ed script (default -A)."
#~ msgstr ""
#~ " (implica -A)."
#~ msgid "-L LABEL --label=LABEL Use LABEL instead of file name."
-#~ msgstr "-L RÓTULO --label=RÓTULO Usar RÓTULO em vez do nome do arquivo."
+#~ msgstr "-L RÓTULO --label=RÓTULO Usar RÓTULO em vez do nome do arquivo."
#~ msgid "subsidiary program `%s' failed"
#~ msgstr "o programa auxiliar `%s' falhou"
#~ msgid "subsidiary program `%s' not executable"
-#~ msgstr "o programa auxiliar `%s' não é executável"
+#~ msgstr "o programa auxiliar `%s' não é executável"
msgstr ""
"Project-Id-Version: diffutils 2.8.3\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2003-08-22 08:43+0300\n"
"Last-Translator: Eugen Hoanca <eugenh@urban-grafx.ro>\n"
"Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
"Content-Type: text/plain; charset=ISO-8859-2\n"
"Content-Transfer-Encoding: 8bit\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "valoare --bytes invalidã `%s'"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "valoare --bytes invalidã `%s'"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "eroare de program"
msgid "stack overflow"
msgstr "stivã plinã(overflow)"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Eroare de sistem necunoscutã"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "fiºier obiºnuit(regular) vid"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "fiºier obiºnuit"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "director"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "fiºier bloc special"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "fiºier caracter special"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "legãturã simbolicã"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "socket"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "coadã(queue) de mesaje"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semafor"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "obiect memorie globalã(shared memory)"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
#, fuzzy
msgid "typed memory object"
msgstr "obiect memorie globalã(shared memory)"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "fiºier bloc special"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "fiºier caracter special"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "fiºier bloc special"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "fiºier caracter special"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "fiºier ciudat"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "fiºier bloc special"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "socket"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "fiºier ciudat"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, fuzzy, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: opþiunea `%s' este ambiguã\n"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: opþiunea `-W %s' este ambiguã\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, fuzzy, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: opþiunea `--%s' nu permite parametri\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, fuzzy, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: opþiunea `%c%s' nu permite parametri\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, fuzzy, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: opþiunea `%s' necesitã un parametru\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, fuzzy, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: opþiune necunoscutã `--%s'\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, fuzzy, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: opþiune necunoscutã `%c%s'\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, fuzzy, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: opþiune invalidã -- %c\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, fuzzy, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: opþiunea necesitã un parametru -- %c\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, fuzzy, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: opþiunea `-W %s' este ambiguã\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, fuzzy, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: opþiunea `-W %s' nu permite parametri\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, fuzzy, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: opþiunea `%s' necesitã un parametru\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr ""
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr ""
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Succes"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Nici o potrivire"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Expresie normalã(regular) invalidã"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Caracter de comparare invalid"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Nume clasã caracter invalidã"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Backslash de sfârºit de linie(trailing)"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Referinþã precedentã invalidã"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "[ sau [^ neînchise"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "( or \\( neînchise"
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "\\{ neînchisã"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Conþinut invalid al \\{\\}"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Sfârºit de domeniu invalid"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Memorie plinã"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Expresie normalã de precedenþã invalidã"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Sfârºit prematur de expresie normalã"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Expresie normalã prea mare"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr ") or \\) nedeschise"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Nu a existat nici o expresie normalã antecedentã"
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr ""
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Fiºierele %s ºi %s diferã\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Fiºierele binare %s ºi %s diferã\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Nici un element de linie nouã la sfârºitul fiºierului"
msgid "David MacKenzie"
msgstr ""
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, fuzzy, c-format
msgid "Try '%s --help' for more information."
msgstr "Încercaþi `%s --help' pentru mai multe informaþii."
msgid "options -l and -s are incompatible"
msgstr "opþiunile -l ºi -s sunt incompatibile"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "scriere eºuatã"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "ieºire(output) standard"
msgstr ""
"OMIS1 ºi OMIS2 sunt numerele de octeþi care sã fie omiºi din fiecare fiºier."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgstr ""
"Dacã un FIªIER este `-' sau lipseºte, se citeºte intrarea(input) standard."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
msgid "invalid --bytes value '%s'"
msgstr "valoare --bytes invalidã `%s'"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, fuzzy, c-format
msgid "missing operand after '%s'"
msgstr "lipseºte operandul dupã `%s'"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, fuzzy, c-format
msgid "extra operand '%s'"
msgstr "operand în plus(extra) `%s'"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s diferã: octetul %s, linia %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s diferã: octetul %s, linia %s este %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: EOF în %s\n"
msgid "Len Tower"
msgstr ""
-#: src/diff.c:339
+#: src/diff.c:351
#, fuzzy, c-format
msgid "invalid context length '%s'"
msgstr "lungime invalidã de context `%s'"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "paginaþie nesuportatã de acest host"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "prea multe opþiuni de etichete fiºier"
-#: src/diff.c:514
+#: src/diff.c:526
#, fuzzy, c-format
msgid "invalid width '%s'"
msgstr "lungime invalidã `%s'"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "opþiuni de lungime în conflict"
-#: src/diff.c:543
+#: src/diff.c:555
#, fuzzy, c-format
msgid "invalid horizon length '%s'"
msgstr "lungime de orizont invalidã `%s'"
-#: src/diff.c:598
+#: src/diff.c:611
#, fuzzy, c-format
msgid "invalid tabsize '%s'"
msgstr "mãrime tab invalidã `%s'"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "opþiuni mãrime tab în conflict"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr " --from-file ºi --to-file sunt specificate împreunã"
-#: src/diff.c:854
+#: src/diff.c:883
#, fuzzy
msgid " --normal output a normal diff (the default)"
msgstr "--normal Afiºeazã un diff normal."
-#: src/diff.c:855
+#: src/diff.c:884
#, fuzzy
msgid "-q, --brief report only when files differ"
msgstr "-q --brief Afiºeazã doar dacã fiºierele diferã."
-#: src/diff.c:856
+#: src/diff.c:885
#, fuzzy
msgid "-s, --report-identical-files report when two files are the same"
msgstr ""
"-s --report-identical-files Raporteazã când douã fiºiere sunt asemãnãtoare."
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
-#: src/diff.c:858
+#: src/diff.c:887
#, fuzzy
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"-w NUM --width=NUM Afiºeazã cel mult NUM (implicit 130) coloane tipãrite."
-#: src/diff.c:859
+#: src/diff.c:888
#, fuzzy
msgid "-e, --ed output an ed script"
msgstr "-e --ed Afiºeazã un script ed."
-#: src/diff.c:860
+#: src/diff.c:889
#, fuzzy
msgid "-n, --rcs output an RCS format diff"
msgstr "-n --rcs Afiºeazã un diff în format RCS."
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr ""
-#: src/diff.c:862
+#: src/diff.c:891
#, fuzzy
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"-w NUM --width=NUM Afiºeazã cel mult NUM (implicit 130) coloane tipãrite."
-#: src/diff.c:863
+#: src/diff.c:892
#, fuzzy
msgid ""
" --left-column output only the left column of common lines"
msgstr "-l --left-column Afiºeazã doar coloana din stânga a liniilor comune."
-#: src/diff.c:864
+#: src/diff.c:893
#, fuzzy
msgid " --suppress-common-lines do not output common lines"
msgstr "-s --suppress-common-lines Nu afiºa liniile comune."
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+"--from-file=FIªIER1 Comparã FIªIER1 cu toþi operanzii. FIªIER1 poate fi "
+"director."
-#: src/diff.c:871
+#: src/diff.c:900
#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr "-t --expand-tabs Schimbã tab-urile în spaþii la ieºire(output)."
-#: src/diff.c:872
+#: src/diff.c:901
#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr "-T --initial-tab Aliniazã tab-urile adãugând în faþã un tab."
-#: src/diff.c:873
+#: src/diff.c:902
#, fuzzy
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
"--tabsize=NUM Opririle tab-ului vor fi la fiecare NUM (implicit 8) coloane "
"tipãrite."
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
-#: src/diff.c:875
+#: src/diff.c:904
#, fuzzy
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
"-l --paginate Trimite ieºirea(output) prin `pr' pentru a fi paginatã."
-#: src/diff.c:877
+#: src/diff.c:906
#, fuzzy
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr "-r --recursive Comparã recursiv orice subdirector întâlnit."
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr ""
-#: src/diff.c:879
+#: src/diff.c:908
#, fuzzy
msgid "-N, --new-file treat absent files as empty"
msgstr "-N --new-file Trateazã fiºierele lipsã ca vide."
-#: src/diff.c:880
+#: src/diff.c:909
#, fuzzy
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr "--unidirectional-new-file Trateazã primele fiºiere lipsã ca vide."
-#: src/diff.c:881
+#: src/diff.c:910
#, fuzzy
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
"--ignore-file-name-case Ignorã cazul când se comparã numele de fiºiere."
-#: src/diff.c:882
+#: src/diff.c:911
#, fuzzy
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
"--no-ignore-file-name-case Ia în calcul cazul atunci când se comparã numele "
"de fiºiere."
-#: src/diff.c:883
+#: src/diff.c:912
#, fuzzy
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr "-x TIP --exclude=TIP Exclude fiºierele care se potrivesc TIParului."
-#: src/diff.c:884
+#: src/diff.c:913
#, fuzzy
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
"-X FIªIER --exclude-from=FIªIER Exclude fiºierele care se potrivesc "
"oricãrui tipar din FIªIER."
-#: src/diff.c:885
+#: src/diff.c:914
#, fuzzy
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
"-S FIªIER --starting-file=FIªIER Începe cu FIªIER în compararea "
"directoarelor."
-#: src/diff.c:886
+#: src/diff.c:915
#, fuzzy
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
"--from-file=FIªIER1 Comparã FIªIER1 cu toþi operanzii. FIªIER1 poate fi "
"director."
-#: src/diff.c:888
+#: src/diff.c:917
#, fuzzy
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
"--to-file=FIªIER2 Comparã toþi operanzii cu FIªIER2. FIªIER2 poate fi "
"director."
-#: src/diff.c:891
+#: src/diff.c:920
#, fuzzy
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
"-i --ignore-case Ignorã diferenþele de caz din conþinutul fiºierului."
-#: src/diff.c:892
+#: src/diff.c:921
#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
"-E --ignore-tab-expansion Ignorã schimbãrile produse de modificarea tab-"
"ului."
-#: src/diff.c:893
+#: src/diff.c:922
#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr "-w --ignore-all-space Ignorã tot spaþiul vid."
-#: src/diff.c:894
+#: src/diff.c:923
#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr "-b --ignore-space-change Ignorã schimbãrile din spaþiul vid."
-#: src/diff.c:895
+#: src/diff.c:924
#, fuzzy
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w --ignore-all-space Ignorã tot spaþiul vid."
-#: src/diff.c:896
+#: src/diff.c:925
#, fuzzy
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
"-B --ignore-blank-lines Ignorã schimbãrile unde toate liniile sunt "
"goale(blank)."
-#: src/diff.c:897
+#: src/diff.c:926
#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I RE --ignore-matching-lines=RE Ignorã schimbãrile la toate liniile care "
"se potrivesc RE-ului."
-#: src/diff.c:899
+#: src/diff.c:928
#, fuzzy
msgid "-a, --text treat all files as text"
msgstr "-a --text Trateazã toate fiºierele ca text."
-#: src/diff.c:900
+#: src/diff.c:929
#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
"--strip-trailing-cr Eliminã returul de car(carriage return) final la "
"intrare(input)."
-#: src/diff.c:902
+#: src/diff.c:931
#, fuzzy
msgid " --binary read and write data in binary mode"
msgstr "--binary Citeºte ºi scrie date în mod binar."
-#: src/diff.c:905
+#: src/diff.c:934
#, fuzzy
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
"-D NUME --ifdef=NUME Afiºeazã fiºierul rezultat(merged) pentru a arãta "
"diff-urile`#ifdef NAME'."
-#: src/diff.c:906
+#: src/diff.c:935
#, fuzzy
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
"--GTYPE-group-format=GFMT Similar, dar formatul de intrare GTYPE se "
"grupeazã cu GFMT."
-#: src/diff.c:907
+#: src/diff.c:936
#, fuzzy
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr "--line-format=LFMT Similar, dar formateazã toate liniile cu LFMT."
-#: src/diff.c:908
+#: src/diff.c:937
#, fuzzy
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
"--LTYPE-line-format=LFMT Similar, dar formateazã liniile de intrare LTYPE "
"cu LFMT."
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
-#: src/diff.c:911
+#: src/diff.c:940
#, fuzzy
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" LTYPE este `old', `new', sau `unchanged'. GTYPE este LTYPE sau `changed'."
-#: src/diff.c:912
+#: src/diff.c:941
#, fuzzy
msgid ""
" GFMT (only) may contain:\n"
" E F-1\n"
" M L+1"
-#: src/diff.c:924
+#: src/diff.c:953
#, fuzzy
msgid ""
" LFMT (only) may contain:\n"
" %[-][WIDTH][.[PREC]]{doxX}n specificaþii stil printf-pentru "
"introducerea numãrului de linie"
-#: src/diff.c:928
+#: src/diff.c:957
#, fuzzy
msgid ""
" Both GFMT and LFMT may contain:\n"
" %c'C' caracterul singular C\n"
" %c'\\OOO' caracterul cu codul octal OOO"
-#: src/diff.c:934
+#: src/diff.c:963
#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr ""
"-d --minimal Încearcã din greu sã gãseºti un set mai mic de schimbãri"
-#: src/diff.c:935
+#: src/diff.c:964
#, fuzzy
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr "--horizon-lines=NUM Reþine NUM linii de prefix ºi sufix comun."
-#: src/diff.c:936
+#: src/diff.c:965
#, fuzzy
msgid ""
" --speed-large-files assume large files and many scattered small changes"
"-H --speed-large-files Presupune fiºiere mari ºi multe modificãri mici "
"împrãºtiate."
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr "--normal Afiºeazã un diff normal."
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:972
#, fuzzy
msgid "-v, --version output version information and exit"
msgstr "-v --version Tipãreºte informaþii despre versiune."
-#: src/diff.c:941
+#: src/diff.c:974
#, fuzzy
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"FIªIEREle sunt `FIªIER1 FIªIER2' sau `DIR1 DIR2' sau `DIR FIªIER...' or "
"`FIªIER... DIR'."
-#: src/diff.c:942
+#: src/diff.c:975
#, fuzzy
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
"Dacã --from-file sau --to-file sunt precizate, nu existã restricþii pe "
"FIªIERE."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
#, fuzzy
msgid "If a FILE is '-', read standard input."
msgstr "Dacã FIªIER este `-', se citeºte intrarea(input) standard."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Folosire: %s [OPÞIUNE]... FIªIERE\n"
-#: src/diff.c:954
+#: src/diff.c:987
#, fuzzy
msgid "Compare FILES line by line."
msgstr "Comparã fiºierele linie cu linie."
-#: src/diff.c:988
+#: src/diff.c:1021
#, fuzzy, c-format
msgid "conflicting %s option value '%s'"
msgstr "Existã un conflict cu %s în valoarea opþiunii `%s'"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "Conflict în opþiunile stilului de afiºare(output)"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "lungime invalidã `%s'"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Doar în %s: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
#, fuzzy
msgid "cannot compare '-' to a directory"
msgstr "nu se poate compara `-' cu un director"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "opþiunea -D nu este compatibilã cu directoarele"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Subdirectoare comune: %s ºi %s.\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "Fiºierul %s este un %s pe când fiºierul %s este un %s.\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, fuzzy, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "Fiºierele %s ºi %s diferã\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Fiºierele %s ºi %s sunt identice\n"
msgid "'-' specified for more than one input file"
msgstr "`-' specificat pentru mai mult de un fiºier de intrare(input)"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "citire eºuatã"
msgid "invalid diff format; invalid change separator"
msgstr "format diff invalid; separator de modificare invalid"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "format diff invalid; ultimã-linie incompletã"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, fuzzy, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "programul subsidiar `%s' nu a fost gãsit"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "format diff invalid; caractere precedente liniei incorecte"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "eroare internã: tip invalid de diff trimis spre ieºire(output)"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "fiºier de intrare(input) micºorat"
-#: src/dir.c:158
+#: src/dir.c:156
#, fuzzy, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "nu se pot compara numele de fiºiere `%s' ºi `%s'"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr ""
"v:\tInclude detaliat liniile comune.\n"
"q:\tIeºire.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: opþiune necunoscutã `--%s'\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "%s: illegal option -- %c\n"
#~ msgstr "%s: opþiune ilegalã -- %c\n"
msgstr ""
"Project-Id-Version: diffutils 2.8.7\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2007-02-13 07:13+0300\n"
"Last-Translator: Oleg S. Tihonov <ost@tatnipi.ru>\n"
"Language-Team: Russian <ru@li.org>\n"
"Content-Type: text/plain; charset=koi8-r\n"
"Content-Transfer-Encoding: 8bit\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "ÎÅÄÏÐÕÓÔÉÍÏÅ ÚÎÁÞÅÎÉÅ --bytes `%s'"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "ÎÅÄÏÐÕÓÔÉÍÏÅ ÚÎÁÞÅÎÉÅ --bytes `%s'"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "ÏÛÉÂËÁ ÐÒÏÇÒÁÍÍÙ"
msgid "stack overflow"
msgstr "ÐÅÒÅÐÏÌÎÅÎÉÅ ÓÔÅËÁ"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "îÅÉÚ×ÅÓÔÎÁÑ ÓÉÓÔÅÍÎÁÑ ÏÛÉÂËÁ"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "ÏÂÙÞÎÙÊ ÐÕÓÔÏÊ ÆÁÊÌ"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "ÏÂÙÞÎÙÊ ÆÁÊÌ"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "ËÁÔÁÌÏÇ"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "ÓÐÅÃÉÁÌØÎÙÊ ÆÁÊÌ Ó ÐÏÂÌÏÞÎÙÍ ÄÏÓÔÕÐÏÍ"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "ÓÐÅÃÉÁÌØÎÙÊ ÆÁÊÌ Ó ÐÏÓÉÍ×ÏÌØÎÙÍ ÄÏÓÔÕÐÏÍ"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "ÏÞÅÒÅÄØ"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "ÓÉÍ×ÏÌØÎÁÑ ÓÓÙÌËÁ"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "ÓÏËÅÔ"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "ÏÞÅÒÅÄØ ÓÏÏÂÝÅÎÉÊ"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "ÓÅÍÁÆÏÒ"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "ÒÁÚÄÅÌÑÅÍÙÊ ÏÂßÅËÔ"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "ÏÂßÅËÔ ÔÉÐÉÚÉÒÏ×ÁÎÎÏÊ ÐÁÍÑÔÉ"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "ÓÐÅÃÉÁÌØÎÙÊ ÆÁÊÌ Ó ÐÏÂÌÏÞÎÙÍ ÄÏÓÔÕÐÏÍ"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "ÓÐÅÃÉÁÌØÎÙÊ ÆÁÊÌ Ó ÐÏÓÉÍ×ÏÌØÎÙÍ ÄÏÓÔÕÐÏÍ"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "ÏÞÅÒÅÄØ"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "ÓÐÅÃÉÁÌØÎÙÊ ÆÁÊÌ Ó ÐÏÂÌÏÞÎÙÍ ÄÏÓÔÕÐÏÍ"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "ÓÐÅÃÉÁÌØÎÙÊ ÆÁÊÌ Ó ÐÏÓÉÍ×ÏÌØÎÙÍ ÄÏÓÔÕÐÏÍ"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "ÓÔÒÁÎÎÙÊ ÆÁÊÌ"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "ÓÐÅÃÉÁÌØÎÙÊ ÆÁÊÌ Ó ÐÏÂÌÏÞÎÙÍ ÄÏÓÔÕÐÏÍ"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "ÓÏËÅÔ"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "ÓÔÒÁÎÎÙÊ ÆÁÊÌ"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, fuzzy, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: ÎÅÏÄÎÏÚÎÁÞÎÙÊ ËÌÀÞ `%s'\n"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: ÎÅÏÄÎÏÚÎÁÞÎÙÊ ËÌÀÞ `-W %s'\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, fuzzy, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: ËÌÀÞ `--%s' ÄÏÌÖÅÎ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ ÂÅÚ ÁÒÇÕÍÅÎÔÁ\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, fuzzy, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: ËÌÀÞ `%c%s' ÄÏÌÖÅÎ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ ÂÅÚ ÁÒÇÕÍÅÎÔÁ\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, fuzzy, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: ËÌÀÞ `%s' ÄÏÌÖÅÎ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ c ÁÒÇÕÍÅÎÔÏÍ\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, fuzzy, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: ÎÅÉÚ×ÅÓÔÎÙÊ ËÌÀÞ `--%s'\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, fuzzy, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: ÎÅÉÚ×ÅÓÔÎÙÊ ËÌÀÞ `%c%s'\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, fuzzy, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: ÎÅ×ÅÒÎÙÊ ËÌÀÞ -- %c\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, fuzzy, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: ËÌÀÞ %c ÄÏÌÖÅÎ ÂÙ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ c ÁÒÇÕÍÅÎÔÏÍ\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, fuzzy, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: ÎÅÏÄÎÏÚÎÁÞÎÙÊ ËÌÀÞ `-W %s'\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, fuzzy, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: ËÌÀÞ `-W %s' ÄÏÌÖÅÎ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ ÂÅÚ ÁÒÇÕÍÅÎÔÁ\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, fuzzy, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: ËÌÀÞ `%s' ÄÏÌÖÅÎ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ c ÁÒÇÕÍÅÎÔÏÍ\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr ""
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr ""
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "õÓÐÅÈ"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "óÏ×ÐÁÄÅÎÉÊ ÎÅÔ"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "îÅ×ÅÒÎÏÅ ÒÅÇÕÌÑÒÎÏÅ ×ÙÒÁÖÅÎÉÅ"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "îÅÄÏÐÕÓÔÉÍÙÊ ÄÌÑ ÓÏÒÔÉÒÏ×ËÉ ÓÉÍ×ÏÌ"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "îÅ×ÅÒÎÏÅ ÉÍÑ ËÌÁÓÓÁ ÓÉÍ×ÏÌÁ"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "ïÂÒÁÔÎÁÑ ËÏÓÁÑ ÞÅÒÔÁ ÓÔÏÉÔ ÐÏÓÌÅÄÎÅÊ"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "îÅ×ÅÒÎÁÑ ÓÓÙÌËÁ"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "îÅÐÁÒÎÁÑ [ ÉÌÉ [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "îÅÐÁÒÎÁÑ ( ÉÌÉ \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "îÅÐÁÒÎÁÑ \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "îÅ×ÅÒÎÏÅ ÓÏÄÅÒÖÉÍÏÅ \\{\\}"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "îÅ×ÅÒÎÙÊ ÎÉÖÎÉÊ ÐÒÅÄÅÌ"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "ïÐÅÒÁÔÉ×ÎÁÑ ÐÁÍÑÔØ ÉÓÞÅÒÐÁÎÁ"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "îÅ×ÅÒÎÏÅ ÐÒÅÄÛÅÓÔ×ÕÀÝÅÅ ÒÅÇÕÌÑÒÎÏÅ ×ÙÒÁÖÅÎÉÅ"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "ðÒÅÖÄÅ×ÒÅÍÅÎÎÙÊ ËÏÎÅà ÒÅÇÕÌÑÒÎÏÇÏ ×ÙÒÁÖÅÎÉÑ"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "òÅÇÕÌÑÒÎÏÅ ×ÙÒÁÖÅÎÉÅ ÓÌÉÛËÏÍ ×ÅÌÉËÏ"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "îÅÐÁÒÎÁÑ ) ÉÌÉ \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "òÅÇÕÌÑÒÎÏÅ ×ÙÒÁÖÅÎÉÅ ÎÅ ÂÙÌÏ ÚÁÄÁÎÏ ÒÁÎØÛÅ"
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr ""
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "æÁÊÌÙ %s É %s ÒÁÚÌÉÞÁÀÔÓÑ\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, fuzzy, c-format
msgid "Binary files %s and %s differ\n"
msgstr "æÁÊÌÙ %s É %s ÒÁÚÌÉÞÁÀÔÓÑ\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "÷ ËÏÎÃÅ ÆÁÊÌÁ ÎÅÔ ÎÏ×ÏÊ ÓÔÒÏËÉ"
msgid "David MacKenzie"
msgstr ""
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, fuzzy, c-format
msgid "Try '%s --help' for more information."
msgstr "ðÏÐÒÏÂÕÊÔÅ `%s --help' ÄÌÑ ÐÏÌÕÞÅÎÉÑ ÂÏÌÅÅ ÐÏÄÒÏÂÎÏÇÏ ÏÐÉÓÁÎÉÑ."
msgid "options -l and -s are incompatible"
msgstr "ËÌÀÞÉ -l É -s ÎÅÓÏ×ÍÅÓÔÉÍÙ"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "ÚÁÐÉÓØ ÎÅÕÓÐÅÛÎÁ"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "ÓÔÁÎÄÁÒÔÎÙÊ ×Ù×ÏÄ"
"at the beginning of each file (zero by default)."
msgstr "î1 É î2 -- ÜÔÏ ÞÉÓÌÏ ÂÁÊÔ, ËÏÔÏÒÙÅ ÓÌÅÄÕÅÔ ÐÒÏÐÕÓÔÉÔØ × ËÁÖÄÏÍ ÆÁÊÌÅ."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr "åÓÌÉ æáêì ÎÅ ÚÁÄÁÎ ÉÌÉ ÚÁÄÁÎ ËÁË `-', ÞÉÔÁÅÔ ÓÔÁÎÄÁÒÔÎÙÊ ××ÏÄ."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"÷ÙÈÏÄÎÏÊ ÓÔÁÔÕÓ ÒÁ×ÅÎ 0, ÅÓÌÉ ×ÈÏÄÎÙÅ ÆÁÊÌÙ ÉÄÅÎÔÉÞÎÙ, 1 -- ÅÓÌÉ\n"
msgid "invalid --bytes value '%s'"
msgstr "ÎÅÄÏÐÕÓÔÉÍÏÅ ÚÎÁÞÅÎÉÅ --bytes `%s'"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, fuzzy, c-format
msgid "missing operand after '%s'"
msgstr "ÐÒÏÐÕÝÅÎ ÏÐÅÒÁÎÄ ÐÏÓÌÅ `%s'"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, fuzzy, c-format
msgid "extra operand '%s'"
msgstr "ÉÚÌÉÛÎÉÊ ÏÐÅÒÁÎÄ `%s'"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s ÒÁÚÌÉÞÁÀÔÓÑ: ÂÁÊÔ %s, ÓÔÒÏËÁ %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s ÒÁÚÌÉÞÁÀÔÓÑ: ÂÁÊÔ %s, ÓÔÒÏËÁ %s ÒÁ×ÅÎ %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: ËÏÎÅÃ ÆÁÊÌÁ × %s\n"
msgid "Len Tower"
msgstr ""
-#: src/diff.c:339
+#: src/diff.c:351
#, fuzzy, c-format
msgid "invalid context length '%s'"
msgstr "ÎÅÄÏÐÕÓÔÉÍÁÑ ÄÌÉÎÁ ËÏÎÔÅËÓÔÁ `%s'"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "ÒÁÚÂÉÅÎÉÅ ÎÁ ÓÔÒÁÎÉÃÙ ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ ÎÁ ÄÁÎÎÏÊ ÍÁÛÉÎÅ"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "ÓÌÉÛËÏÍ ÍÎÏÇÏ ËÌÀÞÅÊ ÚÁÄÁÀÝÉÈ ÍÅÔËÉ ÆÁÊÌÏ×"
-#: src/diff.c:514
+#: src/diff.c:526
#, fuzzy, c-format
msgid "invalid width '%s'"
msgstr "ÎÅÄÏÐÕÓÔÉÍÁÑ ÛÉÒÉÎÁ `%s'"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "ÐÒÏÔÉ×ÏÒÅÞÉ×ÙÅ ËÌÀÞÉ ÚÁÄÁÎÉÑ ÛÉÒÉÎÙ"
-#: src/diff.c:543
+#: src/diff.c:555
#, fuzzy, c-format
msgid "invalid horizon length '%s'"
msgstr "ÎÅÄÏÐÕÓÔÉÍÁÑ ÄÌÉÎÁ ÇÏÒÉÚÏÎÔÁ `%s'"
-#: src/diff.c:598
+#: src/diff.c:611
#, fuzzy, c-format
msgid "invalid tabsize '%s'"
msgstr "ÎÅÄÏÐÕÓÔÉÍÁÑ ÛÉÒÉÎÁ ÔÁÂÕÌÑÃÉÉ `%s'"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "ÐÒÏÔÉ×ÏÒÅÞÉ×ÙÅ ËÌÀÞÉ ÚÁÄÁÎÉÑ ÛÉÒÉÎÙ ÔÁÂÕÌÑÃÉÉ"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "ÎÅÏÂÈÏÄÉÍÏ ÚÁÄÁÔØ ËÁË --from-file, ÔÁË É --to-file"
-#: src/diff.c:854
+#: src/diff.c:883
#, fuzzy
msgid " --normal output a normal diff (the default)"
msgstr "--normal ÷Ù×ÏÄÉÔØ × ÏÂÙÞÎÏÍ ÆÏÒÍÁÔÅ diff."
-#: src/diff.c:855
+#: src/diff.c:884
#, fuzzy
msgid "-q, --brief report only when files differ"
msgstr "-q --brief îÁÐÅÞÁÔÁÔØ ÔÏÌØËÏ ÒÁÚÌÉÞÁÀÔÓÑ ÌÉ ÆÁÊÌÙ."
-#: src/diff.c:856
+#: src/diff.c:885
#, fuzzy
msgid "-s, --report-identical-files report when two files are the same"
msgstr "-s --report-identical-files óÏÏÂÝÁÔØ Ï ÏÄÉÎÁËÏ×ÙÈ ÆÁÊÌÁÈ."
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
-#: src/diff.c:858
+#: src/diff.c:887
#, fuzzy
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
"-w þéóìï --width=þéóìï ÷Ù×ÏÄÉÔØ ÍÁËÓÉÍÕÍ ÚÁÄÁÎÎÏÅ þéóìï ÚÎÁËÏ× × ÓÔÒÏËÅ.\n"
" (ÐÏ ÕÍÏÌÞÁÎÉÀ 130)"
-#: src/diff.c:859
+#: src/diff.c:888
#, fuzzy
msgid "-e, --ed output an ed script"
msgstr "-e --ed ÷Ù×ÏÄÉÔØ ÓÃÅÎÁÒÉÊ ed."
-#: src/diff.c:860
+#: src/diff.c:889
#, fuzzy
msgid "-n, --rcs output an RCS format diff"
msgstr "-n --rcs ÷Ù×ÏÄÉÔØ × ÆÏÒÍÁÔÅ RCS."
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr ""
-#: src/diff.c:862
+#: src/diff.c:891
#, fuzzy
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
"-w þéóìï --width=þéóìï ÷Ù×ÏÄÉÔØ ÍÁËÓÉÍÕÍ ÚÁÄÁÎÎÏÅ þéóìï ÚÎÁËÏ× × ÓÔÒÏËÅ.\n"
" (ÐÏ ÕÍÏÌÞÁÎÉÀ 130)"
-#: src/diff.c:863
+#: src/diff.c:892
#, fuzzy
msgid ""
" --left-column output only the left column of common lines"
msgstr "-l --left-column ÷Ù×ÏÄÉÔØ ÔÏÌØËÏ ÌÅ×ÕÀ ËÏÌÏÎËÕ ÏÂÝÉÈ ÓÔÒÏË."
-#: src/diff.c:864
+#: src/diff.c:893
#, fuzzy
msgid " --suppress-common-lines do not output common lines"
msgstr "-s --suppress-common-lines îÅ ×Ù×ÏÄÉÔØ ÏÂÝÉÅ ÓÔÒÏËÉ."
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+"--from-file=æáêì1 óÒÁ×ÎÉÔØ æáêì1 ÓÏ ×ÓÅÍÉ ÏÐÅÒÁÎÄÁÍÉ.\n"
+" æáêì1 ÍÏÖÅÔ ÂÙÔØ ËÁÔÁÌÏÇÏÍ."
-#: src/diff.c:871
+#: src/diff.c:900
#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr "-t --expand-tabs òÁÓËÒÙ×ÁÔØ ÐÒÉ ×Ù×ÏÄÅ ÓÉÍ×ÏÌÙ ÔÁÂÕÌÑÃÉÉ × ÐÒÏÂÅÌÙ."
-#: src/diff.c:872
+#: src/diff.c:901
#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
"-T --initial-tab ÷ÙÒÁ×ÎÉ×ÁÔØ ÔÁÂÕÌÑÃÉÀ ÄÏÂÁ×ÌÑÑ × ÎÁÞÁÌÏ ÓÉÍ×ÏÌ ÔÁÂÕÌÑÃÉÉ."
-#: src/diff.c:873
+#: src/diff.c:902
#, fuzzy
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
"--tabsize=þéóìï ôÁÂÕÌÑÃÉÑ ÞÅÒÅÚ ÚÁÄÁÎÎÏÅ þéóìï ÚÎÁËÏ× (ÐÏ ÕÍÏÌÞÁÎÉÀ 8)."
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
-#: src/diff.c:875
+#: src/diff.c:904
#, fuzzy
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
"-l --paginate îÁÐÒÁ×ÉÔØ ×Ù×ÏÄ ÐÒÏÇÒÁÍÍÅ `pr' ÄÌÑ ÒÁÚÂÉÅÎÉÑ ÎÁ ÓÔÒÁÎÉÃÙ."
-#: src/diff.c:877
+#: src/diff.c:906
#, fuzzy
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr "-r --recursive òÅËÕÒÓÉ×ÎÏ ÓÒÁ×ÎÉ×ÁÔØ ÐÏÄËÁÔÁÌÏÇÉ."
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr ""
-#: src/diff.c:879
+#: src/diff.c:908
#, fuzzy
msgid "-N, --new-file treat absent files as empty"
msgstr "-N --new-file ÷ÏÓÐÒÉÎÉÍÁÔØ ÎÅÓÕÝÅÓÔ×ÕÀÝÉÅ ÆÁÊÌÙ ËÁË ÐÕÓÔÙÅ."
-#: src/diff.c:880
+#: src/diff.c:909
#, fuzzy
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
"--unidirectional-new-file ÷ÏÓÐÒÉÎÉÍÁÔØ ÎÅÓÕÝÅÓÔ×ÕÀÝÉÅ ÐÅÒ×ÙÅ ÆÁÊÌÙ ËÁË "
"ÐÕÓÔÙÅ."
-#: src/diff.c:881
+#: src/diff.c:910
#, fuzzy
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr "--ignore-file-name-case éÇÎÏÒÉÒÏ×ÁÔØ ÒÅÇÉÓÔÒ ÂÕË× × ÉÍÅÎÁÈ ÆÁÊÌÏ×."
-#: src/diff.c:882
+#: src/diff.c:911
#, fuzzy
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr "--no-ignore-file-name-case õÞÉÔÙ×ÁÔØ ÒÅÇÉÓÔÒ ÂÕË× × ÉÍÅÎÁÈ ÆÁÊÌÏ×."
-#: src/diff.c:883
+#: src/diff.c:912
#, fuzzy
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr ""
"-x ïâòáúåã --exclude=ïâòáúåã éÓËÌÀÞÉÔØ ÆÁÊÌÙ, ÞØÉ ÉÍÅÎÁ ÓÏ×ÐÁÄÁÀÔ Ó "
"ïâòáúãïí."
-#: src/diff.c:884
+#: src/diff.c:913
#, fuzzy
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
"ÌÉÂÏ\n"
" ÏÂÒÁÚÃÏÍ ÉÚ ÚÁÐÉÓÁÎÎÙÈ × æáêìå."
-#: src/diff.c:885
+#: src/diff.c:914
#, fuzzy
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr "-S æáêì --starting-file=æáêì ðÒÉ ÓÒÁ×ÎÅÎÉÉ ËÁÔÁÌÏÇÏ× ÎÁÞÁÔØ Ó æáêìá."
-#: src/diff.c:886
+#: src/diff.c:915
#, fuzzy
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
"--from-file=æáêì1 óÒÁ×ÎÉÔØ æáêì1 ÓÏ ×ÓÅÍÉ ÏÐÅÒÁÎÄÁÍÉ.\n"
" æáêì1 ÍÏÖÅÔ ÂÙÔØ ËÁÔÁÌÏÇÏÍ."
-#: src/diff.c:888
+#: src/diff.c:917
#, fuzzy
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
"--to-file=æáêì2 óÒÁ×ÎÉÔØ ×ÓÅ ÏÐÅÒÁÎÄÙ Ó æáêìïí2. æáêì2 ÍÏÖÅÔ ÂÙÔØ "
"ËÁÔÁÌÏÇÏÍ."
-#: src/diff.c:891
+#: src/diff.c:920
#, fuzzy
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr "-i --ignore-case éÇÎÏÒÉÒÏ×ÁÔØ ÒÅÇÉÓÔÒ ÂÕË× × ÓÏÄÅÒÖÉÍÏÍ ÆÁÊÌÏ×."
-#: src/diff.c:892
+#: src/diff.c:921
#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
"-E --ignore-tab-expansion éÇÎÏÒÉÒÏ×ÁÔØ ÉÚÍÅÎÅÎÉÑ, ×ÙÚ×ÁÎÎÙÅ ÒÁÓËÒÙÔÉÅÍ "
"ÔÁÂÕÌÑÃÉÉ."
-#: src/diff.c:893
+#: src/diff.c:922
#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr "-w --ignore-all-space éÇÎÏÒÉÒÏ×ÁÔØ ×ÓÅ ÐÒÏÂÅÌØÎÙÅ ÓÉÍ×ÏÌÙ."
-#: src/diff.c:894
+#: src/diff.c:923
#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
"-b --ignore-space-change éÇÎÏÒÉÒÏ×ÁÔØ ÉÚÍÅÎÅÎÉÑ ÞÉÓÌÁ ÐÒÏÂÅÌØÎÙÈ ÓÉÍ×ÏÌÏ×."
-#: src/diff.c:895
+#: src/diff.c:924
#, fuzzy
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w --ignore-all-space éÇÎÏÒÉÒÏ×ÁÔØ ×ÓÅ ÐÒÏÂÅÌØÎÙÅ ÓÉÍ×ÏÌÙ."
-#: src/diff.c:896
+#: src/diff.c:925
#, fuzzy
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr "-B --ignore-blank-lines éÇÎÏÒÉÒÏ×ÁÔØ ÉÚÍÅÎÅÎÉÑ ÞÉÓÌÁ ÐÕÓÔÙÈ ÓÔÒÏË."
-#: src/diff.c:897
+#: src/diff.c:926
#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
" ÐÏÌÎÏÓÔØÀ ÓÏÏÔ×ÅÔÓÔ×ÕÀÔ ÚÁÄÁÎÎÏÍÕ ÒÅÇÕÌÑÒÎÏÍÕ "
"×ÙÒÁÖÅÎÉÀ"
-#: src/diff.c:899
+#: src/diff.c:928
#, fuzzy
msgid "-a, --text treat all files as text"
msgstr "-a --text óÞÉÔÁÔØ ×ÓÅ ÆÁÊÌÙ ÔÅËÓÔÏ×ÙÍÉ."
-#: src/diff.c:900
+#: src/diff.c:929
#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr "--strip-trailing-cr õÄÁÌÉÔØ ÎÁ ×Ù×ÏÄÅ ÚÁ×ÅÒÛÁÀÝÉÊ ×ÏÚ×ÒÁÔ ËÁÒÅÔËÉ."
-#: src/diff.c:902
+#: src/diff.c:931
#, fuzzy
msgid " --binary read and write data in binary mode"
msgstr "--binary þÉÔÁÔØ É ÚÁÐÉÓÙ×ÁÔØ ÆÁÊÌÙ × Ä×ÏÉÞÎÏÊ ÆÏÒÍÅ."
-#: src/diff.c:905
+#: src/diff.c:934
#, fuzzy
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
"-D éíñ --ifdef=éíñ ÷Ù×ÏÄÉÔØ ÚÁÐÌÁÔÙ, ÉÓÐÏÌØÚÕÀÝÉÅ ËÏÎÓÔÒÕËÃÉÀ `#ifdef éíñ'."
-#: src/diff.c:906
+#: src/diff.c:935
#, fuzzy
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
"çôéð\n"
" × ÓÏÏÔ×ÅÔÓÔ×ÉÉ Ó ÆÏÒÍÁÔÏÍ çæíô."
-#: src/diff.c:907
+#: src/diff.c:936
#, fuzzy
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
"--line-format=óæíô áÎÁÌÏÇÉÞÎÏ, ÎÏ ÆÏÒÍÁÔÉÒÏ×ÁÔØ ×ÓÅ ×ÈÏÄÎÙÅ ÓÔÒÏËÉ Ó óæíô."
-#: src/diff.c:908
+#: src/diff.c:937
#, fuzzy
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
"óôéð\n"
" × ÓÏÏÔ×ÅÔÓÔ×ÉÉ Ó ÆÏÒÍÁÔÏÍ óæíô."
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
-#: src/diff.c:911
+#: src/diff.c:940
#, fuzzy
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" óôéð ÍÏÖÅÔ ÂÙÔØ `old', `new', ÉÌÉ `unchanged', çôéð -- ÔÏ ÖÅ É `changed'."
-#: src/diff.c:912
+#: src/diff.c:941
#, fuzzy
msgid ""
" GFMT (only) may contain:\n"
" E F-1\n"
" M L+1"
-#: src/diff.c:924
+#: src/diff.c:953
#, fuzzy
msgid ""
" LFMT (only) may contain:\n"
" %l ÓÏÄÅÒÖÉÍÏÅ ÓÔÒÏËÉ, ÉÓËÌÀÞÁÑ ×ÓÅ ÎÏ×ÙÅ ÓÔÒÏËÉ × ËÏÎÃÅ\n"
" %[-][ûéòéîá][.[ôïþî]]{doxX}n ÆÏÒÍÁÔ ÎÏÍÅÒÁ ×ÈÏÄÎÏÊ ÓÔÒÏËÉ × ÓÔÉÌÅ printf"
-#: src/diff.c:928
+#: src/diff.c:957
#, fuzzy
msgid ""
" Both GFMT and LFMT may contain:\n"
" %c'ó' ÏÄÉÎ ÓÉÍ×ÏÌ ó\n"
" %c'\\OOO' ÏÄÉÎ ÓÉÍ×ÏÌ Ó ×ÏÓØÍÅÒÉÞÎÙÍ ËÏÄÏÍ OOO"
-#: src/diff.c:934
+#: src/diff.c:963
#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr "-d --minimal ðÙÔÁÔØÓÑ ÎÁÊÔÉ ÎÁÉÍÅÎØÛÉÊ ÎÁÂÏÒ ÉÚÍÅÎÅÎÉÊ."
-#: src/diff.c:935
+#: src/diff.c:964
#, fuzzy
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
"--horizon-lines=þéóìï ÷Ù×ÏÄÉÔØ þéóìï ÏÂÝÉÈ ÓÔÒÏË ÄÏ É ÐÏÓÌÅ ÒÁÚÌÉÞÁÀÝÉÈÓÑ."
-#: src/diff.c:936
+#: src/diff.c:965
#, fuzzy
msgid ""
" --speed-large-files assume large files and many scattered small changes"
"-H --speed-large-files ðÒÅÄÐÏÌÁÇÁÔØ, ÞÔÏ ÆÁÊÌÙ ÂÏÌØÛÉÅ ÓÏ ÍÎÏÇÉÍÉ\n"
" ÒÁÚÂÒÏÓÁÎÎÙÍÉ ÍÅÌËÉÍÉ ÉÚÍÅÎÅÎÉÑÍÉ."
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr "--normal ÷Ù×ÏÄÉÔØ × ÏÂÙÞÎÏÍ ÆÏÒÍÁÔÅ diff."
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:972
#, fuzzy
msgid "-v, --version output version information and exit"
msgstr "-v --version ðÏËÁÚÁÔØ ÉÎÆÏÒÍÁÃÉÀ Ï ×ÅÒÓÉÉ É ×ÙÊÔÉ."
-#: src/diff.c:941
+#: src/diff.c:974
#, fuzzy
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"æáêìù ÜÔÏ `æáêì1 æáêì2', ÉÌÉ `ëáôáìïç1 ëáôáìïç2', ÉÌÉ `ëáôáìïç æáêì...',\n"
"ÉÌÉ `æáêì... ëáôáìïç'."
-#: src/diff.c:942
+#: src/diff.c:975
#, fuzzy
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr "åÓÌÉ ÚÁÄÁÎ --from-file ÉÌÉ --to-file, ÎÁ æáêìù ÎÅÔ ÏÇÒÁÎÉÞÅÎÉÊ."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
#, fuzzy
msgid "If a FILE is '-', read standard input."
msgstr "åÓÌÉ æáêì ÚÁÄÁÎ ËÁË `-', ÞÉÔÁÅÔ ÓÔÁÎÄÁÒÔÎÙÊ ××ÏÄ."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "éÓÐÏÌØÚÏ×ÁÎÉÅ: %s [ëìàþ]... æáêìù\n"
-#: src/diff.c:954
+#: src/diff.c:987
#, fuzzy
msgid "Compare FILES line by line."
msgstr "ðÏÓÔÒÏÞÎÏ ÓÒÁ×ÎÉ×ÁÅÔ Ä×Á ÆÁÊÌÁ."
-#: src/diff.c:988
+#: src/diff.c:1021
#, fuzzy, c-format
msgid "conflicting %s option value '%s'"
msgstr "ÐÒÏÔÉ×ÏÒÅÞÉ×ÏÅ ÚÎÁÞÅÎÉÅ %s ÄÌÑ ËÌÀÞÁ `%s'"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "ÐÒÏÔÉ×ÏÒÅÞÉ×ÙÅ ËÌÀÞÉ ÚÁÄÁÎÉÑ ÓÔÉÌÑ ×Ù×ÏÄÁ"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "ÎÅÄÏÐÕÓÔÉÍÁÑ ÛÉÒÉÎÁ `%s'"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "ôÏÌØËÏ × %s: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
#, fuzzy
msgid "cannot compare '-' to a directory"
msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÓÒÁ×ÎÉÔØ `-' Ó ËÁÔÁÌÏÇÏÍ"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "-D option not supported with directories"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "ïÂÝÉÅ ÐÏÄËÁÔÁÌÏÇÉ: %s É %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "æÁÊÌ %s ÜÔÏ %s, ÔÏÇÄÁ ËÁË ÆÁÊÌ %s -- %s\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, fuzzy, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "æÁÊÌÙ %s É %s ÒÁÚÌÉÞÁÀÔÓÑ\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "æÁÊÌÙ %s É %s ÉÄÅÎÔÉÞÎÙ\n"
msgid "'-' specified for more than one input file"
msgstr "`-' ÚÁÄÁÎ ÄÌÑ ÂÏÌÅÅ ÏÄÎÏÇÏ ×ÈÏÄÎÏÇÏ ÆÁÊÌÁ"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "ÞÔÅÎÉÅ ÎÅÕÓÐÅÛÎÏ"
msgid "invalid diff format; invalid change separator"
msgstr "ÎÅ×ÅÒÎÙÊ ÆÏÒÍÁÔ ÚÁÐÌÁÔÙ; ÎÅ×ÅÒÎÙÊ ÒÁÚÄÅÌÉÔÅÌØ ÉÚÍÅÎÅÎÉÑ"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "ÎÅ×ÅÒÎÙÊ ÆÏÒÍÁÔ ÚÁÐÌÁÔÙ; ÎÅÐÏÌÎÁÑ ÐÏÓÌÅÄÎÑÑ ÓÔÒÏËÁ"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, fuzzy, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "ÎÅ ÕÄÁÌÏÓØ ÚÁÐÕÓÔÉÔØ ×ÓÐÏÍÏÇÁÔÅÌØÎÕÀ ÐÒÏÇÒÁÍÍÕ `%s'"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "ÎÅ×ÅÒÎÙÊ ÆÏÒÍÁÔ ÚÁÐÌÁÔÙ; ÎÅÐÒÁ×ÌØÎÙÅ ÐÅÒ×ÙÅ ÓÉÍ×ÏÌÙ ÓÔÒÏËÉ"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "×ÎÕÔÒÅÎÎÑÑ ÏÛÉÂËÁ: ÎÁ ×ÙÈÏÄ ÐÅÒÅÄÁÎ ÎÅ×ÅÒÎÙÊ ÔÉÐ ÚÁÐÌÁÔÙ"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "×ÈÏÄÎÏÊ ÆÁÊÌ ÕÍÅÎØÛÉÌÓÑ"
-#: src/dir.c:158
+#: src/dir.c:156
#, fuzzy, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÓÒÁ×ÎÉÔØ ÉÍÅÎÁ ÆÁÊÌÏ× `%s' É `%s'"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr ""
"v:\t÷ËÌÀÞÁÔØ ÏÂÝÉÅ ÓÔÒÏËÉ, ×ÙÄÁ×ÁÑ ÓÏÏÂÝÅÎÉÅ.\n"
"q:\t÷ÙÊÔÉ.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: ÎÅÉÚ×ÅÓÔÎÙÊ ËÌÀÞ `--%s'\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "%s: illegal option -- %c\n"
#~ msgstr "%s: ÎÅÄÏÐÕÓÔÉÍÙÊ ËÌÀÞ -- %c\n"
# Serbian translation of `diffutils'.
# Copyright (C) 2004 Free Software Foundation, Inc.
-# This file is distributed under the same license as the `diffutils' package.
+# This file is distributed under the same license as the diffutils package.
# Aleksandar Jelenak <jelenak@netlinkplus.net>, 2004.
+# Мирослав Николић <miroslavnikolic@rocketmail.com>, 2013.
msgid ""
msgstr ""
-"Project-Id-Version: diffutils 2.8.7\n"
+"Project-Id-Version: diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
-"PO-Revision-Date: 2004-04-15 21:46-0400\n"
-"Last-Translator: Aleksandar Jelenak <jelenak@netlinkplus.net>\n"
-"Language-Team: Serbian <gnu@prevod.org>\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
+"PO-Revision-Date: 2013-10-07 11:40+0200\n"
+"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
+"Language-Team: Serbian <(nothing)>\n"
"Language: sr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "неисправан %s%s аргумент „%s“"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "неисправан %s%s аргумент „%s“"
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgid "stack overflow"
msgstr "стек препуњен"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Непозната системска грешка"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "обична празна датотека"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "обична датотека"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "директоријум"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "датотека блоковског уређаја"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "датотека знаковног уређаја"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "симболичка веза"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "сокет"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "ред порука"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "семафор"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "заједнички меморијски објекат"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "типски меморијски објекат"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "датотека блоковског уређаја"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "датотека знаковног уређаја"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "пупи"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "датотека блоковског уређаја"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "датотека знаковног уређаја"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "чудна датотека"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "датотека блоковског уређаја"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "прикључница"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "чудна датотека"
-#: lib/getopt.c:547 lib/getopt.c:576
-#, fuzzy, c-format
+#: lib/getopt.c:575 lib/getopt.c:604
+#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
-msgstr "%s: опÑ\86иÑ\98а â\80\9e%sâ\80\9c Ñ\98е двоÑ\81миÑ\81лена\n"
+msgstr "%s: опÑ\86иÑ\98а â\80\9e%sâ\80\9c Ñ\98е неÑ\98аÑ\81на; могÑ\83Ñ\9bноÑ\81Ñ\82и:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: опција „-W %s“ је нејасна\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
+#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: опција „--%s“ не дозвољава аргумент\n"
-#: lib/getopt.c:637 lib/getopt.c:642
-#, fuzzy, c-format
+#: lib/getopt.c:667 lib/getopt.c:672
+#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: опција „%c%s“ не дозвољава аргумент\n"
-#: lib/getopt.c:685 lib/getopt.c:704
-#, fuzzy, c-format
+#: lib/getopt.c:715 lib/getopt.c:734
+#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: опција „%s“ захтева аргумент\n"
-#: lib/getopt.c:742 lib/getopt.c:745
-#, fuzzy, c-format
+#: lib/getopt.c:772 lib/getopt.c:775
+#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: непозната опција „--%s“\n"
-#: lib/getopt.c:753 lib/getopt.c:756
-#, fuzzy, c-format
+#: lib/getopt.c:783 lib/getopt.c:786
+#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: непозната опција „%c%s“\n"
-#: lib/getopt.c:805 lib/getopt.c:808
-#, fuzzy, c-format
+#: lib/getopt.c:835 lib/getopt.c:838
+#, c-format
msgid "%s: invalid option -- '%c'\n"
-msgstr "%s: неважеÑ\9bа опÑ\86иÑ\98а -- %c\n"
+msgstr "%s: неиÑ\81пÑ\80авна опÑ\86иÑ\98а -- â\80\9e%câ\80\9c\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
-#, fuzzy, c-format
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
+#, c-format
msgid "%s: option requires an argument -- '%c'\n"
-msgstr "%s: опција захтева аргумент -- %c\n"
+msgstr "%s: опција захтева аргумент -- „%c“\n"
-#: lib/getopt.c:934 lib/getopt.c:950
-#, fuzzy, c-format
+#: lib/getopt.c:964 lib/getopt.c:980
+#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
-msgstr "%s: опÑ\86иÑ\98а â\80\9e-W %sâ\80\9c Ñ\98е двоÑ\81миÑ\81лена\n"
+msgstr "%s: опÑ\86иÑ\98а â\80\9e-W %sâ\80\9c Ñ\98е неÑ\98аÑ\81на\n"
-#: lib/getopt.c:974 lib/getopt.c:992
-#, fuzzy, c-format
+#: lib/getopt.c:1004 lib/getopt.c:1022
+#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: опција „-W %s“ не дозвољава аргумент\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
-#, fuzzy, c-format
+#: lib/getopt.c:1043 lib/getopt.c:1061
+#, c-format
msgid "%s: option '-W %s' requires an argument\n"
-msgstr "%s: опција „%s“ захтева аргумент\n"
+msgstr "%s: опција „-W %s“ захтева аргумент\n"
#. TRANSLATORS:
#. Get translations for open and closing quotation marks.
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
-msgstr ""
+msgstr "„"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
-msgstr ""
+msgstr "“"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Успешно"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
-msgstr "Ð\91ез поклапања"
+msgstr "Ð\9dема поклапања"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Неисправан регуларни израз"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
-msgstr "Ð\9dеиÑ\81пÑ\80аван колаÑ\86иони знак"
+msgstr "Ð\9dеиÑ\81пÑ\80аван знак Ñ\81лагаÑ\9aа"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
-msgstr "Ð\9dепÑ\80авилно име клаÑ\81е знакова"
+msgstr "Ð\9dепÑ\80авилан назив Ñ\80азÑ\80еда знака"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Пратећа обрнута коса црта"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
-msgstr "Ð\9dеиÑ\81пÑ\80авна повÑ\80аÑ\82на Ñ\80еÑ\84еÑ\80енÑ\86а"
+msgstr "Ð\9dеиÑ\81пÑ\80авна повÑ\80аÑ\82на Ñ\83пÑ\83Ñ\82а"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "Неупарено [ или [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Неупарено ( или \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Неупарено \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Неисправан садржај у \\{\\}"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Неисправан крај опсега"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
-msgstr "Меморија исцрпљена"
+msgstr "Меморија је исцрпљена"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Неисправан претходећи регуларни израз"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Преран завршетак регуларног израза"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
-msgstr "РегÑ\83лаÑ\80ни изÑ\80аз исувише велики"
+msgstr "РегÑ\83лаÑ\80ан изÑ\80аз Ñ\98е исувише велики"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "Неупарено ) или \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
-msgstr "Ð\91ез пÑ\80оÑ\88лог регуларног израза"
+msgstr "Ð\9dема пÑ\80еÑ\82Ñ\85одног регуларног израза"
#: lib/xalloc-die.c:34
msgid "memory exhausted"
-msgstr "меморија исцрпљена"
+msgstr "меморија је исцрпљена"
#: lib/xfreopen.c:35
msgid "stdin"
-msgstr ""
+msgstr "стдулаз"
#: lib/xfreopen.c:36
msgid "stdout"
-msgstr ""
+msgstr "стдизлаз"
#: lib/xfreopen.c:37
msgid "stderr"
-msgstr ""
+msgstr "стдгрешка"
#: lib/xfreopen.c:38
-#, fuzzy
msgid "unknown stream"
-msgstr "Ð\9dепознаÑ\82а Ñ\81иÑ\81Ñ\82емÑ\81ка гÑ\80еÑ\88ка"
+msgstr "непознаÑ\82 Ñ\82ок"
#: lib/xfreopen.c:39
#, c-format
msgid "failed to reopen %s with mode %s"
-msgstr ""
+msgstr "нисам успео да поново отворим „%s“ са режимом %s"
#: lib/xstrtol-error.c:63
-#, fuzzy, c-format
+#, c-format
msgid "invalid %s%s argument '%s'"
-msgstr "неиÑ\81пÑ\80авна --bytes вÑ\80едноÑ\81т „%s“"
+msgstr "неиÑ\81пÑ\80аван %s%s аÑ\80гÑ\83мент „%s“"
#: lib/xstrtol-error.c:68
#, c-format
msgid "invalid suffix in %s%s argument '%s'"
-msgstr ""
+msgstr "неисправан суфикс у %s%s аргументу „%s“"
#: lib/xstrtol-error.c:72
#, c-format
msgid "%s%s argument '%s' too large"
-msgstr ""
+msgstr "%s%s аргумент „%s“ је превелик"
#: lib/version-etc.c:74
#, c-format
msgid "Packaged by %s (%s)\n"
-msgstr ""
+msgstr "Запаковао је %s (%s)\n"
#: lib/version-etc.c:77
#, c-format
msgid "Packaged by %s\n"
-msgstr ""
+msgstr "Запаковао је %s\n"
#. TRANSLATORS: Translate "(C)" to the copyright symbol
#. (C-in-a-circle), if this symbol is available in the user's
"There is NO WARRANTY, to the extent permitted by law.\n"
"\n"
msgstr ""
+"\n"
+"Дозвола ОЈЛв3+: Гнуова ОЈЛ издање 3 или касније <http://gnu.org/licenses/gpl."
+"html>.\n"
+"Ово је слободан софтвер: слободни сте да га мењате и расподељујете.\n"
+"Нема НИКАКВЕ ГАРАНЦИЈЕ, у обиму допуштеном законом.\n"
+"\n"
#. TRANSLATORS: %s denotes an author name.
#: lib/version-etc.c:102
"\n"
"Report bugs to: %s\n"
msgstr ""
+"\n"
+"Грешке пријавите на: %s\n"
#: lib/version-etc.c:247
#, c-format
msgid "Report %s bugs to: %s\n"
-msgstr ""
+msgstr "Грешке програма „%s“ пријавите на: %s\n"
#: lib/version-etc.c:251
#, c-format
msgid "%s home page: <%s>\n"
-msgstr ""
+msgstr "%s матична страница: <%s>\n"
#: lib/version-etc.c:253
#, c-format
msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
-msgstr ""
+msgstr "%s матична страница: <http://www.gnu.org/software/%s/>\n"
#: lib/version-etc.c:256
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
-msgstr ""
+msgstr "Општа помоћ користећи ГНУ софтвер: <http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
-msgstr "Датотеке %s и %s различите\n"
+msgstr "Датотеке „%s“ и „%s“ су различите\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Бинарне датотеке %s и %s различите\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Без новог реда на крају датотеке"
#. This is a proper name. See the gettext manual, section Names.
#: src/cmp.c:44
msgid "David MacKenzie"
-msgstr ""
+msgstr "Дејвид Мек Кензи"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
-#, fuzzy, c-format
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
+#, c-format
msgid "Try '%s --help' for more information."
-msgstr "Покушајте `%s --help' за подробније објашњење."
+msgstr "Покушајте „%s --help“ за више информација."
#: src/cmp.c:137
-#, fuzzy, c-format
+#, c-format
msgid "invalid --ignore-initial value '%s'"
-msgstr "неисправна --ignore-initial вредност „%s“"
+msgstr "неисправна „--ignore-initial“ вредност „%s“"
#: src/cmp.c:147
#, c-format
msgid "options -l and -s are incompatible"
msgstr "опције -l и -s не иду заједно"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
-msgstr "запиÑ\81иваÑ\9aе неÑ\83Ñ\81пеÑ\88ано"
+msgstr "запиÑ\81иваÑ\9aе ниÑ\98е Ñ\83Ñ\81пело"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "стандардни излаз"
#: src/cmp.c:161
-#, fuzzy
msgid "-b, --print-bytes print differing bytes"
-msgstr "-b --print-bytes Испиши бајтове који се разликују"
+msgstr ""
+"-b --print-bytes исписује бајтове који се разликују."
#: src/cmp.c:162
-#, fuzzy
msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs"
-msgstr "-i БРОЈ --ignore-initial=БРОЈ Изостави првих БРОЈ бајтова улаза."
+msgstr ""
+"-i БРОЈ --ignore-initial=БРОЈ изоставља првих БРОЈ бајтова улаза."
#: src/cmp.c:163
-#, fuzzy
msgid ""
"-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n"
" first SKIP2 bytes of FILE2"
msgstr ""
-" Ð\98зоÑ\81Ñ\82ави пÑ\80виÑ\85 Ð\91Ð Ð\9eÐ\881 баÑ\98Ñ\82ова Ð\94Ð\90ТÐ\9eТÐ\95Ð\9aÐ\901 и пÑ\80виÑ\85 Ð\91Ð Ð\9eÐ\882 баÑ\98Ñ\82ова Ð\94Ð\90ТÐ\9eТÐ\95Ð\9aÐ\902."
+" изоÑ\81Ñ\82авÑ\99а пÑ\80виÑ\85 Ð\91Ð Ð\9eÐ\881 баÑ\98Ñ\82ова Ð\94Ð\90ТÐ\9eТÐ\95Ð\9aÐ\951 и пÑ\80виÑ\85 Ð\91Ð Ð\9eÐ\882 баÑ\98Ñ\82ова Ð\94Ð\90ТÐ\9eТÐ\95Ð\9aÐ\952."
#: src/cmp.c:165
-#, fuzzy
msgid ""
"-l, --verbose output byte numbers and differing byte values"
-msgstr "-l --verbose Испиши редни број и вредност бајтова који се разликују."
+msgstr ""
+"-l --verbose исписује редни број и вредност бајтова "
+"који се разликују."
#: src/cmp.c:166
-#, fuzzy
msgid "-n, --bytes=LIMIT compare at most LIMIT bytes"
-msgstr "-n БРОЈ --bytes=БРОЈ Пореди до највише БРОЈ бајтова."
+msgstr ""
+"-n ОГРАНИЧЕЊЕ --bytes=ОГРАНИЧЕЊЕ пореди до највише ОГРАНИЧЕЊЕ бајтова."
#: src/cmp.c:167
msgid "-s, --quiet, --silent suppress all normal output"
-msgstr ""
+msgstr "-s, --quiet, --silent потискује све обичне излазе"
#: src/cmp.c:168
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help приказује ову помоћ и излази"
#: src/cmp.c:169
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Извести о верзији."
+msgstr "-v --version исписује податке о издању."
#: src/cmp.c:178
#, c-format
#: src/cmp.c:180
msgid "Compare two files byte by byte."
-msgstr "Поређење две датотеке бајт по бајт."
+msgstr "Поредите две датотеке бајт по бајт."
#: src/cmp.c:182
-#, fuzzy
msgid ""
"The optional SKIP1 and SKIP2 specify the number of bytes to skip\n"
"at the beginning of each file (zero by default)."
-msgstr "БРОЈ1 и БРОЈ2 су бројеви бајтова за изостављање у свакој датотеци."
+msgstr ""
+"Изборни БРОЈ1 и БРОЈ2 су бројеви бајтова за изостављање на почетку\n"
+"сваке датотеке (подразумева се нула)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
+"Обавезни аргументи за дуге опције су обавезни и за кратке опције такође.\n"
#: src/cmp.c:191
msgid ""
"итд. за T, P, E, Z, Y."
#: src/cmp.c:194
-#, fuzzy
msgid "If a FILE is '-' or missing, read standard input."
-msgstr "Читати стандардни улаз ако ДАТОТЕКА недостаје или је „-“."
+msgstr "Чита стандардни улаз ако ДАТОТЕКА недостаје или је „-“."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr "Излазно стање је 0 ако су улази исти, 1 за различите, 2 за грешку."
#: src/cmp.c:240
-#, fuzzy, c-format
+#, c-format
msgid "invalid --bytes value '%s'"
msgstr "неисправна --bytes вредност „%s“"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
-#, fuzzy, c-format
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
+#, c-format
msgid "missing operand after '%s'"
msgstr "недостаје оператор после „%s“"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
-#, fuzzy, c-format
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
+#, c-format
msgid "extra operand '%s'"
msgstr "вишак оператор „%s“"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
-msgstr "%s %s Ñ\80азлиÑ\87иÑ\82и: бајт %s, ред %s\n"
+msgstr "%s %s Ñ\81е Ñ\80азликÑ\83Ñ\98Ñ\83: бајт %s, ред %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
-msgstr "%s %s Ñ\80азлиÑ\87иÑ\82и: бајт %s, ред %s је %3o %s %3o %s\n"
+msgstr "%s %s Ñ\81е Ñ\80азликÑ\83Ñ\98Ñ\83: бајт %s, ред %s је %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
-msgstr "cmp: EOF на %s\n"
+msgstr "cmp: крај датотеке на %s\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:49
msgid "Paul Eggert"
-msgstr ""
+msgstr "Пол Егерт"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:50
msgid "Mike Haertel"
-msgstr ""
+msgstr "Мајк Хартел"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:51
msgid "David Hayes"
-msgstr ""
+msgstr "Дејвид Хејес"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:52
msgid "Richard Stallman"
-msgstr ""
+msgstr "Ричард Столман"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:53
msgid "Len Tower"
-msgstr ""
+msgstr "Лен Тауер"
-#: src/diff.c:339
-#, fuzzy, c-format
+#: src/diff.c:351
+#, c-format
msgid "invalid context length '%s'"
msgstr "неисправна дужина склопа „%s“"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "прелом страна није подржан на овом рачунару"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
-msgstr "иÑ\81Ñ\83виÑ\88е опÑ\86иÑ\98а за ознакÑ\83 даÑ\82оÑ\82ека"
+msgstr "иÑ\81Ñ\83виÑ\88е опÑ\86иÑ\98а за ознакÑ\83 даÑ\82оÑ\82еке"
-#: src/diff.c:514
-#, fuzzy, c-format
+#: src/diff.c:526
+#, c-format
msgid "invalid width '%s'"
msgstr "неисправна дужина „%s“"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "сукобљене опције ширине"
-#: src/diff.c:543
-#, fuzzy, c-format
+#: src/diff.c:555
+#, c-format
msgid "invalid horizon length '%s'"
msgstr "неисправна дужина видокруга „%s“"
-#: src/diff.c:598
-#, fuzzy, c-format
+#: src/diff.c:611
+#, c-format
msgid "invalid tabsize '%s'"
msgstr "неисправна величина табулатора „%s“"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "сукобљене опције величине табулатора"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
-msgstr "„--from-file“ и „--to-file“ обоје наведени"
+msgstr "„--from-file“ и „--to-file“ су наведени оба"
-#: src/diff.c:854
-#, fuzzy
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
-msgstr "--normal Излаз је обичан „diff“."
+msgstr " --normal исписује обичне разлике (основно)"
-#: src/diff.c:855
-#, fuzzy
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
-msgstr "-q --brief Пријави само да ли се датотеке разликују."
+msgstr "-q --brief исписује само када се датотеке разликују"
-#: src/diff.c:856
-#, fuzzy
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
-msgstr "-s --report-identical-files Ð\9fÑ\80иÑ\98ави када Ñ\81Ñ\83 две даÑ\82оÑ\82еке иÑ\81Ñ\82е."
+msgstr "-s --report-identical-files извеÑ\88Ñ\82ава када Ñ\81Ñ\83 две даÑ\82оÑ\82еке иÑ\81Ñ\82е"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
+"-c, -C БРОЈ, --context[=БРОЈ] исписује БРОЈ (почетно 3) редова умноженог "
+"склопа"
-#: src/diff.c:858
-#, fuzzy
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
-"-w БРЈ --width=БРЈ Ширина излаза је највише БРЈ (почетно 130) колона."
+"-w БРОЈ --width=БРОЈ исписује БРОЈ (почетно 3) редова обједињеног "
+"склопа"
-#: src/diff.c:859
-#, fuzzy
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
-msgstr "-e --ed Излаз је „ed“ спис."
+msgstr "-e --ed исписује ед спис"
-#: src/diff.c:860
-#, fuzzy
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
-msgstr "-n --rcs Излаз је RCS облик „diff-а“."
+msgstr "-n --rcs исписује РЦС запис разлика"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
-msgstr ""
+msgstr "-y, --side-by-side исписује у две колоне"
-#: src/diff.c:862
-#, fuzzy
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
-"-w БРЈ --width=БРЈ Ширина излаза је највише БРЈ (почетно 130) колона."
+"-w БРЈ --width=БРЈ исписује на највише БРЈ (почетно 130) колона"
-#: src/diff.c:863
-#, fuzzy
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
-msgstr "-l --left-column Испиши само леву колону заједничких редова."
+msgstr ""
+"-l --left-column исписује само леву колону заједничких редова"
-#: src/diff.c:864
-#, fuzzy
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines Не приказуј заједничке редове."
+msgstr "-s --suppress-common-lines не приказује заједничке редове"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
+"-p, --show-c-function приказује у којој Ц функцији је свака промена"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
+"-F, --show-function-line=РИ приказује најскорији ред који одговара РИ"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+" --label ОЗНАКА користи ОЗНАКУ уместо назива датотеке\n"
+" (може да се понавља)"
-#: src/diff.c:871
-#, fuzzy
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
-msgstr "-t --expand-tabs Развиј табулаторе у размаке за излаз."
+msgstr "-t --expand-tabs развија табулаторе у размаке за излаз"
-#: src/diff.c:872
-#, fuzzy
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
-msgstr "-T --initial-tab Поравнај табулаторе додајући један табулатор."
+msgstr ""
+"-T --initial-tab поравнава табулаторе додајући један табулатор."
-#: src/diff.c:873
-#, fuzzy
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
-msgstr "--tabsize=БРЈ Величина табулатора је БРЈ (почетно 8) колона."
+msgstr ""
+"--tabsize=БРЈ величина табулатора је БРЈ (почетно 8) колона"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
+"--suppress-blank-empty потискује размак или табулатор пре празних "
+"редова излаза"
-#: src/diff.c:875
-#, fuzzy
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
-msgstr "-l --paginate Пропусти излаз кроз „pr“ за прелом."
+msgstr "-l --paginate пропушта излаз кроз „pr“ за прелом"
-#: src/diff.c:877
-#, fuzzy
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
-msgstr "-r --recursive Рекурзивно упореди све пронађене поддиректоријуме."
+msgstr ""
+"-r --recursive дубински упоређује све пронађене "
+"поддиректоријуме"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
-msgstr ""
+msgstr " --no-dereference не прати симболичке везе"
-#: src/diff.c:879
-#, fuzzy
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
-msgstr "-N --new-file Недостајуће датотеке се узимају за празне."
+msgstr "-N --new-file сматра празним недостајуће датотеке"
-#: src/diff.c:880
-#, fuzzy
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
-"--unidirectional-new-file Прве недостајуће датотеке се узимају за празне."
+" --unidirectional-new-file сматра празним прве недостајуће датотеке"
-#: src/diff.c:881
-#, fuzzy
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
-"--ignore-file-name-case Занемари словну величину поређујући имена датотека."
+" --ignore-file-name-case занемарује словну величину поређујући назива "
+"датотека"
-#: src/diff.c:882
-#, fuzzy
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
-"--no-ignore-file-name-case Урачунај словну величину поређујући имена "
-"датотека."
+" --no-ignore-file-name-case урачунава словну величину поређујући називе "
+"датотека"
-#: src/diff.c:883
-#, fuzzy
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
-msgstr "-x ОБР --exclude=ОБР Изузми датотеке које поклапа ОБР."
+msgstr "-x, --exclude=ОБР искључује датотеке које поклапају ОБР"
-#: src/diff.c:884
-#, fuzzy
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
-"-X ТЕКА --exclude-from=ТЕКА Изузми датотеке које поклапа било који образац "
-"у ТЕКА."
+"-X, --exclude-from=ТЕКА искључује датотеке које поклапа било који "
+"образац у ТЕКА"
-#: src/diff.c:885
-#, fuzzy
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
-"-S ТЕКА --starting-file=ТЕКА Почни од ТЕКА при поређењу директоријума."
+"-S, --starting-file=ТЕКА почиње од ТЕКА при поређењу директоријума"
-#: src/diff.c:886
-#, fuzzy
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
msgstr ""
-"--from-file=ТЕКА1 Упореди ТЕКА1 са свим оперантима. ТЕКА1 може бити "
-"диÑ\80екÑ\82оÑ\80иÑ\98Ñ\83м."
+" --from-file=ТЕКА1 упоређује ТЕКУ1 са свим оперантима. ТЕКА1 "
+"може биÑ\82и диÑ\80екÑ\82оÑ\80иÑ\98Ñ\83м"
-#: src/diff.c:888
-#, fuzzy
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
msgstr ""
-"--to-file=ТЕКА2 Упореди све операнте са ТЕКА2. ТЕКА2 може бири директоријум."
+" --to-file=ТЕКА2 упоређује све операнте са ТЕКОМ2. ТЕКА2 може "
+"бити директоријум"
-#: src/diff.c:891
-#, fuzzy
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
-msgstr "-i --ignore-case Занемари словну величину у склопу датотека."
+msgstr ""
+"-i --ignore-case занемарује словну величину у склопу датотека"
-#: src/diff.c:892
-#, fuzzy
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
-"-E --ignore-tab-expansion Занемари промене услед развијања табулатора."
+"-E --ignore-tab-expansion занемарује промене услед развијања табулатора"
-#: src/diff.c:893
-#, fuzzy
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Занемари сву белину."
+msgstr "-Z, --ignore-trailing-space занемарује размак на крају реда"
-#: src/diff.c:894
-#, fuzzy
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b --ignore-space-change Занемари промене због количине белине."
+msgstr ""
+"-b --ignore-space-change занемарује промене због количине празног "
+"простора"
-#: src/diff.c:895
-#, fuzzy
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
-msgstr "-w --ignore-all-space Занемари сву белину."
+msgstr "-w --ignore-all-space занемарује све празне просторе"
-#: src/diff.c:896
-#, fuzzy
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
-msgstr "-B --ignore-blank-lines Занемари промене услед празних редова."
+msgstr ""
+"-B --ignore-blank-lines занемарује промене услед празних редова"
-#: src/diff.c:897
-#, fuzzy
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
-"-I РИ --ignore-matching-lines=РИ Занемари промене чији редови поклапају РИ."
+"-I, --ignore-matching-lines=РИ занемарује промене чији редови поклапају РИ"
-#: src/diff.c:899
-#, fuzzy
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
-msgstr "-a --text Прихвати све датотеке као текст."
+msgstr "-a --text сматра све датотеке као текст"
-#: src/diff.c:900
-#, fuzzy
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Оголи пратеће <CR> на улазу."
+msgstr " --strip-trailing-cr огољава пратеће <CR> на улазу"
-#: src/diff.c:902
-#, fuzzy
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
-msgstr "--binary Читај и пиши податке у бинарном режиму."
+msgstr " --binary чита и пише податке у бинарном режиму"
-#: src/diff.c:905
-#, fuzzy
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
-msgstr "-D ИМЕ --ifdef=ИМЕ Испиши „#ifdef ИМЕ“ разлике спојене датотеке."
+msgstr ""
+"-D, --ifdef=НАЗИВ исписује стопљену датотеку да прикаже "
+"„#ifdef НАЗИВ“ разлике"
-#: src/diff.c:906
-#, fuzzy
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
-msgstr ""
-"--GTYPE-group-format=ГОБЛ Слично, али обликуј GTYPE улазне групе са ГОБЛ."
+msgstr " --GTYPE-group-format=ГОБЛ обликује GTYPE улазне групе са ГОБЛ"
-#: src/diff.c:907
-#, fuzzy
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
-msgstr "--line-format=РОБЛ Слично, али обликуј све улазне редове са РОБЛ."
+msgstr " --line-format=РОБЛ обликује све улазне редове са РОБЛ"
-#: src/diff.c:908
-#, fuzzy
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
-msgstr ""
-"--LTYPE-line-format=РОБЛ Слично, али обликуј LTYPE улазне редове са РОБЛ."
+msgstr " --LTYPE-line-format=РОБЛ обликује LTYPE улазне редове са РОБЛ"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
+" Ове опције записа обезбеђује фино подешено управљање преко излаза\n"
+" различника, генерализујући -D/--ifdef."
-#: src/diff.c:911
-#, fuzzy
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
-" LTYPE је `old', `new', или `unchanged'. GTYPE је LTYPE или `changed'."
+" LTYPE је „old“, „new“, или „unchanged“. GTYPE је LTYPE или „changed“."
-#: src/diff.c:912
-#, fuzzy
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" M L+1\n"
" %(A=B?T:E) if A equals B then T else E"
msgstr ""
-" ГОБЛ може садржати:\n"
-" %< Ñ\80едове из Ð\94Ð\90ТÐ\9eТÐ\95Ð\9aÐ\901\n"
-" %> Ñ\80едове из Ð\94Ð\90ТÐ\9eТÐ\95Ð\9aÐ\902\n"
-" %= Ñ\80едове заÑ\98едниÑ\87ке Ñ\83 Ð\94Ð\90ТÐ\9eТÐ\95Ð\9aÐ\901 и Ð\94Ð\90ТÐ\9eТÐ\95Ð\9aÐ\902\n"
+" ГОБЛ (само) може садржати:\n"
+" %< Ñ\80едове из Ð\94Ð\90ТÐ\9eТÐ\95Ð\9aÐ\951\n"
+" %> Ñ\80едове из Ð\94Ð\90ТÐ\9eТÐ\95Ð\9aÐ\952\n"
+" %= Ñ\80едове заÑ\98едниÑ\87ке Ñ\83 Ð\94Ð\90ТÐ\9eТÐ\95ЦÐ\981 и Ð\94Ð\90ТÐ\9eТÐ\95ЦÐ\982\n"
" %[-][ШИРН][.[ТАЧН]]{doxX}СЛОВО printf-стил за СЛОВО\n"
" СЛОВО за нову групу, мала слова за стару групу:\n"
" F број првог реда\n"
-" L бÑ\80оÑ\98 задњег реда\n"
+" L бÑ\80оÑ\98 поÑ\81ледњег реда\n"
" N број редова = L-F+1\n"
" E F-1\n"
-" M L+1"
+" M L+1\n"
+" %(A=B?T:E) ако је А исто као Б онда Т супротно Е"
-#: src/diff.c:924
-#, fuzzy
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %l contents of line, excluding any trailing newline\n"
" %[-][WIDTH][.[PREC]]{doxX}n printf-style spec for input line number"
msgstr ""
-" РОБЛ може садржати:\n"
+" РОБЛ (само) може садржати:\n"
" %L садржај реда\n"
" %l садржај реда, изузев пратећих знакова за нови ред\n"
" %[-][ШИРН][.[ТАЧН]]{doxX}n printf-стил за улазни број реда"
-#: src/diff.c:928
-#, fuzzy
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
msgstr ""
" Било ГОБЛ или РОБЛ могу садржати:\n"
" %% %\n"
-" %c'З' само један знак „З“\n"
-" %c'\\OOO' знак са окталним кодом OOO"
+" %c'З' само један знак „З“\n"
+" %c'\\OOO' знак са окталним кодом OOO\n"
+" З знак З (други знаци представљају сами себе)"
-#: src/diff.c:934
-#, fuzzy
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr "-d --minimal Потруди се да нађеш мањи скуп промена."
+msgstr "-d --minimal труди се да нађе мањи скуп промена"
-#: src/diff.c:935
-#, fuzzy
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
-msgstr "--horizon-lines=БРЈ Чувај БРЈ редова заједничког префикса и суфикса."
+msgstr ""
+" --horizon-lines=БРЈ чува БРЈ редова заједничког префикса и суфикса"
-#: src/diff.c:936
-#, fuzzy
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
-"-H --speed-large-files За велике датотеке за много раштрканих малих измена."
+" --speed-large-files за велике датотеке са много раштрканих малих измена"
-#: src/diff.c:938
-msgid " --help display this help and exit"
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:967
#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr " --normal исписује обичне разлике (основно)"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
+msgid " --help display this help and exit"
+msgstr " --help приказује ову помоћ и излази"
+
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
-msgstr "-v --version Извести о верзији."
+msgstr "-v --version исписује податке о издању"
-#: src/diff.c:941
+#: src/diff.c:974
#, fuzzy
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"ДАТОТЕКЕ су „ТЕКА1 ТЕКА2“ или „ДИР1 ДИР2“ или „ДИР ТЕКА...“ или „ТЕКА... "
"ДИР“."
-#: src/diff.c:942
-#, fuzzy
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
-"Нема ограничења за ДАТОТЕКЕ ако је „--from-file“ или „--to-file“ задато."
+"Нема ограничења за ДАТОТЕКЕ ако је задато „--from-file“ или „--to-file“."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
-#, fuzzy
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
-msgstr "Ако је ДАТОТЕКА „-“, читај стандардни улаз."
+msgstr "Ако је ДАТОТЕКА „-“, чита стандардни улаз."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Употреба: %s [ОПЦИЈА]... ДАТОТЕКЕ\n"
-#: src/diff.c:954
-#, fuzzy
+#: src/diff.c:987
msgid "Compare FILES line by line."
-msgstr "Поређење датотека ред по ред."
+msgstr "Поредите ДАТОТЕКЕ ред по ред."
-#: src/diff.c:988
-#, fuzzy, c-format
+#: src/diff.c:1021
+#, c-format
msgid "conflicting %s option value '%s'"
-msgstr "Ñ\81Ñ\83коб због вÑ\80едноÑ\81Ñ\82и â\80\9e%sâ\80\9c опÑ\86иÑ\98е â\80\9e%sâ\80\9c"
+msgstr "сукоб вредности „%s“ опције „%s“"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "сукобљене опције излазног стила"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "неисправна дужина „%s“"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Само у %s: %s\n"
-#: src/diff.c:1192
-#, fuzzy
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
-msgstr "не може поредити „-“ са директоријумом"
+msgstr "не могÑ\83 поредити „-“ са директоријумом"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "опција „-D“ није подржана за директоријуме"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Заједнички поддиректоријуми: %s и %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "Датотека „%s“ је „%s“ док је датотека „%s“ „%s“\n"
-#: src/diff.c:1314
-#, fuzzy, c-format
+#: src/diff.c:1362
+#, c-format
msgid "Symbolic links %s and %s differ\n"
-msgstr "Ð\94аÑ\82оÑ\82еке %s и %s различите\n"
+msgstr "СимболиÑ\87ке везе â\80\9e%sâ\80\9c и â\80\9e%sâ\80\9c Ñ\81Ñ\83 различите\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
-msgstr "Ð\94аÑ\82оÑ\82еке â\80\9e%sâ\80\9c и â\80\9e%sâ\80\9c Ñ\81е подÑ\83даÑ\80аÑ\98Ñ\83\n"
+msgstr "Ð\94аÑ\82оÑ\82еке â\80\9e%sâ\80\9c и â\80\9e%sâ\80\9c Ñ\81е иÑ\81Ñ\82овеÑ\82не\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff3.c:41
msgid "Randy Smith"
-msgstr ""
+msgstr "Ренди Смит"
#: src/diff3.c:313
#, c-format
msgstr "несагласне опције"
#: src/diff3.c:353
-#, fuzzy
msgid "'-' specified for more than one input file"
-msgstr "„-“ наведено за више од једне датотеке"
+msgstr "„-“ је наведено за више од једне улазне датотеке"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
-msgstr "неуспело читање"
+msgstr "читање није успело"
#: src/diff3.c:428
-#, fuzzy
msgid "-A, --show-all output all changes, bracketing conflicts"
-msgstr "-A --show-all Испиши све промене, означи заградама сукобе."
+msgstr ""
+"-A --show-all исписује све промене, означавајући сукобе "
+"заградама"
#: src/diff3.c:430
-#, fuzzy
msgid ""
"-e, --ed output ed script incorporating changes\n"
" from OLDFILE to YOURFILE into MYFILE"
msgstr ""
-"-e --ed Испиши неспојене промене између СТАРАТЕКА и ТВОЈАТЕКА у МОЈАТЕКА."
+"-e --ed исписује неспојене промене између СТАРАТЕКА и "
+"ТВОЈАТЕКА у МОЈАТЕКА"
#: src/diff3.c:432
-#, fuzzy
msgid "-E, --show-overlap like -e, but bracket conflicts"
-msgstr "-E --show-overlap Испиши неспојене промене, означи заградама сукобе."
+msgstr "-E --show-overlap као -e, означавајући сукобе заградама"
#: src/diff3.c:433
-#, fuzzy
msgid ""
"-3, --easy-only like -e, but incorporate only nonoverlapping "
"changes"
-msgstr "-3 --easy-only Испиши неспојене непреклопљене промене."
+msgstr ""
+"-3 --easy-only као -e, али обједињује непреклопљене промене"
#: src/diff3.c:434
-#, fuzzy
msgid ""
"-x, --overlap-only like -e, but incorporate only overlapping changes"
-msgstr "-x --overlap-only Испиши преклопљене промене."
+msgstr "-x, --overlap-only као -e, али обједињује преклопљене промене"
#: src/diff3.c:435
msgid "-X like -x, but bracket conflicts"
-msgstr ""
+msgstr "-X као -x, означавајући сукобе заградама"
#: src/diff3.c:436
-#, fuzzy
msgid "-i append 'w' and 'q' commands to ed scripts"
-msgstr "-i Придодај „w“ и „q“ наредбе ed списима."
+msgstr "-i придодаје „w“ и „q“ наредбе ед списима"
#: src/diff3.c:438
msgid ""
"-m, --merge output actual merged file, according to\n"
" -A if no other options are given"
msgstr ""
+"-m, --merge исписује тренутну стопљену датотеку, у складу\n"
+" са -A ако нису дате друге опције"
#: src/diff3.c:441
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Прихвати све датотеке као текст."
+msgstr "-a --text сматра све датотеке као текст"
#: src/diff3.c:442
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Оголи пратеће <CR> на улазу."
+msgstr " --strip-trailing-cr огољава пратеће <CR> на улазу"
#: src/diff3.c:443
-#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
-msgstr "-T --initial-tab Поравнај табулаторе додајући један табулатор."
+msgstr ""
+"-T --initial-tab поравнава табулаторе додајући један табулатор"
#: src/diff3.c:444
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
-msgstr "--diff-program=ПРОГРАМ Користи ПРОГРАМ за поређење датотека."
+msgstr " --diff-program=ПРОГРАМ користи ПРОГРАМ за поређење датотека"
#: src/diff3.c:445
msgid ""
"-L, --label=LABEL use LABEL instead of file name\n"
" (can be repeated up to three times)"
msgstr ""
+"-L, --label=ОЗНАКА користи ОЗНАКУ уместо назива датотеке\n"
+" (може да се понови до три пута)"
#: src/diff3.c:448
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help приказује ову помоћ и излази"
#: src/diff3.c:449
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Извести о верзији."
+msgstr "-v, --version исписује податке о издању и излази"
#: src/diff3.c:458
#, c-format
#: src/diff3.c:460
msgid "Compare three files line by line."
-msgstr "Поређење три датотеке ред по ред."
+msgstr "Поредите три датотеке ред по ред."
#: src/diff3.c:470
msgid ""
"and output the actual merged file. For unusual input, this is more\n"
"robust than using ed.\n"
msgstr ""
+"\n"
+"Основни запис излаза је некако људима разумљиво представљање промена.\n"
+"\n"
+"Опције „-e, -E, -x, -X“ (и одговарајуће дуге) доводе до тога да ед спис\n"
+"буде излаз уместо подразумеваног.\n"
+"\n"
+"На крају, опција „-m“ (--merge) доводи до тога да „diff3“ изнутра стопи\n"
+"и да испише тренутно стопљену датотеку. За необичан улаз, ово је много\n"
+"рогпадније него употреба еда.\n"
#: src/diff3.c:482
msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble."
#: src/diff3.c:675
msgid "internal error: screwup in format of diff blocks"
-msgstr "интерна грешка: зез у формату „diff“ блокова"
+msgstr "унутрашња грешка: зез у запису блокова разлика"
#: src/diff3.c:968
#, c-format
msgid "%s: diff failed: "
-msgstr "%s: diff неуспешан: "
+msgstr "%s: разлике нису успеле: "
#: src/diff3.c:990
msgid "internal error: invalid diff type in process_diff"
-msgstr "интерна грешка: неисправна „diff“ врста у „process_diff“"
+msgstr "унутрашња грешка: неисправна врста разлика у „process_diff“"
#: src/diff3.c:1015
msgid "invalid diff format; invalid change separator"
-msgstr "неисправан diff облик; неважећи раздвојник измена"
+msgstr "неисправан запис разлика; неисправан раздвојник измена"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
-msgstr "неисправан diff облик; непотпун задњи ред"
+msgstr "неисправан облик разлика; непотпун задњи ред"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
-#, fuzzy, c-format
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
+#, c-format
msgid "subsidiary program '%s' could not be invoked"
-msgstr "помоÑ\9bни пÑ\80огÑ\80ам â\80\9e%sâ\80\9c ниÑ\98е могао бити покренут"
+msgstr "помоÑ\9bни пÑ\80огÑ\80ам â\80\9e%sâ\80\9c не може бити покренут"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
-msgstr "неисправан diff облик; нетачни водећи знакови реда"
+msgstr "неисправан запис разлика; нетачни водећи знакови реда"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
-msgstr "Ñ\83нÑ\83Ñ\82Ñ\80аÑ\88Ñ\9aа гÑ\80еÑ\88ка: неиÑ\81пÑ\80аван diff Ñ\82ип пÑ\80оÑ\81леÑ\92ен излазу"
+msgstr "Ñ\83нÑ\83Ñ\82Ñ\80аÑ\88Ñ\9aа гÑ\80еÑ\88ка: неиÑ\81пÑ\80авна вÑ\80Ñ\81Ñ\82а Ñ\80азлика пÑ\80оÑ\81леÑ\92ена излазу"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "улазна датотека се скупила"
-#: src/dir.c:158
-#, fuzzy, c-format
+#: src/dir.c:156
+#, c-format
msgid "cannot compare file names '%s' and '%s'"
-msgstr "не може поÑ\80едиÑ\82и имена датотека „%s“ и „%s“"
+msgstr "не могÑ\83 поÑ\80едиÑ\82и називе датотека „%s“ и „%s“"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
-msgstr ""
+msgstr "%s: дубинска петља кроз директоријуме"
#. This is a proper name. See the gettext manual, section Names.
#: src/sdiff.c:42
msgid "Thomas Lord"
-msgstr ""
+msgstr "Томас Лорд"
#: src/sdiff.c:173
-#, fuzzy
msgid ""
"-o, --output=FILE operate interactively, sending output to FILE"
-msgstr "-o ТЕКА --output=ТЕКА Интерактивни рад, излаз се шаље у ТЕКА."
+msgstr "-o, --output=ТЕКА ради међудејствено, шаљући излаз у ТЕКА"
#: src/sdiff.c:175
-#, fuzzy
msgid ""
"-i, --ignore-case consider upper- and lower-case to be the same"
-msgstr "-i --ignore-case Сматрај велика и мала слова истим."
+msgstr "-i --ignore-case сматра истим велика и мала слова"
#: src/sdiff.c:176
-#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
-"-E --ignore-tab-expansion Занемари промене услед развијања табулатора."
+"-E --ignore-tab-expansion занемарује промене услед развијања табулатора"
#: src/sdiff.c:177
-#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space Занемари сву белину."
+msgstr "-Z, --ignore-trailing-space занемарује размак на крају реда"
#: src/sdiff.c:178
-#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b --ignore-space-change Занемари промене због количине белине."
+msgstr ""
+"-b --ignore-space-change занемарује промене због количине празног "
+"простора"
#: src/sdiff.c:179
-#, fuzzy
msgid "-W, --ignore-all-space ignore all white space"
-msgstr "-W --ignore-all-space Занемари све размаке."
+msgstr "-W --ignore-all-space занемарује све размаке"
#: src/sdiff.c:180
-#, fuzzy
msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank"
-msgstr "-B --ignore-blank-lines Занемари промене услед празних редова."
+msgstr "-B --ignore-blank-lines занемарује промене услед празних редова"
#: src/sdiff.c:181
-#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE"
msgstr ""
-"-I РИ --ignore-matching-lines=РИ Занемари промене чији редови поклапају РИ."
+"-I, --ignore-matching-lines=РИ занемарује промене чији редови поклапају РИ"
#: src/sdiff.c:182
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr Оголи пратеће <CR> на улазу."
+msgstr " --strip-trailing-cr огољава пратеће <CR> на улазу"
#: src/sdiff.c:183
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text Прихвати све датотеке као текст."
+msgstr "-a --text сматра све датотеке као текст"
#: src/sdiff.c:185
-#, fuzzy
msgid ""
"-w, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
-"-w БРЈ --width=БРЈ Ширина излаза је највише БРЈ (почетно 130) колона."
+"-w, --width=БРОЈ исписује на највише БРОЈ (почетно 130) колона"
#: src/sdiff.c:186
-#, fuzzy
msgid ""
"-l, --left-column output only the left column of common lines"
-msgstr "-l --left-column Испиши само леву колону заједничких редова."
+msgstr ""
+"-l --left-column исписује само леву колону заједничких редова"
#: src/sdiff.c:187
-#, fuzzy
msgid "-s, --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines Ð\9dе пÑ\80иказÑ\83Ñ\98 заÑ\98едниÑ\87ке Ñ\80едове."
+msgstr "-s --suppress-common-lines не пÑ\80иказÑ\83Ñ\98е заÑ\98едниÑ\87ке Ñ\80едове"
#: src/sdiff.c:189
-#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
-msgstr "-t --expand-tabs Развиј табулаторе у размаке за излаз."
+msgstr "-t --expand-tabs развија табулаторе у размаке за излаз"
#: src/sdiff.c:190
-#, fuzzy
msgid ""
" --tabsize=NUM tab stops at every NUM (default 8) print columns"
-msgstr "--tabsize=БРЈ Величина табулатора је БРЈ (почетно 8) колона."
+msgstr ""
+" --tabsize=БРОЈ величина табулатора је БРОЈ (почетно 8) колона"
#: src/sdiff.c:192
-#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr "-d --minimal Потруди се да нађеш мањи скуп промена."
+msgstr "-d --minimal труди се да нађе мањи скуп промена"
#: src/sdiff.c:193
-#, fuzzy
msgid ""
"-H, --speed-large-files assume large files, many scattered small changes"
msgstr ""
-"-H --speed-large-files За велике датотеке за много раштрканих малих измена."
+"-H --speed-large-files за велике датотеке са много раштрканих малих "
+"измена"
#: src/sdiff.c:194
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
-msgstr "--diff-program=ПРОГРАМ Користи ПРОГРАМ за поређење датотека."
+msgstr " --diff-program=ПРОГРАМ користи ПРОГРАМ за поређење датотека"
#: src/sdiff.c:196
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help приказује ову помоћ и излази"
#: src/sdiff.c:197
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version Извести о верзији."
+msgstr "-v --version исписује податке о издању"
#: src/sdiff.c:206
#, c-format
msgid "Usage: %s [OPTION]... FILE1 FILE2\n"
-msgstr "Употреба: %s [ОПЦИЈА]... ДАТОТЕКА1 ДАТОТЕКА22\n"
+msgstr "Употреба: %s [ОПЦИЈА]... ДАТОТЕКА1 ДАТОТЕКА2\n"
#: src/sdiff.c:208
-#, fuzzy
msgid "Side-by-side merge of differences between FILE1 and FILE2."
-msgstr "УпоÑ\80едно Ñ\81Ñ\82апаÑ\9aе Ñ\80азлика даÑ\82оÑ\82ека"
+msgstr "УпоÑ\80едно Ñ\81Ñ\82апаÑ\9aе Ñ\80азлика измеÑ\92Ñ\83 Ð\94Ð\90ТÐ\9eТÐ\95Ð\9aÐ\951 и Ð\94Ð\90ТÐ\9eТÐ\95Ð\9aÐ\952."
#: src/sdiff.c:329
msgid "cannot interactively merge standard input"
-msgstr "не може интерактивно уклопити стандардни улаз"
+msgstr "не могÑ\83 интерактивно уклопити стандардни улаз"
#: src/sdiff.c:595
msgid "both files to be compared are directories"
msgstr "обе датотеке за поређење су директоријуми"
#: src/sdiff.c:818
-#, fuzzy
msgid ""
"ed:\tEdit then use both versions, each decorated with a header.\n"
"eb:\tEdit then use both versions.\n"
"v:\tVerbosely include common lines.\n"
"q:\tQuit.\n"
msgstr ""
-"ed:\tУреди па користи обе верзије, свака украшена заглављем.\n"
-"eb:\tУреди па користи обе верзије.\n"
-"el:\tУреди па користи верзију лево.\n"
-"er:\tУреди па користи верзију десно.\n"
-"e:\tУређуј нову верзију.\n"
-"l:\tКористи верзију лево.\n"
-"r:\tКористи верзију десно.\n"
-"s:\tУметни заједничке редове тихо.\n"
-"v:\tУметни заједничке редове бучно.\n"
-"q:\tЗаврши.\n"
-
-#~ msgid "%s: illegal option -- %c\n"
-#~ msgstr "%s: неправилна опција -- %c\n"
-
-#~ msgid ""
-#~ "This is free software; see the source for copying conditions. There is "
-#~ "NO\n"
-#~ "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR "
-#~ "PURPOSE.\n"
-#~ msgstr ""
-#~ "Ово је слободан софтвер; видети изворни кôд за услове умножавања. Без "
-#~ "ИКАКВЕ\n"
-#~ "гаранције; чак ни за ТРЖИШНОСТ или ПРИКЛАДНОСТ ОДРЕЂЕНОЈ СВРСИ.\n"
-
-#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
-#~ msgstr "-i БРОЈ1:БРОЈ2 --ignore-initial=БРОЈ1:БРОЈ2"
-
-#~ msgid "-s --quiet --silent Output nothing; yield exit status only."
-#~ msgstr "-s --quiet --silent Без исписа; пријави само излазно стање."
-
-#~ msgid "--help Output this help."
-#~ msgstr "--help Испиши ово објашњење."
-
-#~ msgid "Report bugs to <bug-gnu-utils@gnu.org>."
-#~ msgstr ""
-#~ "Пријава грешака на адресу <bug-gnu-utils@gnu.org>.\n"
-#~ "Поруке у вези превода слати на <gnu@prevod.org>."
-
-#~ msgid "`-%ld' option is obsolete; use `-%c %ld'"
-#~ msgstr "опција „-%ld“ је застарела; користити „-%c %ld“"
-
-#~ msgid "`-%ld' option is obsolete; omit it"
-#~ msgstr "опција „-%ld“ је застарела; изоставите је"
-
-#~ msgid ""
-#~ "-c -C NUM --context[=NUM] Output NUM (default 3) lines of copied "
-#~ "context.\n"
-#~ "-u -U NUM --unified[=NUM] Output NUM (default 3) lines of unified "
-#~ "context.\n"
-#~ " --label LABEL Use LABEL instead of file name.\n"
-#~ " -p --show-c-function Show which C function each change is in.\n"
-#~ " -F RE --show-function-line=RE Show the most recent line matching RE."
-#~ msgstr ""
-#~ "-c -C БРЈ --context[=БРЈ] Испиши БРЈ (почетно 3) редова копираног "
-#~ "склопа.\n"
-#~ "-u -U БРЈ --unified[=БРЈ] Испиши БРЈ (почетно 3) редова обједињеног "
-#~ "склопа.\n"
-#~ " --label ОЗНАКА Користи ОЗНАКА уместо имена датотеке.\n"
-#~ " -p --show-c-function Прикажи Це функцију у којој је промена.\n"
-#~ " -F РИ --show-function-line=РИ Прикажи најскорији ред који РИ поклапа."
-
-#~ msgid ""
-#~ "-y --side-by-side Output in two columns.\n"
-#~ " -W NUM --width=NUM Output at most NUM (default 130) print columns.\n"
-#~ " --left-column Output only the left column of common lines.\n"
-#~ " --suppress-common-lines Do not output common lines."
-#~ msgstr ""
-#~ "-y --side-by-side Испис у две колоне.\n"
-#~ " -W БРЈ --width=БРЈ Испис највише БРЈ (почетно 130) знакова.\n"
-#~ " --left-column Испис само леве колоне код заједничких редова.\n"
-#~ " --suppress-common-lines Не исписуј заједничке редове."
-
-#~ msgid ""
-#~ "--speed-large-files Assume large files and many scattered small changes."
-#~ msgstr ""
-#~ "--speed-large-files За велике датотеке са много раштрканих малих промена."
-
-#~ msgid "-X Output overlapping changes, bracketing them."
-#~ msgstr "-X Испиши и означи заградама преклопљене промене."
-
-#~ msgid "-m --merge Output merged file instead of ed script (default -A)."
-#~ msgstr "-m --merge Испиши спојену датотеку уместо ed списа (почетно -A)."
-
-#~ msgid "-L LABEL --label=LABEL Use LABEL instead of file name."
-#~ msgstr "-L ОЗНКА --label=ОЗНКА Користи ОЗНКА уместо имена датотеке."
-
-#~ msgid "subsidiary program `%s' not found"
-#~ msgstr "помоћни програм „%s“ није нађен"
-
-#~ msgid "subsidiary program `%s' failed"
-#~ msgstr "помоћни програм „%s“ неуспешан"
-
-#~ msgid "subsidiary program `%s' failed (exit status %d)"
-#~ msgstr "помоћни програм „%s“ неуспешан (излазно стање %d)"
-
-#~ msgid ""
-#~ "This program comes with NO WARRANTY, to the extent permitted by law.\n"
-#~ "You may redistribute copies of this program\n"
-#~ "under the terms of the GNU General Public License.\n"
-#~ "For more information about these matters, see the files named COPYING."
-#~ msgstr ""
-#~ "Овај програм долази БЕЗ ИКАКВЕ ГАРАНЦИЈЕ, у обиму дозвољеном законом.\n"
-#~ "Можете расподељивати копије овог програма под условима ГНУ Опште јавне "
-#~ "лиценце.\n"
-#~ "За подробније објашњење ових ствари погледајте датотеку под називом "
-#~ "„COPYING“."
-
-#~ msgid "Written by Torbjorn Granlund and David MacKenzie."
-#~ msgstr ""
-#~ "Написали Торбјорн Гранлунд (Torbjörn Granlund) и Дејвид Мекензи (David "
-#~ "MacKenzie)"
-
-#~ msgid ""
-#~ "Written by Paul Eggert, Mike Haertel, David Hayes,\n"
-#~ "Richard Stallman, and Len Tower."
-#~ msgstr ""
-#~ "Написали Пол Егерт (Paul Eggert), Мајк Хертел (Mike Haertel), Дејвид Хејз "
-#~ "(David Hayes), Ричард Сталман (Richard Stallman) и Лен Тауер (Len Tower)"
-
-#~ msgid "subsidiary program `%s' not executable"
-#~ msgstr "помоћни програм „%s“ није извршан"
+"ed: Уређује па користи оба издања, свако украшено заглављем.\n"
+"eb:\t Уређије па користи оба издања.\n"
+"el или e1: Уређује па користи издање лево.\n"
+"er или e2: Уређује па користи издање десно.\n"
+"e: Уређује ново издање.\n"
+"l: Користи издање лево.\n"
+"r: Користи издање десно.\n"
+"s: Умеће заједничке редове тихо.\n"
+"v: Умеће заједничке редове бучно.\n"
+"q: Завршава.\n"
+
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: непозната опција „--%s“\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
msgstr ""
"Project-Id-Version: diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2012-10-31 21:15+0100\n"
"Last-Translator: Göran Uddeborg <goeran@uddeborg.se>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "ogiltigt argument till %s%s ”%s”"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "ogiltigt argument till %s%s ”%s”"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "programfel"
msgid "stack overflow"
msgstr "stackspill"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Okänt systemfel"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "en tom normal fil"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "en normal fil"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "en katalog"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "en blockspecialfil"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "en teckenspecialfil"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "en fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "en symbolisk länk"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "ett uttag (socket)"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "en meddelandekö"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "en semafor"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "ett objekt av delat minne"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "ett objekt av typat minne"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "en blockspecialfil"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "en teckenspecialfil"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "en fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "en blockspecialfil"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "en teckenspecialfil"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "en konstig fil"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "en blockspecialfil"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "ett uttag (socket)"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "en konstig fil"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: flaggan \"%s\" är tvetydig; möjligheter:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: flaggan \"-W %s\" är tvetydig\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: flaggan \"--%s\" tar inget argument\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: flaggan \"%c%s\" tar inget argument\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: flaggan \"%s\" behöver ett argument\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: okänd flagga \"--%s\"\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: okänd flagga \"%c%s\"\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: ogiltig flagga -- \"%c\"\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: flaggan behöver ett argument -- \"%c\"\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: flaggan \"-W %s\" är tvetydig\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: flaggan \"-W %s\" tar inget argument\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: flaggan \"-W %s\" behöver ett argument\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "”"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr "”"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Lyckades"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Ingen match"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Ogiltigt reguljäruttryck"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Ogiltigt sorteringstecken"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Ogiltigt namn på teckenklass"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Avslutande omvänt snedstreck"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Ogiltig bakåtreferens"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "Oparad [ eller [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Oparad ( eller \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Oparad \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Ogiltigt innehåll i \\{\\}"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Ogiltigt intervallslut"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Minnet slut"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Föregående reguljäruttryck ogiltigt"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Förtida slut på reguljäruttryck"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "För stort reguljäruttryck"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "Oparad ) eller \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Inget föregående reguljäruttryck"
msgstr ""
"Allmän hjälp med att använda GNU-program: <http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Filerna %s och %s skiljer\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "De binära filerna %s och %s skiljer\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Ingen nyrad vid filslut"
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, c-format
msgid "Try '%s --help' for more information."
msgstr "Försök med ”%s --help” för mer information."
msgid "options -l and -s are incompatible"
msgstr "flaggorna -l och -s är motstridiga"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "skrivning misslyckades"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "standard ut"
"De valfria HOPP1 och HOPP2 anger antalet antalet byte att hoppa över\n"
"i början varje fil (noll som standard)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr "Om FIL är ”-” eller utelämnats, läs standard in."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr "Slutsstatus är 0 om indata är lika, 1 om olika, 2 vid problem."
msgid "invalid --bytes value '%s'"
msgstr "ogiltigt --bytes-värde ”%s”"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, c-format
msgid "missing operand after '%s'"
msgstr "saknad operand efter ”%s”"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, c-format
msgid "extra operand '%s'"
msgstr "extra operand ”%s”"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s skiljer: byte %s, rad %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s skiljer: byte %s, rad %s är %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: EOF i %s\n"
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
+#: src/diff.c:351
#, c-format
msgid "invalid context length '%s'"
msgstr "ogiltig omgivningslängd ”%s”"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "sidvisning stödjs ej på denna värd"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "för många etikettflaggor"
-#: src/diff.c:514
+#: src/diff.c:526
#, c-format
msgid "invalid width '%s'"
msgstr "ogiltig bredd ”%s”"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "konflikt mellan breddflaggor"
-#: src/diff.c:543
+#: src/diff.c:555
#, c-format
msgid "invalid horizon length '%s'"
msgstr "ogiltig horisontlängd ”%s”"
-#: src/diff.c:598
+#: src/diff.c:611
#, c-format
msgid "invalid tabsize '%s'"
msgstr "ogiltigt tabulatorsteg ”%s”"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "konflikt mellan tabulatorflaggor"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "både --from-file och --to-file angavs"
-#: src/diff.c:854
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
msgstr " --normal skriv ut en normal diff (standard)"
-#: src/diff.c:855
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
msgstr "-q, --brief rapportera endast när filer skiljer sig"
-#: src/diff.c:856
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
msgstr "-s --report-identical-files rapportera om två filer är lika"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
"-c, -C ANT, --context[=ANT] skriv ANT (3 som standard) rader kopia av "
"sammanhang"
-#: src/diff.c:858
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"-u, -U ANT, --unified[=ANT] skriv ut ANT (3 som standard) rader med\n"
" sammanslagen omgivning"
-#: src/diff.c:859
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
msgstr "-e, --ed skriv ut ett ed-skript"
-#: src/diff.c:860
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
msgstr "-n, --rcs skriv ut skillnader i RCS-format"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr "-y, --side-by-side skriv ut i två kolumner"
-#: src/diff.c:862
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"-W, --width=ANT skriv ut högst ANT (130 som standard) kolumner"
-#: src/diff.c:863
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
" --left-column skriv ut endast vänstra kolumnen av gemensamma "
"rader"
-#: src/diff.c:864
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
msgstr " --suppress-common-lines skriv inte ut gemensamma rader"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr "-p, --show-c-function visa vilken C-funktion varje rad finns i"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr "-F, --show-function-line=RU visa dn senaste raden som matchar RU"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
" --label ETIKETT använd ETIKETT istället för filnamn\n"
" (kan upprepas)"
-#: src/diff.c:871
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr ""
"-t, --expand-tabs expandera tabulatorer till blanksteg i utdata"
-#: src/diff.c:872
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
"-T, --initial-tab justera tabulatorer genom att skjuta in en"
-#: src/diff.c:873
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
" --tabsize=N tabulatorstopp var N:e (8 som standard) kolumn"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
"tomma\n"
" utrader"
-#: src/diff.c:875
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr "-l, --paginate skicka utdata till ”pr” för paginering"
-#: src/diff.c:877
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
"-r, --recursive jämför underkataloger som hittas rekursivt"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr " --no-dereference följ inte symboliska länkar"
-#: src/diff.c:879
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
msgstr "-N, --new-file behandla saknade filer som tomma"
-#: src/diff.c:880
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr " --unidirectional-new-file behandla saknade förstafiler som tomma"
-#: src/diff.c:881
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
" --ignore-file-name-case bortse från skiftläge när filnamn jämförs"
-#: src/diff.c:882
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
" --no-ignore-file-name-case ta hänsyn till skiftläge när filnamn jämförs"
-#: src/diff.c:883
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr "-x, --exclude=MNS ta inte med filer som matchar MNS"
-#: src/diff.c:884
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
"-X, --exclude-from=FIL uteslut filer som matchar något mönster i FIL"
-#: src/diff.c:885
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr "-S, --starting-file=FIL börja med FIL när kataloger jämförs"
-#: src/diff.c:886
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
" --from-file=FIL1 jämför FIL1 med alla operander;\n"
" FIL1 kan vara en katalog"
-#: src/diff.c:888
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
" --to-file=FIL2 jämför alla operander med FIL2;\n"
" FIL2 kan vara en katalog"
-#: src/diff.c:891
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
"-i, --ignore-case bortse från skillnader i skiftläge i "
"filinnehåll"
-#: src/diff.c:892
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
"-E, --ignore-tab-expansion bortse från ändringar på grund av tab-"
"expansion"
-#: src/diff.c:893
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr ""
"-Z, --ignore-trailing-space ignorera alla blanktecken i slutet av raden"
-#: src/diff.c:894
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr "-b, --ignore-space-change bortse från ändringar i antalet blanka"
-#: src/diff.c:895
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w, --ignore-all-space bortse från alla blanktecken"
-#: src/diff.c:896
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr ""
"-B, --ignore-blank-lines bortse från ändringar där raderna är helt "
"blanka"
-#: src/diff.c:897
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I, --ignore-matching-lines=RU bortse från ändringar där alla rader matchar "
"RU"
-#: src/diff.c:899
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
msgstr "-a, --text behandla alla filer som text"
-#: src/diff.c:900
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
" --strip-trailing-cr tag bort avslutande vagnreturer i indata"
-#: src/diff.c:902
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr " --binary läs och skriv data binärt"
-#: src/diff.c:905
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
"-D, --ifdef=NAMN skriv sammanslagen fil med skillnader inom\n"
" ”#ifdef NAMN”"
-#: src/diff.c:906
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr " --GTYP-group-format=GFMT formatera GTYP-ingrupper med GFMT"
-#: src/diff.c:907
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr " --line-format=RFMT formatera alla inrader med RFMT"
-#: src/diff.c:908
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr " --RTYP-line-format=RFMT formatera RTYP-inrader med RFMT"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
" Dessa formatflagger gör det möjligt att finjustera utskriften från\n"
" diff, generaliserande -D/--ifdef."
-#: src/diff.c:911
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" LTYP är ”old”, ”new” eller ”unchanged”. GTYP är LTYP eller ”changed”."
-#: src/diff.c:912
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" M L+1\n"
" %(A=B?T:E) om A är lika med B då T annars E"
-#: src/diff.c:924
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %l radinnehåll exklusive avslutande nyrad\n"
" %[-][BREDD][.[PREC]]{doxX}n printf-stil spec. för inradnummer"
-#: src/diff.c:928
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO' tecknet med oktalkod OOO\n"
" T tecknet T (övriga tecken representerar sig själva)"
-#: src/diff.c:934
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr ""
"-d, --minimal arbeta hårt för att hitta en mindre mängd av "
"ändringar"
-#: src/diff.c:935
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
" --horizon-lines=ANT spara ANT rader av gemensamt prefix och suffix"
-#: src/diff.c:936
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr " --speed-large-files antag stora filer och små spridda ändringar"
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr " --normal skriv ut en normal diff (standard)"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr " --help visa denna hjälp och avsluta"
-#: src/diff.c:939
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
msgstr "-v, --version visa versionsinformation och avsluta"
-#: src/diff.c:941
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+#: src/diff.c:974
+#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"FILER är ”FIL1 FIL2” eller ”KAT1 KAT2” eller \"KAT FIL…” eller ”FIL… KAT”."
-#: src/diff.c:942
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
"Om --from-file eller --to-file är angivet finns det inga begränsningar\n"
"på FILER."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
msgstr "Om en FIL är ”-”, läs standard in."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Användning: %s [FLAGGA]... FILER\n"
-#: src/diff.c:954
+#: src/diff.c:987
msgid "Compare FILES line by line."
msgstr "Jämför FILER rad för rad."
-#: src/diff.c:988
+#: src/diff.c:1021
#, c-format
msgid "conflicting %s option value '%s'"
msgstr "motstridigt %s-flaggsvärde ”%s”"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "motstridig utmatningsstilsflagga"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "ogiltig bredd ”%s”"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Endast i %s: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
msgstr "kan inte jämföra ”-” med en katalog"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "-D flaggan stödjs ej för kataloger"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Lika underkataloger: %s och %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "Filen %s är %s medan filen %s är %s\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "De symboliska länkarna %s och %s skiljer\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Filerna %s och %s är lika\n"
msgid "'-' specified for more than one input file"
msgstr "”-” angivet för mer än en infil"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "läsning misslyckades"
msgid "invalid diff format; invalid change separator"
msgstr "ogiltigt diff-format; ogiltig ändringsseparator"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "ogiltigt diff-format; ofullständig sista rad"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "underprogram ”%s” kunde inte startas"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "ogiltigt diff-format; felaktiga starttecken på rad"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "internt fel: ogiltig diff-typ utskickad"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "infilen krympte"
-#: src/dir.c:158
+#: src/dir.c:156
#, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "kan inte jämföra filnamnen ”%s” och ”%s”"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: rekursiv katalogslinga"
"s:\tInkludera tyst gemensamma rader.\n"
"v:\tInkludera och tillkännage gemensamma rader.\n"
"q:\tAvsluta.\n"
+
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: okänd flagga \"--%s\"\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
msgstr ""
"Project-Id-Version: diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2013-03-09 15:49+0100\n"
"Last-Translator: Volkan Gezer <vlkngzr@gmail.com>\n"
"Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
"X-Generator: Lokalize 1.5\n"
"Plural-Forms: nplurals=1; plural=0;\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "Geçersiz %s%s argümanı '%s'"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "Geçersiz %s%s argümanı '%s'"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "yazılım hatası"
msgid "stack overflow"
msgstr "yığıt taşması"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Bilinmeyen sistem hatası"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "normal boş dosya"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "normal dosya"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "dizin"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "blok özel dosyası"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "karakter özel dosyası"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "sembolik bağ"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "soket"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "ileti kuyruğu"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semafor"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "ortak bellek nesnesi"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "türlenmiş bellek nesnesi"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "blok özel dosyası"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "karakter özel dosyası"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "blok özel dosyası"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "karakter özel dosyası"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "dosya garip"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "blok özel dosyası"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "soket"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "dosya garip"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: `%s' seçeneği belirsiz; kullanılabilecekler:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: `-W %s' seçeneği belirsiz\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, 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"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: seçenek `%c%s' argümansız kullanılır\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: `%s' seçeneği bir argümanla kullanılır\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: `--%s' seçeneği bilinmiyor\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: `%c%s' seçeneği bilinmiyor\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: geçersiz seçenek -- %c\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: seçenek bir argümanla kullanılır -- %c\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: `-W %s' seçeneği belirsiz\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, 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"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: `%s' seçeneği bir argümanla kullanılır\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "`"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr "'"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Başarılı"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Eşleme yok"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Düzenli ifade geçersiz"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Harmanlama karakteri geçersiz"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Karakter sınıf ismi geçersiz"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "İzleyen ters kesme"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Geriye başvuru geçersiz"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "[ ya da [^ eşleşmiyor"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "( ya da \\( eşleşmiyor"
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "\\{ eşleşmiyor"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "\\{\\} içeriği geçersiz"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Kapsam sonu geçersiz"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Bellek tükendi"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Önceki düzenli ifade geçersiz"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Düzenli ifadenin sonu eksik kalmış"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Düzenli ifade çok büyük"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr ") ya da \\) eşleşmiyor"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Daha önce düzenli ifade yok"
msgstr ""
"GNU yazılımı kullanımı hakkında genel yardım: <http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "%s ve %s dosyaları birbirinden farklı\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "İkili %s ve %s birbirinden farklı\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Dosya sonunda yenisatır yok."
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, c-format
msgid "Try '%s --help' for more information."
msgstr "Daha fazla bilgi için `%s --help' komutunu deneyin."
msgid "options -l and -s are incompatible"
msgstr "-l ve -s seçenekleri beraber kullanılamaz"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "yazma başarısız oldu"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "standart çıktı"
"İsteğe bağlı ATLA1 ve ATLA2, her dosyanın başından atlanacak\n"
"(öntanımlı olarak sıfır) bayt sayısını belirtir."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr "Eğer DOSYA `-' ise veya yoksa, standart girdi okunur."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr "Girdiler aynı ise çıkış durumu 0, farklı ise 1, sorun var ise 2 olur."
msgid "invalid --bytes value '%s'"
msgstr "geçersiz --bytes değeri `%s'"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, c-format
msgid "missing operand after '%s'"
msgstr "`%s'den sonra işlenen eksik"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, c-format
msgid "extra operand '%s'"
msgstr "fazla işlenen `%s'"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s farklı: bayt %s, satır %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s farklı: bayt %s, satır %s: %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: %s'da EOF (dosyasonu)\n"
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
+#: src/diff.c:351
#, c-format
msgid "invalid context length '%s'"
msgstr "`%s' bağlam uzunluğu geçersiz"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "sayfalama bu makina üzerinde desteklenmiyor"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "çok fazla dosya etiket seçeneği"
-#: src/diff.c:514
+#: src/diff.c:526
#, c-format
msgid "invalid width '%s'"
msgstr "geçersiz genişlik `%s'"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "çelişkili genişlik seçenekleri"
-#: src/diff.c:543
+#: src/diff.c:555
#, c-format
msgid "invalid horizon length '%s'"
msgstr "geçersiz ufuk uzunluğu `%s'"
-#: src/diff.c:598
+#: src/diff.c:611
#, c-format
msgid "invalid tabsize '%s'"
msgstr "geçersiz sekme genişliği `%s'"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "çelişkili genişlik seçenekleri"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "hem --from-file hem de --to-file belirtilmiş"
-#: src/diff.c:854
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
msgstr " --normal normal bir diff çıktılar (öntanımlı)"
-#: src/diff.c:855
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
msgstr "-q, --brief yalnızca dosyalar farklı ise göster"
-#: src/diff.c:856
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
msgstr ""
"-s, --report-identical-files iki dosyanın birbirinin aynısı ise göster"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
"-c, -C SAYI, --context[=SAYI] kopyalanan bağlamı SAYI satırınca (öntanımlı "
"3) bastırır"
-#: src/diff.c:858
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"-u, -U SAYI, --unified[=SAYI] birleşik bağlamın SAYI (öntanımlı 3) "
"satırınca çıktı gösterir"
-#: src/diff.c:859
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
msgstr "-e, --ed bir ed betiği çıktılar"
-#: src/diff.c:860
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
msgstr "-n, --rcs RCS biçeminde diff çıktılar"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr "-y, --side-by-side iki sütunda çıktı göster"
-#: src/diff.c:862
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"-W, --width=SAYI satır başına en fazla SAYI kadar karakter "
"çıktılar (öntanımlı 130)"
-#: src/diff.c:863
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
" --left-column ortak satırları yalnızca sol sütunda çıktılar"
-#: src/diff.c:864
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
msgstr " --suppress-common-lines ortak satırlayı gösterme"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr "-p, --show-c-function içinde değişen her C işlevini göster"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
"-F, --show-function-line=DÜZİF DÜZİF ile eşleşen en yakın satırı göster"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
" --label ETİKET dosya adı yerine ETİKET kullan\n"
" (tekrarlanabilir)"
-#: src/diff.c:871
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr "-t, --expand-tabs çıktıda sekmeleri boşluk haline getir"
-#: src/diff.c:872
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
"-T, --initial-tab başlarına bir sekme ilave ederek sekmelerin "
"hizalanmasını sağla"
-#: src/diff.c:873
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
" --tabsize=SAYI sekmeler SAYI sütun genişliğine (öntanımlı 8) "
"ayarlanır."
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
" --suppress-blank-empty boş çıktı satırlarından önce boşluk veya "
"sekmeyi gözardı et"
-#: src/diff.c:875
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
"-l, --paginate çıktıyı 'pr' komutundan geçirerek sayfala"
-#: src/diff.c:877
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
"-r, --recursive çevrimli olarak bulunan bütün alt dizinleri "
"karşılaştır"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr " --no-dereference sembolik bağlantıları takip etme"
-#: src/diff.c:879
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
msgstr "-N, --new-file var olmayan dosyaları boş varsay"
-#: src/diff.c:880
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr " --unidirectional-new-file var olmayan birinci dosyayı boş varsay"
-#: src/diff.c:881
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
" --ignore-file-name-case dosya isimlerinde büyük/küçük harf "
"farklarını yoksay"
-#: src/diff.c:882
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
" --no-ignore-file-name-case dosya isimlerinde büyük/küçük harf farkını "
"göz önüne al"
-#: src/diff.c:883
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr ""
"-x, --exclude=KALIP KALIP'a uyan dosyaları işleme dahil etme"
-#: src/diff.c:884
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
"-X, --exclude-from=DOSYA DOSYA'da bulunan kalıplara uyan dosyaları "
"işlem dışı tut"
-#: src/diff.c:885
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
"-S, --starting-file=DOSYA dizinleri karşılaştırırken DOSYA'dan başla"
-#: src/diff.c:886
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
" --from-file=DOSYA1 DOSYA1'i bütün işlenenlerle karşılaştır;\n"
" DOSYA1 bir dizin olabilir"
-#: src/diff.c:888
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
" --to-file=DOSYA2 DOSYA2'yi bütün işlenenlerle karşılaştır;\n"
" DOSYA2 bir dizin olabilir"
-#: src/diff.c:891
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
"-i, --ignore-case dosya içeriğinde büyük/küçük harf farklarını "
"yoksay"
-#: src/diff.c:892
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
"-E, --ignore-tab-expansion sekmelerin açılmasından doğan farkları yoksay"
-#: src/diff.c:893
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr "-Z, --ignore-trailing-space bütün satır sonu boşluklarını yoksay"
-#: src/diff.c:894
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
"-b, --ignore-space-change boşluk miktarındaki değişiklikleri yoksay"
-#: src/diff.c:895
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w, --ignore-all-space bütün boşlukları yoksay"
-#: src/diff.c:896
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr ""
"-B, --ignore-blank-lines satırları boş olan değişiklikleri dikkate "
"alma"
-#: src/diff.c:897
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I, --ignore-matching-lines=DÜZİF satırları DÜZİF kalıbına uyan farkları "
"yok say"
-#: src/diff.c:899
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
msgstr "-a, --text bütün dosyaları metin olarak işle"
-#: src/diff.c:900
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
" --strip-trailing-cr girdiden en sonda sarkan satır başını soy"
-#: src/diff.c:902
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr " --binary veriyi ikilik kipte yaz ve oku"
-#: src/diff.c:905
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
"-D, --ifdef=İSİM '#ifdef İSİM' farklarını gösteren "
"harmanlanmış dosya çıktıla."
-#: src/diff.c:906
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
" --GTYPE-group-format=GFMT GTYPE girdi gruplarını GFMT ile biçimlendir"
-#: src/diff.c:907
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
" --line-format=LFMT tüm girdi satırlarını LFMT ile biçimlendir"
-#: src/diff.c:908
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
" --LTYPE-line-format=LFMT tüm LTYPE girdi satırlarını LFMT ile "
"biçimlendir"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
"grained control over the output\n"
" tanecik denetimi sağlar. -D/--ifdef genelleştirmesi yapar."
-#: src/diff.c:911
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" LTYPE 'old', 'new' veya 'unchanged' olabilir. GTYPE, LTYPE veya "
"'changed'dir."
-#: src/diff.c:912
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" M L+1\n"
" %(A=B?T:E) eğer A eşittir B ise T değilse E"
-#: src/diff.c:924
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %[-][GENİŞLİK][.[KESİNLİK]]{doxX}n girdi satır sayısı için printf tarzı "
"biçem"
-#: src/diff.c:928
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO' Sekizlik kodu OOO olan karakter\n"
" C C karakteri (diğer karakterler kendilerini temsil eder)"
-#: src/diff.c:934
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr "-d, --minimal daha küçük bir fark kümesi bulmaya çalış"
-#: src/diff.c:935
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr " --horizon-lines=SAYI ortak ön ek ve son eklerin SAYI satırını tut"
-#: src/diff.c:936
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
" --speed-large-files büyük dosyalar ve çok sayıda dağınık küçük farklar "
"olduğunu varsay"
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr " --normal normal bir diff çıktılar (öntanımlı)"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr " --help bu yardım metnini göster ve çık"
-#: src/diff.c:939
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
msgstr "-v, --version sürüm bilgisini göster ve çık"
-#: src/diff.c:941
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+#: src/diff.c:974
+#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"DOSYAlar: `DOSYA1 DOSYA2' veya `DİZİN1 DİZİN2' veya `DİZİN DOSYA...' veya "
"`DOSYA...DİZİN' olabilir."
-#: src/diff.c:942
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
"Eğer --from-file veya --to-file kullanılmışsa, DOSYAlar üzerinde kısıtlama "
"yoktur."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
msgstr "Eğer bir DOSYA `-' ise, standart girdi okunur."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Kullanım: %s [SEÇENEK]... DOSYAlar\n"
-#: src/diff.c:954
+#: src/diff.c:987
msgid "Compare FILES line by line."
msgstr "DOSYAları satır satır karşılaştırır."
-#: src/diff.c:988
+#: src/diff.c:1021
#, c-format
msgid "conflicting %s option value '%s'"
msgstr "çelişkili %s seçeneği değeri: '%s'"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "çelişkili çıktı tarz seçenekleri"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "geçersiz genişlik `%s'"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Yalnızca %s'da: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
msgstr "'-', bir dizinle karşılaştırılamaz"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "-D seçenek dizinler için kullanılamaz."
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Ortak alt dizinler: %s ve %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "%s dosyası, bir %s, halbuki %s dosyası bir %s\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "%s ve %s sembolik bağlantıları birbirinden farklı\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "%s ve %s dosyaları birbirinin aynı\n"
msgid "'-' specified for more than one input file"
msgstr "'-' birden fazla girdi dosyası için belirtilmiş"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "okuma başarısız oldu"
msgid "invalid diff format; invalid change separator"
msgstr "geçersiz diff biçemi; geçersiz fark ayracı"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "geçersiz diff biçemi; tamamlanmamış son satır"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "alt yazılım '%s' çalıştırılamadı"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "geçersiz diff biçemi; geçersiz satır başı karakterleri"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "iç hata: çıktıya geçersiz diff türü geçirildi"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "girdi dosyası küçüldü"
-#: src/dir.c:158
+#: src/dir.c:156
#, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "dosya isimleri '%s' ve '%s' karşılaştırılamıyor"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: iç dizin döngüsü"
"v:\tOrtak satırları bilgi vererek dahil eder.\n"
"q:\tÇıkar.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: `--%s' seçeneği bilinmiyor\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "%s: illegal option -- %c\n"
#~ msgstr "%s: kuraldışı seçenek -- %c\n"
msgstr ""
"Project-Id-Version: diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2012-10-31 08:58+0200\n"
"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
"Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n"
"X-Generator: Lokalize 1.5\n"
"Plural-Forms: nplurals=1; plural=0;\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "некоректний аргумент %s%s — «%s»"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "некоректний аргумент %s%s — «%s»"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "помилка програми"
msgid "stack overflow"
msgstr "переповнення стеку"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Невідома системна помилка"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "звичайний порожній файл"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "звичайний файл"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "каталог"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "спеціальний файл з блоковим доступом"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "спеціальний файл з символьним доступом"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "черга"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "символьне посилання"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "сокет"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "черга повідомлень"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "семафор"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "об’єкт у спільній пам'яті"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "об’єкт пам'яті з типами"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "спеціальний файл з блоковим доступом"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "спеціальний файл з символьним доступом"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "черга"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "спеціальний файл з блоковим доступом"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "спеціальний файл з символьним доступом"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "дивний файл"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "спеціальний файл з блоковим доступом"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "сокет"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "дивний файл"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: неоднозначний параметр «%s»; можливі варіанти:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: параметр «-W %s» не є однозначним\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: додавання аргументів до параметра «--%s» не передбачено\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: додавання аргументів до параметра «%c%s» не передбачено\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: до параметра «--%s» слід додати аргумент\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: невідомий параметр «--%s»\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: невідомий параметр «%c%s»\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: некоректний параметр — «%c»\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: до параметра слід додати аргумент — «%c»\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: параметр «-W %s» не є однозначним\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: додавання аргументів до параметра «-W %s» не передбачено\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s: до параметра «-W %s» слід додати аргумент\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "`"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr "'"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Успішно"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Немає відповідностей"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Неправильний регулярний вираз"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Некоректний символ для сортування"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Неправильна назва класу символу"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Зворотна коса риска стоїть останньою"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Неправильне посилання"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "Непарна [ чи [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Непарна ( чи \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Непарна \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Неправильний вміст \\{\\}"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Неправильна нижня межа"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Оперативну пам'ять вичерпано"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Неправильний попередній регулярний вираз"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Передчасний кінець регулярного виразу"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Регулярний вираз надто великий"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "Непарна ) чи \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Регулярний вираз не було вказано раніше"
"Загальна довідка з програмного забезпечення GNU: <http://www.gnu.org/gethelp/"
">\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Файли %s та %s відрізняються\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Двійкові файли %s та %s відрізняються\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Наприкінці файлу немає нового рядка"
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, c-format
msgid "Try '%s --help' for more information."
msgstr "Спробуйте «%s --help» для отримання докладнішого опису."
msgid "options -l and -s are incompatible"
msgstr "параметри -l та -s несумісні"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "запис невдалий"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "стандартний вивід"
"Додаткові аргументи Н1 та Н2 визначають кількість байтів, які слід\n"
"пропустити на початку кожного файла (типово байти не пропускаються)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
"Якщо ФАЙЛ не вказано або вказано як «-», дані буде прочитано зі стандартного "
"потоку введення."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"Код завершення дорівнює 0, якщо вхідні файли ідентичні, 1 -- якщо\n"
msgid "invalid --bytes value '%s'"
msgstr "некоректне значення --bytes «%s»"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, c-format
msgid "missing operand after '%s'"
msgstr "пропущено операнд після «%s»"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, c-format
msgid "extra operand '%s'"
msgstr "зайвий операнд «%s»"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s відрізняються: байт %s, рядок %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s відрізняються: байт %s, рядок %s дорівнює %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: кінець файлу у %s\n"
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
+#: src/diff.c:351
#, c-format
msgid "invalid context length '%s'"
msgstr "некоректна довжина контексту «%s»"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "розбиття на сторінки не підтримується на цій машині"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "надто багато параметрів, що вказують позначки файлів"
-#: src/diff.c:514
+#: src/diff.c:526
#, c-format
msgid "invalid width '%s'"
msgstr "некоректна ширина «%s»"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "суперечливі параметри визначення ширини"
-#: src/diff.c:543
+#: src/diff.c:555
#, c-format
msgid "invalid horizon length '%s'"
msgstr "некоректна довжина горизонту «%s»"
-#: src/diff.c:598
+#: src/diff.c:611
#, c-format
msgid "invalid tabsize '%s'"
msgstr "неприпустима ширина табуляції «%s»"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "суперечливі параметри визначення ширини табуляції"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "необхідно вказати як --from-file, так і --to-file"
-#: src/diff.c:854
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
msgstr ""
" --normal вивести дані у форматі звичайного diff (типово)"
-#: src/diff.c:855
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
msgstr "-q, --brief сповіщати лише про різні файли"
-#: src/diff.c:856
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
msgstr "-s --report-identical-files сповіщати про однакові файли"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
"-c, -C КТЬ, --context[=КТЬ] вивести КТЬ (типово 3) рядки скопійованого "
"контексту"
-#: src/diff.c:858
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"-u, -U ЧИСЛО, --unified[=ЧИСЛО] вивести ЧИСЛО (типово 3) рядків спільного "
"контексту"
-#: src/diff.c:859
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
msgstr "-e, --ed вивести дані у форматі запису ed"
-#: src/diff.c:860
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
msgstr ""
"-n, --rcs виводити у форматі diff систем керування "
"версіями"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr "-y, --side-by-side вивести дані у два стовпчики"
-#: src/diff.c:862
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"-W, --width=ЧИСЛО виводити текст не більше ніж у ЧИСЛО (типово "
"130) позицій у рядок"
-#: src/diff.c:863
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
" --left-column виводити спільні рядки лише у ліву колонку"
-#: src/diff.c:864
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
msgstr " --suppress-common-lines не виводити однакові рядки"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
"-p, --show-c-function показати дані щодо функцій C у яких виявлено "
"кожну зі змін"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
"-F, --show-function-line=RE показати останній рядок, що відповідає "
"формальному виразу RE"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
" --label МІТКА використати МІТКУ замість назви файла\n"
" (можна використовувати декілька разів)"
-#: src/diff.c:871
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr ""
"-t --expand-tabs замінювати символи табуляції пробілами у виводі"
-#: src/diff.c:872
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
"-T --initial-tab вирівнювати табуляцію символами табуляції"
-#: src/diff.c:873
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
" --tabsize=ЧИСЛО табуляція кожні ЧИСЛО позицій виведення "
"(типово 8)"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
" --suppress-blank-empty не показувати пробіли або табуляції перед "
"порожніми рядками"
-#: src/diff.c:875
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
"-l --paginate спрямувати дані до «pr» для розбиття на "
"сторінки."
-#: src/diff.c:877
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
"-r, --recursive рекурсивно порівняти всі знайдені підкаталоги"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr ""
" --no-dereference не переходити за символічними посиланнями"
-#: src/diff.c:879
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
msgstr "-N, --new-file вважати незнайдені файли порожніми"
-#: src/diff.c:880
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr ""
" --unidirectional-new-file вважати незнайдені у першому джерелі файли "
"порожніми"
-#: src/diff.c:881
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
" --ignore-file-name-case ігнорувати регістр назв файлів під час "
"порівняння"
-#: src/diff.c:882
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
" --no-ignore-file-name-case враховувати регістр символів назв файлів"
-#: src/diff.c:883
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr ""
"-x --exclude=ЗРАЗОК виключити файли, назви яких відповідають "
"ЗРАЗКУ"
-#: src/diff.c:884
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
"зразкам\n"
" з файла."
-#: src/diff.c:885
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
"-S, --starting-file=ФАЙЛ починати порівняння каталогів на файлі ФАЙЛ"
-#: src/diff.c:886
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
" --from-file=ФАЙЛ1 порівняти ФАЙЛ1 з усіма операндами;\n"
" ФАЙЛ1 може бути каталогом"
-#: src/diff.c:888
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
" --to-file=ФАЙЛ2 порівняти всі операнди з ФАЙЛОМ "
"2; ФАЙЛ2 може бути каталогом."
-#: src/diff.c:891
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
"-i --ignore-case ігнорувати регістр літер у вмісті файлів"
-#: src/diff.c:892
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr ""
"-E --ignore-tab-expansion ігнорувати зміни, викликані заміною "
"табуляції пробілами"
-#: src/diff.c:893
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr "-Z, --ignore-trailing-space ігнорувати пробіли наприкінці рядка"
-#: src/diff.c:894
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr "-b --ignore-space-change ігнорувати зміни у кількості пробілів"
-#: src/diff.c:895
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w --ignore-all-space ігнорувати усі пробіли"
-#: src/diff.c:896
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr ""
"-B --ignore-blank-lines ігнорувати зміни кількості порожніх рядків"
-#: src/diff.c:897
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I, --ignore-matching-lines=RE ігнорувати зміни, які відповідають "
"формальному виразу RE"
-#: src/diff.c:899
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
msgstr "-a, --text вважати всі файли текстовими"
-#: src/diff.c:900
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
" --strip-trailing-cr вилучити з виведених даних всі завершальні "
"символи нового рядка"
-#: src/diff.c:902
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr ""
" --binary читати та записувати файли у двійковій формі"
-#: src/diff.c:905
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
"-D, --ifdef=НАЗВА виводити diff-блоки, що використовують "
"конструкцію «#ifdef НАЗВА»."
-#: src/diff.c:906
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
" --ГТИП-group-format=ГФМТ форматувати вхідні групи типу ГТИП\n"
" у відповідності до формату ГФМТ."
-#: src/diff.c:907
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
" --line-format=СФМТ форматувати всі вхідні рядки за допомогою "
"СФМТ."
-#: src/diff.c:908
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
" --CТИП-group-format=СФМТ форматувати вхідні рядки типу СТИП\n"
" у відповідності до формату СФМТ"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
" За допомогою цих параметрів форматування можна точно налаштувати\n"
" вивід diff, з узагальненням -D/--ifdef."
-#: src/diff.c:911
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" СТИП може бути «old», «new» чи «unchanged», ГТИП — те саме або «changed»."
-#: src/diff.c:912
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" M L+1\n"
" %(A=B?T:E) якщо A дорівнює B, T, інакше E"
-#: src/diff.c:924
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %l вміст рядка без символу нового рядка наприкінці\n"
" %[-][ШИРИНА][.[ТОЧН]]{doxX}n формат номеру вхідного рядка у стилі printf"
-#: src/diff.c:928
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO' один символ з вісімковим кодом OOO\n"
" C символ C (інші символи не оброблятимуться)"
-#: src/diff.c:934
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr "-d --minimal намагатись знайти найменший набір змін"
-#: src/diff.c:935
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr ""
" --horizon-lines=ЧИСЛО зберегти ЧИСЛО спільних рядків, до та після різних"
-#: src/diff.c:936
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
" --speed-large-files вважати файли великими з багатьма розкиданими\n"
" дрібними змінами."
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr ""
+" --normal вивести дані у форматі звичайного diff (типово)"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr ""
" --help показати це довідкове повідомлення і завершити "
"роботу"
-#: src/diff.c:939
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
msgstr "-v, --version показати дані щодо версії і завершити роботу"
-#: src/diff.c:941
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+#: src/diff.c:974
+#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"ФАЙЛИ — це «ФАЙЛ1 ФАЙЛ2», чи «КАТАЛОГ1 КАТАЛОГ2», чи «КАТАЛОГ ФАЙЛ...»,\n"
"чи «ФАЙЛ... КАТАЛОГ»."
-#: src/diff.c:942
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr "Якщо вказано --from-file чи --to-file, на ФАЙЛИ обмежень немає."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
msgstr ""
"Якщо ФАЙЛ вказано як «-», дані буде прочитано зі стандартного потоку "
"введення."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Використання: %s [КЛЮЧ]... ФАЙЛИ\n"
-#: src/diff.c:954
+#: src/diff.c:987
msgid "Compare FILES line by line."
msgstr "Порівнює два файли за рядками."
-#: src/diff.c:988
+#: src/diff.c:1021
#, c-format
msgid "conflicting %s option value '%s'"
msgstr "суперечливі значення %s для ключа «%s»"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "суперечливі ключі визначення стилю виводу"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "некоректна ширина «%s»"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Лише у %s: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
msgstr "не можна порівнювати «-» з каталогом"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "-D параметр не підтримується для каталогів"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Спільні підкаталоги: %s та %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "Файл %s це %s, тоді як файл %s -- %s\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "Символічні посилання %s і %s є різними\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Файли %s та %s ідентичні\n"
msgid "'-' specified for more than one input file"
msgstr "«-» вказано для більш ніж одного вхідного файла"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "помилка читання"
msgid "invalid diff format; invalid change separator"
msgstr "неправильний формат diff-файлу; неправильний розділювач змін"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "неправильний формат diff-файлу; неповний останній рядок"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "не вдається запустити допоміжну програму «%s»"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "неправильний diff-формат; неправильні перші символи рядка"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "внутрішня помилка: на вхід подано неправильний тип diff-файлу"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "вхідний файл зменшився"
-#: src/dir.c:158
+#: src/dir.c:156
#, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "неможливо порівняти назви файлів «%s» та «%s»"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: зациклення рекурсивного проходу каталогів"
"s:\tВключати спільні рядки, без виводу повідомлень.\n"
"v:\tВключати спільні рядки, виводячи повідомлення.\n"
"q:\tВийти.\n"
+
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: невідомий параметр «--%s»\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
msgstr ""
"Project-Id-Version: diffutils-3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2012-11-01 13:51+0700\n"
"Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
"Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
"X-Generator: LocFactoryEditor 1.8\n"
"X-Poedit-SourceCharset: UTF-8\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "đối số %s%s không hợp lệ “%s”"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "đối số %s%s không hợp lệ “%s”"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "lỗi chương trình"
msgid "stack overflow"
msgstr "stack bị tràn"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "Không biết lỗi hệ thống"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "tập tin trống thông thường"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "tập tin thường"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "thư mục"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "tập tin đặc biệt khối"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "tập tin đặc biệt ký tự"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo (vào trước, ra trước)"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "liên kết mềm"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "socket"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "hàng đợi thông điệp"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "cờ hiệu"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "đối tượng bộ nhớ dùng chung"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "đối tượng bộ nhớ đánh loại"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "tập tin đặc biệt khối"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "tập tin đặc biệt ký tự"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo (vào trước, ra trước)"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "tập tin đặc biệt khối"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "tập tin đặc biệt ký tự"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "tập tin lạ"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "tập tin đặc biệt khối"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "socket"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "tập tin lạ"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s: tùy chọn “%s” chưa rõ ràng; khả năng là:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s: tùy chọn “-W %s” chưa rõ ràng\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, 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"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: tùy chọn “%c%s” không cho phép đối số\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s: tùy chọn “--%s” yêu cầu một đối số\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: không nhận ra tùy chọn “--%s”\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: không nhận ra tùy chọn “%c%s”\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: tùy chọn không hợp lệ -- “%c”\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: tùy chọn yêu cầu một đối số -- “%c”\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: tùy chọn “-W %s” chưa rõ ràng\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, 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"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, 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"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr "“"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr "”"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "Thành công"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "Không có gì khớp"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "Biểu thức chính quy không hợp lệ"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "Ký tự đối chiếu không hợp lệ"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "Tên hạng ký tự không hợp lệ"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "Có gạch ngược theo sau"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "Tham chiếu trở lại không hợp lệ"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "Chưa khớp [ hay [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "Chưa khớp ( hay \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "Chưa khớp \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "Nội dung của \\{\\} không hợp lệ"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "Kết thúc vùng không hợp lệ"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "Hết bộ nhớ"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "Biểu thức chính quy đi trước không hợp lệ"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "Kết thức quá sớm của biểu thức chính quy"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "Biểu thức chính quy quá lớn"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "Chưa khớp ) hay \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "Không có biểu thức chính quy đi trước"
msgstr ""
"Trợ giúp chung về cách sử dụng phần mềm GNU: <http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "Hai tập tin %s và %s là khác nhau.\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "Hai tập tin nhị phân %s và %s khác nhau\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "Không có ký tự dòng mới tại kêt thức tập tin."
msgid "David MacKenzie"
msgstr "David MacKenzie"
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, c-format
msgid "Try '%s --help' for more information."
msgstr "Hãy chạy lệnh “%s --help” để xem thông tin thêm."
msgid "options -l and -s are incompatible"
msgstr "hai tùy chọn -l và -s không tương thích với nhau"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "không ghi được"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "thiết bị xuất chuẩn"
"Tùy chọn SKIP1 và SKIP2 chỉ định số byte sẽ được bỏ qua\n"
"tại vị trí bắt đầu của mỗi tập tin (số không là mặc định)."
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr "Tùy chọn dài yêu cầu đối số thì tùy chọn ngắn cũng vậy.\n"
msgid "If a FILE is '-' or missing, read standard input."
msgstr "Nếu TẬP-TIN là “-”, hay bỏ trống, thì đọc từ đầu vào tiêu chuẩn."
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr ""
"Trạng thái thoát là số 0 nếu hai đầu vào bằng nhau, số 1 nếu là khác nhau và "
msgid "invalid --bytes value '%s'"
msgstr "giá trị cho tùy chọn --bytes “%s” không hợp lệ"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, c-format
msgid "missing operand after '%s'"
msgstr "thiếu toán hạng sau “%s”"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, c-format
msgid "extra operand '%s'"
msgstr "toán hạng bổ xung “%s”"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s có khác nhau: byte %s, dòng %s\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s có khác nhau: byte %s, dòng %s là %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp: gặp kết thức tập tin tại %s\n"
msgid "Len Tower"
msgstr "Len Tower"
-#: src/diff.c:339
+#: src/diff.c:351
#, c-format
msgid "invalid context length '%s'"
msgstr "độ dài ngữ cảnh không hợp lệ “%s”"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "máy chủ này không hỗ trợ dàn trang"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "quá nhiều tùy chọn nhãn tập tin"
-#: src/diff.c:514
+#: src/diff.c:526
#, c-format
msgid "invalid width '%s'"
msgstr "độ rộng không hợp lệ “%s”"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "nhiều tùy chọn độ rộng xung đột với nhau"
-#: src/diff.c:543
+#: src/diff.c:555
#, c-format
msgid "invalid horizon length '%s'"
msgstr "độ dài chiều đứng không hợp lệ “%s”"
-#: src/diff.c:598
+#: src/diff.c:611
#, c-format
msgid "invalid tabsize '%s'"
msgstr "cỡ ký tự tab không hợp lệ “%s”"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "nhiều tùy chọn cỡ ký tự tab xung đột với nhau"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr ""
"ghi rõ cả hai tùy chọn --from-file (từ tập tin) và --to-file (vào tập tin) "
"đều"
-#: src/diff.c:854
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
msgstr ""
" --normal xuất ra định dạng diff thông thường (mặc định)"
-#: src/diff.c:855
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
msgstr ""
"-q, --brief chỉ báo cáo nếu những tập tin khác với nhau"
-#: src/diff.c:856
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
msgstr "-s, --report-identical-files báo cáo khi có hai tập tin bằng nhau"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
"-c, -C SỐ, --context[=SỐ] xuất ra SỐ (mặc định là 3) dòng của ngữ cảnh"
-#: src/diff.c:858
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr ""
"-u, -U SỐ, --unified[=SỐ] xuất ra SỐ (mặc định là 3) dòng của ngữ cảnh "
"hợp nhất"
-#: src/diff.c:859
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
msgstr "-e, --ed xuất tập lệnh loại ed"
-#: src/diff.c:860
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
msgstr ""
"-n, --rcs xuất dữ liệu khác biệt sử dụng định dạng RCS"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr "-y, --side-by-side xuất ra theo đinh dạng hai cột"
-#: src/diff.c:862
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr ""
"-W, --width=SỐ xuất tối đa SỐ cột đã in ra (mặc định là 130)"
-#: src/diff.c:863
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
msgstr ""
" --left-column kết xuất chỉ cột bên trái của các dòng chung "
"nhau"
-#: src/diff.c:864
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
msgstr " --suppress-common-lines không kết xuất các dòng chung nhau"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
"-p, --show-c-function hiển thị cái mà từng hàm C thay đổi ở trong"
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr "-F, --show-function-line=RE hiển thị những dòng gần nhất khớp với RE"
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
" --label NHÃN sử dụng NHÃN thay vì tên tập tin\n"
" (có thể được lặp lại)"
-#: src/diff.c:871
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr ""
"-t, --expand-tabs mở rộng ký tự tab ra ký tự khoảng cách khi kết "
"xuất"
-#: src/diff.c:872
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr ""
"-T, --initial-tab sắp xếp tất cả ký tự tab bằng cách thêm\n"
" một tab vào trước"
-#: src/diff.c:873
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr ""
" --tabsize=SỐ định khoảng cách tab sau mỗi SỐ cột đã in ra\n"
" (mặc định là 8)"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
" --suppress-blank-empty thu hồi khoảng cách hay cột tab đằng trước "
"dòng kết xuất trống"
-#: src/diff.c:875
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr ""
"-l, --paginate chuyển dữ liệu kết xuất qua “pr” để dàn trang "
"nó"
-#: src/diff.c:877
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr ""
"-r, --recursive so sánh đệ qui mọi thư mục con đã tìm thấy"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr " --no-dereference không theo liên kết mềm"
-#: src/diff.c:879
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
msgstr "-N --new-file coi tập tin vắng mặt là trống"
-#: src/diff.c:880
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr " --unidirectional-new-file coi tập tin đầu mà vắng mặt là trống"
-#: src/diff.c:881
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr ""
" --ignore-file-name-case bỏ qua chữ HOA/thường khi so sánh nhiều tên tập "
"tin"
-#: src/diff.c:882
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr ""
" --no-ignore-file-name-case so sánh chữ HOA/thường khi so sánh tên tập "
"tin"
-#: src/diff.c:883
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr "-x, --exclude=MẪU loại trừ các tập tin khớp với MẪU ấy"
-#: src/diff.c:884
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr ""
"-X, --exclude-from=TẬP_TIN loại trừ mọi tập tin khớp với bất cứ mẫu nào "
"trong TẬP TIN ấy"
-#: src/diff.c:885
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr ""
"-S, --starting-file=TẬP_TIN bắt đầu với TẬP TIN khi so sánh nhiều thư mục"
-#: src/diff.c:886
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
" --from-file=TẬP_TIN1 so TẬP TIN 1 với tất cả toán hạng;\n"
" TẬP TIN 1 có thể là thư mục"
-#: src/diff.c:888
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
" --to-file=TẬP_TIN2 So tất cả toán hạng với TẬP TIN 2;\n"
" TẬP TIN 2 có thể là thư mục"
-#: src/diff.c:891
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr ""
"-i, --ignore-case không phân biệt chữ HOA/thường trong nội "
"dung tập tin"
-#: src/diff.c:892
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr "-E, --ignore-tab-expansion bỏ qua mọi thay đổi do mở rộng tab"
-#: src/diff.c:893
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr "-Z, --ignore-trailing-space bỏ qua tất cả dấu cách ở cuối dòng"
-#: src/diff.c:894
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr ""
"-b, --ignore-space-change bỏ qua thay đổi gây ra bởi nhóm dấu cách"
-#: src/diff.c:895
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w, --ignore-all-space bỏ qua tất cả dấu cách"
-#: src/diff.c:896
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr "-B, --ignore-blank-lines bỏ qua thay đổi do dòng trống"
-#: src/diff.c:897
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I, --ignore-matching-lines=RE bỏ qua thay đổi do mà mọi dòng khớp với RE"
-#: src/diff.c:899
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
msgstr "-a, --text xử lý mọi tập tin là văn bản thường"
-#: src/diff.c:900
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr ""
" --strip-trailing-cr cắt bỏ ký tự về đầu dòng (cr) theo sau khi gõ"
-#: src/diff.c:902
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
msgstr ""
" --binary đọc và ghi dữ liệu trong chế độ nhị phân"
-#: src/diff.c:905
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr ""
"-D, --ifdef=TÊN kết xuất tập tin đã trộn với khác biệt "
"“#ifdef TÊN”"
-#: src/diff.c:906
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr " --GTYPE-group-format=GFMT định dạng nhập GTYPE với GFMT "
-#: src/diff.c:907
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr ""
" --line-format=LFMT định dạng tất cảc các dòng vào với LFMT"
-#: src/diff.c:908
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr " --LTYPE-line-format=LFMT định dạng nhập LTYPE với LFMT"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
" Nhưng tùy chọn đó điểu khiển kết xuất ra định dạng diff\n"
" đẹp hơn, khái quát hóa -D/--ifdef."
-#: src/diff.c:911
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" LTYPE là “cũ”, “mới”, hoặc “chưa thay đổi”. GTYPE là LTYPE hoặc “thay đổi "
"rồi”."
-#: src/diff.c:912
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" E F-1\n"
" M L+1 %(A=B?T:E) nếu A bằng B thì T nếu không thì E"
-#: src/diff.c:924
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %l nội dung của dòng, loại trừ ký tự dòng mới nào đi theo\n"
" %[-][Đ_RỘNG][.[PREC]]{doxX}n đặc tả dạng printf cho số dòng đầu vào"
-#: src/diff.c:928
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO' ký tự có mã bát phân OOO\n"
" C ký tự C (các ký tự khác đại diện cho chính chúng)"
-#: src/diff.c:934
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr "-d, --minimal cố tìm một thay đổi nhỏ"
-#: src/diff.c:935
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr " --horizon-lines=SỐ giữ SỐ dòng của tiền tố và hậu tố chung"
-#: src/diff.c:936
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr ""
" --speed-large-files giả định tập tin lớn và nhiều thay đổi nhỏ rải rác"
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr ""
+" --normal xuất ra định dạng diff thông thường (mặc định)"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr " --help hiển thị trợ giúp này rồi thoát"
-#: src/diff.c:939
+#: src/diff.c:972
msgid "-v, --version output version information and exit"
msgstr "-v, --version đưa ra thông tin phiên bản rồi thoát"
-#: src/diff.c:941
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+#: src/diff.c:974
+#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"(CÁC) TẬP TIN là “TẬP_TIN1 TẬP_TIN2” hoặc “THƯ_MỤC1 THƯ_MỤC2” hoặc “THƯ_MỤC "
"TẬP_TIN...” hay “TẬP_TIN... THƯ_MỤC”."
-#: src/diff.c:942
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr ""
"Nếu đưa ra tùy chọn --from-file (từ tập tin) hay --to-file (vào tập tin) thì "
"không có giới hạn TẬP TIN."
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
msgstr "Nếu TẬP-TIN là “-”, thì đọc từ đầu vào tiêu chuẩn."
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "Cách dùng: %s [TÙY_CHỌN]... CÁC_TẬP_TIN\n"
-#: src/diff.c:954
+#: src/diff.c:987
msgid "Compare FILES line by line."
msgstr "So sánh các TẬP-TIN theo từng dòng."
-#: src/diff.c:988
+#: src/diff.c:1021
#, c-format
msgid "conflicting %s option value '%s'"
msgstr "tùy chọn %s xung đột, giá trị “%s”"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "nhiều tùy chọn điều khiển định dạng xuất xung đột với nhau"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "độ rộng không hợp lệ “%s”"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "Chỉ trong %s: %s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
msgstr "không thể so sánh “-” với một thư mục"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "không hỗ trợ tùy chọn -D với thư mục"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "Thư mục con chung: %s và %s\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "Tập tin %s là một %s trong khi tập tin %s là một %s.\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "Hai liên kết mềm %s và %s là khác nhau\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "Cả %s và %s là cùng một tập tin\n"
msgid "'-' specified for more than one input file"
msgstr "đã chỉ ra “-” cho nhiều hơn một tập tin đầu vào"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "đọc gặp lỗi"
msgid "invalid diff format; invalid change separator"
msgstr "khuôn dạng diff không hợp lệ; ký tự ngăn cách thay đổi không hợp lê"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "khuôn dạng diff không hợp lệ; chưa xong dòng cuối cùng"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "không gọi được chương trình phụ trợ “%s”"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "khuôn dạng khác biệt không hợp lệ; ký tự đi trước dòng là không đúng"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "gặp lỗi nội bộ: kiểu diff không hợp lệ được chuyển qua cho kết xuất"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "tập tin đầu vào co lại"
-#: src/dir.c:158
+#: src/dir.c:156
#, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "không so sánh được hai tập tin “%s” và “%s”"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr "%s: vòng lặp thư mục đệ quy"
"v:\tBao gồm dòng chung xuất một cách chi tiết.\n"
"q:\tThoát.\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s: không nhận ra tùy chọn “--%s”\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2"
#~ msgstr "-i SỐ1:SỐ2 --ignore-initial=SỐ1:SỐ2"
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) 2004 Free Software Foundation, Inc.
-# This file is distributed under the same license as the PACKAGE package.
+# Chinese (simplified) translation for diffutils
+# Copyright (C) 2004, 2013 Free Software Foundation, Inc.
+# This file is distributed under the same license as the diffutils package.
# Yingxin Zhou <eerd003@dlut.edu.cn>, 2004.
+# Anthony Fok <foka@debian.org>, 2013.
+# Mingye Wang (Arthur2e5) <arthur200126@gmail.com>, 2016.
#
-#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: diffutils 2.8.7\n"
+"Project-Id-Version: diffutils 3.3-pre1\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
-"PO-Revision-Date: 2004-06-05 11:37+0800\n"
-"Last-Translator: Yingxin Zhou <eerd003@dlut.edu.cn>\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
+"PO-Revision-Date: 2016-02-17 19:23+0100\n"
+"Last-Translator: Mingye Wang (Arthur2e5) <arthur200126@gmail.com>\n"
"Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.7\n"
+
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "无效的 %s%s 参数 “%s”"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "无效的 %s%s 参数 “%s”"
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgid "stack overflow"
msgstr "栈溢出"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "未知的系统错误"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "常规空文件"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "常规文件"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "目录"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "特殊块文件"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "特殊字符文件"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "符号链接"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "套接字"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "消息队列"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "信号量"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "共享内存目标"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "分类内存目标"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "特殊块文件"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "特殊字符文件"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "有名管道"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "特殊块文件"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "特殊字符文件"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "奇怪的文件"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "特殊块文件"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "套接字"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "奇怪的文件"
-#: lib/getopt.c:547 lib/getopt.c:576
-#, fuzzy, c-format
+#: lib/getopt.c:575 lib/getopt.c:604
+#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
-msgstr "%s:选项 “%s” 意义不明确\n"
+msgstr "%s:选项 “%s” 意义不明确;可能性如下:"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s:选项 “-W %s” 意义不明确\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
+#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s:选项 “--%s” 不接受参数\n"
-#: lib/getopt.c:637 lib/getopt.c:642
-#, fuzzy, c-format
+#: lib/getopt.c:667 lib/getopt.c:672
+#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s:选项 “%c%s” 不接受参数\n"
-#: lib/getopt.c:685 lib/getopt.c:704
-#, fuzzy, c-format
+#: lib/getopt.c:715 lib/getopt.c:734
+#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s:选项 “%s” 需要一个参数\n"
-#: lib/getopt.c:742 lib/getopt.c:745
-#, fuzzy, c-format
+#: lib/getopt.c:772 lib/getopt.c:775
+#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s:选项 “--%s” 无法识别\n"
-#: lib/getopt.c:753 lib/getopt.c:756
-#, fuzzy, c-format
+#: lib/getopt.c:783 lib/getopt.c:786
+#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s:选项 “%c%s” 无法识别\n"
-#: lib/getopt.c:805 lib/getopt.c:808
-#, fuzzy, c-format
+#: lib/getopt.c:835 lib/getopt.c:838
+#, c-format
msgid "%s: invalid option -- '%c'\n"
-msgstr "%s:无效选项 -- %c\n"
+msgstr "%s:无效选项 -- “%c”\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
-#, fuzzy, c-format
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
+#, c-format
msgid "%s: option requires an argument -- '%c'\n"
-msgstr "%s:选项需要一个参数 --%c\n"
+msgstr "%s:选项需要一个参数 -- “%c”\n"
-#: lib/getopt.c:934 lib/getopt.c:950
-#, fuzzy, c-format
+#: lib/getopt.c:964 lib/getopt.c:980
+#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s:选项 “-W %s” 意义不明确\n"
-#: lib/getopt.c:974 lib/getopt.c:992
-#, fuzzy, c-format
+#: lib/getopt.c:1004 lib/getopt.c:1022
+#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
-msgstr "%s:选项 “-W %s” 不允许带参数\n"
+msgstr "%s:选项 “-W %s” 不接受参数\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
-#, fuzzy, c-format
+#: lib/getopt.c:1043 lib/getopt.c:1061
+#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s:选项 “%s” 需要一个参数\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
-msgstr ""
+msgstr "“"
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
-msgstr ""
+msgstr "”"
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "成功"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "没有匹配"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "无效的正则表达式"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "无效的对照字符"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "无效的字符种类名称"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "末端有多余的反斜号"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "无效的向后引用"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "没有匹配的 [ 或 [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "没有匹配的 ( 或 \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "没有匹配的 \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "\\{\\} 中的内容无效"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "范围末端字符无效"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "内存耗尽"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "无效的前导正则表达式"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "正则表达式过旱结束"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "正则表达式过大"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
-msgstr "没有匹配的 ) 或 \\"
+msgstr "没有匹配的 ) 或 \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "之前没有任何正则表达式"
#: lib/xfreopen.c:35
msgid "stdin"
-msgstr ""
+msgstr "标准输入"
#: lib/xfreopen.c:36
msgid "stdout"
-msgstr ""
+msgstr "标准输出"
#: lib/xfreopen.c:37
msgid "stderr"
-msgstr ""
+msgstr "标准错误"
#: lib/xfreopen.c:38
-#, fuzzy
msgid "unknown stream"
-msgstr "未知的系统错误"
+msgstr "未知流"
#: lib/xfreopen.c:39
#, c-format
msgid "failed to reopen %s with mode %s"
-msgstr ""
+msgstr "未能以模式 %2$s 重打开 %1$s"
#: lib/xstrtol-error.c:63
-#, fuzzy, c-format
+#, c-format
msgid "invalid %s%s argument '%s'"
-msgstr "无效的 --bytes 值 `%s'"
+msgstr "无效的 %s%s 参数 “%s”"
#: lib/xstrtol-error.c:68
#, c-format
msgid "invalid suffix in %s%s argument '%s'"
-msgstr ""
+msgstr "在 %s%s 的参数 “%s” 中有无效的后缀"
#: lib/xstrtol-error.c:72
#, c-format
msgid "%s%s argument '%s' too large"
-msgstr ""
+msgstr "%s %s 参数 “%s” 太大"
#: lib/version-etc.c:74
#, c-format
msgid "Packaged by %s (%s)\n"
-msgstr ""
+msgstr "由 %s 打包 (%s)\n"
#: lib/version-etc.c:77
#, c-format
msgid "Packaged by %s\n"
-msgstr ""
+msgstr "由 %s 打包\n"
#. TRANSLATORS: Translate "(C)" to the copyright symbol
#. (C-in-a-circle), if this symbol is available in the user's
#. locale. Otherwise, do not translate "(C)"; leave it as-is.
#: lib/version-etc.c:84
msgid "(C)"
-msgstr ""
+msgstr "©"
#: lib/version-etc.c:86
msgid ""
"There is NO WARRANTY, to the extent permitted by law.\n"
"\n"
msgstr ""
+"\n"
+"许可证:GPLv3+:GNU 通用公共许可证第 3 版或更新版本<http://gnu.org/licenses/"
+"gpl.html>。\n"
+"本软件是自由软件:您可以自由修改和重新发布它。\n"
+"在法律允许的范围内没有其他保证。\n"
+"\n"
#. TRANSLATORS: %s denotes an author name.
#: lib/version-etc.c:102
#, c-format
msgid "Written by %s.\n"
-msgstr "作者 %s。\n"
+msgstr "作者:%s。\n"
#. TRANSLATORS: Each %s denotes an author name.
#: lib/version-etc.c:106
#, c-format
msgid "Written by %s and %s.\n"
-msgstr "作者 %s 和 %s。\n"
+msgstr "作者:%s 和 %s。\n"
#. TRANSLATORS: Each %s denotes an author name.
#: lib/version-etc.c:110
#, c-format
msgid "Written by %s, %s, and %s.\n"
-msgstr "作者 %s,%s,和 %s。\n"
+msgstr "作者:%s、%s 和 %s。\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"Written by %s, %s, %s,\n"
"and %s.\n"
msgstr ""
-"作者 %s,%s,%s,\n"
-"和 %s。\n"
+"作者:%s、%s、%s\n"
+" 和 %s。\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"Written by %s, %s, %s,\n"
"%s, and %s.\n"
msgstr ""
-"作者 %s,%s,%s,\n"
-"%s 和 %s。\n"
+"作者:%s、%s、%s、\n"
+" %s 和 %s。\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"Written by %s, %s, %s,\n"
"%s, %s, and %s.\n"
msgstr ""
-"作者 %s,%s,%s,\n"
-"%s,%s 和 %s。\n"
+"作者:%s、%s、%s、\n"
+" %s、%s 和 %s。\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"Written by %s, %s, %s,\n"
"%s, %s, %s, and %s.\n"
msgstr ""
-"作者 %s,%s,%s,\n"
-"%s,%s,%s,和 %s。\n"
+"作者:%s、%s、%s、\n"
+" %s、%s、%s 和 %s。\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"%s, %s, %s, %s,\n"
"and %s.\n"
msgstr ""
-"作者 %s,%s,%s,\n"
-"%s,%s,%s,%s,\n"
-"和 %s。\n"
+"作者:%s、%s、%s、\n"
+" %s、%s、%s、%s\n"
+" 和 %s。\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"%s, %s, %s, %s,\n"
"%s, and %s.\n"
msgstr ""
-"作者 %s,%s,%s,\n"
-"%s,%s,%s,%s,\n"
-"%s,和 %s。\n"
+"作者:%s、%s、%s、\n"
+" %s、%s、%s、%s、\n"
+" %s 和 %s。\n"
#. TRANSLATORS: Each %s denotes an author name.
#. You can use line breaks, estimating that each author name occupies
"%s, %s, %s, %s,\n"
"%s, %s, and others.\n"
msgstr ""
-"作者 %s,%s,%s,\n"
-"%s,%s,%s,%s,\n"
-"%s,%s,和其他人。\n"
+"作者:%s、%s、%s、\n"
+" %s、%s、%s、%s、\n"
+" %s、%s 和其他人。\n"
#. TRANSLATORS: The placeholder indicates the bug-reporting address
#. for this package. Please add _another line_ saying
"\n"
"Report bugs to: %s\n"
msgstr ""
+"\n"
+"报告程序错误到: %s\n"
+"报告翻译错误到: https://translationproject.org/teams/zh_CN.html\n"
#: lib/version-etc.c:247
#, c-format
msgid "Report %s bugs to: %s\n"
msgstr ""
+"报告 %1$s 程序错误到: %2$s\n"
+"报告 %1$s 翻译错误到: https://translationproject.org/teams/zh_CN.html\n"
#: lib/version-etc.c:251
#, c-format
msgid "%s home page: <%s>\n"
-msgstr ""
+msgstr "%s 主页: <%s>\n"
#: lib/version-etc.c:253
#, c-format
msgid "%s home page: <http://www.gnu.org/software/%s/>\n"
-msgstr ""
+msgstr "%s 主页: <http://www.gnu.org/software/%s/>\n"
#: lib/version-etc.c:256
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
-msgstr ""
+msgstr "使用 GNU 软件的通用帮助:<http://www.gnu.org/gethelp/>\n"
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "文件 %s 和 %s 不同\n"
-#: src/analyze.c:462
-#, fuzzy, c-format
+#: src/analyze.c:455
+#, c-format
msgid "Binary files %s and %s differ\n"
-msgstr "文件 %s 和 %s 不同\n"
+msgstr "二进制文件 %s 和 %s 不同\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
-msgstr "文件尾没有 newline 字符"
+msgstr "文件尾没有换行符"
#. This is a proper name. See the gettext manual, section Names.
#: src/cmp.c:43
msgid "Torbjorn Granlund"
-msgstr "Torbjorn Granlund"
+msgstr ""
#. This is a proper name. See the gettext manual, section Names.
#: src/cmp.c:44
msgid "David MacKenzie"
msgstr ""
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
-#, fuzzy, c-format
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
+#, c-format
msgid "Try '%s --help' for more information."
msgstr "请尝试 “%s --help”,以获得更多信息。"
#: src/cmp.c:137
-#, fuzzy, c-format
+#, c-format
msgid "invalid --ignore-initial value '%s'"
msgstr "无效的 --ignore-initial 值 “%s”"
msgid "options -l and -s are incompatible"
msgstr "选项 -l 和 -s 不兼容"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "写入失败"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "标准输出"
#: src/cmp.c:161
-#, fuzzy
msgid "-b, --print-bytes print differing bytes"
-msgstr "-b --print-bytes æ\89\93å\8d°å\87ºå\86\85容ç\9b¸å¼\82ç\9a\84å\97è\8a\82ã\80\82"
+msgstr "-b --print-bytes æ\89\93å\8d°å\87ºå\86\85容ç\9b¸å¼\82ç\9a\84å\97è\8a\82"
#: src/cmp.c:162
-#, fuzzy
msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs"
-msgstr "-i SKIP --ignore-initial=SKIP ç\95¥è¿\87è¾\93å\85¥å\86\85容ç\9a\84å\89\8d SKIP å\97è\8a\82ã\80\82"
+msgstr "-i, --ignore-initial=SKIP 两个è¾\93å\85¥å\86\85容é\83½ç\95¥è¿\87å\89\8d SKIP å\97è\8a\82"
#: src/cmp.c:163
-#, fuzzy
msgid ""
"-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n"
" first SKIP2 bytes of FILE2"
-msgstr "略过文件 FILE1 的前 SKIP1 个字节和文件 FILE2 前 SKIP2 个字节。"
+msgstr ""
+"-i, --ignore-initial=跳1:跳2 略过 <文件1> 的前 <跳1> 个字节和文件 <文件"
+"2>\n"
+" 的前 <跳2> 个字节。"
#: src/cmp.c:165
-#, fuzzy
msgid ""
"-l, --verbose output byte numbers and differing byte values"
-msgstr "-l --verbose 输出所有相异字节的字节数和内容。"
+msgstr "-l, --verbose 输出所有相异字节的字节数和内容"
#: src/cmp.c:166
-#, fuzzy
msgid "-n, --bytes=LIMIT compare at most LIMIT bytes"
-msgstr "-n LIMIT --bytes=LIMIT æ\9c\80å¤\9aæ¯\94è¾\83 LIMIT 个å\97è\8a\82ã\80\82"
+msgstr "-n, --bytes=é\99\90å\88¶ æ\9c\80å¤\9aæ¯\94è¾\83 <é\99\90å\88¶> 个å\97è\8a\82"
#: src/cmp.c:167
msgid "-s, --quiet, --silent suppress all normal output"
#: src/cmp.c:168
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help 显示此帮助信息并退出"
#: src/cmp.c:169
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version 输出版本信息。"
+msgstr "-v, --version 输出版本信息并退出"
#: src/cmp.c:178
#, c-format
msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n"
-msgstr "用法: %s [选项]... 文件1 [文件2 [SKIP1 [SKIP2]]]\n"
+msgstr "用法: %s [选项]... 文件1 [文件2 [跳1 [跳2]]]\n"
#: src/cmp.c:180
msgid "Compare two files byte by byte."
msgstr "逐字节比较两个文件。"
#: src/cmp.c:182
-#, fuzzy
msgid ""
"The optional SKIP1 and SKIP2 specify the number of bytes to skip\n"
"at the beginning of each file (zero by default)."
-msgstr "SKIP1 和 SKIP2分别是每个文件要略过的字节数。"
+msgstr "<跳1> 和 <跳2> 分别是每个文件要略过的字节数。"
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
-msgstr ""
+msgstr "长选项的必需参数也是相应短选项的必需参数。\n"
#: src/cmp.c:191
msgid ""
"kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n"
"GB 1,000,000,000, G 1,073,741,824, and so on for T, P, E, Z, Y."
msgstr ""
-"SKIP 值可以加上以下的单位:\n"
-"kB=1000、K=1024、MB=1000000、M=1048576、GB=1000000000、G=1073741824,\n"
-"还有 T、P、E、Z、Y 如此类推。"
+"<跳> 值可以加上以下的单位:\n"
+"kB=1,000、K=1,024、MB=1,000,000、M=1,048,576、GB=1,000,000,000、"
+"G=107,374,182,\n"
+"还有 T、P、E、Z、Y,如此类推。"
#: src/cmp.c:194
-#, fuzzy
msgid "If a FILE is '-' or missing, read standard input."
msgstr "如果文件是 “-” 或没给出,则从标准输入读入内容。"
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr "如果输入相同,则退出状态为 0;1 表示输入不同;2 表示有错误产生。"
#: src/cmp.c:240
-#, fuzzy, c-format
+#, c-format
msgid "invalid --bytes value '%s'"
msgstr "无效的 --bytes 值 `%s'"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
-#, fuzzy, c-format
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
+#, c-format
msgid "missing operand after '%s'"
msgstr "操作数 “%s” 后缺少参数"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
-#, fuzzy, c-format
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
+#, c-format
msgid "extra operand '%s'"
msgstr "多余的操作数 “%s”"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s 不同:第 %s 字节,第 %s 行\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%1$s %2$s 不同:第 %4$s 行,第 %3$s 字节为 %5$3o %6$s %7$3o %8$s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp:%s 已结束\n"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:52
msgid "Richard Stallman"
-msgstr ""
+msgstr "理查德·斯托曼"
#. This is a proper name. See the gettext manual, section Names.
#: src/diff.c:53
msgid "Len Tower"
msgstr ""
-#: src/diff.c:339
-#, fuzzy, c-format
+#: src/diff.c:351
+#, c-format
msgid "invalid context length '%s'"
msgstr "无效的上下文行数 “%s”"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "此系统不支持分页"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "过多的文件标号选项"
-#: src/diff.c:514
-#, fuzzy, c-format
+#: src/diff.c:526
+#, c-format
msgid "invalid width '%s'"
msgstr "无效的宽度 “%s”"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "宽度选项冲突"
-#: src/diff.c:543
-#, fuzzy, c-format
+#: src/diff.c:555
+#, c-format
msgid "invalid horizon length '%s'"
msgstr "无效的水平长度 “%s”"
-#: src/diff.c:598
-#, fuzzy, c-format
+#: src/diff.c:611
+#, c-format
msgid "invalid tabsize '%s'"
msgstr "无效的制表符宽度 “%s”"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "的制表符选项冲突"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "同时指定了选项 --from-file 和 --to-file"
-#: src/diff.c:854
-#, fuzzy
+#: src/diff.c:883
msgid " --normal output a normal diff (the default)"
-msgstr "--normal 以正常的 diff 方式输出。"
+msgstr " --normal 以正常的 diff 方式输出 (默认)"
-#: src/diff.c:855
-#, fuzzy
+#: src/diff.c:884
msgid "-q, --brief report only when files differ"
-msgstr "-q --brief 只显示文件是否不同。"
+msgstr "-q, --brief 只有在文件不同时报告"
-#: src/diff.c:856
-#, fuzzy
+#: src/diff.c:885
msgid "-s, --report-identical-files report when two files are the same"
-msgstr "-s --report-identical-files 当两个一样时仍然显示结果。"
+msgstr "-s, --report-identical-files 当两个一样时仍然显示结果"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
-#: src/diff.c:858
-#, fuzzy
+#: src/diff.c:887
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
-msgstr "-w NUM --width=NUM 每行显示最多 NUM(默认 130)个字符。"
+msgstr "-u, -U 数量, --unified[=数量] 输出 <数量>(默认为 3)行一致化上下文"
-#: src/diff.c:859
-#, fuzzy
+#: src/diff.c:888
msgid "-e, --ed output an ed script"
-msgstr "-e --ed 以 ed script 方式输出。"
+msgstr "-e, --ed 以 ed script 方式输出"
-#: src/diff.c:860
-#, fuzzy
+#: src/diff.c:889
msgid "-n, --rcs output an RCS format diff"
-msgstr "-n --rcs 以 RCS diff 格式输出。"
+msgstr "-n, --rcs 以 RCS diff 格式输出"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr ""
-#: src/diff.c:862
-#, fuzzy
+#: src/diff.c:891
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
-msgstr "-w NUM --width=NUM 每行显示最多 NUM(默认 130)个字符。"
+msgstr "-W, --width=数量 每行显示最多 <数量>(默认 130)个字符"
-#: src/diff.c:863
-#, fuzzy
+#: src/diff.c:892
msgid ""
" --left-column output only the left column of common lines"
-msgstr "-l --left-column 当有两行相同时只显示左边的一行。"
+msgstr " --left-column 当有两行相同时只显示左边栏的一行"
-#: src/diff.c:864
-#, fuzzy
+#: src/diff.c:893
msgid " --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines 当有两行相同时不显示。"
+msgstr " --suppress-common-lines 当有两行相同时不显示"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+" --from-file=文件1 将<文件1>和操作数中的所有文件/目录作比较;\n"
+" <文件1>可以是目录"
-#: src/diff.c:871
-#, fuzzy
+#: src/diff.c:900
msgid "-t, --expand-tabs expand tabs to spaces in output"
-msgstr "-t --expand-tabs 将输出中的 tab 转换成空格。"
+msgstr "-t, --expand-tabs 将输出中的 tab 转换成空格"
-#: src/diff.c:872
-#, fuzzy
+#: src/diff.c:901
msgid "-T, --initial-tab make tabs line up by prepending a tab"
-msgstr "-T --initial-tab 每行先加上 tab 字符,使 tab 字符可以对齐。"
+msgstr "-T, --initial-tab 每行先加上 tab 字符,使 tab 字符可以对齐"
-#: src/diff.c:873
-#, fuzzy
+#: src/diff.c:902
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
-msgstr "--tabsize=NUM 定位字符 (tab) 的宽度,默认为 8 个空格宽。"
+msgstr " --tabsize=数字 TAB 格的宽度,默认为 8 个打印列宽"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
-#: src/diff.c:875
-#, fuzzy
+#: src/diff.c:904
msgid "-l, --paginate pass output through 'pr' to paginate it"
-msgstr "-l --paginate 将输出送至‘pr’指令来分页。"
+msgstr "-l, --paginate 将输出送至 “pr” 指令来分页"
-#: src/diff.c:877
-#, fuzzy
+#: src/diff.c:906
msgid ""
"-r, --recursive recursively compare any subdirectories found"
-msgstr "-r --recursive 连同所有子目录一起比较。"
+msgstr "-r, --recursive 连同所有子目录一起比较"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr ""
-#: src/diff.c:879
-#, fuzzy
+#: src/diff.c:908
msgid "-N, --new-file treat absent files as empty"
-msgstr "-N --new-file 不存在的文件以空文件方式处理。"
+msgstr "-N, --new-file 不存在的文件以空文件方式处理"
-#: src/diff.c:880
-#, fuzzy
+#: src/diff.c:909
msgid " --unidirectional-new-file treat absent first files as empty"
-msgstr "--unidirectional-new-file 若第一文件案不存在,以空文件处理。"
+msgstr " --unidirectional-new-file 若第一文件不存在,以空文件处理"
-#: src/diff.c:881
-#, fuzzy
+#: src/diff.c:910
msgid " --ignore-file-name-case ignore case when comparing file names"
-msgstr "--ignore-file-name-case 忽略文件名大小写的区别。"
+msgstr " --ignore-file-name-case 忽略文件名大小写的区别"
-#: src/diff.c:882
-#, fuzzy
+#: src/diff.c:911
msgid " --no-ignore-file-name-case consider case when comparing file names"
-msgstr "--no-ignore-file-name-case 不忽略文件名大小写的区别。"
+msgstr " --no-ignore-file-name-case 不忽略文件名大小写的区别"
-#: src/diff.c:883
-#, fuzzy
+#: src/diff.c:912
msgid "-x, --exclude=PAT exclude files that match PAT"
-msgstr "-x PAT --exclude=PAT 排除匹配 PAT 的文件。"
+msgstr "-x, --exclude=模式 排除匹配 <模式> 的文件"
-#: src/diff.c:884
-#, fuzzy
+#: src/diff.c:913
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
-msgstr ""
-"-X FILE --exclude-from=FILE 排除所有匹配在 FILE 中列出的模式的文件。"
+msgstr "-X, --exclude-from=文件 排除所有匹配在<文件>中列出的模式的文件"
-#: src/diff.c:885
-#, fuzzy
+#: src/diff.c:914
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
-msgstr "-S FILE --starting-file=FILE 当比较目录時,由 FILE 开始比较。"
+msgstr "-S, --starting-file=文件 当比较目录時,由<文件>开始比较"
-#: src/diff.c:886
-#, fuzzy
+#: src/diff.c:915
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
" FILE1 can be a directory"
msgstr ""
-"--from-file=FILE1 将 FILE1 和操作数中的所有文件/目录作比较。FILE1 可以是目"
-"录。"
+" --from-file=文件1 将<文件1>和操作数中的所有文件/目录作比较;\n"
+" <文件1>可以是目录"
-#: src/diff.c:888
-#, fuzzy
+#: src/diff.c:917
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
" FILE2 can be a directory"
msgstr ""
-"--to-file=FILE2 将操作数中的所有文件/目录和 FILE2 作比较。FILE2 可以是目"
-"录。"
+" --to-file=文件2 将操作数中的所有文件/目录和<文件2>作比较;\n"
+" <文件2>可以是目录"
-#: src/diff.c:891
-#, fuzzy
+#: src/diff.c:920
msgid ""
"-i, --ignore-case ignore case differences in file contents"
-msgstr "-i --ignore-case 忽略文件内容大小写的区别。"
+msgstr "-i, --ignore-case 忽略文件内容大小写的区别"
-#: src/diff.c:892
-#, fuzzy
+#: src/diff.c:921
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
-msgstr "-E --ignore-tab-expansion 忽ç\95¥ç\94±å\88¶è¡¨ç¬¦å®½åº¦é\80 æ\88\90ç\9a\84å·®å¼\82ã\80\82"
+msgstr "-E, --ignore-tab-expansion 忽ç\95¥ç\94±å\88¶è¡¨ç¬¦å®½åº¦é\80 æ\88\90ç\9a\84å·®å¼\82"
-#: src/diff.c:893
-#, fuzzy
+#: src/diff.c:922
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space 忽略所有空格。"
+msgstr "-Z, --ignore-trailing-space 忽略每行末端的空格"
-#: src/diff.c:894
-#, fuzzy
+#: src/diff.c:923
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b --ignore-space-change 忽ç\95¥ç\94±ç©ºæ ¼æ\95°ä¸\8då\90\8cé\80 æ\88\90ç\9a\84å·®å¼\82ã\80\82"
+msgstr "-b, --ignore-space-change 忽ç\95¥ç\94±ç©ºæ ¼æ\95°ä¸\8då\90\8cé\80 æ\88\90ç\9a\84å·®å¼\82"
-#: src/diff.c:895
-#, fuzzy
+#: src/diff.c:924
msgid "-w, --ignore-all-space ignore all white space"
-msgstr "-w --ignore-all-space 忽略所有空格。"
+msgstr "-w, --ignore-all-space 忽略所有空格"
-#: src/diff.c:896
-#, fuzzy
+#: src/diff.c:925
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
-msgstr "-B --ignore-blank-lines 忽ç\95¥ä»»ä½\95å\9b 空è¡\8cè\80\8cé\80 æ\88\90ç\9a\84å·®å¼\82ã\80\82"
+msgstr "-B, --ignore-blank-lines 忽ç\95¥ä»»ä½\95å\9b 空è¡\8cè\80\8cé\80 æ\88\90ç\9a\84å·®å¼\82"
-#: src/diff.c:897
-#, fuzzy
+#: src/diff.c:926
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
-"-I RE --ignore-matching-lines=RE 如果某行匹配正则表达式,则忽略由该行造成的"
-"å·®å¼\82ã\80\82"
+"-I, --ignore-matching-lines=正则 若某行完全匹配 <正则>,则忽略由该行造成的差"
+"å¼\82"
-#: src/diff.c:899
-#, fuzzy
+#: src/diff.c:928
msgid "-a, --text treat all files as text"
-msgstr "-a --text 所有文件都以文本方式处理。"
+msgstr "-a, --text 所有文件都以文本方式处理"
-#: src/diff.c:900
-#, fuzzy
+#: src/diff.c:929
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr 去除输入内容每行末端的 carriage return 字符。"
+msgstr " --strip-trailing-cr 去除输入内容每行末端的回车(CR)字符"
-#: src/diff.c:902
-#, fuzzy
+#: src/diff.c:931
msgid " --binary read and write data in binary mode"
-msgstr "以二进制方式读写数据。"
+msgstr " --binary 以二进制方式读写数据"
-#: src/diff.c:905
-#, fuzzy
+#: src/diff.c:934
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
-msgstr "-D NAME --ifdef=NAME 输出的内容以‘#ifdef NAME’方式标明差异。"
+msgstr ""
+"-D, --ifdef=名称 输出的内容以 ‘#ifdef <名称>’ 方式标明差异"
-#: src/diff.c:906
-#, fuzzy
+#: src/diff.c:935
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
-msgstr ""
-"--GTYPE-group-format=GFMT 效果类似,但会以 GFMT 格式处理 GTYPE 输入的行。"
+msgstr " --GTYPE-group-format=GFMT 以 GFMT 格式处理 GTYPE 输入行组"
-#: src/diff.c:907
-#, fuzzy
+#: src/diff.c:936
msgid " --line-format=LFMT format all input lines with LFMT"
-msgstr "--line-format=LFMT 效果类似,但会以 LFMT 格式处理每一行资料。"
+msgstr " --line-format=LFMT 以 LFMT 格式处理每一行资料"
-#: src/diff.c:908
-#, fuzzy
+#: src/diff.c:937
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
-msgstr ""
-"--LTYPE-line-format=LFMT 效果类似,但会以 LFMT 格式处理 LTYPE 输入的行。"
+msgstr " --LTYPE-line-format=LFMT 以 LFMT 格式处理 LTYPE 输入的行"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
-#: src/diff.c:911
-#, fuzzy
+#: src/diff.c:940
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
-" LTYPE 可以是‘old’、‘new’或‘unchanged’。GTYPE 可以是 LTYPE 的选择\n"
-" 或是‘changed’。"
+" LTYPE 可以是 “old”、“new” 或 “unchanged”。GTYPE 可以是 LTYPE 的选择\n"
+" 或是 “changed”。"
-#: src/diff.c:912
-#, fuzzy
+#: src/diff.c:941
msgid ""
" GFMT (only) may contain:\n"
" %< lines from FILE1\n"
" M L+1\n"
" %(A=B?T:E) if A equals B then T else E"
msgstr ""
-" GFMT 可包括:\n"
-" %< 该组中每行属于 FILE1 的差异\n"
-" %> 该组中每行属于 FILE2 的差异\n"
-" %= 该组中同时在 FILE1 和 FILE2 出现的每一行\n"
+"(仅)GFMT 可包括:\n"
+" %< 该组中每行属于<文件1>的差异\n"
+" %> 该组中每行属于<文件2>的差异\n"
+" %= 该组中同时在<文件1>和<文件2>出现的每一行\n"
" %[-][宽度][.[精确度]]{doxX}字符 以 printf 格式表示该<字符>代表的内容\n"
" 大写<字符>表示属于新的文件,小写表示属于旧的文件。<字符>的意义如下:\n"
" F 行组中第一行的行号\n"
" L 行组中最后一行的行号\n"
" N 行数 ( =L-F+1 )\n"
" E F-1\n"
-" M L+1"
+" M L+1\n"
+" %(A=B?T:E) 如果 A 等于 B 那么 T 否则 E"
-#: src/diff.c:924
-#, fuzzy
+#: src/diff.c:953
msgid ""
" LFMT (only) may contain:\n"
" %L contents of line\n"
" %l contents of line, excluding any trailing newline\n"
" %[-][WIDTH][.[PREC]]{doxX}n printf-style spec for input line number"
msgstr ""
-" LFMT 可包括:\n"
+"(仅)LFMT 可包括:\n"
" %L 该行的内容\n"
-" %l 该行的内容,但不包括结束的 newline 字符\n"
-" %[-][宽度][.[精确度]]{doxX}n 以 printf æ ¼å¼\8f表示ç\9a\84è¾\93å\85¥èµ\84æ\96\99è¡\8cå\8f·"
+" %l 该行的内容,但不包括结束的换行符\n"
+" %[-][宽度][.[精确度]]{doxX}n 以 printf 格式表示的输入行号"
-#: src/diff.c:928
-#, fuzzy
+#: src/diff.c:957
msgid ""
" Both GFMT and LFMT may contain:\n"
" %% %\n"
" %c'\\OOO' the character with octal code OOO\n"
" C the character C (other characters represent themselves)"
msgstr ""
-" GFMT 或 LFMT 可包括:\n"
+" GFMT 或 LFMT 都可包括:\n"
" %% %\n"
-" %c'C' 字符 C\n"
-" %c'\\OOO' 八进制数字 OOO 所代表的字符"
+" %c'C' 单个字符 C\n"
+" %c'\\OOO' 八进制码 OOO 所代表的字符\n"
+" C 字符 C(处上述转义外的其他字符代表它们自身)"
-#: src/diff.c:934
-#, fuzzy
+#: src/diff.c:963
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr "-d --minimal 尽可能找出最小的差异。"
+msgstr "-d, --minimal 尽可能找出最小的差异。"
-#: src/diff.c:935
-#, fuzzy
+#: src/diff.c:964
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
-msgstr "--horizon-lines=NUM (此选项不做处理)"
+msgstr " --horizon-lines=数量 保持<数量>行的一致前后缀"
-#: src/diff.c:936
-#, fuzzy
+#: src/diff.c:965
msgid ""
" --speed-large-files assume large files and many scattered small changes"
-msgstr "-H --speed-large-files å\81\87设æ\96\87件å\8d\81å\88\86大è\80\8cä¸\94æ\96\87件ä¸å\90«æ\9c\89许å¤\9aå¾®å°\8fç\9a\84å·®å¼\82ã\80\82"
+msgstr " --speed-large-files å\81\87设æ\96\87件å\8d\81å\88\86大è\80\8cä¸\94æ\96\87件ä¸å\90«æ\9c\89许å¤\9aå¾®å°\8fç\9a\84å·®å¼\82"
-#: src/diff.c:938
-msgid " --help display this help and exit"
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:967
#, fuzzy
-msgid "-v, --version output version information and exit"
-msgstr "-v --version 输出版本信息。"
+msgid " or 'auto' (the default)"
+msgstr " --normal 以正常的 diff 方式输出 (默认)"
-#: src/diff.c:941
-#, fuzzy
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
msgstr ""
-"FILES 的格式可以是‘FILE1 FILE2’、‘DIR1 DIR2’、‘DIR FILE...’或\n"
-" ‘FILE... DIR’。"
-#: src/diff.c:942
+#: src/diff.c:971
+msgid " --help display this help and exit"
+msgstr " --help 显示此帮助信息并退出"
+
+#: src/diff.c:972
+msgid "-v, --version output version information and exit"
+msgstr "-v, --version 输出版本信息并退出"
+
+#: src/diff.c:974
#, fuzzy
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
+msgstr ""
+"<文件们> 的格式可以是‘文件1 文件2’、‘目录1 目录2’、‘目录 文件...’或\n"
+" ‘文件... 目录’。"
+
+#: src/diff.c:975
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
-msgstr "如果使用 --from-file 或 --to-file 选项,FILES 的格式则不受限制。"
+msgstr "如果使用 --from-file 或 --to-file 选项,<文件名> 的格式则不受限制。"
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
-#, fuzzy
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
msgid "If a FILE is '-', read standard input."
-msgstr "如果 FILE 是‘-’,则由标准输入读取内容。"
+msgstr "如果 FILE 是 “-”,则由标准输入读取内容。"
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
-msgstr "用法:%s [选项]... FILES\n"
+msgstr "用法:%s [选项]... 文件们\n"
-#: src/diff.c:954
-#, fuzzy
+#: src/diff.c:987
msgid "Compare FILES line by line."
-msgstr "逐行比较文件。"
+msgstr "逐行比较<文件们>。"
-#: src/diff.c:988
-#, fuzzy, c-format
+#: src/diff.c:1021
+#, c-format
msgid "conflicting %s option value '%s'"
msgstr "互相冲突的 %s 选项,参数值为 “%s”"
-#: src/diff.c:1001
-#, fuzzy, c-format
+#: src/diff.c:1034
+#, c-format
msgid "conflicting output style options"
-msgstr "互相冲突的输出选项 %s ,参数值为“%s”"
+msgstr "互相冲突的输出风格选项。"
+
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "无效的宽度 “%s”"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "只在 %s 存在:%s\n"
-#: src/diff.c:1192
-#, fuzzy
+#: src/diff.c:1240
msgid "cannot compare '-' to a directory"
msgstr "“-” 无法与目录作比较"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "-D 选项不支持目录使用"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "%s 和 %s 有共同的子目录\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "文件 %s 是%s而文件 %s 是%s\n"
-#: src/diff.c:1314
-#, fuzzy, c-format
+#: src/diff.c:1362
+#, c-format
msgid "Symbolic links %s and %s differ\n"
-msgstr "文件 %s 和 %s 不同\n"
+msgstr "软链接 %s 和 %s 不同\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "檔案 %s 和 %s 相同\n"
msgstr "不兼容的选项"
#: src/diff3.c:353
-#, fuzzy
msgid "'-' specified for more than one input file"
-msgstr "输入文件 “-” 不可多於一个"
+msgstr "“-”作输入文件不可多于一处"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "读取时失败"
#: src/diff3.c:428
-#, fuzzy
msgid "-A, --show-all output all changes, bracketing conflicts"
-msgstr "-A --show-all 输出所有要更改的部份,并括上互相冲突的地方。"
+msgstr "-A, --show-all 输出所有要更改的部份,并括上互相冲突的地方"
#: src/diff3.c:430
-#, fuzzy
msgid ""
"-e, --ed output ed script incorporating changes\n"
" from OLDFILE to YOURFILE into MYFILE"
msgstr ""
-"-e --ed 取出由 OLDFILE 至 YOURFILE 的更改部份,并输出可将此\n"
-" 改变套用至 MYFILE 的 ed script。"
+"-e, --ed 取出由 <旧文件> 至 <你的文件> 的更改部份,并输出"
+"可将此\n"
+" 改变应用至 <我的文件> 的 ed 脚本"
#: src/diff3.c:432
-#, fuzzy
msgid "-E, --show-overlap like -e, but bracket conflicts"
-msgstr "-E --show-overlap 输出未合并的更改部份,并括上互相冲突的地方。"
+msgstr "-E, --show-overlap 类似 -e,但括上互相冲突的地方"
#: src/diff3.c:433
-#, fuzzy
msgid ""
"-3, --easy-only like -e, but incorporate only nonoverlapping "
"changes"
-msgstr "-3 --easy-only 输出未合并而且不重叠的更改部份。"
+msgstr ""
+"-3, --easy-only 类似 -e,但只输出未合并而且不重叠的更改部份"
#: src/diff3.c:434
-#, fuzzy
msgid ""
"-x, --overlap-only like -e, but incorporate only overlapping changes"
-msgstr "-x --overlap-only 只输出重叠的更改部份。"
+msgstr "-x, --overlap-only 类似 -e,但只输出重叠的更改部份"
#: src/diff3.c:435
msgid "-X like -x, but bracket conflicts"
-msgstr ""
+msgstr "-X 类似 -x,但括上互相冲突的地方"
#: src/diff3.c:436
-#, fuzzy
msgid "-i append 'w' and 'q' commands to ed scripts"
-msgstr "-i 在 ed script 中附加‘w’和‘q’指令。"
+msgstr "-i 在 ed script 中附加‘w’和‘q’命令"
#: src/diff3.c:438
msgid ""
msgstr ""
#: src/diff3.c:441
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text 所有文件都以文本方式处理。"
+msgstr "-a --text 所有文件都以文本方式处理"
#: src/diff3.c:442
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr 去除输入内容每行末端的 carriage return 字符。"
+msgstr " --strip-trailing-cr 去除输入内容每行末端的回车(CR)字符"
#: src/diff3.c:443
-#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
-msgstr "-T --initial-tab 每行先加上 tab 字符,使 tab 字符可以对齐。"
+msgstr "-T --initial-tab 每行先加上 tab 字符,使 tab 字符可以对齐"
#: src/diff3.c:444
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
-msgstr "--diff-program=程序 用<程序>来比较文件。"
+msgstr " --diff-program=程序 用<程序>来比较文件"
#: src/diff3.c:445
msgid ""
#: src/diff3.c:448
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help 显示此帮助信息并退出"
#: src/diff3.c:449
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version 输出版本信息。"
+msgstr "-v, --version 输出版本信息并退出"
#: src/diff3.c:458
#, c-format
msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n"
-msgstr "用法:%s [选项]... MYFILE OLDFILE YOURFILE\n"
+msgstr "用法:%s [选项]... 我的文件 旧文件 你的文件\n"
#: src/diff3.c:460
msgid "Compare three files line by line."
msgid "invalid diff format; invalid change separator"
msgstr "无效的 diff 格式;表示内容改变的分隔字符串无效"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "无效的 diff 格式;最后一行不完整"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
-#, fuzzy, c-format
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
+#, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "无法调用辅助程序 “%s”"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "无效的 diff 格式;错误的行前导字符"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "内部错误:传递给输出的 diff 类型无效"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "输入文件缩小"
-#: src/dir.c:158
-#, fuzzy, c-format
+#: src/dir.c:156
+#, c-format
msgid "cannot compare file names '%s' and '%s'"
-msgstr "æ\97 æ³\95æ¯\94è¾\83æ\96\87件å\90\8d â\80\9c%sâ\80\9c å\92\8c â\80\9d%sâ\80\9c"
+msgstr "æ\97 æ³\95æ¯\94è¾\83æ\96\87件å\90\8d â\80\9c%sâ\80\9d å\92\8c â\80\9c%sâ\80\9d"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
-msgstr ""
+msgstr "%s:递归目录循环"
#. This is a proper name. See the gettext manual, section Names.
#: src/sdiff.c:42
msgstr ""
#: src/sdiff.c:173
-#, fuzzy
msgid ""
"-o, --output=FILE operate interactively, sending output to FILE"
-msgstr "-o 文件 --output=文件 交互式操作,并将结果写入至<文件>。"
+msgstr "-o, --output=文件 交互式操作,并将结果写入至<文件>"
#: src/sdiff.c:175
-#, fuzzy
msgid ""
"-i, --ignore-case consider upper- and lower-case to be the same"
-msgstr "-i --ignore-case 忽略大写和小写的区别。"
+msgstr "-i, --ignore-case 忽略大小写的区别。"
#: src/sdiff.c:176
-#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
-msgstr "-E --ignore-tab-expansion 忽ç\95¥ç\94±å\88¶è¡¨ç¬¦å®½åº¦é\80 æ\88\90ç\9a\84å·®å¼\82ã\80\82"
+msgstr "-E, --ignore-tab-expansion 忽ç\95¥ç\94±å\88¶è¡¨ç¬¦å®½åº¦é\80 æ\88\90ç\9a\84å·®å¼\82"
#: src/sdiff.c:177
-#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
-msgstr "-w --ignore-all-space 忽略所有空格。"
+msgstr "-Z, --ignore-trailing-space 忽略行末的空格字符"
#: src/sdiff.c:178
-#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
-msgstr "-b --ignore-space-change 忽ç\95¥ç\94±ç©ºæ ¼æ\95°ä¸\8då\90\8cé\80 æ\88\90ç\9a\84å·®å¼\82ã\80\82"
+msgstr "-b, --ignore-space-change 忽ç\95¥ç\94±ç©ºæ ¼æ\95°ä¸\8då\90\8cé\80 æ\88\90ç\9a\84å·®å¼\82"
#: src/sdiff.c:179
-#, fuzzy
msgid "-W, --ignore-all-space ignore all white space"
-msgstr "-W --ignore-all-space 忽略所有空白字符。"
+msgstr "-W, --ignore-all-space 忽略所有空白字符"
#: src/sdiff.c:180
-#, fuzzy
msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank"
-msgstr "-B --ignore-blank-lines 忽ç\95¥ä»»ä½\95å\9b 空è¡\8cè\80\8cé\80 æ\88\90ç\9a\84å·®å¼\82ã\80\82"
+msgstr "-B, --ignore-blank-lines 忽ç\95¥ä»»ä½\95å\9b 空è¡\8cè\80\8cé\80 æ\88\90ç\9a\84å·®å¼\82"
#: src/sdiff.c:181
-#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE"
msgstr ""
-"-I RE --ignore-matching-lines=RE 如果某行匹配正则表达式,则忽略由该行造成的"
-"å·®å¼\82ã\80\82"
+"-I, --ignore-matching-lines=正则 若某行完全匹配 <正则>,则忽略由该行造成的差"
+"å¼\82"
#: src/sdiff.c:182
-#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
-msgstr "--strip-trailing-cr 去除输入内容每行末端的 carriage return 字符。"
+msgstr " --strip-trailing-cr 去除输入内容每行末端的回车(CR)字符"
#: src/sdiff.c:183
-#, fuzzy
msgid "-a, --text treat all files as text"
-msgstr "-a --text 所有文件都以文本方式处理。"
+msgstr "-a --text 所有文件都以文本方式处理"
#: src/sdiff.c:185
-#, fuzzy
msgid ""
"-w, --width=NUM output at most NUM (default 130) print columns"
-msgstr "-w NUM --width=NUM 每行显示最多 NUM(默认 130)个字符。"
+msgstr "-W, --width=数量 每行显示最多 <数量>(默认 130)个字符"
#: src/sdiff.c:186
-#, fuzzy
msgid ""
"-l, --left-column output only the left column of common lines"
-msgstr "-l --left-column 当有两行相同时只显示左边的一行。"
+msgstr "-l, --left-column 当有两行相同时只显示左栏的一行"
#: src/sdiff.c:187
-#, fuzzy
msgid "-s, --suppress-common-lines do not output common lines"
-msgstr "-s --suppress-common-lines 当有两行相同时不显示。"
+msgstr "-s, --suppress-common-lines 当有两行相同时不显示"
#: src/sdiff.c:189
-#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
-msgstr "-t --expand-tabs 将输出中的 tab 转换成空格。"
+msgstr "-t, --expand-tabs 将输出中的 tab 转换成空格"
#: src/sdiff.c:190
-#, fuzzy
msgid ""
" --tabsize=NUM tab stops at every NUM (default 8) print columns"
-msgstr "--tabsize=NUM 定位字符 (tab) 的宽度,默认为 8 个空格宽。"
+msgstr " --tabsize=数字 TAB 格的宽度,默认为 8 个打印列宽"
#: src/sdiff.c:192
-#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
-msgstr "-d --minimal 尽可能找出最小的差异。"
+msgstr "-d, --minimal 尽可能找出最小的差异集"
#: src/sdiff.c:193
-#, fuzzy
msgid ""
"-H, --speed-large-files assume large files, many scattered small changes"
-msgstr "-H --speed-large-files 假设文件十分大而且文件中含有许多微小的差异。"
+msgstr ""
+"-H, --speed-large-files 假设文件十分大而且文件中含有许多微小的差异"
#: src/sdiff.c:194
-#, fuzzy
msgid " --diff-program=PROGRAM use PROGRAM to compare files"
-msgstr "--diff-program=程序 用<程序>来比较文件。"
+msgstr " --diff-program=程序 用<程序>来比较文件"
#: src/sdiff.c:196
msgid " --help display this help and exit"
-msgstr ""
+msgstr " --help 显示此帮助信息并退出"
#: src/sdiff.c:197
-#, fuzzy
msgid "-v, --version output version information and exit"
-msgstr "-v --version 输出版本信息。"
+msgstr "-v, --version 输出版本信息并退出"
#: src/sdiff.c:206
#, c-format
msgstr "用法:%s [选项]... 文件1 文件2\n"
#: src/sdiff.c:208
-#, fuzzy
msgid "Side-by-side merge of differences between FILE1 and FILE2."
msgstr "以并排方式合并文件之间的差异。"
#: src/sdiff.c:329
msgid "cannot interactively merge standard input"
-msgstr "ä¸\8då\85\81許以交互方式合并标准输入的内容"
+msgstr "ä¸\8då\85\81许以交互方式合并标准输入的内容"
#: src/sdiff.c:595
msgid "both files to be compared are directories"
msgstr "两个要被比较的文件都是目录"
#: src/sdiff.c:818
-#, fuzzy
msgid ""
"ed:\tEdit then use both versions, each decorated with a header.\n"
"eb:\tEdit then use both versions.\n"
"v:\tVerbosely include common lines.\n"
"q:\tQuit.\n"
msgstr ""
-"ed:\t编辑兩边的版本合并后的内容,各版本分别加上首部以识别。\n"
-"eb:\t编辑兩边的版本合并后的内容。\n"
-"el:\t使用左边的版本来进行编辑。\n"
-"er:\t使用右边的版本来进行编辑。\n"
-"e :\t编辑新的版本。\n"
-"l :\t使用左边的版本。\n"
-"r :\t使用右边的版本。\n"
-"s :\t加上两边一样的行时不在输出上显示。\n"
-"v :\t加上两边一样的行时会在输出上显示。\n"
-"q :\t退出。\n"
+"ed:编辑然后同时使用两边的版本,各版本分别加上标头以识别。\n"
+"eb:编辑然后同时使用两边的版本。\n"
+"el 或 e1:编辑然后使用左边的版本。\n"
+"er 或 e2:编辑然后使用右边的版本。\n"
+"e :丢弃两者然后编辑新的版本。\n"
+"l 或 1:使用左边的版本。\n"
+"r 或 2:使用右边的版本。\n"
+"s :加上两边一样的行时不在输出上显示。\n"
+"v :加上两边一样的行时会在输出上显示。\n"
+"q :退出。\n"
+
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s:选项 “--%s” 无法识别\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
#~ msgid "%s: illegal option -- %c\n"
#~ msgstr "%s:非法选项 -- %c\n"
msgstr ""
"Project-Id-Version: diffutils 2.8.7\n"
"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n"
-"POT-Creation-Date: 2013-03-24 11:05-0700\n"
+"POT-Creation-Date: 2016-08-08 10:12-0700\n"
"PO-Revision-Date: 2005-04-01 14:31+0800\n"
"Last-Translator: Abel Cheung <maddog@linux.org.hk>\n"
"Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+#: lib/argmatch.c:133
+#, fuzzy, c-format
+msgid "invalid argument %s for %s"
+msgstr "無效的 --bytes 值 ‘%s’"
+
+#: lib/argmatch.c:134
+#, c-format
+msgid "ambiguous argument %s for %s"
+msgstr ""
+
+#: lib/argmatch.c:153
+#, fuzzy
+msgid "Valid arguments are:"
+msgstr "無效的 --bytes 值 ‘%s’"
+
#: lib/c-stack.c:204 lib/c-stack.c:297
msgid "program error"
msgstr "程式錯誤"
msgid "stack overflow"
msgstr "堆疊溢位"
-#: lib/error.c:188
+#: lib/error.c:191
msgid "Unknown system error"
msgstr "不明的系統錯誤"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular empty file"
msgstr "普通空白檔案"
-#: lib/file-type.c:38
+#: lib/file-type.c:40
msgid "regular file"
msgstr "普通檔案"
-#: lib/file-type.c:41
+#: lib/file-type.c:43
msgid "directory"
msgstr "目錄"
-#: lib/file-type.c:44
-msgid "block special file"
-msgstr "區塊特殊檔案"
-
-#: lib/file-type.c:47
-msgid "character special file"
-msgstr "字元特殊檔案"
-
-#: lib/file-type.c:50
-msgid "fifo"
-msgstr "fifo"
-
-#: lib/file-type.c:53
+#: lib/file-type.c:46
msgid "symbolic link"
msgstr "符號連結"
-#: lib/file-type.c:56
-msgid "socket"
-msgstr "socket"
-
-#: lib/file-type.c:59
+#: lib/file-type.c:52
msgid "message queue"
msgstr "訊息佇列"
-#: lib/file-type.c:62
+#: lib/file-type.c:55
msgid "semaphore"
msgstr "semaphore"
-#: lib/file-type.c:65
+#: lib/file-type.c:58
msgid "shared memory object"
msgstr "分享記憶物件"
-#: lib/file-type.c:68
+#: lib/file-type.c:61
msgid "typed memory object"
msgstr "分類記憶物件"
-#: lib/file-type.c:70
+#: lib/file-type.c:66
+msgid "block special file"
+msgstr "區塊特殊檔案"
+
+#: lib/file-type.c:69
+msgid "character special file"
+msgstr "字元特殊檔案"
+
+#: lib/file-type.c:72
+msgid "contiguous data"
+msgstr ""
+
+#: lib/file-type.c:75
+msgid "fifo"
+msgstr "fifo"
+
+#: lib/file-type.c:78
+msgid "door"
+msgstr ""
+
+#: lib/file-type.c:81
+#, fuzzy
+msgid "multiplexed block special file"
+msgstr "區塊特殊檔案"
+
+#: lib/file-type.c:84
+#, fuzzy
+msgid "multiplexed character special file"
+msgstr "字元特殊檔案"
+
+#: lib/file-type.c:87
+msgid "multiplexed file"
+msgstr ""
+
+#: lib/file-type.c:90
+#, fuzzy
+msgid "named file"
+msgstr "不尋常的檔案"
+
+#: lib/file-type.c:93
+#, fuzzy
+msgid "network special file"
+msgstr "區塊特殊檔案"
+
+#: lib/file-type.c:96
+msgid "migrated file with data"
+msgstr ""
+
+#: lib/file-type.c:99
+msgid "migrated file without data"
+msgstr ""
+
+#: lib/file-type.c:102
+msgid "port"
+msgstr ""
+
+#: lib/file-type.c:105
+msgid "socket"
+msgstr "socket"
+
+#: lib/file-type.c:108
+msgid "whiteout"
+msgstr ""
+
+#: lib/file-type.c:110
msgid "weird file"
msgstr "不尋常的檔案"
-#: lib/getopt.c:547 lib/getopt.c:576
+#: lib/getopt.c:575 lib/getopt.c:604
#, fuzzy, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s:選項‘%s’是不明確的\n"
-#: lib/getopt.c:624 lib/getopt.c:628
+#: lib/getopt.c:619
+#, fuzzy, c-format
+msgid "%s: option '%s' is ambiguous\n"
+msgstr "%s:選項‘-W %s’是不明確的\n"
+
+#: lib/getopt.c:654 lib/getopt.c:658
#, fuzzy, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s:選項‘--%s’不可配合參數使用\n"
-#: lib/getopt.c:637 lib/getopt.c:642
+#: lib/getopt.c:667 lib/getopt.c:672
#, fuzzy, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s:選項‘%c%s’不可配合參數使用\n"
-#: lib/getopt.c:685 lib/getopt.c:704
+#: lib/getopt.c:715 lib/getopt.c:734
#, fuzzy, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s:選項‘%s’需要參數\n"
-#: lib/getopt.c:742 lib/getopt.c:745
+#: lib/getopt.c:772 lib/getopt.c:775
#, fuzzy, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s:無法識別的選項‘--%s’\n"
-#: lib/getopt.c:753 lib/getopt.c:756
+#: lib/getopt.c:783 lib/getopt.c:786
#, fuzzy, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s:無法識別的選項‘%c%s’\n"
-#: lib/getopt.c:805 lib/getopt.c:808
+#: lib/getopt.c:835 lib/getopt.c:838
#, fuzzy, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s:無效的選項 ─ %c\n"
-#: lib/getopt.c:861 lib/getopt.c:878 lib/getopt.c:1088 lib/getopt.c:1106
+#: lib/getopt.c:891 lib/getopt.c:908 lib/getopt.c:1118 lib/getopt.c:1136
#, fuzzy, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s:選項需要參數 ─ %c\n"
-#: lib/getopt.c:934 lib/getopt.c:950
+#: lib/getopt.c:964 lib/getopt.c:980
#, fuzzy, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s:選項‘-W %s’是不明確的\n"
-#: lib/getopt.c:974 lib/getopt.c:992
+#: lib/getopt.c:1004 lib/getopt.c:1022
#, fuzzy, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s:選項‘-W %s’不可配合參數使用\n"
-#: lib/getopt.c:1013 lib/getopt.c:1031
+#: lib/getopt.c:1043 lib/getopt.c:1061
#, fuzzy, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s:選項‘%s’需要參數\n"
#. If you don't know what to put here, please see
#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
#. and use glyphs suitable for your language.
-#: lib/quotearg.c:312
+#: lib/quotearg.c:347
msgid "`"
msgstr ""
-#: lib/quotearg.c:313
+#: lib/quotearg.c:348
msgid "'"
msgstr ""
-#: lib/regcomp.c:131
+#: lib/regcomp.c:135
msgid "Success"
msgstr "成功"
-#: lib/regcomp.c:134
+#: lib/regcomp.c:138
msgid "No match"
msgstr "沒有符合的字串"
-#: lib/regcomp.c:137
+#: lib/regcomp.c:141
msgid "Invalid regular expression"
msgstr "不正確的正規表示式"
-#: lib/regcomp.c:140
+#: lib/regcomp.c:144
msgid "Invalid collation character"
msgstr "無效的 collation 字元"
-#: lib/regcomp.c:143
+#: lib/regcomp.c:147
msgid "Invalid character class name"
msgstr "無效的字元種類名稱"
-#: lib/regcomp.c:146
+#: lib/regcomp.c:150
msgid "Trailing backslash"
msgstr "末端有多餘的反斜號"
-#: lib/regcomp.c:149
+#: lib/regcomp.c:153
msgid "Invalid back reference"
msgstr "無效的 back reference"
-#: lib/regcomp.c:152
-msgid "Unmatched [ or [^"
+#: lib/regcomp.c:156
+#, fuzzy
+msgid "Unmatched [, [^, [:, [., or [="
msgstr "沒有對應的 [ 或 [^"
-#: lib/regcomp.c:155
+#: lib/regcomp.c:159
msgid "Unmatched ( or \\("
msgstr "沒有對應的 ( 或 \\("
-#: lib/regcomp.c:158
+#: lib/regcomp.c:162
msgid "Unmatched \\{"
msgstr "沒有對應的 \\{"
-#: lib/regcomp.c:161
+#: lib/regcomp.c:165
msgid "Invalid content of \\{\\}"
msgstr "\\{\\} 中的內容無效"
-#: lib/regcomp.c:164
+#: lib/regcomp.c:168
msgid "Invalid range end"
msgstr "範圍末端字元無效"
-#: lib/regcomp.c:167
+#: lib/regcomp.c:171
msgid "Memory exhausted"
msgstr "記憶體耗盡"
-#: lib/regcomp.c:170
+#: lib/regcomp.c:174
msgid "Invalid preceding regular expression"
msgstr "之前的正規表示式無效"
-#: lib/regcomp.c:173
+#: lib/regcomp.c:177
msgid "Premature end of regular expression"
msgstr "正規表示式過早結束"
-#: lib/regcomp.c:176
+#: lib/regcomp.c:180
msgid "Regular expression too big"
msgstr "正規表示式過長"
-#: lib/regcomp.c:179
+#: lib/regcomp.c:183
msgid "Unmatched ) or \\)"
msgstr "沒有對應的 ) 或 \\)"
-#: lib/regcomp.c:704
+#: lib/regcomp.c:687
msgid "No previous regular expression"
msgstr "之前沒有任何正規表示式"
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
msgstr ""
-#: src/analyze.c:459 src/diff.c:1343
+#: src/analyze.c:454 src/diff.c:1393
#, c-format
msgid "Files %s and %s differ\n"
msgstr "檔案 %s 與 %s 不同\n"
-#: src/analyze.c:462
+#: src/analyze.c:455
#, c-format
msgid "Binary files %s and %s differ\n"
msgstr "二元碼檔 %s 與 %s 不同\n"
-#: src/analyze.c:713 src/diff3.c:1416 src/util.c:663
+#: src/analyze.c:697 src/diff3.c:1417 src/util.c:1257
msgid "No newline at end of file"
msgstr "檔案末沒有 newline 字元"
msgid "David MacKenzie"
msgstr ""
-#: src/cmp.c:118 src/diff.c:839 src/diff3.c:414 src/sdiff.c:158
+#: src/cmp.c:118 src/diff.c:868 src/diff3.c:414 src/sdiff.c:158
#, fuzzy, c-format
msgid "Try '%s --help' for more information."
msgstr "請嘗試‘%s --help’來獲取更多資訊。"
msgid "options -l and -s are incompatible"
msgstr "-l 和 -s 選項不兼容"
-#: src/cmp.c:155 src/diff.c:848 src/diff3.c:422 src/sdiff.c:167
-#: src/sdiff.c:315 src/sdiff.c:322 src/sdiff.c:874 src/util.c:278
-#: src/util.c:375 src/util.c:382
+#: src/cmp.c:155 src/diff.c:877 src/diff3.c:422 src/sdiff.c:167 src/sdiff.c:315
+#: src/sdiff.c:322 src/sdiff.c:874 src/util.c:855 src/util.c:955 src/util.c:962
msgid "write failed"
msgstr "寫入失敗"
-#: src/cmp.c:157 src/diff.c:850 src/diff.c:1408 src/diff3.c:424
-#: src/sdiff.c:169
+#: src/cmp.c:157 src/diff.c:879 src/diff.c:1458 src/diff3.c:424 src/sdiff.c:169
msgid "standard output"
msgstr "標準輸出"
"at the beginning of each file (zero by default)."
msgstr "SKIP1 和 SKIP2 是每個檔案會略過的位元組數目。"
-#: src/cmp.c:185 src/diff.c:956 src/diff3.c:462 src/sdiff.c:210
+#: src/cmp.c:185 src/diff.c:989 src/diff3.c:462 src/sdiff.c:210
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
msgid "If a FILE is '-' or missing, read standard input."
msgstr "如果檔案是‘-’或沒有指定,則由標準輸入讀入資料。"
-#: src/cmp.c:195 src/diff.c:944 src/sdiff.c:220
+#: src/cmp.c:195 src/diff.c:977 src/sdiff.c:220
msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."
msgstr "如果兩邊內容一樣,回傳值是 0;1 代表兩邊內容不相同,2 代表有錯誤。"
msgid "invalid --bytes value '%s'"
msgstr "無效的 --bytes 值 ‘%s’"
-#: src/cmp.c:266 src/diff.c:757 src/diff3.c:318 src/sdiff.c:565
+#: src/cmp.c:266 src/diff.c:786 src/diff3.c:318 src/sdiff.c:565
#, fuzzy, c-format
msgid "missing operand after '%s'"
msgstr "‘%s’後缺少了參數"
-#: src/cmp.c:278 src/diff.c:759 src/diff3.c:320 src/sdiff.c:567
+#: src/cmp.c:278 src/diff.c:788 src/diff3.c:320 src/sdiff.c:567
#, fuzzy, c-format
msgid "extra operand '%s'"
msgstr "多餘的參數‘%s’"
-#: src/cmp.c:491
+#: src/cmp.c:494
#, c-format
msgid "%s %s differ: byte %s, line %s\n"
msgstr "%s %s 不同:第 %s 位元組,第 %s 行\n"
-#: src/cmp.c:507
+#: src/cmp.c:510
#, c-format
msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n"
msgstr "%s %s 不同:第 %s 行,第 %s 位元組為 %3o %s %3o %s\n"
-#: src/cmp.c:559
+#: src/cmp.c:562
#, c-format
msgid "cmp: EOF on %s\n"
msgstr "cmp:%s 已結束\n"
msgid "Len Tower"
msgstr ""
-#: src/diff.c:339
+#: src/diff.c:351
#, fuzzy, c-format
msgid "invalid context length '%s'"
msgstr "無效的上下文行數‘%s’"
-#: src/diff.c:422
+#: src/diff.c:434
#, c-format
msgid "pagination not supported on this host"
msgstr "此系統不支援分頁"
-#: src/diff.c:437 src/diff3.c:300
+#: src/diff.c:449 src/diff3.c:300
#, c-format
msgid "too many file label options"
msgstr "太多有關檔案標籤的選項"
-#: src/diff.c:514
+#: src/diff.c:526
#, fuzzy, c-format
msgid "invalid width '%s'"
msgstr "無效的寬度‘%s’"
-#: src/diff.c:518
+#: src/diff.c:530
msgid "conflicting width options"
msgstr "出現互相抵觸的寬度選項"
-#: src/diff.c:543
+#: src/diff.c:555
#, fuzzy, c-format
msgid "invalid horizon length '%s'"
msgstr "無效的水平長度 ‘%s’"
-#: src/diff.c:598
+#: src/diff.c:611
#, fuzzy, c-format
msgid "invalid tabsize '%s'"
msgstr "無效的定位字元寬度 ‘%s’"
-#: src/diff.c:602
+#: src/diff.c:615
msgid "conflicting tabsize options"
msgstr "出現互相抵觸的定位字元寬度選項"
-#: src/diff.c:734
+#: src/diff.c:763
msgid "--from-file and --to-file both specified"
msgstr "同時指定了 --from-file 及 --to-file 選項"
-#: src/diff.c:854
+#: src/diff.c:883
#, fuzzy
msgid " --normal output a normal diff (the default)"
msgstr "--normal 以正常的 diff 方式輸出。"
-#: src/diff.c:855
+#: src/diff.c:884
#, fuzzy
msgid "-q, --brief report only when files differ"
msgstr "-q --brief 只顯示檔案是否不同。"
-#: src/diff.c:856
+#: src/diff.c:885
#, fuzzy
msgid "-s, --report-identical-files report when two files are the same"
msgstr "-s --report-identical-files 當兩個檔案一樣時仍然顯示結果。"
-#: src/diff.c:857
+#: src/diff.c:886
msgid ""
"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context"
msgstr ""
-#: src/diff.c:858
+#: src/diff.c:887
#, fuzzy
msgid ""
"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context"
msgstr "-w NUM --width=NUM 每行顯示最多 NUM(預設 130)個字元。"
-#: src/diff.c:859
+#: src/diff.c:888
#, fuzzy
msgid "-e, --ed output an ed script"
msgstr "-e --ed 以 ed script 方式輸出。"
-#: src/diff.c:860
+#: src/diff.c:889
#, fuzzy
msgid "-n, --rcs output an RCS format diff"
msgstr "-n --rcs 以 RCS diff 格式輸出。"
-#: src/diff.c:861
+#: src/diff.c:890
msgid "-y, --side-by-side output in two columns"
msgstr ""
-#: src/diff.c:862
+#: src/diff.c:891
#, fuzzy
msgid ""
"-W, --width=NUM output at most NUM (default 130) print columns"
msgstr "-w NUM --width=NUM 每行顯示最多 NUM(預設 130)個字元。"
-#: src/diff.c:863
+#: src/diff.c:892
#, fuzzy
msgid ""
" --left-column output only the left column of common lines"
msgstr "-l --left-column 當有兩行相同時只顯示左邊的一行。"
-#: src/diff.c:864
+#: src/diff.c:893
#, fuzzy
msgid " --suppress-common-lines do not output common lines"
msgstr "-s --suppress-common-lines 當有兩行相同時不會顯示。"
-#: src/diff.c:866
+#: src/diff.c:895
msgid "-p, --show-c-function show which C function each change is in"
msgstr ""
-#: src/diff.c:867
+#: src/diff.c:896
msgid "-F, --show-function-line=RE show the most recent line matching RE"
msgstr ""
-#: src/diff.c:868
+#: src/diff.c:897
+#, fuzzy
msgid ""
-" --label LABEL use LABEL instead of file name\n"
+" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"
msgstr ""
+"--from-file=FILE1 將 FILE1 和參數中的所有檔案/目錄作比較。FILE1 可以是目錄。"
-#: src/diff.c:871
+#: src/diff.c:900
#, fuzzy
msgid "-t, --expand-tabs expand tabs to spaces in output"
msgstr "-t --expand-tabs 將輸出中的 tab 換成空格。"
-#: src/diff.c:872
+#: src/diff.c:901
#, fuzzy
msgid "-T, --initial-tab make tabs line up by prepending a tab"
msgstr "-T --initial-tab 每行先加上 tab 字元,使 tab 字元可以對齊。"
-#: src/diff.c:873
+#: src/diff.c:902
#, fuzzy
msgid ""
" --tabsize=NUM tab stops every NUM (default 8) print columns"
msgstr "--tabsize=NUM 定位字元 (tab) 的寬度,預設為 8 個空格。"
-#: src/diff.c:874
+#: src/diff.c:903
msgid ""
" --suppress-blank-empty suppress space or tab before empty output lines"
msgstr ""
-#: src/diff.c:875
+#: src/diff.c:904
#, fuzzy
msgid "-l, --paginate pass output through 'pr' to paginate it"
msgstr "-l --paginate 將輸出送至‘pr’指令來分頁。"
-#: src/diff.c:877
+#: src/diff.c:906
#, fuzzy
msgid ""
"-r, --recursive recursively compare any subdirectories found"
msgstr "-r --recursive 連同所有副目錄一起比較。"
-#: src/diff.c:878
+#: src/diff.c:907
msgid " --no-dereference don't follow symbolic links"
msgstr ""
-#: src/diff.c:879
+#: src/diff.c:908
#, fuzzy
msgid "-N, --new-file treat absent files as empty"
msgstr "-N --new-file 不存在的檔案以空白檔案方式處理。"
-#: src/diff.c:880
+#: src/diff.c:909
#, fuzzy
msgid " --unidirectional-new-file treat absent first files as empty"
msgstr "--unidirectional-new-file 若第一個檔案不存在,以空白檔案處理。"
-#: src/diff.c:881
+#: src/diff.c:910
#, fuzzy
msgid " --ignore-file-name-case ignore case when comparing file names"
msgstr "--ignore-file-name-case 當比較檔案名稱時不分辨大小寫。"
-#: src/diff.c:882
+#: src/diff.c:911
#, fuzzy
msgid " --no-ignore-file-name-case consider case when comparing file names"
msgstr "--no-ignore-file-name-case 當比較檔案名稱時會分辨大小寫。"
-#: src/diff.c:883
+#: src/diff.c:912
#, fuzzy
msgid "-x, --exclude=PAT exclude files that match PAT"
msgstr "-x PAT --exclude=PAT 排除樣式為 PAT 的檔案。"
-#: src/diff.c:884
+#: src/diff.c:913
#, fuzzy
msgid ""
"-X, --exclude-from=FILE exclude files that match any pattern in FILE"
msgstr "-X FILE --exclude-from=FILE 排除所有在 FILE 中列出的樣式的檔案。"
-#: src/diff.c:885
+#: src/diff.c:914
#, fuzzy
msgid ""
"-S, --starting-file=FILE start with FILE when comparing directories"
msgstr "-S FILE --starting-file=FILE 當比較目錄時,由 FILE 開始比較。"
-#: src/diff.c:886
+#: src/diff.c:915
#, fuzzy
msgid ""
" --from-file=FILE1 compare FILE1 to all operands;\n"
msgstr ""
"--from-file=FILE1 將 FILE1 和參數中的所有檔案/目錄作比較。FILE1 可以是目錄。"
-#: src/diff.c:888
+#: src/diff.c:917
#, fuzzy
msgid ""
" --to-file=FILE2 compare all operands to FILE2;\n"
msgstr ""
"--to-file=FILE2 將參數中的所有檔案/目錄和 FILE2 作比較。FILE2 可以是目錄。"
-#: src/diff.c:891
+#: src/diff.c:920
#, fuzzy
msgid ""
"-i, --ignore-case ignore case differences in file contents"
msgstr "-i --ignore-case 不分辨檔案內容中的大小寫。"
-#: src/diff.c:892
+#: src/diff.c:921
#, fuzzy
msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion"
msgstr "-E --ignore-tab-expansion 忽略因將 tab 轉換為空格而造成的差異。"
-#: src/diff.c:893
+#: src/diff.c:922
#, fuzzy
msgid "-Z, --ignore-trailing-space ignore white space at line end"
msgstr "-w --ignore-all-space 忽略所有空白字元。"
-#: src/diff.c:894
+#: src/diff.c:923
#, fuzzy
msgid ""
"-b, --ignore-space-change ignore changes in the amount of white space"
msgstr "-b --ignore-space-change 忽略因空白字元數目不同而造成的差異。"
-#: src/diff.c:895
+#: src/diff.c:924
#, fuzzy
msgid "-w, --ignore-all-space ignore all white space"
msgstr "-w --ignore-all-space 忽略所有空白字元。"
-#: src/diff.c:896
+#: src/diff.c:925
#, fuzzy
msgid ""
"-B, --ignore-blank-lines ignore changes where lines are all blank"
msgstr "-B --ignore-blank-lines 忽略任何因空行而造成的差異。"
-#: src/diff.c:897
+#: src/diff.c:926
#, fuzzy
msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE"
msgstr ""
"-I RE --ignore-matching-lines=RE 忽略任何符合指定的<正規表示式>的地方。"
-#: src/diff.c:899
+#: src/diff.c:928
#, fuzzy
msgid "-a, --text treat all files as text"
msgstr "-a --text 所有檔案都以文字檔方式處理。"
-#: src/diff.c:900
+#: src/diff.c:929
#, fuzzy
msgid " --strip-trailing-cr strip trailing carriage return on input"
msgstr "--strip-trailing-cr 去除輸入資料每行末端的 carriage return 字元。"
-#: src/diff.c:902
+#: src/diff.c:931
#, fuzzy
msgid " --binary read and write data in binary mode"
msgstr "--binary 以二元碼檔模式讀寫資料。"
-#: src/diff.c:905
+#: src/diff.c:934
#, fuzzy
msgid ""
"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs"
msgstr "-D NAME --ifdef=NAME 輸出的資料以‘#ifdef NAME’方式標明差異。"
-#: src/diff.c:906
+#: src/diff.c:935
#, fuzzy
msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT"
msgstr ""
"--GTYPE-group-format=GFMT 效果類似,但會以 GFMT 格式處理 GTYPE 輸入行組。"
-#: src/diff.c:907
+#: src/diff.c:936
#, fuzzy
msgid " --line-format=LFMT format all input lines with LFMT"
msgstr "--line-format=LFMT 效果類似,但會以 LFMT 格式處理每一行資料。"
-#: src/diff.c:908
+#: src/diff.c:937
#, fuzzy
msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT"
msgstr ""
"--LTYPE-line-format=LFMT 效果類似,但會以 LFMT 格式處理 LTYPE 輸入行組。"
-#: src/diff.c:909
+#: src/diff.c:938
msgid ""
" These format options provide fine-grained control over the output\n"
" of diff, generalizing -D/--ifdef."
msgstr ""
-#: src/diff.c:911
+#: src/diff.c:940
#, fuzzy
msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'."
msgstr ""
" LTYPE 可以是‘old’、‘new’或‘unchanged’。GTYPE 可以是 LTYPE 的選擇\n"
" 或是‘changed’。"
-#: src/diff.c:912
+#: src/diff.c:941
#, fuzzy
msgid ""
" GFMT (only) may contain:\n"
" E F-1\n"
" M L+1"
-#: src/diff.c:924
+#: src/diff.c:953
#, fuzzy
msgid ""
" LFMT (only) may contain:\n"
" %l 該行的內容,但不包括結束的 newline 字元\n"
" %[-][寬度][.[精確度]]{doxX}n 以 printf 格式表示的輸入資料行號"
-#: src/diff.c:928
+#: src/diff.c:957
#, fuzzy
msgid ""
" Both GFMT and LFMT may contain:\n"
" %c'C' 字元 C\n"
" %c'\\OOO' 八進位數字 OOO 所代表的字元"
-#: src/diff.c:934
+#: src/diff.c:963
#, fuzzy
msgid "-d, --minimal try hard to find a smaller set of changes"
msgstr "-d --minimal 盡可能找出最小的差異。"
-#: src/diff.c:935
+#: src/diff.c:964
#, fuzzy
msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix"
msgstr "--horizon-lines=NUM (此選項不作處理)"
-#: src/diff.c:936
+#: src/diff.c:965
#, fuzzy
msgid ""
" --speed-large-files assume large files and many scattered small changes"
msgstr "-H --speed-large-files 假設檔案十分大而且當中含有許多些微的差異。"
-#: src/diff.c:938
+#: src/diff.c:966
+msgid ""
+" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"
+msgstr ""
+
+#: src/diff.c:967
+#, fuzzy
+msgid " or 'auto' (the default)"
+msgstr "--normal 以正常的 diff 方式輸出。"
+
+#: src/diff.c:968
+msgid ""
+" --palette=PALETTE specify the colors to use when --color is active"
+msgstr ""
+
+#: src/diff.c:969
+msgid ""
+" PALETTE is a colon-separated list terminfo "
+"capabilities"
+msgstr ""
+
+#: src/diff.c:971
msgid " --help display this help and exit"
msgstr ""
-#: src/diff.c:939
+#: src/diff.c:972
#, fuzzy
msgid "-v, --version output version information and exit"
msgstr "-v --version 顯示版本資訊。"
-#: src/diff.c:941
+#: src/diff.c:974
#, fuzzy
-msgid ""
-"FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."
+msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."
msgstr ""
"FILES 的格式可以是‘FILE1 FILE2’、‘DIR1 DIR2’、‘DIR FILE...’或\n"
" ‘FILE... DIR’。"
-#: src/diff.c:942
+#: src/diff.c:975
#, fuzzy
msgid ""
"If --from-file or --to-file is given, there are no restrictions on FILE(s)."
msgstr "如果使用 --from-file 或 --to-file 選項,FILES 的格式則不受限制。"
-#: src/diff.c:943 src/diff3.c:481 src/sdiff.c:219
+#: src/diff.c:976 src/diff3.c:481 src/sdiff.c:219
#, fuzzy
msgid "If a FILE is '-', read standard input."
msgstr "如果 FILE 是‘-’,則由標準輸入讀取資料。"
# It is intentional *not* to translate FILES -- maddog
-#: src/diff.c:953
+#: src/diff.c:986
#, c-format
msgid "Usage: %s [OPTION]... FILES\n"
msgstr "用法:%s [選項]... FILES\n"
-#: src/diff.c:954
+#: src/diff.c:987
#, fuzzy
msgid "Compare FILES line by line."
msgstr "比較兩個檔案的每一行。"
-#: src/diff.c:988
+#: src/diff.c:1021
#, fuzzy, c-format
msgid "conflicting %s option value '%s'"
msgstr "互相矛盾的 %s 選項,參數值為‘%s’"
-#: src/diff.c:1001
+#: src/diff.c:1034
#, c-format
msgid "conflicting output style options"
msgstr "互相矛盾的輸出模式選項"
-#: src/diff.c:1058 src/diff.c:1268
+#: src/diff.c:1050
+#, fuzzy, c-format
+msgid "invalid color '%s'"
+msgstr "無效的寬度‘%s’"
+
+#: src/diff.c:1106 src/diff.c:1316
#, c-format
msgid "Only in %s: %s\n"
msgstr "只在 %s 存在:%s\n"
-#: src/diff.c:1192
+#: src/diff.c:1240
#, fuzzy
msgid "cannot compare '-' to a directory"
msgstr "‘-’無法與目錄作比較"
-#: src/diff.c:1227
+#: src/diff.c:1275
msgid "-D option not supported with directories"
msgstr "-D 選項不可配合目錄使用"
-#: src/diff.c:1236
+#: src/diff.c:1284
#, c-format
msgid "Common subdirectories: %s and %s\n"
msgstr "%s 和 %s 有共同的副目錄\n"
-#: src/diff.c:1278 src/diff.c:1328
+#: src/diff.c:1326 src/diff.c:1376
#, c-format
msgid "File %s is a %s while file %s is a %s\n"
msgstr "檔案 %s 是%s而檔案 %s 是%s\n"
-#: src/diff.c:1314
+#: src/diff.c:1362
#, fuzzy, c-format
msgid "Symbolic links %s and %s differ\n"
msgstr "檔案 %s 與 %s 不同\n"
-#: src/diff.c:1399
+#: src/diff.c:1449
#, c-format
msgid "Files %s and %s are identical\n"
msgstr "檔案 %s 和 %s 相同\n"
msgid "'-' specified for more than one input file"
msgstr "輸入檔‘-’不可多於一個"
-#: src/diff3.c:395 src/diff3.c:1241 src/diff3.c:1645 src/diff3.c:1700
+#: src/diff3.c:395 src/diff3.c:1242 src/diff3.c:1646 src/diff3.c:1701
#: src/sdiff.c:307 src/sdiff.c:844 src/sdiff.c:855
msgid "read failed"
msgstr "讀取資料失敗"
msgid "invalid diff format; invalid change separator"
msgstr "無效的 diff 格式;表示資料變更的分隔字串無效"
-#: src/diff3.c:1251
+#: src/diff3.c:1252
msgid "invalid diff format; incomplete last line"
msgstr "無效的 diff 格式;最後一行不完整"
-#: src/diff3.c:1275 src/sdiff.c:275 src/util.c:392
+#: src/diff3.c:1276 src/sdiff.c:275 src/util.c:972
#, fuzzy, c-format
msgid "subsidiary program '%s' could not be invoked"
msgstr "子程式 ‘%s’ 無法執行"
-#: src/diff3.c:1300
+#: src/diff3.c:1301
msgid "invalid diff format; incorrect leading line chars"
msgstr "diff 格式無效;某行的第一個字元不正確"
-#: src/diff3.c:1373
+#: src/diff3.c:1374
msgid "internal error: invalid diff type passed to output"
msgstr "內部錯誤:準備輸出的 diff 資料類型無效"
-#: src/diff3.c:1647 src/diff3.c:1704
+#: src/diff3.c:1648 src/diff3.c:1705
msgid "input file shrank"
msgstr "輸入檔縮小"
-#: src/dir.c:158
+#: src/dir.c:156
#, fuzzy, c-format
msgid "cannot compare file names '%s' and '%s'"
msgstr "無法比較檔案 ‘%s’ 和 ‘%s’"
-#: src/dir.c:209
+#: src/dir.c:225
#, c-format
msgid "%s: recursive directory loop"
msgstr ""
"v :\t加上兩邊一樣的行組時會在畫面顯示。\n"
"q :\t離開。\n"
+#: src/util.c:665
+#, fuzzy, c-format
+msgid "unrecognized prefix: %s"
+msgstr "%s:無法識別的選項‘--%s’\n"
+
+#: src/util.c:695
+#, c-format
+msgid "unparsable value for --palette"
+msgstr ""
+
#~ msgid "%s: illegal option -- %c\n"
#~ msgstr "%s:不合法的選項 ─ %c\n"
# Automakefile for GNU diffutils programs.
-# Copyright (C) 2001-2002, 2006, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2002, 2006, 2009-2013, 2015-2016 Free Software Foundation,
+# Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
-# Makefile.in generated by automake 1.13a from Makefile.am.
+# Makefile.in generated by automake 1.99a from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+# Copyright (C) 1994-2015 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Automakefile for GNU diffutils programs.
-# Copyright (C) 2001-2002, 2006, 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2002, 2006, 2009-2013, 2015-2016 Free Software Foundation,
+# Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = { \
+ if test -z '$(MAKELEVEL)'; then \
+ false; \
+ elif test -n '$(MAKE_HOST)'; then \
+ true; \
+ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+ true; \
+ else \
+ false; \
+ fi; \
+}
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
esac; \
- test $$am__dry = yes; \
- }
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
bin_PROGRAMS = cmp$(EXEEXT) diff$(EXEEXT) diff3$(EXEEXT) \
sdiff$(EXEEXT)
subdir = src
-DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
- $(top_srcdir)/build-aux/depcomp $(noinst_HEADERS)
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
- $(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/btowc.m4 \
+ $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \
+ $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/btowc.m4 \
$(top_srcdir)/m4/c-stack.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/dirname.m4 \
+ $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
$(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
$(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
$(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
$(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fcntl-o.m4 \
$(top_srcdir)/m4/fcntl.m4 $(top_srcdir)/m4/fcntl_h.m4 \
$(top_srcdir)/m4/fdopen.m4 $(top_srcdir)/m4/filenamecat.m4 \
- $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fnmatch.m4 \
- $(top_srcdir)/m4/fpieee.m4 $(top_srcdir)/m4/freopen.m4 \
- $(top_srcdir)/m4/fstat.m4 $(top_srcdir)/m4/getcwd.m4 \
+ $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \
+ $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fpieee.m4 \
+ $(top_srcdir)/m4/freopen.m4 $(top_srcdir)/m4/fstat.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/gettext.m4 \
$(top_srcdir)/m4/gettime.m4 $(top_srcdir)/m4/gettimeofday.m4 \
$(top_srcdir)/m4/gnulib-comp.m4 \
$(top_srcdir)/m4/hard-locale.m4 $(top_srcdir)/m4/iconv.m4 \
$(top_srcdir)/m4/iconv_h.m4 $(top_srcdir)/m4/iconv_open.m4 \
- $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inline.m4 \
- $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \
- $(top_srcdir)/m4/inttostr.m4 $(top_srcdir)/m4/inttypes-pri.m4 \
- $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \
- $(top_srcdir)/m4/iswblank.m4 $(top_srcdir)/m4/langinfo_h.m4 \
- $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \
- $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/libsigsegv.m4 \
+ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
+ $(top_srcdir)/m4/inline.m4 $(top_srcdir)/m4/intlmacosx.m4 \
+ $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttostr.m4 \
+ $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+ $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/ioctl.m4 \
+ $(top_srcdir)/m4/isblank.m4 $(top_srcdir)/m4/iswblank.m4 \
+ $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
+ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
+ $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \
$(top_srcdir)/m4/libunistring-base.m4 \
$(top_srcdir)/m4/localcharset.m4 $(top_srcdir)/m4/locale-fr.m4 \
$(top_srcdir)/m4/locale-ja.m4 $(top_srcdir)/m4/locale-tr.m4 \
$(top_srcdir)/m4/mktime.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/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
$(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/off_t.m4 \
$(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
+ $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
$(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/putenv.m4 \
$(top_srcdir)/m4/quote.m4 $(top_srcdir)/m4/quotearg.m4 \
- $(top_srcdir)/m4/raise.m4 $(top_srcdir)/m4/readlink.m4 \
- $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/secure_getenv.m4 \
+ $(top_srcdir)/m4/raise.m4 $(top_srcdir)/m4/rawmemchr.m4 \
+ $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/regex.m4 \
+ $(top_srcdir)/m4/secure_getenv.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/signalblocking.m4 \
$(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \
- $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/ssize_t.m4 \
+ $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/socketlib.m4 \
+ $(top_srcdir)/m4/sockets.m4 $(top_srcdir)/m4/socklen.m4 \
+ $(top_srcdir)/m4/sockpfaf.m4 $(top_srcdir)/m4/ssize_t.m4 \
$(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \
- $(top_srcdir)/m4/stdarg.m4 $(top_srcdir)/m4/stdbool.m4 \
- $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \
- $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \
- $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/strcase.m4 \
- $(top_srcdir)/m4/strerror.m4 $(top_srcdir)/m4/strftime.m4 \
+ $(top_srcdir)/m4/stdalign.m4 $(top_srcdir)/m4/stdarg.m4 \
+ $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \
+ $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \
+ $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \
+ $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strerror.m4 \
+ $(top_srcdir)/m4/strerror_r.m4 $(top_srcdir)/m4/strftime.m4 \
$(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \
$(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \
$(top_srcdir)/m4/strptime.m4 $(top_srcdir)/m4/strtoull.m4 \
$(top_srcdir)/m4/strtoumax.m4 $(top_srcdir)/m4/symlink.m4 \
+ $(top_srcdir)/m4/sys_ioctl_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 \
- $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_wait_h.m4 \
- $(top_srcdir)/m4/tempname.m4 $(top_srcdir)/m4/time_h.m4 \
- $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/timespec.m4 \
- $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/unistd_h.m4 \
- $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/usleep.m4 \
+ $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_uio_h.m4 \
+ $(top_srcdir)/m4/sys_wait_h.m4 $(top_srcdir)/m4/tempname.m4 \
+ $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \
+ $(top_srcdir)/m4/time_rz.m4 $(top_srcdir)/m4/timegm.m4 \
+ $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \
+ $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlocked-io.m4 \
$(top_srcdir)/m4/vararrays.m4 $(top_srcdir)/m4/vasnprintf.m4 \
$(top_srcdir)/m4/vasprintf.m4 $(top_srcdir)/m4/version-etc.m4 \
$(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
$(top_srcdir)/m4/xvasprintf.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(noinst_HEADERS) \
+ $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/lib/config.h
CONFIG_CLEAN_FILES =
am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/lib
depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp
-am__depfiles_maybe = depfiles
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade = ./$(DEPDIR)/analyze.Po ./$(DEPDIR)/cmp.Po \
+ ./$(DEPDIR)/context.Po ./$(DEPDIR)/diff.Po \
+ ./$(DEPDIR)/diff3.Po ./$(DEPDIR)/dir.Po ./$(DEPDIR)/ed.Po \
+ ./$(DEPDIR)/ifdef.Po ./$(DEPDIR)/io.Po ./$(DEPDIR)/normal.Po \
+ ./$(DEPDIR)/sdiff.Po ./$(DEPDIR)/side.Po ./$(DEPDIR)/util.Po \
+ ./$(DEPDIR)/version.Po
am__mv = mv -f
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
- $(AM_CFLAGS) $(CFLAGS)
+am__set_depbase = depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.[^.]*$$||'`
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
AM_V_CC = $(am__v_CC_@AM_V@)
am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
am__v_CC_0 = @echo " CC " $@;
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
+am__DIST_COMMON = $(srcdir)/Makefile.in \
+ $(top_srcdir)/build-aux/depcomp
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
pkglibexecdir = @pkglibexecdir@
ACLOCAL = @ACLOCAL@
GLIBC21 = @GLIBC21@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
+GNULIB_ACCEPT = @GNULIB_ACCEPT@
+GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
GNULIB_ATOLL = @GNULIB_ATOLL@
+GNULIB_BIND = @GNULIB_BIND@
GNULIB_BTOWC = @GNULIB_BTOWC@
GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@
GNULIB_CANONICALIZE_FILE_NAME = @GNULIB_CANONICALIZE_FILE_NAME@
GNULIB_CHDIR = @GNULIB_CHDIR@
GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
+GNULIB_CONNECT = @GNULIB_CONNECT@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
GNULIB_DUP = @GNULIB_DUP@
GNULIB_DUP2 = @GNULIB_DUP2@
GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
+GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
+GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
GNULIB_ICONV = @GNULIB_ICONV@
GNULIB_IMAXABS = @GNULIB_IMAXABS@
GNULIB_IMAXDIV = @GNULIB_IMAXDIV@
+GNULIB_INET_NTOP = @GNULIB_INET_NTOP@
+GNULIB_INET_PTON = @GNULIB_INET_PTON@
+GNULIB_IOCTL = @GNULIB_IOCTL@
GNULIB_ISATTY = @GNULIB_ISATTY@
+GNULIB_ISBLANK = @GNULIB_ISBLANK@
GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
GNULIB_LCHMOD = @GNULIB_LCHMOD@
GNULIB_LCHOWN = @GNULIB_LCHOWN@
GNULIB_LINK = @GNULIB_LINK@
GNULIB_LINKAT = @GNULIB_LINKAT@
+GNULIB_LISTEN = @GNULIB_LISTEN@
GNULIB_LOCALECONV = @GNULIB_LOCALECONV@
GNULIB_LSEEK = @GNULIB_LSEEK@
GNULIB_LSTAT = @GNULIB_LSTAT@
GNULIB_PREAD = @GNULIB_PREAD@
GNULIB_PRINTF = @GNULIB_PRINTF@
GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@
+GNULIB_PSELECT = @GNULIB_PSELECT@
GNULIB_PTHREAD_SIGMASK = @GNULIB_PTHREAD_SIGMASK@
GNULIB_PTSNAME = @GNULIB_PTSNAME@
GNULIB_PTSNAME_R = @GNULIB_PTSNAME_R@
GNULIB_PUTENV = @GNULIB_PUTENV@
GNULIB_PUTS = @GNULIB_PUTS@
GNULIB_PWRITE = @GNULIB_PWRITE@
+GNULIB_QSORT_R = @GNULIB_QSORT_R@
GNULIB_RAISE = @GNULIB_RAISE@
GNULIB_RANDOM = @GNULIB_RANDOM@
GNULIB_RANDOM_R = @GNULIB_RANDOM_R@
GNULIB_READLINKAT = @GNULIB_READLINKAT@
GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@
GNULIB_REALPATH = @GNULIB_REALPATH@
+GNULIB_RECV = @GNULIB_RECV@
+GNULIB_RECVFROM = @GNULIB_RECVFROM@
GNULIB_REMOVE = @GNULIB_REMOVE@
GNULIB_RENAME = @GNULIB_RENAME@
GNULIB_RENAMEAT = @GNULIB_RENAMEAT@
GNULIB_RPMATCH = @GNULIB_RPMATCH@
GNULIB_SCANF = @GNULIB_SCANF@
GNULIB_SECURE_GETENV = @GNULIB_SECURE_GETENV@
+GNULIB_SELECT = @GNULIB_SELECT@
+GNULIB_SEND = @GNULIB_SEND@
+GNULIB_SENDTO = @GNULIB_SENDTO@
GNULIB_SETENV = @GNULIB_SETENV@
GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
+GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
GNULIB_SIGACTION = @GNULIB_SIGACTION@
GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
GNULIB_SLEEP = @GNULIB_SLEEP@
GNULIB_SNPRINTF = @GNULIB_SNPRINTF@
+GNULIB_SOCKET = @GNULIB_SOCKET@
GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@
GNULIB_STAT = @GNULIB_STAT@
GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@
GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@
GNULIB_TIMEGM = @GNULIB_TIMEGM@
GNULIB_TIME_R = @GNULIB_TIME_R@
+GNULIB_TIME_RZ = @GNULIB_TIME_RZ@
GNULIB_TMPFILE = @GNULIB_TMPFILE@
GNULIB_TOWCTRANS = @GNULIB_TOWCTRANS@
GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@
GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
+HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@
HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@
HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@
+HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@
+HAVE_DECL_INET_PTON = @HAVE_DECL_INET_PTON@
HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@
HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@
HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
+HAVE_ISBLANK = @HAVE_ISBLANK@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@
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@
HAVE_MBRTOWC = @HAVE_MBRTOWC@
HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MKSTEMPS = @HAVE_MKSTEMPS@
HAVE_MSVC_INVALID_PARAMETER_HANDLER = @HAVE_MSVC_INVALID_PARAMETER_HANDLER@
HAVE_NANOSLEEP = @HAVE_NANOSLEEP@
+HAVE_NETINET_IN_H = @HAVE_NETINET_IN_H@
HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@
HAVE_OPENAT = @HAVE_OPENAT@
HAVE_OS_H = @HAVE_OS_H@
HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
HAVE_PREAD = @HAVE_PREAD@
+HAVE_PSELECT = @HAVE_PSELECT@
HAVE_PTHREAD_SIGMASK = @HAVE_PTHREAD_SIGMASK@
HAVE_PTSNAME = @HAVE_PTSNAME@
HAVE_PTSNAME_R = @HAVE_PTSNAME_R@
HAVE_REALPATH = @HAVE_REALPATH@
HAVE_RENAMEAT = @HAVE_RENAMEAT@
HAVE_RPMATCH = @HAVE_RPMATCH@
+HAVE_SA_FAMILY_T = @HAVE_SA_FAMILY_T@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
HAVE_STRUCT_SIGACTION_SA_SIGACTION = @HAVE_STRUCT_SIGACTION_SA_SIGACTION@
+HAVE_STRUCT_SOCKADDR_STORAGE = @HAVE_STRUCT_SOCKADDR_STORAGE@
+HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY = @HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY@
HAVE_STRUCT_TIMEVAL = @HAVE_STRUCT_TIMEVAL@
HAVE_STRVERSCMP = @HAVE_STRVERSCMP@
HAVE_SYMLINK = @HAVE_SYMLINK@
HAVE_SYMLINKAT = @HAVE_SYMLINKAT@
HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@
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_SELECT_H = @HAVE_SYS_SELECT_H@
+HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@
+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_UNISTD_H = @HAVE_UNISTD_H@
HAVE_UNLINKAT = @HAVE_UNLINKAT@
HAVE_WMEMCPY = @HAVE_WMEMCPY@
HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
HAVE_WMEMSET = @HAVE_WMEMSET@
+HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
HAVE__BOOL = @HAVE__BOOL@
HAVE__EXIT = @HAVE__EXIT@
ICONV_H = @ICONV_H@
INCLUDE_NEXT = @INCLUDE_NEXT@
INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@
+INET_PTON_LIB = @INET_PTON_LIB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
LIBS = @LIBS@
LIBSIGSEGV = @LIBSIGSEGV@
LIBSIGSEGV_PREFIX = @LIBSIGSEGV_PREFIX@
+LIBSOCKET = @LIBSOCKET@
LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
LIBUNISTRING_UNISTR_H = @LIBUNISTRING_UNISTR_H@
LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@
LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@
LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_SELECT = @LIB_SELECT@
LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@
LOCALE_FR = @LOCALE_FR@
LOCALE_FR_UTF8 = @LOCALE_FR_UTF8@
MSGFMT = @MSGFMT@
MSGFMT_015 = @MSGFMT_015@
MSGMERGE = @MSGMERGE@
+NETINET_IN_H = @NETINET_IN_H@
+NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@
NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@
NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@
NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@
NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H = @NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H@
NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H = @NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H@
NEXT_AS_FIRST_DIRECTIVE_LOCALE_H = @NEXT_AS_FIRST_DIRECTIVE_LOCALE_H@
+NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H = @NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H@
NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H = @NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H@
NEXT_AS_FIRST_DIRECTIVE_STDARG_H = @NEXT_AS_FIRST_DIRECTIVE_STDARG_H@
NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@
NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_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_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@
NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H@
NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@
NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@
NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@
NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@
+NEXT_CTYPE_H = @NEXT_CTYPE_H@
NEXT_ERRNO_H = @NEXT_ERRNO_H@
NEXT_FCNTL_H = @NEXT_FCNTL_H@
NEXT_FLOAT_H = @NEXT_FLOAT_H@
NEXT_INTTYPES_H = @NEXT_INTTYPES_H@
NEXT_LANGINFO_H = @NEXT_LANGINFO_H@
NEXT_LOCALE_H = @NEXT_LOCALE_H@
+NEXT_NETINET_IN_H = @NEXT_NETINET_IN_H@
NEXT_SIGNAL_H = @NEXT_SIGNAL_H@
NEXT_STDARG_H = @NEXT_STDARG_H@
NEXT_STDDEF_H = @NEXT_STDDEF_H@
NEXT_STDLIB_H = @NEXT_STDLIB_H@
NEXT_STRINGS_H = @NEXT_STRINGS_H@
NEXT_STRING_H = @NEXT_STRING_H@
+NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_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@
NEXT_SYS_TIME_H = @NEXT_SYS_TIME_H@
NEXT_SYS_TYPES_H = @NEXT_SYS_TYPES_H@
+NEXT_SYS_UIO_H = @NEXT_SYS_UIO_H@
NEXT_SYS_WAIT_H = @NEXT_SYS_WAIT_H@
NEXT_TIME_H = @NEXT_TIME_H@
NEXT_UNISTD_H = @NEXT_UNISTD_H@
REPLACE_GETCWD = @REPLACE_GETCWD@
REPLACE_GETDELIM = @REPLACE_GETDELIM@
REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@
+REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@
REPLACE_GETGROUPS = @REPLACE_GETGROUPS@
REPLACE_GETLINE = @REPLACE_GETLINE@
REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
+REPLACE_GMTIME = @REPLACE_GMTIME@
REPLACE_ICONV = @REPLACE_ICONV@
REPLACE_ICONV_OPEN = @REPLACE_ICONV_OPEN@
REPLACE_ICONV_UTF = @REPLACE_ICONV_UTF@
+REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
+REPLACE_INET_PTON = @REPLACE_INET_PTON@
+REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
REPLACE_LINK = @REPLACE_LINK@
REPLACE_LINKAT = @REPLACE_LINKAT@
REPLACE_LOCALECONV = @REPLACE_LOCALECONV@
+REPLACE_LOCALTIME = @REPLACE_LOCALTIME@
REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@
REPLACE_LSEEK = @REPLACE_LSEEK@
REPLACE_LSTAT = @REPLACE_LSTAT@
REPLACE_POPEN = @REPLACE_POPEN@
REPLACE_PREAD = @REPLACE_PREAD@
REPLACE_PRINTF = @REPLACE_PRINTF@
+REPLACE_PSELECT = @REPLACE_PSELECT@
REPLACE_PTHREAD_SIGMASK = @REPLACE_PTHREAD_SIGMASK@
REPLACE_PTSNAME = @REPLACE_PTSNAME@
REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@
REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
+REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
+REPLACE_READLINKAT = @REPLACE_READLINKAT@
REPLACE_REALLOC = @REPLACE_REALLOC@
REPLACE_REALPATH = @REPLACE_REALPATH@
REPLACE_REMOVE = @REPLACE_REMOVE@
REPLACE_RENAME = @REPLACE_RENAME@
REPLACE_RENAMEAT = @REPLACE_RENAMEAT@
REPLACE_RMDIR = @REPLACE_RMDIR@
+REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOIMAX = @REPLACE_STRTOIMAX@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOUMAX = @REPLACE_STRTOUMAX@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
+REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@
REPLACE_TIMEGM = @REPLACE_TIMEGM@
REPLACE_TMPFILE = @REPLACE_TMPFILE@
REPLACE_TOWLOWER = @REPLACE_TOWLOWER@
REPLACE_WCTOMB = @REPLACE_WCTOMB@
REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
REPLACE_WRITE = @REPLACE_WRITE@
+SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
SIZE_T_SUFFIX = @SIZE_T_SUFFIX@
SRC_VERSION_C = @SRC_VERSION_C@
+STDALIGN_H = @STDALIGN_H@
STDARG_H = @STDARG_H@
STDBOOL_H = @STDBOOL_H@
STDDEF_H = @STDDEF_H@
STDINT_H = @STDINT_H@
STRIP = @STRIP@
+SYS_IOCTL_H_HAVE_WINSOCK2_H = @SYS_IOCTL_H_HAVE_WINSOCK2_H@
+SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@
TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@
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_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@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
am__include = @am__include@
am__quote = @am__quote@
localedir = $(datadir)/locale
localstatedir = @localstatedir@
mandir = @mandir@
+mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu src/Makefile
-.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
clean-noinstLIBRARIES:
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
+
libver.a: $(libver_a_OBJECTS) $(libver_a_DEPENDENCIES) $(EXTRA_libver_a_DEPENDENCIES)
$(AM_V_at)-rm -f libver.a
$(AM_V_AR)$(libver_a_AR) libver.a $(libver_a_OBJECTS) $(libver_a_LIBADD)
clean-binPROGRAMS:
-test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
+
cmp$(EXEEXT): $(cmp_OBJECTS) $(cmp_DEPENDENCIES) $(EXTRA_cmp_DEPENDENCIES)
@rm -f cmp$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(cmp_OBJECTS) $(cmp_LDADD) $(LIBS)
+
diff$(EXEEXT): $(diff_OBJECTS) $(diff_DEPENDENCIES) $(EXTRA_diff_DEPENDENCIES)
@rm -f diff$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(diff_OBJECTS) $(diff_LDADD) $(LIBS)
+
diff3$(EXEEXT): $(diff3_OBJECTS) $(diff3_DEPENDENCIES) $(EXTRA_diff3_DEPENDENCIES)
@rm -f diff3$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(diff3_OBJECTS) $(diff3_LDADD) $(LIBS)
+
sdiff$(EXEEXT): $(sdiff_OBJECTS) $(sdiff_DEPENDENCIES) $(EXTRA_sdiff_DEPENDENCIES)
@rm -f sdiff$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(sdiff_OBJECTS) $(sdiff_LDADD) $(LIBS)
distclean-compile:
-rm -f *.tab.c
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/analyze.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cmp.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/context.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/diff.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/diff3.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dir.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ed.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ifdef.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/io.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/normal.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sdiff.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/side.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/util.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/version.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/analyze.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cmp.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/context.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/diff.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/diff3.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dir.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ed.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ifdef.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/io.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/normal.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sdiff.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/side.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/util.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/version.Po@am__quote@ # am--include-marker
+
+$(am__depfiles_remade):
+ @$(MKDIR_P) $(@D)
+ @echo '# dummy' >$@-t && $(am__mv) $@-t $@
+
+am--depfiles: $(am__depfiles_remade)
.c.o:
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(am__set_depbase) && \
+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $<; \
+@am__fastdepCC_TRUE@ if test $$? = 0; then $(am__mv) $$depbase.Tpo $$depbase.Po; \
+@am__fastdepCC_TRUE@ else rm -f $$depbase.Tpo; false; fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(am__set_depbase) && \
+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $$($(CYGPATH_W) $<); \
+@am__fastdepCC_TRUE@ if test $$? = 0; then $(am__mv) $$depbase.Tpo $$depbase.Po; \
+@am__fastdepCC_TRUE@ else rm -f $$depbase.Tpo; false; fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $$($(CYGPATH_W) $<)
ID: $(am__tagged_files)
$(am__define_uniq_tagged_files); mkid -fID $$unique
mostlyclean-am
distclean: distclean-am
- -rm -rf ./$(DEPDIR)
+ -rm -f ./$(DEPDIR)/analyze.Po
+ -rm -f ./$(DEPDIR)/cmp.Po
+ -rm -f ./$(DEPDIR)/context.Po
+ -rm -f ./$(DEPDIR)/diff.Po
+ -rm -f ./$(DEPDIR)/diff3.Po
+ -rm -f ./$(DEPDIR)/dir.Po
+ -rm -f ./$(DEPDIR)/ed.Po
+ -rm -f ./$(DEPDIR)/ifdef.Po
+ -rm -f ./$(DEPDIR)/io.Po
+ -rm -f ./$(DEPDIR)/normal.Po
+ -rm -f ./$(DEPDIR)/sdiff.Po
+ -rm -f ./$(DEPDIR)/side.Po
+ -rm -f ./$(DEPDIR)/util.Po
+ -rm -f ./$(DEPDIR)/version.Po
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-tags
installcheck-am:
maintainer-clean: maintainer-clean-am
- -rm -rf ./$(DEPDIR)
+ -rm -f ./$(DEPDIR)/analyze.Po
+ -rm -f ./$(DEPDIR)/cmp.Po
+ -rm -f ./$(DEPDIR)/context.Po
+ -rm -f ./$(DEPDIR)/diff.Po
+ -rm -f ./$(DEPDIR)/diff3.Po
+ -rm -f ./$(DEPDIR)/dir.Po
+ -rm -f ./$(DEPDIR)/ed.Po
+ -rm -f ./$(DEPDIR)/ifdef.Po
+ -rm -f ./$(DEPDIR)/io.Po
+ -rm -f ./$(DEPDIR)/normal.Po
+ -rm -f ./$(DEPDIR)/sdiff.Po
+ -rm -f ./$(DEPDIR)/side.Po
+ -rm -f ./$(DEPDIR)/util.Po
+ -rm -f ./$(DEPDIR)/version.Po
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
.MAKE: all check install install-am install-strip
-.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \
+.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
clean-binPROGRAMS clean-generic clean-noinstLIBRARIES \
cscopelist-am ctags ctags-am distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \
mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \
uninstall-am uninstall-binPROGRAMS
+.PRECIOUS: Makefile
+
cmp.$(OBJEXT) diff3.$(OBJEXT) diff.$(OBJEXT) sdiff.$(OBJEXT): paths.h
paths.h: Makefile.am
/* Analyze file differences for GNU DIFF.
Copyright (C) 1988-1989, 1992-1995, 1998, 2001-2002, 2004, 2006-2007,
- 2009-2013 Free Software Foundation, Inc.
+ 2009-2013, 2015-2016 Free Software Foundation, Inc.
This file is part of GNU DIFF.
return script;
}
\f
-/* If CHANGES, briefly report that two files differed.
- Return 2 if trouble, CHANGES otherwise. */
-static int
+/* If CHANGES, briefly report that two files differed. */
+static void
briefly_report (int changes, struct file_data const filevec[])
{
if (changes)
- {
- char const *label0 = file_label[0] ? file_label[0] : filevec[0].name;
- char const *label1 = file_label[1] ? file_label[1] : filevec[1].name;
-
- if (brief)
- message ("Files %s and %s differ\n", label0, label1);
- else
- {
- message ("Binary files %s and %s differ\n", label0, label1);
- changes = 2;
- }
- }
-
- return changes;
+ message ((brief
+ ? _("Files %s and %s differ\n")
+ : _("Binary files %s and %s differ\n")),
+ file_label[0] ? file_label[0] : filevec[0].name,
+ file_label[1] ? file_label[1] : filevec[1].name);
}
/* Report the differences of two files. */
{
/* Files with different lengths must be different. */
if (cmp->file[0].stat.st_size != cmp->file[1].stat.st_size
+ && 0 < cmp->file[0].stat.st_size
+ && 0 < cmp->file[1].stat.st_size
&& (cmp->file[0].desc < 0 || S_ISREG (cmp->file[0].stat.st_mode))
&& (cmp->file[1].desc < 0 || S_ISREG (cmp->file[1].stat.st_mode)))
changes = 1;
}
}
- changes = briefly_report (changes, cmp->file);
+ briefly_report (changes, cmp->file);
}
else
{
struct context ctxt;
lin diags;
- lin too_expensive;
/* Allocate vectors for the results of comparison:
a flag for each line of each file, saying whether that line
ctxt.heuristic = speed_large_files;
- /* Set TOO_EXPENSIVE to be approximate square root of input size,
- bounded below by 256. */
- too_expensive = 1;
- for (; diags != 0; diags >>= 2)
- too_expensive <<= 1;
- ctxt.too_expensive = MAX (256, too_expensive);
-
files[0] = cmp->file[0];
files[1] = cmp->file[1];
compareseq (0, cmp->file[0].nondiscarded_lines,
- 0, cmp->file[1].nondiscarded_lines, minimal, &ctxt);
+ 0, cmp->file[1].nondiscarded_lines, &ctxt);
free (ctxt.fdiag - (cmp->file[1].nondiscarded_lines + 1));
changes = (script != 0);
if (brief)
- changes = briefly_report (changes, cmp->file);
+ briefly_report (changes, cmp->file);
else
{
if (changes || !no_diff_means_no_output)
/* cmp - compare two files byte by byte
- Copyright (C) 1990-1996, 1998, 2001-2002, 2004, 2006-2007, 2009-2013 Free
- Software Foundation, Inc.
+ Copyright (C) 1990-1996, 1998, 2001-2002, 2004, 2006-2007, 2009-2013,
+ 2015-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
static int cmp (void);
static off_t file_position (int);
static size_t block_compare (word const *, word const *) _GL_ATTRIBUTE_PURE;
-static size_t block_compare_and_count (word const *, word const *, off_t *);
+static size_t count_newlines (char *, size_t);
static void sprintc (char *, unsigned char);
/* Filenames of the compared files. */
if (read1 == SIZE_MAX)
error (EXIT_TROUBLE, errno, "%s", file[1]);
- /* Insert sentinels for the block compare. */
+ smaller = MIN (read0, read1);
- buf0[read0] = ~buf1[read0];
- buf1[read1] = ~buf0[read1];
+ /* Optimize the common case where the buffers are the same. */
+ if (memcmp (buf0, buf1, smaller) == 0)
+ first_diff = smaller;
+ else
+ {
+ /* Insert sentinels for the block compare. */
+ buf0[read0] = ~buf1[read0];
+ buf1[read1] = ~buf0[read1];
- /* If the line number should be written for differing files,
- compare the blocks and count the number of newlines
- simultaneously. */
- first_diff = (comparison_type == type_first_diff
- ? block_compare_and_count (buffer0, buffer1, &line_number)
- : block_compare (buffer0, buffer1));
+ first_diff = block_compare (buffer0, buffer1);
+ }
byte_number += first_diff;
- smaller = MIN (read0, read1);
+ if (comparison_type == type_first_diff)
+ line_number += count_newlines (buf0, first_diff);
if (first_diff < smaller)
{
return differing == 0 ? EXIT_SUCCESS : EXIT_FAILURE;
}
\f
-/* Compare two blocks of memory P0 and P1 until they differ,
- and count the number of '\n' occurrences in the common
- part of P0 and P1.
- If the blocks are not guaranteed to be different, put sentinels at the ends
- of the blocks before calling this function.
-
- Return the offset of the first byte that differs.
- Increment *COUNT by the count of '\n' occurrences. */
-
-static size_t
-block_compare_and_count (word const *p0, word const *p1, off_t *count)
-{
- word l; /* One word from first buffer. */
- word const *l0, *l1; /* Pointers into each buffer. */
- char const *c0, *c1; /* Pointers for finding exact address. */
- size_t cnt = 0; /* Number of '\n' occurrences. */
- word nnnn; /* Newline, sizeof (word) times. */
- int i;
-
- nnnn = 0;
- for (i = 0; i < sizeof nnnn; i++)
- nnnn = (nnnn << CHAR_BIT) | '\n';
-
- /* Find the rough position of the first difference by reading words,
- not bytes. */
-
- for (l0 = p0, l1 = p1; (l = *l0) == *l1; l0++, l1++)
- {
- l ^= nnnn;
- for (i = 0; i < sizeof l; i++)
- {
- unsigned char uc = l;
- cnt += ! uc;
- l >>= CHAR_BIT;
- }
- }
-
- /* Find the exact differing position (endianness independent). */
-
- for (c0 = (char const *) l0, c1 = (char const *) l1;
- *c0 == *c1;
- c0++, c1++)
- cnt += *c0 == '\n';
-
- *count += cnt;
- return c0 - (char const *) p0;
-}
-\f
/* Compare two blocks of memory P0 and P1 until they differ.
If the blocks are not guaranteed to be different, put sentinels at the ends
of the blocks before calling this function.
return c0 - (char const *) p0;
}
+/* Return the number of newlines in BUF, of size BUFSIZE,
+ where BUF[NBYTES] is available for use as a sentinel. */
+
+static size_t
+count_newlines (char *buf, size_t bufsize)
+{
+ size_t count = 0;
+ char *p;
+ char *lim = buf + bufsize;
+ *lim = '\n';
+ for (p = buf; (p = rawmemchr (p, '\n')) != lim; p++)
+ count++;
+ return count;
+}
+
/* Put into BUF the unsigned char C, making unprintable bytes
visible by quoting like cat -t does. */
/* Context-format output routines for GNU DIFF.
- Copyright (C) 1988-1989, 1991-1995, 1998, 2001-2002, 2004, 2006, 2009-2013
- Free Software Foundation, Inc.
+ Copyright (C) 1988-1989, 1991-1995, 1998, 2001-2002, 2004, 2006, 2009-2013,
+ 2015-2016 Free Software Foundation, Inc.
This file is part of GNU DIFF.
void
print_context_header (struct file_data inf[], char const *const *names, bool unidiff)
{
+ set_color_context (HEADER_CONTEXT);
if (unidiff)
{
print_context_label ("---", &inf[0], names[0], file_label[0]);
print_context_label ("***", &inf[0], names[0], file_label[0]);
print_context_label ("---", &inf[1], names[1], file_label[1]);
}
+ set_color_context (RESET_CONTEXT);
}
/* Print an edit script in context format. */
if (function)
print_context_function (out, function);
- fputs ("\n*** ", out);
+ putc ('\n', out);
+ set_color_context (LINE_NUMBER_CONTEXT);
+ fputs ("*** ", out);
print_context_number_range (&files[0], first0, last0);
- fputs (" ****\n", out);
+ fputs (" ****", out);
+ set_color_context (RESET_CONTEXT);
+ putc ('\n', out);
if (changes & OLD)
{
struct change *next = hunk;
+ if (first0 <= last0)
+ set_color_context (DELETE_CONTEXT);
+
for (i = first0; i <= last0; i++)
{
/* Skip past changes that apply (in file 0)
prefix = " ";
if (next && next->line0 <= i)
- /* The change NEXT covers this line.
- If lines were inserted here in file 1, this is "changed".
- Otherwise it is "deleted". */
- prefix = (next->inserted > 0 ? "!" : "-");
-
- print_1_line (prefix, &files[0].linbuf[i]);
+ {
+ /* The change NEXT covers this line.
+ If lines were inserted here in file 1, this is "changed".
+ Otherwise it is "deleted". */
+ prefix = (next->inserted > 0 ? "!" : "-");
+ }
+ print_1_line_nl (prefix, &files[0].linbuf[i], true);
+ if (i == last0)
+ set_color_context (RESET_CONTEXT);
+ if (files[0].linbuf[i + 1][-1] == '\n')
+ putc ('\n', out);
}
}
+ set_color_context (LINE_NUMBER_CONTEXT);
fputs ("--- ", out);
print_context_number_range (&files[1], first1, last1);
- fputs (" ----\n", out);
+ fputs (" ----", out);
+ set_color_context (RESET_CONTEXT);
+ putc ('\n', out);
if (changes & NEW)
{
struct change *next = hunk;
+ if (first1 <= last1)
+ set_color_context (ADD_CONTEXT);
+
for (i = first1; i <= last1; i++)
{
/* Skip past changes that apply (in file 1)
prefix = " ";
if (next && next->line1 <= i)
- /* The change NEXT covers this line.
- If lines were deleted here in file 0, this is "changed".
- Otherwise it is "inserted". */
- prefix = (next->deleted > 0 ? "!" : "+");
-
- print_1_line (prefix, &files[1].linbuf[i]);
+ {
+ /* The change NEXT covers this line.
+ If lines were deleted here in file 0, this is "changed".
+ Otherwise it is "inserted". */
+ prefix = (next->deleted > 0 ? "!" : "+");
+ }
+ print_1_line_nl (prefix, &files[1].linbuf[i], true);
+ if (i == last1)
+ set_color_context (RESET_CONTEXT);
+ if (files[1].linbuf[i + 1][-1] == '\n')
+ putc ('\n', out);
}
}
}
begin_output ();
out = outfile;
+ set_color_context (LINE_NUMBER_CONTEXT);
fputs ("@@ -", out);
print_unidiff_number_range (&files[0], first0, last0);
fputs (" +", out);
print_unidiff_number_range (&files[1], first1, last1);
fputs (" @@", out);
+ set_color_context (RESET_CONTEXT);
if (function)
print_context_function (out, function);
/* For each difference, first output the deleted part. */
k = next->deleted;
+ if (k)
+ set_color_context (DELETE_CONTEXT);
+
while (k--)
{
char const * const *line = &files[0].linbuf[i++];
putc ('-', out);
if (initial_tab && ! (suppress_blank_empty && **line == '\n'))
putc ('\t', out);
- print_1_line (NULL, line);
+ print_1_line_nl (NULL, line, true);
+
+ if (!k)
+ set_color_context (RESET_CONTEXT);
+
+ if (line[1][-1] == '\n')
+ putc ('\n', out);
}
/* Then output the inserted part. */
k = next->inserted;
- while (k--)
+ if (k)
+ set_color_context (ADD_CONTEXT);
+
+ while (k--)
{
char const * const *line = &files[1].linbuf[j++];
putc ('+', out);
if (initial_tab && ! (suppress_blank_empty && **line == '\n'))
putc ('\t', out);
- print_1_line (NULL, line);
+ print_1_line_nl (NULL, line, true);
+
+ if (!k)
+ set_color_context (RESET_CONTEXT);
+
+ if (line[1][-1] == '\n')
+ putc ('\n', out);
}
/* We're done with this hunk, so on to the next! */
lin top0, top1;
lin thresh;
- /* Threshold distance is 2 * CONTEXT + 1 between two non-ignorable
- changes, but only CONTEXT if one is ignorable. Watch out for
- integer overflow, though. */
- lin non_ignorable_threshold =
- (LIN_MAX - 1) / 2 < context ? LIN_MAX : 2 * context + 1;
+ /* Threshold distance is CONTEXT if the second change is ignorable,
+ 2 * CONTEXT + 1 otherwise. Integer overflow can't happen, due
+ to CONTEXT_LIM. */
lin ignorable_threshold = context;
+ lin non_ignorable_threshold = 2 * context + 1;
do
{
top1 = start->line1 + start->inserted;
prev = start;
start = start->link;
- thresh = (prev->ignore || (start && start->ignore)
+ thresh = (start && start->ignore
? ignorable_threshold
: non_ignorable_threshold);
/* It is not supposed to matter which file we check in the end-test.
/* diff - compare files line by line
Copyright (C) 1988-1989, 1992-1994, 1996, 1998, 2001-2002, 2004, 2006-2007,
- 2009-2013 Free Software Foundation, Inc.
+ 2009-2013, 2015-2016 Free Software Foundation, Inc.
This file is part of GNU DIFF.
static void summarize_regexp_list (struct regexp_list *);
static void specify_style (enum output_style);
static void specify_value (char const **, char const *, char const *);
+static void specify_colors_style (char const *);
static void try_help (char const *, char const *) __attribute__((noreturn));
static void check_stdout (void);
static void usage (void);
UNCHANGED_GROUP_FORMAT_OPTION,
OLD_GROUP_FORMAT_OPTION,
NEW_GROUP_FORMAT_OPTION,
- CHANGED_GROUP_FORMAT_OPTION
+ CHANGED_GROUP_FORMAT_OPTION,
+
+ COLOR_OPTION,
+ COLOR_PALETTE_OPTION,
+
+ PRESUME_OUTPUT_TTY_OPTION,
};
static char const group_format_option[][sizeof "--unchanged-group-format"] =
{"binary", 0, 0, BINARY_OPTION},
{"brief", 0, 0, 'q'},
{"changed-group-format", 1, 0, CHANGED_GROUP_FORMAT_OPTION},
+ {"color", 2, 0, COLOR_OPTION},
{"context", 2, 0, 'C'},
{"ed", 0, 0, 'e'},
{"exclude", 1, 0, 'x'},
{"old-group-format", 1, 0, OLD_GROUP_FORMAT_OPTION},
{"old-line-format", 1, 0, OLD_LINE_FORMAT_OPTION},
{"paginate", 0, 0, 'l'},
+ {"palette", 1, 0, COLOR_PALETTE_OPTION},
{"rcs", 0, 0, 'n'},
{"recursive", 0, 0, 'r'},
{"report-identical-files", 0, 0, 's'},
{"unified", 2, 0, 'U'},
{"version", 0, 0, 'v'},
{"width", 1, 0, 'W'},
+
+ /* This is solely for testing. Do not document. */
+ {"-presume-output-tty", no_argument, NULL, PRESUME_OUTPUT_TTY_OPTION},
{0, 0, 0, 0}
};
case '7':
case '8':
case '9':
- if (! ISDIGIT (prev))
- ocontext = c - '0';
- else if (LIN_MAX / 10 < ocontext
- || ((ocontext = 10 * ocontext + c - '0') < 0))
- ocontext = LIN_MAX;
+ ocontext = (! ISDIGIT (prev)
+ ? c - '0'
+ : (ocontext - (c - '0' <= CONTEXT_MAX % 10)
+ < CONTEXT_MAX / 10)
+ ? 10 * ocontext + (c - '0')
+ : CONTEXT_MAX);
break;
case 'a':
numval = strtoumax (optarg, &numend, 10);
if (*numend)
try_help ("invalid context length '%s'", optarg);
- if (LIN_MAX < numval)
- numval = LIN_MAX;
+ if (CONTEXT_MAX < numval)
+ numval = CONTEXT_MAX;
}
else
numval = 3;
case TABSIZE_OPTION:
numval = strtoumax (optarg, &numend, 10);
- if (! (0 < numval && numval <= SIZE_MAX) || *numend)
+ if (! (0 < numval && numval <= SIZE_MAX - GUTTER_WIDTH_MINIMUM)
+ || *numend)
try_help ("invalid tabsize '%s'", optarg);
if (tabsize != numval)
{
specify_value (&group_format[c], optarg, group_format_option[c]);
break;
+ case COLOR_OPTION:
+ specify_colors_style (optarg);
+ break;
+
+ case COLOR_PALETTE_OPTION:
+ set_color_palette (optarg);
+ break;
+
+ case PRESUME_OUTPUT_TTY_OPTION:
+ presume_output_tty = true;
+ break;
+
default:
try_help (NULL, NULL);
}
a half line plus a gutter is an integral number of tabs,
so that tabs in the right column line up. */
- intmax_t t = expand_tabs ? 1 : tabsize;
- intmax_t w = width;
- intmax_t off = (w + t + GUTTER_WIDTH_MINIMUM) / (2 * t) * t;
- sdiff_half_width = MAX (0, MIN (off - GUTTER_WIDTH_MINIMUM, w - off)),
+ size_t t = expand_tabs ? 1 : tabsize;
+ size_t w = width;
+ size_t t_plus_g = t + GUTTER_WIDTH_MINIMUM;
+ size_t unaligned_off = (w >> 1) + (t_plus_g >> 1) + (w & t_plus_g & 1);
+ size_t off = unaligned_off - unaligned_off % t;
+ sdiff_half_width = (off <= GUTTER_WIDTH_MINIMUM || w <= off
+ ? 0
+ : MIN (off - GUTTER_WIDTH_MINIMUM, w - off));
sdiff_column2_offset = sdiff_half_width ? off : w;
}
"",
N_("-p, --show-c-function show which C function each change is in"),
N_("-F, --show-function-line=RE show the most recent line matching RE"),
- N_(" --label LABEL use LABEL instead of file name\n"
+ N_(" --label LABEL use LABEL instead of file name and timestamp\n"
" (can be repeated)"),
"",
N_("-t, --expand-tabs expand tabs to spaces in output"),
N_("-d, --minimal try hard to find a smaller set of changes"),
N_(" --horizon-lines=NUM keep NUM lines of the common prefix and suffix"),
N_(" --speed-large-files assume large files and many scattered small changes"),
+ N_(" --color[=WHEN] colorize the output; WHEN can be 'never', 'always',"),
+ N_(" or 'auto' (the default)"),
+ N_(" --palette=PALETTE specify the colors to use when --color is active"),
+ N_(" PALETTE is a colon-separated list terminfo capabilities"),
"",
N_(" --help display this help and exit"),
N_("-v, --version output version information and exit"),
"",
- N_("FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE...' or 'FILE... DIR'."),
+ N_("FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'."),
N_("If --from-file or --to-file is given, there are no restrictions on FILE(s)."),
N_("If a FILE is '-', read standard input."),
N_("Exit status is 0 if inputs are the same, 1 if different, 2 if trouble."),
output_style = style;
}
}
+
+/* Set the color mode. */
+static void
+specify_colors_style (char const *value)
+{
+ if (value == NULL || STREQ (value, "auto"))
+ colors_style = AUTO;
+ else if (STREQ (value, "always"))
+ colors_style = ALWAYS;
+ else if (STREQ (value, "never"))
+ colors_style = NEVER;
+ else
+ try_help ("invalid color '%s'", value);
+}
+
\f
/* Set the last-modified time of *ST to be the current time. */
else if (files_can_be_treated_as_binary
&& S_ISREG (cmp.file[0].stat.st_mode)
&& S_ISREG (cmp.file[1].stat.st_mode)
- && cmp.file[0].stat.st_size != cmp.file[1].stat.st_size)
+ && cmp.file[0].stat.st_size != cmp.file[1].stat.st_size
+ && 0 < cmp.file[0].stat.st_size
+ && 0 < cmp.file[1].stat.st_size)
{
message ("Files %s and %s differ\n",
file_label[0] ? file_label[0] : cmp.file[0].name,
/* Shared definitions for GNU DIFF
- Copyright (C) 1988-1989, 1991-1995, 1998, 2001-2002, 2004, 2009-2013 Free
- Software Foundation, Inc.
+ Copyright (C) 1988-1989, 1991-1995, 1998, 2001-2002, 2004, 2009-2013,
+ 2015-2016 Free Software Foundation, Inc.
This file is part of GNU DIFF.
/* Both deletes and inserts: a hunk containing both old and new lines. */
CHANGED
};
+
+/* When colors should be used in the output. */
+enum colors_style
+{
+ /* Never output colors. */
+ NEVER,
+
+ /* Output colors if the output is a terminal. */
+ AUTO,
+
+ /* Always output colors. */
+ ALWAYS,
+};
\f
/* Variables for command line options */
XTERN enum output_style output_style;
+/* Define the current color context used to print a line. */
+XTERN enum colors_style colors_style;
+
/* Nonzero if output cannot be generated for identical files. */
XTERN bool no_diff_means_no_output;
extern void perror_with_name (char const *);
extern void pfatal_with_name (char const *) __attribute__((noreturn));
extern void print_1_line (char const *, char const * const *);
+extern void print_1_line_nl (char const *, char const * const *, bool);
extern void print_message_queue (void);
extern void print_number_range (char, struct file_data *, lin, lin);
extern void print_script (struct change *, struct change * (*) (struct change *),
extern void setup_output (char const *, char const *, bool);
extern void translate_range (struct file_data const *, lin, lin,
long int *, long int *);
+
+enum color_context
+{
+ HEADER_CONTEXT,
+ ADD_CONTEXT,
+ DELETE_CONTEXT,
+ RESET_CONTEXT,
+ LINE_NUMBER_CONTEXT,
+};
+
+XTERN bool presume_output_tty;
+
+extern void set_color_context (enum color_context color_context);
+extern void set_color_palette (char const *palette);
/* diff3 - compare three files line by line
- Copyright (C) 1988-1989, 1992-1996, 1998, 2001-2002, 2004, 2006, 2009-2013
- Free Software Foundation, Inc.
+ Copyright (C) 1988-1989, 1992-1996, 1998, 2001-2002, 2004, 2006, 2009-2013,
+ 2015-2016 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
*block_list_end = NULL;
*last_block = bptr;
+ free (diff_contents);
return block_list;
}
/* Read, sort and compare two directories. Used for GNU DIFF.
Copyright (C) 1988-1989, 1992-1995, 1998, 2001-2002, 2004, 2006-2007,
- 2009-2013 Free Software Foundation, Inc.
+ 2009-2013, 2015-2016 Free Software Foundation, Inc.
This file is part of GNU DIFF.
static jmp_buf failed_locale_specific_sorting;
static bool dir_loop (struct comparison const *, int);
-static int compare_names_for_qsort (void const *, void const *);
/* Read a directory and get its vector of names. */
return true;
}
+/* Compare strings in a locale-specific way, returning a value
+ compatible with strcmp. */
+
+static int
+compare_collated (char const *name1, char const *name2)
+{
+ int r;
+ errno = 0;
+ if (ignore_file_name_case)
+ r = strcasecoll (name1, name2);
+ else
+ r = strcoll (name1, name2);
+ if (errno)
+ {
+ error (0, errno, _("cannot compare file names '%s' and '%s'"),
+ name1, name2);
+ longjmp (failed_locale_specific_sorting, 1);
+ }
+ return r;
+}
+
/* Compare file names, returning a value compatible with strcmp. */
static int
{
if (locale_specific_sorting)
{
- int r;
- errno = 0;
- if (ignore_file_name_case)
- r = strcasecoll (name1, name2);
- else
- r = strcoll (name1, name2);
- if (errno)
- {
- error (0, errno, _("cannot compare file names '%s' and '%s'"),
- name1, name2);
- longjmp (failed_locale_specific_sorting, 1);
- }
- return r;
+ int diff = compare_collated (name1, name2);
+ if (diff || ignore_file_name_case)
+ return diff;
}
-
return file_name_cmp (name1, name2);
}
{
char const *const *f1 = file1;
char const *const *f2 = file2;
- int diff = compare_names (*f1, *f2);
- return diff ? diff : file_name_cmp (*f1, *f2);
+ char const *name1 = *f1;
+ char const *name2 = *f2;
+ if (locale_specific_sorting)
+ {
+ int diff = compare_collated (name1, name2);
+ if (diff)
+ return diff;
+ }
+ return file_name_cmp (name1, name2);
}
\f
/* Compare the contents of two directories named in CMP.
O(N**2), where N is the number of names in a directory
that compare_names says are all equal, but in practice N
is so small it's not worth tuning. */
- if (nameorder == 0)
+ if (nameorder == 0 && ignore_file_name_case)
{
int raw_order = file_name_cmp (*names[0], *names[1]);
if (raw_order != 0)
/* Output routines for ed-script format.
- Copyright (C) 1988-1989, 1991-1993, 1995, 1998, 2001, 2004, 2006, 2009-2013
- Free Software Foundation, Inc.
+ Copyright (C) 1988-1989, 1991-1993, 1995, 1998, 2001, 2004, 2006, 2009-2013,
+ 2015-2016 Free Software Foundation, Inc.
This file is part of GNU DIFF.
/* #ifdef-format output routines for GNU DIFF.
- Copyright (C) 1989, 1991-1994, 2001-2002, 2004, 2006, 2009-2013 Free
- Software Foundation, Inc.
+ Copyright (C) 1989, 1991-1994, 2001-2002, 2004, 2006, 2009-2013, 2015-2016
+ Free Software Foundation, Inc.
This file is part of GNU DIFF.
/* File I/O for GNU DIFF.
- Copyright (C) 1988-1989, 1992-1995, 1998, 2001-2002, 2004, 2006, 2009-2013
- Free Software Foundation, Inc.
+ Copyright (C) 1988-1989, 1992-1995, 1998, 2001-2002, 2004, 2006, 2009-2013,
+ 2015-2016 Free Software Foundation, Inc.
This file is part of GNU DIFF.
PTRDIFF_MAX - 2 * sizeof (word));
current->buffer = xmalloc (current->bufsize);
+#ifdef __KLIBC__
+ /* Skip test if seek is not possible */
+ skip_test = skip_test
+ || (lseek (current->desc, 0, SEEK_CUR) < 0
+ && errno == ESPIPE);
+#endif
+
if (! skip_test)
{
/* Check first part of file to see if it's a binary file. */
{
size_t buffered = current->buffered;
char *p = FILE_BUFFER (current);
- char *dst;
if (buffered == 0 || p[buffered - 1] == '\n')
current->missing_newline = false;
/* Don't use uninitialized storage when planting or using sentinels. */
memset (p + buffered, 0, sizeof (word));
- if (strip_trailing_cr && (dst = memchr (p, '\r', buffered)))
+ if (strip_trailing_cr)
{
- char const *src = dst;
- char const *srclim = p + buffered;
+ char *dst;
+ char *srclim = p + buffered;
+ *srclim = '\r';
+ dst = rawmemchr (p, '\r');
- do
- dst += ! ((*dst = *src++) == '\r' && *src == '\n');
- while (src < srclim);
+ if (dst != srclim)
+ {
+ char const *src = dst;
+ do
+ {
+ *dst = *src++;
+ dst += ! (*dst == '\r' && *src == '\n');
+ }
+ while (src < srclim);
- buffered -= src - dst;
+ buffered -= src - dst;
+ }
}
current->buffered = buffered;
lin i, lines;
size_t n0, n1;
lin alloc_lines0, alloc_lines1;
+ bool prefix_needed;
lin buffered_prefix, prefix_count, prefix_mask;
lin middle_guess, suffix_guess;
prefix_mask = prefix_count - 1;
lines = 0;
linbuf0 = xmalloc (alloc_lines0 * sizeof *linbuf0);
+ prefix_needed = ! (no_diff_means_no_output
+ && filevec[0].prefix_end == p0
+ && filevec[1].prefix_end == p1);
p0 = buffer0;
/* If the prefix is needed, find the prefix lines. */
- if (! (no_diff_means_no_output
- && filevec[0].prefix_end == p0
- && filevec[1].prefix_end == p1))
+ if (prefix_needed)
{
end0 = filevec[0].prefix_end;
while (p0 != end0)
/* Normal-format output routines for GNU DIFF.
- Copyright (C) 1988-1989, 1993, 1995, 1998, 2001, 2006, 2009-2013 Free
- Software Foundation, Inc.
+ Copyright (C) 1988-1989, 1993, 1995, 1998, 2001, 2006, 2009-2013, 2015-2016
+ Free Software Foundation, Inc.
This file is part of GNU DIFF.
begin_output ();
/* Print out the line number header for this hunk */
+ set_color_context (LINE_NUMBER_CONTEXT);
print_number_range (',', &files[0], first0, last0);
fputc (change_letter[changes], outfile);
print_number_range (',', &files[1], first1, last1);
+ set_color_context (RESET_CONTEXT);
fputc ('\n', outfile);
/* Print the lines that the first file has. */
if (changes & OLD)
- for (i = first0; i <= last0; i++)
- print_1_line ("<", &files[0].linbuf[i]);
+ {
+ if (first0 <= last0)
+ set_color_context (DELETE_CONTEXT);
+ for (i = first0; i <= last0; i++)
+ {
+ print_1_line_nl ("<", &files[0].linbuf[i], true);
+ if (i == last0)
+ set_color_context (RESET_CONTEXT);
+ if (files[0].linbuf[i + 1][-1] == '\n')
+ putc ('\n', outfile);
+ }
+ }
if (changes == CHANGED)
fputs ("---\n", outfile);
/* Print the lines that the second file has. */
if (changes & NEW)
- for (i = first1; i <= last1; i++)
- print_1_line (">", &files[1].linbuf[i]);
+ {
+ if (first1 <= last1)
+ set_color_context (ADD_CONTEXT);
+ for (i = first1; i <= last1; i++)
+ {
+ print_1_line_nl (">", &files[1].linbuf[i], true);
+ if (i == last1)
+ set_color_context (RESET_CONTEXT);
+ if (files[1].linbuf[i + 1][-1] == '\n')
+ putc ('\n', outfile);
+ }
+ }
}
/* sdiff - side-by-side merge of file differences
- Copyright (C) 1992-1996, 1998, 2001-2002, 2004, 2006-2007, 2009-2013 Free
- Software Foundation, Inc.
+ Copyright (C) 1992-1996, 1998, 2001-2002, 2004, 2006-2007, 2009-2013,
+ 2015-2016 Free Software Foundation, Inc.
This file is part of GNU DIFF.
while (lines)
{
- lf->bufpos = (char *) memchr (lf->bufpos, '\n', lf->buflim - lf->bufpos);
- if (! lf->bufpos)
+ lf->bufpos = rawmemchr (lf->bufpos, '\n');
+ if (lf->bufpos == lf->buflim)
{
ck_fwrite (start, lf->buflim - start, outfile);
if (! lf_refill (lf))
{
while (lines)
{
- lf->bufpos = (char *) memchr (lf->bufpos, '\n', lf->buflim - lf->bufpos);
- if (! lf->bufpos)
+ lf->bufpos = rawmemchr (lf->bufpos, '\n');
+ if (lf->bufpos == lf->buflim)
{
if (! lf_refill (lf))
break;
for (;;)
{
char *start = lf->bufpos;
- char *next = (char *) memchr (start, '\n', lf->buflim + 1 - start);
+ char *next = rawmemchr (start, '\n');
size_t s = next - start;
if (bufsize <= s)
return 0;
uintmax_t val;
lin llen, rlen, lenmax;
errno = 0;
- llen = val = strtoumax (diff_help + 1, &numend, 10);
- if (llen < 0 || llen != val || errno || *numend != ',')
+ val = strtoumax (diff_help + 1, &numend, 10);
+ if (LIN_MAX < val || errno || *numend != ',')
fatal (diff_help);
- rlen = val = strtoumax (numend + 1, &numend, 10);
- if (rlen < 0 || rlen != val || errno || *numend)
+ llen = val;
+ val = strtoumax (numend + 1, &numend, 10);
+ if (LIN_MAX < val || errno || *numend)
fatal (diff_help);
+ rlen = val;
lenmax = MAX (llen, rlen);
/* sdiff-format output routines for GNU DIFF.
- Copyright (C) 1991-1993, 1998, 2001-2002, 2004, 2009-2013 Free Software
- Foundation, Inc.
+ Copyright (C) 1991-1993, 1998, 2001-2002, 2004, 2009-2013, 2015-2016 Free
+ Software Foundation, Inc.
This file is part of GNU DIFF.
size_t c2o = sdiff_column2_offset;
size_t col = 0;
bool put_newline = false;
+ bool color_to_reset = false;
+
+ if (sep == '<')
+ {
+ set_color_context (DELETE_CONTEXT);
+ color_to_reset = true;
+ }
+ else if (sep == '>')
+ {
+ set_color_context (ADD_CONTEXT);
+ color_to_reset = true;
+ }
if (left)
{
if (put_newline)
putc ('\n', out);
+
+ if (color_to_reset)
+ set_color_context (RESET_CONTEXT);
}
/* Print lines common to both files in side-by-side format. */
/* System dependent declarations.
- Copyright (C) 1988-1989, 1992-1995, 1998, 2001-2002, 2004, 2006, 2009-2013
- Free Software Foundation, Inc.
+ Copyright (C) 1988-1989, 1992-1995, 1998, 2001-2002, 2004, 2006, 2009-2013,
+ 2015-2016 Free Software Foundation, Inc.
This file is part of GNU DIFF.
#include "propername.h"
#include "version.h"
-/* Type used for fast comparison of several bytes at a time. */
+/* Type used for fast comparison of several bytes at a time.
+ This used to be uintmax_t, but changing it to size_t
+ made plain 'cmp' 90% faster (GCC 4.8.1, x86). */
#ifndef word
-# define word uintmax_t
+# define word size_t
#endif
/* The integer type of a line number. Since files are read into main
verify (TYPE_SIGNED (lin));
verify (sizeof (ptrdiff_t) <= sizeof (lin));
verify (sizeof (lin) <= sizeof (long int));
+
+/* Limit so that 2 * CONTEXT + 1 does not overflow. */
+
+#define CONTEXT_MAX ((LIN_MAX - 1) / 2)
+
\f
/* This section contains POSIX-compliant defaults for macros
that are meant to be overridden by hand in config.h as needed. */
/* Support routines for GNU DIFF.
- Copyright (C) 1988-1989, 1992-1995, 1998, 2001-2002, 2004, 2006, 2009-2013
- Free Software Foundation, Inc.
+ Copyright (C) 1988-1989, 1992-1995, 1998, 2001-2002, 2004, 2006, 2009-2013,
+ 2015-2016 Free Software Foundation, Inc.
This file is part of GNU DIFF.
along with this program. If not, see <http://www.gnu.org/licenses/>. */
#include "diff.h"
+#include "argmatch.h"
#include <dirname.h>
#include <error.h>
#include <system-quote.h>
#include <xalloc.h>
#include "xvasprintf.h"
+#include <signal.h>
+
+/* Use SA_NOCLDSTOP as a proxy for whether the sigaction machinery is
+ present. */
+#ifndef SA_NOCLDSTOP
+# define SA_NOCLDSTOP 0
+# define sigprocmask(How, Set, Oset) /* empty */
+# define sigset_t int
+# if ! HAVE_SIGINTERRUPT
+# define siginterrupt(sig, flag) /* empty */
+# endif
+#endif
+
+#ifndef SA_RESTART
+# define SA_RESTART 0
+#endif
char const pr_program[] = PR_PROGRAM;
+bool presume_output_tty;
+
/* Queue up one-line messages to be printed at the end,
when -l is specified. Each message is recorded with a 'struct msg'. */
}
}
\f
+/* The set of signals that are caught. */
+
+static sigset_t caught_signals;
+
+/* If nonzero, the value of the pending fatal signal. */
+
+static sig_atomic_t volatile interrupt_signal;
+
+/* A count of the number of pending stop signals that have been received. */
+
+static sig_atomic_t volatile stop_signal_count;
+
+/* An ordinary signal was received; arrange for the program to exit. */
+
+static void
+sighandler (int sig)
+{
+ if (! SA_NOCLDSTOP)
+ signal (sig, SIG_IGN);
+ if (! interrupt_signal)
+ interrupt_signal = sig;
+}
+
+/* A SIGTSTP was received; arrange for the program to suspend itself. */
+
+static void
+stophandler (int sig)
+{
+ if (! SA_NOCLDSTOP)
+ signal (sig, stophandler);
+ if (! interrupt_signal)
+ stop_signal_count++;
+}
+/* Process any pending signals. If signals are caught, this function
+ should be called periodically. Ideally there should never be an
+ unbounded amount of time when signals are not being processed.
+ Signal handling can restore the default colors, so callers must
+ immediately change colors after invoking this function. */
+
+static void
+process_signals (void)
+{
+ while (interrupt_signal || stop_signal_count)
+ {
+ int sig;
+ int stops;
+ sigset_t oldset;
+
+ set_color_context (RESET_CONTEXT);
+ fflush (stdout);
+
+ sigprocmask (SIG_BLOCK, &caught_signals, &oldset);
+
+ /* Reload interrupt_signal and stop_signal_count, in case a new
+ signal was handled before sigprocmask took effect. */
+ sig = interrupt_signal;
+ stops = stop_signal_count;
+
+ /* SIGTSTP is special, since the application can receive that signal
+ more than once. In this case, don't set the signal handler to the
+ default. Instead, just raise the uncatchable SIGSTOP. */
+ if (stops)
+ {
+ stop_signal_count = stops - 1;
+ sig = SIGSTOP;
+ }
+ else
+ signal (sig, SIG_DFL);
+
+ /* Exit or suspend the program. */
+ raise (sig);
+ sigprocmask (SIG_SETMASK, &oldset, NULL);
+
+ /* If execution reaches here, then the program has been
+ continued (after being suspended). */
+ }
+}
+
+static void
+install_signal_handlers (void)
+{
+ /* The signals that are trapped, and the number of such signals. */
+ static int const sig[] =
+ {
+ /* This one is handled specially. */
+ SIGTSTP,
+
+ /* The usual suspects. */
+ SIGALRM, SIGHUP, SIGINT, SIGPIPE, SIGQUIT, SIGTERM,
+#ifdef SIGPOLL
+ SIGPOLL,
+#endif
+#ifdef SIGPROF
+ SIGPROF,
+#endif
+#ifdef SIGVTALRM
+ SIGVTALRM,
+#endif
+#ifdef SIGXCPU
+ SIGXCPU,
+#endif
+#ifdef SIGXFSZ
+ SIGXFSZ,
+#endif
+ };
+ enum { nsigs = sizeof (sig) / sizeof *(sig) };
+
+#if ! SA_NOCLDSTOP
+ bool caught_sig[nsigs];
+#endif
+ {
+ int j;
+#if SA_NOCLDSTOP
+ struct sigaction act;
+
+ sigemptyset (&caught_signals);
+ for (j = 0; j < nsigs; j++)
+ {
+ sigaction (sig[j], NULL, &act);
+ if (act.sa_handler != SIG_IGN)
+ sigaddset (&caught_signals, sig[j]);
+ }
+
+ act.sa_mask = caught_signals;
+ act.sa_flags = SA_RESTART;
+
+ for (j = 0; j < nsigs; j++)
+ if (sigismember (&caught_signals, sig[j]))
+ {
+ act.sa_handler = sig[j] == SIGTSTP ? stophandler : sighandler;
+ sigaction (sig[j], &act, NULL);
+ }
+#else
+ for (j = 0; j < nsigs; j++)
+ {
+ caught_sig[j] = (signal (sig[j], SIG_IGN) != SIG_IGN);
+ if (caught_sig[j])
+ {
+ signal (sig[j], sig[j] == SIGTSTP ? stophandler : sighandler);
+ siginterrupt (sig[j], 0);
+ }
+ }
+#endif
+ }
+}
+
+static char const *current_name0;
+static char const *current_name1;
+static bool currently_recursive;
+static bool colors_enabled;
+
+static struct color_ext_type *color_ext_list = NULL;
+
+struct bin_str
+ {
+ size_t len; /* Number of bytes */
+ const char *string; /* Pointer to the same */
+ };
+
+struct color_ext_type
+ {
+ struct bin_str ext; /* The extension we're looking for */
+ struct bin_str seq; /* The sequence to output when we do */
+ struct color_ext_type *next; /* Next in list */
+ };
+
+/* Parse a string as part of the --palette argument; this may involve
+ decoding all kinds of escape characters. If equals_end is set an
+ unescaped equal sign ends the string, otherwise only a : or \0
+ does. Set *OUTPUT_COUNT to the number of bytes output. Return
+ true if successful.
+
+ The resulting string is *not* null-terminated, but may contain
+ embedded nulls.
+
+ Note that both dest and src are char **; on return they point to
+ the first free byte after the array and the character that ended
+ the input string, respectively. */
+
+static bool
+get_funky_string (char **dest, const char **src, bool equals_end,
+ size_t *output_count)
+{
+ char num; /* For numerical codes */
+ size_t count; /* Something to count with */
+ enum {
+ ST_GND, ST_BACKSLASH, ST_OCTAL, ST_HEX, ST_CARET, ST_END, ST_ERROR
+ } state;
+ const char *p;
+ char *q;
+
+ p = *src; /* We don't want to double-indirect */
+ q = *dest; /* the whole darn time. */
+
+ count = 0; /* No characters counted in yet. */
+ num = 0;
+
+ state = ST_GND; /* Start in ground state. */
+ while (state < ST_END)
+ {
+ switch (state)
+ {
+ case ST_GND: /* Ground state (no escapes) */
+ switch (*p)
+ {
+ case ':':
+ case '\0':
+ state = ST_END; /* End of string */
+ break;
+ case '\\':
+ state = ST_BACKSLASH; /* Backslash scape sequence */
+ ++p;
+ break;
+ case '^':
+ state = ST_CARET; /* Caret escape */
+ ++p;
+ break;
+ case '=':
+ if (equals_end)
+ {
+ state = ST_END; /* End */
+ break;
+ }
+ /* else fall through */
+ default:
+ *(q++) = *(p++);
+ ++count;
+ break;
+ }
+ break;
+
+ case ST_BACKSLASH: /* Backslash escaped character */
+ switch (*p)
+ {
+ case '0':
+ case '1':
+ case '2':
+ case '3':
+ case '4':
+ case '5':
+ case '6':
+ case '7':
+ state = ST_OCTAL; /* Octal sequence */
+ num = *p - '0';
+ break;
+ case 'x':
+ case 'X':
+ state = ST_HEX; /* Hex sequence */
+ num = 0;
+ break;
+ case 'a': /* Bell */
+ num = '\a';
+ break;
+ case 'b': /* Backspace */
+ num = '\b';
+ break;
+ case 'e': /* Escape */
+ num = 27;
+ break;
+ case 'f': /* Form feed */
+ num = '\f';
+ break;
+ case 'n': /* Newline */
+ num = '\n';
+ break;
+ case 'r': /* Carriage return */
+ num = '\r';
+ break;
+ case 't': /* Tab */
+ num = '\t';
+ break;
+ case 'v': /* Vtab */
+ num = '\v';
+ break;
+ case '?': /* Delete */
+ num = 127;
+ break;
+ case '_': /* Space */
+ num = ' ';
+ break;
+ case '\0': /* End of string */
+ state = ST_ERROR; /* Error! */
+ break;
+ default: /* Escaped character like \ ^ : = */
+ num = *p;
+ break;
+ }
+ if (state == ST_BACKSLASH)
+ {
+ *(q++) = num;
+ ++count;
+ state = ST_GND;
+ }
+ ++p;
+ break;
+
+ case ST_OCTAL: /* Octal sequence */
+ if (*p < '0' || *p > '7')
+ {
+ *(q++) = num;
+ ++count;
+ state = ST_GND;
+ }
+ else
+ num = (num << 3) + (*(p++) - '0');
+ break;
+
+ case ST_HEX: /* Hex sequence */
+ switch (*p)
+ {
+ case '0':
+ case '1':
+ case '2':
+ case '3':
+ case '4':
+ case '5':
+ case '6':
+ case '7':
+ case '8':
+ case '9':
+ num = (num << 4) + (*(p++) - '0');
+ break;
+ case 'a':
+ case 'b':
+ case 'c':
+ case 'd':
+ case 'e':
+ case 'f':
+ num = (num << 4) + (*(p++) - 'a') + 10;
+ break;
+ case 'A':
+ case 'B':
+ case 'C':
+ case 'D':
+ case 'E':
+ case 'F':
+ num = (num << 4) + (*(p++) - 'A') + 10;
+ break;
+ default:
+ *(q++) = num;
+ ++count;
+ state = ST_GND;
+ break;
+ }
+ break;
+
+ case ST_CARET: /* Caret escape */
+ state = ST_GND; /* Should be the next state... */
+ if (*p >= '@' && *p <= '~')
+ {
+ *(q++) = *(p++) & 037;
+ ++count;
+ }
+ else if (*p == '?')
+ {
+ *(q++) = 127;
+ ++count;
+ }
+ else
+ state = ST_ERROR;
+ break;
+
+ default:
+ abort ();
+ }
+ }
+
+ *dest = q;
+ *src = p;
+ *output_count = count;
+
+ return state != ST_ERROR;
+}
+
+enum parse_state
+ {
+ PS_START = 1,
+ PS_2,
+ PS_3,
+ PS_4,
+ PS_DONE,
+ PS_FAIL
+ };
+
+#define LEN_STR_PAIR(s) sizeof (s) - 1, s
+
+static struct bin_str color_indicator[] =
+ {
+ { LEN_STR_PAIR ("\033[") }, /* lc: Left of color sequence */
+ { LEN_STR_PAIR ("m") }, /* rc: Right of color sequence */
+ { 0, NULL }, /* ec: End color (replaces lc+rs+rc) */
+ { LEN_STR_PAIR ("0") }, /* rs: Reset to ordinary colors */
+ { LEN_STR_PAIR ("1") }, /* hd: Header */
+ { LEN_STR_PAIR ("32") }, /* ad: Add line */
+ { LEN_STR_PAIR ("31") }, /* de: Delete line */
+ { LEN_STR_PAIR ("36") }, /* ln: Line number */
+ };
+
+static const char *const indicator_name[] =
+ {
+ "lc", "rc", "ec", "rs", "hd", "ad", "de", "ln", NULL
+ };
+ARGMATCH_VERIFY (indicator_name, color_indicator);
+
+static char const *color_palette;
+
+void
+set_color_palette (char const *palette)
+{
+ color_palette = palette;
+}
+
+static void
+parse_diff_color (void)
+{
+ char *color_buf;
+ const char *p; /* Pointer to character being parsed */
+ char *buf; /* color_buf buffer pointer */
+ int ind_no; /* Indicator number */
+ char label[3]; /* Indicator label */
+ struct color_ext_type *ext; /* Extension we are working on */
+
+ if ((p = color_palette) == NULL || *p == '\0')
+ return;
+
+ ext = NULL;
+ strcpy (label, "??");
+
+ /* This is an overly conservative estimate, but any possible
+ --palette string will *not* generate a color_buf longer than
+ itself, so it is a safe way of allocating a buffer in
+ advance. */
+ buf = color_buf = xstrdup (p);
+
+ enum parse_state state = PS_START;
+ while (true)
+ {
+ switch (state)
+ {
+ case PS_START: /* First label character */
+ switch (*p)
+ {
+ case ':':
+ ++p;
+ break;
+
+ case '*':
+ /* Allocate new extension block and add to head of
+ linked list (this way a later definition will
+ override an earlier one, which can be useful for
+ having terminal-specific defs override global). */
+
+ ext = xmalloc (sizeof *ext);
+ ext->next = color_ext_list;
+ color_ext_list = ext;
+
+ ++p;
+ ext->ext.string = buf;
+
+ state = (get_funky_string (&buf, &p, true, &ext->ext.len)
+ ? PS_4 : PS_FAIL);
+ break;
+
+ case '\0':
+ state = PS_DONE; /* Done! */
+ goto done;
+
+ default: /* Assume it is file type label */
+ label[0] = *(p++);
+ state = PS_2;
+ break;
+ }
+ break;
+
+ case PS_2: /* Second label character */
+ if (*p)
+ {
+ label[1] = *(p++);
+ state = PS_3;
+ }
+ else
+ state = PS_FAIL; /* Error */
+ break;
+
+ case PS_3: /* Equal sign after indicator label */
+ state = PS_FAIL; /* Assume failure... */
+ if (*(p++) == '=')/* It *should* be... */
+ {
+ for (ind_no = 0; indicator_name[ind_no] != NULL; ++ind_no)
+ {
+ if (STREQ (label, indicator_name[ind_no]))
+ {
+ color_indicator[ind_no].string = buf;
+ state = (get_funky_string (&buf, &p, false,
+ &color_indicator[ind_no].len)
+ ? PS_START : PS_FAIL);
+ break;
+ }
+ }
+ if (state == PS_FAIL)
+ error (0, 0, _("unrecognized prefix: %s"), label);
+ }
+ break;
+
+ case PS_4: /* Equal sign after *.ext */
+ if (*(p++) == '=')
+ {
+ ext->seq.string = buf;
+ state = (get_funky_string (&buf, &p, false, &ext->seq.len)
+ ? PS_START : PS_FAIL);
+ }
+ else
+ state = PS_FAIL;
+ break;
+
+ case PS_FAIL:
+ goto done;
+
+ default:
+ abort ();
+ }
+ }
+ done:
+
+ if (state == PS_FAIL)
+ {
+ struct color_ext_type *e;
+ struct color_ext_type *e2;
+
+ error (0, 0,
+ _("unparsable value for --palette"));
+ free (color_buf);
+ for (e = color_ext_list; e != NULL; /* empty */)
+ {
+ e2 = e;
+ e = e->next;
+ free (e2);
+ }
+ colors_enabled = false;
+ }
+}
+
+static void
+check_color_output (bool is_pipe)
+{
+ bool output_is_tty;
+
+ if (! outfile || colors_style == NEVER)
+ return;
+
+ output_is_tty = presume_output_tty || (!is_pipe && isatty (fileno (outfile)));
+
+ colors_enabled = (colors_style == ALWAYS
+ || (colors_style == AUTO && output_is_tty));
+
+ if (colors_enabled)
+ parse_diff_color ();
+
+ if (output_is_tty)
+ install_signal_handlers ();
+}
+
/* Call before outputting the results of comparing files NAME0 and NAME1
to set up OUTFILE, the stdio stream for the output to go to.
we fork off a 'pr' and make OUTFILE a pipe to it.
'pr' then outputs to our stdout. */
-static char const *current_name0;
-static char const *current_name1;
-static bool currently_recursive;
-
void
setup_output (char const *name0, char const *name1, bool recursive)
{
outfile = fdopen (pipes[1], "w");
if (!outfile)
pfatal_with_name ("fdopen");
+ check_color_output (true);
}
#else
char *command = system_quote_argv (SCI_SYSTEM, (char **) argv);
outfile = popen (command, "w");
if (!outfile)
pfatal_with_name (command);
+ check_color_output (true);
free (command);
#endif
}
/* If -l was not specified, output the diff straight to 'stdout'. */
outfile = stdout;
+ check_color_output (false);
/* If handling multiple files (because scanning a directory),
print which files the following output is about. */
void
print_1_line (char const *line_flag, char const *const *line)
{
+ print_1_line_nl (line_flag, line, false);
+}
+
+/* Print the text of a single line LINE,
+ flagging it with the characters in LINE_FLAG (which say whether
+ the line is inserted, deleted, changed, etc.). LINE_FLAG must not
+ end in a blank, unless it is a single blank. If SKIP_NL is set, then
+ the final '\n' is not printed. */
+
+void
+print_1_line_nl (char const *line_flag, char const *const *line, bool skip_nl)
+{
char const *base = line[0], *limit = line[1]; /* Help the compiler. */
FILE *out = outfile; /* Help the compiler some more. */
char const *flag_format = 0;
fprintf (out, flag_format_1, line_flag_1);
}
- output_1_line (base, limit, flag_format, line_flag);
+ output_1_line (base, limit - (skip_nl && limit[-1] == '\n'), flag_format, line_flag);
if ((!line_flag || line_flag[0]) && limit[-1] != '\n')
- fprintf (out, "\n\\ %s\n", _("No newline at end of file"));
+ {
+ set_color_context (RESET_CONTEXT);
+ fprintf (out, "\n\\ %s\n", _("No newline at end of file"));
+ }
}
/* Output a line from BASE up to LIMIT.
output_1_line (char const *base, char const *limit, char const *flag_format,
char const *line_flag)
{
+ const size_t MAX_CHUNK = 1024;
if (!expand_tabs)
- fwrite (base, sizeof (char), limit - base, outfile);
+ {
+ size_t left = limit - base;
+ while (left)
+ {
+ size_t to_write = MIN (left, MAX_CHUNK);
+ size_t written = fwrite (base, sizeof (char), to_write, outfile);
+ if (written < to_write)
+ return;
+ base += written;
+ left -= written;
+ process_signals ();
+ }
+ }
else
{
register FILE *out = outfile;
register char const *t = base;
register size_t column = 0;
size_t tab_size = tabsize;
+ size_t counter_proc_signals = 0;
while (t < limit)
- switch ((c = *t++))
- {
- case '\t':
- {
- size_t spaces = tab_size - column % tab_size;
- column += spaces;
- do
- putc (' ', out);
- while (--spaces);
- }
- break;
+ {
+ counter_proc_signals++;
+ if (counter_proc_signals == MAX_CHUNK)
+ {
+ process_signals ();
+ counter_proc_signals = 0;
+ }
+
+ switch ((c = *t++))
+ {
+ case '\t':
+ {
+ size_t spaces = tab_size - column % tab_size;
+ column += spaces;
+ do
+ putc (' ', out);
+ while (--spaces);
+ }
+ break;
+
+ case '\r':
+ putc (c, out);
+ if (flag_format && t < limit && *t != '\n')
+ fprintf (out, flag_format, line_flag);
+ column = 0;
+ break;
+
+ case '\b':
+ if (column == 0)
+ continue;
+ column--;
+ putc (c, out);
+ break;
+
+ default:
+ column += isprint (c) != 0;
+ putc (c, out);
+ break;
+ }
+ }
+ }
+}
- case '\r':
- putc (c, out);
- if (flag_format && t < limit && *t != '\n')
- fprintf (out, flag_format, line_flag);
- column = 0;
- break;
+enum indicator_no
+ {
+ C_LEFT, C_RIGHT, C_END, C_RESET, C_HEADER, C_ADD, C_DELETE, C_LINE
+ };
- case '\b':
- if (column == 0)
- continue;
- column--;
- putc (c, out);
- break;
+static void
+put_indicator (const struct bin_str *ind)
+{
+ fwrite (ind->string, ind->len, 1, outfile);
+}
- default:
- column += isprint (c) != 0;
- putc (c, out);
- break;
- }
+static enum color_context last_context = RESET_CONTEXT;
+
+void
+set_color_context (enum color_context color_context)
+{
+ if (color_context != RESET_CONTEXT)
+ process_signals ();
+ if (colors_enabled && last_context != color_context)
+ {
+ put_indicator (&color_indicator[C_LEFT]);
+ switch (color_context)
+ {
+ case HEADER_CONTEXT:
+ put_indicator (&color_indicator[C_HEADER]);
+ break;
+
+ case LINE_NUMBER_CONTEXT:
+ put_indicator (&color_indicator[C_LINE]);
+ break;
+
+ case ADD_CONTEXT:
+ put_indicator (&color_indicator[C_ADD]);
+ break;
+
+ case DELETE_CONTEXT:
+ put_indicator (&color_indicator[C_DELETE]);
+ break;
+
+ case RESET_CONTEXT:
+ put_indicator (&color_indicator[C_RESET]);
+ break;
+
+ default:
+ abort ();
+ }
+ put_indicator (&color_indicator[C_RIGHT]);
+ last_context = color_context;
}
}
+
char const change_letter[] = { 0, 'd', 'a', 'c' };
\f
/* Translate an internal line number (an index into diff's table of lines)
for (i = next->line0; i <= l0 && trivial; i++)
{
char const *line = linbuf0[i];
- char const *newline = linbuf0[i + 1] - 1;
+ char const *lastbyte = linbuf0[i + 1] - 1;
+ char const *newline = lastbyte + (*lastbyte != '\n');
size_t len = newline - line;
char const *p = line;
if (skip_white_space)
for (i = next->line1; i <= l1 && trivial; i++)
{
char const *line = linbuf1[i];
- char const *newline = linbuf1[i + 1] - 1;
+ char const *lastbyte = linbuf1[i + 1] - 1;
+ char const *newline = lastbyte + (*lastbyte != '\n');
size_t len = newline - line;
char const *p = line;
if (skip_white_space)
TESTS = \
basic \
+ bignum \
binary \
+ brief-vs-stat-zero-kernel-lies \
colliding-file-names \
excess-slash \
help-version \
function-line-vs-leading-space \
+ ignore-matching-lines \
label-vs-func \
new-file \
no-dereference \
no-newline-at-eof \
stdin \
- filename-quoting
+ strcoll-0-names \
+ filename-quoting \
+ colors
EXTRA_DIST = \
- $(TESTS) init.sh t-local.sh
+ $(TESTS) init.sh t-local.sh envvar-check
# Note that the first lines are statements. They ensure that environment
# variables that can perturb tests are unset or set to expected values.
# The rest are envvar settings that propagate build-related Makefile
# variables to test scripts.
-TESTS_ENVIRONMENT = \
- tmp__=$$TMPDIR; test -d "$$tmp__" || tmp__=.; \
- TMPDIR=$$tmp__; export TMPDIR; \
- export \
- VERSION='$(VERSION)' \
- abs_top_builddir='$(abs_top_builddir)' \
- abs_top_srcdir='$(abs_top_srcdir)' \
- abs_srcdir='$(abs_srcdir)' \
- built_programs="`$(built_programs)`" \
- srcdir='$(srcdir)' \
- top_srcdir='$(top_srcdir)' \
- CC='$(CC)' \
- MAKE=$(MAKE) \
- PACKAGE_BUGREPORT='$(PACKAGE_BUGREPORT)' \
- PACKAGE_VERSION=$(PACKAGE_VERSION) \
- CONFIG_HEADER='$(abs_top_builddir)/lib/config.h' \
- ENABLE_DEVICE_MAPPER=$(ENABLE_DEVICE_MAPPER) \
- PERL='$(PERL)' \
- PREFERABLY_POSIX_SHELL='$(PREFERABLY_POSIX_SHELL)' \
- REPLACE_GETCWD=$(REPLACE_GETCWD) \
- PATH='$(abs_top_builddir)/src$(PATH_SEPARATOR)'"$$PATH" \
+TESTS_ENVIRONMENT = \
+ tmp__=$${TMPDIR-/tmp}; \
+ test -d "$$tmp__" && test -w "$$tmp__" || tmp__=.; \
+ . $(srcdir)/envvar-check; \
+ TMPDIR=$$tmp__; export TMPDIR; \
+ \
+ if test -n "$$BASH_VERSION" || (eval "export v=x") 2>/dev/null; then \
+ export_with_values () { export "$$@"; }; \
+ else \
+ export_with_values () \
+ { \
+ sed_extract_var='s/=.*//'; \
+ sed_quote_value="s/'/'\\\\''/g;s/=\\(.*\\)/='\\1'/";\
+ for arg in "$$@"; do \
+ var=`echo "$$arg" | sed "$$sed_extract_var"`; \
+ arg=`echo "$$arg" | sed "$$sed_quote_value"`; \
+ eval "$$arg"; \
+ export "$$var"; \
+ done; \
+ }; \
+ fi; \
+ \
+ export_with_values \
+ VERSION='$(VERSION)' \
+ LOCALE_FR='$(LOCALE_FR)' \
+ LOCALE_FR_UTF8='$(LOCALE_FR_UTF8)' \
+ AWK=$(AWK) \
+ GREP_OPTIONS='' \
+ LC_ALL=C \
+ abs_top_builddir='$(abs_top_builddir)' \
+ abs_top_srcdir='$(abs_top_srcdir)' \
+ abs_srcdir='$(abs_srcdir)' \
+ built_programs="`$(built_programs)`" \
+ srcdir='$(srcdir)' \
+ top_srcdir='$(top_srcdir)' \
+ CC='$(CC)' \
+ DIFFUTILS_TEST_NAME=`echo $$tst|sed 's,^\./,,;s,/,-,g'` \
+ MAKE=$(MAKE) \
+ MALLOC_PERTURB_=$(MALLOC_PERTURB_) \
+ PACKAGE_BUGREPORT='$(PACKAGE_BUGREPORT)' \
+ PACKAGE_VERSION=$(PACKAGE_VERSION) \
+ PERL='$(PERL)' \
+ SHELL='$(SHELL)' \
+ PREFERABLY_POSIX_SHELL='$(PREFERABLY_POSIX_SHELL)' \
+ REPLACE_GETCWD=$(REPLACE_GETCWD) \
+ PATH='$(abs_top_builddir)/src$(PATH_SEPARATOR)'"$$PATH" \
+ stderr_fileno_=9 \
; 9>&2
LOG_COMPILER= $(SHELL)
built_programs = \
echo 'spy:;@echo $$(PROGRAMS)' \
- | (cd ../src && MAKEFLAGS= $(MAKE) -s -f Makefile -f - spy) \
- | tr ' ' '\n' | sed '/^$$/d; s,$(EXEEXT)$$,,' | sort -u
+ | { (cd ../src && MAKEFLAGS= $(MAKE) -s -f Makefile -f - spy) \
+ | tr ' ' '\n' \
+ | sed '/^$$/d; s,$(EXEEXT)$$,,' \
+ | sort -u \
+ | tr '\n' ' '; echo; } \
+ | sed 's/ $$//'
VERBOSE = yes
-# Makefile.in generated by automake 1.13a from Makefile.am.
+# Makefile.in generated by automake 1.99a from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+# Copyright (C) 1994-2015 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# tests for GNU diff
VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
+am__is_gnu_make = { \
+ if test -z '$(MAKELEVEL)'; then \
+ false; \
+ elif test -n '$(MAKE_HOST)'; then \
+ true; \
+ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+ true; \
+ else \
+ false; \
+ fi; \
+}
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
- test $$am__dry = yes; \
- }
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
build_triplet = @build@
host_triplet = @host@
subdir = tests
-DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
- $(top_srcdir)/build-aux/test-driver
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
- $(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/btowc.m4 \
+ $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \
+ $(top_srcdir)/m4/arpa_inet_h.m4 $(top_srcdir)/m4/btowc.m4 \
$(top_srcdir)/m4/c-stack.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/dirname.m4 \
+ $(top_srcdir)/m4/ctype.m4 $(top_srcdir)/m4/dirname.m4 \
$(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \
$(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \
$(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \
$(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fcntl-o.m4 \
$(top_srcdir)/m4/fcntl.m4 $(top_srcdir)/m4/fcntl_h.m4 \
$(top_srcdir)/m4/fdopen.m4 $(top_srcdir)/m4/filenamecat.m4 \
- $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fnmatch.m4 \
- $(top_srcdir)/m4/fpieee.m4 $(top_srcdir)/m4/freopen.m4 \
- $(top_srcdir)/m4/fstat.m4 $(top_srcdir)/m4/getcwd.m4 \
+ $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \
+ $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fpieee.m4 \
+ $(top_srcdir)/m4/freopen.m4 $(top_srcdir)/m4/fstat.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/gettext.m4 \
$(top_srcdir)/m4/gettime.m4 $(top_srcdir)/m4/gettimeofday.m4 \
$(top_srcdir)/m4/gnulib-comp.m4 \
$(top_srcdir)/m4/hard-locale.m4 $(top_srcdir)/m4/iconv.m4 \
$(top_srcdir)/m4/iconv_h.m4 $(top_srcdir)/m4/iconv_open.m4 \
- $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inline.m4 \
- $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \
- $(top_srcdir)/m4/inttostr.m4 $(top_srcdir)/m4/inttypes-pri.m4 \
- $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \
- $(top_srcdir)/m4/iswblank.m4 $(top_srcdir)/m4/langinfo_h.m4 \
- $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \
- $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/libsigsegv.m4 \
+ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \
+ $(top_srcdir)/m4/inline.m4 $(top_srcdir)/m4/intlmacosx.m4 \
+ $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttostr.m4 \
+ $(top_srcdir)/m4/inttypes-pri.m4 $(top_srcdir)/m4/inttypes.m4 \
+ $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/ioctl.m4 \
+ $(top_srcdir)/m4/isblank.m4 $(top_srcdir)/m4/iswblank.m4 \
+ $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \
+ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
+ $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \
$(top_srcdir)/m4/libunistring-base.m4 \
$(top_srcdir)/m4/localcharset.m4 $(top_srcdir)/m4/locale-fr.m4 \
$(top_srcdir)/m4/locale-ja.m4 $(top_srcdir)/m4/locale-tr.m4 \
$(top_srcdir)/m4/mktime.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/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \
$(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/off_t.m4 \
$(top_srcdir)/m4/open.m4 $(top_srcdir)/m4/pathmax.m4 \
+ $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \
$(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/putenv.m4 \
$(top_srcdir)/m4/quote.m4 $(top_srcdir)/m4/quotearg.m4 \
- $(top_srcdir)/m4/raise.m4 $(top_srcdir)/m4/readlink.m4 \
- $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/secure_getenv.m4 \
+ $(top_srcdir)/m4/raise.m4 $(top_srcdir)/m4/rawmemchr.m4 \
+ $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/regex.m4 \
+ $(top_srcdir)/m4/secure_getenv.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/signalblocking.m4 \
$(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \
- $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/ssize_t.m4 \
+ $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/socketlib.m4 \
+ $(top_srcdir)/m4/sockets.m4 $(top_srcdir)/m4/socklen.m4 \
+ $(top_srcdir)/m4/sockpfaf.m4 $(top_srcdir)/m4/ssize_t.m4 \
$(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \
- $(top_srcdir)/m4/stdarg.m4 $(top_srcdir)/m4/stdbool.m4 \
- $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \
- $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \
- $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/strcase.m4 \
- $(top_srcdir)/m4/strerror.m4 $(top_srcdir)/m4/strftime.m4 \
+ $(top_srcdir)/m4/stdalign.m4 $(top_srcdir)/m4/stdarg.m4 \
+ $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \
+ $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \
+ $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \
+ $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strerror.m4 \
+ $(top_srcdir)/m4/strerror_r.m4 $(top_srcdir)/m4/strftime.m4 \
$(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \
$(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \
$(top_srcdir)/m4/strptime.m4 $(top_srcdir)/m4/strtoull.m4 \
$(top_srcdir)/m4/strtoumax.m4 $(top_srcdir)/m4/symlink.m4 \
+ $(top_srcdir)/m4/sys_ioctl_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 \
- $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_wait_h.m4 \
- $(top_srcdir)/m4/tempname.m4 $(top_srcdir)/m4/time_h.m4 \
- $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/timespec.m4 \
- $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/unistd_h.m4 \
- $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/usleep.m4 \
+ $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_uio_h.m4 \
+ $(top_srcdir)/m4/sys_wait_h.m4 $(top_srcdir)/m4/tempname.m4 \
+ $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \
+ $(top_srcdir)/m4/time_rz.m4 $(top_srcdir)/m4/timegm.m4 \
+ $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \
+ $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlocked-io.m4 \
$(top_srcdir)/m4/vararrays.m4 $(top_srcdir)/m4/vasnprintf.m4 \
$(top_srcdir)/m4/vasprintf.m4 $(top_srcdir)/m4/version-etc.m4 \
$(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/warnings.m4 \
$(top_srcdir)/m4/xvasprintf.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/lib/config.h
CONFIG_CLEAN_FILES =
TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/build-aux/test-driver
TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \
$(TEST_LOG_FLAGS)
+am__DIST_COMMON = $(srcdir)/Makefile.in \
+ $(top_srcdir)/build-aux/test-driver
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
pkglibexecdir = @pkglibexecdir@
ACLOCAL = @ACLOCAL@
GLIBC21 = @GLIBC21@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
+GNULIB_ACCEPT = @GNULIB_ACCEPT@
+GNULIB_ACCEPT4 = @GNULIB_ACCEPT4@
GNULIB_ATOLL = @GNULIB_ATOLL@
+GNULIB_BIND = @GNULIB_BIND@
GNULIB_BTOWC = @GNULIB_BTOWC@
GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@
GNULIB_CANONICALIZE_FILE_NAME = @GNULIB_CANONICALIZE_FILE_NAME@
GNULIB_CHDIR = @GNULIB_CHDIR@
GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
+GNULIB_CONNECT = @GNULIB_CONNECT@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
GNULIB_DUP = @GNULIB_DUP@
GNULIB_DUP2 = @GNULIB_DUP2@
GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@
+GNULIB_GETPEERNAME = @GNULIB_GETPEERNAME@
+GNULIB_GETSOCKNAME = @GNULIB_GETSOCKNAME@
+GNULIB_GETSOCKOPT = @GNULIB_GETSOCKOPT@
GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@
GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@
GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@
GNULIB_ICONV = @GNULIB_ICONV@
GNULIB_IMAXABS = @GNULIB_IMAXABS@
GNULIB_IMAXDIV = @GNULIB_IMAXDIV@
+GNULIB_INET_NTOP = @GNULIB_INET_NTOP@
+GNULIB_INET_PTON = @GNULIB_INET_PTON@
+GNULIB_IOCTL = @GNULIB_IOCTL@
GNULIB_ISATTY = @GNULIB_ISATTY@
+GNULIB_ISBLANK = @GNULIB_ISBLANK@
GNULIB_ISWBLANK = @GNULIB_ISWBLANK@
GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@
GNULIB_LCHMOD = @GNULIB_LCHMOD@
GNULIB_LCHOWN = @GNULIB_LCHOWN@
GNULIB_LINK = @GNULIB_LINK@
GNULIB_LINKAT = @GNULIB_LINKAT@
+GNULIB_LISTEN = @GNULIB_LISTEN@
GNULIB_LOCALECONV = @GNULIB_LOCALECONV@
GNULIB_LSEEK = @GNULIB_LSEEK@
GNULIB_LSTAT = @GNULIB_LSTAT@
GNULIB_PREAD = @GNULIB_PREAD@
GNULIB_PRINTF = @GNULIB_PRINTF@
GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@
+GNULIB_PSELECT = @GNULIB_PSELECT@
GNULIB_PTHREAD_SIGMASK = @GNULIB_PTHREAD_SIGMASK@
GNULIB_PTSNAME = @GNULIB_PTSNAME@
GNULIB_PTSNAME_R = @GNULIB_PTSNAME_R@
GNULIB_PUTENV = @GNULIB_PUTENV@
GNULIB_PUTS = @GNULIB_PUTS@
GNULIB_PWRITE = @GNULIB_PWRITE@
+GNULIB_QSORT_R = @GNULIB_QSORT_R@
GNULIB_RAISE = @GNULIB_RAISE@
GNULIB_RANDOM = @GNULIB_RANDOM@
GNULIB_RANDOM_R = @GNULIB_RANDOM_R@
GNULIB_READLINKAT = @GNULIB_READLINKAT@
GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@
GNULIB_REALPATH = @GNULIB_REALPATH@
+GNULIB_RECV = @GNULIB_RECV@
+GNULIB_RECVFROM = @GNULIB_RECVFROM@
GNULIB_REMOVE = @GNULIB_REMOVE@
GNULIB_RENAME = @GNULIB_RENAME@
GNULIB_RENAMEAT = @GNULIB_RENAMEAT@
GNULIB_RPMATCH = @GNULIB_RPMATCH@
GNULIB_SCANF = @GNULIB_SCANF@
GNULIB_SECURE_GETENV = @GNULIB_SECURE_GETENV@
+GNULIB_SELECT = @GNULIB_SELECT@
+GNULIB_SEND = @GNULIB_SEND@
+GNULIB_SENDTO = @GNULIB_SENDTO@
GNULIB_SETENV = @GNULIB_SETENV@
GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@
GNULIB_SETLOCALE = @GNULIB_SETLOCALE@
+GNULIB_SETSOCKOPT = @GNULIB_SETSOCKOPT@
+GNULIB_SHUTDOWN = @GNULIB_SHUTDOWN@
GNULIB_SIGACTION = @GNULIB_SIGACTION@
GNULIB_SIGNAL_H_SIGPIPE = @GNULIB_SIGNAL_H_SIGPIPE@
GNULIB_SIGPROCMASK = @GNULIB_SIGPROCMASK@
GNULIB_SLEEP = @GNULIB_SLEEP@
GNULIB_SNPRINTF = @GNULIB_SNPRINTF@
+GNULIB_SOCKET = @GNULIB_SOCKET@
GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@
GNULIB_STAT = @GNULIB_STAT@
GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@
GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@
GNULIB_TIMEGM = @GNULIB_TIMEGM@
GNULIB_TIME_R = @GNULIB_TIME_R@
+GNULIB_TIME_RZ = @GNULIB_TIME_RZ@
GNULIB_TMPFILE = @GNULIB_TMPFILE@
GNULIB_TOWCTRANS = @GNULIB_TOWCTRANS@
GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@
GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
+HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ARPA_INET_H = @HAVE_ARPA_INET_H@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@
HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@
HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@
+HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@
+HAVE_DECL_INET_PTON = @HAVE_DECL_INET_PTON@
HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@
HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@
HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
+HAVE_ISBLANK = @HAVE_ISBLANK@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@
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@
HAVE_MBRTOWC = @HAVE_MBRTOWC@
HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MKSTEMPS = @HAVE_MKSTEMPS@
HAVE_MSVC_INVALID_PARAMETER_HANDLER = @HAVE_MSVC_INVALID_PARAMETER_HANDLER@
HAVE_NANOSLEEP = @HAVE_NANOSLEEP@
+HAVE_NETINET_IN_H = @HAVE_NETINET_IN_H@
HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@
HAVE_OPENAT = @HAVE_OPENAT@
HAVE_OS_H = @HAVE_OS_H@
HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@
HAVE_POSIX_SIGNALBLOCKING = @HAVE_POSIX_SIGNALBLOCKING@
HAVE_PREAD = @HAVE_PREAD@
+HAVE_PSELECT = @HAVE_PSELECT@
HAVE_PTHREAD_SIGMASK = @HAVE_PTHREAD_SIGMASK@
HAVE_PTSNAME = @HAVE_PTSNAME@
HAVE_PTSNAME_R = @HAVE_PTSNAME_R@
HAVE_REALPATH = @HAVE_REALPATH@
HAVE_RENAMEAT = @HAVE_RENAMEAT@
HAVE_RPMATCH = @HAVE_RPMATCH@
+HAVE_SA_FAMILY_T = @HAVE_SA_FAMILY_T@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
HAVE_STRUCT_SIGACTION_SA_SIGACTION = @HAVE_STRUCT_SIGACTION_SA_SIGACTION@
+HAVE_STRUCT_SOCKADDR_STORAGE = @HAVE_STRUCT_SOCKADDR_STORAGE@
+HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY = @HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY@
HAVE_STRUCT_TIMEVAL = @HAVE_STRUCT_TIMEVAL@
HAVE_STRVERSCMP = @HAVE_STRVERSCMP@
HAVE_SYMLINK = @HAVE_SYMLINK@
HAVE_SYMLINKAT = @HAVE_SYMLINKAT@
HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@
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_SELECT_H = @HAVE_SYS_SELECT_H@
+HAVE_SYS_SOCKET_H = @HAVE_SYS_SOCKET_H@
HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@
HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@
+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_UNISTD_H = @HAVE_UNISTD_H@
HAVE_UNLINKAT = @HAVE_UNLINKAT@
HAVE_WMEMCPY = @HAVE_WMEMCPY@
HAVE_WMEMMOVE = @HAVE_WMEMMOVE@
HAVE_WMEMSET = @HAVE_WMEMSET@
+HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@
HAVE_XLOCALE_H = @HAVE_XLOCALE_H@
HAVE__BOOL = @HAVE__BOOL@
HAVE__EXIT = @HAVE__EXIT@
ICONV_H = @ICONV_H@
INCLUDE_NEXT = @INCLUDE_NEXT@
INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@
+INET_PTON_LIB = @INET_PTON_LIB@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
LIBS = @LIBS@
LIBSIGSEGV = @LIBSIGSEGV@
LIBSIGSEGV_PREFIX = @LIBSIGSEGV_PREFIX@
+LIBSOCKET = @LIBSOCKET@
LIBTESTS_LIBDEPS = @LIBTESTS_LIBDEPS@
LIBUNISTRING_UNISTR_H = @LIBUNISTRING_UNISTR_H@
LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@
LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@
LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
+LIB_NANOSLEEP = @LIB_NANOSLEEP@
+LIB_SELECT = @LIB_SELECT@
LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@
LOCALE_FR = @LOCALE_FR@
LOCALE_FR_UTF8 = @LOCALE_FR_UTF8@
MSGFMT = @MSGFMT@
MSGFMT_015 = @MSGFMT_015@
MSGMERGE = @MSGMERGE@
+NETINET_IN_H = @NETINET_IN_H@
+NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@
+NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@
NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@
NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@
NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@
NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H = @NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H@
NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H = @NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H@
NEXT_AS_FIRST_DIRECTIVE_LOCALE_H = @NEXT_AS_FIRST_DIRECTIVE_LOCALE_H@
+NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H = @NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H@
NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H = @NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H@
NEXT_AS_FIRST_DIRECTIVE_STDARG_H = @NEXT_AS_FIRST_DIRECTIVE_STDARG_H@
NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@
NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_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_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@
NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@
+NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_UIO_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_WAIT_H@
NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@
NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@
NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@
NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@
+NEXT_CTYPE_H = @NEXT_CTYPE_H@
NEXT_ERRNO_H = @NEXT_ERRNO_H@
NEXT_FCNTL_H = @NEXT_FCNTL_H@
NEXT_FLOAT_H = @NEXT_FLOAT_H@
NEXT_INTTYPES_H = @NEXT_INTTYPES_H@
NEXT_LANGINFO_H = @NEXT_LANGINFO_H@
NEXT_LOCALE_H = @NEXT_LOCALE_H@
+NEXT_NETINET_IN_H = @NEXT_NETINET_IN_H@
NEXT_SIGNAL_H = @NEXT_SIGNAL_H@
NEXT_STDARG_H = @NEXT_STDARG_H@
NEXT_STDDEF_H = @NEXT_STDDEF_H@
NEXT_STDLIB_H = @NEXT_STDLIB_H@
NEXT_STRINGS_H = @NEXT_STRINGS_H@
NEXT_STRING_H = @NEXT_STRING_H@
+NEXT_SYS_IOCTL_H = @NEXT_SYS_IOCTL_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@
NEXT_SYS_TIME_H = @NEXT_SYS_TIME_H@
NEXT_SYS_TYPES_H = @NEXT_SYS_TYPES_H@
+NEXT_SYS_UIO_H = @NEXT_SYS_UIO_H@
NEXT_SYS_WAIT_H = @NEXT_SYS_WAIT_H@
NEXT_TIME_H = @NEXT_TIME_H@
NEXT_UNISTD_H = @NEXT_UNISTD_H@
REPLACE_GETCWD = @REPLACE_GETCWD@
REPLACE_GETDELIM = @REPLACE_GETDELIM@
REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@
+REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@
REPLACE_GETGROUPS = @REPLACE_GETGROUPS@
REPLACE_GETLINE = @REPLACE_GETLINE@
REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
+REPLACE_GMTIME = @REPLACE_GMTIME@
REPLACE_ICONV = @REPLACE_ICONV@
REPLACE_ICONV_OPEN = @REPLACE_ICONV_OPEN@
REPLACE_ICONV_UTF = @REPLACE_ICONV_UTF@
+REPLACE_INET_NTOP = @REPLACE_INET_NTOP@
+REPLACE_INET_PTON = @REPLACE_INET_PTON@
+REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@
REPLACE_LINK = @REPLACE_LINK@
REPLACE_LINKAT = @REPLACE_LINKAT@
REPLACE_LOCALECONV = @REPLACE_LOCALECONV@
+REPLACE_LOCALTIME = @REPLACE_LOCALTIME@
REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@
REPLACE_LSEEK = @REPLACE_LSEEK@
REPLACE_LSTAT = @REPLACE_LSTAT@
REPLACE_POPEN = @REPLACE_POPEN@
REPLACE_PREAD = @REPLACE_PREAD@
REPLACE_PRINTF = @REPLACE_PRINTF@
+REPLACE_PSELECT = @REPLACE_PSELECT@
REPLACE_PTHREAD_SIGMASK = @REPLACE_PTHREAD_SIGMASK@
REPLACE_PTSNAME = @REPLACE_PTSNAME@
REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@
REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
+REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
+REPLACE_READLINKAT = @REPLACE_READLINKAT@
REPLACE_REALLOC = @REPLACE_REALLOC@
REPLACE_REALPATH = @REPLACE_REALPATH@
REPLACE_REMOVE = @REPLACE_REMOVE@
REPLACE_RENAME = @REPLACE_RENAME@
REPLACE_RENAMEAT = @REPLACE_RENAMEAT@
REPLACE_RMDIR = @REPLACE_RMDIR@
+REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOIMAX = @REPLACE_STRTOIMAX@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOUMAX = @REPLACE_STRTOUMAX@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
+REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@
REPLACE_TIMEGM = @REPLACE_TIMEGM@
REPLACE_TMPFILE = @REPLACE_TMPFILE@
REPLACE_TOWLOWER = @REPLACE_TOWLOWER@
REPLACE_WCTOMB = @REPLACE_WCTOMB@
REPLACE_WCWIDTH = @REPLACE_WCWIDTH@
REPLACE_WRITE = @REPLACE_WRITE@
+SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@
SIZE_T_SUFFIX = @SIZE_T_SUFFIX@
SRC_VERSION_C = @SRC_VERSION_C@
+STDALIGN_H = @STDALIGN_H@
STDARG_H = @STDARG_H@
STDBOOL_H = @STDBOOL_H@
STDDEF_H = @STDDEF_H@
STDINT_H = @STDINT_H@
STRIP = @STRIP@
+SYS_IOCTL_H_HAVE_WINSOCK2_H = @SYS_IOCTL_H_HAVE_WINSOCK2_H@
+SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@
SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@
TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@
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_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@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
am__include = @am__include@
am__quote = @am__quote@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
+mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
TESTS = \
basic \
+ bignum \
binary \
+ brief-vs-stat-zero-kernel-lies \
colliding-file-names \
excess-slash \
help-version \
function-line-vs-leading-space \
+ ignore-matching-lines \
label-vs-func \
new-file \
no-dereference \
no-newline-at-eof \
stdin \
- filename-quoting
+ strcoll-0-names \
+ filename-quoting \
+ colors
EXTRA_DIST = \
- $(TESTS) init.sh t-local.sh
+ $(TESTS) init.sh t-local.sh envvar-check
# Note that the first lines are statements. They ensure that environment
# The rest are envvar settings that propagate build-related Makefile
# variables to test scripts.
TESTS_ENVIRONMENT = \
- tmp__=$$TMPDIR; test -d "$$tmp__" || tmp__=.; \
- TMPDIR=$$tmp__; export TMPDIR; \
- export \
- VERSION='$(VERSION)' \
- abs_top_builddir='$(abs_top_builddir)' \
- abs_top_srcdir='$(abs_top_srcdir)' \
- abs_srcdir='$(abs_srcdir)' \
- built_programs="`$(built_programs)`" \
- srcdir='$(srcdir)' \
- top_srcdir='$(top_srcdir)' \
- CC='$(CC)' \
- MAKE=$(MAKE) \
- PACKAGE_BUGREPORT='$(PACKAGE_BUGREPORT)' \
- PACKAGE_VERSION=$(PACKAGE_VERSION) \
- CONFIG_HEADER='$(abs_top_builddir)/lib/config.h' \
- ENABLE_DEVICE_MAPPER=$(ENABLE_DEVICE_MAPPER) \
- PERL='$(PERL)' \
- PREFERABLY_POSIX_SHELL='$(PREFERABLY_POSIX_SHELL)' \
- REPLACE_GETCWD=$(REPLACE_GETCWD) \
- PATH='$(abs_top_builddir)/src$(PATH_SEPARATOR)'"$$PATH" \
+ tmp__=$${TMPDIR-/tmp}; \
+ test -d "$$tmp__" && test -w "$$tmp__" || tmp__=.; \
+ . $(srcdir)/envvar-check; \
+ TMPDIR=$$tmp__; export TMPDIR; \
+ \
+ if test -n "$$BASH_VERSION" || (eval "export v=x") 2>/dev/null; then \
+ export_with_values () { export "$$@"; }; \
+ else \
+ export_with_values () \
+ { \
+ sed_extract_var='s/=.*//'; \
+ sed_quote_value="s/'/'\\\\''/g;s/=\\(.*\\)/='\\1'/";\
+ for arg in "$$@"; do \
+ var=`echo "$$arg" | sed "$$sed_extract_var"`; \
+ arg=`echo "$$arg" | sed "$$sed_quote_value"`; \
+ eval "$$arg"; \
+ export "$$var"; \
+ done; \
+ }; \
+ fi; \
+ \
+ export_with_values \
+ VERSION='$(VERSION)' \
+ LOCALE_FR='$(LOCALE_FR)' \
+ LOCALE_FR_UTF8='$(LOCALE_FR_UTF8)' \
+ AWK=$(AWK) \
+ GREP_OPTIONS='' \
+ LC_ALL=C \
+ abs_top_builddir='$(abs_top_builddir)' \
+ abs_top_srcdir='$(abs_top_srcdir)' \
+ abs_srcdir='$(abs_srcdir)' \
+ built_programs="`$(built_programs)`" \
+ srcdir='$(srcdir)' \
+ top_srcdir='$(top_srcdir)' \
+ CC='$(CC)' \
+ DIFFUTILS_TEST_NAME=`echo $$tst|sed 's,^\./,,;s,/,-,g'` \
+ MAKE=$(MAKE) \
+ MALLOC_PERTURB_=$(MALLOC_PERTURB_) \
+ PACKAGE_BUGREPORT='$(PACKAGE_BUGREPORT)' \
+ PACKAGE_VERSION=$(PACKAGE_VERSION) \
+ PERL='$(PERL)' \
+ SHELL='$(SHELL)' \
+ PREFERABLY_POSIX_SHELL='$(PREFERABLY_POSIX_SHELL)' \
+ REPLACE_GETCWD=$(REPLACE_GETCWD) \
+ PATH='$(abs_top_builddir)/src$(PATH_SEPARATOR)'"$$PATH" \
+ stderr_fileno_=9 \
; 9>&2
LOG_COMPILER = $(SHELL)
built_programs = \
echo 'spy:;@echo $$(PROGRAMS)' \
- | (cd ../src && MAKEFLAGS= $(MAKE) -s -f Makefile -f - spy) \
- | tr ' ' '\n' | sed '/^$$/d; s,$(EXEEXT)$$,,' | sort -u
+ | { (cd ../src && MAKEFLAGS= $(MAKE) -s -f Makefile -f - spy) \
+ | tr ' ' '\n' \
+ | sed '/^$$/d; s,$(EXEEXT)$$,,' \
+ | sort -u \
+ | tr '\n' ' '; echo; } \
+ | sed 's/ $$//'
VERBOSE = yes
all: all-am
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu tests/Makefile
-.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(MAKE) $(AM_MAKEFLAGS) $<
# Leading 'am--fnord' is there to ensure the list of targets does not
-# exand to empty, as could happen e.g. with make check TESTS=''.
+# expand to empty, as could happen e.g. with make check TESTS=''.
am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck)
am--force-recheck:
@:
if test -n "$$am__remaking_logs"; then \
echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \
"recursion detected" >&2; \
- else \
+ elif test -n "$$redo_logs"; then \
am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \
fi; \
if $(am__make_dryrun); then :; else \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+bignum.log: bignum
+ @p='bignum'; \
+ b='bignum'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
binary.log: binary
@p='binary'; \
b='binary'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+brief-vs-stat-zero-kernel-lies.log: brief-vs-stat-zero-kernel-lies
+ @p='brief-vs-stat-zero-kernel-lies'; \
+ b='brief-vs-stat-zero-kernel-lies'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
colliding-file-names.log: colliding-file-names
@p='colliding-file-names'; \
b='colliding-file-names'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+ignore-matching-lines.log: ignore-matching-lines
+ @p='ignore-matching-lines'; \
+ b='ignore-matching-lines'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
label-vs-func.log: label-vs-func
@p='label-vs-func'; \
b='label-vs-func'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+strcoll-0-names.log: strcoll-0-names
+ @p='strcoll-0-names'; \
+ b='strcoll-0-names'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
filename-quoting.log: filename-quoting
@p='filename-quoting'; \
b='filename-quoting'; \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+colors.log: colors
+ @p='colors'; \
+ b='colors'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
.test.log:
@p='$<'; \
$(am__set_b); \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am recheck tags-am uninstall uninstall-am
+.PRECIOUS: Makefile
+
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
--- /dev/null
+#!/bin/sh
+# big numbers
+
+. "${srcdir=.}/init.sh"; path_prepend_ ../src
+
+fail=0
+
+for tabsize in 2147483648 9223372036854775808; do
+ diff --tabsize=$tabsize /dev/null /dev/null
+ status=$?
+ test $status -eq 0 || test $status -eq 2 || fail=1
+done
+
+Exit $fail
printf '\0'|diff - /dev/null > out 2> err
-# diff must exit with status 2, stdout as above, and no stderr.
-test $? = 2 || fail=1
+# diff must exit with status 1, stdout as above, and no stderr.
+test $? = 1 || fail=1
compare out-exp out || fail=1
compare /dev/null err || fail=1
--- /dev/null
+#!/bin/sh
+# Before diff-3.4, diff --brief could mistakenly declare a difference.
+# For example, when comparing a file like /proc/cmdline (for which the linux
+# kernel reports a st_size of 0 even though it is not an empty file) to a
+# copy of that file's contents residing on a "normal" file system.
+
+. "${srcdir=.}/init.sh"; path_prepend_ ../src
+
+fail=0
+
+# Skip the test unless we have an appropriate file.
+boot=/proc/cmdline
+test -f $boot || skip_ no $boot file
+sz=$(stat --format %s $boot) || skip_ stat --format %s does not work
+test $sz = 0 || skip_ $boot has nonzero size
+
+# /proc/self is not useful on the Hurd, where it always points to "1",
+# so skip this test when /proc/self does not point to a file whose name is
+# the current process ID.
+readlink /proc/self > pid & pid=$!
+wait $pid
+echo $pid > exp
+compare exp pid || skip_ /proc/self is not useful on this system
+
+# There are two code paths to test: one for non-binary and one for binary files.
+# $boot is non-binary.
+cat $boot > ref || framework_failure_
+diff --brief $boot ref > out 2>&1 || fail=1
+compare /dev/null out || fail=1
+
+# /proc/self/cmdline is a NUL-terminated list of argv values,
+# so construct the expected output here:
+printf 'diff\0--brief\0/proc/self/cmdline\0bin\0' > bin || framework_failure_
+# And run the command that is embedded in that output:
+diff --brief /proc/self/cmdline bin > out 2>&1 || fail=1
+compare /dev/null out || fail=1
+
+Exit $fail
--- /dev/null
+#!/bin/sh
+
+. "${srcdir=.}/init.sh"; path_prepend_ ../src
+
+TZ=UTC0
+export TZ
+
+fail=0
+
+echo a > a
+echo b > b
+
+epoch='1970-01-01 00:00:00'
+touch -t 197001010000.00 a b
+
+e=$(printf '\033')
+tab=$(printf '\t')
+
+gen_exp_u()
+{
+ local epoch_plus="$epoch.000000000 +0000"
+ local rs=$(printf "$e[${rs}m")
+ local hd=$(printf "$e[${hd}m")
+ local ad=$(printf "$e[${ad}m")
+ local de=$(printf "$e[${de}m")
+ local ln=$(printf "$e[${ln}m")
+ printf '%s' \
+"$hd--- a$tab$epoch_plus
++++ b$tab$epoch_plus
+$rs${ln}@@ -1 +1 @@$rs
+$de-a$rs
+$ad+b$rs
+"
+}
+
+gen_exp_c()
+{
+ local epoch_posix_1003_1_2001="Thu Jan 1 00:00:00 1970"
+ local rs=$(printf "$e[${rs}m")
+ local hd=$(printf "$e[${hd}m")
+ local ad=$(printf "$e[${ad}m")
+ local de=$(printf "$e[${de}m")
+ local ln=$(printf "$e[${ln}m")
+ printf '%s' \
+"$hd*** a$tab$epoch_posix_1003_1_2001
+--- b$tab$epoch_posix_1003_1_2001
+$rs***************
+$ln*** 1 ****$rs
+$de! a$rs
+$ln--- 1 ----$rs
+$ad! b$rs
+"
+}
+
+gen_exp_default()
+{
+ printf '%s' \
+"1c1
+< a
+---
+> b
+"
+}
+
+gen_exp_default_colors()
+{
+ local rs=$(printf "$e[${rs}m")
+ local hd=$(printf "$e[${hd}m")
+ local ad=$(printf "$e[${ad}m")
+ local de=$(printf "$e[${de}m")
+ local ln=$(printf "$e[${ln}m")
+ printf '%s' \
+"${ln}1c1$rs
+$de< a$rs
+---
+$ad> b$rs
+"
+}
+
+# Compare with some known outputs
+
+rs=0 hd=1 ad=32 de=31 ln=36
+
+diff --color=auto a b > out
+test $? = 1 || fail=1
+gen_exp_default > exp || framework_failure_
+compare exp out || fail=1
+
+diff --color=never a b > out
+test $? = 1 || fail=1
+gen_exp_default > exp || framework_failure_
+compare exp out || fail=1
+
+diff a b > out
+test $? = 1 || fail=1
+gen_exp_default > exp || framework_failure_
+compare exp out || fail=1
+
+diff --color=always a b > out
+test $? = 1 || fail=1
+gen_exp_default_colors > exp || framework_failure_
+compare exp out || fail=1
+
+diff -u --color=always a b > out
+test $? = 1 || fail=1
+gen_exp_u > exp || framework_failure_
+compare exp out || fail=1
+
+diff -c --color=always a b > out
+test $? = 1 || fail=1
+gen_exp_c > exp || framework_failure_
+compare exp out || fail=1
+
+rs=0 hd=33 ad=34 de=35 ln=36
+diff -u --color=always --palette="rs=0:hd=33:ad=34:de=35:ln=36" a b > out
+test $? = 1 || fail=1
+gen_exp_u > exp || framework_failure_
+compare exp out || fail=1
+
+# Before the fix in http://debbugs.gnu.org/22067,
+# this test would trigger an infinite loop bug.
+mkfifo fifo
+printf '%*s-a' 1000000 > a
+printf '%*s-b' 1000000 > b
+head -c 10 < fifo > /dev/null &
+diff --color=always ---presume-output-tty a b > fifo
+test $? = 141 || fail=1
+
+Exit $fail
--- /dev/null
+# -*- sh -*-
+# Check environment variables for sane values while testing.
+
+# Copyright (C) 2000-2016 Free Software Foundation, Inc.
+
+# This program is free software: you can redistribute it and/or modify
+# 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/>.
+
+if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
+ as_unset=unset
+else
+ as_unset=false
+fi
+
+envvar_check_fail=0
+vars='
+ _POSIX2_VERSION
+ _STDBUF_E
+ _STDBUF_I
+ _STDBUF_O
+ BASH_ENV
+ BLOCKSIZE
+ BLOCK_SIZE
+ CDPATH
+ COLUMNS
+ DF_BLOCK_SIZE
+ DU_BLOCK_SIZE
+ EDITOR
+ ENV
+ GREP_OPTIONS
+ LANGUAGE
+ LS_BLOCK_SIZE
+ LS_COLORS
+ OMP_NUM_THREADS
+ POSIXLY_CORRECT
+ QUOTING_STYLE
+ SIMPLE_BACKUP_SUFFIX
+ TABSIZE
+ TERM
+ COLORTERM
+ TIME_STYLE
+ TMPDIR
+ VERSION_CONTROL
+'
+for var in $vars
+do
+ $as_unset $var
+ if eval test \"\${$var+set}\" = set; then
+ echo "$0: the $var environment variable is set --" \
+ ' unset it and rerun this test' >&2
+ envvar_check_fail=1
+ fi
+done
+
+test "$envvar_check_fail" = 1 && exit 1
# Make sure all these programs work properly
# when invoked with --help or --version.
-# Copyright (C) 2000-2013 Free Software Foundation, Inc.
+# Copyright (C) 2000-2013, 2015-2016 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
--- /dev/null
+#!/bin/sh
+# --ignore-matching-lines
+
+# Bug reported by Vincent Lefevre in <http://bugs.gnu.org/16864>.
+
+. "${srcdir=.}/init.sh"; path_prepend_ ../src
+
+fail=0
+
+cat <<'EOF' >a
+1a
+2
+3a
+4
+5
+6
+EOF
+
+cat <<'EOF' >b
+1b
+2
+3b
+4
+5
+6
+7
+EOF
+
+cat <<'EOF' >exp
+@@ -1,6 +1,7 @@
+-1a
++1b
+ 2
+-3a
++3b
+ 4
+ 5
+ 6
++7
+EOF
+
+diff -u --ignore-matching-lines 3 a b >out 2>err
+test $? = 1 || fail=1
+sed 1,2d out >outtail || framework_failure+
+compare exp outtail || fail=1
+
+Exit $fail
# source this file; set up for tests
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2016 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
fatal_ () { warn_ "$ME_: hard error: $@"; Exit 99; }
framework_failure_ () { warn_ "$ME_: set-up failure: $@"; Exit 99; }
+# This is used to simplify checking of the return value
+# which is useful when ensuring a command fails as desired.
+# I.e., just doing `command ... &&fail=1` will not catch
+# a segfault in command for example. With this helper you
+# instead check an explicit exit code like
+# returns_ 1 command ... || fail
+returns_ () {
+ # Disable tracing so it doesn't interfere with stderr of the wrapped command
+ { set +x; } 2>/dev/null
+
+ local exp_exit="$1"
+ shift
+ "$@"
+ test $? -eq $exp_exit && ret_=0 || ret_=1
+
+ if test "$VERBOSE" = yes && test "$gl_set_x_corrupts_stderr_" = false; then
+ set -x
+ fi
+ { return $ret_; } 2>/dev/null
+}
+
# Sanitize this shell to POSIX mode, if possible.
DUALCASE=1; export DUALCASE
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
# ? - not ok
gl_shell_test_script_='
test $(echo y) = y || exit 1
+f_local_() { local v=1; }; f_local_ || exit 1
score_=10
if test "$VERBOSE" = yes; then
test -n "$( (exec 3>&1; set -x; P=1 true 2>&3) 2> /dev/null)" && score_=9
*x*) opts_=-x ;;
*) opts_= ;;
esac
+ re_shell=$re_shell_
+ export re_shell
exec "$re_shell_" $opts_ "$0" --no-reexec "$@"
echo "$ME_: exec failed" 1>&2
exit 127
fi
}
fi
-elif diff_out_=`exec 2>/dev/null; diff -c "$0" "$0" < /dev/null`; then
+elif
+ for diff_opt_ in -U3 -c '' no; do
+ test "$diff_opt_" = no && break
+ diff_out_=`exec 2>/dev/null; diff $diff_opt_ "$0" "$0" </dev/null` && break
+ done
+ test "$diff_opt_" != no
+then
if test -z "$diff_out_"; then
- compare_ () { diff -c "$@"; }
+ compare_ () { diff $diff_opt_ "$@"; }
else
compare_ ()
{
- if diff -c "$@" > diff.out; then
+ if diff $diff_opt_ "$@" > diff.out; then
# No differences were found, but AIX and HP-UX 'diff' produce output
# "No differences encountered" or "There are no differences between the
# files.". Hide this output.
fi
}
fi
-elif ( cmp --version < /dev/null 2>&1 | grep GNU ) > /dev/null 2>&1; then
+elif cmp -s /dev/null /dev/null 2>/dev/null; then
compare_ () { cmp -s "$@"; }
else
compare_ () { cmp "$@"; }
fi
initial_cwd_=$PWD
- fail=0
pfx_=`testdir_prefix_`
test_dir_=`mktempd_ "$initial_cwd_" "$pfx_-$ME_.XXXX"` \
# Disallow any trailing slash on specified destdir:
# it would subvert the post-mktemp "case"-based destdir test.
case $destdir_ in
- /) ;;
+ / | //) destdir_slash_=$destdir;;
*/) fail_ "invalid destination dir: remove trailing slash(es)";;
+ *) destdir_slash_=$destdir_/;;
esac
case $template_ in
esac
# First, try to use mktemp.
- d=`unset TMPDIR; { mktemp -d -t -p "$destdir_" "$template_"; } 2>/dev/null` \
- || fail=1
+ d=`unset TMPDIR; { mktemp -d -t -p "$destdir_" "$template_"; } 2>/dev/null` &&
# The resulting name must be in the specified directory.
- case $d in "$destdir_"*);; *) fail=1;; esac
+ case $d in "$destdir_slash_"*) :;; *) false;; esac &&
# It must have created the directory.
- test -d "$d" || fail=1
+ test -d "$d" &&
# It must have 0700 permissions. Handle sticky "S" bits.
- perms=`ls -dgo "$d" 2>/dev/null|tr S -` || fail=1
- case $perms in drwx------*) ;; *) fail=1;; esac
-
- test $fail = 0 && {
+ perms=`ls -dgo "$d" 2>/dev/null` &&
+ case $perms in drwx--[-S]---*) :;; *) false;; esac && {
echo "$d"
return
}
i_=1
while :; do
X_=`rand_bytes_ $nx_`
- candidate_dir_="$destdir_/$base_template_$X_"
+ candidate_dir_="$destdir_slash_$base_template_$X_"
err_=`mkdir -m 0700 "$candidate_dir_" 2>&1` \
&& { echo "$candidate_dir_"; return; }
test $MAX_TRIES_ -le $i_ && break;
# expect empty stderr
compare /dev/null err || fail=1
+# Test for Bug#18402.
+printf a > a
+printf b > b
+diff -B a b > out 2>err
+test $? = 1 || fail=1
+
Exit $fail
--- /dev/null
+#!/bin/sh
+# Check that diff responds well with two different file names
+# that compare equal with strcoll. See:
+# http://lists.gnu.org/archive/html/bug-diffutils/2013-03/msg00012.html
+
+. "${srcdir=.}/init.sh"; path_prepend_ ../src
+
+# These two names compare equal in the en_US.UTF-8 locale
+# in current (2013) versions of glibc.
+# On systems where the names do not compare equal,
+# this diff test should still do the right thing.
+LC_ALL=en_US.UTF-8
+export LC_ALL
+name1='エンドカード1'
+name2='ブックレット1'
+
+mkdir d1 d2 || fail=1
+echo x >d1/"$name1" || fail=1
+echo x >d2/"$name2" || fail=1
+
+# This should report a difference, but on the affected systems
+# diffutils 3.3 does not.
+diff d1 d2 && fail=1
+
+Exit $fail