On Tue, 27 Mar 2012 17:22:02 -0700, Stuart Marks <stuart.ma...@oracle.com> wrote:
> 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, > >> _ANT_VER:=$(shell $(ANT) -version 2>&1 ) >> ANT_VER:=$(call GetVersion,"$(_ANT_VER)") > > 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 ran into this and found that the problem was with my ALT_BOOTDIR -- it was pointing at the wrong directory. I had ALT_BOOTDIR=/Library/Java/JavaVirtualMachines/1.7.0.jdk/ whereas I should have had ALT_BOOTDIR=/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home And this produced an error message indicating that no java executable could be found at /Library/Java/JavaVirtualMachines/1.7.0.jdk/bin/java (because it's not there). I found the problem by changing the sanity script to print the full response $(_ANT_VER) in the error message. HTH, Mike > 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 DEVTOOLS_PATH is pointing at /usr/bin which has the correct version of >> ANT >> * When I set ANT_HOME (export ANT_HOME=/usr/share/ant) before running >> 'make sanity' it doesn't appear to take hold (the output from make >> sanity shows ANT_HOME 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 > > > ------------------------------ > > Message: 2 > Date: Wed, 28 Mar 2012 08:06:51 +0200 > From: Martijn Verburg <martijnverb...@gmail.com> > Subject: Re: Where does 'make sanity' look for the ANT version? > To: Stuart Marks <stuart.ma...@oracle.com> > Cc: build-dev@openjdk.java.net > Message-ID: > <CAP7YuASNqDU8zy+XeNgo=-P2N7VkJDHB0eP=rlgda4gowrw...@mail.gmail.com> > Content-Type: text/plain; charset=UTF-8 > > Hi Stuart, > > Thanks for looking into that for me, I'll keep a note of the location > of Sanity.gmk going > forwards. I have managed to resolve the issue, it was a curious case where my > 1.8.2 ANT install couldn't find $ALT_BOOTDIR//lib/tools.jar and > therefore 'failed', the > build then defaulted back to an ant under the langtools folder. > > I corrected a permissions problem on the tools.jar file and make > sanity ran smoothly > after that. Now having fun trying to find the exact Ubnutu package > that contains the > X11 headers the build needs, but that's a different story :-) > > Cheers, > Martijn > > On 28 March 2012 02:22, Stuart Marks <stuart.ma...@oracle.com> wrote: > > >> 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, >> >>> _ANT_VER:=$(shell $(ANT) -version 2>&1 ) >>> ANT_VER:=$(call GetVersion,"$(_ANT_VER)") >> >> >> 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 DEVTOOLS_PATH is pointing at /usr/bin which has the correct version >>> of ANT >>> * When I set ANT_HOME (export ANT_HOME=/usr/share/ant) before running >>> 'make sanity' it doesn't appear to take hold (the output from make >>> sanity shows ANT_HOME 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 > > > End of build-dev Digest, Vol 59, Issue 53 > *****************************************