From 4a4228fe250c8b23a5deeb25825d61c6e84a47a2 Mon Sep 17 00:00:00 2001 From: Zhenhua Luo Date: Wed, 20 Mar 2013 15:52:12 +0800 Subject: fix march sanity check issue 1. check if gcc_test is really generate before os.remove("gcc_test") to avoid following error: ERROR: Execution of event handler 'check_sanity_eventhandler' failed Traceback (most recent call last): File "check_sanity_eventhandler(e)", line 4, in check_sanity_eventhandler(e=) File "sanity.bbclass", line 107, in check_sanity(sanity_data=) File "sanity.bbclass", line 22, in check_gcc_march(sanity_data=) OSError: [Errno 2] No such file or directory: 'gcc_test' 2. set result to False when build failed with -march=native to ensure -march=native is appended to BUILD_CFLAGS when host gcc really supports this flag, otherwise following error appears when build native packages. | cap_text.c:1: error: bad value (native) for -march= switch | cap_text.c:1: error: bad value (native) for -mtune= switch Signed-off-by: Zhenhua Luo Signed-off-by: Richard Purdie --- meta/classes/sanity.bbclass | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'meta') diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass index 8cdb06e185..ecc0a434a5 100644 --- a/meta/classes/sanity.bbclass +++ b/meta/classes/sanity.bbclass @@ -327,11 +327,14 @@ def check_gcc_march(sanity_data): if status != 0: # Check if GCC could work with march status,result = commands.getstatusoutput("${BUILD_PREFIX}gcc -march=native gcc_test.c -o gcc_test") - if status == 0: - result = True + if status == 0: + result = True + else: + result = False os.remove("gcc_test.c") - os.remove("gcc_test") + if os.path.exists("gcc_test"): + os.remove("gcc_test") return result -- cgit v1.2.3