Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 #!/usr/bin/python | |
| 2 | |
| 3 # Copyright 2014 Google Inc. | |
| 4 # | |
| 5 # Use of this source code is governed by a BSD-style license that can be | |
| 6 # found in the LICENSE file. | |
| 7 | |
| 8 """Function for generating public_headers.gypi.""" | |
| 9 | |
| 10 import os | |
| 11 | |
| 12 | |
| 13 AUTOGEN_WARNING = ( | |
| 14 """ | |
| 15 ############################################################################### | |
| 16 # | |
| 17 # THIS FILE IS AUTOGENERATED BY GYP_TO_ANDROID.PY. DO NOT EDIT. | |
| 18 # | |
| 19 # Include this gypi to include all public header files that exist in the | |
| 20 # include directory. | |
| 21 | |
| 22 ############################################################################### | |
| 23 | |
| 24 """ | |
| 25 ) | |
| 26 | |
| 27 | |
| 28 def find_header_files(top_dir): | |
| 29 """Return a list of all '.h' files in top_dir. | |
| 30 | |
| 31 Args: | |
| 32 top_dir: Path to a directory within which to recursively search for | |
| 33 files ending in '.h' | |
| 34 | |
| 35 Returns: | |
| 36 A list of all the files inside top_dir that end in '.h', relative to | |
| 37 top_dir. | |
| 38 """ | |
| 39 headers = [] | |
|
hal.canary
2014/03/27 12:30:15
More Pythonic:
return sorted(
os.path.join(
scroggo
2014/03/27 19:33:00
Thanks for the feedback! I'm actually removing thi
| |
| 40 for filename in os.listdir(top_dir): | |
| 41 full_path = os.path.join(top_dir, filename) | |
| 42 if os.path.isdir(full_path): | |
| 43 nested_headers = find_header_files(full_path) | |
| 44 for nested_header in nested_headers: | |
| 45 headers.append(os.path.join(filename, nested_header)) | |
| 46 else: | |
| 47 if filename.endswith('.h'): | |
| 48 headers.append(filename) | |
| 49 return headers | |
| 50 | |
| 51 | |
| 52 def generate_public_headers(dst, top_dir): | |
| 53 """Create a file listing all the header files in top_dir. | |
| 54 | |
| 55 Args: | |
| 56 dst: Path to new file to be written. | |
| 57 top_dir: Path to a directory within which to recursively search for | |
| 58 files ending in '.h' | |
| 59 """ | |
| 60 with open(dst, 'w') as f: | |
| 61 f.write(AUTOGEN_WARNING) | |
| 62 | |
| 63 f.write('{\n') | |
| 64 f.write(' \'variables\': {\n') | |
| 65 f.write(' \'header_filenames\': [\n') | |
| 66 for header in sorted(find_header_files(top_dir)): | |
| 67 f.write(' \'%s\',\n' % header) | |
| 68 f.write(' ],\n') | |
| 69 f.write(' },\n') | |
| 70 f.write('}\n') | |
| OLD | NEW |