Refactor a little bit and do the validation on also default.prop.

Change-Id: I76c2344d9033eadede7048689a879c9a69a05b7f
add support for module supported or unsupported target architectures

Add four new variables for module makefiles:

LOCAL_MODULE_TARGET_ARCH specifies that a module is only supported for
one or more architectures.  Any architecture not in the list will be
not attempt to build the module.  The expected use case is prebuilts
that are only suitable for a single architecture, or modules like llvm
that need per-architecture support.

LOCAL_MODULE_UNSUPPORTED_TARGET_ARCH specifies that a module cannot be
built for one or more architectures.

LOCAL_MODULE_TARGET_ARCH_WARN and LOCAL_MODULE_UNSUPPORTED_TARGET_ARCH_WARN
are the same, but warn that the arch is not supported, which is useful
for modules that are critical but not yet working.

The logic for whether or not to build an architecture is fairly
complicated, so this patch consolidates it into module_arch_supported.mk

Change-Id: I120caf4a375f484e1fd6017b60c2f53882ae01e6
HACK: add 64-bit directory blacklist

Change-Id: I431e8b220db81d51930dc0b3d95995df120c179a
Merge "Refactor a little bit and do the validation on also default.prop."
Merge topic 'arm64'

* changes:
  HACK: add 64-bit directory blacklist
  add support for module supported or unsupported target architectures
Remove dead code.

Change-Id: Ia36a04037e15cbf296f375f3ece9a7e977fdca1e
Merge "Remove dead code."
make 64-bit builds into multiarch builds

Also enable the 64-bit binder interface and make them only use ART.

Change-Id: I05de41ce348c14722c84a658f745659bde5ba423
Merge "make 64-bit builds into multiarch builds"
don't use LOCAL_*_arch for host builds

The LOCAL_*_$(TARGET_ARCH) variables don't make sense for host
modules, only append use them for target modules.

Also complete the list of LOCAL_*_arch and LOCAL_*_32/64 to be
consistent.

Change-Id: I00c83e5c4e08ed9a844f9f99a79ce4bcc3f0bf11
Merge "don't use LOCAL_*_arch for host builds"
Add generated sources dir to the default include path

Change-Id: I71fed98dfbc0bf5efad069a251eee2e5ab2e5fe6
support LOCAL_MODULE_TARGET_ARCH for prebuilts

Prebuilts often support only a single architecture, allow them to
use LOCAL_MODULE_TARGET_ARCH to specify it.

Change-Id: I2514f66f682ef267bbf1a1ab78510faff0a18b64
Don't check the existence for the 64-bit modules for 32-bit SDK build.

Change-Id: I0d5d6ecc07332bef6854466fd98380eb12fc08fc
Merge "Don't check the existence for the 64-bit modules for 32-bit SDK build."
add linker64 and debuggerd64 to all products

Add linker64 and debuggerd64 to embedded.mk.  They will be silently
ignored on 32-bit builds, and filtered out on 32-bit sdk builds.

Change-Id: I8c30ea65e2b7e224ee73cc9fbbcb7555d3be04b5
Merge changes I2514f66f,I71fed98d

* changes:
  support LOCAL_MODULE_TARGET_ARCH for prebuilts
  Add generated sources dir to the default include path
Merge "add linker64 and debuggerd64 to all products"
fix build

Include prebuilt_internal.mk for host builds.

Change-Id: I750d6f71b3a2c67b11536babb8b39060005f4ff4
Merge "fix build"