Repository: lucy-clownfish Updated Branches: refs/heads/master bd045a8af -> 7baa94b7e
Manual cleanup of some MSVC .obj files When compiling an .exe directly from source files, MSVC creates object files in the current directory which makes it hard to create cleanup rules automatically. Project: http://git-wip-us.apache.org/repos/asf/lucy-clownfish/repo Commit: http://git-wip-us.apache.org/repos/asf/lucy-clownfish/commit/b27af5b2 Tree: http://git-wip-us.apache.org/repos/asf/lucy-clownfish/tree/b27af5b2 Diff: http://git-wip-us.apache.org/repos/asf/lucy-clownfish/diff/b27af5b2 Branch: refs/heads/master Commit: b27af5b2f341392b41d4db86f94555d155ff4cdc Parents: bd045a8 Author: Nick Wellnhofer <[email protected]> Authored: Mon Jul 21 13:30:32 2014 +0200 Committer: Nick Wellnhofer <[email protected]> Committed: Mon Jul 21 13:40:49 2014 +0200 ---------------------------------------------------------------------- compiler/common/charmonizer.c | 4 ++++ compiler/common/charmonizer.main | 4 ++++ compiler/perl/lib/Clownfish/CFC/Perl/Build/Charmonic.pm | 4 ++++ runtime/common/charmonizer.c | 4 ++++ runtime/common/charmonizer.main | 4 ++++ 5 files changed, 20 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/lucy-clownfish/blob/b27af5b2/compiler/common/charmonizer.c ---------------------------------------------------------------------- diff --git a/compiler/common/charmonizer.c b/compiler/common/charmonizer.c index a76ca8a..8a667db 100644 --- a/compiler/common/charmonizer.c +++ b/compiler/common/charmonizer.c @@ -7245,6 +7245,10 @@ S_write_makefile(struct chaz_CLIArgs *args) { chaz_MakeRule_add_recursive_rm_command(clean_rule, "coverage"); } + if (chaz_Probe_msvc_version_num()) { + chaz_MakeRule_add_rm_command(clean_rule, "lemon.obj"); + } + chaz_MakeFile_write(makefile); chaz_MakeFile_destroy(makefile); http://git-wip-us.apache.org/repos/asf/lucy-clownfish/blob/b27af5b2/compiler/common/charmonizer.main ---------------------------------------------------------------------- diff --git a/compiler/common/charmonizer.main b/compiler/common/charmonizer.main index 40eaeb8..26ac692 100644 --- a/compiler/common/charmonizer.main +++ b/compiler/common/charmonizer.main @@ -233,6 +233,10 @@ S_write_makefile(struct chaz_CLIArgs *args) { chaz_MakeRule_add_recursive_rm_command(clean_rule, "coverage"); } + if (chaz_Probe_msvc_version_num()) { + chaz_MakeRule_add_rm_command(clean_rule, "lemon.obj"); + } + chaz_MakeFile_write(makefile); chaz_MakeFile_destroy(makefile); http://git-wip-us.apache.org/repos/asf/lucy-clownfish/blob/b27af5b2/compiler/perl/lib/Clownfish/CFC/Perl/Build/Charmonic.pm ---------------------------------------------------------------------- diff --git a/compiler/perl/lib/Clownfish/CFC/Perl/Build/Charmonic.pm b/compiler/perl/lib/Clownfish/CFC/Perl/Build/Charmonic.pm index 8c5843c..1e4d476 100644 --- a/compiler/perl/lib/Clownfish/CFC/Perl/Build/Charmonic.pm +++ b/compiler/perl/lib/Clownfish/CFC/Perl/Build/Charmonic.pm @@ -69,6 +69,10 @@ sub ACTION_charmony { # Clean up after charmonizer if it doesn't succeed on its own. $self->add_to_cleanup("_charm*"); + if ($Config{cc} =~ /^cl\b/) { + $self->add_to_cleanup('charmonizer.obj'); + } + # Prepare arguments to charmonizer. my @command = ( $CHARMONIZER_EXE_PATH, http://git-wip-us.apache.org/repos/asf/lucy-clownfish/blob/b27af5b2/runtime/common/charmonizer.c ---------------------------------------------------------------------- diff --git a/runtime/common/charmonizer.c b/runtime/common/charmonizer.c index a17f425..d44c2fe 100644 --- a/runtime/common/charmonizer.c +++ b/runtime/common/charmonizer.c @@ -7326,6 +7326,10 @@ S_write_makefile(struct chaz_CLIArgs *args) { chaz_MakeRule_add_recursive_rm_command(clean_rule, "coverage"); } + if (chaz_Probe_msvc_version_num()) { + chaz_MakeRule_add_rm_command(clean_rule, "test_cfish.obj"); + } + chaz_MakeRule_add_make_command(clean_rule, cfc_dir, "clean"); distclean_rule = chaz_MakeFile_distclean_rule(makefile); http://git-wip-us.apache.org/repos/asf/lucy-clownfish/blob/b27af5b2/runtime/common/charmonizer.main ---------------------------------------------------------------------- diff --git a/runtime/common/charmonizer.main b/runtime/common/charmonizer.main index 9f433e0..7b2a24f 100644 --- a/runtime/common/charmonizer.main +++ b/runtime/common/charmonizer.main @@ -314,6 +314,10 @@ S_write_makefile(struct chaz_CLIArgs *args) { chaz_MakeRule_add_recursive_rm_command(clean_rule, "coverage"); } + if (chaz_Probe_msvc_version_num()) { + chaz_MakeRule_add_rm_command(clean_rule, "test_cfish.obj"); + } + chaz_MakeRule_add_make_command(clean_rule, cfc_dir, "clean"); distclean_rule = chaz_MakeFile_distclean_rule(makefile);
