From f6f63eb50855ac2ccf37e2f5629f6a9e962d6c5e Mon Sep 17 00:00:00 2001 From: Nico Weber Date: Sat, 14 Jun 2014 22:05:09 -0700 Subject: make win-only --- src/disk_interface.h | 2 ++ src/ninja.cc | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/src/disk_interface.h b/src/disk_interface.h index d368c38..bffb679 100644 --- a/src/disk_interface.h +++ b/src/disk_interface.h @@ -66,12 +66,14 @@ struct RealDiskInterface : public DiskInterface { /// Whether to print on errors. Used to make a test quieter. bool quiet_; +#ifdef _WIN32 /// Whether stat information can be cached. bool use_cache_; typedef map DirCache; typedef map Cache; Cache cache_; +#endif }; #endif // NINJA_DISK_INTERFACE_H_ diff --git a/src/ninja.cc b/src/ninja.cc index acb793e..ccfc14d 100644 --- a/src/ninja.cc +++ b/src/ninja.cc @@ -889,8 +889,10 @@ int NinjaMain::RunBuild(int argc, char** argv) { return 1; } +#ifdef _WIN32 if (g_experimental_win_statcache) disk_interface_.use_cache_ = true; +#endif Builder builder(&state_, config_, &build_log_, &deps_log_, &disk_interface_); for (size_t i = 0; i < targets.size(); ++i) { @@ -905,8 +907,10 @@ int NinjaMain::RunBuild(int argc, char** argv) { } } +#ifdef _WIN32 // Make sure restat rules do not see stale timestamps. disk_interface_.use_cache_ = false; +#endif if (builder.AlreadyUpToDate()) { printf("ninja: no work to do.\n"); -- cgit v0.12