mozbuild

mozbuild 是一个 Python 包,提供 Mozilla 构建系统使用的功能。

模块概述

  • mozbuild.backend – 用于生成和交互构建后端的函数。构建后端是一个实体,它使用构建系统元数据(来自 mozbuild.frontend)并对其进行一些有用的操作(通常是编写可以被构建工具用来构建树的文件)。

  • mozbuild.compilation – 与编译相关的功能。这包括管理编译器警告。

  • mozbuild.frontend – 用于读取构建前端文件(定义构建系统)并将其转换为数据结构的功能,这些数据结构被馈送到构建后端以生成后端配置。

  • mozpack – 与构建打包相关的功能。

概述

构建系统由定义要执行的操作的前端文件组成。它们会说明诸如“编译 X” “复制 Y” 之类的事情。

mozbuild.frontend 包包含用于读取这些前端文件并将其转换为静态数据结构的代码。树生成的静态数据结构集构成了当前的构建配置。

存在称为构建后端的实体。从高级别来看,构建后端使用构建配置并对其执行某些操作。它们通常会生成特定于工具的文件,例如 make 文件,这些文件可用于构建树。

将所有这些整合在一起,我们有被解析成数据结构的前端文件。这些数据结构被馈送到构建后端。构建后端的输出被构建器用来构建树。