如何从bitbake配方中提取许可信息

时间:2016-09-20 20:32:08

标签: automation licensing yocto bitbake

我会保持简短。我已经交了一个yocto存储库,并要求审核它以获取构建使用的许可证。我的最终目标是:

  1. 列出发行版使用的所有许可证(即使用发行版构建的所有工具和实用程序使用的许可证)
  2. 获取许可文件的副本
  3. 在互联网上获取该网址,其中可以找到该许可文本。 (如果有人想把它与我提供的那些进行比较)
  4. 作为一个懒惰的“软件工程师”我是,我想避免执行此任务,只需解析所有.bb文件以提取所有信息。 我看过一些食谱,其中包括标题,而标题又包含许可证信息。能够跟踪这条路线真是太好了。

    GitHub上的

    This项目看起来很有希望。但可能无法让我得到我需要的东西。

    我还拥有与源代码一起分发的完整源代码和许可证文件文本。我应该能够编写一个简单的脚本来实现这一点,但某些许可证中的文本不包含许可证本身的类型。

    任何指针都将非常感激。

2 个答案:

答案 0 :(得分:2)

首先,您可能希望在图像中使用许可证,而不是发行版,因为您可以在任何发行版中构建各种配方,所以重要的只是你发运的是什么,这是你的形象。找出图像中软件使用的许可证的方法已经described here,但您的问题有点不同,因为您还需要完整的许可证文本。这也很简单,只需build/tmp/deploy/licenses中的每个包目录。

至于你的第三个问题,它并不那么容易,因为即使像GPLv2这样的标准品在项目之间几乎没有变化,有些也有例外,有些以不同的方式编写“(c)$ YEARS”,所以Openembedded构建的是什么系统为您提供实际上更可靠,因为它是从源中提取的。可能的是provide the source code itself(通过archiver类)以及许可证信息,任何真正好奇的人都可以通过这种方式交叉检查来源和许可证。

答案 1 :(得分:0)