From cfd0bd3007b291df505f8c45083453310142d681 Mon Sep 17 00:00:00 2001 From: Guilhem Charles Date: Sat, 12 Jan 2019 13:35:44 +0100 Subject: 1492 add column headers to .ninja_log --- src/build_log.cc | 4 +++- src/build_log_test.cc | 9 +++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/build_log.cc b/src/build_log.cc index c4a08a0..774f72f 100644 --- a/src/build_log.cc +++ b/src/build_log.cc @@ -49,6 +49,7 @@ namespace { const char kFileSignature[] = "# ninja log v%d\n"; +const char kFileColumnLabels[] = "# start_time end_time mtime command hash\n"; const int kOldestSupportedVersion = 4; const int kCurrentVersion = 5; @@ -144,7 +145,8 @@ bool BuildLog::OpenForWrite(const string& path, const BuildLogUser& user, fseek(log_file_, 0, SEEK_END); if (ftell(log_file_) == 0) { - if (fprintf(log_file_, kFileSignature, kCurrentVersion) < 0) { + if (fprintf(log_file_, kFileSignature, kCurrentVersion) < 0 || + fprintf(log_file_, kFileColumnLabels) < 0) { *err = strerror(errno); return false; } diff --git a/src/build_log_test.cc b/src/build_log_test.cc index ad30380..eea818f 100644 --- a/src/build_log_test.cc +++ b/src/build_log_test.cc @@ -70,8 +70,9 @@ TEST_F(BuildLogTest, WriteRead) { } TEST_F(BuildLogTest, FirstWriteAddsSignature) { - const char kExpectedVersion[] = "# ninja log vX\n"; - const size_t kVersionPos = strlen(kExpectedVersion) - 2; // Points at 'X'. + const char kExpectedContent[] = "# ninja log vX\n" + "# start_time end_time mtime command hash\n"; + const size_t kVersionPos = 13; // Points at 'X'. BuildLog log; string contents, err; @@ -84,7 +85,7 @@ TEST_F(BuildLogTest, FirstWriteAddsSignature) { ASSERT_EQ("", err); if (contents.size() >= kVersionPos) contents[kVersionPos] = 'X'; - EXPECT_EQ(kExpectedVersion, contents); + EXPECT_EQ(kExpectedContent, contents); // Opening the file anew shouldn't add a second version string. EXPECT_TRUE(log.OpenForWrite(kTestFilename, *this, &err)); @@ -96,7 +97,7 @@ TEST_F(BuildLogTest, FirstWriteAddsSignature) { ASSERT_EQ("", err); if (contents.size() >= kVersionPos) contents[kVersionPos] = 'X'; - EXPECT_EQ(kExpectedVersion, contents); + EXPECT_EQ(kExpectedContent, contents); } TEST_F(BuildLogTest, DoubleEntry) { -- cgit v1.2.1