我希望能够只维护一小组内核配置并为其余配置使用默认值。
对于一个简约的例子:我想只维护配置值。像这样:
CONFIG_ILLEGAL_POINTER_VALUE=0xdebb000000000000
并使用它来构建内核 v3.x、v4.x 和 v5.x。
因为我只关心这个内核配置值,所以所有其他的都可以是默认值。
我怎么做?
我希望能够只维护一小组内核配置并为其余配置使用默认值。
对于一个简约的例子:我想只维护配置值。像这样:
CONFIG_ILLEGAL_POINTER_VALUE=0xdebb000000000000
并使用它来构建内核 v3.x、v4.x 和 v5.x。
因为我只关心这个内核配置值,所以所有其他的都可以是默认值。
我怎么做?
您可以在一个简单的 Bash 脚本中添加要覆盖的所有配置选项,该脚本在运行之前将它们导出为环境变量make
。对于您要禁用的选项(即设置 fromy
至n
),您需要直接修改.config
文件,因为仅导出它们是=n
行不通的。
#!/bin/bash
make defconfig
# Options you want to modify
export CONFIG_FOO=123
export CONFIG_BAR=456
# Options which you want to disable
sed -ie '/CONFIG_BAZ=y/ s/=y/=n/' .config
make all -j
请注意,您应该检查配置依赖项(使用make menuconfig
或make gconfig
)以查看您正在处理的配置选项是否也依赖于其他选项或将其他选项作为依赖项。在这种情况下,您还希望根据需要将它们包含在您的 Bash 脚本中。