Where does 'make sanity' look for the ANT version? (original) (raw)

Stuart Marks stuart.marks at oracle.com
Wed Mar 28 00:22:02 UTC 2012


Hi Martijn!

One of my colleagues ran into this the other day. I don't know all the details and the solution but I have a clue that might help you move forward.

In make/common/shared/Sanity.gmk there are the lines,

ANTVER:=$(shell $(ANT) -version 2>&1 ) ANTVER:=$(call GetVersion,"$(ANTVER)")

The GetVersion function (defined in Defs.gmk) extracts the version number from the shell output using a regexp. Unfortunately there seem to be circumstances -- not sure exactly what they are though -- when the shell output includes a java version number, either in the output or in a path. Clearly you're using Java 7 -- that is, JDK 1.7.0 -- and the GetVersion regexp is happily picking this up thinking it's the ant version number.

One path forward would be to investigate why "shell $(ANT) -version" is returning some unexpected output and is possibly not even running ant at all.

I'll forward this to my colleague to see whether he has anything to add.

s'marks

On 3/26/12 3:55 AM, Martijn Verburg wrote:

Hi all,

So I'm building new VMs to try the various OpenJDK builds and have run across a pretty consistent problem using Lubuntu 11.10 (32-bit) with the detection of ANT. I have ANT 1.8.2 installed (Ant 1.7 is clearly removed) but 'make sanity' insists that the ANT version I have is 1.7.0. * My DEVTOOLSPATH is pointing at /usr/bin which has the correct version of ANT * When I set ANTHOME (export ANTHOME=/usr/share/ant) before running 'make sanity' it doesn't appear to take hold (the output from make sanity shows ANTHOME to be blank) I'm not sure where else it might be reading this from, does anyone where I should go spelunking to see where it makes this check? Cheers, Martijn



More information about the build-dev mailing list