envsetup: set OUT_DIR to an absolute path always

OUT_DIR was set to $(TOPDIR)out previously,
but $(TOPDIR) was null, so it was a relative path.
This broke releasetools, inline kernel building, etc
since they require absolute paths.
Fix it so that it is set to $(shell readlink -f .)/out
if $(TOPDIR) is null.

Also remove hacks which checked if (OUT_DIR) was out
and changed it to $(ANDROID_BUILD_TOP)/out to workaround
the aforementioned problem.

Change-Id: I459a3b1325a1bbea0565cd73f6acf160d4ed9b39
build: work around missing readlink -f on Mac

Change-Id: I5d56366cf33a2b02f1886c87815d00cff279779d
cleanbuild: add *.zip.md5sum to installclean_files

Change-Id: I4b68bb9a8d421a54b008c5318fa82ed230bd6441
envsetup: Don't tread on my $PROMPT_COMMAND

 * I want my own PROMPT_COMMAND to coexist with Android's, so stash it
   in the environment and add it to the new command.

Change-Id: I200902f135d0c5c620a8eb3ce9cefdba318cf9d3

envsetup: Fix $PROMPT_COMMAND

Change I200902f135d0c5c620a8eb3ce9cefdba318cf9d3 broke the android
PROMPT_COMMAND on scenarios where the existing prompt already had
a hardstatus adjustment, since appending it to Android's just clobbered
Android's in favor of the original.

So instead of appending them, inject android's at the beggining of the
existing one (and create a default if none exists)

Change-Id: I1fbcbfdb6220d886dda3662da498d1759a4c195b

envsetup: Really fix PROMPT_COMMAND handling

 * Add ANDROID_NO_PROMPT_COMMAND to not change it at all.
 * Export ANDROID_PROMPT_PREFIX so it can be used elsewhere.

Change-Id: Ib2a487404d3b8a367a21582e8a0ce69c2d212a9a

envsetup: More PROMPT_COMMAND

* Get rid of ANDROID_NO_PROMPT_COMMAND, the pre-existing STAY_OFF_MY_LAWN
does the same thing
* Remove any pre-existing android prefixes to avoid accumulation
scenarios in consecutive builds (i.e., multiple build identification
strings in hardstatus)

Change-Id: I86661e066e18ea6ad0c742fa1dc6555780fa5441

envsetup: add quotes around PROMPT_COMMAND

Better compatibility for zsh.

Change-Id: Ie010c30580e67e3b5357e3cc869114a525762677
bacon: get rid of squisher
Change-Id: I3cece868e56f85bfa0b31a62a51e6eab2070ab06
Signed-off-by: CNBLACK <didwjdgns21@gmail.com>
envsetup: include bash completion script from vendor/aosd
Change-Id: Id90d84748df41d6626dfd46befabe0054c6d14e7
Signed-off-by: CNBLACK <didwjdgns21@gmail.com>
print AOSD_VERSION in build config
Change-Id: Iead654e30798a11e636ec743683f3431d14a858c
Signed-off-by: CNBLACK <didwjdgns21@gmail.com>
cout: move to $out

Change-Id: I3b5bf8a5f62dcdf267662bb97a2073150152cfa6
envsetup: use $(CURDIR) for getting current directory

Change-Id: I5f00faf64ec31d86dd2e48ec038748ce8499380b
add adb to the disttools

Change-Id: I898fa5c9396606144e57dba8453f476b9e9440ab
lets make the lunch list look a little neater

It's very simple, but with more and more devices coming in, a long list won't cut it
There are probably better ways of doing this, feel free to comment

Change-Id: I9bd1fef920f985a133c882df9987b6be29dbc7b8
Sign final packages with a different key if requested

...and throw it into recovery builds as well

Change-Id: Ic96d4d49d821cb03d5318e3e9ad93d02fb92573e
build: get rid of the sparse expand stuff

* i don't see a reason why we are doing this because we never deal
with flashing system img rawly
* This will put useless write on ssd..
* we don't have space on ssd

Change-Id: Icd53d161b8515f5eca238b98ad68515d69caa34f
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
  CM_FIXUP_COMMON_OUT is set.
* Refer https://groups.google.com/forum/#!topic/android-building/ispbOgzoyg8
  for more info.

Change-Id: I11e7df0e68e2a60ce32576f06397d60fc9465b60
Add PRODUCT_BOOTANIMATION

Just add PRODUCT_BOOTANIMATION in your product
makefiles and point it to the zip file you would
like to have used as the boot animation.

The coresponsing build system handles picking
the last one, which is the last product to set this.

Change-Id: I8c95a515a8fbb92d363141eb79e254712dccc162
Signed-off-by: William Roberts <wroberts@tresys.com>

Fix for build break when PRODUCT_BOOTANIMATION is unset

Change-Id: I236c2dd35ba0e632ed327ed6dc36324c9e59587a

Restore original behavior when PRODUCT_BOOTANIMATION is undefined

Change-Id: I3ee7141f7c26cee033b8a30824caf38fcacec5a8
Add a unique build number to every build

SDK-readable via android.os.Build.INCREMENTAL

Change-Id: If9885adebe12a56b2b2e353285721be695bc411b

Fix exporting the unique build identifier

Change-Id: Ie58e981b7e83a4351d137dfd8995dce7d365d950

Fix incremental build number on Darwin

Darwin does not include sha1sum, but it should have openssl.

Change-Id: If2b685c1478f9486bed21dfba0c655d9e02db72b

Use openssl instead of sha1sum

Change-Id: Iab8a74d4af6646104cb23312853f811a38bdec0d

Conflicts:
	envsetup.sh
build: Don't run backuptool on GMS builds

Change-Id: I5dde27f9d16b88049171db9805221d92e67f3e5d

Conflicts:
	core/Makefile
Store the path to the ota file generator where it can be reused

Change-Id: I8896713c79a751b79fbbcc75f6ba30dad4ea9fac
build: Add support for vendor product and device name

 * CM's build system assumes some convention-over-configuration which
   we might need to override in order to conform to vendor requirements.
 * Allow overriding of target and product names using these new
   variables. This allows for CM conventions to work, while generating
   the correct fingerprint dynamically without post processing the
   strings.

Change-Id: Ic5913e587400dd38c04aa05de3a7becced77a59e

Conflicts:
	core/Makefile
build: Add script to generate extra images

Change-Id: I53081c7a2b4f18bc8c8a27b04d311a6b078b2022

Use CM standard qcom naming

Change-Id: I360b3dcf1fe82140a7993189e881f9d77b571bef