| #!/usr/bin/env vpython3 | |
| # Copyright (c) 2020 The WebRTC project authors. All Rights Reserved. | |
| # | |
| # Use of this source code is governed by a BSD-style license | |
| # that can be found in the LICENSE file in the root of the source | |
| # tree. An additional intellectual property rights grant can be found | |
| # in the file PATENTS. All contributing project authors may | |
| # be found in the AUTHORS file in the root of the source tree. | |
| import argparse | |
| import re | |
| import sys | |
| def _ReplaceDoubleQuote(line): | |
| re_rtc_import = re.compile(r'(\s*)#import\s+"(\S+/|)(\w+\+|)RTC(\w+)\.h"(.*)', | |
| re.DOTALL) | |
| match = re_rtc_import.match(line) | |
| if not match: | |
| return line | |
| return '%s#import <WebRTC/%sRTC%s.h>%s' % (match.group(1), match.group(3), | |
| match.group(4), match.group(5)) | |
| def Process(input_file, output_file): | |
| with open(input_file, 'rb') as fb, open(output_file, 'wb') as fw: | |
| for line in fb.read().decode('UTF-8').splitlines(): | |
| fw.write(_ReplaceDoubleQuote(line).encode('UTF-8')) | |
| fw.write(b"\n") | |
| def main(): | |
| parser = argparse.ArgumentParser( | |
| description= | |
| "Copy headers of framework and replace double-quoted includes to" + | |
| " angle-bracketed respectively.") | |
| parser.add_argument('--input', help='Input header files to copy.', type=str) | |
| parser.add_argument('--output', help='Output file.', type=str) | |
| parsed_args = parser.parse_args() | |
| return Process(parsed_args.input, parsed_args.output) | |
| if __name__ == '__main__': | |
| sys.exit(main()) |