roomservice: handle GitHub's api changes

while other teams flood their gerrit, we just reformat our device string

GitHub support reply:
-------------------------------------
Hi Alexander Martinz,

> sorry to bother you, but our automated builds, which use the github search api
> to locate repositories, are constantly failing with some specific repositories.
>
> example url: https://api.github.com/search/repositories?q=user:NamelessRom+android_device+find7+fork:true

Sorry for the trouble!  Our search folks investigated and it looks like the issue
is how we tokenize repository names.

We're splitting "find7" into 2 separate tokens ("find" and "7"),
so searching for "find7" returns no results like you found.

This is why dropping the "7" works, or if you search for "7" separately,
it works as well:

https://api.github.com/search/repositories?q=user:NamelessRom+android_device+find+7+fork:true

Does that clear things up?
If this is a problem for your build process however, please let us know.

Thanks,
Robert

-------------------------------------

Change-Id: I111cb5dd1804d183811a2765f13d930d564d2cf5
(cherry picked from commit 7f60bc362eb6b7a5eb0cec015616e5b994cdaaff)
Signed-off-by: Chet Kener <Cl3Kener@gmail.com>
build: Introduce project pathmap and use it for qcom variants

The project pathmap tracks the path to the top level of a project.  The
following functions are provided:

 * project-set-path adds an entry.
 * project-set-path-variant adds a "variant" entry.
 * project-path-for retrieves an entry.

To use as a guard in Android.mk:

  ifeq ($(call my-dir),$(call project-path-for,projectname))

To use for include paths in Android.mk:

  LOCAL_C_INCLUDES += $(call project-path-for,projectname)/...

Set project pathmap for qcom project variants.

Change-Id: I8dceca72a1ba80fc7b1830c5ab285d444f530457
(cherry picked from commit 6f2d92ece84a946b448583108f509c3b19f4faf6)
Signed-off-by: Chet Kener <Cl3Kener@gmail.com>
build: Set QCOM variants for non-QCOM_HARDWARE defined targets

* Nexus devices and others typically do not define the QCOM_HARDWARE
  flag, so the variant path should always default to the AOSP variant.
* Unconditionally set the variant to the AOSP HAL by default.

Change-Id: I714170897128f92718af266366cfcbf3136e8981
(cherry picked from commit ee90f562559388c908fa751cc09ab8e8c106f66b)
Signed-off-by: Chet Kener <Cl3Kener@gmail.com>
build: Use project pathmap for recovery

Change-Id: I6339ac77b899a43db21261d587252b65cb58ad79
(cherry picked from commit 0eefe78029e76e8517294f58ba5fca7eca171abf)
Signed-off-by: Chet Kener <Cl3Kener@gmail.com>
build: Fix pathmap derp

Change-Id: Ic6070a87fb552b60e761c6dd9c515b7785ea49cb
(cherry picked from commit e36be6e3f0eb201d62a6207bf79042df1c76c844)
Signed-off-by: Chet Kener <Cl3Kener@gmail.com>