diff options
| -rw-r--r-- | meta/classes/externalsrc.bbclass | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/meta/classes/externalsrc.bbclass b/meta/classes/externalsrc.bbclass index f7ed66d8c6..be0fe55d5f 100644 --- a/meta/classes/externalsrc.bbclass +++ b/meta/classes/externalsrc.bbclass | |||
| @@ -85,6 +85,17 @@ python () { | |||
| 85 | 85 | ||
| 86 | # Ensure compilation happens every time | 86 | # Ensure compilation happens every time |
| 87 | d.setVarFlag('do_compile', 'nostamp', '1') | 87 | d.setVarFlag('do_compile', 'nostamp', '1') |
| 88 | |||
| 89 | # If B=S the same builddir is used even for different architectures. | ||
| 90 | # Thus, use a shared CONFIGURESTAMPFILE so that change of do_configure | ||
| 91 | # task hash is correctly detected if e.g. MACHINE changes. In addition, | ||
| 92 | # do_configure needs to depend on the stamp file so that the task is | ||
| 93 | # re-run when the stamp was changed since the last run on this | ||
| 94 | # architecture. | ||
| 95 | if d.getVar('S', True) == d.getVar('B', True): | ||
| 96 | configstamp = '${TMPDIR}/work-shared/${PN}/${EXTENDPE}${PV}-${PR}/configure.sstate' | ||
| 97 | d.setVar('CONFIGURESTAMPFILE', configstamp) | ||
| 98 | d.setVarFlag('do_configure', 'file-checksums', configstamp + ':True') | ||
| 88 | } | 99 | } |
| 89 | 100 | ||
| 90 | python externalsrc_compile_prefunc() { | 101 | python externalsrc_compile_prefunc() { |
