跳到主要内容

kmpkg_install_copyright

将多个版权(许可证)文件合并为单个文件并完成安装;也可直接安装单个版权文件。

信息

kmpkg 注册表中为每个包提供的许可信息,均代表微软对该包许可要求的最佳理解,但该信息可能并非最终定论。建议用户自行验证每个待使用包的确切许可要求,因为遵守适用许可证的最终责任由用户承担。

用法

kmpkg_install_copyright(FILE_LIST <file1> <file2>... [COMMENT <comment-text>])

参数

FILE_LIST

指定一组许可证文件的绝对路径列表。必须至少提供一个文件路径。

COMMENT

可选参数,用于在生成的版权文件顶部添加一段注释文本。

说明

  1. 该函数会在 ${CURRENT_PACKAGES_DIR}/share/${PORT} 目录下生成名为 copyright 的文件;
  2. 若仅传入单个文件,直接将该文件内容写入 copyright;若传入多个文件,会按列表顺序拼接所有文件内容,并在每个文件内容前标注对应的文件名(作为区分);
  3. 生成的 copyright 文件格式示例:
    • 无 COMMENT 时:
      LICENSE-LGPL2.txt:

      Lorem ipsum dolor...

      LICENSE-MIT.txt:

      Lorem ipsum dolor sit amet...
    • 有 COMMENT 时:
      A meaningful comment

      LICENSE-LGPL2.txt:

      Lorem ipsum dolor...

      LICENSE-MIT.txt:

      Lorem ipsum dolor sit amet...

示例

直接指定许可证文件

kmpkg_install_copyright(
FILE_LIST "${SOURCE_PATH}/LICENSE/license.md" "${SOURCE_PATH}/LICENSE/license_gpl.md"
COMMENT "This is a comment"
)

通过 GLOB 匹配收集许可证文件

# 匹配 SOURCE_PATH/LICENSES 目录下的所有文件
file(GLOB LICENSE_FILES "${SOURCE_PATH}/LICENSES/*")
kmpkg_install_copyright(FILE_LIST ${LICENSE_FILES})

源码

scripts/cmake/kmpkg_install_copyright.cmake