Massive Update

- GCC 4.8 support
- Optimized flags from Linaro
- Tweaked dumpvar
- GNU Make 4.0 support
- more

Thanks Linaro Team

o Add -Wno-unused-parameter -Wno-unused-but-set-parameter to suppress
  new warnings.
o Define GCC_COLORS to enable colorful diagnostic messages.

Change-Id: Icbd62300b0e6f39d4e514edec2431a06b4d72421
(cherry picked from internal commit ccd8e6082b5b1e519a75068fa6c887a1a85b53c4)

Set GCC 4.8 as default

Dumpvar: Show TARGET_TOOLS_PREFIX

Update for GCC 4.8

core: Support GNU make 4.0 and any future releases

http://lists.gnu.org/archive/html/make-w32/2013-10/msg00021.html

Change-Id: Iaf6aa32e64269bf0368c20b0393e3fcfa540558d

build: optionally use the system's ccache

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 by up to 40x, compared to preprocessor mode
used in ccache 2.4, which is substantially less

Thanks to VanirAOSP!
https://github.com/VanirAOSP/build/commit/e802113de5ca54b926c6a7a32b231d10e3a0807a

Change-Id: I6a930eca9244f450c69bc2ca170fc6582f487fc4

envsetup: add a helper to fix "out/target/common" not being really common

* out/target/common isn't really common, and if you do
  back to back builds for multiple devices, that is noticable.
* Use out/target/common-$device instead, and link the appropriate
  dir to out/target/common every time lunch() is run, if
  ANDROID_FIXUP_COMMON_OUT is set.
* Refer https://groups.google.com/forum/#!topic/android-building/ispbOgzoyg8
  for more info.

Change-Id: I11e7df0e68e2a60ce32576f06397d60fc9465b60

Fixes

fix