Merge branch 'master' into experimental

* master:
  xz-utils/README.Debian: flesh out "differences from upstream"
  liblzma: Check that the first byte of range encoded data is 0x00.
  xz: Fix the version number printed by xz -lvv.
  xz: Update the man page about the new field in --robot -lvv.
  xz: Update man page date to match the latest update.
  debian/control: xz-utils is not pseudo-essential any more
  xz-utils/README.Debian: Document patches
diff --git a/ChangeLog b/ChangeLog
deleted file mode 100644
index 0c33f15..0000000
--- a/ChangeLog
+++ /dev/null
@@ -1,7 +0,0 @@
-See the commit log in the git repository:
-
-    git clone http://git.tukaani.org/xz.git
-
-Note that "make dist" doesn't put this tiny file into the package.
-Instead, the git commit log is used as ChangeLog. See dist-hook in
-Makefile.am for details.
diff --git a/INSTALL b/INSTALL
index 8b39319..c42a968 100644
--- a/INSTALL
+++ b/INSTALL
@@ -318,6 +318,11 @@
                 single-threaded applications and want to avoid dependency
                 on libpthread.
 
+    --enable-symbol-versions
+                Use symbol versioning for liblzma. This is enabled by
+                default on GNU/Linux, other GNU-based systems, and
+                FreeBSD.
+
     --enable-debug
                 This enables the assert() macro and possibly some other
                 run-time consistency checks. It makes the code slower, so
diff --git a/NEWS b/NEWS
index 2986b51..4d4973d 100644
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,47 @@
 XZ Utils Release Notes
 ======================
 
+5.1.2alpha (2012-07-04)
+
+    * All fixes from 5.0.3 and 5.0.4
+
+    * liblzma:
+
+        - Fixed a deadlock and an invalid free() in the threaded encoder.
+
+        - Added support for symbol versioning. It is enabled by default
+          on GNU/Linux, other GNU-based systems, and FreeBSD.
+
+        - Use SHA-256 implementation from the operating system if one is
+          available in libc, libmd, or libutil. liblzma won't use e.g.
+          OpenSSL or libgcrypt to avoid introducing new dependencies.
+
+        - Fixed liblzma.pc for static linking.
+
+        - Fixed a few portability bugs.
+
+    * xz --decompress --single-stream now fixes the input position after
+      successful decompression. Now the following works:
+
+          echo foo | xz > foo.xz
+          echo bar | xz >> foo.xz
+          ( xz -dc --single-stream ; xz -dc --single-stream ) < foo.xz
+
+      Note that it doesn't work if the input is not seekable
+      or if there is Stream Padding between the concatenated
+      .xz Streams.
+
+    * xz -lvv now shows the minimum xz version that is required to
+      decompress the file. Currently it is 5.0.0 for all supported .xz
+      files except files with empty LZMA2 streams require 5.0.2.
+
+    * Added an *incomplete* implementation of --block-list=SIZES to xz.
+      It only works correctly in single-threaded mode and when
+      --block-size isn't used at the same time. --block-list allows
+      specifying the sizes of Blocks which can be useful e.g. when
+      creating files for random-access reading.
+
+
 5.1.1alpha (2011-04-12)
 
     * All fixes from 5.0.2
@@ -45,6 +86,43 @@
       experimental and may change before it gets into a stable release.
 
 
+5.0.4 (2012-06-22)
+
+    * liblzma:
+
+        - Fix lzma_index_init(). It could crash if memory allocation
+          failed.
+
+        - Fix the possibility of an incorrect LZMA_BUF_ERROR when a BCJ
+          filter is used and the application only provides exactly as
+          much output space as is the uncompressed size of the file.
+
+        - Fix a bug in doc/examples_old/xz_pipe_decompress.c. It didn't
+          check if the last call to lzma_code() really returned
+          LZMA_STREAM_END, which made the program think that truncated
+          files are valid.
+
+        - New example programs in doc/examples (old programs are now in
+          doc/examples_old). These have more comments and more detailed
+          error handling.
+
+    * Fix "xz -lvv foo.xz". It could crash on some corrupted files.
+
+    * Fix output of "xz --robot -lv" and "xz --robot -lvv" which
+      incorrectly printed the filename also in the "foo (x/x)" format.
+
+    * Fix exit status of "xzdiff foo.xz bar.xz".
+
+    * Fix exit status of "xzgrep foo binary_file".
+
+    * Fix portability to EBCDIC systems.
+
+    * Fix a configure issue on AIX with the XL C compiler. See INSTALL
+      for details.
+
+    * Update French, German, Italian, and Polish translations.
+
+
 5.0.3 (2011-05-21)
 
     * liblzma fixes:
diff --git a/TODO b/TODO
index 9448660..9cdb419 100644
--- a/TODO
+++ b/TODO
@@ -32,10 +32,20 @@
     time and calculated (de)compression speed won't make sense in the
     progress indicator (xz --verbose).
 
+    If liblzma has created threads and fork() gets called, liblzma
+    code will break in the child process unless it calls exec() and
+    doesn't touch liblzma.
+
 
 Missing features
 ----------------
 
+    Support LZMA_FINISH in raw decoder to indicate end of LZMA1 and
+    other streams that don't have an end of payload marker.
+
+    Adjust dictionary size when the input file size is known.
+    Maybe do this only if an option is given.
+
     xz doesn't support copying extended attributes, access control
     lists etc. from source to target file.
 
@@ -53,8 +63,6 @@
     It will be a separate library that supports uncompressed, .gz,
     .bz2, .lzma, and .xz files.
 
-    Check the first 0x00 byte of LZMA data.
-
     Support changing lzma_options_lzma.mode with lzma_filters_update().
 
     Support LZMA_FULL_FLUSH for lzma_stream_decoder() to stop at
diff --git a/configure.ac b/configure.ac
index 0c2f2fc..d51cc7f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -414,6 +414,10 @@
 	[], [enable_symbol_versions=auto])
 if test "x$enable_symbol_versions" = xauto; then
 	case $host_os in
+		# NOTE: Even if one omits -gnu on GNU/Linux (e.g.
+		# i486-slackware-linux), configure will (via config.sub)
+		# append -gnu (e.g. i486-slackware-linux-gnu), and this
+		# test will work correctly.
 		gnu* | *-gnu* | freebsd*)
 			enable_symbol_versions=yes
 			;;
diff --git a/debian/changelog b/debian/changelog
index dbb0b7b..f946775 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,13 @@
+xz-utils (5.1.2alpha-0.1) experimental; urgency=low
+
+  * New upstream alpha release.
+  * Remove support for the new --block-list option to give the
+    interface time to evolve.
+  * debian/rules clean: Remove more files not included in the
+    release tarball.
+
+ -- Jonathan Nieder <jrnieder@gmail.com>  Wed, 04 Jul 2012 16:18:33 -0500
+
 xz-utils (5.1.1alpha+20120614-1.1) unstable; urgency=low
 
   * Fixes from upstream:
diff --git a/debian/clean.sh b/debian/clean.sh
index 1a2f8b3..f172f81 100644
--- a/debian/clean.sh
+++ b/debian/clean.sh
@@ -38,6 +38,7 @@
 '
 
 dh_testdir
+rm -f macosx/build.sh src/liblzma/validate_map.sh
 rm -f debug/translation.bash tests/test_block.c ChangeLog
 rm -f ABOUT-NLS aclocal.m4 config.h.in configure
 (cd po && perl -e "$remove_files") < debian/generated-po.list
diff --git a/debian/patches/abi-liblzma2-compat b/debian/patches/abi-liblzma2-compat
index 051ab5c..4e5fefa 100644
--- a/debian/patches/abi-liblzma2-compat
+++ b/debian/patches/abi-liblzma2-compat
@@ -95,10 +95,10 @@
  3 files changed, 47 insertions(+), 2 deletions(-)
 
 diff --git a/configure.ac b/configure.ac
-index 25eb838f..88b81ba1 100644
+index 1ad78294..4beab681 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -471,6 +471,11 @@ if test "x$enable_threads" = xyes; then
+@@ -475,6 +475,11 @@ if test "x$enable_threads" = xyes; then
  	AC_CHECK_DECLS([CLOCK_MONOTONIC], [], [], [[#include <time.h>]])
  	CFLAGS=$OLD_CFLAGS
  fi
diff --git a/debian/patches/abi-threaded-encoder b/debian/patches/abi-threaded-encoder
index 04babbf..4f48504 100644
--- a/debian/patches/abi-threaded-encoder
+++ b/debian/patches/abi-threaded-encoder
@@ -21,32 +21,32 @@
 
 Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
 ---
- configure.ac                           |    1 -
- src/liblzma/Makefile.am                |    2 +-
- src/liblzma/api/lzma/container.h       |  167 ------
- src/liblzma/api/lzma/version.h         |    2 +-
- src/liblzma/common/Makefile.inc        |    7 -
- src/liblzma/common/common.c            |    9 +-
+ configure.ac                           |    1 
+ src/liblzma/Makefile.am                |    2 
+ src/liblzma/api/lzma/container.h       |  167 -----
+ src/liblzma/api/lzma/version.h         |    2 
+ src/liblzma/common/Makefile.inc        |    7 
+ src/liblzma/common/common.c            |    9 
  src/liblzma/common/common.h            |   16 -
  src/liblzma/common/outqueue.c          |  184 ------
  src/liblzma/common/outqueue.h          |  155 -----
  src/liblzma/common/stream_encoder_mt.c | 1013 --------------------------------
- src/xz/args.c                          |    5 +-
- src/xz/coder.c                         |  210 +++----
- src/xz/hardware.c                      |   24 +-
- src/xz/hardware.h                      |    9 +-
- src/xz/private.h                       |    2 -
- src/xz/xz.1                            |   34 +-
- 16 files changed, 117 insertions(+), 1723 deletions(-)
+ src/xz/args.c                          |    5 
+ src/xz/coder.c                         |  204 ++----
+ src/xz/hardware.c                      |   24 -
+ src/xz/hardware.h                      |    9 
+ src/xz/private.h                       |    2 
+ src/xz/xz.1                            |   32 -
+ 16 files changed, 113 insertions(+), 1719 deletions(-)
  delete mode 100644 src/liblzma/common/outqueue.c
  delete mode 100644 src/liblzma/common/outqueue.h
  delete mode 100644 src/liblzma/common/stream_encoder_mt.c
 
 diff --git a/configure.ac b/configure.ac
-index 25eb838..c9585e5 100644
+index 0941e8e..1ad7829 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -471,7 +471,6 @@ if test "x$enable_threads" = xyes; then
+@@ -475,7 +475,6 @@ if test "x$enable_threads" = xyes; then
  	AC_CHECK_DECLS([CLOCK_MONOTONIC], [], [], [[#include <time.h>]])
  	CFLAGS=$OLD_CFLAGS
  fi
@@ -260,7 +260,7 @@
   */
  #define LZMA_VERSION_MAJOR 5
  #define LZMA_VERSION_MINOR 1
--#define LZMA_VERSION_PATCH 1
+-#define LZMA_VERSION_PATCH 2
 +#define LZMA_VERSION_PATCH 0
  #define LZMA_VERSION_STABILITY LZMA_VERSION_STABILITY_ALPHA
  
@@ -1722,10 +1722,10 @@
 -	return total_memusage + outq_memusage;
 -}
 diff --git a/src/xz/args.c b/src/xz/args.c
-index dea93c5..f207e7f 100644
+index 9a4f82b..995b882 100644
 --- a/src/xz/args.c
 +++ b/src/xz/args.c
-@@ -179,9 +179,8 @@ parse_real(args_info *args, int argc, char **argv)
+@@ -242,9 +242,8 @@ parse_real(args_info *args, int argc, char **argv)
  			break;
  
  		case 'T':
@@ -1738,10 +1738,10 @@
  
  		// --version
 diff --git a/src/xz/coder.c b/src/xz/coder.c
-index 41193a7..4139da4 100644
+index a98be97..588f25a 100644
 --- a/src/xz/coder.c
 +++ b/src/xz/coder.c
-@@ -55,14 +55,6 @@ static lzma_check check;
+@@ -56,14 +56,6 @@ static lzma_check check;
  /// This becomes false if the --check=CHECK option is used.
  static bool check_default = true;
  
@@ -1756,7 +1756,7 @@
  
  extern void
  coder_set_check(lzma_check new_check)
-@@ -125,15 +117,6 @@ memlimit_too_small(uint64_t memory_usage)
+@@ -126,15 +118,6 @@ memlimit_too_small(uint64_t memory_usage)
  extern void
  coder_set_compression_settings(void)
  {
@@ -1772,7 +1772,7 @@
  	// Options for LZMA1 or LZMA2 in case we are using a preset.
  	static lzma_options_lzma opt_lzma;
  
-@@ -187,30 +170,15 @@ coder_set_compression_settings(void)
+@@ -188,30 +171,15 @@ coder_set_compression_settings(void)
  	// Print the selected filter chain.
  	message_filters_show(V_DEBUG, filters);
  
@@ -1809,7 +1809,7 @@
  
  	if (memory_usage == UINT64_MAX)
  		message_fatal(_("Unsupported filter chain or filter options"));
-@@ -226,99 +194,90 @@ coder_set_compression_settings(void)
+@@ -227,99 +195,90 @@ coder_set_compression_settings(void)
  						round_up_to_mib(decmem), 0));
  	}
  
@@ -1821,27 +1821,17 @@
 +		// --format=raw implies --no-auto-adjust.
 +		if (!opt_auto_adjust || opt_format == FORMAT_RAW)
 +			memlimit_too_small(memory_usage);
++
++		assert(opt_mode == MODE_COMPRESS);
  
 -	// If --no-auto-adjust was used or we didn't find LZMA1 or
 -	// LZMA2 as the last filter, give an error immediately.
 -	// --format=raw implies --no-auto-adjust.
 -	if (!opt_auto_adjust || opt_format == FORMAT_RAW)
 -		memlimit_too_small(memory_usage);
-+		assert(opt_mode == MODE_COMPRESS);
- 
+-
 -	assert(opt_mode == MODE_COMPRESS);
-+		// Look for the last filter if it is LZMA2 or LZMA1, so
-+		// we can make it use less RAM. With other filters we don't
-+		// know what to do.
-+		size_t i = 0;
-+		while (filters[i].id != LZMA_FILTER_LZMA2
-+				&& filters[i].id != LZMA_FILTER_LZMA1) {
-+			if (filters[i].id == LZMA_VLI_UNKNOWN)
-+				memlimit_too_small(memory_usage);
-+
-+			++i;
-+		}
- 
+-
 -#ifdef HAVE_PTHREAD
 -	if (opt_format == FORMAT_XZ && mt_options.threads > 1) {
 -		// Try to reduce the number of threads before
@@ -1852,6 +1842,23 @@
 -			// because it doesn't write the size info
 -			// into Block Headers.
 -			if (--mt_options.threads == 0)
++		// Look for the last filter if it is LZMA2 or LZMA1, so
++		// we can make it use less RAM. With other filters we don't
++		// know what to do.
++		size_t i = 0;
++		while (filters[i].id != LZMA_FILTER_LZMA2
++				&& filters[i].id != LZMA_FILTER_LZMA1) {
++			if (filters[i].id == LZMA_VLI_UNKNOWN)
+ 				memlimit_too_small(memory_usage);
+ 
+-			memory_usage = lzma_stream_encoder_mt_memusage(
+-					&mt_options);
+-			if (memory_usage == UINT64_MAX)
+-				message_bug();
++			++i;
++		}
+ 
+-		} while (memory_usage > memory_limit);
 +		// Decrease the dictionary size until we meet the memory
 +		// usage limit. First round down to full mebibytes.
 +		lzma_options_lzma *opt = filters[i].options;
@@ -1866,16 +1873,8 @@
 +			// FIXME: Displays the scaled memory usage instead
 +			// of the original.
 +			if (opt->dict_size < (UINT32_C(1) << 20))
- 				memlimit_too_small(memory_usage);
++				memlimit_too_small(memory_usage);
  
--			memory_usage = lzma_stream_encoder_mt_memusage(
--					&mt_options);
-+			memory_usage = lzma_raw_encoder_memusage(filters);
- 			if (memory_usage == UINT64_MAX)
- 				message_bug();
- 
--		} while (memory_usage > memory_limit);
--
 -		message(V_WARNING, _("Adjusted the number of threads "
 -			"from %s to %s to not exceed "
 -			"the memory usage limit of %s MiB"),
@@ -1883,16 +1882,32 @@
 -			uint64_to_str(mt_options.threads, 1),
 -			uint64_to_str(round_up_to_mib(
 -				memory_limit), 2));
+-	}
+-#endif
++			memory_usage = lzma_raw_encoder_memusage(filters);
++			if (memory_usage == UINT64_MAX)
++				message_bug();
+ 
+-	if (memory_usage <= memory_limit)
+-		return;
 +			// Accept it if it is low enough.
 +			if (memory_usage <= memory_limit)
 +				break;
-+
+ 
+-	// Look for the last filter if it is LZMA2 or LZMA1, so we can make
+-	// it use less RAM. With other filters we don't know what to do.
+-	size_t i = 0;
+-	while (filters[i].id != LZMA_FILTER_LZMA2
+-			&& filters[i].id != LZMA_FILTER_LZMA1) {
+-		if (filters[i].id == LZMA_VLI_UNKNOWN)
+-			memlimit_too_small(memory_usage);
 +			// Otherwise 1 MiB down and try again. I hope this
 +			// isn't too slow method for cases where the original
 +			// dict_size is very big.
 +			opt->dict_size -= UINT32_C(1) << 20;
 +		}
-+
+ 
+-		++i;
 +		// Tell the user that we decreased the dictionary size.
 +		message(V_WARNING, _("Adjusted LZMA%c dictionary size "
 +				"from %s MiB to %s MiB to not exceed "
@@ -1904,40 +1919,6 @@
 +				uint64_to_str(round_up_to_mib(
 +					memory_limit), 2));
  	}
--#endif
--
--	if (memory_usage <= memory_limit)
--		return;
--
--	// Look for the last filter if it is LZMA2 or LZMA1, so we can make
--	// it use less RAM. With other filters we don't know what to do.
--	size_t i = 0;
--	while (filters[i].id != LZMA_FILTER_LZMA2
--			&& filters[i].id != LZMA_FILTER_LZMA1) {
--		if (filters[i].id == LZMA_VLI_UNKNOWN)
--			memlimit_too_small(memory_usage);
- 
--		++i;
-+/*
-+	// Limit the number of worker threads so that memory usage
-+	// limit isn't exceeded.
-+	assert(memory_usage > 0);
-+	size_t thread_limit = memory_limit / memory_usage;
-+	if (thread_limit == 0)
-+		thread_limit = 1;
-+
-+	if (opt_threads > thread_limit)
-+		opt_threads = thread_limit;
-+*/
-+
-+	if (check_default) {
-+		// The default check type is CRC64, but fallback to CRC32
-+		// if CRC64 isn't supported by the copy of liblzma we are
-+		// using. CRC32 is always supported.
-+		check = LZMA_CHECK_CRC64;
-+		if (!lzma_check_is_supported(check))
-+			check = LZMA_CHECK_CRC32;
- 	}
  
 -	// Decrease the dictionary size until we meet the memory
 -	// usage limit. First round down to full mebibytes.
@@ -1957,17 +1938,34 @@
 -		memory_usage = lzma_raw_encoder_memusage(filters);
 -		if (memory_usage == UINT64_MAX)
 -			message_bug();
--
++/*
++	// Limit the number of worker threads so that memory usage
++	// limit isn't exceeded.
++	assert(memory_usage > 0);
++	size_t thread_limit = memory_limit / memory_usage;
++	if (thread_limit == 0)
++		thread_limit = 1;
+ 
 -		// Accept it if it is low enough.
 -		if (memory_usage <= memory_limit)
 -			break;
--
++	if (opt_threads > thread_limit)
++		opt_threads = thread_limit;
++*/
+ 
 -		// Otherwise 1 MiB down and try again. I hope this
 -		// isn't too slow method for cases where the original
 -		// dict_size is very big.
 -		opt->dict_size -= UINT32_C(1) << 20;
--	}
--
++	if (check_default) {
++		// The default check type is CRC64, but fallback to CRC32
++		// if CRC64 isn't supported by the copy of liblzma we are
++		// using. CRC32 is always supported.
++		check = LZMA_CHECK_CRC64;
++		if (!lzma_check_is_supported(check))
++			check = LZMA_CHECK_CRC32;
+ 	}
+ 
 -	// Tell the user that we decreased the dictionary size.
 -	message(V_WARNING, _("Adjusted LZMA%c dictionary size "
 -			"from %s MiB to %s MiB to not exceed "
@@ -1981,7 +1979,7 @@
  	return;
  }
  
-@@ -400,14 +359,7 @@ coder_init(file_pair *pair)
+@@ -401,14 +360,7 @@ coder_init(file_pair *pair)
  			break;
  
  		case FORMAT_XZ:
@@ -1997,17 +1995,15 @@
  			break;
  
  		case FORMAT_LZMA:
-@@ -528,8 +480,8 @@ coder_normal(file_pair *pair)
- 	// to the .xz format. If block_remaining == UINT64_MAX, only
- 	// a single block is created.
- 	uint64_t block_remaining = UINT64_MAX;
--	if (hardware_threads_get() == 1 && opt_mode == MODE_COMPRESS
--			&& opt_format == FORMAT_XZ && opt_block_size > 0)
-+	if (opt_mode == MODE_COMPRESS && opt_format == FORMAT_XZ
-+			&& opt_block_size > 0)
- 		block_remaining = opt_block_size;
+@@ -539,7 +491,7 @@ coder_normal(file_pair *pair)
+ 		// --block-size doesn't do anything here in threaded mode,
+ 		// because the threaded encoder will take care of splitting
+ 		// to fixed-sized Blocks.
+-		if (hardware_threads_get() == 1 && opt_block_size > 0)
++		if (opt_block_size > 0)
+ 			block_remaining = opt_block_size;
  
- 	strm.next_out = out_buf.u8;
+ 		// If --block-list was used, start with the first size.
 diff --git a/src/xz/hardware.c b/src/xz/hardware.c
 index 925926c..a4733c2 100644
 --- a/src/xz/hardware.c
@@ -2102,19 +2098,10 @@
  
  #include <sys/types.h>
 diff --git a/src/xz/xz.1 b/src/xz/xz.1
-index f4680f4..0329128 100644
+index 0368f05..30f7252 100644
 --- a/src/xz/xz.1
 +++ b/src/xz/xz.1
-@@ -5,7 +5,7 @@
- .\" This file has been put into the public domain.
- .\" You can do whatever you want with this file.
- .\"
--.TH XZ 1 "2011-04-12" "Tukaani" "XZ Utils"
-+.TH XZ 1 "2011-04-11" "Tukaani" "XZ Utils"
- .
- .SH NAME
- xz, unxz, xzcat, lzma, unlzma, lzcat \- Compress or decompress .xz and .lzma files
-@@ -907,30 +907,24 @@ Automatic adjusting is always disabled when creating raw streams
+@@ -926,30 +926,24 @@ Automatic adjusting is always disabled when creating raw streams
  .TP
  \fB\-T\fR \fIthreads\fR, \fB\-\-threads=\fIthreads
  Specify the number of worker threads to use.
diff --git a/debian/patches/abi-version-script b/debian/patches/abi-version-script
index 2c5a2c4..1898ece 100644
--- a/debian/patches/abi-version-script
+++ b/debian/patches/abi-version-script
@@ -1,15 +1,15 @@
 From: Jonathan Nieder <jrnieder@gmail.com>
 Date: Sat, 11 Jun 2011 23:33:43 -0500
-Subject: liblzma: Remove XZ_5.1.1alpha version symbol
+Subject: liblzma: Remove XZ_5.1.2alpha version symbol
 
 Now that the lzma_stream_encoder_mt{,_memusage} symbols are gone on
 this branch, liblzma should stop pretending to satisfy dependencies on
-XZ_5.1.1alpha.
+XZ_5.1.2alpha.
 
 After this change, programs relying on those symbols will error out
 immediately at startup like they are supposed to:
 
-	app: liblzma.so.5: version `XZ_5.1.1alpha' not found (required by app)
+	app: liblzma.so.5: version `XZ_5.1.2alpha' not found (required by app)
 
 And your scripts that look for version definition entries with
 readelf -s (like RPM’s find-provides) can tell that this copy of
@@ -21,7 +21,7 @@
  1 files changed, 1 insertions(+), 7 deletions(-)
 
 diff --git a/src/liblzma/liblzma.map b/src/liblzma/liblzma.map
-index 835eb26..47a7c22 100644
+index 6dd4288..47a7c22 100644
 --- a/src/liblzma/liblzma.map
 +++ b/src/liblzma/liblzma.map
 @@ -93,13 +93,7 @@ global:
@@ -30,7 +30,7 @@
  	lzma_vli_size;
 -};
 -
--XZ_5.1.1alpha {
+-XZ_5.1.2alpha {
 -global:
 -	lzma_stream_encoder_mt;
 -	lzma_stream_encoder_mt_memusage;
diff --git a/debian/patches/configure-liblzma2-compat b/debian/patches/configure-liblzma2-compat
index 46a9233..44cfe61 100644
--- a/debian/patches/configure-liblzma2-compat
+++ b/debian/patches/configure-liblzma2-compat
@@ -57,10 +57,10 @@
  3 files changed, 68 insertions(+), 7 deletions(-)
 
 diff --git a/configure.ac b/configure.ac
-index cbf92659..eb510fd9 100644
+index 4beab681..d51cc7f5 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -468,10 +468,39 @@ if test "x$enable_threads" = xyes; then
+@@ -476,10 +476,39 @@ if test "x$enable_threads" = xyes; then
  	CFLAGS=$OLD_CFLAGS
  fi
  
diff --git a/debian/patches/decoder-check-first-0x00 b/debian/patches/decoder-check-first-0x00
deleted file mode 100644
index 442e318..0000000
--- a/debian/patches/decoder-check-first-0x00
+++ /dev/null
@@ -1,69 +0,0 @@
-From: Lasse Collin <lasse.collin@tukaani.org>
-Date: Thu, 28 Jun 2012 10:47:49 +0300
-Subject: liblzma: Check that the first byte of range encoded data is 0x00.
-
-It is just to be more pedantic and thus perhaps catch broken
-files slightly earlier.
-
-Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
----
- src/liblzma/lzma/lzma_decoder.c        |    8 ++++++--
- src/liblzma/rangecoder/range_decoder.h |   12 +++++++++---
- 2 files changed, 15 insertions(+), 5 deletions(-)
-
-diff --git a/src/liblzma/lzma/lzma_decoder.c b/src/liblzma/lzma/lzma_decoder.c
-index 5abbc0d..b8f9317 100644
---- a/src/liblzma/lzma/lzma_decoder.c
-+++ b/src/liblzma/lzma/lzma_decoder.c
-@@ -289,8 +289,12 @@ lzma_decode(lzma_coder *restrict coder, lzma_dict *restrict dictptr,
- 	// Initialization //
- 	////////////////////
- 
--	if (!rc_read_init(&coder->rc, in, in_pos, in_size))
--		return LZMA_OK;
-+	{
-+		const lzma_ret ret = rc_read_init(
-+				&coder->rc, in, in_pos, in_size);
-+		if (ret != LZMA_STREAM_END)
-+			return ret;
-+	}
- 
- 	///////////////
- 	// Variables //
-diff --git a/src/liblzma/rangecoder/range_decoder.h b/src/liblzma/rangecoder/range_decoder.h
-index fb96180..e0b051f 100644
---- a/src/liblzma/rangecoder/range_decoder.h
-+++ b/src/liblzma/rangecoder/range_decoder.h
-@@ -25,20 +25,26 @@ typedef struct {
- 
- 
- /// Reads the first five bytes to initialize the range decoder.
--static inline bool
-+static inline lzma_ret
- rc_read_init(lzma_range_decoder *rc, const uint8_t *restrict in,
- 		size_t *restrict in_pos, size_t in_size)
- {
- 	while (rc->init_bytes_left > 0) {
- 		if (*in_pos == in_size)
--			return false;
-+			return LZMA_OK;
-+
-+		// The first byte is always 0x00. It could have been omitted
-+		// in LZMA2 but it wasn't, so one byte is wasted in every
-+		// LZMA2 chunk.
-+		if (rc->init_bytes_left == 5 && in[*in_pos] != 0x00)
-+			return LZMA_DATA_ERROR;
- 
- 		rc->code = (rc->code << 8) | in[*in_pos];
- 		++*in_pos;
- 		--rc->init_bytes_left;
- 	}
- 
--	return true;
-+	return LZMA_STREAM_END;
- }
- 
- 
--- 
-1.7.9.6 (Apple Git-31.1)
-
diff --git a/debian/patches/man-date b/debian/patches/man-date
deleted file mode 100644
index f43d3b7..0000000
--- a/debian/patches/man-date
+++ /dev/null
@@ -1,25 +0,0 @@
-From: Lasse Collin <lasse.collin@tukaani.org>
-Date: Fri, 22 Jun 2012 14:34:03 +0300
-Subject: xz: Update man page date to match the latest update.
-
-Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
----
- src/xz/xz.1 |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/xz/xz.1 b/src/xz/xz.1
-index 3ff89f0..cb8cd1e 100644
---- a/src/xz/xz.1
-+++ b/src/xz/xz.1
-@@ -5,7 +5,7 @@
- .\" This file has been put into the public domain.
- .\" You can do whatever you want with this file.
- .\"
--.TH XZ 1 "2011-04-11" "Tukaani" "XZ Utils"
-+.TH XZ 1 "2012-05-27" "Tukaani" "XZ Utils"
- .
- .SH NAME
- xz, unxz, xzcat, lzma, unlzma, lzcat \- Compress or decompress .xz and .lzma files
--- 
-1.7.9.6 (Apple Git-31.1)
-
diff --git a/debian/patches/man-xz-lvv-minver b/debian/patches/man-xz-lvv-minver
deleted file mode 100644
index 8b2f44d..0000000
--- a/debian/patches/man-xz-lvv-minver
+++ /dev/null
@@ -1,55 +0,0 @@
-From: Lasse Collin <lasse.collin@tukaani.org>
-Date: Sun, 1 Jul 2012 18:44:33 +0300
-Subject: xz: Update the man page about the new field in --robot -lvv.
-
-Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
----
- src/xz/xz.1 |   18 +++++++++++++++++-
- 1 file changed, 17 insertions(+), 1 deletion(-)
-
-diff --git a/src/xz/xz.1 b/src/xz/xz.1
-index cb8cd1e..4da09ba 100644
---- a/src/xz/xz.1
-+++ b/src/xz/xz.1
-@@ -5,7 +5,7 @@
- .\" This file has been put into the public domain.
- .\" You can do whatever you want with this file.
- .\"
--.TH XZ 1 "2012-05-27" "Tukaani" "XZ Utils"
-+.TH XZ 1 "2012-07-01" "Tukaani" "XZ Utils"
- .
- .SH NAME
- xz, unxz, xzcat, lzma, unlzma, lzcat \- Compress or decompress .xz and .lzma files
-@@ -1889,6 +1889,14 @@ or
- .B no
- indicating if all block headers have both compressed size and
- uncompressed size stored in them
-+.PP
-+.I Since
-+.B xz
-+.I 5.1.2alpha:
-+.IP 4. 4
-+Minimum
-+.B xz
-+version required to decompress the file
- .RE
- .PD
- .PP
-@@ -1939,6 +1947,14 @@ or
- .B no
- indicating if all block headers have both compressed size and
- uncompressed size stored in them
-+.PP
-+.I Since
-+.B xz
-+.I 5.1.2alpha:
-+.IP 12. 4
-+Minimum
-+.B xz
-+version required to decompress the file
- .RE
- .PD
- .PP
--- 
-1.7.9.6 (Apple Git-31.1)
-
diff --git a/debian/patches/series b/debian/patches/series
index 8020937..c6c431b 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -2,7 +2,4 @@
 abi-version-script
 abi-liblzma2-compat
 configure-liblzma2-compat
-man-date
-man-xz-lvv-minver
-xz-lvv-empty-block-minver
-decoder-check-first-0x00
+xz-block-list
diff --git a/debian/patches/xz-block-list b/debian/patches/xz-block-list
new file mode 100644
index 0000000..c857fb0
--- /dev/null
+++ b/debian/patches/xz-block-list
@@ -0,0 +1,311 @@
+From: Jonathan Nieder <jrnieder@gmail.com>
+Date: Wed, 4 Jul 2012 15:18:51 -0500
+Subject: Remove support for --block-list
+
+This reverts commit 88ccf47205d7f3aa314d358c72ef214f10f68b43.
+
+Various details about the --block-list option, such as its interaction
+with --block-size, are not set in stone yet.  Patch it out in Debian
+to give the interface time to evolve.
+
+Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
+---
+ src/xz/args.c    | 78 --------------------------------------------------------
+ src/xz/args.h    |  1 -
+ src/xz/coder.c   | 48 ++++++----------------------------
+ src/xz/coder.h   |  4 ---
+ src/xz/main.c    |  1 -
+ src/xz/message.c |  6 -----
+ src/xz/xz.1      | 23 ++---------------
+ 7 files changed, 10 insertions(+), 151 deletions(-)
+
+diff --git a/src/xz/args.c b/src/xz/args.c
+index 995b882..1b88c1e 100644
+--- a/src/xz/args.c
++++ b/src/xz/args.c
+@@ -55,67 +55,6 @@ parse_memlimit(const char *name, const char *name_percentage, char *str,
+ 
+ 
+ static void
+-parse_block_list(char *str)
+-{
+-	// It must be non-empty and not begin with a comma.
+-	if (str[0] == '\0' || str[0] == ',')
+-		message_fatal(_("%s: Invalid argument to --block-list"), str);
+-
+-	// Count the number of comma-separated strings.
+-	size_t count = 1;
+-	for (size_t i = 0; str[i] != '\0'; ++i)
+-		if (str[i] == ',')
+-			++count;
+-
+-	// Prevent an unlikely integer overflow.
+-	if (count > SIZE_MAX / sizeof(uint64_t) - 1)
+-		message_fatal(_("%s: Too many arguments to --block-list"),
+-				str);
+-
+-	// Allocate memory to hold all the sizes specified.
+-	// If --block-list was specified already, its value is forgotten.
+-	free(opt_block_list);
+-	opt_block_list = xmalloc((count + 1) * sizeof(uint64_t));
+-
+-	for (size_t i = 0; i < count; ++i) {
+-		// Locate the next comma and replace it with \0.
+-		char *p = strchr(str, ',');
+-		if (p != NULL)
+-			*p = '\0';
+-
+-		if (str[0] == '\0') {
+-			// There is no string, that is, a comma follows
+-			// another comma. Use the previous value.
+-			//
+-			// NOTE: We checked earler that the first char
+-			// of the whole list cannot be a comma.
+-			assert(i > 0);
+-			opt_block_list[i] = opt_block_list[i - 1];
+-		} else {
+-			opt_block_list[i] = str_to_uint64("block-list", str,
+-					0, UINT64_MAX);
+-
+-			// Zero indicates no more new Blocks.
+-			if (opt_block_list[i] == 0) {
+-				if (i + 1 != count)
+-					message_fatal(_("0 can only be used "
+-							"as the last element "
+-							"in --block-list"));
+-
+-				opt_block_list[i] = UINT64_MAX;
+-			}
+-		}
+-
+-		str = p + 1;
+-	}
+-
+-	// Terminate the array.
+-	opt_block_list[count] = 0;
+-	return;
+-}
+-
+-
+-static void
+ parse_real(args_info *args, int argc, char **argv)
+ {
+ 	enum {
+@@ -134,7 +73,6 @@ parse_real(args_info *args, int argc, char **argv)
+ 		OPT_FILES,
+ 		OPT_FILES0,
+ 		OPT_BLOCK_SIZE,
+-		OPT_BLOCK_LIST,
+ 		OPT_MEM_COMPRESS,
+ 		OPT_MEM_DECOMPRESS,
+ 		OPT_NO_ADJUST,
+@@ -169,7 +107,6 @@ parse_real(args_info *args, int argc, char **argv)
+ 		{ "format",       required_argument, NULL,  'F' },
+ 		{ "check",        required_argument, NULL,  'C' },
+ 		{ "block-size",   required_argument, NULL,  OPT_BLOCK_SIZE },
+-		{ "block-list",  required_argument, NULL,  OPT_BLOCK_LIST },
+ 		{ "memlimit-compress",   required_argument, NULL, OPT_MEM_COMPRESS },
+ 		{ "memlimit-decompress", required_argument, NULL, OPT_MEM_DECOMPRESS },
+ 		{ "memlimit",     required_argument, NULL,  'M' },
+@@ -440,11 +377,6 @@ parse_real(args_info *args, int argc, char **argv)
+ 					0, LZMA_VLI_MAX);
+ 			break;
+ 
+-		case OPT_BLOCK_LIST: {
+-			parse_block_list(optarg);
+-			break;
+-		}
+-
+ 		case OPT_SINGLE_STREAM:
+ 			opt_single_stream = true;
+ 			break;
+@@ -657,13 +589,3 @@ args_parse(args_info *args, int argc, char **argv)
+ 
+ 	return;
+ }
+-
+-
+-#ifndef NDEBUG
+-extern void
+-args_free(void)
+-{
+-	free(opt_block_list);
+-	return;
+-}
+-#endif
+diff --git a/src/xz/args.h b/src/xz/args.h
+index 53c4a98..b23f4ef 100644
+--- a/src/xz/args.h
++++ b/src/xz/args.h
+@@ -40,4 +40,3 @@ extern bool opt_robot;
+ extern const char stdin_filename[];
+ 
+ extern void args_parse(args_info *args, int argc, char **argv);
+-extern void args_free(void);
+diff --git a/src/xz/coder.c b/src/xz/coder.c
+index 588f25a..a3366d0 100644
+--- a/src/xz/coder.c
++++ b/src/xz/coder.c
+@@ -26,7 +26,6 @@ enum format_type opt_format = FORMAT_AUTO;
+ bool opt_auto_adjust = true;
+ bool opt_single_stream = false;
+ uint64_t opt_block_size = 0;
+-uint64_t *opt_block_list = NULL;
+ 
+ 
+ /// Stream used to communicate with liblzma
+@@ -475,36 +474,15 @@ coder_normal(file_pair *pair)
+ 	// Assume that something goes wrong.
+ 	bool success = false;
+ 
+-	// block_remaining indicates how many input bytes to encode before
++	// block_remaining indicates how many input bytes to encode until
+ 	// finishing the current .xz Block. The Block size is set with
+-	// --block-size=SIZE and --block-list. They have an effect only when
+-	// compressing to the .xz format. If block_remaining == UINT64_MAX,
+-	// only a single block is created.
++	// --block-size=SIZE. It has an effect only when compressing
++	// to the .xz format. If block_remaining == UINT64_MAX, only
++	// a single block is created.
+ 	uint64_t block_remaining = UINT64_MAX;
+-
+-	// Position in opt_block_list. Unused if --block-list wasn't used.
+-	size_t list_pos = 0;
+-
+-	// Handle --block-size for single-threaded mode and the first step
+-	// of --block-list.
+-	if (opt_mode == MODE_COMPRESS && opt_format == FORMAT_XZ) {
+-		// --block-size doesn't do anything here in threaded mode,
+-		// because the threaded encoder will take care of splitting
+-		// to fixed-sized Blocks.
+-		if (opt_block_size > 0)
+-			block_remaining = opt_block_size;
+-
+-		// If --block-list was used, start with the first size.
+-		//
+-		// FIXME: Currently this overrides --block-size but this isn't
+-		// good. For threaded case, we want --block-size to specify
+-		// how big Blocks the encoder needs to be prepared to create
+-		// at maximum and --block-list will simultaneously cause new
+-		// Blocks to be started at specified intervals. To keep things
+-		// logical, the same should be done in single-threaded mode.
+-		if (opt_block_list != NULL)
+-			block_remaining = opt_block_list[list_pos];
+-	}
++	if (opt_mode == MODE_COMPRESS && opt_format == FORMAT_XZ
++			&& opt_block_size > 0)
++		block_remaining = opt_block_size;
+ 
+ 	strm.next_out = out_buf.u8;
+ 	strm.avail_out = IO_BUFFER_SIZE;
+@@ -549,17 +527,7 @@ coder_normal(file_pair *pair)
+ 		if (ret == LZMA_STREAM_END && action == LZMA_FULL_FLUSH) {
+ 			// Start a new Block.
+ 			action = LZMA_RUN;
+-
+-			if (opt_block_list == NULL) {
+-				block_remaining = opt_block_size;
+-			} else {
+-				// FIXME: Make it work together with
+-				// --block-size.
+-				if (opt_block_list[list_pos + 1] != 0)
+-					++list_pos;
+-
+-				block_remaining = opt_block_list[list_pos];
+-			}
++			block_remaining = opt_block_size;
+ 
+ 		} else if (ret != LZMA_OK) {
+ 			// Determine if the return value indicates that we
+diff --git a/src/xz/coder.h b/src/xz/coder.h
+index 583da8f..578d2d7 100644
+--- a/src/xz/coder.h
++++ b/src/xz/coder.h
+@@ -48,10 +48,6 @@ extern bool opt_single_stream;
+ /// of input. This has an effect only when compressing to the .xz format.
+ extern uint64_t opt_block_size;
+ 
+-/// This is non-NULL if --block-list was used. This contains the Block sizes
+-/// as an array that is terminated with 0.
+-extern uint64_t *opt_block_list;
+-
+ /// Set the integrity check type used when compressing
+ extern void coder_set_check(lzma_check check);
+ 
+diff --git a/src/xz/main.c b/src/xz/main.c
+index a8f0683..4e5b49e 100644
+--- a/src/xz/main.c
++++ b/src/xz/main.c
+@@ -277,7 +277,6 @@ main(int argc, char **argv)
+ 
+ #ifndef NDEBUG
+ 	coder_free();
+-	args_free();
+ #endif
+ 
+ 	// If we have got a signal, raise it to kill the program instead
+diff --git a/src/xz/message.c b/src/xz/message.c
+index abbd171..2b6ac5f 100644
+--- a/src/xz/message.c
++++ b/src/xz/message.c
+@@ -1153,16 +1153,10 @@ message_help(bool long_help)
+ "                      does not affect decompressor memory requirements"));
+ 
+ 	if (long_help) {
+-		// FIXME? Mention something about threading?
+ 		puts(_(
+ "      --block-size=SIZE\n"
+ "                      when compressing to the .xz format, start a new block\n"
+ "                      after every SIZE bytes of input; 0=disabled (default)"));
+-		// FIXME
+-		puts(_(
+-"      --block-list=SIZES\n"
+-"                      when compressing to the .xz format, start a new block\n"
+-"                      after the given intervals of uncompressed data"));
+ 		puts(_( // xgettext:no-c-format
+ "      --memlimit-compress=LIMIT\n"
+ "      --memlimit-decompress=LIMIT\n"
+diff --git a/src/xz/xz.1 b/src/xz/xz.1
+index 30f7252..0952f2d 100644
+--- a/src/xz/xz.1
++++ b/src/xz/xz.1
+@@ -5,7 +5,7 @@
+ .\" This file has been put into the public domain.
+ .\" You can do whatever you want with this file.
+ .\"
+-.TH XZ 1 "2012-07-03" "Tukaani" "XZ Utils"
++.TH XZ 1 "2012-07-01" "Tukaani" "XZ Utils"
+ .
+ .SH NAME
+ xz, unxz, xzcat, lzma, unlzma, lzcat \- Compress or decompress .xz and .lzma files
+@@ -807,26 +807,7 @@ format, split the input data into blocks of
+ .I size
+ bytes.
+ The blocks are compressed independently from each other.
+-.\" FIXME: Explain how to these can be used for random access and threading.
+-.TP
+-.BI \-\-block\-list= sizes
+-When compressing to the
+-.B .xz
+-format, start a new block after
+-the given intervals of uncompressed data.
+-.IP ""
+-The uncompressed
+-.I sizes
+-of the blocks are specified as a comma-separated list.
+-Omitting a size (two or more consecutive commas) is a shorthand
+-to use the size of the previous block.
+-A special value of
+-.B 0
+-may be used as the last value to indicate that
+-the rest of the file should be encoded as a single block.
+-.IP ""
+-.B "Currently this option is badly broken if used together with"
+-.B "\-\-block\-size or with multithreading."
++.\" FIXME: Explain how to his can be used for random access and threading.
+ .TP
+ .BI \-\-memlimit\-compress= limit
+ Set a memory usage limit for compression.
+-- 
+1.7.11.rc3
+
diff --git a/debian/patches/xz-lvv-empty-block-minver b/debian/patches/xz-lvv-empty-block-minver
deleted file mode 100644
index 2c658d9..0000000
--- a/debian/patches/xz-lvv-empty-block-minver
+++ /dev/null
@@ -1,38 +0,0 @@
-From: Lasse Collin <lasse.collin@tukaani.org>
-Date: Wed, 4 Jul 2012 19:58:23 +0300
-Subject: xz: Fix the version number printed by xz -lvv.
-
-The decoder bug was fixed in 5.0.2 instead of 5.0.3.
-
-Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
----
- src/xz/list.c |    6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/src/xz/list.c b/src/xz/list.c
-index e71fbe2..a9e0adb 100644
---- a/src/xz/list.c
-+++ b/src/xz/list.c
-@@ -482,7 +482,7 @@ parse_block_header(file_pair *pair, const lzma_index_iter *iter,
- 	// Determine the minimum XZ Utils version that supports this Block.
- 	//
- 	// Currently the only thing that 5.0.0 doesn't support is empty
--	// LZMA2 Block. This bug was fixed in 5.0.3.
-+	// LZMA2 Block. This decoder bug was fixed in 5.0.2.
- 	{
- 		size_t i = 0;
- 		while (filters[i + 1].id != LZMA_VLI_UNKNOWN)
-@@ -490,8 +490,8 @@ parse_block_header(file_pair *pair, const lzma_index_iter *iter,
- 
- 		if (filters[i].id == LZMA_FILTER_LZMA2
- 				&& iter->block.uncompressed_size == 0
--				&& xfi->min_version < 50000032U)
--			xfi->min_version = 50000032U;
-+				&& xfi->min_version < 50000022U)
-+			xfi->min_version = 50000022U;
- 	}
- 
- 	// Convert the filter chain to human readable form.
--- 
-1.7.9.6 (Apple Git-31.1)
-
diff --git a/debian/xz-utils.README.Debian b/debian/xz-utils.README.Debian
index 26da1ee..c1bc1a4 100644
--- a/debian/xz-utils.README.Debian
+++ b/debian/xz-utils.README.Debian
@@ -18,8 +18,8 @@
 Differences from standard XZ Utils
 ----------------------------------
 
-XZ Utils 5.1.y has some experimental features which are disabled in
-Debian to allow the interfaces to evolve.  The Debian package also
+XZ Utils 5.1.2alpha has some experimental features which are disabled
+in Debian to allow the interfaces to evolve.  The Debian package also
 modifies liblzma to avoid breakage when a binary links indirectly to
 liblzma from Debian 6.0 (squeeze) and 7.0 (wheezy) at the same time.
 
@@ -31,45 +31,15 @@
  abi-version-script:
    liblzma: Do not pretend to satisfy dependencies on XZ_5.1.2alpha.
 
+ xz-block-list:
+   xz: Remove support for the --block-list option.
+
  abi-liblzma2-compat, configure-liblzma2-compat:
    liblzma: Do not check reserved space past the historical end of
    the lzma_stream structure if liblzma.so.2 is loaded in the same
    process image.  Likewise when building statically.
    (See bug #649522.)
 
- man-date, man-xz-lvv-minver (from upstream):
-   Document the "Minimum version required to decompress" field of
-   "xz --robot -v -v --list" output.
-
- xz-lvv-empty-block-minver (from upstream):
-   Fix the version number printed by "xz -lvv" for Blocks with
-   zero uncompressed_size: the decoder bug was fixed in 5.0.2,
-   not 5.0.3.
-
- decoder-check-first-0x00 (from upstream):
-   liblzma: Check that the first byte of range encoded data is 0x00,
-   to be more pedantic and catch broken files earlier.
-
-Patches present in 5.1.2alpha not currently applied:
-
- example-usage:
-   Docs: Language fix to 01_compress_easy.c.
-
- xz-block-list:
-   xz: Add incomplete support for --block-list.
-
- build-doc-symvers:
-   INSTALL: Document --enable-symbol-versions.
-
- configure-clarify-symvers:
-   configure: Add a comment about *-linux tuples for clarity.
-
- doc-threads-and-fork:
-   TODO: Warn that threads and fork() do not mix well.
-
- version-5.1.2, news-5.1.2
-   Bump the version number and update NEWS for 5.1.2alpha.
-
 LZMA Utils compatibility
 ------------------------
 
@@ -100,4 +70,4 @@
 
 See the "Memory usage" section of the xz(1) manual page for details.
 
- -- Jonathan Nieder <jrnieder@gmail.com>  Fri, 17 Aug 2012 23:37:47 -0700
+ -- Jonathan Nieder <jrnieder@gmail.com>  Sat, 18 Aug 2012 03:12:35 -0700
diff --git a/debug/translation.bash b/debug/translation.bash
deleted file mode 100644
index df4210d..0000000
--- a/debug/translation.bash
+++ /dev/null
@@ -1,100 +0,0 @@
-#!/bin/bash
-
-###############################################################################
-#
-# Script to check output of some translated messages
-#
-# This should be useful for translators to check that the translated strings
-# look good. This doesn't make xz print all possible strings, but it should
-# cover most of the cases where mistakes can easily happen.
-#
-# Give the path and filename of the xz executable as an argument. If no
-# arguments are given, this script uses ../src/xz/xz (relative to the
-# location of this script).
-#
-# You may want to pipe the output of this script to less -S to view the
-# tables printed by xz --list on a 80-column terminal. On the other hand,
-# viewing the other messages may be better without -S.
-#
-###############################################################################
-#
-# Author: Lasse Collin
-#
-# This file has been put into the public domain.
-# You can do whatever you want with this file.
-#
-###############################################################################
-
-set -e
-
-# If an argument was given, use it to set the location of the xz executable.
-unset XZ
-if [ -n "$1" ]; then
-	XZ=$1
-	[ "x${XZ:0:1}" != "x/" ] && XZ="$PWD/$XZ"
-fi
-
-# Locate top_srcdir and go there.
-top_srcdir="$(cd -- "$(dirname -- "$0")" && cd .. && pwd)"
-cd -- "$top_srcdir"
-
-# If XZ wasn't already set, use the default location.
-XZ=${XZ-"$PWD/src/xz/xz"}
-if [ "$(type -t "$XZ" || true)" != "file" ]; then
-	echo "Give the location of the xz executable as an argument" \
-			"to this script."
-	exit 1
-fi
-XZ=$(type -p -- "$XZ")
-
-# Print the xz version and locale information.
-echo "$XZ --version"
-"$XZ" --version
-echo
-if [ -d .git ] && type git > /dev/null 2>&1; then
-	echo "Source code version in $PWD:"
-	git describe --abbrev=4
-fi
-echo
-locale
-echo
-
-# Make the test files directory the current directory.
-cd tests/files
-
-# Put xz in PATH so that argv[0] stays short.
-PATH=${XZ%/*}:$PATH
-
-# Some of the test commands are error messages and thus don't
-# return successfully.
-set +e
-
-for CMD in \
-	"xz --foobarbaz" \
-	"xz --memlimit=123abcd" \
-	"xz --memlimit=40MiB -6 /dev/null" \
-	"xz --memlimit=0 --info-memory" \
-	"xz --memlimit-compress=1234MiB --memlimit-decompress=50MiB --info-memory" \
-	"xz --verbose --verbose /dev/null | cat" \
-	"xz --lzma2=foobarbaz" \
-	"xz --lzma2=foobarbaz=abcd" \
-	"xz --lzma2=mf=abcd" \
-	"xz --lzma2=preset=foobarbaz" \
-	"xz --lzma2=mf=bt4,nice=2" \
-	"xz --lzma2=nice=50000" \
-	"xz --help" \
-	"xz --long-help" \
-	"xz --list good-*lzma2*" \
-	"xz --list good-1-check*" \
-	"xz --list --verbose good-*lzma2*" \
-	"xz --list --verbose good-1-check*" \
-	"xz --list --verbose --verbose good-*lzma2*" \
-	"xz --list --verbose --verbose good-1-check*" \
-	"xz --list --verbose --verbose unsupported-check.xz"
-do
-	echo "-----------------------------------------------------------"
-	echo
-	echo "\$ $CMD"
-	eval "$CMD"
-	echo
-done 2>&1
diff --git a/doc/examples/01_compress_easy.c b/doc/examples/01_compress_easy.c
index f79cade..e6dd2b0 100644
--- a/doc/examples/01_compress_easy.c
+++ b/doc/examples/01_compress_easy.c
@@ -27,7 +27,7 @@
 {
 	fprintf(stderr, "Usage: %s PRESET < INFILE > OUTFILE\n"
 			"PRESET is a number 0-9 and can optionally be "
-			"by `e' to indicate extreme preset\n",
+			"followed by `e' to indicate extreme preset\n",
 			argv0);
 	exit(EXIT_FAILURE);
 }
diff --git a/macosx/build.sh b/macosx/build.sh
deleted file mode 100755
index d48ee61..0000000
--- a/macosx/build.sh
+++ /dev/null
@@ -1,92 +0,0 @@
-#!/bin/sh
-
-###############################################################################
-# Author: Anders F Björklund <afb@users.sourceforge.net>
-#
-# This file has been put into the public domain.
-# You can do whatever you want with this file.
-###############################################################################
-
-mkdir -p Root
-mkdir -p Resources
-
-# Abort immediately if something goes wrong.
-set -e
-
-# Clean up if it was already configured.
-[ -f Makefile ] && make distclean
-
-# Build the regular fat program
-
-CC="gcc-4.0" \
-CFLAGS="-O2 -g -arch ppc -arch ppc64 -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4" \
-../configure --disable-dependency-tracking --disable-xzdec --disable-lzmadec i686-apple-darwin8
-
-make
-
-make check
-
-make DESTDIR=`pwd`/Root install
-
-make distclean
-
-# Build the size-optimized program
-
-CC="gcc-4.0" \
-CFLAGS="-Os -g -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4" \
-../configure --disable-dependency-tracking --disable-shared --disable-nls --disable-encoders --enable-small --disable-threads i686-apple-darwin8
-
-make -C src/liblzma
-make -C src/xzdec
-make -C src/xzdec DESTDIR=`pwd`/Root install
-
-cp -a ../extra Root/usr/local/share/doc/xz
-
-make distclean
-
-# Strip debugging symbols and make relocatable
-
-for bin in xz lzmainfo xzdec lzmadec; do
-    strip -S Root/usr/local/bin/$bin
-    install_name_tool -change /usr/local/lib/liblzma.5.dylib @executable_path/../lib/liblzma.5.dylib Root/usr/local/bin/$bin
-done
-
-for lib in liblzma.5.dylib; do
-    strip -S Root/usr/local/lib/$lib
-    install_name_tool -id @executable_path/../lib/liblzma.5.dylib Root/usr/local/lib/$lib
-done
-
-strip -S  Root/usr/local/lib/liblzma.a
-rm -f Root/usr/local/lib/liblzma.la
-
-# Include pkg-config while making relocatable
-
-sed -e 's|prefix=/usr/local|prefix=${pcfiledir}/../..|' < Root/usr/local/lib/pkgconfig/liblzma.pc > Root/liblzma.pc
-mv Root/liblzma.pc Root/usr/local/lib/pkgconfig/liblzma.pc
-
-# Create tarball, but without the HFS+ attrib
-
-rmdir debug lib po src/liblzma/api src/liblzma src/lzmainfo src/scripts src/xz src/xzdec src tests
-
-( cd Root/usr/local; COPY_EXTENDED_ATTRIBUTES_DISABLE=true COPYFILE_DISABLE=true tar cvjf ../../../XZ.tbz * )
-
-# Include documentation files for package
-
-cp -p ../README Resources/ReadMe.txt
-cp -p ../COPYING Resources/License.txt
-
-# Make an Installer.app package
-
-ID="org.tukaani.xz"
-VERSION=`cd ..; sh build-aux/version.sh`
-PACKAGEMAKER=/Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker
-$PACKAGEMAKER -r Root/usr/local -l /usr/local -e Resources -i $ID -n $VERSION -t XZ -o XZ.pkg -g 10.4 --verbose
-
-# Put the package in a disk image
-
-hdiutil create -fs HFS+ -format UDZO -quiet -srcfolder XZ.pkg -ov XZ.dmg
-hdiutil internet-enable -yes -quiet XZ.dmg
-
-echo
-echo "Build completed successfully."
-echo
diff --git a/po/cs.po b/po/cs.po
index a7041ec..f904c92 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: xz-utils\n"
 "Report-Msgid-Bugs-To: lasse.collin@tukaani.org\n"
-"POT-Creation-Date: 2010-12-03 11:25+0100\n"
+"POT-Creation-Date: 2012-07-04 20:51+0300\n"
 "PO-Revision-Date: 2010-12-03 11:32+0100\n"
 "Last-Translator: Marek Černocký <marek@manet.cz>\n"
 "Language-Team: Czech <diskuze@lists.l10n.cz>\n"
@@ -18,68 +18,86 @@
 "X-Poedit-Language: Czech\n"
 "X-Poedit-SourceCharset: utf-8\n"
 
-#: src/xz/args.c:333
+#: src/xz/args.c:62
+#, c-format
+msgid "%s: Invalid argument to --block-list"
+msgstr ""
+
+#: src/xz/args.c:72
+#, c-format
+msgid "%s: Too many arguments to --block-list"
+msgstr ""
+
+#: src/xz/args.c:101
+msgid "0 can only be used as the last element in --block-list"
+msgstr ""
+
+#: src/xz/args.c:401
 #, c-format
 msgid "%s: Unknown file format type"
 msgstr "%s: Neznámý typ formátu souboru"
 
-#: src/xz/args.c:356 src/xz/args.c:364
+#: src/xz/args.c:424 src/xz/args.c:432
 #, c-format
 msgid "%s: Unsupported integrity check type"
 msgstr "%s: Neznámý typ kontroly integrity"
 
-#: src/xz/args.c:382
+#: src/xz/args.c:464
 msgid "Only one file can be specified with `--files' or `--files0'."
-msgstr ""
-"Spolu s přepínači „--files“ nebo „--files0“ může být zadán pouze jeden soubor"
+msgstr "Spolu s přepínači „--files“ nebo „--files0“ může být zadán pouze jeden soubor"
 
-#: src/xz/args.c:445
+#: src/xz/args.c:527
 #, c-format
 msgid "The environment variable %s contains too many arguments"
 msgstr "Proměnná prostředí %s obsahuje příliš mnoho argumentů"
 
-#: src/xz/coder.c:95
+#: src/xz/coder.c:106
 msgid "Maximum number of filters is four"
 msgstr "Maximální počet filtrů je čtyři"
 
-#: src/xz/coder.c:108
+#: src/xz/coder.c:119
 msgid "Memory usage limit is too low for the given filter setup."
 msgstr "Omezení použitelné paměti je příliš malé pro dané nastavení filtru."
 
-#: src/xz/coder.c:129
+#: src/xz/coder.c:149
 msgid "Using a preset in raw mode is discouraged."
 msgstr "Použití přednastavení v režimu raw je nevhodné."
 
-#: src/xz/coder.c:131
+#: src/xz/coder.c:151
 msgid "The exact options of the presets may vary between software versions."
-msgstr ""
-"Přesné volby u přednastavení se mohou lišit mezi různými verzemi softwaru."
+msgstr "Přesné volby u přednastavení se mohou lišit mezi různými verzemi softwaru."
 
-#: src/xz/coder.c:157
+#: src/xz/coder.c:177
 msgid "The .lzma format supports only the LZMA1 filter"
 msgstr "Formát .lzma podporuje pouze filtr LZMA1"
 
-#: src/xz/coder.c:165
+#: src/xz/coder.c:185
 msgid "LZMA1 cannot be used with the .xz format"
 msgstr "LZMA1 nelze použít s formátem .xz"
 
-#: src/xz/coder.c:182
+#: src/xz/coder.c:204
+#, c-format
+msgid "Using up to %<PRIu32> threads."
+msgstr ""
+
+#: src/xz/coder.c:217
 msgid "Unsupported filter chain or filter options"
 msgstr "Nepodporovaný omezující filtr nebo volby filtru"
 
-#: src/xz/coder.c:190
+#: src/xz/coder.c:225
 #, c-format
 msgid "Decompression will need %s MiB of memory."
 msgstr "Dekomprimace bude vyžadovat %s MiB paměti."
 
-#: src/xz/coder.c:247
+#: src/xz/coder.c:260
+#, fuzzy, c-format
+msgid "Adjusted the number of threads from %s to %s to not exceed the memory usage limit of %s MiB"
+msgstr "Přizpůsobit velikost slovníku LZMA%c z %s MiB na %s MiB, tak aby nebylo překročeno omezení použitelné paměti %s MiB"
+
+#: src/xz/coder.c:314
 #, c-format
-msgid ""
-"Adjusted LZMA%c dictionary size from %s MiB to %s MiB to not exceed the "
-"memory usage limit of %s MiB"
-msgstr ""
-"Přizpůsobit velikost slovníku LZMA%c z %s MiB na %s MiB, tak aby nebylo "
-"překročeno omezení použitelné paměti %s MiB"
+msgid "Adjusted LZMA%c dictionary size from %s MiB to %s MiB to not exceed the memory usage limit of %s MiB"
+msgstr "Přizpůsobit velikost slovníku LZMA%c z %s MiB na %s MiB, tak aby nebylo překročeno omezení použitelné paměti %s MiB"
 
 #. TRANSLATORS: When compression or decompression finishes,
 #. and xz is going to remove the source file, xz first checks
@@ -91,119 +109,118 @@
 #. it is possible that the user has put a new file in place
 #. of the original file, and in that case it obviously
 #. shouldn't be removed.
-#: src/xz/file_io.c:137
+#: src/xz/file_io.c:136
 #, c-format
 msgid "%s: File seems to have been moved, not removing"
 msgstr "%s: Vypadá to, že soubor byl přesunut, proto nebude odstraněn"
 
-#: src/xz/file_io.c:144 src/xz/file_io.c:590
+#: src/xz/file_io.c:143 src/xz/file_io.c:635
 #, c-format
 msgid "%s: Cannot remove: %s"
 msgstr "%s: Nelze odstranit: %s"
 
-#: src/xz/file_io.c:169
+#: src/xz/file_io.c:168
 #, c-format
 msgid "%s: Cannot set the file owner: %s"
 msgstr "%s: Nelze nastavit vlastníka souboru: %s"
 
-#: src/xz/file_io.c:175
+#: src/xz/file_io.c:174
 #, c-format
 msgid "%s: Cannot set the file group: %s"
 msgstr "%s: Nelze nastavit skupinu souboru: %s"
 
-#: src/xz/file_io.c:194
+#: src/xz/file_io.c:193
 #, c-format
 msgid "%s: Cannot set the file permissions: %s"
 msgstr "%s: Nelze nastavit oprávnění souboru: %s"
 
-#: src/xz/file_io.c:337 src/xz/file_io.c:420
+#: src/xz/file_io.c:340 src/xz/file_io.c:423
 #, c-format
 msgid "%s: Is a symbolic link, skipping"
 msgstr "%s: Jedná se o symbolický odkaz, vynechává se"
 
-#: src/xz/file_io.c:455
+#: src/xz/file_io.c:468
 #, c-format
 msgid "%s: Is a directory, skipping"
 msgstr "%s: Jedná se o složku, vynechává se"
 
-#: src/xz/file_io.c:462
+#: src/xz/file_io.c:474
 #, c-format
 msgid "%s: Not a regular file, skipping"
 msgstr "%s: Nejedná se o běžný soubor, vynechává se"
 
-#: src/xz/file_io.c:479
+#: src/xz/file_io.c:491
 #, c-format
 msgid "%s: File has setuid or setgid bit set, skipping"
 msgstr "%s: Soubor má nastavený bit setuid nebo setgid, vynechává se"
 
-#: src/xz/file_io.c:486
+#: src/xz/file_io.c:498
 #, c-format
 msgid "%s: File has sticky bit set, skipping"
 msgstr "%s: Soubor má nastavený bit sticky, vynechává se"
 
-#: src/xz/file_io.c:493
+#: src/xz/file_io.c:505
 #, c-format
 msgid "%s: Input file has more than one hard link, skipping"
 msgstr "%s: Vstupní soubor má více než jeden pevný odkaz, vynechává se"
 
-#: src/xz/file_io.c:714
+#: src/xz/file_io.c:761
 #, c-format
 msgid "Error restoring the O_APPEND flag to standard output: %s"
 msgstr "Chyba při obnovení příznaku O_APPEND na standardní výstup: %s"
 
-#: src/xz/file_io.c:726
+#: src/xz/file_io.c:773
 #, c-format
 msgid "%s: Closing the file failed: %s"
 msgstr "%s: Selhalo zavření souboru: %s"
 
-#: src/xz/file_io.c:762 src/xz/file_io.c:946
+#: src/xz/file_io.c:809 src/xz/file_io.c:1008
 #, c-format
 msgid "%s: Seeking failed when trying to create a sparse file: %s"
-msgstr ""
-"%s: Selhalo nastavení pozice při pokusu o vytvoření souboru řídké matice: %s"
+msgstr "%s: Selhalo nastavení pozice při pokusu o vytvoření souboru řídké matice: %s"
 
-#: src/xz/file_io.c:821
+#: src/xz/file_io.c:883
 #, c-format
 msgid "%s: Read error: %s"
 msgstr "%s: Chyba čtení: %s"
 
-#: src/xz/file_io.c:844
+#: src/xz/file_io.c:906
 #, c-format
 msgid "%s: Error seeking the file: %s"
 msgstr "%s: Chyba při posunu v rámci souboru: %s"
 
-#: src/xz/file_io.c:854
+#: src/xz/file_io.c:916
 #, c-format
 msgid "%s: Unexpected end of file"
 msgstr "%s: Neočekávaný konec souboru"
 
-#: src/xz/file_io.c:904
+#: src/xz/file_io.c:966
 #, c-format
 msgid "%s: Write error: %s"
 msgstr "%s: Chyba zápisu: %s"
 
-#: src/xz/hardware.c:100
+#: src/xz/hardware.c:101
 msgid "Disabled"
 msgstr "Vypnuto"
 
 #. TRANSLATORS: Test with "xz --info-memory" to see if
 #. the alignment looks nice.
-#: src/xz/hardware.c:119
+#: src/xz/hardware.c:120
 msgid "Total amount of physical memory (RAM): "
 msgstr "Celkové množství fyzické paměti (RAM):     "
 
-#: src/xz/hardware.c:121
+#: src/xz/hardware.c:122
 msgid "Memory usage limit for compression:    "
 msgstr "Omezení použitelné paměti pro komprimaci:  "
 
-#: src/xz/hardware.c:123
+#: src/xz/hardware.c:124
 msgid "Memory usage limit for decompression:  "
 msgstr "Omezení použitelné paměti pro dekomprimaci:"
 
 #. TRANSLATORS: Indicates that there is no integrity check.
 #. This string is used in tables, so the width must not
 #. exceed ten columns with a fixed-width font.
-#: src/xz/list.c:62
+#: src/xz/list.c:65
 msgid "None"
 msgstr "žádná"
 
@@ -212,60 +229,60 @@
 #. strings are used in tables, so the width must not exceed ten
 #. columns with a fixed-width font. It's OK to omit the dash if
 #. you need space for one extra letter, but don't use spaces.
-#: src/xz/list.c:69
+#: src/xz/list.c:72
 msgid "Unknown-2"
 msgstr "neznámá-2"
 
-#: src/xz/list.c:70
+#: src/xz/list.c:73
 msgid "Unknown-3"
 msgstr "neznámá-3"
 
-#: src/xz/list.c:72
+#: src/xz/list.c:75
 msgid "Unknown-5"
 msgstr "neznámá-5"
 
-#: src/xz/list.c:73
+#: src/xz/list.c:76
 msgid "Unknown-6"
 msgstr "neznámá-6"
 
-#: src/xz/list.c:74
+#: src/xz/list.c:77
 msgid "Unknown-7"
 msgstr "neznámá-7"
 
-#: src/xz/list.c:75
+#: src/xz/list.c:78
 msgid "Unknown-8"
 msgstr "neznámá-8"
 
-#: src/xz/list.c:76
+#: src/xz/list.c:79
 msgid "Unknown-9"
 msgstr "neznámá-9"
 
-#: src/xz/list.c:78
+#: src/xz/list.c:81
 msgid "Unknown-11"
 msgstr "neznámá-11"
 
-#: src/xz/list.c:79
+#: src/xz/list.c:82
 msgid "Unknown-12"
 msgstr "neznámá-12"
 
-#: src/xz/list.c:80
+#: src/xz/list.c:83
 msgid "Unknown-13"
 msgstr "neznámá-13"
 
-#: src/xz/list.c:81
+#: src/xz/list.c:84
 msgid "Unknown-14"
 msgstr "neznámá-14"
 
-#: src/xz/list.c:82
+#: src/xz/list.c:85
 msgid "Unknown-15"
 msgstr "neznámá-15"
 
-#: src/xz/list.c:126
+#: src/xz/list.c:153
 #, c-format
 msgid "%s: File is empty"
 msgstr "%s: Soubor je prázdný"
 
-#: src/xz/list.c:131
+#: src/xz/list.c:158
 #, c-format
 msgid "%s: Too small to be a valid .xz file"
 msgstr "%s: Je příliš malý na to, aby to mohl být platný soubor .xz"
@@ -274,41 +291,41 @@
 #. to Ratio, the columns are right aligned. Check and Filename
 #. are left aligned. If you need longer words, it's OK to
 #. use two lines here. Test with "xz -l foo.xz".
-#: src/xz/list.c:612
+#: src/xz/list.c:645
 msgid "Strms  Blocks   Compressed Uncompressed  Ratio  Check   Filename"
 msgstr "Proud   Bloky      Komprim    Nekomprim  Poměr  Kontrl  Název souboru"
 
-#: src/xz/list.c:652
+#: src/xz/list.c:685
 #, c-format
 msgid "  Streams:            %s\n"
 msgstr "  Proudů:                  %s\n"
 
-#: src/xz/list.c:654
+#: src/xz/list.c:687
 #, c-format
 msgid "  Blocks:             %s\n"
 msgstr "  Bloků:                   %s\n"
 
-#: src/xz/list.c:656
+#: src/xz/list.c:689
 #, c-format
 msgid "  Compressed size:    %s\n"
 msgstr "  Komprimovaná velikost:   %s\n"
 
-#: src/xz/list.c:659
+#: src/xz/list.c:692
 #, c-format
 msgid "  Uncompressed size:  %s\n"
 msgstr "  Nekomprimovaná velikost: %s\n"
 
-#: src/xz/list.c:662
+#: src/xz/list.c:695
 #, c-format
 msgid "  Ratio:              %s\n"
 msgstr "  Poměr komprimace:        %s\n"
 
-#: src/xz/list.c:664
+#: src/xz/list.c:697
 #, c-format
 msgid "  Check:              %s\n"
 msgstr "  Typ kontroly:            %s\n"
 
-#: src/xz/list.c:665
+#: src/xz/list.c:698
 #, c-format
 msgid "  Stream padding:     %s\n"
 msgstr "  Zarovnání proudu:        %s\n"
@@ -316,28 +333,24 @@
 #. TRANSLATORS: The second line is column headings. All except
 #. Check are right aligned; Check is left aligned. Test with
 #. "xz -lv foo.xz".
-#: src/xz/list.c:693
+#: src/xz/list.c:726
 msgid ""
 "  Streams:\n"
-"    Stream    Blocks      CompOffset    UncompOffset        CompSize      "
-"UncompSize  Ratio  Check      Padding"
+"    Stream    Blocks      CompOffset    UncompOffset        CompSize      UncompSize  Ratio  Check      Padding"
 msgstr ""
 "  Proudy:\n"
-"     Proud     Bloky     KomprPozice   NekomprPozice   KomprVelikost "
-"NekomprVelikost  Poměr  Kontrola   Zarovnání"
+"     Proud     Bloky     KomprPozice   NekomprPozice   KomprVelikost NekomprVelikost  Poměr  Kontrola   Zarovnání"
 
 #. TRANSLATORS: The second line is column headings. All
 #. except Check are right aligned; Check is left aligned.
-#: src/xz/list.c:748
+#: src/xz/list.c:781
 #, c-format
 msgid ""
 "  Blocks:\n"
-"    Stream     Block      CompOffset    UncompOffset       TotalSize      "
-"UncompSize  Ratio  Check"
+"    Stream     Block      CompOffset    UncompOffset       TotalSize      UncompSize  Ratio  Check"
 msgstr ""
 "  Bloky:\n"
-"     Proud      Blok     KomprPozice   NekomprPozice    CelkVelikost "
-"NekomprVelikost  Poměr  Kontrola"
+"     Proud      Blok     KomprPozice   NekomprPozice    CelkVelikost NekomprVelikost  Poměr  Kontrola"
 
 #. TRANSLATORS: These are additional column headings
 #. for the most verbose listing mode. CheckVal
@@ -346,32 +359,37 @@
 #. are right aligned. %*s is replaced with 0-120
 #. spaces to make the CheckVal column wide enough.
 #. Test with "xz -lvv foo.xz".
-#: src/xz/list.c:760
+#: src/xz/list.c:793
 #, c-format
 msgid "      CheckVal %*s Header  Flags        CompSize    MemUsage  Filters"
 msgstr "   KontrHod %*s Hlavič  Příznaky     KomprVel    PoužiPam  Filtry"
 
-#: src/xz/list.c:838 src/xz/list.c:1007
+#: src/xz/list.c:871 src/xz/list.c:1046
 #, c-format
 msgid "  Memory needed:      %s MiB\n"
 msgstr "  Potřebná paměť:          %s MiB\n"
 
-#: src/xz/list.c:840 src/xz/list.c:1009
+#: src/xz/list.c:873 src/xz/list.c:1048
 #, c-format
 msgid "  Sizes in headers:   %s\n"
 msgstr "  Velikosti v hlavičkách:  %s\n"
 
-#: src/xz/list.c:841 src/xz/list.c:1010
+#: src/xz/list.c:874 src/xz/list.c:1049
 msgid "Yes"
 msgstr "Ano"
 
-#: src/xz/list.c:841 src/xz/list.c:1010
+#: src/xz/list.c:874 src/xz/list.c:1049
 msgid "No"
 msgstr "Ne"
 
+#: src/xz/list.c:875 src/xz/list.c:1050
+#, c-format
+msgid "  Minimum XZ Utils version: %s\n"
+msgstr ""
+
 #. TRANSLATORS: %s is an integer. Only the plural form of this
 #. message is used (e.g. "2 files"). Test with "xz -l foo.xz bar.xz".
-#: src/xz/list.c:986
+#: src/xz/list.c:1025
 #, c-format
 msgid "%s file\n"
 msgid_plural "%s files\n"
@@ -379,20 +397,20 @@
 msgstr[1] "%s soubory\n"
 msgstr[2] "%s souborů\n"
 
-#: src/xz/list.c:999
+#: src/xz/list.c:1038
 msgid "Totals:"
 msgstr "Celkem:"
 
-#: src/xz/list.c:1000
+#: src/xz/list.c:1039
 #, c-format
 msgid "  Number of files:    %s\n"
 msgstr "  Počet souborů:           %s\n"
 
-#: src/xz/list.c:1072
+#: src/xz/list.c:1114
 msgid "--list works only on .xz files (--format=xz or --format=auto)"
 msgstr "--list pracuje pouze se soubory .xz (--format=xz nebo --format=auto)"
 
-#: src/xz/list.c:1078
+#: src/xz/list.c:1120
 msgid "--list does not support reading from standard input"
 msgstr "--list nepodporuje čtení ze standardního vstupu"
 
@@ -408,78 +426,83 @@
 
 #: src/xz/main.c:120
 #, c-format
-msgid ""
-"%s: Null character found when reading filenames; maybe you meant to use `--"
-"files0' instead of `--files'?"
-msgstr ""
-"%s: Byl nalezen nulový znak při čtení názvů souborů; nechtěli jste náhodou "
-"použít „--files0“ místo „--files“?"
+msgid "%s: Null character found when reading filenames; maybe you meant to use `--files0' instead of `--files'?"
+msgstr "%s: Byl nalezen nulový znak při čtení názvů souborů; nechtěli jste náhodou použít „--files0“ místo „--files“?"
 
 #: src/xz/main.c:174
 msgid "Compression and decompression with --robot are not supported yet."
 msgstr "Komprimace a dekomprimace s přepínačem --robot není zatím podporovaná."
 
 #: src/xz/main.c:231
-msgid ""
-"Cannot read data from standard input when reading filenames from standard "
-"input"
-msgstr ""
-"Ze standardního vstupu nelze číst data, když se ze standardního vstupu "
-"načítají názvy souborů"
+msgid "Cannot read data from standard input when reading filenames from standard input"
+msgstr "Ze standardního vstupu nelze číst data, když se ze standardního vstupu načítají názvy souborů"
 
-#: src/xz/message.c:792 src/xz/message.c:842
+#. TRANSLATORS: This is the program name in the beginning
+#. of the line in messages. Usually it becomes "xz: ".
+#. This is a translatable string because French needs
+#. a space before a colon.
+#: src/xz/message.c:733
+#, c-format
+msgid "%s: "
+msgstr ""
+
+#: src/xz/message.c:796 src/xz/message.c:846
 msgid "Internal error (bug)"
 msgstr "Interní chyba"
 
-#: src/xz/message.c:799
+#: src/xz/message.c:803
 msgid "Cannot establish signal handlers"
 msgstr "Nelze ustanovit ovladač signálu"
 
-#: src/xz/message.c:808
+#: src/xz/message.c:812
 msgid "No integrity check; not verifying file integrity"
 msgstr "Žádná kontrola integrity; integrita souboru se nebude ověřovat"
 
-#: src/xz/message.c:811
+#: src/xz/message.c:815
 msgid "Unsupported type of integrity check; not verifying file integrity"
-msgstr ""
-"Nepodporovaný typ kontroly integrity; integrita souboru se nebude ověřovat"
+msgstr "Nepodporovaný typ kontroly integrity; integrita souboru se nebude ověřovat"
 
-#: src/xz/message.c:818
+#: src/xz/message.c:822
 msgid "Memory usage limit reached"
 msgstr "Dosaženo omezení použitelné paměti"
 
-#: src/xz/message.c:821
+#: src/xz/message.c:825
 msgid "File format not recognized"
 msgstr "Formát souboru nebyl rozpoznán"
 
-#: src/xz/message.c:824
+#: src/xz/message.c:828
 msgid "Unsupported options"
 msgstr "Nepodporovaná volba"
 
-#: src/xz/message.c:827
+#: src/xz/message.c:831
 msgid "Compressed data is corrupt"
 msgstr "Komprimovaná data jsou poškozená"
 
-#: src/xz/message.c:830
+#: src/xz/message.c:834
 msgid "Unexpected end of input"
 msgstr "Neočekávaný konec vstupu"
 
-#: src/xz/message.c:881
+#: src/xz/message.c:867
+#, fuzzy, c-format
+msgid "%s MiB of memory is required. The limiter is disabled."
+msgstr "Je vyžadováno %s MiB paměti. Limit je %s."
+
+#: src/xz/message.c:895
 #, c-format
 msgid "%s MiB of memory is required. The limit is %s."
 msgstr "Je vyžadováno %s MiB paměti. Limit je %s."
 
-#: src/xz/message.c:1048
+#: src/xz/message.c:1062
 #, c-format
 msgid "%s: Filter chain: %s\n"
 msgstr "%s: Omezující filtr: %s\n"
 
-#: src/xz/message.c:1058
+#: src/xz/message.c:1072
 #, c-format
 msgid "Try `%s --help' for more information."
 msgstr "Zkuste „%s --help“ pro více informací"
 
-#: src/xz/message.c:1084
+#: src/xz/message.c:1098
 #, c-format
 msgid ""
 "Usage: %s [OPTION]... [FILE]...\n"
@@ -490,18 +513,15 @@
 "Komprimuje nebo dekomprimuje SOUBORy ve formátu xz.\n"
 "\n"
 
-#: src/xz/message.c:1091
-msgid ""
-"Mandatory arguments to long options are mandatory for short options too.\n"
-msgstr ""
-"Povinné argumenty pro dlouhé přepínače jsou povinné rovněž pro krátké "
-"přepínače.\n"
+#: src/xz/message.c:1105
+msgid "Mandatory arguments to long options are mandatory for short options too.\n"
+msgstr "Povinné argumenty pro dlouhé přepínače jsou povinné rovněž pro krátké přepínače.\n"
 
-#: src/xz/message.c:1095
+#: src/xz/message.c:1109
 msgid " Operation mode:\n"
 msgstr "Operační režim:\n"
 
-#: src/xz/message.c:1098
+#: src/xz/message.c:1112
 msgid ""
 "  -z, --compress      force compression\n"
 "  -d, --decompress    force decompression\n"
@@ -513,7 +533,7 @@
 " -t, --test            testovat integritu komprimovaného souboru\n"
 " -l, --list            vypsat informace o souborech .xz"
 
-#: src/xz/message.c:1104
+#: src/xz/message.c:1118
 msgid ""
 "\n"
 " Operation modifiers:\n"
@@ -521,39 +541,39 @@
 "\n"
 "Modifikátory operací:\n"
 
-#: src/xz/message.c:1107
+#: src/xz/message.c:1121
 msgid ""
 "  -k, --keep          keep (don't delete) input files\n"
 "  -f, --force         force overwrite of output file and (de)compress links\n"
 "  -c, --stdout        write to standard output and don't delete input files"
 msgstr ""
 " -k, --keep            zachovat (nemazat) vstupní soubory\n"
-" -f, --force           vynutit přepis výstupního souboru a de/komprimovat "
-"odkazy\n"
-" -c, --stdout          zapisovat na standardní výstup a nemazat vstupní "
-"soubory"
+" -f, --force           vynutit přepis výstupního souboru a de/komprimovat odkazy\n"
+" -c, --stdout          zapisovat na standardní výstup a nemazat vstupní soubory"
 
-#: src/xz/message.c:1113
+#: src/xz/message.c:1127
+msgid ""
+"      --single-stream decompress only the first stream, and silently\n"
+"                      ignore possible remaining input data"
+msgstr ""
+
+#: src/xz/message.c:1130
 msgid ""
 "      --no-sparse     do not create sparse files when decompressing\n"
 "  -S, --suffix=.SUF   use the suffix `.SUF' on compressed files\n"
 "      --files[=FILE]  read filenames to process from FILE; if FILE is\n"
 "                      omitted, filenames are read from the standard input;\n"
-"                      filenames must be terminated with the newline "
-"character\n"
+"                      filenames must be terminated with the newline character\n"
 "      --files0[=FILE] like --files but use the null character as terminator"
 msgstr ""
 "     --no-sparse       nevytvářet při dekomprimaci soubory řídkých matic\n"
 " -S, --suffix=.PRIP    použít u komprimovaných souborů příponu „.PRIP“\n"
-"     --files[=SOUBOR]  číst názvy souborů, které se mají zpracovat, ze "
-"SOUBORu;\n"
-"                       pokud není SOUBOR zadán, čte se ze standardního "
-"vstupu;\n"
+"     --files[=SOUBOR]  číst názvy souborů, které se mají zpracovat, ze SOUBORu;\n"
+"                       pokud není SOUBOR zadán, čte se ze standardního vstupu;\n"
 "                       názvy souborů musí být zakončeny znakem nového řádku\n"
-"     --files0[=SOUBOR] stejné jako --files, ale použít k zakončování nulový "
-"znak"
+"     --files0[=SOUBOR] stejné jako --files, ale použít k zakončování nulový znak"
 
-#: src/xz/message.c:1121
+#: src/xz/message.c:1139
 msgid ""
 "\n"
 " Basic file format and compression options:\n"
@@ -561,7 +581,7 @@
 "\n"
 "Základní přepínače pro formát souboru a komprimaci:\n"
 
-#: src/xz/message.c:1123
+#: src/xz/message.c:1141
 msgid ""
 "  -F, --format=FMT    file format to encode or decode; possible values are\n"
 "                      `auto' (default), `xz', `lzma', and `raw'\n"
@@ -570,76 +590,76 @@
 msgstr ""
 " -F, --format=FORMÁT   formát souboru k zakódování nebo dekódování; možné\n"
 "                       hodnoty jsou „auto“ (výchozí), „xz“, „lzma“ a „raw“\n"
-" -C, --check=KONTROLA  typ kontroly integrity: „none“ (používejte s "
-"rozmyslem),\n"
+" -C, --check=KONTROLA  typ kontroly integrity: „none“ (používejte s rozmyslem),\n"
 "                       „crc32“, „crc64“ (výchozí) nebo „sha256“"
 
-#: src/xz/message.c:1130
+#: src/xz/message.c:1148
 msgid ""
-"  -0 ... -9           compression preset; default is 6; take compressor "
-"*and*\n"
-"                      decompressor memory usage into account before using "
-"7-9!"
+"  -0 ... -9           compression preset; default is 6; take compressor *and*\n"
+"                      decompressor memory usage into account before using 7-9!"
 msgstr ""
-" -0 .. -9              přednastavení komprimace; výchozí je 6; než "
-"použijete\n"
-"                       hodnoty 7 – 9, vezměte do úvahy množství použité "
-"paměti"
+" -0 .. -9              přednastavení komprimace; výchozí je 6; než použijete\n"
+"                       hodnoty 7 – 9, vezměte do úvahy množství použité paměti"
 
-#: src/xz/message.c:1134
+#: src/xz/message.c:1152
 msgid ""
-"  -e, --extreme       try to improve compression ratio by using more CPU "
-"time;\n"
+"  -e, --extreme       try to improve compression ratio by using more CPU time;\n"
 "                      does not affect decompressor memory requirements"
 msgstr ""
 " -e, --extreme         zkusit zlepšit poměr komprimace využitím více času\n"
 "                       procesoru; nemá vliv na paměťové nároky dekomprimace"
 
-#: src/xz/message.c:1139
+#: src/xz/message.c:1158
+msgid ""
+"      --block-size=SIZE\n"
+"                      when compressing to the .xz format, start a new block\n"
+"                      after every SIZE bytes of input; 0=disabled (default)"
+msgstr ""
+
+#: src/xz/message.c:1163
+msgid ""
+"      --block-list=SIZES\n"
+"                      when compressing to the .xz format, start a new block\n"
+"                      after the given intervals of uncompressed data"
+msgstr ""
+
+#: src/xz/message.c:1167
 #, no-c-format
 msgid ""
 "      --memlimit-compress=LIMIT\n"
 "      --memlimit-decompress=LIMIT\n"
 "  -M, --memlimit=LIMIT\n"
-"                      set memory usage limit for compression, "
-"decompression,\n"
+"                      set memory usage limit for compression, decompression,\n"
 "                      or both; LIMIT is in bytes, % of RAM, or 0 for defaults"
 msgstr ""
 "     --memlimit-compress=LIMIT\n"
 "     --memlimit-decompress=LIMIT\n"
 " -M, --memlimit=LIMIT\n"
 "                       nastaví omezení použitelné paměti pro komprimaci,\n"
-"                       dekomprimaci nebo obojí; LIMIT je v bajtech, % z "
-"paměti\n"
+"                       dekomprimaci nebo obojí; LIMIT je v bajtech, % z paměti\n"
 "                       RAM nebo 0 pro výchozí"
 
-#: src/xz/message.c:1146
+#: src/xz/message.c:1174
 msgid ""
-"      --no-adjust     if compression settings exceed the memory usage "
-"limit,\n"
-"                      give an error instead of adjusting the settings "
-"downwards"
+"      --no-adjust     if compression settings exceed the memory usage limit,\n"
+"                      give an error instead of adjusting the settings downwards"
 msgstr ""
-"     --no-adjust       pokud nastavení komprimace přesáhne omezení "
-"použitelné\n"
+"     --no-adjust       pokud nastavení komprimace přesáhne omezení použitelné\n"
 "                       paměti, předat chybu namísto snížení nastavení"
 
-#: src/xz/message.c:1152
+#: src/xz/message.c:1180
 msgid ""
 "\n"
 " Custom filter chain for compression (alternative for using presets):"
 msgstr ""
 "\n"
-"Vlastní omezující filtr pro komprimaci (alternativa k použití "
-"přednastavených):"
+"Vlastní omezující filtr pro komprimaci (alternativa k použití přednastavených):"
 
-#: src/xz/message.c:1161
+#: src/xz/message.c:1189
 msgid ""
 "\n"
-"  --lzma1[=OPTS]      LZMA1 or LZMA2; OPTS is a comma-separated list of zero "
-"or\n"
-"  --lzma2[=OPTS]      more of the following options (valid values; "
-"default):\n"
+"  --lzma1[=OPTS]      LZMA1 or LZMA2; OPTS is a comma-separated list of zero or\n"
+"  --lzma2[=OPTS]      more of the following options (valid values; default):\n"
 "                        preset=PRE reset options to a preset (0-9[e])\n"
 "                        dict=NUM   dictionary size (4KiB - 1536MiB; 8MiB)\n"
 "                        lc=NUM     number of literal context bits (0-4; 3)\n"
@@ -647,33 +667,24 @@
 "                        pb=NUM     number of position bits (0-4; 2)\n"
 "                        mode=MODE  compression mode (fast, normal; normal)\n"
 "                        nice=NUM   nice length of a match (2-273; 64)\n"
-"                        mf=NAME    match finder (hc3, hc4, bt2, bt3, bt4; "
-"bt4)\n"
-"                        depth=NUM  maximum search depth; 0=automatic "
-"(default)"
+"                        mf=NAME    match finder (hc3, hc4, bt2, bt3, bt4; bt4)\n"
+"                        depth=NUM  maximum search depth; 0=automatic (default)"
 msgstr ""
 "\n"
-" --lzma1[=VOLBY]       LZMA1 nebo LZMA2; VOLBY je čárkou oddělovaný seznam "
-"žádné\n"
-" --lzma2[=VOLBY]       nebo více následujících voleb (platné hodnoty; "
-"výchozí):\n"
-"                         preset=PŘE změnit volby na PŘEdnastavené (0 – 9"
-"[e])\n"
-"                         dict=POČ   velikost slovníku (4 KiB – 1536 MiB; 8 "
-"MiB)\n"
-"                         lc=POČ     počet kontextových bitů literálu (0 – 4; "
-"3)\n"
-"                         lp=POČ     počet pozičních bitů literálu (0 – 4; "
-"0)\n"
+" --lzma1[=VOLBY]       LZMA1 nebo LZMA2; VOLBY je čárkou oddělovaný seznam žádné\n"
+" --lzma2[=VOLBY]       nebo více následujících voleb (platné hodnoty; výchozí):\n"
+"                         preset=PŘE změnit volby na PŘEdnastavené (0 – 9[e])\n"
+"                         dict=POČ   velikost slovníku (4 KiB – 1536 MiB; 8 MiB)\n"
+"                         lc=POČ     počet kontextových bitů literálu (0 – 4; 3)\n"
+"                         lp=POČ     počet pozičních bitů literálu (0 – 4; 0)\n"
 "                         pb=POČ     počet pozičních bitů (0 – 4; 2)\n"
 "                         mode=REŽIM režim komprimace (fast, normal; normal)\n"
 "                         nice=NUM   příznivá délka shody (2 – 273; 64)\n"
-"                         mf=NÁZEV   hledání shod (hc3, hc4, bt2, bt3, bt4; "
-"bt4)\n"
+"                         mf=NÁZEV   hledání shod (hc3, hc4, bt2, bt3, bt4; bt4)\n"
 "                         depth=POČ  maximální hloubka prohledávání;\n"
 "                                    0 = automaticky (výchozí)"
 
-#: src/xz/message.c:1176
+#: src/xz/message.c:1204
 msgid ""
 "\n"
 "  --x86[=OPTS]        x86 BCJ filter (32-bit and 64-bit)\n"
@@ -695,7 +706,7 @@
 "                       Platné volby pro všechny filtry BCJ:\n"
 "                         start=POČ  počáteční posun pro převody (výchozí=0)"
 
-#: src/xz/message.c:1188
+#: src/xz/message.c:1216
 msgid ""
 "\n"
 "  --delta[=OPTS]      Delta filter; valid OPTS (valid values; default):\n"
@@ -704,11 +715,10 @@
 msgstr ""
 "\n"
 " --delta[=VOLBY]       Filtr Delta; platné VOLBY (platné hodnoty; výchozí):\n"
-"                         dist=POČ   vzdálenost mezi bajty, které jsou "
-"odečítány\n"
+"                         dist=POČ   vzdálenost mezi bajty, které jsou odečítány\n"
 "                                    jeden od druhého (1 – 256; 1)"
 
-#: src/xz/message.c:1196
+#: src/xz/message.c:1224
 msgid ""
 "\n"
 " Other options:\n"
@@ -716,79 +726,71 @@
 "\n"
 " Ostatní přepínače:\n"
 
-#: src/xz/message.c:1199
+#: src/xz/message.c:1227
 msgid ""
-"  -q, --quiet         suppress warnings; specify twice to suppress errors "
-"too\n"
+"  -q, --quiet         suppress warnings; specify twice to suppress errors too\n"
 "  -v, --verbose       be verbose; specify twice for even more verbose"
 msgstr ""
-" -q, --quiet           potlačit varování; zadáním dvakrát, potlačíte i "
-"chyby\n"
+" -q, --quiet           potlačit varování; zadáním dvakrát, potlačíte i chyby\n"
 " -v, --verbose         podrobnější zprávy; zadáním dvakrát, budou ještě\n"
 "                       podrobnější"
 
-#: src/xz/message.c:1204
+#: src/xz/message.c:1232
 msgid "  -Q, --no-warn       make warnings not affect the exit status"
 msgstr " -Q, --no-warn         způsobí, že varování neovlivní stav ukončení"
 
-#: src/xz/message.c:1206
-msgid ""
-"      --robot         use machine-parsable messages (useful for scripts)"
+#: src/xz/message.c:1234
+msgid "      --robot         use machine-parsable messages (useful for scripts)"
 msgstr ""
 "     --robot           použít strojově analyzovatelné zprávy (užitečné pro\n"
 "                       skripty)"
 
-#: src/xz/message.c:1209
+#: src/xz/message.c:1237
 msgid ""
-"      --info-memory   display the total amount of RAM and the currently "
-"active\n"
+"      --info-memory   display the total amount of RAM and the currently active\n"
 "                      memory usage limits, and exit"
 msgstr ""
-"     --info-memory     zobrazit celkové množství paměti RAM a současné "
-"aktivní\n"
+"     --info-memory     zobrazit celkové množství paměti RAM a současné aktivní\n"
 "                       omezení použitelné paměti a skončit"
 
-#: src/xz/message.c:1212
+#: src/xz/message.c:1240
 msgid ""
 "  -h, --help          display the short help (lists only the basic options)\n"
 "  -H, --long-help     display this long help and exit"
 msgstr ""
-" -h, --help            zobrazit krátkou nápovědu (vypíše jen základní "
-"přepínače)\n"
+" -h, --help            zobrazit krátkou nápovědu (vypíše jen základní přepínače)\n"
 " -H, --long-help       zobrazit tuto úplnou nápovědu a skončit"
 
-#: src/xz/message.c:1216
+#: src/xz/message.c:1244
 msgid ""
 "  -h, --help          display this short help and exit\n"
 "  -H, --long-help     display the long help (lists also the advanced options)"
 msgstr ""
 " -h, --help            zobrazit tuto zkrácenou nápovědu a skončit\n"
-" -H, --long-help       zobrazit úplnou nápovědu (vypíše i pokročilé "
-"přepínače)"
+" -H, --long-help       zobrazit úplnou nápovědu (vypíše i pokročilé přepínače)"
 
-#: src/xz/message.c:1221
+#: src/xz/message.c:1249
 msgid "  -V, --version       display the version number and exit"
 msgstr " -V, --version         zobrazit číslo verze a skončit"
 
-#: src/xz/message.c:1223
+#: src/xz/message.c:1251
 msgid ""
 "\n"
 "With no FILE, or when FILE is -, read standard input.\n"
 msgstr ""
 "\n"
-"Pokud SOUBOR není zadán nebo pokud je -, bude se číst ze standardního "
-"vstupu.\n"
+"Pokud SOUBOR není zadán nebo pokud je -, bude se číst ze standardního vstupu.\n"
 
 #. TRANSLATORS: This message indicates the bug reporting address
 #. for this package. Please add _another line_ saying
 #. "Report translation bugs to <...>\n" with the email or WWW
 #. address for translation bugs. Thanks.
-#: src/xz/message.c:1229
+#: src/xz/message.c:1257
 #, c-format
 msgid "Report bugs to <%s> (in English or Finnish).\n"
 msgstr "Chyby hlaste na <%s> (v angličtině nebo finštině).\n"
 
-#: src/xz/message.c:1231
+#: src/xz/message.c:1259
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Domovská stránka %s: <%s>\n"
@@ -822,25 +824,22 @@
 msgid "The selected match finder requires at least nice=%<PRIu32>"
 msgstr "Vybraný vyhledávač shod vyžaduje minimálně nice=%<PRIu32>"
 
-#: src/xz/suffix.c:79 src/xz/suffix.c:164
+#: src/xz/suffix.c:133 src/xz/suffix.c:258
 #, c-format
-msgid ""
-"%s: With --format=raw, --suffix=.SUF is required unless writing to stdout"
-msgstr ""
-"%s: S přepínačem --format=raw je vyžadován --sufix=.PRIP, vyjma zápisu do "
-"standardního výstupu"
+msgid "%s: With --format=raw, --suffix=.SUF is required unless writing to stdout"
+msgstr "%s: S přepínačem --format=raw je vyžadován --sufix=.PRIP, vyjma zápisu do standardního výstupu"
 
-#: src/xz/suffix.c:99
+#: src/xz/suffix.c:164
 #, c-format
 msgid "%s: Filename has an unknown suffix, skipping"
 msgstr "%s: Název souboru má neznámou příponu, vynechává se"
 
-#: src/xz/suffix.c:154
+#: src/xz/suffix.c:185
 #, c-format
 msgid "%s: File already has `%s' suffix, skipping"
 msgstr "%s: Soubor již má příponu „%s“, vynechává se"
 
-#: src/xz/suffix.c:205
+#: src/xz/suffix.c:393
 #, c-format
 msgid "%s: Invalid filename suffix"
 msgstr "%s: Neplatná přípona názvu souboru"
@@ -857,9 +856,7 @@
 
 #: src/xz/util.c:105
 msgid "Valid suffixes are `KiB' (2^10), `MiB' (2^20), and `GiB' (2^30)."
-msgstr ""
-"Platné jednotky s předponami jsou „KiB“ (2^10 B), „MiB“ (2^20 B) a "
-"„GiB“ (2^30 B)."
+msgstr "Platné jednotky s předponami jsou „KiB“ (2^10 B), „MiB“ (2^20 B) a „GiB“ (2^30 B)."
 
 #: src/xz/util.c:122
 #, c-format
@@ -893,49 +890,37 @@
 #~ msgstr "%s MiB (%s bajtů)\n"
 
 #~ msgid ""
-#~ "  -e, --extreme       use more CPU time when encoding to increase "
-#~ "compression\n"
+#~ "  -e, --extreme       use more CPU time when encoding to increase compression\n"
 #~ "                      ratio without increasing memory usage of the decoder"
 #~ msgstr ""
-#~ " -e, --extreme         využít více procesorového času pro kódování, čímž "
-#~ "se\n"
-#~ "                       zvýší kompresní poměr bez zvýšení paměti použité "
-#~ "kodérem"
+#~ " -e, --extreme         využít více procesorového času pro kódování, čímž se\n"
+#~ "                       zvýší kompresní poměr bez zvýšení paměti použité kodérem"
 
 #~ msgid ""
-#~ "  -M, --memory=NUM    use roughly NUM bytes of memory at maximum; 0 "
-#~ "indicates\n"
+#~ "  -M, --memory=NUM    use roughly NUM bytes of memory at maximum; 0 indicates\n"
 #~ "                      the default setting, which is 40 % of total RAM"
 #~ msgstr ""
-#~ " -M, --memory=POČ      použít zhruba POČ bajtů paměti jako maximum; 0 "
-#~ "znamená\n"
-#~ "                       výchozí nastavení, což je 40% celkového množství "
-#~ "paměti"
+#~ " -M, --memory=POČ      použít zhruba POČ bajtů paměti jako maximum; 0 znamená\n"
+#~ "                       výchozí nastavení, což je 40% celkového množství paměti"
 
 #~ msgid ""
 #~ "\n"
-#~ "  --subblock[=OPTS]   Subblock filter; valid OPTS (valid values; "
-#~ "default):\n"
+#~ "  --subblock[=OPTS]   Subblock filter; valid OPTS (valid values; default):\n"
 #~ "                        size=NUM   number of bytes of data per subblock\n"
 #~ "                                   (1 - 256Mi; 4Ki)\n"
-#~ "                        rle=NUM    run-length encoder chunk size (0-256; "
-#~ "0)"
+#~ "                        rle=NUM    run-length encoder chunk size (0-256; 0)"
 #~ msgstr ""
 #~ "\n"
-#~ " --subblock[=VOLBY]    Subblokový filtr; platné VOLBY (platné hodnoty; "
-#~ "výchozí):\n"
+#~ " --subblock[=VOLBY]    Subblokový filtr; platné VOLBY (platné hodnoty; výchozí):\n"
 #~ "                         size=POČ   počet bajtů dat na subblok\n"
 #~ "                                    (1 - 256 Mi; 4 Ki)\n"
-#~ "                         rle=POČ    velikost dávky pro kodér run-length "
-#~ "(0-256; 0)"
+#~ "                         rle=POČ    velikost dávky pro kodér run-length (0-256; 0)"
 
 #~ msgid ""
-#~ "On this system and configuration, this program will use a maximum of "
-#~ "roughly\n"
+#~ "On this system and configuration, this program will use a maximum of roughly\n"
 #~ "%s MiB RAM and "
 #~ msgstr ""
-#~ "Na tomto systému a s tímto nastavením použije tento program maximum ze "
-#~ "zhruba\n"
+#~ "Na tomto systému a s tímto nastavením použije tento program maximum ze zhruba\n"
 #~ "%s MiB RAM a "
 
 #~ msgid ""
diff --git a/po/de.po b/po/de.po
index 4cf5297..d808f51 100644
--- a/po/de.po
+++ b/po/de.po
@@ -6,91 +6,96 @@
 msgstr ""
 "Project-Id-Version: XZ Utils 4.999.9beta\n"
 "Report-Msgid-Bugs-To: lasse.collin@tukaani.org\n"
-"POT-Creation-Date: 2012-05-29 21:55+0200\n"
+"POT-Creation-Date: 2012-07-04 20:51+0300\n"
 "PO-Revision-Date: 2010-09-07 20:27+0200\n"
 "Last-Translator:  <maan@systemlinux.org>\n"
 "Language-Team: German\n"
+"Language: \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"
 
-#: src/xz/args.c:338
+#: src/xz/args.c:62
+#, c-format
+msgid "%s: Invalid argument to --block-list"
+msgstr ""
+
+#: src/xz/args.c:72
+#, c-format
+msgid "%s: Too many arguments to --block-list"
+msgstr ""
+
+#: src/xz/args.c:101
+msgid "0 can only be used as the last element in --block-list"
+msgstr ""
+
+#: src/xz/args.c:401
 #, c-format
 msgid "%s: Unknown file format type"
 msgstr "%s: Unbekanntes file format"
 
-#: src/xz/args.c:361 src/xz/args.c:369
+#: src/xz/args.c:424 src/xz/args.c:432
 #, c-format
 msgid "%s: Unsupported integrity check type"
 msgstr "%s: Integritäts-Check Typ nicht unterstützt"
 
-#: src/xz/args.c:396
+#: src/xz/args.c:464
 msgid "Only one file can be specified with `--files' or `--files0'."
-msgstr ""
-"Nur ein file kann als Argument für --files oder --files0 angegeben werden."
+msgstr "Nur ein file kann als Argument für --files oder --files0 angegeben werden."
 
-#: src/xz/args.c:459
+#: src/xz/args.c:527
 #, c-format
 msgid "The environment variable %s contains too many arguments"
 msgstr "Die Umgebungsvariable %s enthält zu viele Argumente"
 
-#: src/xz/coder.c:105
+#: src/xz/coder.c:106
 msgid "Maximum number of filters is four"
 msgstr "Maximal vier Filter möglich"
 
-#: src/xz/coder.c:118
+#: src/xz/coder.c:119
 msgid "Memory usage limit is too low for the given filter setup."
-msgstr ""
-"Das Speicher Limit ist zu niedrig für die gegebene Filter Konfiguration."
+msgstr "Das Speicher Limit ist zu niedrig für die gegebene Filter Konfiguration."
 
-#: src/xz/coder.c:148
+#: src/xz/coder.c:149
 msgid "Using a preset in raw mode is discouraged."
 msgstr "Verwendung der Voreinstellung im raw Modus wird nicht empfohlen."
 
-#: src/xz/coder.c:150
+#: src/xz/coder.c:151
 msgid "The exact options of the presets may vary between software versions."
-msgstr ""
-"Die genauen Optionen der Voreinstellung können zwischen Software Versionen "
-"variieren."
+msgstr "Die genauen Optionen der Voreinstellung können zwischen Software Versionen variieren."
 
-#: src/xz/coder.c:176
+#: src/xz/coder.c:177
 msgid "The .lzma format supports only the LZMA1 filter"
 msgstr "Das .lzma Format unterstützt nur den LZMA1 Filter"
 
-#: src/xz/coder.c:184
+#: src/xz/coder.c:185
 msgid "LZMA1 cannot be used with the .xz format"
 msgstr "LZMA1 kann nicht mit dem .xz Format verwendet werden"
 
-#: src/xz/coder.c:203
+#: src/xz/coder.c:204
+#, c-format
 msgid "Using up to %<PRIu32> threads."
 msgstr "Benutze bis zu %<PRIu32> Threads."
 
-#: src/xz/coder.c:216
+#: src/xz/coder.c:217
 msgid "Unsupported filter chain or filter options"
 msgstr "Optionen nicht unterstützt"
 
-#: src/xz/coder.c:224
+#: src/xz/coder.c:225
 #, c-format
 msgid "Decompression will need %s MiB of memory."
 msgstr "Dekompression wird %s MiB Speicher brauchen."
 
-#: src/xz/coder.c:259
-msgid ""
-"Adjusted the number of threads from %s to %s to not exceed the memory usage "
-"limit of %s MiB"
-msgstr ""
-"Passte die Anzahl Threads von %s auf %s an um nicht das Speicher "
-"Nutzungslimit von %s MiB zu übersteigen"
-
-#: src/xz/coder.c:313
+#: src/xz/coder.c:260
 #, c-format
-msgid ""
-"Adjusted LZMA%c dictionary size from %s MiB to %s MiB to not exceed the "
-"memory usage limit of %s MiB"
-msgstr ""
-"Passte LZMA%c Wörterbuch Größe von %s MiB to %s MiB an, um nicht das "
-"Speicher Nutzungslimit von %s MiB zu übersteigen"
+msgid "Adjusted the number of threads from %s to %s to not exceed the memory usage limit of %s MiB"
+msgstr "Passte die Anzahl Threads von %s auf %s an um nicht das Speicher Nutzungslimit von %s MiB zu übersteigen"
+
+#: src/xz/coder.c:314
+#, c-format
+msgid "Adjusted LZMA%c dictionary size from %s MiB to %s MiB to not exceed the memory usage limit of %s MiB"
+msgstr "Passte LZMA%c Wörterbuch Größe von %s MiB to %s MiB an, um nicht das Speicher Nutzungslimit von %s MiB zu übersteigen"
 
 #. TRANSLATORS: When compression or decompression finishes,
 #. and xz is going to remove the source file, xz first checks
@@ -105,8 +110,7 @@
 #: src/xz/file_io.c:136
 #, c-format
 msgid "%s: File seems to have been moved, not removing"
-msgstr ""
-"%s: Datei scheint umbenannt worden zu sein, daher wird sie nicht gelöscht"
+msgstr "%s: Datei scheint umbenannt worden zu sein, daher wird sie nicht gelöscht"
 
 #: src/xz/file_io.c:143 src/xz/file_io.c:635
 #, c-format
@@ -161,8 +165,7 @@
 #: src/xz/file_io.c:761
 #, c-format
 msgid "Error restoring the O_APPEND flag to standard output: %s"
-msgstr ""
-"Fehler beim Wiederherstellen des O_APPEND flags bei Standard Output: %s"
+msgstr "Fehler beim Wiederherstellen des O_APPEND flags bei Standard Output: %s"
 
 #: src/xz/file_io.c:773
 #, c-format
@@ -172,8 +175,7 @@
 #: src/xz/file_io.c:809 src/xz/file_io.c:1008
 #, c-format
 msgid "%s: Seeking failed when trying to create a sparse file: %s"
-msgstr ""
-"%s: Positionierungsfehler beim Versuch eine sparse Datei zu erzeugen: %s"
+msgstr "%s: Positionierungsfehler beim Versuch eine sparse Datei zu erzeugen: %s"
 
 #: src/xz/file_io.c:883
 #, c-format
@@ -332,12 +334,10 @@
 #: src/xz/list.c:726
 msgid ""
 "  Streams:\n"
-"    Stream    Blocks      CompOffset    UncompOffset        CompSize      "
-"UncompSize  Ratio  Check      Padding"
+"    Stream    Blocks      CompOffset    UncompOffset        CompSize      UncompSize  Ratio  Check      Padding"
 msgstr ""
 "  Ströme:\n"
-"     Strom    Blöcke      KompOffset    UnkompOffset       KompGröße     "
-"UnkompGröße  Verh.  Check   Auffüllung"
+"     Strom    Blöcke      KompOffset    UnkompOffset       KompGröße     UnkompGröße  Verh.  Check   Auffüllung"
 
 #. TRANSLATORS: The second line is column headings. All
 #. except Check are right aligned; Check is left aligned.
@@ -345,12 +345,10 @@
 #, c-format
 msgid ""
 "  Blocks:\n"
-"    Stream     Block      CompOffset    UncompOffset       TotalSize      "
-"UncompSize  Ratio  Check"
+"    Stream     Block      CompOffset    UncompOffset       TotalSize      UncompSize  Ratio  Check"
 msgstr ""
 "  Blöcke:\n"
-"     Strom     Block      KompOffset    UnkompOffset      TotalGröße     "
-"UnkompGröße  Verh.  Check"
+"     Strom     Block      KompOffset    UnkompOffset      TotalGröße     UnkompGröße  Verh.  Check"
 
 #. TRANSLATORS: These are additional column headings
 #. for the most verbose listing mode. CheckVal
@@ -407,8 +405,7 @@
 
 #: src/xz/list.c:1114
 msgid "--list works only on .xz files (--format=xz or --format=auto)"
-msgstr ""
-"--list funktioniert nur mit .xz Dateien (--format=xz oder --format=auto)"
+msgstr "--list funktioniert nur mit .xz Dateien (--format=xz oder --format=auto)"
 
 #: src/xz/list.c:1120
 msgid "--list does not support reading from standard input"
@@ -426,24 +423,16 @@
 
 #: src/xz/main.c:120
 #, c-format
-msgid ""
-"%s: Null character found when reading filenames; maybe you meant to use `--"
-"files0' instead of `--files'?"
-msgstr ""
-"%s: Null Charakter gefunden beim Lesen der Dateinamen; Meinten Sie `--"
-"files0' statt `--files'?"
+msgid "%s: Null character found when reading filenames; maybe you meant to use `--files0' instead of `--files'?"
+msgstr "%s: Null Charakter gefunden beim Lesen der Dateinamen; Meinten Sie `--files0' statt `--files'?"
 
 #: src/xz/main.c:174
 msgid "Compression and decompression with --robot are not supported yet."
 msgstr "Kompression und Dekompression mit --robot ist noch nicht unterstützt."
 
 #: src/xz/main.c:231
-msgid ""
-"Cannot read data from standard input when reading filenames from standard "
-"input"
-msgstr ""
-"Lesen der Standardeingabe ist nicht möglich, wenn die Dateinamen auch von "
-"der Standardeingabe gelesen werden"
+msgid "Cannot read data from standard input when reading filenames from standard input"
+msgstr "Lesen der Standardeingabe ist nicht möglich, wenn die Dateinamen auch von der Standardeingabe gelesen werden"
 
 #. TRANSLATORS: This is the program name in the beginning
 #. of the line in messages. Usually it becomes "xz: ".
@@ -468,9 +457,7 @@
 
 #: src/xz/message.c:815
 msgid "Unsupported type of integrity check; not verifying file integrity"
-msgstr ""
-"Typ des Integritäts-Checks nicht unterstützt; werde Datei-Integrität nicht "
-"überprüfen"
+msgstr "Typ des Integritäts-Checks nicht unterstützt; werde Datei-Integrität nicht überprüfen"
 
 #: src/xz/message.c:822
 msgid "Memory usage limit reached"
@@ -524,8 +511,7 @@
 "\n"
 
 #: src/xz/message.c:1105
-msgid ""
-"Mandatory arguments to long options are mandatory for short options too.\n"
+msgid "Mandatory arguments to long options are mandatory for short options too.\n"
 msgstr ""
 "Obligatorische Argumente für lange Optionen sind auch für kurze Optionen\n"
 "zwingend.\n"
@@ -580,8 +566,7 @@
 "  -S, --suffix=.SUF   use the suffix `.SUF' on compressed files\n"
 "      --files[=FILE]  read filenames to process from FILE; if FILE is\n"
 "                      omitted, filenames are read from the standard input;\n"
-"                      filenames must be terminated with the newline "
-"character\n"
+"                      filenames must be terminated with the newline character\n"
 "      --files0[=FILE] like --files but use the null character as terminator"
 msgstr ""
 "      --no-sparse       erzeuge keine sparse Datei beim Dekomprimieren\n"
@@ -590,8 +575,7 @@
 "                        DATEI nicht angegeben wurde, werden Dateinamen\n"
 "                        von Standard Input gelesen. Dateinamen müssen mit\n"
 "                        einem Zeilenumbruch voneinander getrennt werden\n"
-"      --files0=[DATEI]  wie --files, aber benutze den Null Charakter als "
-"Trenner"
+"      --files0=[DATEI]  wie --files, aber benutze den Null Charakter als Trenner"
 
 #: src/xz/message.c:1139
 msgid ""
@@ -608,80 +592,79 @@
 "  -C, --check=CHECK   integrity check type: `none' (use with caution),\n"
 "                      `crc32', `crc64' (default), or `sha256'"
 msgstr ""
-"  -F, --format=FMT      Dateiformat zur Kodierung oder Dekodierung; "
-"mögliche\n"
-"                        Werte sind `auto' (Voreinstellung), `xz', `lzma' "
-"und\n"
+"  -F, --format=FMT      Dateiformat zur Kodierung oder Dekodierung; mögliche\n"
+"                        Werte sind `auto' (Voreinstellung), `xz', `lzma' und\n"
 "                        `raw'\n"
-"  -C, --check=CHECK     Typ des Integritätschecks: `none' (Vorsicht), "
-"`crc32',\n"
+"  -C, --check=CHECK     Typ des Integritätschecks: `none' (Vorsicht), `crc32',\n"
 "                        `crc64' (Voreinstellung), oder `sha256'"
 
 #: src/xz/message.c:1148
 msgid ""
-"  -0 ... -9           compression preset; default is 6; take compressor "
-"*and*\n"
-"                      decompressor memory usage into account before using 7-"
-"9!"
+"  -0 ... -9           compression preset; default is 6; take compressor *and*\n"
+"                      decompressor memory usage into account before using 7-9!"
 msgstr ""
-"  -0 .. -9              Kompressionseinstellung; Voreinstellung is 6. "
-"Beachten\n"
-"                        Sie den Speicherverbrauch des Komprimieres *und* "
-"des\n"
+"  -0 .. -9              Kompressionseinstellung; Voreinstellung is 6. Beachten\n"
+"                        Sie den Speicherverbrauch des Komprimieres *und* des\n"
 "                        Dekomprimierers, wenn Sie 7-9 benutzen!"
 
 #: src/xz/message.c:1152
 msgid ""
-"  -e, --extreme       try to improve compression ratio by using more CPU "
-"time;\n"
+"  -e, --extreme       try to improve compression ratio by using more CPU time;\n"
 "                      does not affect decompressor memory requirements"
 msgstr ""
-"  -e, --extreme         Versuche durch stärkere CPU Nutzung das "
-"Kompressions-\n"
+"  -e, --extreme         Versuche durch stärkere CPU Nutzung das Kompressions-\n"
 "                        verhältnis zu verbessern. Das beeinflusst nicht den\n"
 "                        Speicherbedarf des Dekomprimierers."
 
-#: src/xz/message.c:1157
+#: src/xz/message.c:1158
+#, fuzzy
 msgid ""
 "      --block-size=SIZE\n"
 "                      when compressing to the .xz format, start a new block\n"
-"                      after every SIZE Eingabe Bytes; 0=disabled (default)"
+"                      after every SIZE bytes of input; 0=disabled (default)"
 msgstr ""
 "      --block-size=SIZE\n"
 "                      beim Komprimieren ins .xz Format, starte einen neuen\n"
 "                      Block nach jeweils SIZE Eingabe Bytes; 0=deaktiviert\n"
 "                      (Grundeinstellung)"
 
-#: src/xz/message.c:1161
+#: src/xz/message.c:1163
+#, fuzzy
+msgid ""
+"      --block-list=SIZES\n"
+"                      when compressing to the .xz format, start a new block\n"
+"                      after the given intervals of uncompressed data"
+msgstr ""
+"      --block-size=SIZE\n"
+"                      beim Komprimieren ins .xz Format, starte einen neuen\n"
+"                      Block nach jeweils SIZE Eingabe Bytes; 0=deaktiviert\n"
+"                      (Grundeinstellung)"
+
+#: src/xz/message.c:1167
 #, no-c-format
 msgid ""
 "      --memlimit-compress=LIMIT\n"
 "      --memlimit-decompress=LIMIT\n"
 "  -M, --memlimit=LIMIT\n"
-"                      set memory usage limit for compression, "
-"decompression,\n"
+"                      set memory usage limit for compression, decompression,\n"
 "                      or both; LIMIT is in bytes, % of RAM, or 0 for defaults"
 msgstr ""
 "      --memlimit-compress=LIMIT\n"
 "      --memlimit-decompress=LIMIT\n"
 "  -M, --memlimit=LIMIT  Setze Speicher Nutzungslimit für Kompression,\n"
-"                        Dekompression, oder beides; LIMIT ist in bytes, % "
-"RAM,\n"
+"                        Dekompression, oder beides; LIMIT ist in bytes, % RAM,\n"
 "                        oder 0 für Grundeinstellungen."
 
-#: src/xz/message.c:1168
+#: src/xz/message.c:1174
 msgid ""
-"      --no-adjust     if compression settings exceed the memory usage "
-"limit,\n"
-"                      give an error instead of adjusting the settings "
-"downwards"
+"      --no-adjust     if compression settings exceed the memory usage limit,\n"
+"                      give an error instead of adjusting the settings downwards"
 msgstr ""
 "      --no-adjust       Wenn die Kompressionseinstellungen das Speicher\n"
-"                        Nutzungslimit übersteigen, erzeuge einen Fehler "
-"statt\n"
+"                        Nutzungslimit übersteigen, erzeuge einen Fehler statt\n"
 "                        die Einstellungen nach unten anzupassen."
 
-#: src/xz/message.c:1174
+#: src/xz/message.c:1180
 msgid ""
 "\n"
 " Custom filter chain for compression (alternative for using presets):"
@@ -689,13 +672,11 @@
 "\n"
 " User-definierte Filter Kette für Kompression (alternativ zu Voreinstellung):"
 
-#: src/xz/message.c:1183
+#: src/xz/message.c:1189
 msgid ""
 "\n"
-"  --lzma1[=OPTS]      LZMA1 or LZMA2; OPTS is a comma-separated list of zero "
-"or\n"
-"  --lzma2[=OPTS]      more of the following options (valid values; "
-"default):\n"
+"  --lzma1[=OPTS]      LZMA1 or LZMA2; OPTS is a comma-separated list of zero or\n"
+"  --lzma2[=OPTS]      more of the following options (valid values; default):\n"
 "                        preset=PRE reset options to a preset (0-9[e])\n"
 "                        dict=NUM   dictionary size (4KiB - 1536MiB; 8MiB)\n"
 "                        lc=NUM     number of literal context bits (0-4; 3)\n"
@@ -703,37 +684,28 @@
 "                        pb=NUM     number of position bits (0-4; 2)\n"
 "                        mode=MODE  compression mode (fast, normal; normal)\n"
 "                        nice=NUM   nice length of a match (2-273; 64)\n"
-"                        mf=NAME    match finder (hc3, hc4, bt2, bt3, bt4; "
-"bt4)\n"
-"                        depth=NUM  maximum search depth; 0=automatic "
-"(default)"
+"                        mf=NAME    match finder (hc3, hc4, bt2, bt3, bt4; bt4)\n"
+"                        depth=NUM  maximum search depth; 0=automatic (default)"
 msgstr ""
 "\n"
 "  --lzma1[=OPTIONEN]    LZMA1 oder LZMA2; OPTIONEN ist eine durch Kommata\n"
-"  --lzma2[=OPTIONEN]    getrennte Liste bestehend aus den folgenden "
-"Optionen\n"
+"  --lzma2[=OPTIONEN]    getrennte Liste bestehend aus den folgenden Optionen\n"
 "                        (zulässige Werte; Voreinstellung):\n"
-"                          preset=NUM Setze Optionen zurück zu "
-"Voreinstellung\n"
+"                          preset=NUM Setze Optionen zurück zu Voreinstellung\n"
 "                                     (0-9[e])\n"
-"                          dict=NUM   Wörterbuch Größe (4 KiB - 1536 MiB; 8 "
-"MiB)\n"
-"                          lc=NUM     Anzahl der Literal Kontext Bits (0-4; "
-"3)\n"
-"                          lp=NUM     Anzahl der Literal Positionsbits (0-4; "
-"0)\n"
+"                          dict=NUM   Wörterbuch Größe (4 KiB - 1536 MiB; 8 MiB)\n"
+"                          lc=NUM     Anzahl der Literal Kontext Bits (0-4; 3)\n"
+"                          lp=NUM     Anzahl der Literal Positionsbits (0-4; 0)\n"
 "                          pb=NUM     Anzahl der Positionsbits (0-4; 2)\n"
-"                          mode=MODUS Kompressionsmodus (fast, normal; "
-"normal)\n"
+"                          mode=MODUS Kompressionsmodus (fast, normal; normal)\n"
 "                          nice=NUM   Nice-Länge eines Treffers (2-273; 64)\n"
 "                          mf=NAME    Algorithmus zum Auffinden von\n"
-"                                     Übereinstimmungen (hc3, hc4, bt2, bt3, "
-"bt4;\n"
+"                                     Übereinstimmungen (hc3, hc4, bt2, bt3, bt4;\n"
 "                                     bt4)\n"
 "                          depth=NUM  Maximale Suchtiefe; 0=automatisch\n"
 "                                     (Voreinstellung)"
 
-#: src/xz/message.c:1198
+#: src/xz/message.c:1204
 msgid ""
 "\n"
 "  --x86[=OPTS]        x86 BCJ filter (32-bit and 64-bit)\n"
@@ -756,7 +728,7 @@
 "                          start=NUM  Start-Offset für Konversion\n"
 "                          (Voreinstellung=0)"
 
-#: src/xz/message.c:1210
+#: src/xz/message.c:1216
 msgid ""
 "\n"
 "  --delta[=OPTS]      Delta filter; valid OPTS (valid values; default):\n"
@@ -766,11 +738,10 @@
 "\n"
 "  --delta[=OPTIONEN]    Delta Filter; zulässige Optionen (gültige Werte;\n"
 "                        Voreinstellung):\n"
-"                          dist=NUM  Abstand zwischen den Bytes, die "
-"voneinander\n"
+"                          dist=NUM  Abstand zwischen den Bytes, die voneinander\n"
 "                                    subtrahiert werden (1-256; 1)"
 
-#: src/xz/message.c:1218
+#: src/xz/message.c:1224
 msgid ""
 "\n"
 " Other options:\n"
@@ -778,37 +749,33 @@
 "\n"
 " Andere Optionen:\n"
 
-#: src/xz/message.c:1221
+#: src/xz/message.c:1227
 msgid ""
-"  -q, --quiet         suppress warnings; specify twice to suppress errors "
-"too\n"
+"  -q, --quiet         suppress warnings; specify twice to suppress errors too\n"
 "  -v, --verbose       be verbose; specify twice for even more verbose"
 msgstr ""
 "  -q, --quiet           unterdrücke Warnungen; benutze diese Option zweimal\n"
 "                        um auch Fehlermeldungen zu unterdrücken\n"
-"  -v, --verbose         sei gesprächig; benutze diese Option zweimal um "
-"noch\n"
+"  -v, --verbose         sei gesprächig; benutze diese Option zweimal um noch\n"
 "                        gesprächiger zu sein"
 
-#: src/xz/message.c:1226
+#: src/xz/message.c:1232
 msgid "  -Q, --no-warn       make warnings not affect the exit status"
 msgstr "  -Q, --no-warn         Warnungen verändern nicht den exit status"
 
-#: src/xz/message.c:1228
-msgid ""
-"      --robot         use machine-parsable messages (useful for scripts)"
+#: src/xz/message.c:1234
+msgid "      --robot         use machine-parsable messages (useful for scripts)"
 msgstr ""
 "      --robot           benutze Maschinen-lesbare Meldungen (nützlich für\n"
 "                        Skripte)"
 
-#: src/xz/message.c:1231
+#: src/xz/message.c:1237
 msgid ""
-"      --info-memory   display the total amount of RAM and the currently "
-"active\n"
+"      --info-memory   display the total amount of RAM and the currently active\n"
 "                      memory usage limits, and exit"
 msgstr "      --info-memory     zeige Speicherlimit an und terminiere"
 
-#: src/xz/message.c:1234
+#: src/xz/message.c:1240
 msgid ""
 "  -h, --help          display the short help (lists only the basic options)\n"
 "  -H, --long-help     display this long help and exit"
@@ -817,21 +784,20 @@
 "                        Optionen)\n"
 "  -H, --long-help       zeige diese lange Hilfe an und terminiere"
 
-#: src/xz/message.c:1238
+#: src/xz/message.c:1244
 msgid ""
 "  -h, --help          display this short help and exit\n"
 "  -H, --long-help     display the long help (lists also the advanced options)"
 msgstr ""
 "  -h, --help            zeige diese kurze Hilfe an und terminiere\n"
-"  -H, --long-help       zeige die lange Hilfe an (zeigt auch "
-"fortgeschrittene\n"
+"  -H, --long-help       zeige die lange Hilfe an (zeigt auch fortgeschrittene\n"
 "                        Optionen an)"
 
-#: src/xz/message.c:1243
+#: src/xz/message.c:1249
 msgid "  -V, --version       display the version number and exit"
 msgstr "  -V, --version         zeige Versionsnummer an und terminiere"
 
-#: src/xz/message.c:1245
+#: src/xz/message.c:1251
 msgid ""
 "\n"
 "With no FILE, or when FILE is -, read standard input.\n"
@@ -844,15 +810,14 @@
 #. for this package. Please add _another line_ saying
 #. "Report translation bugs to <...>\n" with the email or WWW
 #. address for translation bugs. Thanks.
-#: src/xz/message.c:1251
+#: src/xz/message.c:1257
 #, c-format
 msgid "Report bugs to <%s> (in English or Finnish).\n"
 msgstr ""
 "Melde Bugs an <%s> (in englisch oder finnisch).\n"
-"Melde Übersetzungsfehler an <maan@systemlinux.org> (in englisch oder "
-"deutsch).\n"
+"Melde Übersetzungsfehler an <maan@systemlinux.org> (in englisch oder deutsch).\n"
 
-#: src/xz/message.c:1253
+#: src/xz/message.c:1259
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "%s Homepage: <%s>\n"
@@ -860,9 +825,7 @@
 #: src/xz/options.c:86
 #, c-format
 msgid "%s: Options must be `name=value' pairs separated with commas"
-msgstr ""
-"%s: Optionen müssen in der Form `Name=Wert` gegeben werden, getrennt durch "
-"Kommata"
+msgstr "%s: Optionen müssen in der Form `Name=Wert` gegeben werden, getrennt durch Kommata"
 
 #: src/xz/options.c:93
 #, c-format
@@ -886,17 +849,12 @@
 #: src/xz/options.c:359
 #, c-format
 msgid "The selected match finder requires at least nice=%<PRIu32>"
-msgstr ""
-"Der ausgewählte Algorithmus zum Auffinden von Übereinstimmungen braucht "
-"mindestens nice=%<PRIu32>"
+msgstr "Der ausgewählte Algorithmus zum Auffinden von Übereinstimmungen braucht mindestens nice=%<PRIu32>"
 
 #: src/xz/suffix.c:133 src/xz/suffix.c:258
 #, c-format
-msgid ""
-"%s: With --format=raw, --suffix=.SUF is required unless writing to stdout"
-msgstr ""
-"%s: Mit --format=raw ist --sufix=.SUF notwendig, falls nicht nach stdout "
-"geschrieben wird"
+msgid "%s: With --format=raw, --suffix=.SUF is required unless writing to stdout"
+msgstr "%s: Mit --format=raw ist --sufix=.SUF notwendig, falls nicht nach stdout geschrieben wird"
 
 #: src/xz/suffix.c:164
 #, c-format
diff --git a/po/fr.po b/po/fr.po
index a21aa85..5ef555d 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: xz-utils\n"
 "Report-Msgid-Bugs-To: lasse.collin@tukaani.org\n"
-"POT-Creation-Date: 2012-05-30 20:40+0200\n"
+"POT-Creation-Date: 2012-07-04 20:51+0300\n"
 "PO-Revision-Date: 2010-09-24 21;12+0200\n"
 "Last-Translator: Adrien Nader <camaradetux@gmail.com>\n"
 "Language-Team: None\n"
@@ -16,69 +16,83 @@
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n==1) ? 0 : 1;\n"
 
-#: src/xz/args.c:338
+#: src/xz/args.c:62
+#, c-format
+msgid "%s: Invalid argument to --block-list"
+msgstr ""
+
+#: src/xz/args.c:72
+#, c-format
+msgid "%s: Too many arguments to --block-list"
+msgstr ""
+
+#: src/xz/args.c:101
+msgid "0 can only be used as the last element in --block-list"
+msgstr ""
+
+#: src/xz/args.c:401
 #, c-format
 msgid "%s: Unknown file format type"
 msgstr "%s : Format de fichier inconnu"
 
-#: src/xz/args.c:361 src/xz/args.c:369
+#: src/xz/args.c:424 src/xz/args.c:432
 #, c-format
 msgid "%s: Unsupported integrity check type"
 msgstr "%s : Type de vérification d'intégrité inconnu"
 
-#: src/xz/args.c:396
+#: src/xz/args.c:464
 msgid "Only one file can be specified with `--files' or `--files0'."
 msgstr "Un seul fichier peut être spécifié avec `--files' ou `--files0'."
 
-#: src/xz/args.c:459
+#: src/xz/args.c:527
 #, c-format
 msgid "The environment variable %s contains too many arguments"
 msgstr "La variable d'environnement %s contient trop d'arguments"
 
-#: src/xz/coder.c:105
+#: src/xz/coder.c:106
 msgid "Maximum number of filters is four"
 msgstr "Le nombre maximal de filtres est quatre"
 
-#: src/xz/coder.c:118
+#: src/xz/coder.c:119
 msgid "Memory usage limit is too low for the given filter setup."
 msgstr "La limite d'utilisation mémoire est trop basse pour la configuration de filtres donnée."
 
-#: src/xz/coder.c:148
+#: src/xz/coder.c:149
 msgid "Using a preset in raw mode is discouraged."
 msgstr "Utiliser un préréglage en mode `raw' est déconseillé."
 
-#: src/xz/coder.c:150
+#: src/xz/coder.c:151
 msgid "The exact options of the presets may vary between software versions."
 msgstr "Le détail des préréglages peut varier entre différentes versions du logiciel."
 
-#: src/xz/coder.c:176
+#: src/xz/coder.c:177
 msgid "The .lzma format supports only the LZMA1 filter"
 msgstr "Le format .lzma ne prend en charge que le filtre LZMA1"
 
-#: src/xz/coder.c:184
+#: src/xz/coder.c:185
 msgid "LZMA1 cannot be used with the .xz format"
 msgstr "Le filtre LZMA1 ne peut être utilisé avec le format .xz"
 
-#: src/xz/coder.c:203
+#: src/xz/coder.c:204
 #, c-format
 msgid "Using up to %<PRIu32> threads."
 msgstr "Jusqu'à %<PRIu32> threads seront utilisés."
 
-#: src/xz/coder.c:216
+#: src/xz/coder.c:217
 msgid "Unsupported filter chain or filter options"
 msgstr "Enchaînement ou options de filtres non pris en charge"
 
-#: src/xz/coder.c:224
+#: src/xz/coder.c:225
 #, c-format
 msgid "Decompression will need %s MiB of memory."
 msgstr "La décompression nécessitera %s MiB de mémoire."
 
-#: src/xz/coder.c:259
+#: src/xz/coder.c:260
 #, c-format
 msgid "Adjusted the number of threads from %s to %s to not exceed the memory usage limit of %s MiB"
 msgstr "Nombre de threads réduit de %s à %s pour ne pas dépasser la limite d'utilisation mémoire de %s MiB"
 
-#: src/xz/coder.c:313
+#: src/xz/coder.c:314
 #, c-format
 msgid "Adjusted LZMA%c dictionary size from %s MiB to %s MiB to not exceed the memory usage limit of %s MiB"
 msgstr "Taille du dictionnaire LZMA%c réduite de %s MiB à %s MiB pour ne pas dépasser la limite d'utilisation mémoire de %s MiB"
@@ -600,7 +614,7 @@
 "                      de temps processeur sans affecter les besoins mémoire du\n"
 "                      décompresseur"
 
-#: src/xz/message.c:1157
+#: src/xz/message.c:1158
 msgid ""
 "      --block-size=SIZE\n"
 "                      when compressing to the .xz format, start a new block\n"
@@ -610,7 +624,18 @@
 "                      pour une compression au format .xz, entamer un nouveau\n"
 "                      bloc après SIZE octets d'entrée ; 0=désactivé (par défaut)"
 
-#: src/xz/message.c:1161
+#: src/xz/message.c:1163
+#, fuzzy
+msgid ""
+"      --block-list=SIZES\n"
+"                      when compressing to the .xz format, start a new block\n"
+"                      after the given intervals of uncompressed data"
+msgstr ""
+"      --block-size=SIZE\n"
+"                      pour une compression au format .xz, entamer un nouveau\n"
+"                      bloc après SIZE octets d'entrée ; 0=désactivé (par défaut)"
+
+#: src/xz/message.c:1167
 #, no-c-format
 msgid ""
 "      --memlimit-compress=LIMIT\n"
@@ -626,7 +651,7 @@
 "                      décompression ou les deux ; LIMIT est en octets, % de\n"
 "                      RAM, ou 0 pour les valeurs par défaut"
 
-#: src/xz/message.c:1168
+#: src/xz/message.c:1174
 msgid ""
 "      --no-adjust     if compression settings exceed the memory usage limit,\n"
 "                      give an error instead of adjusting the settings downwards"
@@ -635,7 +660,7 @@
 "                      d'utilisation mémoire, renvoyer une erreur plutôt que de\n"
 "                      diminuer les réglages"
 
-#: src/xz/message.c:1174
+#: src/xz/message.c:1180
 msgid ""
 "\n"
 " Custom filter chain for compression (alternative for using presets):"
@@ -643,7 +668,7 @@
 "\n"
 " Enchaînement de filtres de compression personnalisé (au lieu des préréglages) :"
 
-#: src/xz/message.c:1183
+#: src/xz/message.c:1189
 msgid ""
 "\n"
 "  --lzma1[=OPTS]      LZMA1 or LZMA2; OPTS is a comma-separated list of zero or\n"
@@ -672,7 +697,7 @@
 "                        depth=NUM  profondeur de recherche maximale ;\n"
 "                                      0=automatique (par défaut)"
 
-#: src/xz/message.c:1198
+#: src/xz/message.c:1204
 msgid ""
 "\n"
 "  --x86[=OPTS]        x86 BCJ filter (32-bit and 64-bit)\n"
@@ -694,7 +719,7 @@
 "                      OPTS valides pour tous les filtres BCJ :\n"
 "                        start=NUM  start offset for conversions (default=0)"
 
-#: src/xz/message.c:1210
+#: src/xz/message.c:1216
 msgid ""
 "\n"
 "  --delta[=OPTS]      Delta filter; valid OPTS (valid values; default):\n"
@@ -706,7 +731,7 @@
 "                        dist=NUM   distance entre les octets soustraits\n"
 "                                   les uns aux autres (1-256 ; 1)"
 
-#: src/xz/message.c:1218
+#: src/xz/message.c:1224
 msgid ""
 "\n"
 " Other options:\n"
@@ -714,7 +739,7 @@
 "\n"
 " Autres options :\n"
 
-#: src/xz/message.c:1221
+#: src/xz/message.c:1227
 msgid ""
 "  -q, --quiet         suppress warnings; specify twice to suppress errors too\n"
 "  -v, --verbose       be verbose; specify twice for even more verbose"
@@ -723,17 +748,17 @@
 "                      aussi supprimer les erreur\n"
 "  -v, --verbose       être bavard ; spécifier deux fois pour l'être davantage"
 
-#: src/xz/message.c:1226
+#: src/xz/message.c:1232
 msgid "  -Q, --no-warn       make warnings not affect the exit status"
 msgstr "  -Q, --no-warn       les avertissements ne modifient pas le code de sortie"
 
-#: src/xz/message.c:1228
+#: src/xz/message.c:1234
 msgid "      --robot         use machine-parsable messages (useful for scripts)"
 msgstr ""
 "      --robot         utiliser des messages lisibles par un programme\n"
 "                      (utile pour les scripts)"
 
-#: src/xz/message.c:1231
+#: src/xz/message.c:1237
 msgid ""
 "      --info-memory   display the total amount of RAM and the currently active\n"
 "                      memory usage limits, and exit"
@@ -741,7 +766,7 @@
 "      --info-memory   affiche la quantité totale de RAM et la limite actuelle\n"
 "                      en mémoire puis quitte"
 
-#: src/xz/message.c:1234
+#: src/xz/message.c:1240
 msgid ""
 "  -h, --help          display the short help (lists only the basic options)\n"
 "  -H, --long-help     display this long help and exit"
@@ -749,7 +774,7 @@
 "  -h, --help          affiche l'aide courte (ne liste que les options de base)\n"
 "  -H, --long-help     affiche l'aide longue (ceci) puis quitte"
 
-#: src/xz/message.c:1238
+#: src/xz/message.c:1244
 msgid ""
 "  -h, --help          display this short help and exit\n"
 "  -H, --long-help     display the long help (lists also the advanced options)"
@@ -757,11 +782,11 @@
 "  -h, --help          affiche l'aide courte (ceci) puis quitte\n"
 "  -H, --long-help     affiche l'aide longue (liste aussi les options avancées)"
 
-#: src/xz/message.c:1243
+#: src/xz/message.c:1249
 msgid "  -V, --version       display the version number and exit"
 msgstr "  -V, --version       affiche le numéro de version puis quitte"
 
-#: src/xz/message.c:1245
+#: src/xz/message.c:1251
 msgid ""
 "\n"
 "With no FILE, or when FILE is -, read standard input.\n"
@@ -773,14 +798,14 @@
 #. for this package. Please add _another line_ saying
 #. "Report translation bugs to <...>\n" with the email or WWW
 #. address for translation bugs. Thanks.
-#: src/xz/message.c:1251
+#: src/xz/message.c:1257
 #, c-format
 msgid "Report bugs to <%s> (in English or Finnish).\n"
 msgstr ""
 "Signaler les bogues à <%s> (en anglais ou en finlandais).\n"
 "Signaler les bogues de traduction à <camaradetux@gmail.com>.\n"
 
-#: src/xz/message.c:1253
+#: src/xz/message.c:1259
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "%s page du projet : <%s>\n"
diff --git a/po/it.po b/po/it.po
index b9986f3..42e45d1 100644
--- a/po/it.po
+++ b/po/it.po
@@ -7,8 +7,8 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: xz-utils\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-05-27 11:59+0200\n"
+"Report-Msgid-Bugs-To: lasse.collin@tukaani.org\n"
+"POT-Creation-Date: 2012-07-04 20:51+0300\n"
 "PO-Revision-Date: 2011-05-27 11:59+0200\n"
 "Last-Translator: Milo Casagrande <milo@ubuntu.com>\n"
 "Language-Team: Italian <tp@lists.linux.it>\n"
@@ -20,86 +20,86 @@
 "X-Generator: Launchpad (build Unknown)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: ../src/xz/args.c:338
+#: src/xz/args.c:62
+#, c-format
+msgid "%s: Invalid argument to --block-list"
+msgstr ""
+
+#: src/xz/args.c:72
+#, c-format
+msgid "%s: Too many arguments to --block-list"
+msgstr ""
+
+#: src/xz/args.c:101
+msgid "0 can only be used as the last element in --block-list"
+msgstr ""
+
+#: src/xz/args.c:401
 #, c-format
 msgid "%s: Unknown file format type"
 msgstr "%s: tipo di formato del file sconosciuto"
 
-#: ../src/xz/args.c:361 ../src/xz/args.c:369
+#: src/xz/args.c:424 src/xz/args.c:432
 #, c-format
 msgid "%s: Unsupported integrity check type"
 msgstr "%s: tipo di controllo integrità non supportato"
 
-#: ../src/xz/args.c:396
+#: src/xz/args.c:464
 msgid "Only one file can be specified with `--files' or `--files0'."
 msgstr "Solo un file può essere specificato con \"--files\" o \"--files0\"."
 
-#: ../src/xz/args.c:459
+#: src/xz/args.c:527
 #, c-format
 msgid "The environment variable %s contains too many arguments"
 msgstr "La variabile d'ambiente %s contiene troppi argomenti"
 
-#: ../src/xz/coder.c:105
+#: src/xz/coder.c:106
 msgid "Maximum number of filters is four"
 msgstr "Il numero massimo di filtri è quattro"
 
-#: ../src/xz/coder.c:118
+#: src/xz/coder.c:119
 msgid "Memory usage limit is too low for the given filter setup."
-msgstr ""
-"Il limite dell'uso della memoria è troppo basso per l'impostazione del "
-"filtro dato."
+msgstr "Il limite dell'uso della memoria è troppo basso per l'impostazione del filtro dato."
 
-#. The message is shown only if warnings are allowed
-#. but the exit status isn't changed.
-#: ../src/xz/coder.c:148
+#: src/xz/coder.c:149
 msgid "Using a preset in raw mode is discouraged."
 msgstr "Non è consigliato usare un preset nella modalità raw."
 
-#: ../src/xz/coder.c:150
+#: src/xz/coder.c:151
 msgid "The exact options of the presets may vary between software versions."
-msgstr ""
-"Le opzioni esatte per i preset possono variare tra le versioni del software."
+msgstr "Le opzioni esatte per i preset possono variare tra le versioni del software."
 
-#: ../src/xz/coder.c:176
+#: src/xz/coder.c:177
 msgid "The .lzma format supports only the LZMA1 filter"
 msgstr "Il formato .lzma supporta solo il filtro LZMA1"
 
-#: ../src/xz/coder.c:184
+#: src/xz/coder.c:185
 msgid "LZMA1 cannot be used with the .xz format"
 msgstr "LZMA1 non può essere usato con il formato .xz"
 
-#: ../src/xz/coder.c:203
+#: src/xz/coder.c:204
 #, c-format
 msgid "Using up to %<PRIu32> threads."
 msgstr "Vengono usati circa %<PRIu32> thread."
 
-#: ../src/xz/coder.c:216
+#: src/xz/coder.c:217
 msgid "Unsupported filter chain or filter options"
 msgstr "Catena di filtri od opzioni del filtro non supportata"
 
-#: ../src/xz/coder.c:224
+#: src/xz/coder.c:225
 #, c-format
 msgid "Decompression will need %s MiB of memory."
 msgstr "L'estrazione necessita di %s MiB di memoria."
 
-#: ../src/xz/coder.c:259
+#: src/xz/coder.c:260
 #, c-format
-msgid ""
-"Adjusted the number of threads from %s to %s to not exceed the memory usage "
-"limit of %s MiB"
-msgstr ""
-"Regolato il numero di thread da %s a %s per non eccedere il limite di "
-"utilizzo della memoria di %s MiB"
+msgid "Adjusted the number of threads from %s to %s to not exceed the memory usage limit of %s MiB"
+msgstr "Regolato il numero di thread da %s a %s per non eccedere il limite di utilizzo della memoria di %s MiB"
 
-#. Tell the user that we decreased the dictionary size.
-#: ../src/xz/coder.c:313
+#: src/xz/coder.c:314
 #, c-format
-msgid ""
-"Adjusted LZMA%c dictionary size from %s MiB to %s MiB to not exceed the "
-"memory usage limit of %s MiB"
-msgstr ""
-"Regolata la dimensione del dizionario LZMA%c da %s MiB a %s MiB per non "
-"superare il limite dell'uso della memoria di %s MiB"
+msgid "Adjusted LZMA%c dictionary size from %s MiB to %s MiB to not exceed the memory usage limit of %s MiB"
+msgstr "Regolata la dimensione del dizionario LZMA%c da %s MiB a %s MiB per non superare il limite dell'uso della memoria di %s MiB"
 
 #. TRANSLATORS: When compression or decompression finishes,
 #. and xz is going to remove the source file, xz first checks
@@ -111,128 +111,118 @@
 #. it is possible that the user has put a new file in place
 #. of the original file, and in that case it obviously
 #. shouldn't be removed.
-#: ../src/xz/file_io.c:136
+#: src/xz/file_io.c:136
 #, c-format
 msgid "%s: File seems to have been moved, not removing"
 msgstr "%s: sembra che il file sia stato spostato, non viene rimosso"
 
-#: ../src/xz/file_io.c:143 ../src/xz/file_io.c:635
+#: src/xz/file_io.c:143 src/xz/file_io.c:635
 #, c-format
 msgid "%s: Cannot remove: %s"
 msgstr "%s: impossibile rimuovere: %s"
 
-#: ../src/xz/file_io.c:168
+#: src/xz/file_io.c:168
 #, c-format
 msgid "%s: Cannot set the file owner: %s"
 msgstr "%s: impossibile impostare il proprietario del file: %s"
 
-#: ../src/xz/file_io.c:174
+#: src/xz/file_io.c:174
 #, c-format
 msgid "%s: Cannot set the file group: %s"
 msgstr "%s: impossibile impostare il gruppo del file: %s"
 
-#: ../src/xz/file_io.c:193
+#: src/xz/file_io.c:193
 #, c-format
 msgid "%s: Cannot set the file permissions: %s"
 msgstr "%s: impossibile impostare i permessi del file: %s"
 
-#: ../src/xz/file_io.c:340 ../src/xz/file_io.c:423
+#: src/xz/file_io.c:340 src/xz/file_io.c:423
 #, c-format
 msgid "%s: Is a symbolic link, skipping"
 msgstr "%s: è un collegamento simbolico, viene saltato"
 
-#: ../src/xz/file_io.c:468
+#: src/xz/file_io.c:468
 #, c-format
 msgid "%s: Is a directory, skipping"
 msgstr "%s: è una directory, viene saltata"
 
-#: ../src/xz/file_io.c:474
+#: src/xz/file_io.c:474
 #, c-format
 msgid "%s: Not a regular file, skipping"
 msgstr "%s: non è un file regolare, viene saltato"
 
-#. gzip rejects setuid and setgid files even
-#. when --force was used. bzip2 doesn't check
-#. for them, but calls fchown() after fchmod(),
-#. and many systems automatically drop setuid
-#. and setgid bits there.
-#.
-#. We accept setuid and setgid files if
-#. --force was used. We drop these bits
-#. explicitly in io_copy_attr().
-#: ../src/xz/file_io.c:491
+#: src/xz/file_io.c:491
 #, c-format
 msgid "%s: File has setuid or setgid bit set, skipping"
 msgstr "%s: il file ha il bit setuid o setgid impostato, viene saltato"
 
-#: ../src/xz/file_io.c:498
+#: src/xz/file_io.c:498
 #, c-format
 msgid "%s: File has sticky bit set, skipping"
 msgstr "%s: il file ha lo sticky bit impostato, viene saltato"
 
-#: ../src/xz/file_io.c:505
+#: src/xz/file_io.c:505
 #, c-format
 msgid "%s: Input file has more than one hard link, skipping"
 msgstr "%s: il file di input ha più di un collegamento fisico, viene saltato"
 
-#: ../src/xz/file_io.c:761
+#: src/xz/file_io.c:761
 #, c-format
 msgid "Error restoring the O_APPEND flag to standard output: %s"
 msgstr "Errore nel ripristinare la flag O_APPEND sullo standard output: %s"
 
-#: ../src/xz/file_io.c:773
+#: src/xz/file_io.c:773
 #, c-format
 msgid "%s: Closing the file failed: %s"
 msgstr "%s: chiusura del file non riuscita: %s"
 
-#: ../src/xz/file_io.c:809 ../src/xz/file_io.c:1008
+#: src/xz/file_io.c:809 src/xz/file_io.c:1008
 #, c-format
 msgid "%s: Seeking failed when trying to create a sparse file: %s"
-msgstr ""
-"%s: posizionamento non riuscito nel tentativo di creare un file sparso: %s"
+msgstr "%s: posizionamento non riuscito nel tentativo di creare un file sparso: %s"
 
-#: ../src/xz/file_io.c:883
+#: src/xz/file_io.c:883
 #, c-format
 msgid "%s: Read error: %s"
 msgstr "%s: errore di lettura: %s"
 
-#: ../src/xz/file_io.c:906
+#: src/xz/file_io.c:906
 #, c-format
 msgid "%s: Error seeking the file: %s"
 msgstr "%s: errore nel cercare il file: %s"
 
-#: ../src/xz/file_io.c:916
+#: src/xz/file_io.c:916
 #, c-format
 msgid "%s: Unexpected end of file"
 msgstr "%s: fine del file inaspettata"
 
-#: ../src/xz/file_io.c:966
+#: src/xz/file_io.c:966
 #, c-format
 msgid "%s: Write error: %s"
 msgstr "%s: errore di scrittura: %s"
 
-#: ../src/xz/hardware.c:101
+#: src/xz/hardware.c:101
 msgid "Disabled"
 msgstr "Disabilitato"
 
 #. TRANSLATORS: Test with "xz --info-memory" to see if
 #. the alignment looks nice.
-#: ../src/xz/hardware.c:120
+#: src/xz/hardware.c:120
 msgid "Total amount of physical memory (RAM): "
 msgstr "Quantità totale di memoria fisica (RAM):     "
 
-#: ../src/xz/hardware.c:122
+#: src/xz/hardware.c:122
 msgid "Memory usage limit for compression:    "
 msgstr "Limite utilizzo memoria per la compressione: "
 
-#: ../src/xz/hardware.c:124
+#: src/xz/hardware.c:124
 msgid "Memory usage limit for decompression:  "
 msgstr "Limite utilizzo memoria per l'estrazione:    "
 
 #. TRANSLATORS: Indicates that there is no integrity check.
 #. This string is used in tables, so the width must not
 #. exceed ten columns with a fixed-width font.
-#: ../src/xz/list.c:62
+#: src/xz/list.c:65
 msgid "None"
 msgstr "Nessuno"
 
@@ -241,60 +231,60 @@
 #. strings are used in tables, so the width must not exceed ten
 #. columns with a fixed-width font. It's OK to omit the dash if
 #. you need space for one extra letter, but don't use spaces.
-#: ../src/xz/list.c:69
+#: src/xz/list.c:72
 msgid "Unknown-2"
 msgstr "Sconosc2"
 
-#: ../src/xz/list.c:70
+#: src/xz/list.c:73
 msgid "Unknown-3"
 msgstr "Sconosc3"
 
-#: ../src/xz/list.c:72
+#: src/xz/list.c:75
 msgid "Unknown-5"
 msgstr "Sconosc5"
 
-#: ../src/xz/list.c:73
+#: src/xz/list.c:76
 msgid "Unknown-6"
 msgstr "Sconosc6"
 
-#: ../src/xz/list.c:74
+#: src/xz/list.c:77
 msgid "Unknown-7"
 msgstr "Sconosc7"
 
-#: ../src/xz/list.c:75
+#: src/xz/list.c:78
 msgid "Unknown-8"
 msgstr "Sconosc8"
 
-#: ../src/xz/list.c:76
+#: src/xz/list.c:79
 msgid "Unknown-9"
 msgstr "Sconosc9"
 
-#: ../src/xz/list.c:78
+#: src/xz/list.c:81
 msgid "Unknown-11"
 msgstr "Sconosc11"
 
-#: ../src/xz/list.c:79
+#: src/xz/list.c:82
 msgid "Unknown-12"
 msgstr "Sconosc12"
 
-#: ../src/xz/list.c:80
+#: src/xz/list.c:83
 msgid "Unknown-13"
 msgstr "Sconosc13"
 
-#: ../src/xz/list.c:81
+#: src/xz/list.c:84
 msgid "Unknown-14"
 msgstr "Sconosc14"
 
-#: ../src/xz/list.c:82
+#: src/xz/list.c:85
 msgid "Unknown-15"
 msgstr "Sconosc15"
 
-#: ../src/xz/list.c:126
+#: src/xz/list.c:153
 #, c-format
 msgid "%s: File is empty"
 msgstr "%s: il file è vuoto"
 
-#: ../src/xz/list.c:131
+#: src/xz/list.c:158
 #, c-format
 msgid "%s: Too small to be a valid .xz file"
 msgstr "%s: troppo piccolo per essere un file .xz valido"
@@ -303,72 +293,66 @@
 #. to Ratio, the columns are right aligned. Check and Filename
 #. are left aligned. If you need longer words, it's OK to
 #. use two lines here. Test with "xz -l foo.xz".
-#: ../src/xz/list.c:612
+#: src/xz/list.c:645
 msgid "Strms  Blocks   Compressed Uncompressed  Ratio  Check   Filename"
 msgstr " Strm  Blocc.    Compresso     Estratto  Rapp.  Contr   Nome file"
 
-#: ../src/xz/list.c:652
+#: src/xz/list.c:685
 #, c-format
 msgid "  Streams:            %s\n"
 msgstr "  Stream:               %s\n"
 
-#: ../src/xz/list.c:654
+#: src/xz/list.c:687
 #, c-format
 msgid "  Blocks:             %s\n"
 msgstr "  Blocchi:              %s\n"
 
-#: ../src/xz/list.c:656
+#: src/xz/list.c:689
 #, c-format
 msgid "  Compressed size:    %s\n"
 msgstr "  Dim. compresso:       %s\n"
 
-#: ../src/xz/list.c:659
+#: src/xz/list.c:692
 #, c-format
 msgid "  Uncompressed size:  %s\n"
 msgstr "  Dim. estratto:        %s\n"
 
-#: ../src/xz/list.c:662
+#: src/xz/list.c:695
 #, c-format
 msgid "  Ratio:              %s\n"
 msgstr "  Rapporto:             %s\n"
 
-#: ../src/xz/list.c:664
+#: src/xz/list.c:697
 #, c-format
 msgid "  Check:              %s\n"
 msgstr "  Controllo:            %s\n"
 
-#: ../src/xz/list.c:665
+#: src/xz/list.c:698
 #, c-format
 msgid "  Stream padding:     %s\n"
 msgstr "  Padding dello stream: %s\n"
 
-#. Print information about the Streams.
-#.
 #. TRANSLATORS: The second line is column headings. All except
 #. Check are right aligned; Check is left aligned. Test with
 #. "xz -lv foo.xz".
-#: ../src/xz/list.c:693
+#: src/xz/list.c:726
 msgid ""
 "  Streams:\n"
-"    Stream    Blocks      CompOffset    UncompOffset        CompSize      "
-"UncompSize  Ratio  Check      Padding"
+"    Stream    Blocks      CompOffset    UncompOffset        CompSize      UncompSize  Ratio  Check      Padding"
 msgstr ""
 "Stream:\n"
-"    Stream    Blocc.    Offset comp.    Offset estr.      Dim. comp.   Dim. "
-"estratto  Rapp.  Contr      Padding"
+"    Stream    Blocc.    Offset comp.    Offset estr.      Dim. comp.   Dim. estratto  Rapp.  Contr      Padding"
 
 #. TRANSLATORS: The second line is column headings. All
 #. except Check are right aligned; Check is left aligned.
-#: ../src/xz/list.c:748
+#: src/xz/list.c:781
 #, c-format
 msgid ""
 "  Blocks:\n"
-"    Stream     Block      CompOffset    UncompOffset       TotalSize      "
-"UncompSize  Ratio  Check"
+"    Stream     Block      CompOffset    UncompOffset       TotalSize      UncompSize  Ratio  Check"
 msgstr ""
 "  Blocchi:\n"
-"    Stream    Blocc.    Offset comp. Offset estratto       Dim. tot.   Dim. "
-"estratto  Rapp.  Contr"
+"    Stream    Blocc.    Offset comp. Offset estratto       Dim. tot.   Dim. estratto  Rapp.  Contr"
 
 #. TRANSLATORS: These are additional column headings
 #. for the most verbose listing mode. CheckVal
@@ -377,160 +361,149 @@
 #. are right aligned. %*s is replaced with 0-120
 #. spaces to make the CheckVal column wide enough.
 #. Test with "xz -lvv foo.xz".
-#: ../src/xz/list.c:760
+#: src/xz/list.c:793
 #, c-format
 msgid "      CheckVal %*s Header  Flags        CompSize    MemUsage  Filters"
 msgstr "      Val.cont %*s Header  Flag       Dim.compr.    Uso mem.  Filtri"
 
-#: ../src/xz/list.c:838 ../src/xz/list.c:1007
+#: src/xz/list.c:871 src/xz/list.c:1046
 #, c-format
 msgid "  Memory needed:      %s MiB\n"
 msgstr "  Memoria necessaria:   %s MiB\n"
 
-#: ../src/xz/list.c:840 ../src/xz/list.c:1009
+#: src/xz/list.c:873 src/xz/list.c:1048
 #, c-format
 msgid "  Sizes in headers:   %s\n"
 msgstr "  Dim. negli header:    %s\n"
 
-#: ../src/xz/list.c:841 ../src/xz/list.c:1010
+#: src/xz/list.c:874 src/xz/list.c:1049
 msgid "Yes"
 msgstr "Sì"
 
-#: ../src/xz/list.c:841 ../src/xz/list.c:1010
+#: src/xz/list.c:874 src/xz/list.c:1049
 msgid "No"
 msgstr "No"
 
-#. Since we print totals only when there are at least two files,
-#. the English message will always use "%s files". But some other
-#. languages need different forms for different plurals so we
-#. have to translate this with ngettext().
-#.
+#: src/xz/list.c:875 src/xz/list.c:1050
+#, c-format
+msgid "  Minimum XZ Utils version: %s\n"
+msgstr ""
+
 #. TRANSLATORS: %s is an integer. Only the plural form of this
 #. message is used (e.g. "2 files"). Test with "xz -l foo.xz bar.xz".
-#: ../src/xz/list.c:986
+#: src/xz/list.c:1025
 #, c-format
 msgid "%s file\n"
 msgid_plural "%s files\n"
 msgstr[0] "%s file\n"
 msgstr[1] "%s file\n"
 
-#: ../src/xz/list.c:999
+#: src/xz/list.c:1038
 msgid "Totals:"
 msgstr "Totali:"
 
-#: ../src/xz/list.c:1000
+#: src/xz/list.c:1039
 #, c-format
 msgid "  Number of files:    %s\n"
 msgstr "  Numero di file:       %s\n"
 
-#: ../src/xz/list.c:1072
+#: src/xz/list.c:1114
 msgid "--list works only on .xz files (--format=xz or --format=auto)"
 msgstr "--list funziona solamente con file .xz (--format=xz o --format=auto)"
 
-#: ../src/xz/list.c:1078
+#: src/xz/list.c:1120
 msgid "--list does not support reading from standard input"
 msgstr "--list non è in grado di leggere dallo standard input"
 
-#: ../src/xz/main.c:89
+#: src/xz/main.c:89
 #, c-format
 msgid "%s: Error reading filenames: %s"
 msgstr "%s: errore nel leggere i nomi dei file: %s"
 
-#: ../src/xz/main.c:96
+#: src/xz/main.c:96
 #, c-format
 msgid "%s: Unexpected end of input when reading filenames"
 msgstr "%s: fine dell'input durante la lettura dei nomi dei file non attesa"
 
-#. A null character was found when using --files,
-#. which expects plain text input separated with
-#. newlines.
-#: ../src/xz/main.c:120
+#: src/xz/main.c:120
 #, c-format
-msgid ""
-"%s: Null character found when reading filenames; maybe you meant to use `--"
-"files0' instead of `--files'?"
-msgstr ""
-"%s: nessun carattere trovato durante la lettura dei nomi dei file; forse si "
-"intendeva usare \"--files0\" invece di \"--files\"?"
+msgid "%s: Null character found when reading filenames; maybe you meant to use `--files0' instead of `--files'?"
+msgstr "%s: nessun carattere trovato durante la lettura dei nomi dei file; forse si intendeva usare \"--files0\" invece di \"--files\"?"
 
-#: ../src/xz/main.c:174
+#: src/xz/main.c:174
 msgid "Compression and decompression with --robot are not supported yet."
 msgstr "La compressione e l'estrazione con --robot non sono ancora supportate."
 
-#: ../src/xz/main.c:231
-msgid ""
-"Cannot read data from standard input when reading filenames from standard "
-"input"
-msgstr ""
-"Impossibile leggere i dati dallo standard input durante la lettura dei nomi "
-"dei file dallo standard input"
+#: src/xz/main.c:231
+msgid "Cannot read data from standard input when reading filenames from standard input"
+msgstr "Impossibile leggere i dati dallo standard input durante la lettura dei nomi dei file dallo standard input"
 
 #. TRANSLATORS: This is the program name in the beginning
 #. of the line in messages. Usually it becomes "xz: ".
 #. This is a translatable string because French needs
 #. a space before a colon.
-#: ../src/xz/message.c:733
+#: src/xz/message.c:733
 #, c-format
 msgid "%s: "
 msgstr "%s: "
 
-#: ../src/xz/message.c:796 ../src/xz/message.c:846
+#: src/xz/message.c:796 src/xz/message.c:846
 msgid "Internal error (bug)"
 msgstr "Errore interno (bug)"
 
-#: ../src/xz/message.c:803
+#: src/xz/message.c:803
 msgid "Cannot establish signal handlers"
 msgstr "Impossibile stabilire i gestori dei segnali"
 
-#: ../src/xz/message.c:812
+#: src/xz/message.c:812
 msgid "No integrity check; not verifying file integrity"
-msgstr ""
-"Nessun controllo d'integrità; l'integrità del file non viene verificata"
+msgstr "Nessun controllo d'integrità; l'integrità del file non viene verificata"
 
-#: ../src/xz/message.c:815
+#: src/xz/message.c:815
 msgid "Unsupported type of integrity check; not verifying file integrity"
-msgstr ""
-"Tipo di controllo di integrità non supportato; l'integrità del file non "
-"viene verificata"
+msgstr "Tipo di controllo di integrità non supportato; l'integrità del file non viene verificata"
 
-#: ../src/xz/message.c:822
+#: src/xz/message.c:822
 msgid "Memory usage limit reached"
 msgstr "Limite di utilizzo della memoria raggiunto"
 
-#: ../src/xz/message.c:825
+#: src/xz/message.c:825
 msgid "File format not recognized"
 msgstr "Formato di file non riconosciuto"
 
-#: ../src/xz/message.c:828
+#: src/xz/message.c:828
 msgid "Unsupported options"
 msgstr "Opzioni non supportate"
 
-#: ../src/xz/message.c:831
+#: src/xz/message.c:831
 msgid "Compressed data is corrupt"
 msgstr "I dati compressi sono danneggiati"
 
-#: ../src/xz/message.c:834
+#: src/xz/message.c:834
 msgid "Unexpected end of input"
 msgstr "Fine dell'input non attesa"
 
-#: ../src/xz/message.c:885
+#: src/xz/message.c:867
+#, fuzzy, c-format
+msgid "%s MiB of memory is required. The limiter is disabled."
+msgstr "%s MiB di memoria sono richiesti. Il limite è %s."
+
+#: src/xz/message.c:895
 #, c-format
 msgid "%s MiB of memory is required. The limit is %s."
 msgstr "%s MiB di memoria sono richiesti. Il limite è %s."
 
-#: ../src/xz/message.c:1052
+#: src/xz/message.c:1062
 #, c-format
 msgid "%s: Filter chain: %s\n"
 msgstr "%s: catena di filtri: %s\n"
 
-#. Print this with V_WARNING instead of V_ERROR to prevent it from
-#. showing up when --quiet has been specified.
-#: ../src/xz/message.c:1062
+#: src/xz/message.c:1072
 #, c-format
 msgid "Try `%s --help' for more information."
 msgstr "Provare \"%s --help\" per maggiori informazioni."
 
-#: ../src/xz/message.c:1088
+#: src/xz/message.c:1098
 #, c-format
 msgid ""
 "Usage: %s [OPTION]... [FILE]...\n"
@@ -541,18 +514,15 @@
 "Comprime o estrae i FILE nel formato .xz.\n"
 "\n"
 
-#: ../src/xz/message.c:1095
-msgid ""
-"Mandatory arguments to long options are mandatory for short options too.\n"
-msgstr ""
-"Gli argomenti obbligatori per le opzioni lunghe lo sono anche per quelle "
-"brevi.\n"
+#: src/xz/message.c:1105
+msgid "Mandatory arguments to long options are mandatory for short options too.\n"
+msgstr "Gli argomenti obbligatori per le opzioni lunghe lo sono anche per quelle brevi.\n"
 
-#: ../src/xz/message.c:1099
+#: src/xz/message.c:1109
 msgid " Operation mode:\n"
 msgstr " Modalità di operazione:\n"
 
-#: ../src/xz/message.c:1102
+#: src/xz/message.c:1112
 msgid ""
 "  -z, --compress      force compression\n"
 "  -d, --decompress    force decompression\n"
@@ -564,7 +534,7 @@
 "  -t, --test          Verifica l'integrità dei file compressi\n"
 "  -l, --list          Elenca informazioni sui file .xz"
 
-#: ../src/xz/message.c:1108
+#: src/xz/message.c:1118
 msgid ""
 "\n"
 " Operation modifiers:\n"
@@ -572,20 +542,18 @@
 "\n"
 " Modificatori di operazioni:\n"
 
-#: ../src/xz/message.c:1111
+#: src/xz/message.c:1121
 msgid ""
 "  -k, --keep          keep (don't delete) input files\n"
 "  -f, --force         force overwrite of output file and (de)compress links\n"
 "  -c, --stdout        write to standard output and don't delete input files"
 msgstr ""
 "  -k, --keep          Mantiene (non elimina) i file di input\n"
-"  -f, --force         Forza la sovrascrittura dell'output e comprime/estrae "
-"i\n"
+"  -f, --force         Forza la sovrascrittura dell'output e comprime/estrae i\n"
 "                      collegamenti\n"
-"  -c, --stdout        Scrive sullo standard output e non elimina i file di "
-"input"
+"  -c, --stdout        Scrive sullo standard output e non elimina i file di input"
 
-#: ../src/xz/message.c:1117
+#: src/xz/message.c:1127
 msgid ""
 "      --single-stream decompress only the first stream, and silently\n"
 "                      ignore possible remaining input data"
@@ -593,27 +561,24 @@
 "      --single-stream Decomprime solamente il primo stream e ignora\n"
 "                      silenziosamente i restanti dati di input"
 
-#: ../src/xz/message.c:1120
+#: src/xz/message.c:1130
 msgid ""
 "      --no-sparse     do not create sparse files when decompressing\n"
 "  -S, --suffix=.SUF   use the suffix `.SUF' on compressed files\n"
 "      --files[=FILE]  read filenames to process from FILE; if FILE is\n"
 "                      omitted, filenames are read from the standard input;\n"
-"                      filenames must be terminated with the newline "
-"character\n"
+"                      filenames must be terminated with the newline character\n"
 "      --files0[=FILE] like --files but use the null character as terminator"
 msgstr ""
 "      --no-sparse     Non crea file sparsi durante l'estrazione\n"
 "  -S, --suffix=.SUF   Usa il suffisso \".SUF\" sui file compressi\n"
 "      --files=[FILE]  Legge i nomi dei file da elaborare da FILE; se FILE è\n"
-"                      omesso, i nomi dei file sono letti dallo standard "
-"input;\n"
-"                      i nomi dei file devono essere terminati con un "
-"carattere\n"
+"                      omesso, i nomi dei file sono letti dallo standard input;\n"
+"                      i nomi dei file devono essere terminati con un carattere\n"
 "                      di newline\n"
 "      --files0=[FILE] Come --files ma usa il carattere null come terminatore"
 
-#: ../src/xz/message.c:1129
+#: src/xz/message.c:1139
 msgid ""
 "\n"
 " Basic file format and compression options:\n"
@@ -621,46 +586,37 @@
 "\n"
 " Formato file di base e opzioni di compressione:\n"
 
-#: ../src/xz/message.c:1131
+#: src/xz/message.c:1141
 msgid ""
 "  -F, --format=FMT    file format to encode or decode; possible values are\n"
 "                      `auto' (default), `xz', `lzma', and `raw'\n"
 "  -C, --check=CHECK   integrity check type: `none' (use with caution),\n"
 "                      `crc32', `crc64' (default), or `sha256'"
 msgstr ""
-"  -F, --format=FMT    Formato file per codificare o decodificare; i "
-"possibili\n"
-"                      valori sono \"auto\" (predefinito) \"xz\", \"lzma\" e "
-"\"raw\"\n"
-"  -C, --check=CHECK   Tipo di verifica integrità: \"none\" (usare con "
-"attenzione),\n"
+"  -F, --format=FMT    Formato file per codificare o decodificare; i possibili\n"
+"                      valori sono \"auto\" (predefinito) \"xz\", \"lzma\" e \"raw\"\n"
+"  -C, --check=CHECK   Tipo di verifica integrità: \"none\" (usare con attenzione),\n"
 "                      \"crc32\", \"crc64\" (predefinito) o \"sha256\""
 
-#: ../src/xz/message.c:1138
+#: src/xz/message.c:1148
 msgid ""
-"  -0 ... -9           compression preset; default is 6; take compressor "
-"*and*\n"
-"                      decompressor memory usage into account before using "
-"7-9!"
+"  -0 ... -9           compression preset; default is 6; take compressor *and*\n"
+"                      decompressor memory usage into account before using 7-9!"
 msgstr ""
-"  -0 ... -9           Preset di compressione; predefinito è 6; tenere a "
-"mente\n"
-"                      l'utilizzo di memoria per comprimere ed estrarre "
-"prima\n"
+"  -0 ... -9           Preset di compressione; predefinito è 6; tenere a mente\n"
+"                      l'utilizzo di memoria per comprimere ed estrarre prima\n"
 "                      di usare 7-9"
 
-#: ../src/xz/message.c:1142
+#: src/xz/message.c:1152
 msgid ""
-"  -e, --extreme       try to improve compression ratio by using more CPU "
-"time;\n"
+"  -e, --extreme       try to improve compression ratio by using more CPU time;\n"
 "                      does not affect decompressor memory requirements"
 msgstr ""
 "  -e, --extreme       Tenta di migliorare il rapporto di compressione\n"
-"                      utilizzando più tempo di CPU; non cambia i requisiti "
-"di\n"
+"                      utilizzando più tempo di CPU; non cambia i requisiti di\n"
 "                      memoria in fase di estrazione"
 
-#: ../src/xz/message.c:1147
+#: src/xz/message.c:1158
 msgid ""
 "      --block-size=SIZE\n"
 "                      when compressing to the .xz format, start a new block\n"
@@ -670,37 +626,43 @@
 "                      Comprimendo nel formato .zx, comincia un nuovo blocco\n"
 "                      dopo DIM byte di input; 0=disabilitato (predefinito)"
 
-#: ../src/xz/message.c:1151
+#: src/xz/message.c:1163
+#, fuzzy
+msgid ""
+"      --block-list=SIZES\n"
+"                      when compressing to the .xz format, start a new block\n"
+"                      after the given intervals of uncompressed data"
+msgstr ""
+"      --block-size=DIM \n"
+"                      Comprimendo nel formato .zx, comincia un nuovo blocco\n"
+"                      dopo DIM byte di input; 0=disabilitato (predefinito)"
+
+#: src/xz/message.c:1167
 #, no-c-format
 msgid ""
 "      --memlimit-compress=LIMIT\n"
 "      --memlimit-decompress=LIMIT\n"
 "  -M, --memlimit=LIMIT\n"
-"                      set memory usage limit for compression, "
-"decompression,\n"
+"                      set memory usage limit for compression, decompression,\n"
 "                      or both; LIMIT is in bytes, % of RAM, or 0 for defaults"
 msgstr ""
 "      --memlimit-compress=LIMIT\n"
 "      --memlimit-decompress=LIMIT\n"
 "  -M, --memlimit=LIMIT\n"
 "                      Imposta il limite di utilizzo della memoria per la\n"
-"                      compressione, l'estrazione o entrambe; LIMIT è in "
-"byte,\n"
+"                      compressione, l'estrazione o entrambe; LIMIT è in byte,\n"
 "                      % della memoria RAM oppure 0 per il valore predefinito"
 
-#: ../src/xz/message.c:1158
+#: src/xz/message.c:1174
 msgid ""
-"      --no-adjust     if compression settings exceed the memory usage "
-"limit,\n"
-"                      give an error instead of adjusting the settings "
-"downwards"
+"      --no-adjust     if compression settings exceed the memory usage limit,\n"
+"                      give an error instead of adjusting the settings downwards"
 msgstr ""
-"      --no-adjust     Se le impostazioni di compressione eccedono il limite "
-"di\n"
+"      --no-adjust     Se le impostazioni di compressione eccedono il limite di\n"
 "                      utilizzo della memoria, lancia un errore invece di\n"
 "                      utilizzare valori più piccoli"
 
-#: ../src/xz/message.c:1164
+#: src/xz/message.c:1180
 msgid ""
 "\n"
 " Custom filter chain for compression (alternative for using presets):"
@@ -709,13 +671,11 @@
 " Catena di filtri personalizzati per la compressione (alternative per\n"
 " l'utilizzo di preset):"
 
-#: ../src/xz/message.c:1173
+#: src/xz/message.c:1189
 msgid ""
 "\n"
-"  --lzma1[=OPTS]      LZMA1 or LZMA2; OPTS is a comma-separated list of zero "
-"or\n"
-"  --lzma2[=OPTS]      more of the following options (valid values; "
-"default):\n"
+"  --lzma1[=OPTS]      LZMA1 or LZMA2; OPTS is a comma-separated list of zero or\n"
+"  --lzma2[=OPTS]      more of the following options (valid values; default):\n"
 "                        preset=PRE reset options to a preset (0-9[e])\n"
 "                        dict=NUM   dictionary size (4KiB - 1536MiB; 8MiB)\n"
 "                        lc=NUM     number of literal context bits (0-4; 3)\n"
@@ -723,24 +683,17 @@
 "                        pb=NUM     number of position bits (0-4; 2)\n"
 "                        mode=MODE  compression mode (fast, normal; normal)\n"
 "                        nice=NUM   nice length of a match (2-273; 64)\n"
-"                        mf=NAME    match finder (hc3, hc4, bt2, bt3, bt4; "
-"bt4)\n"
-"                        depth=NUM  maximum search depth; 0=automatic "
-"(default)"
+"                        mf=NAME    match finder (hc3, hc4, bt2, bt3, bt4; bt4)\n"
+"                        depth=NUM  maximum search depth; 0=automatic (default)"
 msgstr ""
 "\n"
-"  --lzma1[=OPZ]      LZMA1 o LZMA2; OPZ è un elenco separato da virgole di "
-"zero\n"
-"  --lzma2[=OPZ]      o più delle seguenti opzioni (valori validi; "
-"predefinito):\n"
-"                        preset=NUM Reimposta le opzioni al preset NUM (0-9"
-"[e])\n"
+"  --lzma1[=OPZ]      LZMA1 o LZMA2; OPZ è un elenco separato da virgole di zero\n"
+"  --lzma2[=OPZ]      o più delle seguenti opzioni (valori validi; predefinito):\n"
+"                        preset=NUM Reimposta le opzioni al preset NUM (0-9[e])\n"
 "                        dict=NUM   Dimensione del dizionario\n"
 "                                   (4KiB - 1536MiB; 8MiB)\n"
-"                        lc=NUM     Numero di bit letterali di contesto (0-4; "
-"3)\n"
-"                        lp=NUM     Numero di bit letterali di posizione "
-"(0-4; 0)\n"
+"                        lc=NUM     Numero di bit letterali di contesto (0-4; 3)\n"
+"                        lp=NUM     Numero di bit letterali di posizione (0-4; 0)\n"
 "                        pb=NUM     Numero di bit di posizione (0-4; 2)\n"
 "                        mode=MODE  Modalità di compressione\n"
 "                                   (fast, normal; normal)\n"
@@ -748,11 +701,10 @@
 "                                   (2-273; 64)\n"
 "                        mf=NAME    Strumento per cercare corrispondenze\n"
 "                                   (hc3, hc4, bt2, bt3, bt4; bt4)\n"
-"                        depth=NUM  Profondità massima di ricerca; "
-"0=automatica\n"
+"                        depth=NUM  Profondità massima di ricerca; 0=automatica\n"
 "                                   (predefinito)"
 
-#: ../src/xz/message.c:1188
+#: src/xz/message.c:1204
 msgid ""
 "\n"
 "  --x86[=OPTS]        x86 BCJ filter (32-bit and 64-bit)\n"
@@ -775,7 +727,7 @@
 "                      start=NUM Offset iniziale per le conversioni\n"
 "                                (predefinito=0)"
 
-#: ../src/xz/message.c:1200
+#: src/xz/message.c:1216
 msgid ""
 "\n"
 "  --delta[=OPTS]      Delta filter; valid OPTS (valid values; default):\n"
@@ -787,7 +739,7 @@
 "                      dist=NUM   Distanza tra byte sottratti\n"
 "                                 gli uni dagli altri (1-256; 1)"
 
-#: ../src/xz/message.c:1208
+#: src/xz/message.c:1224
 msgid ""
 "\n"
 " Other options:\n"
@@ -795,39 +747,33 @@
 "\n"
 " Altre opzioni:\n"
 
-#: ../src/xz/message.c:1211
+#: src/xz/message.c:1227
 msgid ""
-"  -q, --quiet         suppress warnings; specify twice to suppress errors "
-"too\n"
+"  -q, --quiet         suppress warnings; specify twice to suppress errors too\n"
 "  -v, --verbose       be verbose; specify twice for even more verbose"
 msgstr ""
-"  -q, --quiet         Sopprime gli avvisi; specificare due volte per "
-"sopprimere\n"
+"  -q, --quiet         Sopprime gli avvisi; specificare due volte per sopprimere\n"
 "                      anche gli errori\n"
-"  -v, --verbose       Output prolisso; specificare due volte per output "
-"ancora\n"
+"  -v, --verbose       Output prolisso; specificare due volte per output ancora\n"
 "                      più prolisso"
 
-#: ../src/xz/message.c:1216
+#: src/xz/message.c:1232
 msgid "  -Q, --no-warn       make warnings not affect the exit status"
 msgstr "  -Q, --no-warn       Gli avvisi non influenzano lo stato d'uscita"
 
-#: ../src/xz/message.c:1218
-msgid ""
-"      --robot         use machine-parsable messages (useful for scripts)"
+#: src/xz/message.c:1234
+msgid "      --robot         use machine-parsable messages (useful for scripts)"
 msgstr "      --robot         Usa messaggi analizzabili (utile per gli script)"
 
-#: ../src/xz/message.c:1221
+#: src/xz/message.c:1237
 msgid ""
-"      --info-memory   display the total amount of RAM and the currently "
-"active\n"
+"      --info-memory   display the total amount of RAM and the currently active\n"
 "                      memory usage limits, and exit"
 msgstr ""
-"      --info-memory   Visualizza la quantità totale di RAM, il limite "
-"attuale\n"
+"      --info-memory   Visualizza la quantità totale di RAM, il limite attuale\n"
 "                      attivo di utilizzo della memore ed esce"
 
-#: ../src/xz/message.c:1224
+#: src/xz/message.c:1240
 msgid ""
 "  -h, --help          display the short help (lists only the basic options)\n"
 "  -H, --long-help     display this long help and exit"
@@ -835,7 +781,7 @@
 "  -h, --help          Stampa l'aiuto breve (elenca solo le opzioni di base)\n"
 "  -H, --long-help     Stampa questo lungo aiuto ed esce"
 
-#: ../src/xz/message.c:1228
+#: src/xz/message.c:1244
 msgid ""
 "  -h, --help          display this short help and exit\n"
 "  -H, --long-help     display the long help (lists also the advanced options)"
@@ -843,11 +789,11 @@
 "  -h, --help          Stampa questo breve aiuto ed esce\n"
 "  -H, --long-help     Stampa l'aiuto lungo (elenca anche le opzioni avanzate)"
 
-#: ../src/xz/message.c:1233
+#: src/xz/message.c:1249
 msgid "  -V, --version       display the version number and exit"
 msgstr "  -V, --version       Stampa il numero della versione ed esce"
 
-#: ../src/xz/message.c:1235
+#: src/xz/message.c:1251
 msgid ""
 "\n"
 "With no FILE, or when FILE is -, read standard input.\n"
@@ -859,111 +805,102 @@
 #. for this package. Please add _another line_ saying
 #. "Report translation bugs to <...>\n" with the email or WWW
 #. address for translation bugs. Thanks.
-#: ../src/xz/message.c:1241
+#: src/xz/message.c:1257
 #, c-format
 msgid "Report bugs to <%s> (in English or Finnish).\n"
 msgstr ""
 "Segnalare i bug a <%s> (in inglese o finlandese).\n"
 "Segnalare i bug di traduzione a <tp@lists.linux.it>.\n"
 
-#: ../src/xz/message.c:1243
+#: src/xz/message.c:1259
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Sito web di %s: <%s>\n"
 
-#: ../src/xz/options.c:86
+#: src/xz/options.c:86
 #, c-format
 msgid "%s: Options must be `name=value' pairs separated with commas"
-msgstr ""
-"%s: le opzioni devono essere coppie \"nome=valore\" separate da virgole"
+msgstr "%s: le opzioni devono essere coppie \"nome=valore\" separate da virgole"
 
-#: ../src/xz/options.c:93
+#: src/xz/options.c:93
 #, c-format
 msgid "%s: Invalid option name"
 msgstr "%s: nome opzione non valido"
 
-#: ../src/xz/options.c:113
+#: src/xz/options.c:113
 #, c-format
 msgid "%s: Invalid option value"
 msgstr "%s: valore dell'opzione non valido"
 
-#: ../src/xz/options.c:247
+#: src/xz/options.c:247
 #, c-format
 msgid "Unsupported LZMA1/LZMA2 preset: %s"
 msgstr "Preset LZMA/LZMA2 non supportato: %s"
 
-#: ../src/xz/options.c:355
+#: src/xz/options.c:355
 msgid "The sum of lc and lp must not exceed 4"
 msgstr "La somma di lc e lp non deve superare 4"
 
-#: ../src/xz/options.c:359
+#: src/xz/options.c:359
 #, c-format
 msgid "The selected match finder requires at least nice=%<PRIu32>"
-msgstr ""
-"Lo strumento per cercare corrispondenze selezionato richiede almeno nice="
-"%<PRIu32>"
+msgstr "Lo strumento per cercare corrispondenze selezionato richiede almeno nice=%<PRIu32>"
 
-#: ../src/xz/suffix.c:133 ../src/xz/suffix.c:258
+#: src/xz/suffix.c:133 src/xz/suffix.c:258
 #, c-format
-msgid ""
-"%s: With --format=raw, --suffix=.SUF is required unless writing to stdout"
-msgstr ""
-"%s: con --format=raw, --suffix=.SUF è richiesto a meno che non si scriva "
-"sullo stdout"
+msgid "%s: With --format=raw, --suffix=.SUF is required unless writing to stdout"
+msgstr "%s: con --format=raw, --suffix=.SUF è richiesto a meno che non si scriva sullo stdout"
 
-#: ../src/xz/suffix.c:164
+#: src/xz/suffix.c:164
 #, c-format
 msgid "%s: Filename has an unknown suffix, skipping"
 msgstr "%s: il nome del file ha un suffisso sconosciuto, viene saltato"
 
-#: ../src/xz/suffix.c:185
+#: src/xz/suffix.c:185
 #, c-format
 msgid "%s: File already has `%s' suffix, skipping"
 msgstr "%s: il file ha già il suffisso \"%s\", viene saltato"
 
-#: ../src/xz/suffix.c:393
+#: src/xz/suffix.c:393
 #, c-format
 msgid "%s: Invalid filename suffix"
 msgstr "%s: suffisso del nome del file non valido"
 
-#: ../src/xz/util.c:61
+#: src/xz/util.c:61
 #, c-format
 msgid "%s: Value is not a non-negative decimal integer"
 msgstr "%s: il valore non è un numero intero decimale non-negativo"
 
-#: ../src/xz/util.c:103
+#: src/xz/util.c:103
 #, c-format
 msgid "%s: Invalid multiplier suffix"
 msgstr "%s: suffisso del moltiplicatore non valido"
 
-#: ../src/xz/util.c:105
+#: src/xz/util.c:105
 msgid "Valid suffixes are `KiB' (2^10), `MiB' (2^20), and `GiB' (2^30)."
-msgstr ""
-"I suffissi validi sono \"KiB\" (2^10), \"MiB\" (2^20), e \"GiB\" (2^30)."
+msgstr "I suffissi validi sono \"KiB\" (2^10), \"MiB\" (2^20), e \"GiB\" (2^30)."
 
-#: ../src/xz/util.c:122
+#: src/xz/util.c:122
 #, c-format
 msgid "Value of the option `%s' must be in the range [%<PRIu64>, %<PRIu64>]"
-msgstr ""
-"Il valore dell'opzione \"%s\" deve essere nell'intervallo [%<PRIu64>, "
-"%<PRIu64>]"
+msgstr "Il valore dell'opzione \"%s\" deve essere nell'intervallo [%<PRIu64>, %<PRIu64>]"
 
-#: ../src/xz/util.c:247
+#: src/xz/util.c:247
 msgid "Empty filename, skipping"
 msgstr "Nome file vuoto, viene saltato"
 
-#: ../src/xz/util.c:261
+#: src/xz/util.c:261
 msgid "Compressed data cannot be read from a terminal"
 msgstr "I dati compressi non possono essere letti da un terminale"
 
-#: ../src/xz/util.c:274
+#: src/xz/util.c:274
 msgid "Compressed data cannot be written to a terminal"
 msgstr "I dati compressi non possono essere scritti ad un terminale"
 
-#: ../src/common/tuklib_exit.c:39
+#: src/common/tuklib_exit.c:39
 msgid "Writing to standard output failed"
 msgstr "Scrittura sullo standard ouput non riuscita"
 
-#: ../src/common/tuklib_exit.c:42
+#: src/common/tuklib_exit.c:42
 msgid "Unknown error"
 msgstr "Errore sconosciuto"
diff --git a/po/pl.po b/po/pl.po
index 55deda1..0f3e96c 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: xz 5.1.1\n"
 "Report-Msgid-Bugs-To: lasse.collin@tukaani.org\n"
-"POT-Creation-Date: 2012-05-29 13:59+0300\n"
+"POT-Creation-Date: 2012-07-04 20:51+0300\n"
 "PO-Revision-Date: 2012-05-29 18:15+0200\n"
 "Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
 "Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
@@ -16,69 +16,83 @@
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
 
-#: src/xz/args.c:338
+#: src/xz/args.c:62
+#, c-format
+msgid "%s: Invalid argument to --block-list"
+msgstr ""
+
+#: src/xz/args.c:72
+#, c-format
+msgid "%s: Too many arguments to --block-list"
+msgstr ""
+
+#: src/xz/args.c:101
+msgid "0 can only be used as the last element in --block-list"
+msgstr ""
+
+#: src/xz/args.c:401
 #, c-format
 msgid "%s: Unknown file format type"
 msgstr "%s: Nieznany typ formatu pliku"
 
-#: src/xz/args.c:361 src/xz/args.c:369
+#: src/xz/args.c:424 src/xz/args.c:432
 #, c-format
 msgid "%s: Unsupported integrity check type"
 msgstr "%s: Nieobsługiwany typ kontroli spójności"
 
-#: src/xz/args.c:396
+#: src/xz/args.c:464
 msgid "Only one file can be specified with `--files' or `--files0'."
 msgstr "Wraz z opcją `--files' lub `--files0' można podać tylko jeden plik."
 
-#: src/xz/args.c:459
+#: src/xz/args.c:527
 #, c-format
 msgid "The environment variable %s contains too many arguments"
 msgstr "Zmienna środowiskowa %s zawiera zbyt dużo argumentów"
 
-#: src/xz/coder.c:105
+#: src/xz/coder.c:106
 msgid "Maximum number of filters is four"
 msgstr "Maksymalna liczba filtrów to cztery"
 
-#: src/xz/coder.c:118
+#: src/xz/coder.c:119
 msgid "Memory usage limit is too low for the given filter setup."
 msgstr "Limit użycia pamięci jest zbyt mały dla podanej konfiguracji filtra."
 
-#: src/xz/coder.c:148
+#: src/xz/coder.c:149
 msgid "Using a preset in raw mode is discouraged."
 msgstr "Użycie ustawień predefiniowanych w trybie surowym jest odradzane."
 
-#: src/xz/coder.c:150
+#: src/xz/coder.c:151
 msgid "The exact options of the presets may vary between software versions."
 msgstr "Dokładne opcje ustawień predefiniowanych mogą różnić się między wersjami oprogramowania."
 
-#: src/xz/coder.c:176
+#: src/xz/coder.c:177
 msgid "The .lzma format supports only the LZMA1 filter"
 msgstr "Format .lzma obsługuje tylko filtr LZMA1"
 
-#: src/xz/coder.c:184
+#: src/xz/coder.c:185
 msgid "LZMA1 cannot be used with the .xz format"
 msgstr "LZMA1 nie może być używany z formatem .xz"
 
-#: src/xz/coder.c:203
+#: src/xz/coder.c:204
 #, c-format
 msgid "Using up to %<PRIu32> threads."
 msgstr "Maksymalna liczba używanych wątków: %<PRIu32>."
 
-#: src/xz/coder.c:216
+#: src/xz/coder.c:217
 msgid "Unsupported filter chain or filter options"
 msgstr "Nieobsługiwany łańcuch filtrów lub opcje filtra"
 
-#: src/xz/coder.c:224
+#: src/xz/coder.c:225
 #, c-format
 msgid "Decompression will need %s MiB of memory."
 msgstr "Dekompresja będzie wymagała %s MiB pamięci."
 
-#: src/xz/coder.c:259
+#: src/xz/coder.c:260
 #, c-format
 msgid "Adjusted the number of threads from %s to %s to not exceed the memory usage limit of %s MiB"
 msgstr "Skorygowano liczbę wątków z %s do %s, aby nie przekroczyć limitu użycia pamięci %s MiB"
 
-#: src/xz/coder.c:313
+#: src/xz/coder.c:314
 #, c-format
 msgid "Adjusted LZMA%c dictionary size from %s MiB to %s MiB to not exceed the memory usage limit of %s MiB"
 msgstr "Skorygowano rozmiar słownika LZMA%c z %s MiB do %s MiB aby nie przekroczyć limitu użycia pamięci %s MiB"
@@ -599,7 +613,7 @@
 "                      ilości czasu procesora; nie wpływa na wymagania\n"
 "                      pamięciowe dekompresora"
 
-#: src/xz/message.c:1157
+#: src/xz/message.c:1158
 msgid ""
 "      --block-size=SIZE\n"
 "                      when compressing to the .xz format, start a new block\n"
@@ -609,7 +623,18 @@
 "                      przy kompresji do formatu .xz: rozpoczynanie nowego bloku\n"
 "                      po każdej LICZBIE bajtów wejścia; 0=wyłączone (domyślne)"
 
-#: src/xz/message.c:1161
+#: src/xz/message.c:1163
+#, fuzzy
+msgid ""
+"      --block-list=SIZES\n"
+"                      when compressing to the .xz format, start a new block\n"
+"                      after the given intervals of uncompressed data"
+msgstr ""
+"      --block-size=LICZBA\n"
+"                      przy kompresji do formatu .xz: rozpoczynanie nowego bloku\n"
+"                      po każdej LICZBIE bajtów wejścia; 0=wyłączone (domyślne)"
+
+#: src/xz/message.c:1167
 #, no-c-format
 msgid ""
 "      --memlimit-compress=LIMIT\n"
@@ -625,7 +650,7 @@
 "                      dekompresji lub obu; LIMIT jest w bajtach, % RAM lub 0\n"
 "                      dla limitów domyślnych"
 
-#: src/xz/message.c:1168
+#: src/xz/message.c:1174
 msgid ""
 "      --no-adjust     if compression settings exceed the memory usage limit,\n"
 "                      give an error instead of adjusting the settings downwards"
@@ -634,7 +659,7 @@
 "                      pamięci, zostanie zgłoszony błąd zamiast zmniejszania\n"
 "                      ustawień"
 
-#: src/xz/message.c:1174
+#: src/xz/message.c:1180
 msgid ""
 "\n"
 " Custom filter chain for compression (alternative for using presets):"
@@ -642,7 +667,7 @@
 "\n"
 " Łańcuch własnych filtrów do kompresji (alternatywa do używania -0 .. -9):"
 
-#: src/xz/message.c:1183
+#: src/xz/message.c:1189
 msgid ""
 "\n"
 "  --lzma1[=OPTS]      LZMA1 or LZMA2; OPTS is a comma-separated list of zero or\n"
@@ -671,7 +696,7 @@
 "                        mf=NAZWA   dopasowywacz (hc3, hc4, bt2, bt3, bt4; bt4)\n"
 "                        depth=ILE  maks. głębokość szukania; 0=auto (domyślne)"
 
-#: src/xz/message.c:1198
+#: src/xz/message.c:1204
 msgid ""
 "\n"
 "  --x86[=OPTS]        x86 BCJ filter (32-bit and 64-bit)\n"
@@ -693,7 +718,7 @@
 "                      Poprawne OPCJE dla wszystkich filtrów BCJ:\n"
 "                        start=ILE  offset początku konwersji (domyślnie=0)"
 
-#: src/xz/message.c:1210
+#: src/xz/message.c:1216
 msgid ""
 "\n"
 "  --delta[=OPTS]      Delta filter; valid OPTS (valid values; default):\n"
@@ -705,7 +730,7 @@
 "                        dist=ILE   odległość między bajtami odejmowanymi od\n"
 "                                   siebie (1-256; 1)"
 
-#: src/xz/message.c:1218
+#: src/xz/message.c:1224
 msgid ""
 "\n"
 " Other options:\n"
@@ -713,7 +738,7 @@
 "\n"
 " Inne opcje:\n"
 
-#: src/xz/message.c:1221
+#: src/xz/message.c:1227
 msgid ""
 "  -q, --quiet         suppress warnings; specify twice to suppress errors too\n"
 "  -v, --verbose       be verbose; specify twice for even more verbose"
@@ -721,15 +746,15 @@
 "  -q, --quiet         pominięcie ostrzeżeń; dwukrotne podanie pomija też błędy\n"
 "  -v, --verbose       więcej informacji; dwukrotne podanie to jeszcze więcej"
 
-#: src/xz/message.c:1226
+#: src/xz/message.c:1232
 msgid "  -Q, --no-warn       make warnings not affect the exit status"
 msgstr "  -Q, --no-warn       ostrzeżenia nie mają wpływu na status zakończenia"
 
-#: src/xz/message.c:1228
+#: src/xz/message.c:1234
 msgid "      --robot         use machine-parsable messages (useful for scripts)"
 msgstr "      --robot         komunikaty w formacie dla maszyny (do skryptów)"
 
-#: src/xz/message.c:1231
+#: src/xz/message.c:1237
 msgid ""
 "      --info-memory   display the total amount of RAM and the currently active\n"
 "                      memory usage limits, and exit"
@@ -737,7 +762,7 @@
 "      --info-memory   wyświetlenie całkowitej ilości pamięci RAM oraz aktualnie\n"
 "                      aktywnych limitów pamięci i zakończenie pracy"
 
-#: src/xz/message.c:1234
+#: src/xz/message.c:1240
 msgid ""
 "  -h, --help          display the short help (lists only the basic options)\n"
 "  -H, --long-help     display this long help and exit"
@@ -745,7 +770,7 @@
 "  -h, --help          wyświetlenie krótkiego opisu (tylko podstawowe opcje)\n"
 "  -H, --long-help     wyświetlenie tego długiego opisu i zakończenie"
 
-#: src/xz/message.c:1238
+#: src/xz/message.c:1244
 msgid ""
 "  -h, --help          display this short help and exit\n"
 "  -H, --long-help     display the long help (lists also the advanced options)"
@@ -753,11 +778,11 @@
 "  -h, --help          wyświetlenie tego krótkiego opisu i zakończenie\n"
 "  -H, --long-help     wyświetlenie długiego opisu (także opcje zaawansowane)"
 
-#: src/xz/message.c:1243
+#: src/xz/message.c:1249
 msgid "  -V, --version       display the version number and exit"
 msgstr "  -V, --version       wyświetlenie informacji o wersji i zakończenie"
 
-#: src/xz/message.c:1245
+#: src/xz/message.c:1251
 msgid ""
 "\n"
 "With no FILE, or when FILE is -, read standard input.\n"
@@ -769,7 +794,7 @@
 #. for this package. Please add _another line_ saying
 #. "Report translation bugs to <...>\n" with the email or WWW
 #. address for translation bugs. Thanks.
-#: src/xz/message.c:1251
+#: src/xz/message.c:1257
 #, c-format
 msgid "Report bugs to <%s> (in English or Finnish).\n"
 msgstr ""
@@ -778,7 +803,7 @@
 "Błędy w tłumaczeniu prosimy zgłaszać na adres\n"
 "<translation-team-pl@lists.sourceforge.net>.\n"
 
-#: src/xz/message.c:1253
+#: src/xz/message.c:1259
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Strona domowa %s: <%s>\n"
diff --git a/src/liblzma/validate_map.sh b/src/liblzma/validate_map.sh
deleted file mode 100644
index 3aee466..0000000
--- a/src/liblzma/validate_map.sh
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/bin/sh
-
-###############################################################################
-#
-# Check liblzma.map for certain types of errors
-#
-# Author: Lasse Collin
-#
-# This file has been put into the public domain.
-# You can do whatever you want with this file.
-#
-###############################################################################
-
-LC_ALL=C
-export LC_ALL
-
-STATUS=0
-
-cd "$(dirname "$0")"
-
-# Get the list of symbols that aren't defined in liblzma.map.
-SYMS=$(sed -n 's/^extern LZMA_API([^)]*) \([a-z0-9_]*\)(.*$/\1;/p' \
-		api/lzma/*.h \
-	| sort \
-	| grep -Fve "$(sed '/[{}:*]/d;/^$/d;s/^	//' liblzma.map)")
-
-# Check that there are no old alpha or beta versions listed.
-VER=$(cd ../.. && sh build-aux/version.sh)
-NAMES=
-case $VER in
-	*alpha | *beta)
-		NAMES=$(sed -n 's/^.*XZ_\([^ ]*\)\(alpha\|beta\) .*$/\1\2/p' \
-			liblzma.map | grep -Fv "$VER")
-		;;
-esac
-
-# Check for duplicate lines. It can catch missing dependencies.
-DUPS=$(sort liblzma.map | sed '/^$/d;/^global:$/d' | uniq -d)
-
-# Print error messages if needed.
-if test -n "$SYMS$NAMES$DUPS"; then
-	echo
-	echo 'validate_map.sh found problems from liblzma.map:'
-	echo
-
-	if test -n "$SYMS"; then
-		echo 'liblzma.map lacks the following symbols:'
-		echo "$SYMS"
-		echo
-	fi
-
-	if test -n "$NAMES"; then
-		echo 'Obsolete alpha or beta version names:'
-		echo "$NAMES"
-		echo
-	fi
-
-	if test -n "$DUPS"; then
-		echo 'Duplicate lines:'
-		echo "$DUPS"
-		echo
-	fi
-
-	STATUS=1
-fi
-
-# Exit status is 1 if problems were found, 0 otherwise.
-exit "$STATUS"
diff --git a/tests/test_block.c b/tests/test_block.c
deleted file mode 100644
index 0352dce..0000000
--- a/tests/test_block.c
+++ /dev/null
@@ -1,52 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-/// \file       test_block.c
-/// \brief      Tests Block coders
-//
-//  Author:     Lasse Collin
-//
-//  This file has been put into the public domain.
-//  You can do whatever you want with this file.
-//
-///////////////////////////////////////////////////////////////////////////////
-
-#include "tests.h"
-
-
-static uint8_t text[] = "Hello world!";
-static uint8_t buffer[4096];
-static lzma_options_block block_options;
-static lzma_stream strm = LZMA_STREAM_INIT;
-
-
-static void
-test1(void)
-{
-
-}
-
-
-int
-main()
-{
-	lzma_init();
-
-	block_options = (lzma_options_block){
-		.check_type = LZMA_CHECK_NONE,
-		.has_eopm = true,
-		.has_uncompressed_size_in_footer = false,
-		.has_backward_size = false,
-		.handle_padding = false,
-		.total_size = LZMA_VLI_UNKNOWN,
-		.compressed_size = LZMA_VLI_UNKNOWN,
-		.uncompressed_size = LZMA_VLI_UNKNOWN,
-		.header_size = 5,
-	};
-	block_options.filters[0].id = LZMA_VLI_UNKNOWN;
-	block_options.filters[0].options = NULL;
-
-
-	lzma_end(&strm);
-
-	return 0;
-}