summaryrefslogtreecommitdiffstats
path: root/llvm/lib/System/Linux
diff options
context:
space:
mode:
authorReid Spencer <rspencer@reidspencer.com>2004-08-30 21:46:55 +0000
committerReid Spencer <rspencer@reidspencer.com>2004-08-30 21:46:55 +0000
commit79d4c3d5dbabbf0715e40ea83f5582201870ea6d (patch)
tree3ba320ae7fa41d5a68e3a299d980d223bf91be86 /llvm/lib/System/Linux
parentf98fff36ef859dc73708186d94fa57dfbedffda0 (diff)
downloadbcm5719-llvm-79d4c3d5dbabbf0715e40ea83f5582201870ea6d.tar.gz
bcm5719-llvm-79d4c3d5dbabbf0715e40ea83f5582201870ea6d.zip
Move the GetTemporaryDirectory function from "generic Unix" to platform
specific. llvm-svn: 16119
Diffstat (limited to 'llvm/lib/System/Linux')
-rw-r--r--llvm/lib/System/Linux/Path.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/llvm/lib/System/Linux/Path.cpp b/llvm/lib/System/Linux/Path.cpp
index e7efd2fb955..8ec35b3c4a4 100644
--- a/llvm/lib/System/Linux/Path.cpp
+++ b/llvm/lib/System/Linux/Path.cpp
@@ -33,6 +33,18 @@ Path::is_valid() const {
return true;
}
+Path
+Path::GetTemporaryDirectory() {
+ char pathname[MAXPATHLEN];
+ strcpy(pathname,"/tmp/llvm_XXXXXX");
+ if (0 == mkdtemp(pathname))
+ ThrowErrno(std::string(pathname) + ": Can't create temporary directory");
+ Path result;
+ result.set_directory(pathname);
+ assert(result.is_valid() && "mkdtemp didn't create a valid pathname!");
+ return result;
+}
+
}
// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab
OpenPOWER on IntegriCloud