[OE-core] [PATCH 1/4] glibc: Consider adding -Wno-error in cases when not using -O2

Khem Raj raj.khem at gmail.com
Sun Aug 16 01:26:11 UTC 2015


glibc has recently turned on Werror globally which is good but then not
all option combos are well tested so there still remains cleanup needed
when not using -O2, so lets just disable Werror in such cases, until
fixed upstream

Change-Id: I2d491c360a15b0752c97ff77ee0faaeede6e8d2a
Signed-off-by: Khem Raj <raj.khem at gmail.com>
---
 meta/recipes-core/glibc/glibc.inc | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-core/glibc/glibc.inc b/meta/recipes-core/glibc/glibc.inc
index 74ad0b5..0cccd05 100644
--- a/meta/recipes-core/glibc/glibc.inc
+++ b/meta/recipes-core/glibc/glibc.inc
@@ -12,12 +12,20 @@ TOOLCHAIN_OPTIONS = " --sysroot=${STAGING_DIR_TCBOOTSTRAP}"
 # 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 bb.utils.contains("SELECTED_OPTIMIZATION", "-O0", "x", "", d) == "x":
+    if bb.utils.contains("SELECTED_OPTIMIZATION", "-O2", "x", "", d) == "x":
+        return selected_optimization
+    elif bb.utils.contains("SELECTED_OPTIMIZATION", "-O", "x", "", d) == "x":
+        bb.note("glibc can't be built with -O, -O -Wno-error will be used instead.")
+        return selected_optimization.replace("-O", "-O -Wno-error")
+    elif bb.utils.contains("SELECTED_OPTIMIZATION", "-O0", "x", "", d) == "x":
         bb.note("glibc can't be built with -O0, -O2 will be used instead.")
         return selected_optimization.replace("-O0", "-O2")
     elif bb.utils.contains("SELECTED_OPTIMIZATION", "-Os", "x", "", d) == "x":
         bb.note("glibc can't be built with -Os, -Os -Wno-error will be used instead.")
         return selected_optimization.replace("-Os", "-Os -Wno-error")
+    elif bb.utils.contains("SELECTED_OPTIMIZATION", "-O1", "x", "", d) == "x":
+        bb.note("glibc can't be built with -O1, -O1 -Wno-error will be used instead.")
+        return selected_optimization.replace("-O1", "-O1 -Wno-error")
     return selected_optimization
 
 SELECTED_OPTIMIZATION := "${@get_optimization(d)}"
-- 
2.5.0




More information about the Openembedded-core mailing list