8075176: DISABLED_WARNINGS caused C++ compiler flags to get lost
authorihse
Tue, 17 Mar 2015 16:01:05 +0100
changeset 29445 da21574cf682
parent 29444 b6186ae3a799
child 29449 0b30ab954416
8075176: DISABLED_WARNINGS caused C++ compiler flags to get lost Reviewed-by: erikj, tbell
make/common/NativeCompilation.gmk
--- a/make/common/NativeCompilation.gmk	Tue Mar 17 14:16:30 2015 +0100
+++ b/make/common/NativeCompilation.gmk	Tue Mar 17 16:01:05 2015 +0100
@@ -392,12 +392,6 @@
     $1_EXTRA_CXXFLAGS+=$$($1_CXXFLAGS_$(OPENJDK_TARGET_OS)_release)
   endif
 
-  # Pick up disabled warnings, if possible on this platform.
-  ifneq ($(DISABLE_WARNING_PREFIX),)
-    $1_EXTRA_CFLAGS += $$(addprefix $(DISABLE_WARNING_PREFIX), $$($1_DISABLED_WARNINGS_$(TOOLCHAIN_TYPE)))
-    $1_EXTRA_CXXFLAGS += $$(addprefix $(DISABLE_WARNING_PREFIX), $$($1_DISABLED_WARNINGS_$(TOOLCHAIN_TYPE)))
-  endif
-
   ifeq ($$($1_DEBUG_SYMBOLS), true)
     ifeq ($(ENABLE_DEBUG_SYMBOLS), true)
       ifdef OPENJDK
@@ -415,6 +409,9 @@
     endif
   endif
 
+  # If no C++ flags are explicitly set, default to using the C flags.
+  # After that, we can set additional C++ flags that should not interfere
+  # with the mechanism for copying the C flags by default.
   ifeq ($$($1_CXXFLAGS),)
     $1_CXXFLAGS:=$$($1_CFLAGS)
   endif
@@ -427,6 +424,12 @@
     $1_EXTRA_CXXFLAGS += $$(CXX_FLAG_REORDER)
   endif
 
+  # Pick up disabled warnings, if possible on this platform.
+  ifneq ($(DISABLE_WARNING_PREFIX),)
+    $1_EXTRA_CFLAGS += $$(addprefix $(DISABLE_WARNING_PREFIX), $$($1_DISABLED_WARNINGS_$(TOOLCHAIN_TYPE)))
+    $1_EXTRA_CXXFLAGS += $$(addprefix $(DISABLE_WARNING_PREFIX), $$($1_DISABLED_WARNINGS_$(TOOLCHAIN_TYPE)))
+  endif
+
   ifeq (NONE, $$($1_OPTIMIZATION))
     $1_EXTRA_CFLAGS += $(C_O_FLAG_NONE)
     $1_EXTRA_CXXFLAGS += $(CXX_O_FLAG_NONE)