>>> "Braden" == Braden McDaniel <[EMAIL PROTECTED]> writes:
[...] Braden> if WITH_JDK Braden> noinst_JAVA = MyClass1.java MyClass2.java Braden> endif Braden> Works if WITH_JDK is true; but if WITH_JDK is false, Braden> javac still gets called, but with no source file Braden> arguments. Could you try this patch? Index: ChangeLog --- ChangeLog +++ ChangeLog @@ -1,1 +1,9 @@ +2002-06-11 Alexandre Duret-Lutz <[EMAIL PROTECTED]> + + * lib/am/java.am (class%DIR%.stamp): Don't run $(JAVAC) when there + is no file to compile. + * tests/java2.test: New file. + * tests/Makefile.am (TESTS): Add java2.test. + Reported by Braden N. McDaniel. + Index: lib/am/java.am =================================================================== RCS file: /cvs/automake/automake/lib/am/java.am,v retrieving revision 1.15 diff -u -r1.15 java.am --- lib/am/java.am 30 May 2001 02:02:50 -0000 1.15 +++ lib/am/java.am 11 Jun 2002 17:02:40 -0000 @@ -27,8 +27,11 @@ JAVAROOT = $(top_builddir) class%DIR%.stamp: $(%DIR%_JAVA) - $(CLASSPATH_ENV) $(JAVAC) -d $(JAVAROOT) \ - $(AM_JAVACFLAGS) $(JAVACFLAGS) $? + @if test -n "$?"; then \ + echo '$(CLASSPATH_ENV) $(JAVAC) -d $(JAVAROOT) $(AM_JAVACFLAGS) +$(JAVACFLAGS) $?' ; \ + $(CLASSPATH_ENV) $(JAVAC) -d $(JAVAROOT) \ + $(AM_JAVACFLAGS) $(JAVACFLAGS) $?; \ + else :; fi echo timestamp > class%DIR%.stamp Index: tests/Makefile.am =================================================================== RCS file: /cvs/automake/automake/tests/Makefile.am,v retrieving revision 1.385.2.13 diff -u -r1.385.2.13 Makefile.am --- tests/Makefile.am 8 Jun 2002 16:56:56 -0000 1.385.2.13 +++ tests/Makefile.am 11 Jun 2002 17:02:40 -0000 @@ -183,6 +183,7 @@ interp.test \ interp2.test \ java.test \ +java2.test \ javaprim.test \ javasubst.test \ ldadd.test \ Index: tests/java2.test =================================================================== RCS file: tests/java2.test diff -N tests/java2.test --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ tests/java2.test 11 Jun 2002 17:02:40 -0000 @@ -0,0 +1,35 @@ +#! /bin/sh + +# Make sure that Java rules doesn't attempt to run javac when there is +# no classes to compile. +# Report from Braden McDaniel. + +. $srcdir/defs || exit 1 + +set -e + +cat >> configure.in << 'END' +AM_CONDITIONAL(WITH_JDK, false) +AC_OUTPUT +END + +cat > Makefile.am << 'END' +JAVAC = false +JAVAROOT = $(top_builddir)/java + +JAVA_FILES = MyClass1.java + +if WITH_JDK +noinst_JAVA = $(JAVA_FILES) +endif + +EXTRA_DIST = $(JAVA_FILES) +END + +: >MyClass1.java + +$ACLOCAL +$AUTOCONF +$AUTOMAKE +./configure +$MAKE -- Alexandre Duret-Lutz