| #!/usr/bin/env python3 |
| # Copyright 2016 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| """Takes a timestamp and writes it in as readable text to a .h file.""" |
| |
| import argparse |
| import datetime |
| import os |
| import sys |
| |
| |
| def main(): |
| argument_parser = argparse.ArgumentParser() |
| argument_parser.add_argument('output_file', help='The file to write to') |
| argument_parser.add_argument('timestamp') |
| args = argument_parser.parse_args() |
| |
| date_val = int(args.timestamp) |
| date = datetime.datetime.utcfromtimestamp(date_val) |
| output = ('// Generated by //base/write_build_date_header.py\n' |
| '#ifndef BASE_GENERATED_BUILD_DATE_TIMESTAMP \n' |
| f'#define BASE_GENERATED_BUILD_DATE_TIMESTAMP {date_val}' |
| f' // {date:%b %d %Y %H:%M:%S}\n' |
| '#endif // BASE_GENERATED_BUILD_DATE_TIMESTAMP \n') |
| |
| current_contents = '' |
| if os.path.isfile(args.output_file): |
| with open(args.output_file, 'r') as current_file: |
| current_contents = current_file.read() |
| |
| if current_contents != output: |
| with open(args.output_file, 'w') as output_file: |
| output_file.write(output) |
| return 0 |
| |
| |
| if __name__ == '__main__': |
| sys.exit(main()) |