diff options
author | Mark Hatle <mark.hatle@windriver.com> | 2013-06-24 09:44:56 -0500 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-06-25 17:43:42 +0100 |
commit | 9ceebb966e5294a270222475ab6317dcae2952fa (patch) | |
tree | e45a349ba50525de8637774bbe211580557796b4 /meta/recipes-kernel | |
parent | bb3201b9c21b29604eb06b03e935d53210a7b762 (diff) | |
download | openembedded-core-9ceebb966e5294a270222475ab6317dcae2952fa.tar.gz openembedded-core-9ceebb966e5294a270222475ab6317dcae2952fa.tar.bz2 openembedded-core-9ceebb966e5294a270222475ab6317dcae2952fa.zip |
systemtap: Systemtap can not be build w -O0 optimization
Systemtap will fail with:
../usr/include/features.h:330:4: error: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Werror=cpp]
| # warning _FORTIFY_SOURCE requires compiling with optimization (-O)
Use the same technique that eglibc uses to catch and correct the optimization
level, changing to -O2.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta/recipes-kernel')
-rw-r--r-- | meta/recipes-kernel/systemtap/systemtap_git.inc | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/meta/recipes-kernel/systemtap/systemtap_git.inc b/meta/recipes-kernel/systemtap/systemtap_git.inc index edaab9772e..7be6c2baf1 100644 --- a/meta/recipes-kernel/systemtap/systemtap_git.inc +++ b/meta/recipes-kernel/systemtap/systemtap_git.inc @@ -19,3 +19,14 @@ COMPATIBLE_HOST = '(x86_64.*|i.86.*|powerpc.*|arm.*)-linux' S = "${WORKDIR}/git" +# systemtap can't be built without optimization, if someone tries to compile an +# entire image as -O0, we override it with -O2 here and give a note about it. +def get_optimization(d): + selected_optimization = d.getVar("SELECTED_OPTIMIZATION", True) + if base_contains("SELECTED_OPTIMIZATION", "-O0", "x", "", d) == "x": + bb.note("systemtap can't be built with -O0, -O2 will be used instead.") + return selected_optimization.replace("-O0", "-O2") + return selected_optimization + +SELECTED_OPTIMIZATION := "${@get_optimization(d)}" + |