OpenGL: Build with GCC for Adreno compatibility

Summary:
Clang treats const char type differently (view processed code to see).
For compatibility against Adreno prebuilts, we will build libopengl
and it's wrappers with gcc

Test Plan: verified

Reviewers: randall.rushing, synergy

Reviewed By: synergy

Differential Revision: http://review.codefirex.com/D86
frameworks/native: Squashed Linaro patches:

Summary:
Squashed commit of the following:

frameworks/native: Fix build in ISO C++ 11 mode

Fix constructs that are considered new string literals in C++ 11 mode

Signed-off-by: Amit Pundir <amit.pundir@linaro.org>

binder: Fix ABI incompatibility between older and newer compilers

Parcel::writeString16's first parameter was a char16_t - defined to
uint16_t somewhere else.

With ISO C++11 compatible compilers, however, char16_t is a
compiler-defined-type that is not necessarily unsigned.

This causes the symbol to be different, breaking support for talking
to binary blobs built with pre-ISO C++11-compilers, such as the
Galaxy Nexus RIL.

Change-Id: Ibaa57fbd7d9fc4a95649d3b45d28d29963a9548b
Signed-off-by: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>

frameworks/native: Fix build with ISO C++11 compilers

Fix macro definitions so they can't be confused with C++11 string
literals

Signed-off-by: Amit Pundir <amit.pundir@linaro.org>

surfaceflinger: Work around aliasing violations

Signed-off-by: Amit Pundir <amit.pundir@linaro.org>

frameworks/native: Fix build with ISO C++11 compilers

Fix few more macro definitions so they can't be confused with
C++11 string literals

Change-Id: I8d18acd12341306436cd5037d05eaef1563c1bc8
Signed-off-by: Amit Pundir <amit.pundir@linaro.org>

Fix some char16_t vs. uint16_t bits

Change-Id: Ie2392098fa6b25f3c0713a7774929e36d824d26f
Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>

Test Plan: verified, depends on other changes - will add proper dependencies when ready

Reviewers: randall.rushing, synergy

Reviewed By: synergy

Differential Revision: http://review.codefirex.com/D83
libs: gui: Do not error on C linkage return type

Summary:
We need to support a user specified
return type with C linkage for compatibility shims.
This is not being set in our wrapper, because in most
cases, this is fixable (and should be fixed).

Test Plan: Only merge when we're building with clang

Reviewers: randall.rushing, synergy

Reviewed By: synergy

Differential Revision: http://review.codefirex.com/D84

Conflicts:

	libs/gui/Android.mk
binder: fix c++11 narrowing violations

Summary:
The best fix for these narrowing
violations is to use static casting

Test Plan: verified

Reviewers: randall.rushing, synergy

Reviewed By: synergy

Differential Revision: http://review.codefirex.com/D85
surfaceflinger: conform string literals to C++11

Test Plan: verified

Reviewers: randall.rushing, synergy

Reviewed By: synergy

Differential Revision: http://review.codefirex.com/D110