OAT.xml 9.4 KB
Newer Older
P
pssea 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
<?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 email chenyaxun.
-->
<!-- OAT(OSS Audit Tool) configuration guide:
basedir: Root dir, the basedir + project path is the real source file location.
licensefile: 
1.If the project don't have "LICENSE" in root dir, please define all the license files in this project in , OAT will check license files according to this rule.

tasklist(only for batch mode):
1. task: Define oat check thread, each task will start a new thread.
2. task name: Only an name, no practical effect.
3. task policy: Default policy for projects under this task, this field is required and the specified policy must defined in policylist.
4. task filter: Default filefilter for projects under this task, this field is required and the specified filefilter must defined in filefilterlist.
5. task project: Projects to be checked, the path field define 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 OAT check process.
2. policyitem: The fields type, name, path, desc is required, and the fields rule, group, filefilter is 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 ... ,include ...
    "filetype" is used to check file type in the specified path, supported file types: archive, binary
    "filename" is used to check whether the specified file exists in the specified path(support projectroot in default OAT.xml), supported file names: LICENSE, README, README.OpenSource

4. policyitem name: This field is used for 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 for 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" policyitems in the same group means any one in this group passed, the result will be passed.
7. policyitem filefilter: Used to bind filefilter which define filter rules.
8. filefilter: Filter rules, the type filename is used to filter file name, the type 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>docs/FTL.TXT</licensefile>
        <policylist>
            <policy name="projectPolicy" desc="">
                <policyitem type="compatibility" name="FTL" path=".*" desc="The FreeType Project LICENSE"/>
                <policyitem type="compatibility" name="The FreeType Project LICENSE" path=".*" desc="The FreeType Project LICENSE"/>
                <policyitem type="compatibility" name="GPLStyleLicense" path="builds/unix/config.guess" desc="config file,, not license declare"/>
                <policyitem type="compatibility" name="GPLStyleLicense" path="builds/unix/config.sub" desc="config file,, not license declare"/>
66
                <policyitem type="compatibility" name="GPL-3.0-or-later" path="builds/unix/ax_pthread.m4" desc="config file,, not license declare"/>
67
                <policyitem type="compatibility" name="GPL-2.0" path="builds/unix/pkg.m4" desc="config file,, not license declare"/>
68
                <policyitem type="compatibility" name="GPLStyleLicense" path="LICENSE.TXT" desc="Freetype provide FTL and GPLv2 license, you can choose one of them."/>
P
pssea 已提交
69
                <policyitem type="compatibility" name="LGPLStyleLicense" path="docs/GPLv2.TXT" desc="Freetype provide FTL and GPLv2 license, you can choose one of them."/>
70
                <policyitem type="compatibility" name="zlib/libpng License" path="src/gzip/.*" desc="Zlib used by FreeType." filefilter="defaultFilter"/>
P
pssea 已提交
71
                <policyitem type="compatibility" name="zlib-acknowledgement" path="src/gzip/zlib.h" desc="Zlib used by FreeType."/>
72 73
                <policyitem type="compatibility" name="BSL-1.0" path="include/dlg/.*" desc="Freetype provide BSL license."/>
                <policyitem type="compatibility" name="BSL-1.0" path="src/dlg/dlg.c" desc="Freetype provide BSL license."/>
P
pssea 已提交
74 75 76 77 78 79
            </policy>
        </policylist>
        <filefilterlist>
            <filefilter name="defaultFilter" desc="Files not to check">
                <filteritem type="filepath" name="docs/CHANGES" desc="This is chenglog file, no need license"/>
                <filteritem type="filepath" name="docs/PROBLEMS" desc="This is a problems file, no need license"/>
80
                <filteritem type="fillname" name="ChangeLog" desc="This is chenglog file, no need license"/>
P
pssea 已提交
81 82 83
                <filteritem type="fillname" name="ChangeLog.*" desc="This is chenglog file, no need license"/>
                <filteritem type="filepath" name="src/base/md5.h" desc="This file is free software"/>
                <filteritem type="filepath" name="src/pcf/pcfutil.c" desc="This file is free software"/>
84 85
                <filteritem type="filepath" name="builds/unix/*.m4" desc="pkg-config file"/>
                <filteritem type="filepath" name="src/gzip/README.freetype" desc="This is description file, no need license"/>
P
pssea 已提交
86
            </filefilter>
P
pssea 已提交
87 88 89 90 91 92 93 94 95 96 97 98
            <filefilter name="binaryFileTypePolicyFilter" desc="Filters for binary file policies">
                <filteritem type="filepath" name="docs/reference/site/assets/fonts/specimen/.*.ttf|.*.woff|.*.woff2" desc="freetype file, not to check"/>
                <filteritem type="filepath" name="builds/amiga/README" desc="freetype file, not to check"/>
                <filteritem type="filepath" name="builds/amiga/README" desc="freetype file, not to check"/>
                <filteritem type="filepath" name="docs/reference/site/images/favico.ico" desc="freetype file, not to check"/>
                <filteritem type="filepath" name="builds/amiga/makefile.os4" desc="freetype file, not to check"/>
                <filteritem type="filepath" name="builds/amiga/smakefile" desc="freetype file, not to check"/>
                <filteritem type="filepath" name="builds/vms/vmslib.dat" desc="freetype file, not to check"/>
                <filteritem type="filepath" name="src/autofit/afblue.dat" desc="freetype file, not to check"/>
                <filteritem type="filepath" name="docs/reference/site/sitemap.xml.gz" desc="freetype file, not to check"/>
                <filteritem type="filepath" name="docs/reference/site/assets/images/favicon.png" desc="freetype file, not to check"/>
            </filefilter>
P
pssea 已提交
99 100 101 102 103 104 105 106
        </filefilterlist>
        <licensematcherlist>
            <licensematcher name="zlib/libpng License" desc="zlib/png license">
                <licensetext name="
                     * For conditions of distribution and use, see copyright notice in zlib.h
                 " desc=""/>
                 <licensetext name="
                      zlib.h -- interface of the 'zlib' general purpose compression library
107
                      version 1.2.12, March 11th, 2022
P
pssea 已提交
108

109
                      Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler
P
pssea 已提交
110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129

                      This software is provided 'as-is', without any express or implied
                      warranty.  In no event will the authors be held liable for any damages
                      arising from the use of this software.

                      Permission is granted to anyone to use this software for any purpose,
                      including commercial applications, and to alter it and redistribute it
                      freely, subject to the following restrictions:

                      1. The origin of this software must not be misrepresented; you must not
                         claim that you wrote the original software. If you use this software
                         in a product, an acknowledgment in the product documentation would be
                         appreciated but is not required.
                      2. Altered source versions must be plainly marked as such, and must not be
                         misrepresented as being the original software.
                      3. This notice may not be removed or altered from any source distribution.
                 " desc=""/>
            </licensematcher>
        </licensematcherlist>
    </oatconfig>
130
</configuration>