summaryrefslogtreecommitdiffstats
path: root/src/util.cc
diff options
context:
space:
mode:
authorEvan Martin <martine@danga.com>2011-05-02 02:43:51 (GMT)
committerEvan Martin <martine@danga.com>2011-05-02 14:21:33 (GMT)
commitd660db1f8b7f1f2c1b87d2fa06da26fdc45809c3 (patch)
tree6c0b935b6e8c8b24c4420e8307393dc88f4e2f14 /src/util.cc
parent2ca4e98e86d6b4a3879842468c9e3fd4745f8fe4 (diff)
downloadNinja-d660db1f8b7f1f2c1b87d2fa06da26fdc45809c3.zip
Ninja-d660db1f8b7f1f2c1b87d2fa06da26fdc45809c3.tar.gz
Ninja-d660db1f8b7f1f2c1b87d2fa06da26fdc45809c3.tar.bz2
windows: abstract around mkdir vs _mkdir
Diffstat (limited to 'src/util.cc')
-rw-r--r--src/util.cc14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/util.cc b/src/util.cc
index 060ea16..9d13ca3 100644
--- a/src/util.cc
+++ b/src/util.cc
@@ -18,9 +18,15 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <sys/stat.h>
+#include <sys/types.h>
#include <vector>
+#ifdef _WIN32
+#include <direct.h> // _mkdir
+#endif
+
void Fatal(const char* msg, ...) {
va_list ap;
fprintf(stderr, "ninja: FATAL: ");
@@ -127,3 +133,11 @@ bool CanonicalizePath(string* path, string* err) {
return true;
}
+
+int MakeDir(const string& path) {
+#ifdef _WIN32
+ return _mkdir(path.c_str());
+#else
+ return mkdir(path.c_str(), 0777);
+#endif
+}