]> git.ipfire.org Git - thirdparty/automake.git/commitdiff
[ng] cleanup: drop support for DJGPP, Windows 95/98/ME, MS-DOS
authorStefano Lattarini <stefano.lattarini@gmail.com>
Tue, 29 May 2012 17:51:22 +0000 (19:51 +0200)
committerStefano Lattarini <stefano.lattarini@gmail.com>
Wed, 30 May 2012 06:58:31 +0000 (08:58 +0200)
See also:
<http://lists.gnu.org/archive/html/automake-ng/2012-05/msg00104.html>

* automake.in (BEGIN): Don't override $ENV{SHELL} for DJGPP.
* bootstrap: Don't special case the default value for BOOTSTRAP_SHELL
on DJGPP.  While we are at, allow that variable to be overridden from
the environment.
* configure.ac (MODIFICATION_DELAY): Define to '2' unconditionally, as
we don't have to cater to quirks of Windows 95/98/ME anymore.
* lib/am/texibuild.am: Remove support for '*.iNN' files used on DJGPP.
* lib/am/texinfos.am: Likewise.
* NG-NEWS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
NG-NEWS
automake.in
bootstrap.sh
configure.ac
lib/am/texibuild.am
lib/am/texinfos.am
t/txinfo19.sh [deleted file]

diff --git a/NG-NEWS b/NG-NEWS
index d8cf72c87d875e61f4f4bd086decd26266b687aa..ed36fe26190e5a6e2da4ec363618681170e216ce 100644 (file)
--- a/NG-NEWS
+++ b/NG-NEWS
@@ -224,6 +224,9 @@ Obsolete Features Removed
   $(AM_CPPFLAGS) instead, which has been supported and recommended for
   a long time.
 
+* Support for DJGPP, Windows 95/98/ME and MS-DOS has been removed.
+  Of course, MinGW/MSYS and Cygwin on Windows 2000 and later are still
+  fully supported.
 
 Source Files with Unknown Extensions
 ====================================
index eaf00a72c9bfeb754cc3339f843749a318d8fbca..27bec1846423284c01419446b3c1330291714549 100644 (file)
@@ -31,15 +31,6 @@ BEGIN
 {
   my $perllibdir = $ENV{'perllibdir'} || '@datadir@/@PACKAGE@-@APIVERSION@';
   unshift @INC, (split '@PATH_SEPARATOR@', $perllibdir);
-
-  # Override SHELL.  This is required on DJGPP so that system() uses
-  # bash, not COMMAND.COM which doesn't quote arguments properly.
-  # Other systems aren't expected to use $SHELL when Automake
-  # runs, but it should be safe to drop the "if DJGPP" guard if
-  # it turns up other systems need the same thing.  After all,
-  # if SHELL is used, ./configure's SHELL is always better than
-  # the user's SHELL (which may be something like tcsh).
-  $ENV{'SHELL'} = '@SHELL@' if exists $ENV{'DJDIR'};
 }
 
 use Class::Struct ();
index e65e06cbb360284d1895635aa0abf2207cb85dcb..0b7096adf70ba0f85e0123639159bdae22ee1544 100755 (executable)
@@ -31,6 +31,8 @@ export AUTOCONF  # might be used by aclocal and/or automake
 export AUTOM4TE  # ditto
 : ${PERL=perl}
 
+BOOTSTRAP_SHELL=${BOOTSTRAP_SHELL-/bin/sh}
+
 # Variables to substitute.
 VERSION=`sed -ne '/AC_INIT/s/^[^[]*\[[^[]*\[\([^]]*\)\].*$/\1/p' configure.ac`
 PACKAGE=automake
@@ -40,15 +42,6 @@ PERL_THREADS=0
 # rule of our Makefile.
 RELEASE_YEAR=2012
 
-# Override SHELL.  This is required on DJGPP so that Perl's system()
-# uses bash, not COMMAND.COM which doesn't quote arguments properly.
-# It's not used otherwise.
-if test -n "$DJDIR"; then
-  BOOTSTRAP_SHELL=/dev/env/DJDIR/bin/bash.exe
-else
-  BOOTSTRAP_SHELL=/bin/sh
-fi
-
 # Read the rule for calculating APIVERSION and execute it.
 apiver_cmd=`sed -ne 's/\[\[/[/g;s/\]\]/]/g;/^APIVERSION=/p' configure.ac`
 eval "$apiver_cmd"
index c83f779ecf6412415e4aa2d68c7013da4b98ad61..8bcb4adad6b2f0bdaa7c4735361c6d6e92ca9291 100644 (file)
@@ -200,16 +200,12 @@ result=no
 test "x$am_cv_prog_ln" = xln && result=yes
 AC_MSG_RESULT([$result])
 
-# The amount we should wait after modifying files depends on the platform.
-# On Windows '95, '98 and ME, files modifications have 2-seconds
-# granularity and can be up to 3 seconds in the future w.r.t. the
-# system clock.  When it is important to ensure one file is older
+# The amount we should wait after modifying files.
+# FIXME: for file systems with sub-second timestamp resolutions, this
+# FIXME: might be just one second (or even less if 'sleep' supports
+# FIXME: non-integer arguments); is it worth pursuing that road?
 # than another we wait at least 5 seconds between creations.
-case $build in
-  *-pc-msdosdjgpp) MODIFICATION_DELAY=5;;
-  *)               MODIFICATION_DELAY=2;;
-esac
-AC_SUBST([MODIFICATION_DELAY])
+AC_SUBST([MODIFICATION_DELAY], [2])
 
 ## ------------------------------------------- ##
 ##  Test for things needed by the test suite.  ##
index 4fb196b508401c4cd7d9cf0aceb0ba1b0a1b6d33..039e6de3872f7a6e82c938c203f6943729093a0f 100644 (file)
 ## 2) If the texinfo file has some minor mistakes which cause makeinfo
 ##    to fail, the info files are not removed.  (They are needed by the
 ##    developer while he writes documentation.)
-## *.iNN files are used on DJGPP.  See the comments in install-info-am
        %AM_V_MAKEINFO%restore=: && backupdir="$(am__leading_dot)am$$$$" && \
 ?INSRC?        am__cwd=`pwd` && $(am__cd) $(srcdir) && \
        rm -rf $$backupdir && mkdir $$backupdir && \
 ## If makeinfo is not installed we must not backup the files so
 ## 'missing' can do its job and touch $@ if it exists.
        if ($(MAKEINFO) --version) >/dev/null 2>&1; then \
-         for f in $@ $@-[0-9] $@-[0-9][0-9] $(@:.info=).i[0-9] $(@:.info=).i[0-9][0-9]; do \
+         for f in $@ $@-[0-9] $@-[0-9][0-9]; do \
            if test -f $$f; then mv $$f $$backupdir; restore=mv; else :; fi; \
          done; \
        else :; fi && \
index fa1b64227b3e6a7f78dda6cdd7938459174ebb12..7a02232db13087e696ff6c559a2dee47082a2422 100644 (file)
@@ -194,18 +194,7 @@ install-info-am: $(INFO_DEPS)
            $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
          esac; \
          if test -f $$file; then d=.; else d=$(srcdir); fi; \
-## 8+3 filesystems cannot deal with foo.info-N filenames: they all
-## conflict.  DJGPP comes with a tool, DJTAR, that will rename these
-## files to foo.iNN while extracting the archive.  DJGPP's makeinfo
-## is patched to grok these filenames.  However we have to account
-## for the renaming when installing the info files.
-##
-## If $file == foo.info, then $file_i == foo.i.  The reason we use two
-## shell commands instead of one ('s|\.info$$|.i|') is so that a suffix-less
-## 'foo' becomes 'foo.i' too.
-         file_i=`echo "$$file" | sed 's|\.info$$||;s|$$|.i|'`; \
-         for ifile in $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9] \
-                      $$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \
+         for ifile in $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9]; do \
            if test -f $$ifile; then \
              echo "$$ifile"; \
            else : ; fi; \
diff --git a/t/txinfo19.sh b/t/txinfo19.sh
deleted file mode 100755 (executable)
index 63417f8..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2003-2012 Free Software Foundation, Inc.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-# Test support for DJGPP's .iNN info files.
-
-required=makeinfo
-. ./defs || Exit 1
-
-echo AC_OUTPUT >> configure.ac
-
-cat > Makefile.am << 'END'
-info_TEXINFOS = main.texi
-END
-
-cat > main.texi << 'END'
-\input texinfo
-@setfilename main.info
-@settitle main
-@node Top
-Hello walls.
-@bye
-END
-
-$ACLOCAL
-$AUTOMAKE --add-missing
-$AUTOCONF
-
-./configure "--infodir=`pwd`/_inst"
-$MAKE
-
-# Make sure .iNN files are installed.
-: > main.i1
-: > main.i21
-$MAKE install
-test -f _inst/main.i1
-test -f _inst/main.i21
-
-# They should be uninstalled too.
-$MAKE uninstall
-test ! -f _inst/main.i1
-test ! -f _inst/main.i21
-
-# Make sure rebuild rules erase old .iNN files when they run makeinfo.
-$sleep
-touch main.texi
-test -f main.i1
-test -f main.i21
-$MAKE
-test ! -f main.i1
-test ! -f main.i21
-
-# Finally, we also want them erased by maintainer-clean.
-: > main.i7
-: > main.i39
-$MAKE maintainer-clean
-test ! -f main.i7
-test ! -f main.i39
-
-: