Loading core/Makefile +14 −0 Original line number Diff line number Diff line Loading @@ -517,6 +517,20 @@ $(SOONG_TO_CONVERT): $(SOONG_CONV_DATA) $(SOONG_TO_CONVERT_SCRIPT) $(hide) $(SOONG_TO_CONVERT_SCRIPT) $< >$@ $(call dist-for-goals,droidcore,$(SOONG_TO_CONVERT)) # ----------------------------------------------------------------- # Modules use -Wno-error, or added default -Wall -Werror WALL_WERROR := $(PRODUCT_OUT)/wall_werror.txt $(WALL_WERROR): @rm -f $@ echo "# Modules using -Wno-error" >> $@ for m in $(sort $(SOONG_MODULES_USING_WNO_ERROR) $(MODULES_USING_WNO_ERROR)); do echo $$m >> $@; done echo "# Modules added default -Wall -Werror" >> $@ for m in $(sort $(SOONG_MODULES_ADDED_WERROR) $(MODULES_ADDED_WERROR)); do echo $$m >> $@; done echo "# Modules added default -Wall" >> $@ for m in $(sort $(SOONG_MODULES_ADDED_WALL) $(MODULES_ADDED_WALL)); do echo $$m >> $@; done $(call dist-for-goals,droidcore,$(WALL_WERROR)) # ----------------------------------------------------------------- # The dev key is used to sign this package, and as the key required # for future OTA packages installed by this system. Actual product Loading core/binary.mk +25 −7 Original line number Diff line number Diff line Loading @@ -1664,13 +1664,31 @@ 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 # Check if -Werror or -Wno-error is used in C compiler flags. # Modules defined in $(SOONG_ANDROID_MK) are checked in soong's cc.go. ifneq ($(LOCAL_MODULE_MAKEFILE),$(SOONG_ANDROID_MK)) # Header libraries do not need cflags. ifneq (HEADER_LIBRARIES,$(LOCAL_MODULE_CLASS)) # Prebuilt modules do not need cflags. ifeq (,$(LOCAL_PREBUILT_MODULE_FILE)) my_all_cflags := $(my_cflags) $(my_cppflags) $(my_cflags_no_override) # Issue warning if -Wno-error is used. ifneq (,$(filter -Wno-error,$(my_all_cflags))) $(eval MODULES_USING_WNO_ERROR := $(MODULES_USING_WNO_ERROR) $(LOCAL_MODULE_MAKEFILE):$(LOCAL_MODULE)) else # Issue warning if -Werror is not used. Add it. ifeq (,$(filter -Werror,$(my_all_cflags))) # Add -Wall -Werror unless the project is in the WARNING_ALLOWED project list. ifeq (,$(strip $(call find_warning_allowed_projects,$(LOCAL_PATH)))) my_cflags_no_override += -Werror $(eval MODULES_ADDED_WERROR := $(MODULES_ADDED_WERROR) $(LOCAL_MODULE_MAKEFILE):$(LOCAL_MODULE)) my_cflags := -Wall -Werror $(my_cflags) else $(eval MODULES_ADDED_WALL := $(MODULES_ADDED_WALL) $(LOCAL_MODULE_MAKEFILE):$(LOCAL_MODULE)) my_cflags := -Wall $(my_cflags) endif endif endif endif endif endif Loading core/config.mk +1 −32 Original line number Diff line number Diff line Loading @@ -919,38 +919,7 @@ else APPS_DEFAULT_VERSION_NAME := $(PLATFORM_VERSION) 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/% \ hardware/interfaces/% \ 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/% \ # ANDROID_WARNING_ALLOWED_PROJECTS is generated by build/soong. define find_warning_allowed_projects $(filter $(ANDROID_WARNING_ALLOWED_PROJECTS),$(1)/) endef Loading Loading
core/Makefile +14 −0 Original line number Diff line number Diff line Loading @@ -517,6 +517,20 @@ $(SOONG_TO_CONVERT): $(SOONG_CONV_DATA) $(SOONG_TO_CONVERT_SCRIPT) $(hide) $(SOONG_TO_CONVERT_SCRIPT) $< >$@ $(call dist-for-goals,droidcore,$(SOONG_TO_CONVERT)) # ----------------------------------------------------------------- # Modules use -Wno-error, or added default -Wall -Werror WALL_WERROR := $(PRODUCT_OUT)/wall_werror.txt $(WALL_WERROR): @rm -f $@ echo "# Modules using -Wno-error" >> $@ for m in $(sort $(SOONG_MODULES_USING_WNO_ERROR) $(MODULES_USING_WNO_ERROR)); do echo $$m >> $@; done echo "# Modules added default -Wall -Werror" >> $@ for m in $(sort $(SOONG_MODULES_ADDED_WERROR) $(MODULES_ADDED_WERROR)); do echo $$m >> $@; done echo "# Modules added default -Wall" >> $@ for m in $(sort $(SOONG_MODULES_ADDED_WALL) $(MODULES_ADDED_WALL)); do echo $$m >> $@; done $(call dist-for-goals,droidcore,$(WALL_WERROR)) # ----------------------------------------------------------------- # The dev key is used to sign this package, and as the key required # for future OTA packages installed by this system. Actual product Loading
core/binary.mk +25 −7 Original line number Diff line number Diff line Loading @@ -1664,13 +1664,31 @@ 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 # Check if -Werror or -Wno-error is used in C compiler flags. # Modules defined in $(SOONG_ANDROID_MK) are checked in soong's cc.go. ifneq ($(LOCAL_MODULE_MAKEFILE),$(SOONG_ANDROID_MK)) # Header libraries do not need cflags. ifneq (HEADER_LIBRARIES,$(LOCAL_MODULE_CLASS)) # Prebuilt modules do not need cflags. ifeq (,$(LOCAL_PREBUILT_MODULE_FILE)) my_all_cflags := $(my_cflags) $(my_cppflags) $(my_cflags_no_override) # Issue warning if -Wno-error is used. ifneq (,$(filter -Wno-error,$(my_all_cflags))) $(eval MODULES_USING_WNO_ERROR := $(MODULES_USING_WNO_ERROR) $(LOCAL_MODULE_MAKEFILE):$(LOCAL_MODULE)) else # Issue warning if -Werror is not used. Add it. ifeq (,$(filter -Werror,$(my_all_cflags))) # Add -Wall -Werror unless the project is in the WARNING_ALLOWED project list. ifeq (,$(strip $(call find_warning_allowed_projects,$(LOCAL_PATH)))) my_cflags_no_override += -Werror $(eval MODULES_ADDED_WERROR := $(MODULES_ADDED_WERROR) $(LOCAL_MODULE_MAKEFILE):$(LOCAL_MODULE)) my_cflags := -Wall -Werror $(my_cflags) else $(eval MODULES_ADDED_WALL := $(MODULES_ADDED_WALL) $(LOCAL_MODULE_MAKEFILE):$(LOCAL_MODULE)) my_cflags := -Wall $(my_cflags) endif endif endif endif endif endif Loading
core/config.mk +1 −32 Original line number Diff line number Diff line Loading @@ -919,38 +919,7 @@ else APPS_DEFAULT_VERSION_NAME := $(PLATFORM_VERSION) 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/% \ hardware/interfaces/% \ 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/% \ # ANDROID_WARNING_ALLOWED_PROJECTS is generated by build/soong. define find_warning_allowed_projects $(filter $(ANDROID_WARNING_ALLOWED_PROJECTS),$(1)/) endef Loading