third_party_vulkan-headers/OAT.xml

84 lines
5.5 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (c) 2021 Huawei Device Co., Ltd.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Notes:
This is project config file for OpenHarmony OSS Audit Tool. If you have any questions or concerns, please send an email to chenyaxun.
-->
<!-- OAT (OSS Audit Tool) configuration guide:
basedir: Root dir. basedir + project path is the real source file location.
licensefile:
If the project doesn't have "LICENSE" in root dir, please define all the license files in this project. OAT will check license files according to this rule.
tasklist (for the batch mode only):
1. task: OAT check thread. Each task will start a new thread.
2. task name: Task name.
3. task policy: Default policy for projects under this task. This field is required and the specified policy must be defined in policylist.
4. task filter: Default filefilter for projects under this task. This field is required and the specified filefilter must be defined in filefilterlist.
5. task project: Projects to be checked. The path field defines the source root dir of the project.
policyList:
1. policy: All policyitems will be merged to default OAT.xml rules. The name of policy doesn't affect the OAT check process.
2. policyitem: The fields type, name, path, desc are required, and the fields rule, group, filefilter are optional. The default value is:
<policyitem type="" name="" path="" desc="" rule="may" group="defaultGroup" filefilter="defaultPolicyFilter"/>
3. policyitem type:
"compatibility" is used to check license compatibility in the specified path.
"license" is used to check source license header in the specified path.
"copyright" is used to check source copyright header in the specified path.
"import" is used to check source dependency in the specified path, such as import and include.
"filetype" is used to check file type in the specified path. Supported file types include archive and binary.
"filename" is used to check whether the specified file exists in the specified path (support projectroot in the default OAT.xml). Supported file names include LICENSE, README, README.OpenSource.
4. policyitem name: This field is used to define the license, copyright, "*" means match all, the "!" prefix means could not match this value. For example, "!GPL" means can not use GPL license.
5. policyitem path: This field is used to define the source file scope to apply this policyitem, the "!" prefix means exclude the files. For example, "!.*/lib/.*" means files in lib dir will be exclude while process this policyitem.
6. policyitem rule and group: These two fields are used together to merge policy results. "may" means that the result will be passed if any policyitem in the same group is passed.
7. policyitem filefilter: This field is used to bind filefilter which define filter rules.
8. filefilter: This field is used to define filter rules. filename is used to filter file name, and filepath is used to filter file path.
Note: If the text contains special characters, please escape them according to the following rules:
" == &gt;
& == &gt;
' == &gt;
< == &gt;
> == &gt;
-->
<configuration>
<oatconfig>
<licensefile>LICENSE.txt</licensefile>
<policylist>
<policy name="projectPolicy" desc="">
<policyitem type="copyright" name="The Khronos Group Inc." path=".*" rule="may" group="defaultGroup" filefilter="copyrightPolicyFilter" desc=""/>
<policyitem type="copyright" name="The ANGLE Project Authors." path=".*" rule="may" group="defaultGroup" filefilter="copyrightPolicyFilter" desc=""/>
<policyitem type="copyright" name="LunarG, Inc." path=".*" rule="may" group="defaultGroup" filefilter="copyrightPolicyFilter" desc=""/>
<policyitem type="copyright" name="Huawei Device Co., Ltd." path=".*" rule="may" group="defaultGroup" filefilter="copyrightPolicyFilter" desc=""/>
<policyitem type="copyright" name="Valve Corporation" path=".*" rule="may" group="defaultGroup" filefilter="copyrightPolicyFilter" desc=""/>
<policyitem type="copyright" name="Collabora, Ltd." path=".*" rule="may" group="defaultGroup" filefilter="copyrightPolicyFilter" desc=""/>
</policy>
</policylist>
<filefilterlist>
<filefilter name="defaultFilter" desc="Files that do not need to be scanned">
<filteritem type="filename" name="README|*.xml|*.json" desc="cfg no need to add policy"/>
<filteritem type="filename" name=".cmake-format.py" desc="cfg no need to add policy"/>
</filefilter>
<filefilter name="binaryFileTypePolicyFilter" desc="Filters for binary file policies" >
</filefilter>
<filefilter name="copyrightPolicyFilter" desc="Filters for copyright header policies" >
<filteritem type="filename" name="README.OpenSource"/>
<filteritem type="filename" name="README"/>
</filefilter>
</filefilterlist>
</oatconfig>
</configuration>