我想在解析期间在BitBake中检查某些变量的存在。
直到现在,我的方法是在配方文件中定义匿名Python函数,以检查这些变量的存在。但是,由于我必须检查几个变量,因此检查代码会重复多次,如下所示:
python () {
if d.getVar('MY_VARIABLE_A', True) == None:
bb.fatal("MY_VARIABLE_A not set")
if d.getVar('MY_VARIABLE_B', True) == None:
bb.fatal("MY_VARIABLE_B not set")
}
我试图定义另一个函数以避免重复如下代码:
python check_existence(var) {
if d.getVar(var, True) == None:
bb.fatal(var + " not set")
}
python () {
check_existence('MY_VARIABLE_A')
check_existence('MY_VARIABLE_B')
}
但是我得到了错误:未分析的行:'python check_existence(var){'。如果删除函数参数,该错误将更改为: NameError:未定义名称'check_existence'。
python check_existence() {
if d.getVar('TEST', True) == None:
bb.fatal("TEST not set")
}
python () {
check_existence()
}
如何从bb配方文件中的匿名Python函数调用函数?
注意:如果将函数定义为__anonymous_check_existence
,则会出现相同的错误。