tk: adapt to potential pseudo changes

It failed as below when rerun do_install for tk:
 $ bitbake tk
 $ bitbake tk -f -cinstall
 [snip]
 | NOTE: make -j 48 DESTDIR=/build/tmp/work/cortexa53-wrs-linux/tk/8.6.10-r0/image install
 | abort()ing pseudo client by server request. See https://wiki.yoctoproject.org/wiki/Pseudo_Abort for more details on this.
 | Check logfile: /build/tmp/work/cortexa53-wrs-linux/tk/8.6.10-r0/pseudo//pseudo.log
 | Aborted (core dumped)

By default the S is ${WORKDIR}/${BPN}-${PV}, but after unpack,
the tk source [1] unpacked to ${WORKDIR}/${BPN}${PV} and all the
files under ${WORKDIR}/${BPN}${PV} are acutally the source files.

But the the main Makefile.in is under ${WORKDIR}/${BPN}${PV}/unix
for tk, so there is below logic in tk recipe:
S = "${WORKDIR}/${BPN}${PV}/unix"

To adapt the potential pseudo changes, there is a general logic to
exclude ${S} from pseudo database in base.bbclass [2] by default.
That's to say, just the dir ${WORKDIR}/${BPN}${PV}/unix is excluded
from the pseudo database for tk.

But it's not enough for tk, we need to exclude the actual source dir
${WORKDIR}/${BPN}${PV} from pseudo database specifically to fix the
above do_install failure.

[1] https://downloads.sourceforge.net/tcl/tk8.6.0-src.tar.gz
[2] https://git.openembedded.org/openembedded-core/tree/meta/classes/base.bbclass#n396

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Mingli Yu
2021-04-30 11:05:38 +08:00
committed by Khem Raj
parent 5db9ca847f
commit ee7598a400
@@ -28,6 +28,8 @@ SRC_URI[sha256sum] = "63df418a859d0a463347f95ded5cd88a3dd3aaa1ceecaeee362194bc30
S = "${WORKDIR}/${BPN}${PV}/unix" S = "${WORKDIR}/${BPN}${PV}/unix"
PSEUDO_IGNORE_PATHS .= ",${WORKDIR}/${BPN}${PV}"
# Short version format: "8.6" # Short version format: "8.6"
VER = "${@os.path.splitext(d.getVar('PV'))[0]}" VER = "${@os.path.splitext(d.getVar('PV'))[0]}"