commit 6f949a61df1cfc778ab91de037b611bd8bad3735
Author: Jan Engelhardt <[EMAIL PROTECTED]>
Date:   Thu Nov 27 23:28:35 2008 +0100

Add LZIP support
---
 ChangeLog               |   10 ++++++++++
 Makefile.in             |    8 +++++++-
 automake.in             |    3 ++-
 doc/automake.texi       |   17 +++++++++++++++--
 lib/Automake/Options.pm |    3 ++-
 lib/am/distdir.am       |    6 ++++++
 6 files changed, 42 insertions(+), 5 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index ef7f710..4e6cd33 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2008-11-27  Jan Engelhardt  <[EMAIL PROTECTED]>
+
+       * automake.in (handle_dist): Recognize dist-lzip.
+       (make_paragraphs): Map LZIP to dist-lzip.
+       * doc/automake.texi (Dist): Add dist-lzip.
+       (Options): Likewise.
+       * lib/Automake/Options.pm (_process_option_list):
+       (dist dist-all): Add command to create an lzip-compressed tarball.
+       (distcheck): Handle lzip-compressed tarballs just like the others.
+
 2008-11-24  Ralf Wildenhues  <[EMAIL PROTECTED]>
 
        Let `missing' also work with versioned and prefixed programs.
diff --git a/Makefile.in b/Makefile.in
index 7f8b810..1a269d1 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -534,6 +534,10 @@ dist-lzma: distdir
        tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
        $(am__remove_distdir)
 
+dist-lzip: distdir
+       tardir=${distdir} && ${am__tar} | lzip -9c >${distdir}.tar.lz
+       ${am__remove_distdir}
+
 dist-xz: distdir
        tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
        $(am__remove_distdir)
@@ -567,6 +571,8 @@ distcheck: dist
          bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
        *.tar.lzma*) \
          unlzma -c $(distdir).tar.lzma | $(am__untar) ;;\
+       *.tar.lz*) \
+         lzip -9cd ${distdir}.tar.lz | ${am__untar};; \
        *.tar.xz*) \
          xz -dc $(distdir).tar.xz | $(am__untar) ;;\
        *.tar.Z*) \
@@ -726,7 +732,7 @@ uninstall-am: uninstall-binSCRIPTS
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
        all all-am am--refresh check check-am clean clean-generic \
        ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \
-       dist-hook dist-lzma dist-shar dist-tarZ dist-xz dist-zip \
+       dist-hook dist-lzma dist-lzip dist-shar dist-tarZ dist-xz dist-zip \
        distcheck distclean distclean-generic distclean-tags \
        distcleancheck distdir distuninstallcheck dvi dvi-am html \
        html-am info info-am install install-am install-binSCRIPTS \
diff --git a/automake.in b/automake.in
index 24bb193..f4085da 100755
--- a/automake.in
+++ b/automake.in
@@ -3723,7 +3723,7 @@ sub handle_dist ()
     {
       my $archive_defined = option 'no-dist-gzip' ? 0 : 1;
       $archive_defined ||=
-       grep { option "dist-$_" } qw(shar zip tarZ bzip2 lzma xz);
+       grep { option "dist-$_" } qw(shar zip tarZ bzip2 lzma lzip xz);
       error (option 'no-dist-gzip',
             "no-dist-gzip specified but no dist-* specified, "
             . "at least one archive format must be enabled")
@@ -6633,6 +6633,7 @@ sub make_paragraphs ($%)
 
                 'XZ'          => !! option 'dist-xz',
                 'LZMA'        => !! option 'dist-lzma',
+                'LZIP'        => !! option 'dist-lzip',
                 'BZIP2'       => !! option 'dist-bzip2',
                 'COMPRESS'    => !! option 'dist-tarZ',
                 'GZIP'        =>  ! option 'no-dist-gzip',
diff --git a/doc/automake.texi b/doc/automake.texi
index 065e6fa..19b9e1c 100644
--- a/doc/automake.texi
+++ b/doc/automake.texi
@@ -8258,6 +8258,12 @@ Generate an @samp{lzma} tar archive of the distribution. 
 @command{lzma}
 archives are frequently smaller than @command{bzip2}-compressed archives.
 @trindex dist-lzma
 
[EMAIL PROTECTED] @code{dist-lzip}
+Generate an @samp{LZIP} tar archive of the distribution. @command{lzip}
+archives are frequently smaller than @command{bzip2}-compressed archives,
+and provide magic bytes and a checksum over LZMA archives.
[EMAIL PROTECTED] dist-lzip
+
 @item @code{dist-shar}
 Generate a shar archive of the distribution.
 @trindex dist-shar
@@ -8577,6 +8583,12 @@ Hook @code{dist-bzip2} to @code{dist}.
 Hook @code{dist-lzma} to @code{dist}.
 @trindex dist-lzma
 
[EMAIL PROTECTED] @option{dist-lzip}
[EMAIL PROTECTED] Option, @option{dist-lzip}
[EMAIL PROTECTED] dist-lzip
+Hook @code{dist-lzip} to @code{dist}.
[EMAIL PROTECTED] dist-lzip
+
 @item @option{dist-shar}
 @cindex Option, @option{dist-shar}
 @opindex dist-shar
@@ -8748,7 +8760,8 @@ In order to use this option with C sources, you should add
 These three mutually exclusive options select the tar format to use
 when generating tarballs with @samp{make dist}.  (The tar file created
 is then compressed according to the set of @option{no-dist-gzip},
[EMAIL PROTECTED], @option{dist-lzma} and @option{dist-tarZ} options in use.)
[EMAIL PROTECTED], @option{dist-lzma}, @option{dist-lzip}
+and @option{dist-tarZ} options in use.)
 
 These options must be passed as argument to @code{AM_INIT_AUTOMAKE}
 (@pxref{Macros}) because they can require additional configure checks.
@@ -12328,4 +12341,4 @@ parentheses is the number of generated test cases.
 @c  LocalWords:  LTALLOCA MALLOC malloc memcmp strdup alloca libcompat xyz DFOO
 @c  LocalWords:  unprefixed buildable preprocessed DBAZ DDATADIR WARNINGCFLAGS
 @c  LocalWords:  LIBFOOCFLAGS LIBFOOLDFLAGS ftable testSubDir obj LIBTOOLFLAGS
[EMAIL PROTECTED]  LocalWords:  barexec Pinard's automatize initialize lzma xz
[EMAIL PROTECTED]  LocalWords:  barexec Pinard's automatize initialize lzma 
lzip xz
diff --git a/lib/Automake/Options.pm b/lib/Automake/Options.pm
index 5750cd1..97ef27a 100644
--- a/lib/Automake/Options.pm
+++ b/lib/Automake/Options.pm
@@ -259,7 +259,8 @@ sub _process_option_list (\%$@)
       elsif ($_ eq 'no-installman' || $_ eq 'no-installinfo'
             || $_ eq 'dist-shar' || $_ eq 'dist-zip'
             || $_ eq 'dist-tarZ' || $_ eq 'dist-bzip2'
-            || $_ eq 'dist-lzma' || $_ eq 'dist-xz'
+            || $_ eq 'dist-lzma' || $_ eq 'dist-lzip'
+            || $_ eq 'dist-xz'
             || $_ eq 'no-dist-gzip' || $_ eq 'no-dist'
             || $_ eq 'dejagnu' || $_ eq 'no-texinfo.tex'
             || $_ eq 'readme-alpha' || $_ eq 'check-news'
diff --git a/lib/am/distdir.am b/lib/am/distdir.am
index 218e65a..be8d685 100644
--- a/lib/am/distdir.am
+++ b/lib/am/distdir.am
@@ -304,6 +304,12 @@ dist-lzma: distdir
        tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
        $(am__remove_distdir)
 
+?LZIP?DIST_ARCHIVES += ${distdir}.tar.lzip
+.PHONY: dist-lzip
+dist-lzip: distdir
+       tardir=${distdir} && ${am__tar} | lzip -9c >${distdir}.tar.lzip
+       ${am__remove_distdir}
+
 ?XZ?DIST_ARCHIVES += $(distdir).tar.xz
 .PHONY: dist-xz
 dist-xz: distdir



Reply via email to