Fix missing dependency on sparse binds
[platform/upstream/VK-GL-CTS.git] / scripts / src_util / check_all.py
1 # -*- coding: utf-8 -*-
2
3 #-------------------------------------------------------------------------
4 # drawElements Quality Program utilities
5 # --------------------------------------
6 #
7 # Copyright 2015 The Android Open Source Project
8 #
9 # Licensed under the Apache License, Version 2.0 (the "License");
10 # you may not use this file except in compliance with the License.
11 # You may obtain a copy of the License at
12 #
13 #      http://www.apache.org/licenses/LICENSE-2.0
14 #
15 # Unless required by applicable law or agreed to in writing, software
16 # distributed under the License is distributed on an "AS IS" BASIS,
17 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 # See the License for the specific language governing permissions and
19 # limitations under the License.
20 #
21 #-------------------------------------------------------------------------
22
23 import  sys
24 from    argparse                                import  ArgumentParser
25 from    common                                  import  getChangedFiles, getAllProjectFiles
26 from    check_include_guards    import  checkIncludeGuards
27 from    check_encoding                  import  checkEncoding
28 from    check_whitespace                import  checkWhitespace
29 from    check_license                   import  checkLicense
30 from    check_boms                              import  checkBOMs
31
32 if __name__ == "__main__":
33         parser = ArgumentParser()
34         parser.add_argument("-e",       "--only-errors",        action="store_true",    dest="onlyErrors",              default=False,  help="Print only on error")
35         parser.add_argument("-i",       "--only-changed",       action="store_true",    dest="useGitIndex",             default=False,  help="Check only modified files. Uses git.")
36         parser.add_argument("-b",       "--fix-bom",            action="store_true",    dest="fixBOMs",                 default=False,  help="Attempt to fix BOMs")
37
38         args = parser.parse_args()
39
40         if args.useGitIndex:
41                 files = getChangedFiles()
42         else:
43                 files = getAllProjectFiles()
44
45         # filter out original Vulkan header sources
46         files = [f for f in files if "vulkancts/scripts/src" not in f.replace("\\", "/")]
47
48         error = not all([
49                 checkBOMs(files, args.fixBOMs),
50                 checkEncoding(files),
51                 checkWhitespace(files),
52                 checkIncludeGuards(files),
53                 checkLicense(files),
54                 #todo checkRedundantIncludeGuards(files),
55                 ])
56
57         if      error:
58                 print("One or more checks failed")
59                 sys.exit(1)
60         if      not     args.onlyErrors:
61                 print("All checks passed")