[Libreoffice-commits] core.git: 4 commits - configure.ac solenv/gbuild

Michael Stahl mstahl at redhat.com
Mon Oct 6 04:44:02 PDT 2014


 configure.ac                           |    6 +++---
 solenv/gbuild/platform/IOS_ARM_GCC.mk  |    4 ----
 solenv/gbuild/platform/com_GCC_defs.mk |    1 +
 solenv/gbuild/platform/macosx.mk       |    4 ----
 solenv/gbuild/platform/mingw.mk        |    4 ----
 solenv/gbuild/platform/solaris.mk      |   14 --------------
 solenv/gbuild/platform/unxgcc.mk       |   27 ---------------------------
 7 files changed, 4 insertions(+), 56 deletions(-)

New commits:
commit d73cee7858edc04944578f52a6d838d866aafb61
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Oct 6 13:32:24 2014 +0200

    gbuild: enable -Wnon-virtual-dtor for all GCC platforms
    
    It was disabled globally at a time when GCC did not yet support #pragma
    GCC diagnostic.
    
    Change-Id: I062f6b437e6119203f2b0824a25238b45b4f4e79

diff --git a/solenv/gbuild/platform/IOS_ARM_GCC.mk b/solenv/gbuild/platform/IOS_ARM_GCC.mk
index 27659c4..96920cc 100644
--- a/solenv/gbuild/platform/IOS_ARM_GCC.mk
+++ b/solenv/gbuild/platform/IOS_ARM_GCC.mk
@@ -47,13 +47,9 @@ gb_CFLAGS := \
 	-Wshadow \
 	-fno-strict-aliasing \
 
-# For -Wno-non-virtual-dtor see <http://markmail.org/message/664jsoqe6n6smy3b>
-# "Re: [dev] warnings01: -Wnon-virtual-dtor" message to dev at openoffice.org from
-# Feb 1, 2006:
 gb_CXXFLAGS := \
 	$(gb_CXXFLAGS_COMMON) \
 	-Wno-ctor-dtor-privacy \
-	-Wno-non-virtual-dtor \
 	-fno-strict-aliasing \
 	-fsigned-char \
 	$(CXXFLAGS_CXX11) \
diff --git a/solenv/gbuild/platform/com_GCC_defs.mk b/solenv/gbuild/platform/com_GCC_defs.mk
index 647aa8b..9cd9b48 100644
--- a/solenv/gbuild/platform/com_GCC_defs.mk
+++ b/solenv/gbuild/platform/com_GCC_defs.mk
@@ -62,6 +62,7 @@ gb_CFLAGS_COMMON := \
 
 gb_CXXFLAGS_COMMON := \
 	-Wall \
+	-Wnon-virtual-dtor \
 	-Wendif-labels \
 	-Wextra \
 	-Wundef \
diff --git a/solenv/gbuild/platform/macosx.mk b/solenv/gbuild/platform/macosx.mk
index 6501b0a..59d6a56 100644
--- a/solenv/gbuild/platform/macosx.mk
+++ b/solenv/gbuild/platform/macosx.mk
@@ -46,14 +46,10 @@ gb_CFLAGS := \
 	-fno-strict-aliasing \
     #-Wshadow \ break in compiler headers already
 
-# For -Wno-non-virtual-dtor see <http://markmail.org/message/664jsoqe6n6smy3b>
-# "Re: [dev] warnings01: -Wnon-virtual-dtor" message to dev at openoffice.org from
-# Feb 1, 2006:
 gb_CXXFLAGS := \
 	$(gb_CXXFLAGS_COMMON) \
 	-fPIC \
 	-Wno-ctor-dtor-privacy \
-	-Wno-non-virtual-dtor \
 	-fno-strict-aliasing \
 	-fsigned-char \
 	$(CXXFLAGS_CXX11)
diff --git a/solenv/gbuild/platform/mingw.mk b/solenv/gbuild/platform/mingw.mk
index 9719616..f60c1fc 100644
--- a/solenv/gbuild/platform/mingw.mk
+++ b/solenv/gbuild/platform/mingw.mk
@@ -36,13 +36,9 @@ gb_CFLAGS += \
 	-Wdeclaration-after-statement \
 	-fno-strict-aliasing \
 
-# For -Wno-non-virtual-dtor see <http://markmail.org/message/664jsoqe6n6smy3b>
-# "Re: [dev] warnings01: -Wnon-virtual-dtor" message to dev at openoffice.org from
-# Feb 1, 2006:
 gb_CXXFLAGS := \
 	$(gb_CXXFLAGS_COMMON) \
 	-Wno-ctor-dtor-privacy \
-	-Wno-non-virtual-dtor \
 	-Wreturn-type \
 	-Wshadow \
 	-Wuninitialized \
diff --git a/solenv/gbuild/platform/solaris.mk b/solenv/gbuild/platform/solaris.mk
index 5e2b59f..1d3c256 100644
--- a/solenv/gbuild/platform/solaris.mk
+++ b/solenv/gbuild/platform/solaris.mk
@@ -61,7 +61,6 @@ gb_CXXFLAGS := \
 	-fPIC \
 	-Wshadow \
 	-Woverloaded-virtual \
-	-Wnon-virtual-dtor \
 	-std=c++0x \
 
 # enable debug STL
diff --git a/solenv/gbuild/platform/unxgcc.mk b/solenv/gbuild/platform/unxgcc.mk
index 18da25c..034903a 100644
--- a/solenv/gbuild/platform/unxgcc.mk
+++ b/solenv/gbuild/platform/unxgcc.mk
@@ -43,7 +43,6 @@ gb_CXXFLAGS := \
 	-fPIC \
 	-Wshadow \
 	-Woverloaded-virtual \
-	-Wnon-virtual-dtor \
 	$(CXXFLAGS_CXX11) \
 
 
commit c2056bd31caa61df9f9b6ffd26479ccd85ea8f1e
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Oct 6 13:19:45 2014 +0200

    gbuild: -Wnon-virtual-dtor and strict aliasing workaround for GCC < 4.6
    
    ... is obsolete, remove that.
    
    Change-Id: I541de32ac4389d8049c25c98b63a69d084d1594d

diff --git a/solenv/gbuild/platform/solaris.mk b/solenv/gbuild/platform/solaris.mk
index 97f582b..5e2b59f 100644
--- a/solenv/gbuild/platform/solaris.mk
+++ b/solenv/gbuild/platform/solaris.mk
@@ -61,7 +61,7 @@ gb_CXXFLAGS := \
 	-fPIC \
 	-Wshadow \
 	-Woverloaded-virtual \
-	-Wno-non-virtual-dtor \
+	-Wnon-virtual-dtor \
 	-std=c++0x \
 
 # enable debug STL
@@ -71,19 +71,6 @@ gb_COMPILERDEFS += \
 
 endif
 
-ifeq ($(COM_GCC_IS_CLANG),)
-gb_GccLess460 := $(shell expr $(GCC_VERSION) \< 406)
-
-#At least SLED 10.2 gcc 4.3 overly aggressively optimizes uno::Sequence into
-#junk, so only strict-alias on >= 4.6.0
-gb_StrictAliasingUnsafe := $(gb_GccLess460)
-
-ifeq ($(gb_StrictAliasingUnsafe),1)
-gb_CFLAGS += -fno-strict-aliasing
-gb_CXXFLAGS += -fno-strict-aliasing
-endif
-endif
-
 ifneq ($(strip $(SYSBASE)),)
 gb_CXXFLAGS += --sysroot=$(SYSBASE)
 gb_CFLAGS += --sysroot=$(SYSBASE)
diff --git a/solenv/gbuild/platform/unxgcc.mk b/solenv/gbuild/platform/unxgcc.mk
index 4864f9c..18da25c 100644
--- a/solenv/gbuild/platform/unxgcc.mk
+++ b/solenv/gbuild/platform/unxgcc.mk
@@ -43,35 +43,9 @@ gb_CXXFLAGS := \
 	-fPIC \
 	-Wshadow \
 	-Woverloaded-virtual \
+	-Wnon-virtual-dtor \
 	$(CXXFLAGS_CXX11) \
 
-ifeq ($(COM_GCC_IS_CLANG),)
-gb_GccLess460 := $(shell expr $(GCC_VERSION) \< 406)
-
-# Only GCC 4.6 has a fix for <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=7302>
-# "-Wnon-virtual-dtor should't complain of protected dtor" and supports #pragma
-# GCC diagnostic push/pop required e.g. in cppuhelper/propertysetmixin.hxx to
-# silence warnings about a protected, non-virtual dtor in a class with virtual
-# members and friends:
-ifeq ($(gb_GccLess460),1)
-gb_CXXFLAGS += -Wno-non-virtual-dtor
-else
-gb_CXXFLAGS += -Wnon-virtual-dtor
-endif
-
-#At least SLED 10.2 gcc 4.3 overly aggressively optimizes uno::Sequence into
-#junk, so only strict-alias on >= 4.6.0
-gb_StrictAliasingUnsafe := $(gb_GccLess460)
-
-ifeq ($(gb_StrictAliasingUnsafe),1)
-gb_CFLAGS += -fno-strict-aliasing
-gb_CXXFLAGS += -fno-strict-aliasing
-endif
-
-else # Clang
-gb_CXXFLAGS += -Wnon-virtual-dtor
-endif
-
 
 # enable debug STL
 ifeq ($(gb_ENABLE_DBGUTIL),$(true))
commit 89a606b4649932bd811cfa789ff92bf3055032e7
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Oct 6 13:23:29 2014 +0200

    configure: another GCC version check that is always true
    
    Change-Id: Iafbc0dadc1aba4267414e2c6653bf306e4d84f4c

diff --git a/configure.ac b/configure.ac
index 6fca907..35ed2b2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -5717,7 +5717,7 @@ if test "$GCC" = "yes"; then
 #endif
                 ]])],[HAVE_THREADSAFE_STATICS=TRUE],[])
             AC_LANG_POP([C++])
-        elif test "${GCC_VERSION?}" -ge 0403; then
+        else # known to work in GCC since version 4.3
             HAVE_THREADSAFE_STATICS=TRUE
         fi
     fi
commit 076cd220c28bf118f85bd0bfcd02dcec08847f3e
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Oct 6 13:09:15 2014 +0200

    configure: for C++11 support, at least GCC 4.6 is required
    
    Change-Id: I0b61d738a85fc0d874fa9e18b4af4ebde5a40385

diff --git a/configure.ac b/configure.ac
index 6e17ac2..6fca907 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3245,8 +3245,8 @@ if test "$GCC" = "yes" -a -z "$COM_GCC_IS_CLANG"; then
 
     AC_MSG_RESULT([gcc $_gcc_version])
 
-    if test "$GCC_VERSION" -lt 0401; then
-        AC_MSG_ERROR([GCC $_gcc_version is too old, must be at least GCC 4.1.0])
+    if test "$GCC_VERSION" -lt 0406; then
+        AC_MSG_ERROR([GCC $_gcc_version is too old, must be at least GCC 4.6.0])
     fi
 else
     # Explicitly force GCC_VERSION to be empty, even for Clang, to check incorrect uses.


More information about the Libreoffice-commits mailing list