Merge branch 'maint'
authorStefano Lattarini <stefano.lattarini@gmail.com>
Sun, 18 Mar 2012 21:31:45 +0000 (22:31 +0100)
committerStefano Lattarini <stefano.lattarini@gmail.com>
Sun, 18 Mar 2012 21:31:45 +0000 (22:31 +0100)
* maint:
  install-mans: avoid spurious failure with NetBSD make
  install: don't create empty dirs when an empty 'foo_PRIMARY' is used
  aclocal: remove a couple of useless imports
  aclocal: create local directory where to install m4 files

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
15 files changed:
1  2 
HACKING
NEWS
THANKS
aclocal.in
lib/am/lisp.am
lib/am/ltlib.am
lib/am/mans.am
lib/am/progs.am
lib/am/texinfos.am
tests/Makefile.am
tests/installdir.test
tests/instdir-cond.test
tests/instdir-cond2.test
tests/java3.test
tests/list-of-tests.mk

diff --cc HACKING
Simple merge
diff --cc NEWS
--- 1/NEWS
--- 2/NEWS
+++ b/NEWS
@@@ -374,7 -107,26 +374,27 @@@ New in 1.11.2
      the `${infodir}/dir' file, by exporting the new environment variable
      `AM_UPDATE_INFO_DIR' to the value "no".
  
 +Bugs fixed in 1.11.2:
+   - For programs and libraries, automake now detects EXTRA_foo_DEPENDENCIES
+     and adds them to the normal list of dependencies, but without
+     overwriting the foo_DEPENDENCIES variable, which is normally computed
+     by automake.
+   - The 'ar-lib' script now ignores the "s" (symbol index) and "S" (no
+     symbol index) modifiers as well as the "s" action, as the symbol index
+     is created unconditionally by Microsoft lib.  Also, the "q" (quick)
+     action is now a synonym for "r" (replace).  Also, the script has been
+     ignoring the "v" (verbose) modifier already since Automake 1.11.3.
+   - When the 'compile' script is used to wrap MSVC, it now accepts an
+     optional space between the -I, -L and -l options and their respective
+     arguments, for better POSIX compliance.
+   - If "aclocal --install" is used, and the first directory specified with
+     '-I' is non-existent, aclocal will now create it before trying to copy
+     files in it.
+ Bugs fixed in 1.11.0a:
  
  * Bugs introduced by 1.11.2:
  
  
  * Long-standing bugs:
  
 +  - The order of Yacc and Lex flags is fixed to be consistent with other
 +    languages: $(AM_YFLAGS) comes before $(YFLAGS), and $(AM_LFLAGS) before
 +    $(LFLAGS), so that the user variables override the developer variables.
+   - An empty declaration of a "foo_PRIMARY" don't cause anymore the
+     generated install rules to create an empty $(foodir) directory;
+     for example, if Makefile.am contains something like:
+       pkglibexec_SCRIPTS =
+       if FALSE
+       pkglibexec_SCRIPTS += bar.sh
+       endif
+     the $(pkglibexec) directory will not be created upon "make install".
+   - It is now possible for a foo_SOURCES variable to hold Vala sources
+     together with C header files, as well as with sources and headers for
+     other supported languages (e.g., C++).  Previously, only mixing C and
+     Vala sources was supported.
+   - Vala support now works better in VPATH setups.
+   - The "deleted header file problem" for *.am files is avoided by stub
+     rules.  This allows `make' to trigger a rerun of `automake' also if
+     some previously needed `.am' file has been removed.
  
    - "make distcheck" now correctly complains also when "make uninstall"
      leaves one and only one file installed in $(prefix).
diff --cc THANKS
--- 1/THANKS
--- 2/THANKS
+++ b/THANKS
@@@ -152,8 -151,8 +154,9 @@@ Janos Farkas               chexum@shadow.banki.h
  Jared Davis           abiword@aiksaurus.com
  Jason Duell           jcduell@lbl.gov
  Jason Molenda         crash@cygnus.co.jp
+ Javier Jardón                jjardon@gnome.org
  Jeff Bailey           Jbailey@phn.ca
 +Jeff A. Daily         jeff.daily@pnl.gov
  Jeff Garzik           jgarzik@pobox.com
  Jeff Squyres          jsquyres@lam-mpi.org
  Jens Elkner           elkner@imsgroup.de
diff --cc aclocal.in
Simple merge
diff --cc lib/am/lisp.am
Simple merge
diff --cc lib/am/ltlib.am
Simple merge
diff --cc lib/am/mans.am
@@@ -30,16 -30,24 +30,24 @@@ man%SECTION%dir = $(mandir)/man%SECTION
  .PHONY install-man: install-man%SECTION%
  install-man%SECTION%: %DEPS%
        @$(NORMAL_INSTALL)
-       test -z "$(man%SECTION%dir)" || $(MKDIR_P) "$(DESTDIR)$(man%SECTION%dir)"
  if %?NOTRANS_MANS%
  ## Handle MANS with notrans_ prefix
-       @list='%NOTRANS_SECT_LIST%'; test -n "$(man%SECTION%dir)" || exit 0; \
-       { for i in $$list; do echo "$$i"; done;  \
+       @list1='%NOTRANS_SECT_LIST%'; \
+ ?!HAVE_NOTRANS?       list2=''; \
+ ?HAVE_NOTRANS?        list2='%NOTRANS_LIST%'; \
+       test -n "$(man%SECTION%dir)" \
+         && test -n "`echo $$list1$$list2`" \
+         || exit 0; \
+       echo " $(MKDIR_P) '$(DESTDIR)$(man%SECTION%dir)'"; \
+       $(MKDIR_P) "$(DESTDIR)$(man%SECTION%dir)" || exit 1; \
+       { for i in $$list1; do echo "$$i"; done;  \
  ## Extract all items from notrans_man_MANS that should go in this section.
  ## This must be done dynamically to support conditionals.
- ?HAVE_NOTRANS?        l2='%NOTRANS_LIST%'; for i in $$l2; do echo "$$i"; done | \
+       if test -n "$$list2"; then \
+         for i in $$list2; do echo "$$i"; done \
 -## Accept for `man1' files like `foo.1c' but not `sub.1/foo.2' or `foo-2.1.4'.
 +## Accept for 'man1' files like 'foo.1c' but not 'sub.1/foo.2' or 'foo-2.1.4'.
- ?HAVE_NOTRANS?          sed -n '/\.%SECTION%[a-z]*$$/p'; \
+           | sed -n '/\.%SECTION%[a-z]*$$/p'; \
+       fi; \
  ## Extract basename of manpage, change the extension if needed.
        } | while read p; do \
  ## Find the file.
  endif %?NOTRANS_MANS%
  if %?TRANS_MANS%
  ## Handle MANS without notrans_ prefix
-       @list='%TRANS_SECT_LIST%'; test -n "$(man%SECTION%dir)" || exit 0; \
-       { for i in $$list; do echo "$$i"; done; \
+       @list1='%TRANS_SECT_LIST%'; \
+ ?!HAVE_TRANS? list2=''; \
+ ?HAVE_TRANS?  list2='%TRANS_LIST%'; \
+       test -n "$(man%SECTION%dir)" \
+         && test -n "`echo $$list1$$list2`" \
+         || exit 0; \
+       echo " $(MKDIR_P) '$(DESTDIR)$(man%SECTION%dir)'"; \
+       $(MKDIR_P) "$(DESTDIR)$(man%SECTION%dir)" || exit 1; \
+       { for i in $$list1; do echo "$$i"; done;  \
  ## Extract all items from notrans_man_MANS that should go in this section.
  ## This must be done dynamically to support conditionals.
- ?HAVE_TRANS?  l2='%TRANS_LIST%'; for i in $$l2; do echo "$$i"; done | \
- ## Accept for 'man1' files like 'foo.1c' but not 'sub.1/foo.2' or 'foo-2.1.4'.
- ?HAVE_TRANS?    sed -n '/\.%SECTION%[a-z]*$$/p'; \
+       if test -n "$$list2"; then \
+         for i in $$list2; do echo "$$i"; done \
 -## Accept for `man1' files like `foo.1c' but not `sub.1/foo.2' or `foo-2.1.4'.
++## Accept for 'man1' files like `foo.1c' but not 'sub.1/foo.2' or 'foo-2.1.4'.
+           | sed -n '/\.%SECTION%[a-z]*$$/p'; \
+       fi; \
  ## Extract basename of manpage, change the extension if needed.
        } | while read p; do \
  ## Find the file.
diff --cc lib/am/progs.am
@@@ -26,9 -26,12 +26,12 @@@ install-%DIR%PROGRAMS: $(%DIR%_PROGRAMS
  ## Funny invocation because Makefile variable can be empty, leading to
  ## a syntax error in sh.
        @list='$(%DIR%_PROGRAMS)'; test -n "$(%NDIR%dir)" || list=; \
+       if test -n "$$list"; then \
+         echo " $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)'"; \
+         $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)" || exit 1; \
+       fi; \
        for p in $$list; do echo "$$p $$p"; done | \
 -## On Cygwin with libtool test won't see `foo.exe' but instead `foo'.
 +## On Cygwin with libtool test won't see 'foo.exe' but instead 'foo'.
  ## So we check for both.
        sed 's/$(EXEEXT)$$//' | \
        while read p p1; do if test -f $$p%LIBTOOL? || test -f $$p1%; \
Simple merge
  # You should have received a copy of the GNU General Public License
  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
  
 +# Run the tests with the shell detected at configure time.
 +LOG_COMPILER = $(SHELL)
 +
 +TEST_EXTENSIONS = .pl .test .tap
 +TEST_LOG_COMPILER = $(LOG_COMPILER)
 +TAP_LOG_COMPILER = $(LOG_COMPILER)
 +PL_LOG_COMPILER = $(PERL)
 +AM_PL_LOG_FLAGS = -Mstrict -I $(top_builddir)/lib -I $(top_srcdir)/lib -w
 +
 +TAP_LOG_DRIVER = AM_TAP_AWK='$(AWK)' $(SHELL) $(top_srcdir)/lib/tap-driver.sh
 +
 +AM_TAP_LOG_DRIVER_FLAGS = --merge
 +
 +EXTRA_DIST = ax/is ChangeLog-old
 +
 +TESTS = ## Will be updated later.
 +
  XFAIL_TESTS = \
  all.test \
 -auxdir2.test \
 +yacc-bison-skeleton-cxx.test \
 +yacc-bison-skeleton.test \
  cond17.test \
 -dist-auxfile.test \
 -dist-auxfile-2.test \
 -dist-pr109765.test \
  gcj6.test \
- instdir-cond.test \
 +override-conditional-2.test \
 +dist-pr109765.test \
+ instdir-cond2.test \
  java-nobase.test \
  objext-pr10128.test \
 +parallel-tests-many.test \
  pr8365-remake-timing.test \
  lex-subobj-nodep.test \
  remake-am-pr10111.test \
  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
  
  # Test for PR 203.
- # == Report ==
+ # See also automake bug#11030.
++#
++# == Original Report for PR/203 ==
 +# Some standard targets are missing '-local' hooks.  For instance,
 +# installdirs is missing this.  Ideally this would be an automatic
 +# feature of any exported target.
  
  . ./defs || Exit 1
  
 -set -e
 -
+ echo AC_OUTPUT >> configure.in
  cat > Makefile.am << 'END'
+ foodir = $(datadir)/$(distdir)
  installdirs-local:
-       @echo here
+       $(MKDIR_P) $(DESTDIR)$(foodir)
+ install-data-hook: installdirs-local
  END
  
  $ACLOCAL
Simple merge
  
  . ./defs || Exit 1
  
- echo AC_OUTPUT >> configure.ac
 -set -e
 -
+ cat >> configure.in << 'END'
+ AM_CONDITIONAL([ENABLE_FOO], [false])
+ AC_OUTPUT
+ END
+ : > foo
+ : > bar
  
  cat > Makefile.am << 'END'
- pkgdata_DATA =
- libexec_SCRIPTS =
+ pkglibexec_SCRIPTS =
+ if ENABLE_FOO
+ pkgdata_DATA = foo
+ pkglibexec_SCRIPTS += bar
+ endif
  END
  
  $ACLOCAL
Simple merge
@@@ -69,7 -64,16 +69,11 @@@ aclocal-path-install.test 
  aclocal-path-install-serial.test \
  aclocal-path-nonexistent.test \
  aclocal-path-precedence.test \
 -acoutnoq.test \
 -acoutpt.test \
 -acoutpt2.test \
 -acoutqnl.test \
 -acoutbs.test \
 -acoutbs2.test \
+ aclocal-install-fail.test \
+ aclocal-install-mkdir.test \
+ aclocal-no-install-no-mkdir.test \
+ aclocal-verbose-install.test \
 +ac-output-old.tap \
  acsilent.test \
  acsubst.test \
  acsubst2.test \