diff options
author | Brad King <brad.king@kitware.com> | 2015-03-30 20:32:26 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2015-03-30 20:35:48 (GMT) |
commit | 4adf1dad2a6e462364bae81030c928599d11c24f (patch) | |
tree | c8439c0f37554c41374373117c8ea1f20cf40381 /Source/cmGlobalUnixMakefileGenerator3.h | |
parent | c1f8c6cdf94d650df1bd8ec847ae7ac453550978 (diff) | |
download | CMake-4adf1dad2a6e462364bae81030c928599d11c24f.zip CMake-4adf1dad2a6e462364bae81030c928599d11c24f.tar.gz CMake-4adf1dad2a6e462364bae81030c928599d11c24f.tar.bz2 |
Makefile: Tell GNU make to delete rule outputs on error (#15474)
Add .DELETE_ON_ERROR to the "build.make" files that contain the actual
build rules that generate files. This tells GNU make to delete the
output of a rule if the recipe modifies the output but returns failure.
This is particularly useful for custom commands that use shell
redirection to produce a file.
Do not add .DELETE_ON_ERROR for Borland or Watcom make tools because
they may not tolerate it and would not honor it anyway. Other make
tools that do not understand .DELETE_ON_ERROR will not be hurt.
Suggested-by: Andrey Vihrov <andrey.vihrov@gmail.com>
Diffstat (limited to 'Source/cmGlobalUnixMakefileGenerator3.h')
-rw-r--r-- | Source/cmGlobalUnixMakefileGenerator3.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Source/cmGlobalUnixMakefileGenerator3.h b/Source/cmGlobalUnixMakefileGenerator3.h index 50a901e..a76a835 100644 --- a/Source/cmGlobalUnixMakefileGenerator3.h +++ b/Source/cmGlobalUnixMakefileGenerator3.h @@ -128,6 +128,9 @@ public: /** Does the make tool tolerate .NOTPARALLEL? */ virtual bool AllowNotParallel() const { return true; } + /** Does the make tool tolerate .DELETE_ON_ERROR? */ + virtual bool AllowDeleteOnError() const { return true; } + virtual void ComputeTargetObjectDirectory(cmGeneratorTarget* gt) const; protected: void WriteMainMakefile2(); |