Subject: Re: bug#5927: `xz' command not found when running 'make dist and distcheck'

From: "jeff.liu" <[email-masked]>
Date: Mon, 12 Apr 2010 13:57:55 +0800

Jim Meyering wrote:
> jeff.liu wrote:
>> I run into a problem when running `make dist/distcheck' on "uBuntu 8.0.4 - the Hardy Heron".
>>
>> The error message shows the `xz` command not found:
>> ...
>> tardir=coreutils-8.4.84-8c4b6-dirty && /bin/bash
>> /home/jeff/opensource_dev/coreutils/build-aux/missing --run tar chof - "$tardir" | xz -c
>>> coreutils-8.4.84-8c4b6-dirty.tar.xz
>> /bin/bash: xz: command not found
>> WARNING: I can't seem to be able to run `tar' with the given arguments.
>>          You may want to install GNU tar or Free paxutils, or check the
>>          command line arguments.
>> make: *** [dist] Error 127
>>
>> Is it make sense to add the pre-checking for `xz-utils' in 'boottrap.conf' like below?
>>
>> Subject: [PATCH] Add `xz-utils` pre-checking in bootstrap.conf
>>
>> Signed-off-by: Jie Liu <[email-masked]>
> 
> Good idea.  Thanks for the patch.
> I've applied that, but adjusted the commit log:
>   - remove the signed-off-by part (you're the Author:)
>   - add ChangeLog-style line, since a ChangeLog file is generated
>       from the commit logs.
> 
>       * bootstrap.conf (buildreq): Add xz to the list.
> 
>   - prefix one-line summary with "build: " and omit leading capital
> 
> For future reference, some of the above is mentioned in HACKING.
> Here's what I pushed:
> 
> From 20a5a60c61a2a9f6b386b33533203c180de97a6c Mon Sep 17 00:00:00 2001
> From: Jie Liu <[email-masked]>
> Date: Sun, 11 Apr 2010 22:40:52 +0800
> Subject: [PATCH] build: tell ./bootstrap to check for xz up-front
> 
> * bootstrap.conf (buildreq): Add xz to the list.
> ---
>  bootstrap.conf |    1 +
>  1 files changed, 1 insertions(+), 0 deletions(-)
> 
> diff --git a/bootstrap.conf b/bootstrap.conf
> index ad7d6d5..55b2f60 100644
> --- a/bootstrap.conf
> +++ b/bootstrap.conf
> @@ -321,6 +321,7 @@ makeinfo   -
>  perl       5.5
>  rsync      -
>  tar        -
> +xz         -
>  "
> 
>  # Automake requires that ChangeLog exist.
> --
> 1.7.1.rc1.237.ge1730
> 
> 
> 
> 

Thanks!

but unfortunately, I run into another issue for 'make distcheck' regarding to the `tar -J' option:

.....
mkdir -p /home/jeff/opensource_dev/coreutils/tests/torture/coreutils/test
/bin/bash /home/jeff/opensource_dev/coreutils/build-aux/missing --run tar -Jxf
coreutils-8.4.86-e6f6bb.tar.xz -C /home/jeff/opensource_dev/coreutils/tests/torture/coreutils/test
tar: invalid option -- J
Try `tar --help' or `tar --usage' for more information.
WARNING: I can't seem to be able to run `tar' with the given arguments.
         You may want to install GNU tar or Free paxutils, or check the
         command line arguments.
make[2]: *** [my-distcheck] Error 1
make[2]: Leaving directory `/home/jeff/opensource_dev/coreutils'
make[1]: *** [distcheck-hook] Error 2
make[1]: Leaving directory `/home/jeff/opensource_dev/coreutils'
make: *** [distcheck] Error 1

Maybe we need another approach to handle the `xz` not available case.

Thanks,
-Jeff