我有一个名为" foo"的组件,它的配方和一个图像配方,它将foo添加到整个堆栈并构建一个支持foo的图像。
现在我必须在foo启用的图像中启用一项功能。所以我需要为foo启用的图像添加一个宏或变量来区分它们。
我尝试通过图像配方在发行版功能中添加foo,如下所示。
DISTRO_FEATURES_append = " foo"
但它不起作用,因为它没有反映在其他食谱中。
我必须根据foo在另一个模块中进行更改。我需要检查第二个模块是否启用了foo。
还有其他方法可以实现这一目标。我可以使用发行版功能吗?
答案 0 :(得分:1)
发行版功能 - 顾名思义 - 是广泛的发行版。您不能在配方中更改它并期望它传播给其他配方,因为每个配方都继承了广泛的配置,然后进行自己的更改。
这包括图像配方,因为所有图像配方都会采用已经构建的包并安装它们。如果您更改了图像配方中的DISTRO_FEATURES,那么您可以为图像构造更改它,但已经构建了所使用的包。
由于你的问题在细节上很模糊,很难给出一个好的答案。你的意思是,根据图像是否“启用foo”,个别食谱需要以不同的方式构建?或者这仅仅是一个有或没有foo包的图像的问题?