From 089cb5f96e400d4ab7c9d8041cb51eb8f118d9c1 Mon Sep 17 00:00:00 2001 From: Stijn Buys Date: Fri, 1 Aug 2008 19:57:03 +0000 Subject: initial make install support --- src/sys/sys.cc | 14 ++++++++++++++ src/sys/sys.h | 3 +++ 2 files changed, 17 insertions(+) (limited to 'src/sys') diff --git a/src/sys/sys.cc b/src/sys/sys.cc index da9b08d..9526166 100644 --- a/src/sys/sys.cc +++ b/src/sys/sys.cc @@ -27,6 +27,20 @@ namespace sys { +bool isdirectory(std::string const &path) +{ + struct stat path_stat; + memset(&path_stat, 0, sizeof(path_stat)); + if (stat(path.c_str(), &path_stat) != 0) + return false; + + if (path_stat.st_mode & S_IFDIR) { + return true; + } + + return false; +} + void mkdir(std::string const &path) { #ifdef _WIN32 diff --git a/src/sys/sys.h b/src/sys/sys.h index e455b82..66040f0 100644 --- a/src/sys/sys.h +++ b/src/sys/sys.h @@ -21,6 +21,9 @@ namespace sys { typedef void (* signalfunc)(int signum); +/// check if a path exists and if it is a directory +bool isdirectory(std::string const &path); + /// create a directory void mkdir(std::string const &path); -- cgit v1.2.3