Merge "Add -Werror to compile warning free projects." am: 355e96774b am: 05388b7618 am: 9f82feb9e6

am: a70f8fc5d5

Change-Id: Ia43c8ed7cadbbc90e3199101d1f56a96ad10b5f2
This commit is contained in:
Chih-hung Hsieh 2016-10-13 01:12:47 +00:00 committed by android-build-merger
commit a9d484ac3a
2 changed files with 45 additions and 0 deletions

View File

@ -1596,6 +1596,16 @@ ifeq ($(my_strict),true)
my_cflags += -DANDROID_STRICT
endif
# Add -Werror if LOCAL_PATH is in the WARNING_DISALLOWED project list,
# or not in the WARNING_ALLOWED project list.
ifneq (,$(strip $(call find_warning_disallowed_projects,$(LOCAL_PATH))))
my_cflags_no_override += -Werror
else
ifeq (,$(strip $(call find_warning_allowed_projects,$(LOCAL_PATH))))
my_cflags_no_override += -Werror
endif
endif
# Disable clang-tidy if it is not found.
ifeq ($(PATH_TO_CLANG_TIDY),)
my_tidy_enabled := false

View File

@ -791,4 +791,39 @@ export ANDROID_BUILD_PATHS:=$(abspath $(BUILD_SYSTEM)/no_java_path):$(ANDROID_BU
export PATH:=$(abspath $(BUILD_SYSTEM)/no_java_path):$(PATH)
endif
# Projects clean of compiler warnings should be compiled with -Werror.
# If most modules in a directory such as external/ have warnings,
# the directory should be in ANDROID_WARNING_ALLOWED_PROJECTS list.
# When some of its subdirectories are cleaned up, the subdirectories
# can be added into ANDROID_WARNING_DISALLOWED_PROJECTS list, e.g.
# external/fio/.
ANDROID_WARNING_DISALLOWED_PROJECTS := \
art/% \
bionic/% \
external/fio/% \
define find_warning_disallowed_projects
$(filter $(ANDROID_WARNING_DISALLOWED_PROJECTS),$(1)/)
endef
# Projects with compiler warnings are compiled without -Werror.
ANDROID_WARNING_ALLOWED_PROJECTS := \
bootable/% \
cts/% \
dalvik/% \
development/% \
device/% \
external/% \
frameworks/% \
hardware/% \
packages/% \
system/% \
test/vts/% \
tools/adt/idea/android/ultimate/get_modification_time/jni/% \
vendor/% \
define find_warning_allowed_projects
$(filter $(ANDROID_WARNING_ALLOWED_PROJECTS),$(1)/)
endef
include $(BUILD_SYSTEM)/dumpvar.mk