Bug 20103 - make 3.79.1 does not work with javac from JDK 1.3 (Sun)
make 3.79.1 does not work with javac from JDK 1.3 (Sun)
Status: CLOSED WORKSFORME
Product: Red Hat Linux
Classification: Retired
Component: make (Show other bugs)
7.0
i386 Linux
high Severity medium
: ---
: ---
Assigned To: Jakub Jelinek
David Lawrence
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2000-10-31 10:52 EST by Need Real Name
Modified: 2007-03-26 23:37 EDT (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2004-10-07 08:13:10 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Need Real Name 2000-10-31 10:52:57 EST
The make on RH7 seems to ingore the return value from the javac (Sun JDK
1.3) command.
The build process does not stop if javac reports an error.
You can test it with the following files:

Test.java:
public class Test
{
thisIsBrokenCode
}

Next.java:
public class Next
{
}

Makefile:
JAVAC=javac
all: Test.class Next.class

Test.class: Test.java
  $(JAVAC) Test.java

Next.class: Next.java
  $(JAVAC) Next.java

The problem is that Next.java will be compiled although Test.java is
broken.
Comment 1 Jakub Jelinek 2004-10-07 08:13:10 EDT
With gcj -C it certainly doesn't try to compile Next.class (although
with make -j2 it very well could, there is no dependency on Test.class in Next.class):
make
gcj -C Test.java
Test.java:4: error: Invalid method declaration, method name required.
   }
   ^
1 error
make: *** [Test.class] Error 1

So, the only possibility I see is that Sun javac returns zero exit
code even if there were syntax errors.  That would be JDK bug though,
not make.

Note You need to log in before you can comment on or make changes to this bug.