systemtap_git.inc: do not immediate expand SELECTED_OPTIMIZATION

We need to expand SELECTED_OPTIMIZATION later, so
do not immediate expansion, and do the work in
anonymous python function.

It is reasonable to give an error for -O0.

[YOCTO #7058]

(From OE-Core rev: 3d2455c1959283b956cb7536cd866717fefc10e8)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Hongxu Jia 2016-01-29 12:35:58 -05:00 committed by Richard Purdie
parent e631be2bce
commit c1273d4402
1 changed files with 4 additions and 8 deletions

View File

@ -17,12 +17,8 @@ COMPATIBLE_HOST = '(x86_64|i.86|powerpc|arm|aarch64).*-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)
# entire image as -O0, break with fatal.
python () {
if bb.utils.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)}"
bb.fatal("systemtap can't be built with -O0, using -O1 -Wno-error or -O1 instead.")
}