RFR: JDK-8154841: Let different Jib profiles have different default make targets

David Holmes david.holmes at oracle.com
Tue Apr 26 20:28:29 UTC 2016

On 26/04/2016 11:21 PM, Erik Joelsson wrote:
> New webrev: http://cr.openjdk.java.net/~erikj/8154841/webrev.top.02/

Thanks - much clearer to me now. Plus I see that docs is "aliased" to 


> /Erik
> On 2016-04-26 15:20, Erik Joelsson wrote:
>> Thank you David for looking it this!
>> On 2016-04-26 14:47, David Holmes wrote:
>>> On 26/04/2016 10:01 PM, Erik Joelsson wrote:
>>>> It would be really nice to get this reviewed as I have a lot of further
>>>> work depending on this feature.
>>> I'm not fluent in .js but those changes seemed relatively straight
>>> forward to understand. More so than the rest ...
>>> make/Main.gmk
>>> Don't really understand why the dependencies have been separated from
>>> the target+recipe. Is it just a style thing?
>> In Main.gmk, we keep the dependencies separate, inside a big
>> conditional, to support the "-only" targets. Basically we need to be
>> able to disable dependencies.
>>> make/Jprt.gmk
>>> So you are assuming/expecting that JPRT_TARGET always requires
>>> product-images test-image ? Shouldn't that target (whatever it is)
>>> have its own dependencies? Not at all clear what this is doing except
>>> ensuring you can't build less than product-images test-image. ??
>> Hm, thinking some more on this, that change is not needed right now. I
>> had been playing around with (and plan to propose in a followup),
>> splitting up the bundles target so that the different bundles can be
>> created in parallel. In that case, each bundle will need specific
>> prerequisites for optimal parallel potential.
>> As it is now, if the default make target (as defined with the
>> --with-default-make-target configure flag, which the Jib profile
>> defines) does not depend on product-images and test-image, the bundles
>> target will fail. In reality this shouldn't happen unless someone does
>> something really weird or misconfigures Jib.
>> /Erik
>>> David
>>>> /Erik
>>>> On 2016-04-22 10:32, Erik Joelsson wrote:
>>>>> Currently all Jib profiles define the default make target configure
>>>>> arg to be "all". While this works ok for our current main profiles,
>>>>> it's a bit crude and will not work well when start introducing more
>>>>> specialized profiles. I have implemented a way of specifying the list
>>>>> of default make targets much like configure arguments are specified
>>>>> today, by adding a function that converts this new field on a profile
>>>>> into the corresponding configure arg.
>>>>> To demonstrate the feature I have also disable building of docs on
>>>>> most profiles. The docs build is very platform independent and we are
>>>>> currently wasting quite a bit of time letting every build, both
>>>>> release and debug, build docs. With these changes, only linux-x64
>>>>> builds docs by default. Note that this applies to distributed build
>>>>> scenarios, like JPRT and RE at Oracle. A developer wanting to build
>>>>> docs may still do so by typing "make docs".
>>>>> While tweaking the docs build, I also corrected the dependencies that
>>>>> were recently introduced for the new open docs bundle. It seems I was
>>>>> sloppy with the review on that change.
>>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8154841
>>>>> Webrev: http://cr.openjdk.java.net/~erikj/8154841/webrev.top.01/
>>>>> /Erik

More information about the build-dev mailing list