|
|
@@ -21,9 +21,10 @@ class cmFileTimeComparisonInternal
|
|
|
{
|
|
|
public:
|
|
|
// Internal comparison method.
|
|
|
- inline bool FileTimeCompare(const char* f1, const char* f2, int* result);
|
|
|
+ inline bool FileTimeCompare(const std::string& f1, const std::string& f2,
|
|
|
+ int* result);
|
|
|
|
|
|
- bool FileTimesDiffer(const char* f1, const char* f2);
|
|
|
+ bool FileTimesDiffer(const std::string& f1, const std::string& f2);
|
|
|
|
|
|
private:
|
|
|
typedef std::unordered_map<std::string, cmFileTimeComparison_Type>
|
|
|
@@ -31,14 +32,14 @@ private:
|
|
|
FileStatsMap Files;
|
|
|
|
|
|
// Internal methods to lookup and compare modification times.
|
|
|
- inline bool Stat(const char* fname, cmFileTimeComparison_Type* st);
|
|
|
+ inline bool Stat(const std::string& fname, cmFileTimeComparison_Type* st);
|
|
|
inline int Compare(cmFileTimeComparison_Type* st1,
|
|
|
cmFileTimeComparison_Type* st2);
|
|
|
inline bool TimesDiffer(cmFileTimeComparison_Type* st1,
|
|
|
cmFileTimeComparison_Type* st2);
|
|
|
};
|
|
|
|
|
|
-bool cmFileTimeComparisonInternal::Stat(const char* fname,
|
|
|
+bool cmFileTimeComparisonInternal::Stat(const std::string& fname,
|
|
|
cmFileTimeComparison_Type* st)
|
|
|
{
|
|
|
// Use the stored time if available.
|
|
|
@@ -51,7 +52,7 @@ bool cmFileTimeComparisonInternal::Stat(const char* fname,
|
|
|
|
|
|
#if !defined(_WIN32) || defined(__CYGWIN__)
|
|
|
// POSIX version. Use the stat function.
|
|
|
- int res = ::stat(fname, st);
|
|
|
+ int res = ::stat(fname.c_str(), st);
|
|
|
if (res != 0) {
|
|
|
return false;
|
|
|
}
|
|
|
@@ -83,13 +84,14 @@ cmFileTimeComparison::~cmFileTimeComparison()
|
|
|
delete this->Internals;
|
|
|
}
|
|
|
|
|
|
-bool cmFileTimeComparison::FileTimeCompare(const char* f1, const char* f2,
|
|
|
- int* result)
|
|
|
+bool cmFileTimeComparison::FileTimeCompare(const std::string& f1,
|
|
|
+ const std::string& f2, int* result)
|
|
|
{
|
|
|
return this->Internals->FileTimeCompare(f1, f2, result);
|
|
|
}
|
|
|
|
|
|
-bool cmFileTimeComparison::FileTimesDiffer(const char* f1, const char* f2)
|
|
|
+bool cmFileTimeComparison::FileTimesDiffer(const std::string& f1,
|
|
|
+ const std::string& f2)
|
|
|
{
|
|
|
return this->Internals->FileTimesDiffer(f1, f2);
|
|
|
}
|
|
|
@@ -199,8 +201,9 @@ bool cmFileTimeComparisonInternal::TimesDiffer(cmFileTimeComparison_Type* s1,
|
|
|
#endif
|
|
|
}
|
|
|
|
|
|
-bool cmFileTimeComparisonInternal::FileTimeCompare(const char* f1,
|
|
|
- const char* f2, int* result)
|
|
|
+bool cmFileTimeComparisonInternal::FileTimeCompare(const std::string& f1,
|
|
|
+ const std::string& f2,
|
|
|
+ int* result)
|
|
|
{
|
|
|
// Get the modification time for each file.
|
|
|
cmFileTimeComparison_Type s1;
|
|
|
@@ -215,8 +218,8 @@ bool cmFileTimeComparisonInternal::FileTimeCompare(const char* f1,
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
-bool cmFileTimeComparisonInternal::FileTimesDiffer(const char* f1,
|
|
|
- const char* f2)
|
|
|
+bool cmFileTimeComparisonInternal::FileTimesDiffer(const std::string& f1,
|
|
|
+ const std::string& f2)
|
|
|
{
|
|
|
// Get the modification time for each file.
|
|
|
cmFileTimeComparison_Type s1;
|