1 # -*- coding: utf-8 -*-
3 #-------------------------------------------------------------------------
4 # drawElements Quality Program utilities
5 # --------------------------------------
7 # Copyright 2015 The Android Open Source Project
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
13 # http://www.apache.org/licenses/LICENSE-2.0
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.
21 #-------------------------------------------------------------------------
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
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")
38 args = parser.parse_args()
41 files = getChangedFiles()
43 files = getAllProjectFiles()
45 # filter out original Vulkan header sources
46 files = [f for f in files if "vulkancts/scripts/src" not in f.replace("\\", "/")]
49 checkBOMs(files, args.fixBOMs),
51 checkWhitespace(files),
52 checkIncludeGuards(files),
54 #todo checkRedundantIncludeGuards(files),
58 print("One or more checks failed")
60 if not args.onlyErrors:
61 print("All checks passed")