Merge change 6571
* changes:
Since we're using gcc 4.4 in master, we can use the -Werror= option to make not having a virtual destructor in classes with virtual methods an error. I already fixed all code that had this problem, so now it's a matter of turning the option on. Also, as long as we don't have any C-specific options, it's probably best to copy the CPP flags from the C flags. We can always break them out later.
diff --git a/core/config.mk b/core/config.mk
index 6e11d6c..bc862df 100644
--- a/core/config.mk
+++ b/core/config.mk
@@ -78,8 +78,8 @@
COMMON_GLOBAL_CFLAGS:= -DANDROID -fmessage-length=0 -W -Wall -Wno-unused
COMMON_RELEASE_CFLAGS:= -DNDEBUG -UDEBUG
-COMMON_GLOBAL_CPPFLAGS:= -DANDROID -fmessage-length=0 -W -Wall -Wno-unused -Wnon-virtual-dtor
-COMMON_RELEASE_CPPFLAGS:= -DNDEBUG -UDEBUG
+COMMON_GLOBAL_CPPFLAGS:= $(COMMON_GLOBAL_CFLAGS)
+COMMON_RELEASE_CPPFLAGS:= $(COMMON_RELEASE_CFLAGS)
# Set the extensions used for various packages
COMMON_PACKAGE_SUFFIX := .zip
@@ -87,7 +87,7 @@
COMMON_ANDROID_PACKAGE_SUFFIX := .apk
# list of flags to turn specific warnings in to errors
-TARGET_ERROR_FLAGS := -Werror=return-type
+TARGET_ERROR_FLAGS := -Werror=return-type -Werror=non-virtual-dtor
# TODO: do symbol compression
TARGET_COMPRESS_MODULE_SYMBOLS := false