On Fri, Jan 11, 2019 at 07:42:27PM +0900, Masahiro Yamada wrote: > Based on the following Linux commits: > > - 54a702f70589 ("kbuild: mark $(targets) as .SECONDARY and remove > .PRECIOUS markers") > > - 8e9b61b293d9 ("kbuild: move .SECONDARY special target to > Kbuild.include") > > GNU Make automatically deletes intermediate files that are updated > in a chain of pattern rules. > > Example 1) %.dtb.o <- %.dtb.S <- %.dtb <- %.dts > Example 2) %.o <- %.c <- %.c_shipped > > A couple of makefiles mark such targets as .PRECIOUS to prevent Make > from deleting them, but the correct way is to use .SECONDARY. > > .SECONDARY > Prerequisites of this special target are treated as intermediate > files but are never automatically deleted. > > .PRECIOUS > When make is interrupted during execution, it may delete the target > file it is updating if the file was modified since make started. > If you mark the file as precious, make will never delete the file > if interrupted. > > Both can avoid deletion of intermediate files, but the difference is > the behavior when Make is interrupted; .SECONDARY deletes the target, > but .PRECIOUS does not. > > The use of .PRECIOUS is relatively rare since we do not want to keep > partially constructed (possibly corrupted) targets. > > .SECONDARY with no prerequisites causes all targets to be treated as > secondary. This agrees the policy of Kbuild. > > scripts/Kbuild.include seems a suitable place to add it because it is > included from almost all sub-makes. > > Signed-off-by: Masahiro Yamada <yamada.masah...@socionext.com>
Applied to u-boot/master, thanks! -- Tom
signature.asc
Description: PGP signature
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot