RFR: JDK-8077814: Add .DELETE_ON_ERROR to makefiles
Tim Bell
tim.bell at oracle.com
Wed Apr 15 15:23:27 UTC 2015
Erik:
> On 2015-04-15 11:41, Erik Joelsson wrote:
>> Please review this small change which will improve incremental build
>> reliability. By defining the pseudo target .DELETE_ON_ERROR, make
>> will automatically remove the target of a rule if the recipe fails or
>> is interrupted (typically ctrl-c). By doing this, the target is
>> automatically rebuilt on the next make invocation instead of left in
>> a possibly broken state.
>>
>> I was under the impression that this functionality was already active
>> in make, but it appears we have to actively enable it. I chose to put
>> it at the top of make/common/MakeBase.gmk as we tend to include that
>> file everywhere. The alternative would be spec.gmk.in, but I think we
>> should try to keep that file for communication from configure to make.
>
> Looks good to me.
>
> /Magnus
Looks good to me as well.
/Tim
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8077814
>> Patch:
>> diff -r d0321d15e0a0 make/common/MakeBase.gmk
>> --- a/make/common/MakeBase.gmk
>> +++ b/make/common/MakeBase.gmk
>> @@ -36,6 +36,10 @@
>> $(error MakeBase.gmk needs SPEC set to a proper spec.gmk)
>> endif
>>
>> +# By defining this pseudo target, make will automatically remove
>> targets
>> +# if their recipe fails so that a rebuild is automatically triggered
>> on the
>> +# next make invocation.
>> +.DELETE_ON_ERROR:
>>
>> ##############################
>> # Functions
More information about the build-dev
mailing list