Can't Compile jtreg
jonathan.gibbons at oracle.com
Tue Jul 30 10:11:34 PDT 2013
On 07/30/2013 10:04 AM, Nick Williams wrote:
> On Jul 30, 2013, at 11:58 AM, Jonathan Gibbons wrote:
>> On 07/30/2013 09:19 AM, Nick Williams wrote:
>>> First, please let me say that the build readme at http://openjdk.java.net/jtreg/build.html (and in HG) is sorely lacking. Here's what I've learned on my own so far, from analyzing error messages and reading Defs.gmk:
>>> - JAVAHELP_HOME, which usually points to the JavaHelp home directory (we'll call this $JavaHelp) and contains demos, doc, src, license, etc., actually must point to $JavaHelp/javahelp (which contains bin and lib). This is not clear on the readme.
>>> - JUnit is NOT optional. jtreg won't "make" without it. Furthermore, JUNIT_JAR must point to junit.jar (which the readme does not say).
>>> - TestNG is NOT optional. jtreg won't "make" without it. Furthermore, TESTNG_HOME must point to a directory containing LICENSE.txt (which does not exist for TestNG, so I had to invent one) and TESTNG_JAR must point to testng.jar. The readme doesn't indicate any of this.
>>> - Ant is NOT optional. Unlike usual systems where ANT_HOME indicates where Ant lives, jtreg requires ANTHOME (which the readme does not say).
>>> After this is where I hit the roadblock I cannot overcome:
>>> There's some thing called "jcov" that is NOT optional. Worse, jcov, what it is, and where you can find/download it isn't indicated anywhere on the readme. I spent the last hour scouring Google for jcov. I've found plenty of references to jcov.jar in JDK source repositories and mirrors (and apparently it's supposed to contain classes in the com.sun.tdk.jcov package), but as far as I can tell jcov doesn't exist. I can't find it anywhere, and jtreg won't "make" without it. If JCOV_HOME doesn't exist, "make" looks in /java/re/jcov/2.0/promoted/latest/binaries/jcov_2.0/, but that certainly doesn't exist, and there's nothing anything like that underneath the home directories for my JDKs or JREs.
>>> Can someone help me sort this out and point me to where I can download jcov?
>>> And can someone update the readmes?
>> I am sorry for your frustration.
>> jcov is a Java Code Coverage tool. As of now, it is not open source, so I will have to update the README and Makefile to ensure that you can build without it.
>> -- Jon
> Okay. How soon do you think you can get that done? I'm on a time crunch here and I can't submit this patch without running tests. If there's a simple change I can make locally to disable the need for jcov, feel free to instruct me.
The code is written so that you don't need the jcov libraries to compile
jtreg. You just need to fix the Makefiles to comment out where it is
trying to copy the jcov jar file into the final image.
More information about the jtreg-use