build: use the system's ccache by default

ccache 3.x supports direct mode (http://ccache.samba.org/manual.html#_the_direct_mode)
This is not supported in the prebuilt version.
Direct mode has been shown to decrease build time compared to the ccache in prebuilts

Note: this will require your cache to be recreated

PS3:
  make it so you need to export USE_SYSTEM_CCACHE=1 to use system ccache
  allow custom CCACHE_BASEDIR
oldChange-Id: Ib146011a3330637c2d306d329fcb39cea058ff12
Change-Id: Iee698ee4caf46a73986b748dc38709023416da1f

Conflicts:
	core/tasks/kernel.mk
[HAX] Allow per-target dtbTool

 * Revert this when fixed

Change-Id: I97ecb0448ae7bd5859454be290c5dde6248b2859
Redo BOARD_CUSTOM_BOOTIMG_MK support

Simplified version of the previous implementation. Recovery's ramdisk
is spun off from the main recovery target again to allow overriding
just the image-generation step
Define CONFIG_64BIT for LP64 target

Linux kernel uapi headers use CONFIG_64BIT flag. We need to define that if
__LP64__ flag is defined.

Change-Id: I2143ca8d91d70506485f3eb6f21a9e5243c495cc
build: Add support for device tree in boot.img

Add support for optional device tree image (dt.img)
to boot and recovery images.  Some devices use kernel device
tree and this adds the device tree image as a section within
the boot/recovery images.

Change-Id: I91431ef2f4b86485895678916e39a8572be878eb
Build: add DT image variable to Makefile

DT image variable is currently present in
generate_extra_images.mk.This file is moved to
build/tasks to support persist image generation
during parallel make. As build/tasks is called
at the end of Makefile, DT image variable is not
available for other images generation like boot and
recovery. Adding this variable in Makefile ensures
the variable is defined before usage

Change-Id: I21f675d8ce648dc1cf1f4f3aede33278300e08c9
CRs-fixed: 548299
Fix case where boot/recovery.img were being built with wrong params.

The boot and recovery images  now get built using the same params during ota package
generation as during a normal build.

Change-Id: I93d46e11a4245288f0e87c87a2e4bf45ac5aff69
Fix the extra dt.img compilation issue.

Add support for optional device tree image (dt.img)
for device that doesnt have TARGET_BOOTIMAGE_USE_EXT2

Change-Id: I6e07b3ca6d049a8ebdad7ea304b4f39e7c846151
Fixing Compilation issue

Change-Id: I1ad1e91498aee877c78cf85656fe704c585fb0cf
framework: adding security-bridge

adding security-bridge to FRAMEWORK_BASE_SUBDIRS
to make it compile as part of the framework/base java module

Change-Id: Ic96ba5549525fcaa58c274f918ac511f69cb0096
enable sdiv support in ART

ART looks for TARGET_CPU_VARIANT to determine hardware
instruction set support. QCOM chipsets set TARGET_CPU_VARIANT
as "generic", so we add it to ART's look-up list.

Change-Id: I07917f3f9c86dca15951698510024e39b1fee565
Fully expand eng/debug/tests module install files

When including eng, debug and tests modules that are tagged
using LOCAL_MODULE_TAGS, fully expand the install file list
from just the tagged module to all the module's INSTALLED
list.  This allows auto-generated files such as dex preopt
odex files tagged under the module's INSTALLED list to be
included.  This also makes the behavior of specifying a
module as debug using LOCAL_MODULE_TAGS to be the same as
specifying it as PRODUCT_PACKAGES_DEBUG when building
for userdebug or eng variant.

Change-Id: If9a24b62d8bee9e378f3e5f58e9490e963238302
Allow override of DEX_PREOPT_DEFAULT

Allow device-specific override of DEX_PREOPT_DEFAULT value
rather than dependent on the number of runtimes supported
by the system.  This allows force generation of
non-stripped packages even when dex pre-opt is enabled
with only 1 runtime.

Change-Id: I57573ce17dc46b7eccf1a3619b073ead1b77c134
enable sdiv support in ART

add more target into ART instruction set feature look-up list.

Change-Id: If2332ff1fc1f496187ca632f7ee4af5fe880515e
Revert "Inhibit implicit -Bsymolic in -shared."

This reverts commit 04cf31597021af3cd045dd9c50d94a87d0394023.
The revert helps in benchmark performance.

Change-Id: Id3b0c68efdc7dacd43bcc3b3b6f61f288576307d
Revert "Remove -Bsymbolic from builds."

This reverts commit 50031de36ee77128b00e1ea77bcbb5a48628cfa3.
This revert helps in benchmark performance.

Change-Id: I67df6f6be940b6699f7e7c26940a137154fe79c1
Disable -mcpu=cortex-a15 flag for krait

Disable -mcpu=cortex-a15 flag for krait.
Make it same as that of KK and use -march=armv7-a.

Change-Id: I0047a2fac1b533c357ba1cee67534ce4782b2b20