Re: [Module::Build] Archive::Tar file format
Status: Beta
Brought to you by:
kwilliams
|
From: Jos I. B. <ka...@dw...> - 2004-01-12 11:15:56
|
> YES! Looks good. I will test more extensively when a snapshot is > available. Thanks. You can find a snapshot attached. To use the new feature, follow this bit of documentation: =head2 $Archive::Tar::DO_NOT_USE_PREFIX By default, C<Archive::Tar> will try to put paths that are over 100 characters in the C<prefix> field of your tar header. However, some older tar programs do not implement this spec. To retain compatibillity with these older versions, you can set the C<$DO_NOT_USE_PREFIX> variable to a true value, and C<Archive>>Tar> will use an alternate way of dealing with paths over 100 characters by using the C<GNU Extended Header> feature. The default is C<0>. On the discussion of what use of prefix is appropriate, etc, here's a relevant part from the gnu tar manual, found at: http://www.gnu.org/software/tar/manual/html_mono/tar.html#SEC112 >>>> Traditionally, old tars have a limit of 100 characters. GNU tar attempted two different approaches to overcome this limit, using and extending a format specified by a draft of some P1003.1. The first way was not that successful, and involved `@MaNgLeD@' file names, or such; while a second approach used `././@LongLink' and other tricks, yielding better success. In theory, GNU tarshould be able to handle file names of practically unlimited length. So, if GNU tar fails to dump and retrieve files having more than 100 characters, then there is a bug in GNU tar, indeed. But, being strictly POSIX, the limit was still 100 characters. For various other purposes, GNU tar used areas left unassigned in the POSIX draft. POSIX later revised P1003.1 ustar format by assigning previously unused header fields, in such a way that the upper limit for file name length was raised to 256 characters. However, the actual POSIX limit oscillates between 100 and 256, depending on the precise location of slashes in full file name (this is rather ugly). Since GNU tar use the same fields for quite other purposes, it became incompatible with the latest POSIX standards. <<<<< it's striking to note that most popular (windows) tools do implement one of the features, (././@LongLink), but not the other (PREFIX header use). Just for the record btw, A::T created tarfiles do identify themselves as 'ustar' files... let me know how you fare with this snapshot -- if it meets your needs, i'll release it as 1.09 asap. -- Jos Boumans "I speak better English than this villain Bush" - Muhammed Saeed al-Sahaf CPANPLUS http://cpanplus.sf.net |