summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy Doan <andy.doan@linaro.org>2012-01-09 22:17:00 +0000
committerBernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>2012-03-29 09:41:14 +0200
commit44cd45974b5feab47ee093b3cca82cd71511a7b1 (patch)
tree7cf9760436c57f1a2314419f71658723ea119610
parent4f32515e0c6b690986557d8421513d7347947974 (diff)
downloadbase-44cd45974b5feab47ee093b3cca82cd71511a7b1.tar.gz
ensure compiler supports -flto
Change Iec2950b1d8fef30ef5530551b094e97c7ee91fa7 enabled -flto in all builds. However, not all compilers support this option. This changes ensures the flag is only used when its supported Change-Id: I29c1ae41eac6c5c03c944b1200b22171bcbc0719 Signed-off-by: Andy Doan <andy.doan@linaro.org>
-rw-r--r--opengl/libagl/Android.mk5
-rw-r--r--opengl/libs/Android.mk18
2 files changed, 13 insertions, 10 deletions
diff --git a/opengl/libagl/Android.mk b/opengl/libagl/Android.mk
index c51b1bd7293c..8f4e220a5380 100644
--- a/opengl/libagl/Android.mk
+++ b/opengl/libagl/Android.mk
@@ -22,10 +22,11 @@ LOCAL_SRC_FILES:= \
primitives.cpp.arm \
vertex.cpp.arm
+FLTO_FLAG=$(call cc-option,"-flto", )
LOCAL_CFLAGS += -DLOG_TAG=\"libagl\"
LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES
LOCAL_CFLAGS += -fvisibility=hidden
-LOCAL_CFLAGS += -ffast-math -flto
+LOCAL_CFLAGS += -ffast-math $(FLTO_FLAG)
ifneq ($(findstring tune=cortex-a8,$(TARGET_GLOBAL_CFLAGS)),)
# Workaround for cortex-a8 specific linaro-gcc bug 879725
# FIXME remove once the bug is fixed
@@ -33,7 +34,7 @@ ifneq ($(findstring tune=cortex-a8,$(TARGET_GLOBAL_CFLAGS)),)
endif
LOCAL_SHARED_LIBRARIES := libcutils libhardware libutils libpixelflinger libETC1
-LOCAL_LDLIBS := -flto -lpthread -ldl
+LOCAL_LDLIBS := $(FLTO_FLAG) -lpthread -ldl
ifeq ($(TARGET_ARCH),arm)
LOCAL_SRC_FILES += fixed_asm.S iterators.S
diff --git a/opengl/libs/Android.mk b/opengl/libs/Android.mk
index 3a91d4f907c1..f1302bdd57e2 100644
--- a/opengl/libs/Android.mk
+++ b/opengl/libs/Android.mk
@@ -1,5 +1,7 @@
LOCAL_PATH:= $(call my-dir)
+FLTO_FLAG=$(call cc-option,"-flto", )
+
###############################################################################
# Build META EGL library
#
@@ -18,9 +20,9 @@ LOCAL_SRC_FILES:= \
EGL/Loader.cpp \
#
-LOCAL_CFLAGS += -flto -ffast-math
+LOCAL_CFLAGS += $(FLTO_FLAG) -ffast-math
LOCAL_SHARED_LIBRARIES += libcutils libutils libGLESv2_dbg
-LOCAL_LDLIBS := -flto -lpthread -ldl
+LOCAL_LDLIBS := $(FLTO_FLAG) -lpthread -ldl
LOCAL_MODULE:= libEGL
LOCAL_LDFLAGS += -Wl,--exclude-libs=ALL
LOCAL_SHARED_LIBRARIES += libdl
@@ -87,8 +89,8 @@ LOCAL_SRC_FILES:= \
#
LOCAL_SHARED_LIBRARIES += libcutils libEGL
-LOCAL_CFLAGS += -flto -ffast-math
-LOCAL_LDLIBS := -flto -lpthread -ldl
+LOCAL_CFLAGS += $(FLTO_FLAG) -ffast-math
+LOCAL_LDLIBS := $(FLTO_FLAG) -lpthread -ldl
LOCAL_MODULE:= libGLESv1_CM
LOCAL_SHARED_LIBRARIES += libdl
@@ -119,9 +121,9 @@ LOCAL_SRC_FILES:= \
GLES2/gl2.cpp.arm \
#
-LOCAL_CFLAGS += -flto -ffast-math
+LOCAL_CFLAGS += $(FLTO_FLAG) -ffast-math
LOCAL_SHARED_LIBRARIES += libcutils libEGL
-LOCAL_LDLIBS := -flto -lpthread -ldl
+LOCAL_LDLIBS := $(FLTO_FLAG) -lpthread -ldl
LOCAL_MODULE:= libGLESv2
LOCAL_SHARED_LIBRARIES += libdl
@@ -166,8 +168,8 @@ LOCAL_SRC_FILES:= \
ETC1/etc1.cpp \
#
-LOCAL_CFLAGS += -flto -ffast-math
-LOCAL_LDLIBS := -flto -lpthread -ldl
+LOCAL_CFLAGS += $(FLTO_FLAG) -ffast-math
+LOCAL_LDLIBS := $(FLTO_FLAG) -lpthread -ldl
LOCAL_MODULE:= libETC1
include $(BUILD_SHARED_LIBRARY)