aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/environment.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2019-12-05 16:13:09 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2019-12-05 21:06:58 +0200
commit63bea704dded2cd6712e1386c5beb69be688c9f7 (patch)
treee397b404d3a99c01cdcca9d247c3e36ca0bbfa02 /mesonbuild/environment.py
parentbc5864ba2195ed95dba7aea6151b8493e6f9e91f (diff)
downloadmeson-63bea704dded2cd6712e1386c5beb69be688c9f7.zip
meson-63bea704dded2cd6712e1386c5beb69be688c9f7.tar.gz
meson-63bea704dded2cd6712e1386c5beb69be688c9f7.tar.bz2
Clean stray .o file that LDC creates during tests.
Diffstat (limited to 'mesonbuild/environment.py')
-rw-r--r--mesonbuild/environment.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
index d81f34f..905a218 100644
--- a/mesonbuild/environment.py
+++ b/mesonbuild/environment.py
@@ -1385,10 +1385,18 @@ class Environment:
linker = ClangClDynamicLinker(for_machine, version=search_version(o))
else:
with tempfile.NamedTemporaryFile(suffix='.d') as f:
+ # LDC writes an object file to the current working directory.
+ # Clean it up.
+ objectfile = os.path.basename(f.name)[:-1] + 'o'
linker = self._guess_nix_linker(
exelist, for_machine,
compilers.LLVMDCompiler.LINKER_PREFIX,
extra_args=[f.name])
+ try:
+ os.unlink(objectfile)
+ except Exception:
+ # Thank you Windows file system semantics and virus scanners.
+ pass
return compilers.LLVMDCompiler(
exelist, version, for_machine, info, arch,
full_version=full_version, linker=linker)