diff options
-rw-r--r-- | Source/cmSystemTools.cxx | 122 | ||||
-rw-r--r-- | Source/cmSystemTools.h | 14 |
2 files changed, 0 insertions, 136 deletions
diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index 545e6c5..9fdcfae 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -6,7 +6,6 @@ #include "cmDuration.h" #include "cmProcessOutput.h" #include "cmRange.h" -#include "cm_sys_stat.h" #include "cm_uv.h" #if defined(CMAKE_BUILD_WITH_CMAKE) @@ -60,7 +59,6 @@ #else # include <sys/time.h> # include <unistd.h> -# include <utime.h> #endif #if defined(_WIN32) && \ @@ -90,18 +88,6 @@ static bool cm_isspace(char c) return ((c & 0x80) == 0) && isspace(c); } -class cmSystemToolsFileTime -{ -public: -#if defined(_WIN32) && !defined(__CYGWIN__) - FILETIME timeCreation; - FILETIME timeLastAccess; - FILETIME timeLastWrite; -#else - struct utimbuf timeBuf; -#endif -}; - #if !defined(HAVE_ENVIRON_NOT_REQUIRE_PROTOTYPE) // For GetEnvironmentVariables # if defined(_WIN32) @@ -134,29 +120,6 @@ static int cm_archive_read_open_file(struct archive* a, const char* file, #endif #ifdef _WIN32 -class cmSystemToolsWindowsHandle -{ -public: - cmSystemToolsWindowsHandle(HANDLE h) - : handle_(h) - { - } - ~cmSystemToolsWindowsHandle() - { - if (this->handle_ != INVALID_HANDLE_VALUE) { - CloseHandle(this->handle_); - } - } - explicit operator bool() const - { - return this->handle_ != INVALID_HANDLE_VALUE; - } - bool operator!() const { return this->handle_ == INVALID_HANDLE_VALUE; } - operator HANDLE() const { return this->handle_; } - -private: - HANDLE handle_; -}; #elif defined(__APPLE__) # include <crt_externs.h> @@ -2098,91 +2061,6 @@ void cmSystemTools::DoNotInheritStdPipes() #endif } -bool cmSystemTools::CopyFileTime(const std::string& fromFile, - const std::string& toFile) -{ -#if defined(_WIN32) && !defined(__CYGWIN__) - cmSystemToolsWindowsHandle hFrom = CreateFileW( - SystemTools::ConvertToWindowsExtendedPath(fromFile).c_str(), GENERIC_READ, - FILE_SHARE_READ, 0, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, 0); - cmSystemToolsWindowsHandle hTo = CreateFileW( - SystemTools::ConvertToWindowsExtendedPath(toFile).c_str(), - FILE_WRITE_ATTRIBUTES, 0, 0, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, 0); - if (!hFrom || !hTo) { - return false; - } - FILETIME timeCreation; - FILETIME timeLastAccess; - FILETIME timeLastWrite; - if (!GetFileTime(hFrom, &timeCreation, &timeLastAccess, &timeLastWrite)) { - return false; - } - return SetFileTime(hTo, &timeCreation, &timeLastAccess, &timeLastWrite) != 0; -#else - struct stat fromStat; - if (stat(fromFile.c_str(), &fromStat) < 0) { - return false; - } - - struct utimbuf buf; - buf.actime = fromStat.st_atime; - buf.modtime = fromStat.st_mtime; - return utime(toFile.c_str(), &buf) >= 0; -#endif -} - -cmSystemToolsFileTime* cmSystemTools::FileTimeNew() -{ - return new cmSystemToolsFileTime; -} - -void cmSystemTools::FileTimeDelete(cmSystemToolsFileTime* t) -{ - delete t; -} - -bool cmSystemTools::FileTimeGet(const std::string& fname, - cmSystemToolsFileTime* t) -{ -#if defined(_WIN32) && !defined(__CYGWIN__) - cmSystemToolsWindowsHandle h = CreateFileW( - SystemTools::ConvertToWindowsExtendedPath(fname).c_str(), GENERIC_READ, - FILE_SHARE_READ, 0, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, 0); - if (!h) { - return false; - } - if (!GetFileTime(h, &t->timeCreation, &t->timeLastAccess, - &t->timeLastWrite)) { - return false; - } -#else - struct stat st; - if (stat(fname.c_str(), &st) < 0) { - return false; - } - t->timeBuf.actime = st.st_atime; - t->timeBuf.modtime = st.st_mtime; -#endif - return true; -} - -bool cmSystemTools::FileTimeSet(const std::string& fname, - const cmSystemToolsFileTime* t) -{ -#if defined(_WIN32) && !defined(__CYGWIN__) - cmSystemToolsWindowsHandle h = CreateFileW( - SystemTools::ConvertToWindowsExtendedPath(fname).c_str(), - FILE_WRITE_ATTRIBUTES, 0, 0, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, 0); - if (!h) { - return false; - } - return SetFileTime(h, &t->timeCreation, &t->timeLastAccess, - &t->timeLastWrite) != 0; -#else - return utime(fname.c_str(), &t->timeBuf) >= 0; -#endif -} - #ifdef _WIN32 # ifndef CRYPT_SILENT # define CRYPT_SILENT 0x40 /* Not defined by VS 6 version of header. */ diff --git a/Source/cmSystemTools.h b/Source/cmSystemTools.h index d145d47..fefa413 100644 --- a/Source/cmSystemTools.h +++ b/Source/cmSystemTools.h @@ -15,8 +15,6 @@ #include <string> #include <vector> -class cmSystemToolsFileTime; - /** \class cmSystemTools * \brief A collection of useful functions for CMake. * @@ -470,18 +468,6 @@ public: static void EnsureStdPipes(); - /** Copy the file create/access/modify times from the file named by - the first argument to that named by the second. */ - static bool CopyFileTime(const std::string& fromFile, - const std::string& toFile); - - /** Save and restore file times. */ - static cmSystemToolsFileTime* FileTimeNew(); - static void FileTimeDelete(cmSystemToolsFileTime*); - static bool FileTimeGet(const std::string& fname, cmSystemToolsFileTime* t); - static bool FileTimeSet(const std::string& fname, - const cmSystemToolsFileTime* t); - /** Random seed generation. */ static unsigned int RandomSeed(); |