我正在尝试使用Yocto(fido
)的PR服务,但是每次我在配方上启动bitbake时,程序包都会得到${PR}=r0
。
local.conf
INHERIT += "buildhistory"
BUILDHISTORY_COMMIT = "1"
PRSERV_HOST = "localhost:0"
recipe.bb
SRCREV = "${AUTOREV}"
BPV = "1.1.0"
PV = "${BPV}+gitr${SRCPV}" # I know, I should use a tag instead.
SRC_BRANCH = "master"
SRC_URI = "xxx.git;protocol=ssh;branch=${SRC_BRANCH}"
这将产生一个名为xxx_1.1.0+gitrAUTOINC+e7de1c757a-r0.0
的软件包。
我期望得到
内部版本1
xxx_1.1.0+gitr0+e7de1c757a-r0.0
内部版本2
xxx_1.1.0+gitr1+e7de1c757a-r1.0
以此类推...
我想使用PR作为内部版本号。得到类似"1.1.0.453
的内容
其中“ 主要。次要。修订。内部版本”
我在这里看到两个问题:
即使我更改配方或项目源代码,PR也不会增加。
程序包的名称不是我所期望的。为什么在git
前面有一个“ r0”,为什么修订版是“ r0.0”而不是“ r0”?
最诚挚的问候,
答案 0 :(得分:3)
预计不会增加PR,它会在EXTENDPRAUTO(在PR之后的PKGR中使用)上增加。
它还用于SRCPV中,以使git散列前面的数字始终递增(每次将散列更改为PRSERV对此配方未看到的内容,之后它将返回max + 1)。
并且您不应该在SRCREV中使用标签,因为bitbake始终会针对远程git存储库运行git ls-remote来将标签名称转换为git sha(当您无法连接到git存储库时,例如当与VPN断开连接时,它会中断还会大大减慢配方的解析速度。