Android.mk revision 10bd42d0e743697d1b541eac35d7889f17d70ca6
15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Copyright 2006 The Android Open Source Project
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)LOCAL_PATH := $(my-dir)
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)include $(CLEAR_VARS)
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)strace_VERSION = 4.7
7868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)
8868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)LOCAL_SRC_FILES := \
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    bjm.c \
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    block.c \
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    count.c \
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    desc.c \
135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    file.c \
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    io.c \
155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ioctl.c \
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ipc.c \
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    loop.c \
18f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    mem.c \
19f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    mtd.c \
20f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    net.c \
21f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    pathtrace.c \
22f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    proc.c \
23f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    process.c \
24f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    quota.c \
25f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    resource.c \
26f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    signal.c \
27f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    sock.c \
28f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    strace.c \
29f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    stream.c \
3090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)    syscall.c \
315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    system.c \
325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    term.c \
3390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)    time.c \
34868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)    util.c \
355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
36ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben MurdochLOCAL_SHARED_LIBRARIES :=
375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)LOCAL_CFLAGS := -DLINUX=1 \
39f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)	-DGETGROUPS_T=gid_t \
40f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)	-DHAVE_ASM_SIGCONTEXT_H=1 \
41f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)	-DHAVE_DECL_PTRACE_O_TRACECLONE=1 \
42ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch	-DHAVE_DECL_PTRACE_O_TRACEEXEC=1 \
435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_DECL_PTRACE_O_TRACEEXIT=1 \
445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_DECL_PTRACE_O_TRACEFORK=1 \
45ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch	-DHAVE_DECL_PTRACE_O_TRACESYSGOOD=1 \
465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_DECL_PTRACE_O_TRACEVFORK=1 \
475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_DECL_SYS_ERRLIST=1 \
48ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch	-DHAVE_DECL_SYS_SIGLIST=1 \
495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_DECL_____PTRACE_EVENT_CLONE=1 \
505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_DECL_____PTRACE_EVENT_FORK=1 \
51ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch	-DHAVE_DECL_____PTRACE_EVENT_VFORK=1 \
52ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch	-DHAVE_DECL_____PTRACE_GETEVENTMSG=1 \
5390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)	-DHAVE_DECL_____PTRACE_GETSIGINFO=1 \
54ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch	-DHAVE_DECL_____PTRACE_O_TRACECLONE=1 \
554e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)	-DHAVE_DECL_____PTRACE_O_TRACEFORK=1 \
5690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)	-DHAVE_DECL_____PTRACE_O_TRACEVFORK=1 \
575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_DECL_____PTRACE_SETOPTIONS=1 \
585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_DECL_____PTRACE_EVENT_CLONE=1 \
595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_DECL_____PTRACE_EVENT_CLONE=1 \
605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_DIRENT_H=1 \
615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_FORK=1 \
625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_GETDENTS=1 \
635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_IF_INDEXTONAME=1 \
645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_INET_NTOP=1 \
655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_INTTYPES_H=1 \
665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_LINUX_CAPABILITY_H=1 \
67ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch	-DHAVE_LINUX_ICMP_H=1 \
685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_LINUX_IF_PACKET_H=1 \
6990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)	-DHAVE_LINUX_IN6_H=1 \
70ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch	-DHAVE_LINUX_NETLINK_H=1 \
715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_LINUX_UTSNAME_H=1 \
725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_LITTLE_ENDIAN_LONG_LONG=1 \
735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_LONG_LONG=1 \
7490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)	-DHAVE_LONG_LONG_RLIM_T=1 \
755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_MEMORY_H=1 \
765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_NETINET_TCP_H=1 \
77f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)	-DHAVE_NETINET_UDP_H=1 \
78f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)	-DHAVE_POLL_H=1 \
79f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)	-DHAVE_PRCTL=1 \
80f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)	-DHAVE_PREAD=1 \
81f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)	-DHAVE_SENDMSG=1 \
82f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)	-DHAVE_SIGACTION=1 \
83f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)	-DHAVE_SIGINFO_T=1 \
84ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch	-DHAVE_SIG_ATOMIC_T=1 \
85a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)	-DHAVE_STATFS64=1 \
865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_STDBOOL_H=1 \
875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_STDINT_H=1 \
8890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)	-DHAVE_STDLIB_H=1 \
895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_STRERROR=1 \
905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_STRINGS_H=1 \
91ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch	-DHAVE_STRING_H=1 \
92ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch	-DHAVE_STRSIGNAL=1 \
935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_STRUCT_MSGHDR_MSG_CONTROL=1 \
945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_STRUCT_SIGCONTEXT \
955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_STRUCT_SOCKADDR_IN6_SIN6_SCOPE_ID=1 \
9690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)	-DHAVE_STRUCT_STAT_ST_BLKSIZE=1 \
975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_STRUCT_STAT_ST_BLOCKS=1 \
985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_STRUCT_STAT_ST_RDEV=1 \
99ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch	-DHAVE_STRUCT_USER_DESC=1 \
100ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch	-DHAVE_SYS_EPOLL_H=1 \
10190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)	-DHAVE_SYS_IOCTL_H=1 \
1025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_SYS_POLL_H=1 \
103ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch	-DHAVE_SYS_PTRACE_H=1 \
1044e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)	-DHAVE_SYS_REG_H=1 \
10590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)	-DHAVE_SYS_SIGLIST=1 \
10690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)	-DHAVE_SYS_STAT_H=1 \
1075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_SYS_TYPES_H=1 \
1085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_SYS_VFS_H=1 \
1095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DHAVE_UNISTD_H=1 \
11090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)	-DLINUX=1 \
1115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DMAJOR_IN_SYSMACROS \
112868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)	-DPACKAGE=strace \
1135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DPACKAGE_BUGREPORT= \
1145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DPACKAGE_NAME='"strace"' \
1155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DPACKAGE_STRING='"strace $(strace_VERSION)"' \
1165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DPACKAGE_TARNAME='"strace"' \
1175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DPACKAGE_VERSION='"$(strace_VERSION)"' \
1185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DRETSIGTYPE=void \
1195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DSIZEOF_RLIM_T=8 \
1205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DSTDC_HEADER=1 \
1215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DVERSION='"$(strace_VERSION)"' \
1225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-D_GNU_SOURCE=1 \
123f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)	-D_POSIX_SOURCE=1 \
124f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)	-Dfopen64=fopen \
1255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-Dd_fileno=d_ino \
1265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-D_LFS64_LARGEFILE=1 \
1275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-D__KERNEL__=1 \
1285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# bionic doesn't have fputs_unlocked.
1305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)LOCAL_CFLAGS += -Dfputs_unlocked=fputs
1315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# uapi's asm/sigcontext.h doesn't have sigcontext_struct.
1325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)LOCAL_CFLAGS += -Dsigcontext_struct=sigcontext
13390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
134868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#These are defined in AndroidConfig.h so we omit them above.
1355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#	-DHAVE_SYS_UIO_H=1 \
136ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch#	-DHAVE_TERMIO_H=1 \
1375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
139ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdocharch := $(TARGET_ARCH)
1405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ifeq ($(TARGET_ARCH),arm)
1415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    LOCAL_CFLAGS += -DARM=1
142ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch    LOCAL_CFLAGS += -DHAVE_STAT64=1
1435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    LOCAL_CFLAGS += -DHAVE_STRUCT___OLD_KERNEL_STAT=1
14423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)else ifeq ($(TARGET_ARCH),mips)
14523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)    LOCAL_CFLAGS += -DMIPS=1
14623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)    LOCAL_CFLAGS += -DHAVE_STAT64=1
1475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    LOCAL_CFLAGS += -DHAVE_ASM_SYSMIPS_H=1
1485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # mips does not use STRUCT__OLD_KERNEL_STAT type
1495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)else ifeq ($(TARGET_ARCH),x86)
1505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    LOCAL_CFLAGS += -DI386=1
1515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    LOCAL_CFLAGS += -DHAVE_STAT64=1
1525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    LOCAL_CFLAGS += -DHAVE_STRUCT___OLD_KERNEL_STAT=1
1535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    arch := i386
1545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)else ifeq ($(TARGET_ARCH),x86_64)
1555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    LOCAL_CFLAGS += -DX86_64=1
1565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)endif
1575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
158ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben MurdochLOCAL_CFLAGS += \
159a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)    -Wall \
1605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    -Wno-missing-field-initializers \
1615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    -Wno-unused-parameter \
16290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)    -Wno-sign-compare \
1635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)LOCAL_C_INCLUDES := \
165ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch	$(KERNEL_HEADERS) \
166a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)	$(LOCAL_PATH)/linux/$(arch) \
1675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(LOCAL_PATH)/linux
1685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
16990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)LOCAL_MODULE := strace
1705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES)
172ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
17390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)LOCAL_MODULE_TAGS := debug
1745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
17523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
17623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)
17723730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)include $(BUILD_EXECUTABLE)
1785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)