fix windows build after depslog
authorScott Graham <scottmg@chromium.org>
Tue, 9 Apr 2013 17:03:46 +0000 (10:03 -0700)
committerScott Graham <scottmg@chromium.org>
Tue, 9 Apr 2013 17:03:46 +0000 (10:03 -0700)
bootstrap.py
src/build.cc
src/deps_log.cc
src/line_printer.cc
src/line_printer.h

index 4d9bc84..f83b2d0 100755 (executable)
@@ -127,8 +127,7 @@ if options.verbose:
 
 if options.windows:
     print('Building ninja using itself...')
-    run([sys.executable, 'configure.py', '--with-ninja=%s' % binary] +
-        conf_args)
+    run([sys.executable, 'configure.py'] + conf_args)
     run(['./' + binary] + verbose)
 
     # Copy the new executable over the bootstrap one.
index ab3d781..39e3e2a 100644 (file)
@@ -247,7 +247,7 @@ void BuildStatus::PrintStatus(Edge* edge) {
   to_print = FormatProgressStatus(progress_status_format_) + to_print;
 
   printer_.Print(to_print,
-                 force_full_command ? LinePrinter::FULL : LinePrinter::SHORT);
+                 force_full_command ? LinePrinter::FULL : LinePrinter::ELIDE);
 }
 
 Plan::Plan() : command_edges_(0), wanted_edges_(0) {}
index 8946e32..55ed30a 100644 (file)
@@ -18,7 +18,9 @@
 #include <stdio.h>
 #include <errno.h>
 #include <string.h>
+#ifndef _WIN32
 #include <unistd.h>
+#endif
 
 #include "graph.h"
 #include "metrics.h"
index d30dd2c..751fb07 100644 (file)
@@ -57,7 +57,7 @@ void LinePrinter::Print(std::string to_print, LineType type) {
 #endif
   }
 
-  if (smart_terminal_ && type == SHORT) {
+  if (smart_terminal_ && type == ELIDE) {
 #ifdef _WIN32
     // Don't use the full width or console will move to next line.
     size_t width = static_cast<size_t>(csbi.dwSize.X) - 1;
@@ -68,9 +68,11 @@ void LinePrinter::Print(std::string to_print, LineType type) {
     GetConsoleScreenBufferInfo(console_, &csbi);
     COORD buf_size = { csbi.dwSize.X, 1 };
     COORD zero_zero = { 0, 0 };
-    SMALL_RECT target = { csbi.dwCursorPosition.X, csbi.dwCursorPosition.Y,
-                          (SHORT)(csbi.dwCursorPosition.X + csbi.dwSize.X - 1),
-                          csbi.dwCursorPosition.Y };
+    SMALL_RECT target = {
+      csbi.dwCursorPosition.X, csbi.dwCursorPosition.Y,
+      static_cast<SHORT>(csbi.dwCursorPosition.X + csbi.dwSize.X - 1),
+      csbi.dwCursorPosition.Y
+    };
     CHAR_INFO* char_data = new CHAR_INFO[csbi.dwSize.X];
     memset(char_data, 0, sizeof(CHAR_INFO) * csbi.dwSize.X);
     for (int i = 0; i < csbi.dwSize.X; ++i) {
index 78510ea..54620da 100644 (file)
@@ -28,9 +28,9 @@ class LinePrinter {
 
   enum LineType {
     FULL,
-    SHORT
+    ELIDE
   };
-  /// Overprints the current line. If type is SHORT, elides to_print to fit on
+  /// Overprints the current line. If type is ELIDE, elides to_print to fit on
   /// one line.
   void Print(std::string to_print, LineType type);
 
@@ -43,6 +43,8 @@ class LinePrinter {
 
   /// Whether the caret is at the beginning of a blank line.
   bool have_blank_line_;
+
+  void* console_;
 };
 
 #endif  // NINJA_LINE_PRINTER_H_