automake-commit
[Top][All Lists]
Advanced

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

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


From: Ralf Wildenhues
Subject: [Automake-commit] [SCM] GNU Automake branch, branch-1.11, updated. v1.11.1-368-gd414b6f
Date: Mon, 11 Apr 2011 05:10:22 +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=d414b6fb521e7209136c76f4efe28316c2084d7f

The branch, branch-1.11 has been updated
       via  d414b6fb521e7209136c76f4efe28316c2084d7f (commit)
       via  1ae0d32e09b89de68955485fbc906202832f7d74 (commit)
       via  df9b3bc2212dff5edea3dc60abe93ee61e5283f9 (commit)
       via  744705d420e809cc3da27a253892aa69defec4ce (commit)
       via  38f41a03549259cc1a70d5da10b082b1ba86d04b (commit)
      from  ce215083c43fb53a4aa123a1ea9a1a297d335e0b (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 d414b6fb521e7209136c76f4efe28316c2084d7f
Merge: ce21508 1ae0d32
Author: Ralf Wildenhues <address@hidden>
Date:   Mon Apr 11 07:08:16 2011 +0200

    Merge branch 'maint' into branch-1.11

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

Summary of changes:
 ChangeLog                                          |   49 ++++++++++++++++++++
 NEWS                                               |    5 ++-
 THANKS                                             |    1 +
 automake.in                                        |   10 +++-
 lib/depcomp                                        |    8 ++-
 tests/Makefile.am                                  |    2 +
 tests/Makefile.in                                  |    2 +
 tests/defs.in                                      |    8 +++
 tests/{depcomp9.test => depcomp10.test}            |   25 +++-------
 tests/instdir-java.test                            |    3 +-
 tests/instfail-java.test                           |    3 +-
 ...{parallel-tests-subdir.test => java-check.test} |   47 ++++++++++++------
 tests/java.test                                    |    3 +-
 13 files changed, 121 insertions(+), 45 deletions(-)
 copy tests/{depcomp9.test => depcomp10.test} (61%)
 mode change 100755 => 100644
 copy tests/{parallel-tests-subdir.test => java-check.test} (54%)

diff --git a/ChangeLog b/ChangeLog
index eb2e233..9ec4090 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,52 @@
+2011-04-11  Ralf Wildenhues  <address@hidden>
+
+       Fix hp depmode for VPATH builds with GNU make.
+       * lib/depcomp: Be sure to remove VPATH-prefixed object from
+       dependency output when creating stub rule.
+       * tests/depcomp10.test: New test.
+       * tests/Makefile.am (TESTS): Update.
+       * NEWS: Update.
+       Report by Bruno Haible.
+
+2011-04-10  Stefano Lattarini  <address@hidden>
+
+       test defs: fix 'javac' requirement for older JDK versions
+       The Java compiler from JDK 1.5 (and presumably earlier versions)
+       cannot handle the `-version' option by itself; and while it does
+       print the version number, it then errors out with an usage error:
+         $ javac -version
+         javac 1.5.0_22
+         javac: no source files
+         Usage: javac <options> <source files>
+         ...
+       Luckily, adding the `-help' option to the `javac' invocation
+       seems to fix this problem.
+       * tests/defs.in (javac): Pass also the `-help' option to the
+       `javac' program.  Add a comment explaining why it is needed.
+       Report from Ralf Wildenhues.
+
+2011-04-10  Stefano Lattarini  <address@hidden>
+
+       test defs: new requirement for the default java compiler
+       * tests/defs.in (for tool in $required): New requirement 'javac'.
+       * tests/java.test: Use it instead of ad-hoc configure check.
+       * tests/java-check.test: Likewise.
+       * tests/instfail-java.test: Likewise.
+       * tests/instdir-java.test: Likewise.
+
+2011-04-09  Stefano Lattarini  <address@hidden>
+
+       java: check_JAVA does not cause compilation by "make all" anymore
+       Fixes automake bug#8234.
+       * automake.in (handle_java): Make stamp of class files built from
+       java sources in $(check_JAVA) a dependency of `check' target, not
+       `all' target.
+       * tests/java-check.test: New test.
+       * tests/Makefile.am (TESTS): Update.
+       * NEWS: Update.
+       * THANKS: Update.
+       Report from Petteri Räty.
+
 2011-04-09  Ralf Wildenhues  <address@hidden>
 
        Clarify regex code in depcomp.
diff --git a/NEWS b/NEWS
index 9864090..6d6c76b 100644
--- a/NEWS
+++ b/NEWS
@@ -56,7 +56,10 @@ Bugs fixed in 1.11.1a:
   - The parallel-tests driver now does not produce erroneous results
     with Tru64/OSF 5.1 sh upon unreadable log files any more.
 
-  - The makedepend depmode now works better with VPATH builds.
+  - The makedepend and hp depmodes now works better with VPATH builds.
+
+  - Java sources specified with check_JAVA are not compiled anymore upon
+    "make all", but only upon "make check".
 
 Bugs fixed in 1.11.1:
 
diff --git a/THANKS b/THANKS
index 040da98..593ebc5 100644
--- a/THANKS
+++ b/THANKS
@@ -279,6 +279,7 @@ Peter O'Gorman              address@hidden
 Peter Rosin            address@hidden
 Peter Seiderer         address@hidden
 Petter Reinholdtsen    address@hidden
+Petteri Räty          address@hidden
 Phil Edwards           address@hidden
 Phil Nelson            address@hidden
 Philip Fong            address@hidden
diff --git a/automake.in b/automake.in
index d74730d..a8ec749 100755
--- a/automake.in
+++ b/automake.in
@@ -5121,8 +5121,14 @@ sub handle_java
        $dir = $curs;
       }
 
-
-    push (@all, 'class' . $dir . '.stamp');
+    if ($dir eq 'check')
+      {
+        push (@check, "class$dir.stamp");
+      }
+    else
+      {
+        push (@all, "class$dir.stamp");
+      }
 }
 
 
diff --git a/lib/depcomp b/lib/depcomp
index 8097c19..e996e5d 100755
--- a/lib/depcomp
+++ b/lib/depcomp
@@ -1,7 +1,7 @@
 #! /bin/sh
 # depcomp - compile a program generating dependencies as side-effects
 
-scriptversion=2011-04-09-11; # UTC
+scriptversion=2011-04-11-05; # UTC
 
 # Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2011,
 # Free Software Foundation, Inc.
@@ -158,10 +158,12 @@ gcc)
 ' < "$tmpdepfile" |
 ## Some versions of gcc put a space before the `:'.  On the theory
 ## that the space means something, we add a space to the output as
-## well.
+## well.  hp depmode also adds that space, but also prefixes the VPATH
+## to the object.  Take care to not repeat it in the output.
 ## Some versions of the HPUX 10.20 sed can't process this invocation
 ## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+    sed -e 's/^\\$//' -e '/^$/d' -e -e "s|.*$object$||" '/:$/d' \
+      | sed -e 's/$/ :/' >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
diff --git a/tests/Makefile.am b/tests/Makefile.am
index c894864..4e87805 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -278,6 +278,7 @@ depcomp7.test \
 depcomp8a.test \
 depcomp8b.test \
 depcomp9.test \
+depcomp10.test \
 depdist.test \
 depend.test \
 depend2.test \
@@ -421,6 +422,7 @@ interp2.test \
 java.test \
 java2.test \
 java3.test \
+java-check.test \
 javaprim.test \
 javasubst.test \
 ldadd.test \
diff --git a/tests/Makefile.in b/tests/Makefile.in
index ccd9ba4..08b8ea8 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -548,6 +548,7 @@ depcomp7.test \
 depcomp8a.test \
 depcomp8b.test \
 depcomp9.test \
+depcomp10.test \
 depdist.test \
 depend.test \
 depend2.test \
@@ -691,6 +692,7 @@ interp2.test \
 java.test \
 java2.test \
 java3.test \
+java-check.test \
 javaprim.test \
 javasubst.test \
 ldadd.test \
diff --git a/tests/defs.in b/tests/defs.in
index fb57dfd..8aaf108 100644
--- a/tests/defs.in
+++ b/tests/defs.in
@@ -165,6 +165,14 @@ do
       echo "$me: running $CC -V -help"
       ( $CC -V -help ) || exit 77
       ;;
+    javac)
+      # The Java compiler from JDK 1.5 (and presumably earlier versions)
+      # cannot handle the `-version' option by itself: it bails out
+      # telling that source files are missing.  Adding also the `-help'
+      # option seems to solve the problem.
+      echo "$me: running javac -version -help"
+      javac -version -help || exit 77
+      ;;
     makedepend)
       echo "$me: running makedepend -f-"
       ( makedepend -f- ) || exit 77
diff --git a/tests/depcomp9.test b/tests/depcomp10.test
old mode 100755
new mode 100644
similarity index 61%
copy from tests/depcomp9.test
copy to tests/depcomp10.test
index d137fad..4fdee40
--- a/tests/depcomp9.test
+++ b/tests/depcomp10.test
@@ -14,19 +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/>.
 
-# makedepend should work in VPATH mode.
+# hp depmode should work with GNU make in VPATH mode (bug similar to
+# depcomp9.test).
 
-# Here's the bug: makedepend will prefix VPATH to the object file name,
-# thus the second make will invoke depcomp with object='../../src/foo.o',
+# Here's the bug: hp depmode will prefix VPATH to the object file name,
+# thus the second gmake will invoke depcomp with object='../../src/foo.o',
 # causing errors such as:
-# touch: cannot touch `../../src/.deps/foo.TPo': No such file or directory
-# makedepend: error:  cannot open "../../src/.deps/foo.TPo"
-# ../../depcomp: line 560: ../../src/.deps/foo.TPo: No such file or directory
+#   cpp: "", line 0: error 4066: Cannot create 
"../../gllib/.deps/nonblocking.TPo" file for 
"-M../../gllib/.deps/nonblocking.TPo" option. (No such file or dir
++ectory[errno=2])
 
-# We include subfoo only to be sure that we don't remove too much
-# from the object file name.
-
-required='makedepend'
+required=GNUmake
 . ./defs || Exit 1
 
 mkdir src src/sub build
@@ -73,13 +70,7 @@ $AUTOCONF
 $AUTOMAKE -a
 
 cd build
-../configure am_cv_CC_dependencies_compiler_type=makedepend
-
-# Do not error out with the first make, as the forced 'makedepend'
-# depmode might not actually work, but we have overridden the
-# _AM_DEPENDENCIES tests.  The actual error only happens the second time
-# the objects are built, because 'makedepend' has silently messed up the
-# .Po files the first time.
+../configure am_cv_CC_dependencies_compiler_type=hp
 $MAKE || Exit 77
 $MAKE clean
 
diff --git a/tests/instdir-java.test b/tests/instdir-java.test
index 6adc82e..9d9a03c 100755
--- a/tests/instdir-java.test
+++ b/tests/instdir-java.test
@@ -16,13 +16,12 @@
 
 # If $(javadir) is the empty string, then nothing should be installed there.
 
+required=javac
 . ./defs || Exit 1
 
 set -e
 
 cat >>configure.in <<'END'
-AC_CHECK_PROG([HAS_JAVAC], [javac], [:], [exit])
-($HAS_JAVAC 77); $HAS_JAVAC 77
 AC_OUTPUT
 END
 
diff --git a/tests/instfail-java.test b/tests/instfail-java.test
index 2cb8afb..8f527cf 100755
--- a/tests/instfail-java.test
+++ b/tests/instfail-java.test
@@ -19,13 +19,12 @@
 
 # This is the java sister test of instfail.test.
 
+required=javac
 . ./defs || Exit 1
 
 set -e
 
 cat >>configure.in <<'END'
-AC_CHECK_PROG([HAS_JAVAC], [javac], [:], [exit])
-($HAS_JAVAC 77); $HAS_JAVAC 77
 AC_OUTPUT
 END
 
diff --git a/tests/parallel-tests-subdir.test b/tests/java-check.test
similarity index 54%
copy from tests/parallel-tests-subdir.test
copy to tests/java-check.test
index 18695fe..a67b4e8 100755
--- a/tests/parallel-tests-subdir.test
+++ b/tests/java-check.test
@@ -14,10 +14,11 @@
 # 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 that the parallel-tests driver creates parent directories for
-# the log files when needed.
+# Make sure that check_JAVA causes *.class files to be built only with
+# "make check", and not also with "make all".
+# See automake bug#8234.
 
-parallel_tests=yes
+required=javac
 . ./defs || Exit 1
 
 set -e
@@ -27,25 +28,39 @@ AC_OUTPUT
 END
 
 cat > Makefile.am << 'END'
-TESTS = dir1/foo.test dir2/dir3/foo.test
-TEST_LOG_COMPILER = sh
+check_JAVA = One.java Two.java
 END
 
-mkdir dir1 dir2 dir2/dir3
-echo : > dir1/foo.test
-echo : > dir2/dir3/foo.test
+cat > One.java <<'END'
+class One { }
+END
+
+cat > Two.java <<'END'
+class Two { // Deliberately missing closing bracket.
+END
 
 $ACLOCAL
 $AUTOCONF
-$AUTOMAKE -a
+$AUTOMAKE
+
+inst=`pwd`/_inst
+
+./configure --prefix="$inst"
+
+$MAKE
+ls | $EGREP '\.(class|stamp)$' && Exit 1
+
+# Make Two.java compilable.
+echo '}' >> Two.java
 
-mkdir build
-cd build
-../configure
+# "make check" should compile files in $(check_JAVA) ...
 $MAKE check
-find . # For debugging.
-test -f test-suite.log
-test -f dir1/foo.log
-test -f dir2/dir3/foo.log
+ls -l # for debugging
+test -f One.class
+test -f Two.class
+# ... but should *not* install them.
+$FGREP checkdir Makefile && Exit 1
+$MAKE install
+test -d _inst && Exit 1
 
 :
diff --git a/tests/java.test b/tests/java.test
index d5210cd..cae56dc 100755
--- a/tests/java.test
+++ b/tests/java.test
@@ -16,13 +16,12 @@
 
 # Minimal test of Java functionality.
 
+required=javac
 . ./defs || Exit 1
 
 set -e
 
 cat >>configure.in <<'EOF'
-AC_CHECK_PROG([HAS_JAVAC], [javac], [:], [exit])
-($HAS_JAVAC 77); $HAS_JAVAC 77
 AC_OUTPUT
 EOF
 


hooks/post-receive
-- 
GNU Automake



reply via email to

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