Colorize javac errors

You know those multi-line ones that are frequently interspersed with other buld output?
The ones that don't even have the word "error" in them to search for?

This makes them red.

ps2: fix jar_check failures cause by leaving empty stderr files in intermediates dirs
     this is probably not the best place to store stderr before colorizing it if javac
     exits non-zero, but it seems much lighter than mkdiring a bunch of temp directories
     or using sed to mangle the paths to point to per-intermediates directory unique
     temporary file names

Change-Id: I3b9b7d8a0c76958588ac1603b6742987d6dde54c
Signed-off-by: nuclearmistake <nuclearmistake@gmail.com>
Merge remote-tracking branch 'cm/cm-11.0' into cm-11.0
WriteIncrementalOTAPackage: Don't extract extra files to system

Change-Id: Iaa966600c0a0576f33f51ba736bd47ef5e26ea48
build: core: Parameterize recovery with a variant

Include extra vendor config early.  If RECOVERY_VARIANT is set, use it
to look for the recovery in an alternate path.

Change-Id: Iba54f0746d728c0dfeeb67b4d3166d5e25b1b5d7
Merge remote-tracking branch 'cm/cm-11.0' into cm-11.0
tools: getb64key - print the base64 version of a PEM public key file

Change-Id: Ia94ff560c88dfe85c3fa55db5c8219aa0d3419ee
Store the base64 release key in the OTA zips

This can be directly grepped in pre-existing package.xml tables
to make sure we're not trying to update to a differently signed
build

Change-Id: I7528a8e7c484ea9209cd665b9263328ae834586a
releasetools: Properly handle boot images that use dt

Instead of using a prebuilt boot/recovery image, bring the dt image
into the target files package and use it during package creation

Change-Id: I70ecf74423aad95a3eb8e085029c37450ae354a2
releasetools: Fix whitespace error for INSTALLED_DTIMAGE_TARGET

Copy/paste produced spaces instead of a tab; fix that

Change-Id: I937e5f6ffd2c947c77dc4baa7427b170c1ea4bcd
Merge remote-tracking branch 'cm/cm-11.0' into cm-11.0

Conflicts:
	core/Makefile
build: use /usr/bin/env to call python

Hardcoding the path to python instead of env is not recommended.  This
can break the build in some Linux environments that link /usr/bin/python
to python3.

Change-Id: I4c62eb391acc6d468ce24ac8640834e965e76e78
Merge remote-tracking branch 'cm/cm-11.0' into cm-11.0
releasetools: bring back boot.img handling

This is required for galaxysmtd and other devices with custom
boot format.

This partially reverts "releasetools: Properly handle boot images that use dt"

Change-Id: Ib35001c2d9b906067e5a3c84712dc3a283a38cbb
Merge remote-tracking branch 'cm/cm-11.0' into cm-11.0

Conflicts:
	core/Makefile
build: Set ccache base to build top

This enables ccache sharing between different build tree paths.

Change-Id: I99636bdd2779a6ccf0649f027e35cf67df44b6ae
build: Add new public keys to recovery

Change-Id: I11dea464297813be36e60c23728dde8893535c46
build: Include an extra device.mk

Change-Id: I4373f78f57c81e46affc2f6a6bc854bf4c3d00db
Merge "build: Set ccache base to build top" into cm-11.0
Don't set CCACHE_BASEDIR if its already set

 * enable use of shared ccache

Change-Id: Ic708a5d5169291d674b167aa2c87bf2c8adaafae
Merge remote-tracking branch 'cm/cm-11.0' into cm-11.0

Conflicts:
	core/Makefile