Android: Fix building secondary arch in mixed 32/64-bit builds
authorRob Herring <robh@kernel.org>
Tue, 2 Feb 2016 20:45:08 +0000 (14:45 -0600)
committerEmil Velikov <emil.l.velikov@gmail.com>
Thu, 18 Feb 2016 17:47:33 +0000 (17:47 +0000)
TARGET_CC is not defined for the secondary arch on combined 32/64-bit
builds. The build system uses 2ND_TARGET_CC instead and it is not meant
to be used in module makefiles. LOCAL_CC was used to provide C only
flags as -std=c99 is not valid for C++ files. Since Android 4.4,
LOCAL_CONLYFLAGS was added to set compiler flags on C files only, so it
can be used now instead of LOCAL_CC.

This will break on pre-4.4 versions of Android, but it unlikely anyone
is using current Mesa with such an old version of Android.

Cc: Chih-Wei Huang <cwhuang@android-x86.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
Android.common.mk

index 948561c6b1b4415aed97e90f5874cff86497f2b3..72fa5d992d88ae8c6898be6b5f145353a227c20f 100644 (file)
 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 # DEALINGS IN THE SOFTWARE.
 
-# use c99 compiler by default
-ifeq ($(LOCAL_CC),)
 ifeq ($(LOCAL_IS_HOST_MODULE),true)
-LOCAL_CC := $(HOST_CC) -std=c99 -D_GNU_SOURCE
-else
-LOCAL_CC := $(TARGET_CC) -std=c99
-endif
+LOCAL_CFLAGS += -D_GNU_SOURCE
 endif
 
 LOCAL_C_INCLUDES += \
@@ -60,6 +55,10 @@ LOCAL_CFLAGS += \
        -fvisibility=hidden \
        -Wno-sign-compare
 
+# mesa requires at least c99 compiler
+LOCAL_CONLYFLAGS += \
+       -std=c99
+
 ifeq ($(strip $(MESA_ENABLE_ASM)),true)
 ifeq ($(TARGET_ARCH),x86)
 LOCAL_CFLAGS += \