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

Side by Side Diff: source/test/depstest/depstest.py

Issue 1621843002: ICU 56 update step 1 (Closed) Base URL: https://chromium.googlesource.com/chromium/deps/icu.git@561
Patch Set: Created 4 years, 11 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
« no previous file with comments | « source/test/depstest/dependencies.txt ('k') | source/test/hdrtst/cxxfiles.txt » ('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/python 1 #! /usr/bin/python
2 # -*- coding: utf-8 -*- 2 # -*- coding: utf-8 -*-
3 # 3 #
4 # Copyright (C) 2011-2014, International Business Machines 4 # Copyright (C) 2011-2015, International Business Machines
5 # Corporation and others. All Rights Reserved. 5 # Corporation and others. All Rights Reserved.
6 # 6 #
7 # file name: depstest.py 7 # file name: depstest.py
8 # 8 #
9 # created on: 2011may24 9 # created on: 2011may24
10 10
11 """ICU dependency tester. 11 """ICU dependency tester.
12 12
13 This probably works only on Linux. 13 This probably works only on Linux.
14 14
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
53 stdout=subprocess.PIPE).communicate()[0] 53 stdout=subprocess.PIPE).communicate()[0]
54 obj_imports = set() 54 obj_imports = set()
55 obj_exports = set() 55 obj_exports = set()
56 for line in nm_result.splitlines(): 56 for line in nm_result.splitlines():
57 fields = line.split("|") 57 fields = line.split("|")
58 if len(fields) == 1: continue 58 if len(fields) == 1: continue
59 name = fields[0].strip() 59 name = fields[0].strip()
60 # Ignore symbols like '__cxa_pure_virtual', 60 # Ignore symbols like '__cxa_pure_virtual',
61 # 'vtable for __cxxabiv1::__si_class_type_info' or 61 # 'vtable for __cxxabiv1::__si_class_type_info' or
62 # 'DW.ref.__gxx_personality_v0'. 62 # 'DW.ref.__gxx_personality_v0'.
63 if name.startswith("__cxa") or "__cxxabi" in name or "__gxx" in name: 63 # '__dso_handle' belongs to __cxa_atexit().
64 if (name.startswith("__cxa") or "__cxxabi" in name or "__gxx" in name or
65 name == "__dso_handle"):
64 _ignored_symbols.add(name) 66 _ignored_symbols.add(name)
65 continue 67 continue
66 type = fields[2].strip() 68 type = fields[2].strip()
67 if type == "U": 69 if type == "U":
68 obj_imports.add(name) 70 obj_imports.add(name)
69 else: 71 else:
70 obj_exports.add(name) 72 obj_exports.add(name)
71 _symbols_to_files[name] = lib_obj_name 73 _symbols_to_files[name] = lib_obj_name
72 # Is this a vtable? E.g., "vtable for icu_49::ByteSink". 74 # Is this a vtable? E.g., "vtable for icu_49::ByteSink".
73 if name.startswith("vtable for icu"): 75 if name.startswith("vtable for icu"):
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
187 if _ignored_symbols: 189 if _ignored_symbols:
188 print "Info: ignored symbols:\n%s" % sorted(_ignored_symbols) 190 print "Info: ignored symbols:\n%s" % sorted(_ignored_symbols)
189 if not _return_value: 191 if not _return_value:
190 print "OK: Specified and actual dependencies match." 192 print "OK: Specified and actual dependencies match."
191 else: 193 else:
192 print "Error: There were errors, please fix them and re-run. Processing may have terminated abnormally." 194 print "Error: There were errors, please fix them and re-run. Processing may have terminated abnormally."
193 return _return_value 195 return _return_value
194 196
195 if __name__ == "__main__": 197 if __name__ == "__main__":
196 sys.exit(main()) 198 sys.exit(main())
OLDNEW
« no previous file with comments | « source/test/depstest/dependencies.txt ('k') | source/test/hdrtst/cxxfiles.txt » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698