diff options
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/ccache.bbclass | 11 | ||||
-rw-r--r-- | meta/conf/documentation.conf | 1 |
2 files changed, 9 insertions, 3 deletions
diff --git a/meta/classes/ccache.bbclass b/meta/classes/ccache.bbclass index 34becb69d1..262db6672c 100644 --- a/meta/classes/ccache.bbclass +++ b/meta/classes/ccache.bbclass | |||
@@ -28,6 +28,11 @@ | |||
28 | # be shared between different builds. | 28 | # be shared between different builds. |
29 | CCACHE_TOP_DIR ?= "${TMPDIR}/ccache" | 29 | CCACHE_TOP_DIR ?= "${TMPDIR}/ccache" |
30 | 30 | ||
31 | # ccache-native and cmake-native have a circular dependency | ||
32 | # that affects other native recipes, but not all. | ||
33 | # Allows to use ccache in specified native recipes. | ||
34 | CCACHE_NATIVE_RECIPES_ALLOWED ?= "" | ||
35 | |||
31 | # ccahe removes CCACHE_BASEDIR from file path, so that hashes will be the same | 36 | # ccahe removes CCACHE_BASEDIR from file path, so that hashes will be the same |
32 | # in different builds. | 37 | # in different builds. |
33 | export CCACHE_BASEDIR ?= "${TMPDIR}" | 38 | export CCACHE_BASEDIR ?= "${TMPDIR}" |
@@ -54,9 +59,9 @@ python() { | |||
54 | Enable ccache for the recipe | 59 | Enable ccache for the recipe |
55 | """ | 60 | """ |
56 | pn = d.getVar('PN') | 61 | pn = d.getVar('PN') |
57 | # quilt-native doesn't need ccache since no c files | 62 | if (pn in d.getVar('CCACHE_NATIVE_RECIPES_ALLOWED') or |
58 | if not (bb.data.inherits_class("native", d) or | 63 | not (bb.data.inherits_class("native", d) or |
59 | bb.utils.to_boolean(d.getVar('CCACHE_DISABLE'))): | 64 | bb.utils.to_boolean(d.getVar('CCACHE_DISABLE')))): |
60 | d.appendVar('DEPENDS', ' ccache-native') | 65 | d.appendVar('DEPENDS', ' ccache-native') |
61 | d.setVar('CCACHE', 'ccache ') | 66 | d.setVar('CCACHE', 'ccache ') |
62 | } | 67 | } |
diff --git a/meta/conf/documentation.conf b/meta/conf/documentation.conf index 66b8e2f24f..fc1b4978fd 100644 --- a/meta/conf/documentation.conf +++ b/meta/conf/documentation.conf | |||
@@ -106,6 +106,7 @@ BUSYBOX_SPLIT_SUID[doc] = "For the BusyBox recipe, specifies whether to split th | |||
106 | #C | 106 | #C |
107 | 107 | ||
108 | CACHE[doc] = "The directory holding the cache of the metadata." | 108 | CACHE[doc] = "The directory holding the cache of the metadata." |
109 | CCACHE_NATIVE_RECIPES_ALLOWED[doc] = "A list of native recipes to use Ccache, this variable is useful to bypass a circular dependency between ccache-native and cmake-native that inhibits to use Ccache in other native recipes." | ||
109 | CFLAGS[doc] = "Flags passed to the C compiler for the target system. This variable evaluates to the same as TARGET_CFLAGS." | 110 | CFLAGS[doc] = "Flags passed to the C compiler for the target system. This variable evaluates to the same as TARGET_CFLAGS." |
110 | CLASSOVERRIDE[doc] = "An internal variable specifying the special class override that should currently apply (e.g. "class-target", "class-native", and so forth)." | 111 | CLASSOVERRIDE[doc] = "An internal variable specifying the special class override that should currently apply (e.g. "class-target", "class-native", and so forth)." |
111 | CLEANBROKEN[doc] = "Specifies if 'make clean' does not work for a recipe (and therefore the build system should not try to use it during do_configure)" | 112 | CLEANBROKEN[doc] = "Specifies if 'make clean' does not work for a recipe (and therefore the build system should not try to use it during do_configure)" |