5.3 妨碍性的 (Encumbered) 文件
优质
小牛编辑
128浏览
2023-12-01
偶尔可能会需要在 FreeBSD 源代码树上包含某些妨碍性的文件。 例如, 如果某个设备需要首先加载一小段二进制代码才能正常工作, 而我们并没有这些代码的源文件, 则这个二进制文件就被认为是妨碍性的。 在 FreeBSD 源码树上引入这类妨碍性文件时的规则如下。
由系统 CPU 解释或执行的任何以非源代码格式保存的文件, 都被认为是妨碍性的。
授权限制多于 BSD 或 GNU 的任何文件都是妨碍性的。
除非适用 (1) 或 (2) 条款, 包含可以下载到硬件设备的文件并不被认为是妨碍性的。 这些文件必须保存为平台中立的 ASCII 格式 (推荐使用 file2c 或 uuencode 来进行编码)。
妨碍性的文件, 在加入到代码库之前, 必须获得 核心小组 的明示批准。
妨碍性文件应置于 src/contrib 或 src/sys/contrib。
应保持模块的整体性。 除非在非妨碍性代码之间存在代码复用, 否则不应将其割裂开来。
预编译的目标文件, 应命名为 体系结构名/文件名.o.uu。
内核文件:
都应在 conf/files.* 中加以引用 (以简化构建过程)。
都应作为 LINT 的一部分, 但 核心小组 可以根据个案决定是否将其注释掉。 此外核心小组 可以在稍后改变这些决定。
正式发行工程师 (Release Engineer) 有权决定是否允许这些文件进入正式的发行版本。
用户级文件:
核心小组 有权决定这些代码是否应成为 make world 的一部分。
正式发行工程师 有权决定这些代码是否能进入正式发行版。