Skip to contentSkip to conversation

bitbake.conf/gcc: Add clean masks for stamp files

PATCH In review Richard Purdie 3 participants 5 messages Sep 18, 2012 – Sep 23, 2012

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 bitbake.conf/gcc: Add clean masks for stamp files

This takes advantage of new bitbake functionality to clean up stale stamp files when creating new stamp files.

[YOCTO #2961]

---

meta/conf/bitbake.conf +2 -1
index 9c51630..b3d3f52 100644
@@ -332,7 +332,8 @@ GITDIR = "${CO_DIR}/git2"
 BZRDIR = "${CO_DIR}/bzr"
 HGDIR = "${CO_DIR}/hg"
 
-STAMP = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PF}"
+STAMP = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PN}-${EXTENDPE}${PV}-${PR}"
+STAMPCLEAN = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PN}-*-*"
 WORKDIR = "${TMPDIR}/work/${MULTIMACH_TARGET_SYS}/${PF}"
 T = "${WORKDIR}/temp"
 D = "${WORKDIR}/image"
meta/recipes-devtools/gcc/gcc-common.inc +4 -0
index 72180db..4ef2a1b 100644
@@ -63,6 +63,10 @@ SS = "${TMPDIR}/stamps/work-shared/gcc-${PV}-${PR}"
 do_fetch[stamp-base] = "${SS}"
 do_unpack[stamp-base] = "${SS}"
 do_patch[stamp-base] = "${SS}"
+SSCLEAN = "${TMPDIR}/stamps/work-shared/gcc-*-*"
+do_fetch[stamp-base-clean] = "${SSCLEAN}"
+do_unpack[stamp-base-clean] = "${SSCLEAN}"
+do_patch[stamp-base-clean] = "${SSCLEAN}"
 
 # SW means Shared Work directory
 SW = "${TMPDIR}/work-shared/gcc-${PV}-${PR}"
#1 lore raw

Richard Purdie <[email protected]>

Quoted 1 line · writes:

+STAMPCLEAN = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PN}-*-*"

Is it intended that this pattern can match unrelated packages? E.g. for PN='gcc-cross', the mask will apply to stampfiles for 'gcc-cross-initial' too.

Enrico

#2 lore raw
Quoted 10 lines · Enrico Scholz

Richard Purdie <[email protected]>

Quoted 1 line · writes:

+STAMPCLEAN = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PN}-*-*"

Is it intended that this pattern can match unrelated packages? E.g. for PN='gcc-cross', the mask will apply to stampfiles for 'gcc-cross-initial' too.

No, this is a problem :(

I saw this last night and have been giving it some thought. We might have to put a separator into the stamp file format to make this easier to deal with. The downside is that is a TMPDIR layout change :/.

The thing is the bug this solves is serious even if people only rarely hit it and I can't think of a better solution...

Cheers,

Richard

#3 lore raw
Quoted 12 lines · Richard Purdie
Quoted 10 lines · Enrico Scholz

Richard Purdie <[email protected]>

Quoted 1 line · writes:

+STAMPCLEAN = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PN}-*-*"

Is it intended that this pattern can match unrelated packages? E.g. for PN='gcc-cross', the mask will apply to stampfiles for 'gcc-cross-initial' too.

Quoted 8 lines

No, this is a problem :(

I saw this last night and have been giving it some thought. We might have to put a separator into the stamp file format to make this easier to deal with. The downside is that is a TMPDIR layout change :/.

The thing is the bug this solves is serious even if people only rarely hit it and I can't think of a better solution...

I've given this some more thought and there is an easier way out if we assume PV starts with something numeric. Since the current situation is rather problematic (I didn't see it locally due to another patch I have), I've pushed a fix:

http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=3c101af5e33b21f53171c66de0c2c3e797d95247

I'm going to post some RFCs on other ideas related to this.

Cheers,

Richard

#4 lore raw
Quoted 3 lines · Richard Purdie

I've given this some more thought and there is an easier way out if we assume PV starts with something numeric

is this assumption true always I wonder