blob: 8383dc0c3def24c4b439357ebe13467c33bdbce1 [file] [log] [blame]
Chih-Hung Hsieh949205a2020-01-10 10:33:40 -08001# python3
Chih-Hung Hsieh888d1432019-12-09 19:32:03 -08002# Copyright (C) 2019 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15
16"""Define a project list to sort warnings by project directory path."""
17
18
Chih-Hung Hsieh949205a2020-01-10 10:33:40 -080019def create_pattern(name, pattern=None):
Chih-Hung Hsieh98b285d2021-04-28 14:49:32 -070020 """Return a tuple of name and warn patten."""
Chih-Hung Hsieh949205a2020-01-10 10:33:40 -080021 if pattern is not None:
22 return [name, '(^|.*/)' + pattern + '/.*: warning:']
23 return [name, '(^|.*/)' + name + '/.*: warning:']
Chih-Hung Hsieh888d1432019-12-09 19:32:03 -080024
25
26# A list of [project_name, file_path_pattern].
27# project_name should not contain comma, to be used in CSV output.
28project_list = [
Chih-Hung Hsieh949205a2020-01-10 10:33:40 -080029 create_pattern('art'),
30 create_pattern('bionic'),
31 create_pattern('bootable'),
32 create_pattern('build'),
33 create_pattern('cts'),
34 create_pattern('dalvik'),
35 create_pattern('developers'),
36 create_pattern('development'),
37 create_pattern('device'),
38 create_pattern('doc'),
Chih-Hung Hsieh888d1432019-12-09 19:32:03 -080039 # match external/google* before external/
Chih-Hung Hsieh949205a2020-01-10 10:33:40 -080040 create_pattern('external/google', 'external/google.*'),
41 create_pattern('external/non-google', 'external'),
42 create_pattern('frameworks/av/camera'),
43 create_pattern('frameworks/av/cmds'),
44 create_pattern('frameworks/av/drm'),
45 create_pattern('frameworks/av/include'),
46 create_pattern('frameworks/av/media/img_utils'),
47 create_pattern('frameworks/av/media/libcpustats'),
48 create_pattern('frameworks/av/media/libeffects'),
49 create_pattern('frameworks/av/media/libmediaplayerservice'),
50 create_pattern('frameworks/av/media/libmedia'),
51 create_pattern('frameworks/av/media/libstagefright'),
52 create_pattern('frameworks/av/media/mtp'),
53 create_pattern('frameworks/av/media/ndk'),
54 create_pattern('frameworks/av/media/utils'),
55 create_pattern('frameworks/av/media/Other', 'frameworks/av/media'),
56 create_pattern('frameworks/av/radio'),
57 create_pattern('frameworks/av/services'),
58 create_pattern('frameworks/av/soundtrigger'),
59 create_pattern('frameworks/av/Other', 'frameworks/av'),
60 create_pattern('frameworks/base/cmds'),
61 create_pattern('frameworks/base/core'),
62 create_pattern('frameworks/base/drm'),
63 create_pattern('frameworks/base/media'),
64 create_pattern('frameworks/base/libs'),
65 create_pattern('frameworks/base/native'),
66 create_pattern('frameworks/base/packages'),
67 create_pattern('frameworks/base/rs'),
68 create_pattern('frameworks/base/services'),
69 create_pattern('frameworks/base/tests'),
70 create_pattern('frameworks/base/tools'),
71 create_pattern('frameworks/base/Other', 'frameworks/base'),
72 create_pattern('frameworks/compile/libbcc'),
73 create_pattern('frameworks/compile/mclinker'),
74 create_pattern('frameworks/compile/slang'),
75 create_pattern('frameworks/compile/Other', 'frameworks/compile'),
76 create_pattern('frameworks/minikin'),
77 create_pattern('frameworks/ml'),
78 create_pattern('frameworks/native/cmds'),
79 create_pattern('frameworks/native/include'),
80 create_pattern('frameworks/native/libs'),
81 create_pattern('frameworks/native/opengl'),
82 create_pattern('frameworks/native/services'),
83 create_pattern('frameworks/native/vulkan'),
84 create_pattern('frameworks/native/Other', 'frameworks/native'),
85 create_pattern('frameworks/opt'),
86 create_pattern('frameworks/rs'),
87 create_pattern('frameworks/webview'),
88 create_pattern('frameworks/wilhelm'),
89 create_pattern('frameworks/Other', 'frameworks'),
90 create_pattern('hardware/akm'),
91 create_pattern('hardware/broadcom'),
92 create_pattern('hardware/google'),
93 create_pattern('hardware/intel'),
94 create_pattern('hardware/interfaces'),
95 create_pattern('hardware/libhardware'),
96 create_pattern('hardware/libhardware_legacy'),
97 create_pattern('hardware/qcom'),
98 create_pattern('hardware/ril'),
99 create_pattern('hardware/Other', 'hardware'),
100 create_pattern('kernel'),
101 create_pattern('libcore'),
102 create_pattern('libnativehelper'),
103 create_pattern('ndk'),
Chih-Hung Hsieh888d1432019-12-09 19:32:03 -0800104 # match vendor/unbungled_google/packages before other packages
Chih-Hung Hsieh949205a2020-01-10 10:33:40 -0800105 create_pattern('unbundled_google'),
Jeff Sharkey7a3c6122020-05-03 11:36:16 -0600106 create_pattern('packages/providers/MediaProvider'),
Chih-Hung Hsieh949205a2020-01-10 10:33:40 -0800107 create_pattern('packages'),
108 create_pattern('pdk'),
109 create_pattern('prebuilts'),
110 create_pattern('system/bt'),
111 create_pattern('system/connectivity'),
112 create_pattern('system/core/adb'),
Baligh Uddin71fab5c2020-10-23 14:15:26 +0000113 create_pattern('system/libbase'),
Chih-Hung Hsieh949205a2020-01-10 10:33:40 -0800114 create_pattern('system/core/debuggerd'),
115 create_pattern('system/core/fastboot'),
116 create_pattern('system/core/fingerprintd'),
117 create_pattern('system/core/fs_mgr'),
118 create_pattern('system/core/gatekeeperd'),
119 create_pattern('system/core/healthd'),
120 create_pattern('system/core/include'),
121 create_pattern('system/core/init'),
Baligh Uddin4dc00c62020-10-27 19:44:34 +0000122 create_pattern('system/unwinding/libbacktrace'),
Baligh Uddin84280df2020-10-26 14:34:45 +0000123 create_pattern('system/logging/liblog'),
Chih-Hung Hsieh949205a2020-01-10 10:33:40 -0800124 create_pattern('system/core/libpixelflinger'),
125 create_pattern('system/core/libprocessgroup'),
126 create_pattern('system/core/libsysutils'),
127 create_pattern('system/core/logcat'),
128 create_pattern('system/core/logd'),
129 create_pattern('system/core/run-as'),
130 create_pattern('system/core/sdcard'),
131 create_pattern('system/core/toolbox'),
132 create_pattern('system/core/Other', 'system/core'),
133 create_pattern('system/extras/ANRdaemon'),
134 create_pattern('system/extras/cpustats'),
135 create_pattern('system/extras/crypto-perf'),
136 create_pattern('system/extras/ext4_utils'),
137 create_pattern('system/extras/f2fs_utils'),
138 create_pattern('system/extras/iotop'),
139 create_pattern('system/extras/libfec'),
140 create_pattern('system/extras/memory_replay'),
141 create_pattern('system/extras/mmap-perf'),
142 create_pattern('system/extras/multinetwork'),
143 create_pattern('system/extras/perfprofd'),
144 create_pattern('system/extras/procrank'),
145 create_pattern('system/extras/runconuid'),
146 create_pattern('system/extras/showmap'),
147 create_pattern('system/extras/simpleperf'),
148 create_pattern('system/extras/su'),
149 create_pattern('system/extras/tests'),
150 create_pattern('system/extras/verity'),
151 create_pattern('system/extras/Other', 'system/extras'),
152 create_pattern('system/gatekeeper'),
153 create_pattern('system/keymaster'),
154 create_pattern('system/libhidl'),
155 create_pattern('system/libhwbinder'),
156 create_pattern('system/media'),
157 create_pattern('system/netd'),
158 create_pattern('system/nvram'),
159 create_pattern('system/security'),
160 create_pattern('system/sepolicy'),
161 create_pattern('system/tools'),
162 create_pattern('system/update_engine'),
163 create_pattern('system/vold'),
164 create_pattern('system/Other', 'system'),
165 create_pattern('toolchain'),
166 create_pattern('test'),
167 create_pattern('tools'),
Chih-Hung Hsieh888d1432019-12-09 19:32:03 -0800168 # match vendor/google* before vendor/
Chih-Hung Hsieh949205a2020-01-10 10:33:40 -0800169 create_pattern('vendor/google', 'vendor/google.*'),
170 create_pattern('vendor/non-google', 'vendor'),
Chih-Hung Hsieh888d1432019-12-09 19:32:03 -0800171 # keep out/obj and other patterns at the end.
Chih-Hung Hsieh949205a2020-01-10 10:33:40 -0800172 [
173 'out/obj', '.*/(gen|obj[^/]*)/(include|EXECUTABLES|SHARED_LIBRARIES|'
174 'STATIC_LIBRARIES|NATIVE_TESTS)/.*: warning:'
175 ],
Chih-Hung Hsieh888d1432019-12-09 19:32:03 -0800176 ['other', '.*'] # all other unrecognized patterns
177]