Review Request: 8003482: build-infra: Use correct manifest in security jars

Fredrik Öhrström fredrik.ohrstrom at oracle.com
Wed Nov 28 13:06:15 UTC 2012


Ah, but make is smarter than that. Take for example this makefile:

myprog.sh :
	echo "#!/bin/sh" > $@
	sleep 3
	echo "echo Hello World!" >> $@
	echo >> $@
	chmod a+x $@

If you press ctrl-c during the sleep, then make will remove the half baked myprog.sh
and print: ^Cmake: *** Deleting file `myprog.sh'
make: *** [myprog.sh] Interrupt

However if you have an error in you recipe, for example add "cat not_there >> $@" at the end
of the recipe, then make will let the half baked  myprog.sh remain. But makefile execution
will of course terminate.

Thus if you have a recipe that will most likely not fail, then you should rely on make to do the
cleanup. If you have potential failures during a sequence of commands that construct the goal, 
then the tmp trick can be used.

//Fredrik

28 nov 2012 kl. 12:05 skrev Erik Joelsson:

> In this case it's rather to protect against unfortunately timed ctrl-c or other external interruptions.
> 
> /Erik
> 
> On 2012-11-28 09:26, Fredrik Öhrström wrote:
>> Looks ok. However the practice of using $@.tmp is unnecessary if there
>> is no reasonable risk of failure in the recipe.
>> 
>> //Fredrik
>> 
>> 2012/11/26 Erik Joelsson<erik.joelsson at oracle.com>:
>>> This patch converts 7197071 to the new build-system.
>>> 
>>> http://cr.openjdk.java.net/~erikj/8003482/webrev.jdk.01/
>>> 
>>> /Erik




More information about the build-dev mailing list