Chih-Hung Hsieh | 888d143 | 2019-12-09 19:32:03 -0800 | [diff] [blame^] | 1 | # |
| 2 | # 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 | |
| 19 | def project_name_and_pattern(name, pattern): |
| 20 | return [name, '(^|.*/)' + pattern + '/.*: warning:'] |
| 21 | |
| 22 | |
| 23 | def simple_project_pattern(pattern): |
| 24 | return project_name_and_pattern(pattern, pattern) |
| 25 | |
| 26 | |
| 27 | # A list of [project_name, file_path_pattern]. |
| 28 | # project_name should not contain comma, to be used in CSV output. |
| 29 | project_list = [ |
| 30 | simple_project_pattern('art'), |
| 31 | simple_project_pattern('bionic'), |
| 32 | simple_project_pattern('bootable'), |
| 33 | simple_project_pattern('build'), |
| 34 | simple_project_pattern('cts'), |
| 35 | simple_project_pattern('dalvik'), |
| 36 | simple_project_pattern('developers'), |
| 37 | simple_project_pattern('development'), |
| 38 | simple_project_pattern('device'), |
| 39 | simple_project_pattern('doc'), |
| 40 | # match external/google* before external/ |
| 41 | project_name_and_pattern('external/google', 'external/google.*'), |
| 42 | project_name_and_pattern('external/non-google', 'external'), |
| 43 | simple_project_pattern('frameworks/av/camera'), |
| 44 | simple_project_pattern('frameworks/av/cmds'), |
| 45 | simple_project_pattern('frameworks/av/drm'), |
| 46 | simple_project_pattern('frameworks/av/include'), |
| 47 | simple_project_pattern('frameworks/av/media/img_utils'), |
| 48 | simple_project_pattern('frameworks/av/media/libcpustats'), |
| 49 | simple_project_pattern('frameworks/av/media/libeffects'), |
| 50 | simple_project_pattern('frameworks/av/media/libmediaplayerservice'), |
| 51 | simple_project_pattern('frameworks/av/media/libmedia'), |
| 52 | simple_project_pattern('frameworks/av/media/libstagefright'), |
| 53 | simple_project_pattern('frameworks/av/media/mtp'), |
| 54 | simple_project_pattern('frameworks/av/media/ndk'), |
| 55 | simple_project_pattern('frameworks/av/media/utils'), |
| 56 | project_name_and_pattern('frameworks/av/media/Other', |
| 57 | 'frameworks/av/media'), |
| 58 | simple_project_pattern('frameworks/av/radio'), |
| 59 | simple_project_pattern('frameworks/av/services'), |
| 60 | simple_project_pattern('frameworks/av/soundtrigger'), |
| 61 | project_name_and_pattern('frameworks/av/Other', 'frameworks/av'), |
| 62 | simple_project_pattern('frameworks/base/cmds'), |
| 63 | simple_project_pattern('frameworks/base/core'), |
| 64 | simple_project_pattern('frameworks/base/drm'), |
| 65 | simple_project_pattern('frameworks/base/media'), |
| 66 | simple_project_pattern('frameworks/base/libs'), |
| 67 | simple_project_pattern('frameworks/base/native'), |
| 68 | simple_project_pattern('frameworks/base/packages'), |
| 69 | simple_project_pattern('frameworks/base/rs'), |
| 70 | simple_project_pattern('frameworks/base/services'), |
| 71 | simple_project_pattern('frameworks/base/tests'), |
| 72 | simple_project_pattern('frameworks/base/tools'), |
| 73 | project_name_and_pattern('frameworks/base/Other', 'frameworks/base'), |
| 74 | simple_project_pattern('frameworks/compile/libbcc'), |
| 75 | simple_project_pattern('frameworks/compile/mclinker'), |
| 76 | simple_project_pattern('frameworks/compile/slang'), |
| 77 | project_name_and_pattern('frameworks/compile/Other', 'frameworks/compile'), |
| 78 | simple_project_pattern('frameworks/minikin'), |
| 79 | simple_project_pattern('frameworks/ml'), |
| 80 | simple_project_pattern('frameworks/native/cmds'), |
| 81 | simple_project_pattern('frameworks/native/include'), |
| 82 | simple_project_pattern('frameworks/native/libs'), |
| 83 | simple_project_pattern('frameworks/native/opengl'), |
| 84 | simple_project_pattern('frameworks/native/services'), |
| 85 | simple_project_pattern('frameworks/native/vulkan'), |
| 86 | project_name_and_pattern('frameworks/native/Other', 'frameworks/native'), |
| 87 | simple_project_pattern('frameworks/opt'), |
| 88 | simple_project_pattern('frameworks/rs'), |
| 89 | simple_project_pattern('frameworks/webview'), |
| 90 | simple_project_pattern('frameworks/wilhelm'), |
| 91 | project_name_and_pattern('frameworks/Other', 'frameworks'), |
| 92 | simple_project_pattern('hardware/akm'), |
| 93 | simple_project_pattern('hardware/broadcom'), |
| 94 | simple_project_pattern('hardware/google'), |
| 95 | simple_project_pattern('hardware/intel'), |
| 96 | simple_project_pattern('hardware/interfaces'), |
| 97 | simple_project_pattern('hardware/libhardware'), |
| 98 | simple_project_pattern('hardware/libhardware_legacy'), |
| 99 | simple_project_pattern('hardware/qcom'), |
| 100 | simple_project_pattern('hardware/ril'), |
| 101 | project_name_and_pattern('hardware/Other', 'hardware'), |
| 102 | simple_project_pattern('kernel'), |
| 103 | simple_project_pattern('libcore'), |
| 104 | simple_project_pattern('libnativehelper'), |
| 105 | simple_project_pattern('ndk'), |
| 106 | # match vendor/unbungled_google/packages before other packages |
| 107 | simple_project_pattern('unbundled_google'), |
| 108 | simple_project_pattern('packages'), |
| 109 | simple_project_pattern('pdk'), |
| 110 | simple_project_pattern('prebuilts'), |
| 111 | simple_project_pattern('system/bt'), |
| 112 | simple_project_pattern('system/connectivity'), |
| 113 | simple_project_pattern('system/core/adb'), |
| 114 | simple_project_pattern('system/core/base'), |
| 115 | simple_project_pattern('system/core/debuggerd'), |
| 116 | simple_project_pattern('system/core/fastboot'), |
| 117 | simple_project_pattern('system/core/fingerprintd'), |
| 118 | simple_project_pattern('system/core/fs_mgr'), |
| 119 | simple_project_pattern('system/core/gatekeeperd'), |
| 120 | simple_project_pattern('system/core/healthd'), |
| 121 | simple_project_pattern('system/core/include'), |
| 122 | simple_project_pattern('system/core/init'), |
| 123 | simple_project_pattern('system/core/libbacktrace'), |
| 124 | simple_project_pattern('system/core/liblog'), |
| 125 | simple_project_pattern('system/core/libpixelflinger'), |
| 126 | simple_project_pattern('system/core/libprocessgroup'), |
| 127 | simple_project_pattern('system/core/libsysutils'), |
| 128 | simple_project_pattern('system/core/logcat'), |
| 129 | simple_project_pattern('system/core/logd'), |
| 130 | simple_project_pattern('system/core/run-as'), |
| 131 | simple_project_pattern('system/core/sdcard'), |
| 132 | simple_project_pattern('system/core/toolbox'), |
| 133 | project_name_and_pattern('system/core/Other', 'system/core'), |
| 134 | simple_project_pattern('system/extras/ANRdaemon'), |
| 135 | simple_project_pattern('system/extras/cpustats'), |
| 136 | simple_project_pattern('system/extras/crypto-perf'), |
| 137 | simple_project_pattern('system/extras/ext4_utils'), |
| 138 | simple_project_pattern('system/extras/f2fs_utils'), |
| 139 | simple_project_pattern('system/extras/iotop'), |
| 140 | simple_project_pattern('system/extras/libfec'), |
| 141 | simple_project_pattern('system/extras/memory_replay'), |
| 142 | simple_project_pattern('system/extras/mmap-perf'), |
| 143 | simple_project_pattern('system/extras/multinetwork'), |
| 144 | simple_project_pattern('system/extras/procrank'), |
| 145 | simple_project_pattern('system/extras/runconuid'), |
| 146 | simple_project_pattern('system/extras/showmap'), |
| 147 | simple_project_pattern('system/extras/simpleperf'), |
| 148 | simple_project_pattern('system/extras/su'), |
| 149 | simple_project_pattern('system/extras/tests'), |
| 150 | simple_project_pattern('system/extras/verity'), |
| 151 | project_name_and_pattern('system/extras/Other', 'system/extras'), |
| 152 | simple_project_pattern('system/gatekeeper'), |
| 153 | simple_project_pattern('system/keymaster'), |
| 154 | simple_project_pattern('system/libhidl'), |
| 155 | simple_project_pattern('system/libhwbinder'), |
| 156 | simple_project_pattern('system/media'), |
| 157 | simple_project_pattern('system/netd'), |
| 158 | simple_project_pattern('system/nvram'), |
| 159 | simple_project_pattern('system/security'), |
| 160 | simple_project_pattern('system/sepolicy'), |
| 161 | simple_project_pattern('system/tools'), |
| 162 | simple_project_pattern('system/update_engine'), |
| 163 | simple_project_pattern('system/vold'), |
| 164 | project_name_and_pattern('system/Other', 'system'), |
| 165 | simple_project_pattern('toolchain'), |
| 166 | simple_project_pattern('test'), |
| 167 | simple_project_pattern('tools'), |
| 168 | # match vendor/google* before vendor/ |
| 169 | project_name_and_pattern('vendor/google', 'vendor/google.*'), |
| 170 | project_name_and_pattern('vendor/non-google', 'vendor'), |
| 171 | # keep out/obj and other patterns at the end. |
| 172 | ['out/obj', |
| 173 | '.*/(gen|obj[^/]*)/(include|EXECUTABLES|SHARED_LIBRARIES|' |
| 174 | 'STATIC_LIBRARIES|NATIVE_TESTS)/.*: warning:'], |
| 175 | ['other', '.*'] # all other unrecognized patterns |
| 176 | ] |