[cmake-developers] cmake -E tar not working correctly with xz-compressed tarballs on MSYS

Alan W. Irwin irwin at beluga.phys.uvic.ca
Thu Jul 25 19:16:50 EDT 2013


On 2013-07-25 15:31-0400 Brad King wrote:

> On 07/24/2013 03:27 PM, Alan W. Irwin wrote:
>> The first priority is to verify on Microsoft Windows that this is
>> actually an issue using the the simple test I outlined in my previous
>> post.
>
> At a MSYS prompt under MS Windows this works:
>
> $ cat a.tar.xz | unxz | tar x
>
> but this hangs:
>
> $ cmake -E tar xvf a.tar.xz
>
> One can see in the process tree that there is a child process of
> "cmake" called "unxz" that was started with no command line arguments.
> One can attach a debugger to see CMake blocked inside libarchive code.
>
> This confirms that the hang occurs on MS Windows just as in Wine.
> I suggest getting upstream libarchive and building its sample
> tools but without lzma support built-in.  Then try using that
> binary to extract the .tar.xz file.

Thanks, Brad, for that Microsoft Windows confirmation, and I will
follow your advice for the rest to try and track down whether the
problem is for the libarchive upstream version or the libarchive
version within CMake.  With luck I should be able to come up with a
fix as well (since drop-through to command-line handling of *.tar.xz
should be completely straightforward) assuming the MSYS version of gdb
works similarly to the Linux version (which I am familiar with).

Alan
__________________________
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state
implementation for stellar interiors (freeeos.sf.net); the Time
Ephemerides project (timeephem.sf.net); PLplot scientific plotting
software package (plplot.sf.net); the libLASi project
(unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);
and the Linux Brochure Project (lbproject.sf.net).
__________________________

Linux-powered Science
__________________________



More information about the cmake-developers mailing list