am 4a65f812: am 6e587f53: Merge "Profiling use aprof, enable by LOCAL_ENABLE_APROF or LOCAL_ENABLE_APROF_JNI"

* commit '4a65f812373e1ecfa6e7058d635e998429a4cf17':
  Profiling use aprof, enable by LOCAL_ENABLE_APROF or LOCAL_ENABLE_APROF_JNI
This commit is contained in:
Jean-Baptiste Queru 2012-06-22 14:32:49 -07:00 committed by Android Git Automerger
commit 471d6d8b11
5 changed files with 43 additions and 0 deletions

View File

@ -153,6 +153,15 @@ ifeq ($(strip $(LOCAL_NO_FDO_SUPPORT)),)
LOCAL_LDFLAGS += $(TARGET_FDO_CFLAGS)
endif
####################################################
## Add profiling flags if aprof is turned on
####################################################
ifeq ($(strip $(LOCAL_ENABLE_APROF)),true)
# -ffunction-sections and -fomit-frame-pointer are conflict with -pg
LOCAL_CFLAGS += -fno-omit-frame-pointer -fno-function-sections -pg
LOCAL_CPPFLAGS += -fno-omit-frame-pointer -fno-function-sections -pg
endif
###########################################################
## Explicitly declare assembly-only __ASSEMBLY__ macro for
## assembly source

View File

@ -79,6 +79,8 @@ LOCAL_COPY_HEADERS_TO:=
LOCAL_COPY_HEADERS:=
LOCAL_FORCE_STATIC_EXECUTABLE:=
LOCAL_ADDITIONAL_DEPENDENCIES:=
LOCAL_ENABLE_APROF:=
LOCAL_ENABLE_APROF_JNI:=
LOCAL_COMPRESS_MODULE_SYMBOLS:=
LOCAL_STRIP_MODULE:=
LOCAL_POST_PROCESS_COMMAND:=true

View File

@ -12,6 +12,18 @@ ifeq ($(strip $(LOCAL_MODULE_SUFFIX)),)
LOCAL_MODULE_SUFFIX := $(TARGET_EXECUTABLE_SUFFIX)
endif
####################################################
## Add profiling libraries if aprof is turned
####################################################
ifeq ($(strip $(LOCAL_ENABLE_APROF)),true)
ifeq ($(LOCAL_FORCE_STATIC_EXECUTABLE), true)
LOCAL_STATIC_LIBRARIES += libaprof libaprof_static libc libcutils
else
LOCAL_SHARED_LIBRARIES += libaprof libaprof_runtime libc
endif
LOCAL_WHOLE_STATIC_LIBRARIES += libaprof_aux
endif
include $(BUILD_SYSTEM)/dynamic_binary.mk
ifeq ($(LOCAL_FORCE_STATIC_EXECUTABLE),true)

View File

@ -20,12 +20,25 @@ ifneq ($(strip $(LOCAL_MODULE_STEM)$(LOCAL_BUILT_MODULE_STEM)),)
$(error $(LOCAL_PATH): Can not set module stem for a library)
endif
####################################################
## Add profiling libraries if aprof is turned
####################################################
ifeq ($(strip $(LOCAL_ENABLE_APROF_JNI)),true)
LOCAL_ENABLE_APROF := true
LOCAL_WHOLE_STATIC_LIBRARIES += libaprof_jni
endif
ifeq ($(strip $(LOCAL_ENABLE_APROF)),true)
LOCAL_SHARED_LIBRARIES += libaprof libaprof_runtime
endif
# Put the built targets of all shared libraries in a common directory
# to simplify the link line.
OVERRIDE_BUILT_MODULE_PATH := $(TARGET_OUT_INTERMEDIATE_LIBRARIES)
include $(BUILD_SYSTEM)/dynamic_binary.mk
# Define PRIVATE_ variables from global vars
my_target_global_ld_dirs := $(TARGET_GLOBAL_LD_DIRS)
my_target_global_ldflags := $(TARGET_GLOBAL_LDFLAGS)

View File

@ -18,6 +18,13 @@ ifneq ($(strip $(LOCAL_MODULE_STEM)$(LOCAL_BUILT_MODULE_STEM)),)
$(error $(LOCAL_PATH): Can not set module stem for a library)
endif
####################################################
## Add profiling libraries if aprof is turned
####################################################
ifeq ($(strip $(LOCAL_ENABLE_APROF)),true)
LOCAL_WHOLE_STATIC_LIBRARIES += libaprof
endif
include $(BUILD_SYSTEM)/binary.mk
ifeq ($(LOCAL_RAW_STATIC_LIBRARY),true)