在配方中的SRC_URI中添加多个补丁-Yocto

evk*_*206 2 patch yocto

我想知道是否有一种简单的方法可以在Yocto中向SRC_URI添加补丁。我正在使用Yocto为定制板创建BSP。我有数百个Linux内核和裸机补丁。

为了包括Linux内核的补丁,我创建了一个.scc文件。在.scc文件中,我包括了所有必需的补丁程序。内核配方中的SRC_URI选项如下所示:

SRC_URI += "https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.0.9.tar.xz \
        file://kernelpatch.scc \
        file://kernel-4.0.9.cfg \
        "
Run Code Online (Sandbox Code Playgroud)

对于裸机,我尝试执行相同的操作,但是似乎它不支持.scc文件。所以现在我已经包括了使用

file://patchname.patch

file://patches/0001-drivers.patch \
file://patches/0002-hw_random-C.patch \
.
.
.
.
file://patches/0304-usb-fastbootupport.patch \
Run Code Online (Sandbox Code Playgroud)

是否有任何选项可以像内核一样将所有补丁包含在一行中。

yoc*_*com 5

转到您的meta-layer/recipes-kernel/linux创建目录,如patches。将所有修补程序复制到此patches目录。

创建linux-ti_%.bbappend文件并添加以下行

FILESEXTRAPATHS_prepend := "${THISDIR}:"
SRC_URI = "file://patches/* "
Run Code Online (Sandbox Code Playgroud)

这将在单个实例中获取所有补丁程序并应用于内核。

  • bitbake 版本 1.48.0 实际上不再支持 glob 扩展:“不再支持使用 globbing 的 file:// url。请将文件放在目录中并引用该目录。” (2认同)