diff options
author | Vasily Tarasov <vtarasov@google.com> | 2018-03-01 17:32:50 -0800 |
---|---|---|
committer | Vasily Tarasov <vtarasov@google.com> | 2018-03-02 21:31:44 +0000 |
commit | 92ce3ba451e595f583c86132d98a688046e2851d (patch) | |
tree | 3ac9eb94a77d88b8b669e2b2f1074ea20a6d9ab4 | |
parent | 2bfdd46c36e3a3603d1a1dbc01f820da07091492 (diff) | |
download | valgrind-92ce3ba451e595f583c86132d98a688046e2851d.tar.gz |
Build vgdb and lackey tools
vgdb allows debugging apps from perspective of valgrind's emulated CPU.
lackey tool allows to observe execution traces and memory access traces.
Test: lackey tool worked out of the box.
vgdb functionality that was tested:
- attaching to a valgrind process launched with --vgdb=yes
- frame disassembly with sources
- settings breakpoints / continuing / breaking into those breakpoints
Change-Id: I4d9cb2e9caaad18ad0e6dcbdf32de53c9278f5eb
-rw-r--r-- | Android.mk | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/Android.mk b/Android.mk index 19f38ef85..a1c632473 100644 --- a/Android.mk +++ b/Android.mk @@ -568,6 +568,27 @@ vg_local_whole_static_libraries := libreplacemalloc_toolpreload include $(LOCAL_PATH)/Android.build_all.mk +# Build lackey-$(TARGET_ARCH)-linux +vg_local_module := lackey +vg_local_module_class := SHARED_LIBRARIES +vg_local_target := EXECUTABLE +vg_local_no_crt := true +vg_local_without_system_shared_libraries := true +vg_local_src_files := lackey/lk_main.c +vg_local_ldflags := $(tool_ldflags) +vg_local_cflags := $(common_cflags) +vg_local_static_libraries := libcoregrind libvex +include $(LOCAL_PATH)/Android.build_all.mk + +# Build vgpreload_lackey-$(TARGET_ARCH)-linux.so +vg_local_module := vgpreload_lackey +vg_local_module_class := SHARED_LIBRARIES +vg_local_target := SHARED_LIBRARY +vg_local_src_files := +vg_local_ldflags := $(preload_ldflags) +vg_local_cflags := $(common_cflags) +include $(LOCAL_PATH)/Android.build_all.mk + # Build none-$(TARGET_ARCH)-linux vg_local_module := none vg_local_module_class := SHARED_LIBRARIES @@ -600,6 +621,19 @@ LOCAL_CFLAGS_$(TARGET_ARCH) = $(target_arch_cflags) include $(BUILD_EXECUTABLE) +# Build standalone vgdb +include $(CLEAR_VARS) +LOCAL_MODULE := vgdb +LOCAL_ARM_MODE := arm +LOCAL_SRC_FILES := \ + coregrind/vgdb.c \ + coregrind/vgdb-invoker-none.c + +LOCAL_C_INCLUDES := $(common_includes) +LOCAL_CFLAGS := $(common_cflags) +LOCAL_CFLAGS_$(TARGET_ARCH) = $(target_arch_cflags) +include $(BUILD_EXECUTABLE) + # Build valgrind for linux host ifeq ($(HOST_OS), linux) include $(CLEAR_VARS) |