summaryrefslogtreecommitdiff
path: root/solenv/inc/unxlng.mk
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2010-11-05 12:37:23 +0000
committerCaolán McNamara <caolanm@redhat.com>2010-11-05 12:37:23 +0000
commit0b98959abdf57f8443a777cb6dd4701912e7ef7b (patch)
tree5cce536596e3b0566e427f7bb012813d14508b4d /solenv/inc/unxlng.mk
parentbf0eb7e0354a61ae0c7255ea5b28a5aab05a879a (diff)
extra optimization unsafe for earlier gccs
Diffstat (limited to 'solenv/inc/unxlng.mk')
-rw-r--r--solenv/inc/unxlng.mk8
1 files changed, 6 insertions, 2 deletions
diff --git a/solenv/inc/unxlng.mk b/solenv/inc/unxlng.mk
index 3602c0beb0cc..8a2f075db84c 100644
--- a/solenv/inc/unxlng.mk
+++ b/solenv/inc/unxlng.mk
@@ -112,8 +112,12 @@ CFLAGSDBGUTIL=
# Compiler flags for enabling optimizations
.IF "$(PRODUCT)"!=""
CFLAGSOPT=$(CDEFAULTOPT) # optimizing for products
-.IF "$(USE_SYSTEM_STL)"!="YES"
-CFLAGSOPT+=-fno-strict-aliasing #STLPort headers are full of aliasing warnings
+.IF "$(USE_SYSTEM_STL)"!="YES" || "$(CCNUMVER)" <= "000400050000"
+#STLPort headers are full of aliasing warnings and
+#At least SLED 10.2 gcc 4.3 overly agressively optimizes
+#uno::Sequence into junk, so only strict-alias on compiler
+#later than 4.5.1
+CFLAGSOPT+=-fno-strict-aliasing
.ENDIF
.ELSE # "$(PRODUCT)"!=""
CFLAGSOPT= # no optimizing for non products