automake-commit
[Top][All Lists]
Advanced

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

[Automake-commit] [SCM] GNU Automake branch, master, updated. v1.11-1790


From: Stefano Lattarini
Subject: [Automake-commit] [SCM] GNU Automake branch, master, updated. v1.11-1790-gbd34a47
Date: Tue, 24 Jan 2012 08:29:11 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Automake".

http://git.sv.gnu.org/gitweb/?p=automake.git;a=commitdiff;h=bd34a47c51ebc57cce6e9e184630ced52dc71203

The branch, master has been updated
       via  bd34a47c51ebc57cce6e9e184630ced52dc71203 (commit)
      from  3794d01e0d62f5f93118ca6b3c75ddc84995d541 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit bd34a47c51ebc57cce6e9e184630ced52dc71203
Author: Stefano Lattarini <address@hidden>
Date:   Sat Jan 21 11:33:44 2012 +0100

    multilib: move to contrib
    
    This follows up on commit v1.11-665-gc5df21e of 2012-01-17,
    "multilib: deprecate, will be moved to contrib".  See also:
    <http://lists.gnu.org/archive/html/automake-patches/2012-01/msg00109.html>
    
    * NEWS: Update.
    * automake.in ($seen_multilib): Remove.
    (scan_autoconf_traces): Don't trace 'AM_ENABLE_MULTILIB', and don't
    handle it anymore.
    (handle_multilib): Remove.
    (generate_makefile): Don't call it anymore.
    * doc/automake.texi: Remove documentation about multilib support,
    related macros, and helper files.
    * m4/multi.m4: Delete.
    * m4/Makefile.am (dist_automake_ac_DATA): Remove it.
    * lib/am/multilib.am: Delete.
    * lib/am/Makefile.am (dist_am_DATA): Remove it.
    * contrib/multilib/multilib.am: New file, adapted from extracts of
    a Makefile.in generated with automake multilib support.  We did
    this instead of moving and editing 'lib/am/multilib.am' because it
    allows us to license this file with a liberal license that will
    permit users to copy-and-paste it in non-GPLed Makefile.am files
    too).
    * lib/symlink-tree, lib/config-ml.in: Move ...
    * contrib/multilib: ... in here.
    * lib/Makefile.am (dist_script_DATA, dist_pkgvdata_DATA): Update.
    * contrib/multilib/README: New file.
    * contrib/Makefile.am (EXTRA_DIST): Add the files created or moved
    in 'contrib/multlib'.
    * tests/multilib.test: Update and enhance a little.
    * tests/help-multilib.test: Likewise.

-----------------------------------------------------------------------

Summary of changes:
 NEWS                                   |    8 ++--
 automake.in                            |   19 ---------
 contrib/Makefile.am                    |    4 ++
 contrib/multilib/README                |    9 ++++
 {lib => contrib/multilib}/config-ml.in |    0
 contrib/multilib/multilib.am           |   47 +++++++++++++++++++++
 {lib => contrib/multilib}/symlink-tree |    0
 doc/automake.texi                      |   54 +-----------------------
 lib/Makefile.am                        |    6 ++-
 lib/am/Makefile.am                     |    1 -
 lib/am/multilib.am                     |   60 ---------------------------
 m4/Makefile.am                         |    1 -
 m4/multi.m4                            |   70 --------------------------------
 tests/help-multilib.test               |    6 ++-
 tests/multlib.test                     |   61 +++++++++++++++------------
 15 files changed, 108 insertions(+), 238 deletions(-)
 create mode 100644 contrib/multilib/README
 rename {lib => contrib/multilib}/config-ml.in (100%)
 create mode 100644 contrib/multilib/multilib.am
 rename {lib => contrib/multilib}/symlink-tree (100%)
 delete mode 100644 lib/am/multilib.am
 delete mode 100644 m4/multi.m4

diff --git a/NEWS b/NEWS
index 03ad438..63796cc 100644
--- a/NEWS
+++ b/NEWS
@@ -4,15 +4,15 @@ New in 1.11a:
 
   - Support for automatic de-ANSI-fication has been removed.
 
+  - The support for the "obscure" multilib feature has been removed
+    from Automake core (but remains available in the 'contrib/'
+    directory of the Automake distribution).
+
   - Support for ".log -> .html" conversion and the check-html and
     recheck-html targets has been removed from Automake core (but
     remains available in the 'contrib/' directory of the Automake
     distribution).
 
-  - The support for the "obscure" multilib feature has been deprecated,
-    and will be moved out of the automake core in the next major Automake
-    release (1.12).
-
   - The deprecated `lzma' compression format for distribution archives
     has been removed, in favor of `xz' and `lzip'.
 
diff --git a/automake.in b/automake.in
index 160210c..6944724 100644
--- a/automake.in
+++ b/automake.in
@@ -386,9 +386,6 @@ my $package_version = '';
 # Where version is defined.
 my $package_version_location;
 
-# TRUE if we've seen AM_ENABLE_MULTILIB.
-my $seen_multilib = 0;
-
 # TRUE if we've seen AM_PROG_AR
 my $seen_ar = 0;
 
@@ -3697,16 +3694,6 @@ sub handle_tags
     }
 }
 
-# Handle multilib support.
-sub handle_multilib
-{
-  if ($seen_multilib && $relative_dir eq '.')
-    {
-      $output_rules .= &file_contents ('multilib', new Automake::Location);
-      push (@all, 'all-multi');
-    }
-}
-
 
 # user_phony_rule ($NAME)
 # -----------------------
@@ -5224,7 +5211,6 @@ sub scan_autoconf_traces ($)
                AC_SUBST_TRACE => 1,
                AM_AUTOMAKE_VERSION => 1,
                AM_CONDITIONAL => 2,
-               AM_ENABLE_MULTILIB => 0,
                AM_GNU_GETTEXT => 0,
                AM_GNU_GETTEXT_INTL_SUBDIR => 0,
                AM_INIT_AUTOMAKE => 0,
@@ -5386,10 +5372,6 @@ sub scan_autoconf_traces ($)
        {
          $configure_cond{$args[1]} = $where;
        }
-      elsif ($macro eq 'AM_ENABLE_MULTILIB')
-       {
-         $seen_multilib = $where;
-       }
       elsif ($macro eq 'AM_GNU_GETTEXT')
        {
          $seen_gettext = $where;
@@ -8110,7 +8092,6 @@ sub generate_makefile ($$)
       define_pretty_variable ('DIST_SOURCES', TRUE, INTERNAL, @dist_sources);
     }
 
-  handle_multilib;
   handle_texinfo;
   handle_emacs_lisp;
   handle_python;
diff --git a/contrib/Makefile.am b/contrib/Makefile.am
index ce1d699..91c1cab 100644
--- a/contrib/Makefile.am
+++ b/contrib/Makefile.am
@@ -19,5 +19,9 @@
 
 EXTRA_DIST = \
   check-html.am \
+  multilib/README \
+  multilib/config-ml.in \
+  multilib/symlink-tree \
+  multilib/multilib.am \
   multilib/multi.m4 \
   README
diff --git a/contrib/multilib/README b/contrib/multilib/README
new file mode 100644
index 0000000..35c726f
--- /dev/null
+++ b/contrib/multilib/README
@@ -0,0 +1,9 @@
+Minimal support for multilib builds.
+
+For a little more information, see:
+<http://airs.com/ian/configure/configure_8.html>
+
+The master (and probably more up-to-date) copies of the 'config-ml.in'
+and 'symlink-tree' files are maintained in the GCC development tree
+at <http://gcc.gnu.org/svn.html>.  The same is probably true also for
+the 'multi.m4' file.
diff --git a/lib/config-ml.in b/contrib/multilib/config-ml.in
similarity index 100%
rename from lib/config-ml.in
rename to contrib/multilib/config-ml.in
diff --git a/contrib/multilib/multilib.am b/contrib/multilib/multilib.am
new file mode 100644
index 0000000..f38921c
--- /dev/null
+++ b/contrib/multilib/multilib.am
@@ -0,0 +1,47 @@
+## automake - create Makefile.in from Makefile.am
+
+## Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+## 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+## Foundation, Inc.
+## This Makefile.in is free software; the Free Software Foundation
+## gives unlimited permission to copy and/or distribute it,
+## with or without modifications, as long as this notice is preserved.
+
+## 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.
+
+MULTISRCTOP =
+MULTIBUILDTOP =
+MULTIDIRS =
+MULTISUBDIR =
+MULTIDO = true
+MULTICLEAN = true
+
+# GNU Make needs to see an explicit $(MAKE) variable in the command it
+# runs to enable its job server during parallel builds.  Hence the
+# comments below.
+all-multi:
+       $(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do # $(MAKE)
+install-multi:
+       $(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do # $(MAKE)
+mostlyclean-multi:
+       $(MULTICLEAN) $(AM_MAKEFLAGS) DO=mostlyclean multi-clean # $(MAKE)
+clean-multi:
+       $(MULTICLEAN) $(AM_MAKEFLAGS) DO=clean multi-clean # $(MAKE)
+distclean-multi:
+       $(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean # $(MAKE)
+maintainer-clean-multi:
+       $(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean # $(MAKE)
+
+.MAKE .PHONY: all-multi clean-multi distclean-multi install-am \
+             install-multi maintainer-clean-multi mostlyclean-multi
+
+install-exec-local: install-multi
+
+all-local: all-multi
+mostlyclean-local: mostlyclean-multi
+clean-local: clean-multi
+distclean-local: distclean-multi
+maintainer-clean-local: maintainer-clean-multi
diff --git a/lib/symlink-tree b/contrib/multilib/symlink-tree
similarity index 100%
rename from lib/symlink-tree
rename to contrib/multilib/symlink-tree
diff --git a/doc/automake.texi b/doc/automake.texi
index 0cdeb7b..8ff081e 100644
--- a/doc/automake.texi
+++ b/doc/automake.texi
@@ -354,7 +354,6 @@ Miscellaneous Rules
 
 * Tags::                        Interfacing to cscope, etags and mkid
 * Suffixes::                    Handling new file extensions
-* Multilibs::                   Support for multilibs (deprecated, soon to be 
removed).
 
 Conditionals
 
@@ -2303,14 +2302,6 @@ you are encouraged to fetch the latest versions of these 
files from
 @url{http://savannah.gnu.org/git/?group=config} before making a
 release.
 
address@hidden config-ml.in
-This file is not a program, it is a @file{configure} fragment used for
-multilib support (@pxref{Multilibs}).  Since the Automake multilib
-support has been @emph{deprecated} and targeted for removal, this
-file is going to be @emph{removed from the Automake core} in the next
-major release.  The master copy of this file is maintained in the GCC
-tree at @url{http://gcc.gnu.org/svn.html}.
-
 @item depcomp
 This program understands how to run a compiler so that it will
 generate not only the desired output but also dependency information
@@ -2347,15 +2338,6 @@ longer installed automatically, and it should be safe to 
remove it.
 @item py-compile
 This is used to byte-compile Python scripts.
 
address@hidden symlink-tree
-This program duplicates a tree of directories, using symbolic links
-instead of copying files.  Such an operation is performed when building
-multilibs (@pxref{Multilibs}).  Since the Automake multilib support has
-been @emph{deprecated} and targeted for removal, this file is going to
-be @emph{removed from the Automake core} in the next major release.
-The master copy of this file is maintained in the GCC tree at
address@hidden://gcc.gnu.org/svn.html}.
-
 @item test-driver
 This implements the default test driver offered by the parallel
 testsuite harness.
@@ -3958,21 +3940,6 @@ Automake ships with several Autoconf macros that you can 
use from your
 
 @table @code
 
address@hidden AM_ENABLE_MULTILIB
address@hidden AM_ENABLE_MULTILIB
-
-This is used when a ``multilib'' library is being built.  Please be
-aware that multilib support @emph{will be removed} from the Automake
-core in the next major release, and then @emph{this macro will go away
-as well} (even if a ``frozen'' version of will remain available in the
address@hidden/} directory of the Automake distribution).
-
-The first optional argument is the name of the @file{Makefile} being
-generated; it defaults to @samp{Makefile}.  The second optional argument
-is used to find the top source directory; it defaults to the empty
-string (generally this should not be used unless you are familiar with
-the internals).  @xref{Multilibs}.
-
 @item AM_INIT_AUTOMAKE([OPTIONS])
 @itemx AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
 @acindex AM_INIT_AUTOMAKE
@@ -10344,7 +10311,6 @@ There are a few rules and variables that didn't fit 
anywhere else.
 @menu
 * Tags::                        Interfacing to cscope, etags and mkid
 * Suffixes::                    Handling new file extensions
-* Multilibs::   Support for multilibs (deprecated, soon to be removed).
 @end menu
 
 
@@ -10472,22 +10438,6 @@ Automake generate the suffix list for 
@code{.SUFFIXES}.  Any given
 @code{SUFFIXES} go at the start of the generated suffixes list, followed
 by Automake generated suffixes not already in the list.
 
address@hidden Multilibs
address@hidden Support for Multilibs (deprecated, soon to be removed).
-
-Automake used to support an obscure feature called multilibs.  @emph{This
-feature is now deprecated, and will be removed in the next major Automake
-version}.  Still, its implementation will remain available in the
address@hidden/} directory of the Automake distribution, so it should be
-very easy for motivated users to continue to use it in their projects,
-if they really need to.
-
-A @dfn{multilib} is a library that is built for multiple different ABIs
-at a single time; each time the library is built with a different target
-flag combination.  This is only useful when the library is intended to
-be cross-compiled, and it is almost exclusively used for compiler
-support libraries.
-
 @node Include
 @chapter Include
 
@@ -14286,7 +14236,7 @@ parentheses is the number of generated test cases.
 @c  LocalWords:  AUX var symlink deps Wno Wnone package's aclocal's distclean
 @c  LocalWords:  ltmain xref LIBSOURCE LIBSOURCES LIBOBJ MEMCMP vs RANLIB CXX
 @c  LocalWords:  LDFLAGS LIBTOOL libtool XTRA LIBS gettext's acdir APIVERSION
address@hidden  LocalWords:  dirlist noindent usr MULTILIB multilib Multilibs 
TIOCGWINSZ sc
address@hidden  LocalWords:  dirlist noindent usr TIOCGWINSZ sc
 @c  LocalWords:  GWINSZ termios SRCDIR tarball bzip LISPDIR lispdir XEmacs CCAS
 @c  LocalWords:  emacsen MicroEmacs CCASFLAGS UX GCJ gcj GCJFLAGS posix DMALLOC
 @c  LocalWords:  dmalloc ldmalloc REGEX regex DEPDIR DEP DEFUN aclocaldir fi
@@ -14318,7 +14268,7 @@ parentheses is the number of generated test cases.
 @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 
multilibbing cd
address@hidden  LocalWords:  installcheck gzipped tarZ 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/Makefile.am b/lib/Makefile.am
index 426c63d..2e6445b 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -20,7 +20,10 @@
 
 SUBDIRS = Automake am
 
-dist_pkgvdata_DATA = COPYING INSTALL texinfo.tex config-ml.in
+dist_pkgvdata_DATA = \
+  COPYING \
+  INSTALL \
+  texinfo.tex
 
 ## These must all be executable when installed.  However, if we use
 ## _SCRIPTS, then the program transform will be applied, which is not
@@ -38,7 +41,6 @@ dist_script_DATA = \
   depcomp \
   compile \
   py-compile \
-  symlink-tree \
   ar-lib \
   test-driver \
   tap-driver.sh \
diff --git a/lib/am/Makefile.am b/lib/am/Makefile.am
index a174d20..251df05 100644
--- a/lib/am/Makefile.am
+++ b/lib/am/Makefile.am
@@ -46,7 +46,6 @@ ltlib.am \
 ltlibrary.am \
 mans-vars.am \
 mans.am \
-multilib.am \
 program.am \
 progs.am \
 python.am \
diff --git a/lib/am/multilib.am b/lib/am/multilib.am
deleted file mode 100644
index 6897b5d..0000000
--- a/lib/am/multilib.am
+++ /dev/null
@@ -1,60 +0,0 @@
-## automake - create Makefile.in from Makefile.am
-## Copyright (C) 1998, 2001, 2003, 2004 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/>.
-## Multilib support variables.
-MULTISRCTOP =
-MULTIBUILDTOP =
-MULTIDIRS =
-MULTISUBDIR =
-MULTIDO = true
-MULTICLEAN = true
-
-# GNU Make needs to see an explicit $(MAKE) variable in the command it
-# runs to enable its job server during parallel builds.  Hence the
-# comments below.
-
-all-multi:
-       $(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do # $(MAKE)
-install-multi:
-       $(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do # $(MAKE)
-
-.MAKE .PHONY: all-multi install-multi
-
-
-mostlyclean-multi:
-       $(MULTICLEAN) $(AM_MAKEFLAGS) DO=mostlyclean multi-clean # $(MAKE)
-clean-multi:
-       $(MULTICLEAN) $(AM_MAKEFLAGS) DO=clean multi-clean # $(MAKE)
-distclean-multi:
-       $(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean # $(MAKE)
-maintainer-clean-multi:
-       $(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean # $(MAKE)
-
-.MAKE .PHONY: mostlyclean-multi clean-multi distclean-multi 
maintainer-clean-multi
-
-install-exec-am: install-multi
-## No uninstall rule?
-
-
-## These cleaning rules are recursive.  They should not be
-## registered as dependencies of *-am rules.  For instance
-## otherwise running `make clean' would cause both
-## clean-multi and mostlyclean-multi to be run, while only
-## clean-multi is really expected (since clean-multi recursively
-## call clean, it already do the job of mostlyclean).
-mostlyclean: mostlyclean-multi
-clean: clean-multi
-distclean: distclean-multi
-maintainer-clean: maintainer-clean-multi
diff --git a/m4/Makefile.am b/m4/Makefile.am
index 95cb44d..b2f937d 100644
--- a/m4/Makefile.am
+++ b/m4/Makefile.am
@@ -41,7 +41,6 @@ make.m4 \
 minuso.m4 \
 missing.m4 \
 mkdirp.m4 \
-multi.m4 \
 obsol-gt.m4 \
 obsol-lt.m4 \
 obsolete.m4 \
diff --git a/m4/multi.m4 b/m4/multi.m4
deleted file mode 100644
index bbb964f..0000000
--- a/m4/multi.m4
+++ /dev/null
@@ -1,70 +0,0 @@
-##                                                          -*- Autoconf -*-
-# Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2011,
-# 2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 8
-
-# AM_ENABLE_MULTILIB([MAKEFILE], [REL-TO-TOP-SRCDIR])
-# ---------------------------------------------------
-# Add --enable-multilib to configure.
-AC_DEFUN([AM_ENABLE_MULTILIB],
-[m4_warn([obsolete], [$0 will be removed from Automake core soon.
-Files implementing the "multilib" feature are (and will remain) available
-to the 'contrib/' directory in the Automake distribution.])]dnl
-[# Default to --enable-multilib
-AC_ARG_ENABLE([multilib],
-[AS_HELP_STRING(
-   [--enable-multilib],
-   [build many library versions (default)])],
-[case "$enableval" in
-  yes) multilib=yes ;;
-  no)  multilib=no ;;
-  *)   AC_MSG_ERROR([bad value $enableval for multilib option]) ;;
- esac],
-             [multilib=yes])
-
-# We may get other options which we leave undocumented:
-# --with-target-subdir, --with-multisrctop, --with-multisubdir
-# See config-ml.in if you want the gory details.
-
-if test "$srcdir" = "."; then
-  if test "$with_target_subdir" != "."; then
-    multi_basedir="$srcdir/$with_multisrctop../$2"
-  else
-    multi_basedir="$srcdir/$with_multisrctop$2"
-  fi
-else
-  multi_basedir="$srcdir/$2"
-fi
-AC_SUBST([multi_basedir])
-
-# Even if the default multilib is not a cross compilation,
-# it may be that some of the other multilibs are.
-if test $cross_compiling = no && test $multilib = yes \
-   && test "x${with_multisubdir}" != x ; then
-   cross_compiling=maybe
-fi
-
-AC_OUTPUT_COMMANDS([
-# Only add multilib support code if we just rebuilt the top-level
-# Makefile.
-case " $CONFIG_FILES " in
- *" ]m4_default([$1],Makefile)[ "*)
-   ac_file=]m4_default([$1],Makefile)[ . ${multi_basedir}/config-ml.in
-   ;;
-esac],
-                  [
-srcdir="$srcdir"
-host="$host"
-target="$target"
-with_multisubdir="$with_multisubdir"
-with_multisrctop="$with_multisrctop"
-with_target_subdir="$with_target_subdir"
-ac_configure_args="${multilib_arg} ${ac_configure_args}"
-multi_basedir="$multi_basedir"
-CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
-CC="$CC"])])dnl
diff --git a/tests/help-multilib.test b/tests/help-multilib.test
index d4df64d..6c31cde 100755
--- a/tests/help-multilib.test
+++ b/tests/help-multilib.test
@@ -1,5 +1,5 @@
 #! /bin/sh
-# Copyright (C) 2010, 2011 Free Software Foundation, Inc.
+# Copyright (C) 2010, 2011, 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
@@ -16,6 +16,8 @@
 
 # Make sure that our macro `AM_ENABLE_MULTILIB' adds proper text to
 # the configure help screen.
+# FIXME: the features tested by this script has been moved in contrib.
+# FIXME: We should move this script accordingly.
 
 . ./defs || Exit 1
 
@@ -24,7 +26,7 @@ AC_INIT([$me], [1.0])
 AM_ENABLE_MULTILIB
 END
 
-$ACLOCAL
+cat "$top_testsrcdir"/contrib/multilib/multi.m4 > aclocal.m4
 $AUTOCONF
 
 grep_configure_help --enable-multilib ' many library versions \(default\)'
diff --git a/tests/multlib.test b/tests/multlib.test
index 894effb..7401d9e 100755
--- a/tests/multlib.test
+++ b/tests/multlib.test
@@ -17,26 +17,19 @@
 
 # Check multilib support.
 # Based on a test case from Ralf Corsepius.
+# FIXME: the features tested by this script has been moved in contrib.
+# FIXME: We should move this script accordingly.
 
 required='gcc GNUmake'
 . ./defs || Exit 1
 
-# Multilib support has been deprecated in the Automake core.
+mldir=$top_testsrcdir/contrib/multilib
+mkdir m4
+cp "$mldir"/config-ml.in "$mldir"/symlink-tree .
+cp "$mldir"/multi.m4 m4
 
-cat >>configure.in <<'END'
-AM_ENABLE_MULTILIB([Makefile], [.])
-END
-
-$ACLOCAL
-$AUTOCONF -Wall -Werror 2>stderr && { cat stderr >&2; Exit 1; }
-cat stderr >&2
-grep '^configure\.in:4:.*AM_ENABLE_MULTILIB.* removed.* soon' stderr
-grep '"multilib".*feature' stderr
-grep 'contrib.* in the Automake distribution' stderr
-
-rm -rf autom4te*.cache aclocal.m4 configure
-
-# Functional tests now.
+ACLOCAL_PATH=${ACLOCAL_PATH+"$ACLOCAL_PATH:"}`pwd`/m4
+export ACLOCAL_PATH
 
 cat >configure.in <<'END'
 AC_INIT([multlib], [1.0])
@@ -66,12 +59,18 @@ PATH=`pwd`$PATH_SEPARATOR$PATH
 cat >Makefile.am <<'EOF'
 SUBDIRS = @subdirs@
 EXTRA_DIST = config-ml.in symlink-tree
+check-all:
+       test -f debug/libfoo/libfoo.a
+       test -f debug/libbar/libbar.a
+       test -f libfoo/libfoo.a
+       test -f libbar/libbar.a
 EOF
 
 # libfoo tests multilib supports when there are no subdirectories
 # libbar tests multilib supports when there are subdirectories
 
 mkdir libfoo
+cp "$mldir"/multilib.am libfoo/
 
 cat >libfoo/configure.in <<'END'
 AC_PREREQ(2.57)
@@ -92,11 +91,13 @@ END
 cat >libfoo/Makefile.am <<'END'
 noinst_LIBRARIES = libfoo.a
 libfoo_a_SOURCES = foo.c
+include $(top_srcdir)/multilib.am
 END
 
 : > libfoo/foo.c
 
 mkdir libbar
+cp "$mldir"/multilib.am libbar/
 
 cat >libbar/configure.in <<'END'
 AC_PREREQ(2.57)
@@ -117,35 +118,38 @@ cat >libbar/Makefile.am <<'END'
 SUBDIRS = sub
 noinst_LIBRARIES = libbar.a
 libbar_a_SOURCES = bar.c
+include $(top_srcdir)/multilib.am
 END
 
 mkdir libbar/sub
-
-: >libbar/sub/Makefile.am
-
+echo 'include $(top_srcdir)/multilib.am' >libbar/sub/Makefile.am
 : > libbar/bar.c
 
-cp "$am_scriptdir"/config-ml.in "$am_scriptdir"/symlink-tree .
-
-$ACLOCAL -Wno-obsolete
-$AUTOCONF -Werror -Wall -Wno-obsolete
+$ACLOCAL
+$AUTOCONF
 $AUTOMAKE --add-missing
+
 cd libfoo
 $ACLOCAL
-$AUTOCONF -Werror -Wall -Wno-obsolete
+$AUTOCONF
 $AUTOMAKE --add-missing
-cd ../libbar
+cd ..
+
+cd libbar
 $ACLOCAL
-$AUTOCONF -Werror -Wall -Wno-obsolete
+$AUTOCONF
 $AUTOMAKE --add-missing
 cd ..
 
-
 # Check VPATH builds
 mkdir build
 cd build
 ../configure --enable-multilib CC=mycc
 $MAKE
+test -f debug/libfoo/libfoo.a
+test -f debug/libbar/libbar.a
+test -f libfoo/libfoo.a
+test -f libbar/libbar.a
 $MAKE install
 $MAKE distcleancheck
 
@@ -153,4 +157,7 @@ $MAKE distcleancheck
 cd ..
 # Why to I have to specify --with-target-subdir?
 ./configure --enable-multilib --with-target-subdir=. CC=mycc
-$MAKE
+$MAKE check
+DISTCHECK_CONFIGURE_FLAGS='--enable-multilib CC=mycc' $MAKE distcheck
+
+:


hooks/post-receive
-- 
GNU Automake



reply via email to

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