automake-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[FYI] {master} dist: remove support for shar and tarZ formats


From: Stefano Lattarini
Subject: [FYI] {master} dist: remove support for shar and tarZ formats
Date: Fri, 10 May 2013 22:16:10 +0200

See also discussion about automake wishlist bug#13324.

* lib/Automake/Options.pm: Give fatal errors (rather than warnings) if
the 'dist-shar' or 'dist-tarZ' options are used.
* lib/distdir.am: Remove the 'dist-tarZ' and 'dist-shar' targets, and
references to the '.tar.Z' and '.shar' archives.
* bin/automake.in (preprocess_file): Remove 'COMPRESS' and 'SHAR'
transforms.
(handle_dist): Remove lingering references to 'dist-tarZ' and 'dist-shar'
options.
* doc/automake.texi: Adjust, removing references to the removed targets
and distribution formats.
* t/dist-shar.sh: Adjust to expect fatal errors rather than warnings.
* t/dist-tarZ.sh: Likewise.

Signed-off-by: Stefano Lattarini <address@hidden>
---
 bin/automake.in         |  4 +---
 doc/automake.texi       | 38 +++-----------------------------------
 lib/Automake/Options.pm | 16 +++++++---------
 lib/am/distdir.am       | 24 ------------------------
 t/dist-shar.sh          | 11 +++--------
 t/dist-tarZ.sh          | 27 +++++----------------------
 6 files changed, 19 insertions(+), 101 deletions(-)

diff --git a/bin/automake.in b/bin/automake.in
index acbe48f..b5f048a 100644
--- a/bin/automake.in
+++ b/bin/automake.in
@@ -3653,7 +3653,7 @@ sub handle_dist ()
     {
       my $archive_defined = option 'no-dist-gzip' ? 0 : 1;
       $archive_defined ||=
-       grep { option "dist-$_" } qw(shar zip tarZ bzip2 lzip xz);
+       grep { option "dist-$_" } qw(zip bzip2 lzip xz);
       error (option 'no-dist-gzip',
             "no-dist-gzip specified but no dist-* specified,\n"
             . "at least one archive format must be enabled")
@@ -6609,9 +6609,7 @@ sub preprocess_file
                 'XZ'          => !! option 'dist-xz',
                 'LZIP'        => !! option 'dist-lzip',
                 'BZIP2'       => !! option 'dist-bzip2',
-                'COMPRESS'    => !! option 'dist-tarZ',
                 'GZIP'        =>  ! option 'no-dist-gzip',
-                'SHAR'        => !! option 'dist-shar',
                 'ZIP'         => !! option 'dist-zip',
 
                 'INSTALL-INFO' =>  ! option 'no-installinfo',
diff --git a/doc/automake.texi b/doc/automake.texi
index e1d0b42..4912d38 100644
--- a/doc/automake.texi
+++ b/doc/automake.texi
@@ -8691,20 +8691,6 @@ default compression ratio, but with a progress indicator:
 Generate a @samp{zip} archive of the distribution.
 @trindex dist-zip
 
address@hidden @code{dist-tarZ}
-Generate a tar archive of the distribution, compressed with the
-historical (and obsolescent) program @command{compress}.  This
-option is deprecated, and it and the corresponding functionality
-will be removed altogether in Automake 2.0.
address@hidden dist-tarZ
-
address@hidden @code{dist-shar}
-Generate a @samp{shar} archive of the distribution.  This format
-archive is obsolescent, and use of this option is deprecated.
-It and the corresponding functionality will be removed altogether
-in Automake 2.0.
address@hidden dist-shar
-
 @end table
 
 The rule @code{dist} (and its historical synonym @code{dist-all})
@@ -10094,23 +10080,6 @@ Hook @code{dist-xz} to @code{dist}.
 Hook @code{dist-zip} to @code{dist}.
 @trindex dist-zip
 
address@hidden @option{dist-shar}
address@hidden Option, @option{dist-shar}
address@hidden dist-shar
-Hook @code{dist-shar} to @code{dist}.  Use of this option
-is deprecated, as the @samp{shar} format is obsolescent and
-problematic.  Support for it will be removed altogether in
-Automake 2.0.
address@hidden dist-shar
-
address@hidden @option{dist-tarZ}
address@hidden Option, @option{dist-tarZ}
address@hidden dist-tarZ
-Hook @code{dist-tarZ} to @code{dist}.  Use of this option
-is deprecated, as the @samp{compress} program is obsolete.
-Support for it will be removed altogether in Automake 2.0.
address@hidden dist-tarZ
-
 @item @option{filename-length-max=99}
 @cindex Option, @option{filename-length-max=99}
 @opindex filename-length-max=99
@@ -10283,8 +10252,7 @@ the source file.  For instance, if the source file is
 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},
address@hidden, @option{dist-lzip}, @option{dist-xz} and
address@hidden options in use.)
address@hidden, @option{dist-lzip} and @option{dist-xz} in use).
 
 These options must be passed as arguments to @code{AM_INIT_AUTOMAKE}
 (@pxref{Macros}) because they can require additional configure checks.
@@ -13164,11 +13132,11 @@ suite failures, please attach the 
@file{test-suite.log} file.
 @c  LocalWords:  installinfo vers MAKEINFO makeinfo MAKEINFOFLAGS noinstall rf
 @c  LocalWords:  mandir thesame alsothesame installman myexecbin DESTDIR Pinard
 @c  LocalWords:  uninstall installdirs uninstalls MOSTLYCLEANFILES mostlyclean
address@hidden  LocalWords:  DISTCLEANFILES MAINTAINERCLEANFILES GZIP gzip shar 
exp
address@hidden  LocalWords:  DISTCLEANFILES MAINTAINERCLEANFILES GZIP gzip exp
 @c  LocalWords:  distdir distcheck distcleancheck listfiles distuninstallcheck
 @c  LocalWords:  VPATH tarfile stdout XFAIL DejaGnu dejagnu DEJATOOL runtest ln
 @c  LocalWords:  RUNTESTDEFAULTFLAGS toolchain RUNTESTFLAGS asis readme DVIPS
address@hidden  LocalWords:  installcheck gzipped tarZ std utils etags mkid cd
address@hidden  LocalWords:  installcheck gzipped std utils etags mkid cd
 @c  LocalWords:  ARGS taggable ETAGSFLAGS lang ctags CTAGSFLAGS GTAGS gtags idl
 @c  LocalWords:  foocc doit idlC multilibs ABIs cmindex defmac ARG enableval FC
 @c  LocalWords:  MSG xtrue DBG pathchk CYGWIN afile proglink versioned CVS's TE
diff --git a/lib/Automake/Options.pm b/lib/Automake/Options.pm
index 737d2a1..3105b11 100644
--- a/lib/Automake/Options.pm
+++ b/lib/Automake/Options.pm
@@ -332,20 +332,18 @@ sub _process_option_list (\%@)
           error ($where, "support for lzma-compressed distribution " .
                          "archives has been removed");
         }
-      # TODO: Make this a fatal error in Automake 2.0.
+      # TODO: Remove this special check in Automake 3.0.
       elsif ($_ eq 'dist-shar')
         {
-          msg ('obsolete', $where,
-               "support for shar distribution archives is deprecated.\n" .
-               "  It will be removed in Automake 2.0");
+          error ($where, "support for shar distribution archives has " .
+                         "been removed.");
         }
-      # TODO: Make this a fatal error in Automake 2.0.
+      # TODO: Remove this special check in Automake 3.0.
       elsif ($_ eq 'dist-tarZ')
         {
-          msg ('obsolete', $where,
-               "support for distribution archives compressed with " .
-               "legacy program 'compress' is deprecated.\n" .
-               "  It will be removed in Automake 2.0");
+          error ($where, "support for distribution archives compressed " .
+                         "with legacy program 'compress' has " .
+                         "been removed.");
         }
       elsif (/^filename-length-max=(\d+)$/)
         {
diff --git a/lib/am/distdir.am b/lib/am/distdir.am
index 0e5f6bd..0e5e586 100644
--- a/lib/am/distdir.am
+++ b/lib/am/distdir.am
@@ -336,24 +336,6 @@ dist-xz: distdir
        tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c 
>$(distdir).tar.xz
        $(am__post_remove_distdir)
 
-?COMPRESS?DIST_ARCHIVES += $(distdir).tar.Z
-.PHONY: dist-tarZ
-dist-tarZ: distdir
-       @echo WARNING: "Support for shar distribution archives is" \
-                      "deprecated." >&2
-       @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
-       tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
-       $(am__post_remove_distdir)
-
-?SHAR?DIST_ARCHIVES += $(distdir).shar.gz
-.PHONY: dist-shar
-dist-shar: distdir
-       @echo WARNING: "Support for distribution archives compressed with" \
-                      "legacy program 'compress' is deprecated." >&2
-       @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
-       shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
-       $(am__post_remove_distdir)
-
 ?ZIP?DIST_ARCHIVES += $(distdir).zip
 .PHONY: dist-zip
 dist-zip: distdir
@@ -363,11 +345,9 @@ dist-zip: distdir
 
 ?LZIP?DIST_TARGETS += dist-lzip
 ?XZ?DIST_TARGETS += dist-xz
-?SHAR?DIST_TARGETS += dist-shar
 ?BZIP2?DIST_TARGETS += dist-bzip2
 ?GZIP?DIST_TARGETS += dist-gzip
 ?ZIP?DIST_TARGETS += dist-zip
-?COMPRESS?DIST_TARGETS += dist-tarZ
 
 endif %?TOPDIR_P%
 
@@ -418,10 +398,6 @@ distcheck: dist
          lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
        *.tar.xz*) \
          xz -dc $(distdir).tar.xz | $(am__untar) ;;\
-       *.tar.Z*) \
-         uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
-       *.shar.gz*) \
-         GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
        *.zip*) \
          unzip $(distdir).zip ;;\
        esac
diff --git a/t/dist-shar.sh b/t/dist-shar.sh
index cd04425..407f54f 100755
--- a/t/dist-shar.sh
+++ b/t/dist-shar.sh
@@ -19,11 +19,11 @@
 required=shar
 . test-init.sh
 
-errmsg='support for shar .*deprecated'
+errmsg='support for shar .*removed'
 
 echo AUTOMAKE_OPTIONS = dist-shar > Makefile.am
 $ACLOCAL
-AUTOMAKE_fails -Wnone -Wobsolete
+AUTOMAKE_fails -Wnone -Wno-error
 grep "^Makefile\\.am:1:.*$errmsg" stderr
 
 cat > configure.ac <<END
@@ -36,12 +36,7 @@ END
 
 rm -rf autom4te*.cache
 $ACLOCAL
-AUTOMAKE_run -Wno-error
+AUTOMAKE_fails -Wnone -Wno-error
 grep "^configure\\.ac:2:.*$errmsg" stderr
 
-$AUTOCONF
-./configure
-$MAKE distcheck
-test -f $distdir.shar.gz
-
 :
diff --git a/t/dist-tarZ.sh b/t/dist-tarZ.sh
index f276481..03a8137 100755
--- a/t/dist-tarZ.sh
+++ b/t/dist-tarZ.sh
@@ -14,28 +14,16 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# Check support for no-dist-gzip with dist-tarZ.
+# Trying to use removed option 'dist-tarZ' should trigger a clear
+# error message.
 
 . test-init.sh
 
-# On Cygwin, as of 9/2/2012, 'compress' is provided by sharutils
-# and is just a dummy script that is not able to actually compress
-# (it can only decompress).  So, check that the 'compress' program
-# is actually able to compress input.
-# Note that, at least on GNU/Linux, 'compress' does (and is
-# documented to) exit with status 2 if the output is larger than
-# the input after (attempted) compression; so we need to pass it
-# an input that it can actually reduce in size when compressing.
-for x in 1 2 3 4 5 6 7 8; do
-  echo aaaaaaaaaaaaaaaaaaaaa
-done | compress -c >/dev/null \
-  || skip_ "cannot find a working 'compress' program"
-
-errmsg=".*legacy .*'compress' .*deprecated"
+errmsg=".*legacy .*'compress'.* removed"
 
 echo AUTOMAKE_OPTIONS = dist-tarZ > Makefile.am
 $ACLOCAL
-AUTOMAKE_fails -Wnone -Wobsolete
+AUTOMAKE_fails -Wnone -Wno-error
 grep "^Makefile\\.am:1:.*$errmsg" stderr
 
 cat > configure.ac <<END
@@ -48,12 +36,7 @@ END
 
 rm -rf autom4te*.cache
 $ACLOCAL
-AUTOMAKE_run -Wno-error
+AUTOMAKE_fails -Wnone -Wno-error
 grep "^configure\\.ac:2:.*$errmsg" stderr
 
-$AUTOCONF
-./configure
-$MAKE distcheck
-test -f dist-tarz-1.0.tar.Z
-
 :
-- 
1.8.3.rc0.19.g7e6a0cc




reply via email to

[Prev in Thread] Current Thread [Next in Thread]