Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(103)

Side by Side Diff: build/android/gyp/javac.py

Issue 193693002: android: Pass (non-generated) .java files via a gyp filelist to javac.py (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: addsrc Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | build/java.gypi » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # 2 #
3 # Copyright 2013 The Chromium Authors. All rights reserved. 3 # Copyright 2013 The Chromium Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style license that can be 4 # Use of this source code is governed by a BSD-style license that can be
5 # found in the LICENSE file. 5 # found in the LICENSE file.
6 6
7 import fnmatch 7 import fnmatch
8 import optparse 8 import optparse
9 import os 9 import os
10 import sys 10 import sys
11 11
12 from util import build_utils 12 from util import build_utils
13 from util import md5_check 13 from util import md5_check
14 14
15 15
16 def DoJavac(options): 16 def DoJavac(options):
17 output_dir = options.output_dir 17 output_dir = options.output_dir
18 18
19 src_dirs = build_utils.ParseGypList(options.src_dirs) 19 src_gendirs = build_utils.ParseGypList(options.src_gendirs)
20 java_files = build_utils.FindInDirectories(src_dirs, '*.java') 20 java_files = (open(options.src_filelist).read().splitlines() +
21 build_utils.FindInDirectories(src_gendirs, '*.java'))
21 if options.javac_includes: 22 if options.javac_includes:
22 javac_includes = build_utils.ParseGypList(options.javac_includes) 23 javac_includes = build_utils.ParseGypList(options.javac_includes)
23 filtered_java_files = [] 24 filtered_java_files = []
24 for f in java_files: 25 for f in java_files:
25 for include in javac_includes: 26 for include in javac_includes:
26 if fnmatch.fnmatch(f, include): 27 if fnmatch.fnmatch(f, include):
27 filtered_java_files.append(f) 28 filtered_java_files.append(f)
28 break 29 break
29 java_files = filtered_java_files 30 java_files = filtered_java_files
30 31
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
69 record_path = '%s/javac.md5.stamp' % options.output_dir 70 record_path = '%s/javac.md5.stamp' % options.output_dir
70 md5_check.CallAndRecordIfStale( 71 md5_check.CallAndRecordIfStale(
71 Compile, 72 Compile,
72 record_path=record_path, 73 record_path=record_path,
73 input_paths=java_files + jar_inputs, 74 input_paths=java_files + jar_inputs,
74 input_strings=javac_cmd) 75 input_strings=javac_cmd)
75 76
76 77
77 def main(argv): 78 def main(argv):
78 parser = optparse.OptionParser() 79 parser = optparse.OptionParser()
79 parser.add_option('--src-dirs', help='Directories containing java files.') 80 parser.add_option('--src-filelist', help='File list containing java files.')
81 parser.add_option('--src-gendirs',
82 help='Directories containing generated java files.')
80 parser.add_option('--javac-includes', 83 parser.add_option('--javac-includes',
81 help='A list of file patterns. If provided, only java files that match' + 84 help='A list of file patterns. If provided, only java files that match' +
82 'one of the patterns will be compiled.') 85 'one of the patterns will be compiled.')
83 parser.add_option('--classpath', help='Classpath for javac.') 86 parser.add_option('--classpath', help='Classpath for javac.')
84 parser.add_option('--output-dir', help='Directory for javac output.') 87 parser.add_option('--output-dir', help='Directory for javac output.')
85 parser.add_option('--stamp', help='Path to touch on success.') 88 parser.add_option('--stamp', help='Path to touch on success.')
86 parser.add_option('--chromium-code', type='int', help='Whether code being ' 89 parser.add_option('--chromium-code', type='int', help='Whether code being '
87 'compiled should be built with stricter warnings for ' 90 'compiled should be built with stricter warnings for '
88 'chromium code.') 91 'chromium code.')
89 92
90 # TODO(newt): remove this once http://crbug.com/177552 is fixed in ninja. 93 # TODO(newt): remove this once http://crbug.com/177552 is fixed in ninja.
91 parser.add_option('--ignore', help='Ignored.') 94 parser.add_option('--ignore', help='Ignored.')
92 95
93 options, _ = parser.parse_args() 96 options, _ = parser.parse_args()
94 97
95 DoJavac(options) 98 DoJavac(options)
96 99
97 if options.stamp: 100 if options.stamp:
98 build_utils.Touch(options.stamp) 101 build_utils.Touch(options.stamp)
99 102
100 103
101 if __name__ == '__main__': 104 if __name__ == '__main__':
102 sys.exit(main(sys.argv)) 105 sys.exit(main(sys.argv))
103 106
104 107
OLDNEW
« no previous file with comments | « no previous file | build/java.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698