gettop: fix symlink detection

Summary: We must use the -P flag for pwd to properly get $PWD from the environment *with* symlinks. Otherwise symlink
detection is broken and anything we do using $(gettop) at the top of a symlinked path won't work properly. I noticed this
issue while running on a system that has a SSD RAID symlinked to my android build home directory, which is ~/ssd_storage.
The top in this instance is a symlink, which means that gettop() returns my home path, or the path above the symlink
directory (but not the symlinked directory). This is a major issue in case developers choose to use $(gettop),
$ANDROID_BUILD_TOP, or $T (doesn't really matter either way).

Test Plan: Create a symlink and sync android source into the path. Open up the symlink, run envsetup.sh, and check
$(gettop) output.

While this isn't the best solution, it fixes an issue without creating new issues.

Change-Id: I65bc345753805e6161098d2af6e0bee0b07d37b1
roomservice: Add recursive dependencies

Dependency repositories can now have dependencies themselves

Change-Id: I1129c37881c95e5bb8825f1fd8caf36818f9d583
Merge tag 'android-4.4.4_r2' into du44

Android 4.4.4 Release 2

Change-Id: I09f2d8337eec9fdf951e6b1326d0546b443d998e
Merge "gettop: fix symlink detection" into du-44
Merge "Merge tag 'android-4.4.4_r2' into du44" into du-44
colorize non-fatal javac stderr yellow (and actually display it... at all)

woops!

Signed-off-by: nuclearmistake <nuclearmistake@gmail.com>
Change-Id: I984f428022a68a825aa041866e8d459bd6611f71
Preliminary support for DU product builds [1/2]

Credit/Thanks to CM

Change-Id: I4e1e1662a4d530c32ccc0fe44b5b7ad39464d91f
Merge "colorize non-fatal javac stderr yellow (and actually display it... at all)" into du-44
build: Set default sound properites to existing files

this fixes the default values for those sounds in settings and other
troubles coming from it e.g. alarm clock

Change-Id: I824c974c2c14b6dac127dbaa1922ef2ae64721eb
[HAX] Allow per-target dtbTool

 * Revert this when fixed

Change-Id: I97ecb0448ae7bd5859454be290c5dde6248b2859
build: get the fuck out

Change-Id: I70ce0965b737a00f7bf28064f021562dca0f478a
Generate extra userdata partition if needed

* To support variants of devices which may come in 16/32/64GB variants.

Change-Id: I74c32d8316f0450a1445fe95a95e5cabb7a9dd1b
build: Degreenify java

Change-Id: Iac348407997f7e52844af0494ee59762df0819d7
[WIP] Remove some of the crap nobody uses

Change-Id: I68cc2449728a32d6c263e659cfcb34a82739a335
build: qcom: Set QCOM_*_PATH variables for hardware/qcom-* projects

This consolidates a bunch of one-off logic scattered throughout the
code base.  Usage in Android.mk files is trivial:

At top level, use e.g. "ifeq ($(call my-dir),$(QCOM_AUDIO_PATH))".
This works for all variants, including non-variants (i.e. AOSP).

Within subdirs, use e.g. hardware/qcom/audio => $(QCOM_AUDIO_PATH)

Change-Id: Iee2497ea9a7efeb4ae9e861b84c532b19da7b69d
Merge https://github.com/DirtyUnicorns-KitKat/build into HEAD