Mark the current BUILD_* warnings as errors by default

This switches:

  BUILD_COPY_HEADERS / LOCAL_COPY_HEADERS
  BUILD_HOST_EXECUTABLE
  BUILD_HOST_SHARED_LIBRARY
  BUILD_HOST_STATIC_LIBRARY

to errors by default. Devices can set
BUILD_BROKEN_USES_BUILD_HOST_EXECUTABLE (etc) to turn these errors back
to warnings. I've done that for all of our internal devices.

Bug: 130719878
Bug: 130696912
Bug: 130722971
Bug: 130723227
Test: remove the BUILD_BROKEN_USES_* lines from a device, see errors
Change-Id: I1aecf97f64e281df3682ff0a0fb3ac4283790acd
Merged-In: I1aecf97f64e281df3682ff0a0fb3ac4283790acd
(cherry picked from commit c4bdff5f7e8d0f60e7084cb83abe759fb3b65363)
diff --git a/core/static_library.mk b/core/static_library.mk
index 78908cf..a450092 100644
--- a/core/static_library.mk
+++ b/core/static_library.mk
@@ -42,6 +42,8 @@
 ## Copy headers to the install tree
 ###########################################################
 ifdef LOCAL_COPY_HEADERS
-$(call pretty-warning,LOCAL_COPY_HEADERS is deprecated. See $(CHANGES_URL)#copy_headers)
+$(if $(filter true,$(BUILD_BROKEN_USES_BUILD_COPY_HEADERS)),\
+  $(call pretty-warning,LOCAL_COPY_HEADERS is deprecated. See $(CHANGES_URL)#copy_headers),\
+  $(call pretty-error,LOCAL_COPY_HEADERS is obsolete. See $(CHANGES_URL)#copy_headers))
 include $(BUILD_SYSTEM)/copy_headers.mk
 endif