blob: 6a67c60dde98dba85f8ae34dbaaf3d96aa1655b6 [file] [log] [blame]
Elliott Hughes858a5c72014-02-28 15:58:12 -08001#
2# Copyright (C) 2006 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
The Android Open Source Project34d6eab2009-03-03 19:30:45 -080016
Elliott Hughes858a5c72014-02-28 15:58:12 -080017LOCAL_PATH := $(call my-dir)
Elliott Hughes7c538322014-02-28 10:32:04 -080018
Elliott Hughes4e779b42014-05-07 09:10:38 -070019#
20# To update:
21#
22
Elliott Hughes60b6d902014-06-06 22:42:41 -070023# git remote add strace git://git.code.sf.net/p/strace/code
Elliott Hughes4e779b42014-05-07 09:10:38 -070024# git fetch strace
25# git merge strace/master
26# mm -j32
27# # (Make any necessary Android.mk changes and test the new strace.)
Elliott Hughes60b6d902014-06-06 22:42:41 -070028# git push aosp HEAD:master # Push directly, avoiding gerrit.
29# git push aosp HEAD:refs/for/master # Push to gerrit.
Elliott Hughes4e779b42014-05-07 09:10:38 -070030#
31# # Now commit any necessary Android.mk changes like normal:
32# repo start post-sync .
33# git commit -a
34#
35
Elliott Hughes9e25f2c2014-10-03 11:01:13 -070036# We don't currently have a good solution for the 'configure' side of things.
37# You can get a list of the HAVE_* variables in use and manually go through it:
38#
39# find . -name "*.[ch]" | xargs grep HAVE_ | sed 's/.*\(HAVE_[A-Z0-9_]*\).*/\1/p' | sort | uniq -d
40
Elliott Hughes7c538322014-02-28 10:32:04 -080041# -------------------------------------------------------------------------
42
The Android Open Source Project34d6eab2009-03-03 19:30:45 -080043include $(CLEAR_VARS)
44
Elliott Hughes15fc6a22014-01-09 10:30:06 -080045strace_version := $(shell grep Version $(LOCAL_PATH)/strace.spec | cut -d " " -f 2)
The Android Open Source Project34d6eab2009-03-03 19:30:45 -080046
Elliott Hughesbb0c2d52014-01-07 17:34:14 -080047LOCAL_SRC_FILES := \
Elliott Hughescaca6ee2015-01-06 12:18:17 -080048 access.c \
49 affinity.c \
Elliott Hughes5dec78d2014-02-26 15:56:23 -080050 aio.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -080051 bjm.c \
52 block.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -080053 cacheflush.c \
54 capability.c \
55 chdir.c \
56 chmod.c \
57 clone.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -080058 count.c \
59 desc.c \
Elliott Hughes1f72dc72014-09-22 10:04:17 -070060 dirent.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -080061 execve.c \
62 exit.c \
63 fadvise.c \
64 fallocate.c \
Elliott Hughes5dec78d2014-02-26 15:56:23 -080065 fanotify.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -080066 fchownat.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -080067 file.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -080068 futex.c \
69 getcpu.c \
70 getcwd.c \
Elliott Hughes0328d0a2015-03-18 11:18:43 -070071 getrandom.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -080072 get_robust_list.c \
73 hostname.c \
Elliott Hughes5dec78d2014-02-26 15:56:23 -080074 inotify.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -080075 io.c \
76 ioctl.c \
Elliott Hughes5dec78d2014-02-26 15:56:23 -080077 ioprio.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -080078 ipc.c \
Elliott Hughes5dec78d2014-02-26 15:56:23 -080079 kexec.c \
80 keyctl.c \
Elliott Hughes51505672014-04-10 11:06:16 -070081 ldt.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -080082 link.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -080083 loop.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -080084 lseek.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -080085 mem.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -080086 mknod.c \
87 mount.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -080088 mtd.c \
89 net.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -080090 open.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -080091 pathtrace.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -080092 personality.c \
93 prctl.c \
94 printmode.c \
Elliott Hughesc3d43082015-04-06 17:00:50 -070095 printsiginfo.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -080096 process.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -080097 process_vm.c \
Elliott Hughes5dec78d2014-02-26 15:56:23 -080098 ptp.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -080099 quota.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -0800100 readahead.c \
101 readlink.c \
Elliott Hughes5dec78d2014-02-26 15:56:23 -0800102 reboot.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -0800103 renameat.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -0800104 resource.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -0800105 sched.c \
Elliott Hughes5dec78d2014-02-26 15:56:23 -0800106 scsi.c \
Elliott Hughes0328d0a2015-03-18 11:18:43 -0700107 seccomp.c \
Elliott Hughesc3d43082015-04-06 17:00:50 -0700108 sigaltstack.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -0800109 signal.c \
Elliott Hughes0328d0a2015-03-18 11:18:43 -0700110 sigreturn.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -0800111 sock.c \
Elliott Hughes1f72dc72014-09-22 10:04:17 -0700112 socketutils.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -0800113 sram_alloc.c \
Elliott Hughes1f72dc72014-09-22 10:04:17 -0700114 statfs.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -0800115 strace.c \
116 stream.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -0800117 swapon.c \
118 sync_file_range.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -0800119 syscall.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -0800120 sysctl.c \
Elliott Hughes5a9d3b92014-10-03 09:50:14 -0700121 sysinfo.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -0800122 syslog.c \
123 sysmips.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -0800124 term.c \
125 time.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -0800126 truncate.c \
127 uid16.c \
128 uid.c \
129 umask.c \
130 umount.c \
131 uname.c \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -0800132 util.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -0800133 utime.c \
134 utimes.c \
135 v4l2.c \
Elliott Hughes5dec78d2014-02-26 15:56:23 -0800136 vsprintf.c \
Elliott Hughescaca6ee2015-01-06 12:18:17 -0800137 wait.c \
138 xattr.c \
The Android Open Source Project34d6eab2009-03-03 19:30:45 -0800139
140LOCAL_SHARED_LIBRARIES :=
141
Elliott Hughes15fc6a22014-01-09 10:30:06 -0800142LOCAL_CFLAGS := \
143 -DGETGROUPS_T=gid_t \
144 -DHAVE_ASM_SIGCONTEXT_H=1 \
145 -DHAVE_DECL_PTRACE_EVENT_FORK=1 \
146 -DHAVE_DECL_PTRACE_EVENT_VFORK=1 \
147 -DHAVE_DECL_PTRACE_EVENT_CLONE=1 \
148 -DHAVE_DECL_PTRACE_EVENT_EXEC=1 \
149 -DHAVE_DECL_PTRACE_EVENT_VFORK_DONE=1 \
150 -DHAVE_DECL_PTRACE_EVENT_EXIT=1 \
151 -DHAVE_DECL_PTRACE_GETEVENTMSG=1 \
152 -DHAVE_DECL_PTRACE_GETSIGINFO=1 \
153 -DHAVE_DECL_PTRACE_O_TRACECLONE=1 \
154 -DHAVE_DECL_PTRACE_O_TRACEEXEC=1 \
155 -DHAVE_DECL_PTRACE_O_TRACEEXIT=1 \
156 -DHAVE_DECL_PTRACE_O_TRACEFORK=1 \
157 -DHAVE_DECL_PTRACE_O_TRACESYSGOOD=1 \
158 -DHAVE_DECL_PTRACE_O_TRACEVFORK=1 \
159 -DHAVE_DECL_PTRACE_SETOPTIONS=1 \
160 -UHAVE_DECL_IO_CMD_PWRITE \
161 -UHAVE_DECL_IO_CMD_PWRITEV \
162 -UHAVE_DECL_LO_FLAGS_AUTOCLEAR \
163 -UHAVE_DECL_LO_FLAGS_PARTSCAN \
164 -DHAVE_DECL_SYS_ERRLIST=1 \
Elliott Hughesa7f55552014-01-09 16:07:59 -0800165 -DHAVE_ELF_H=1 \
Elliott Hughes9e25f2c2014-10-03 11:01:13 -0700166 -DHAVE_FOPEN64=1 \
Elliott Hughes15fc6a22014-01-09 10:30:06 -0800167 -DHAVE_FORK=1 \
168 -DHAVE_IF_INDEXTONAME=1 \
169 -DHAVE_INET_NTOP=1 \
170 -DHAVE_LINUX_CAPABILITY_H=1 \
Elliott Hughescaca6ee2015-01-06 12:18:17 -0800171 -DHAVE_LINUX_FALLOC_H=1 \
Elliott Hughes0328d0a2015-03-18 11:18:43 -0700172 -DHAVE_LINUX_FILTER_H=1 \
Elliott Hughes9e25f2c2014-10-03 11:01:13 -0700173 -DHAVE_LINUX_FUTEX_H=1 \
Elliott Hughes15fc6a22014-01-09 10:30:06 -0800174 -DHAVE_LINUX_ICMP_H=1 \
175 -DHAVE_LINUX_IF_PACKET_H=1 \
176 -DHAVE_LINUX_IN6_H=1 \
177 -DHAVE_LINUX_NETLINK_H=1 \
Elliott Hughes9e25f2c2014-10-03 11:01:13 -0700178 -DHAVE_LINUX_PERF_EVENT_H=1 \
Elliott Hughes15fc6a22014-01-09 10:30:06 -0800179 -DHAVE_LITTLE_ENDIAN_LONG_LONG=1 \
180 -DHAVE_LONG_LONG=1 \
181 -DHAVE_NETINET_TCP_H=1 \
182 -DHAVE_NETINET_UDP_H=1 \
183 -DHAVE_POLL_H=1 \
184 -DHAVE_PRCTL=1 \
Elliott Hughes9e25f2c2014-10-03 11:01:13 -0700185 -DHAVE_PWRITEV=1 \
Elliott Hughes15fc6a22014-01-09 10:30:06 -0800186 -DHAVE_SENDMSG=1 \
187 -DHAVE_SIGACTION=1 \
Elliott Hughes15fc6a22014-01-09 10:30:06 -0800188 -DHAVE_SIG_ATOMIC_T=1 \
Elliott Hughes9e25f2c2014-10-03 11:01:13 -0700189 -DHAVE_SIGINFO_T=1 \
Elliott Hughes0328d0a2015-03-18 11:18:43 -0700190 -DHAVE_SIGINFO_T_SI_OVERRUN=1 \
Elliott Hughes9e25f2c2014-10-03 11:01:13 -0700191 -DHAVE_SIGINFO_T_SI_SYSCALL=1 \
Elliott Hughes0328d0a2015-03-18 11:18:43 -0700192 -DHAVE_SIGINFO_T_SI_TIMERID=1 \
Elliott Hughesad8fa132014-10-03 11:56:40 -0700193 -UHAVE_STAT64 \
Elliott Hughes15fc6a22014-01-09 10:30:06 -0800194 -DHAVE_STATFS64=1 \
195 -DHAVE_STDBOOL_H=1 \
196 -DHAVE_STRERROR=1 \
Elliott Hughes5dec78d2014-02-26 15:56:23 -0800197 -DHAVE_STRUCT_FLOCK64=1 \
Elliott Hughescaca6ee2015-01-06 12:18:17 -0800198 -DHAVE_STRUCT_MMSGHDR=1 \
Elliott Hughes15fc6a22014-01-09 10:30:06 -0800199 -DHAVE_STRUCT_MSGHDR_MSG_CONTROL=1 \
Elliott Hughes4e779b42014-05-07 09:10:38 -0700200 -DHAVE_STRUCT_SIGCONTEXT=1 \
201 -DHAVE_STRUCT_SIGEVENT__SIGEV_UN__PAD=1 \
Elliott Hughes15fc6a22014-01-09 10:30:06 -0800202 -DHAVE_STRUCT_SOCKADDR_IN6_SIN6_SCOPE_ID=1 \
Elliott Hughes0328d0a2015-03-18 11:18:43 -0700203 -DHAVE_STRUCT_STATFS64=1 \
Elliott Hughes9e25f2c2014-10-03 11:01:13 -0700204 -DHAVE_STRUCT_STAT_ST_ACLCNT=0 \
Elliott Hughes15fc6a22014-01-09 10:30:06 -0800205 -DHAVE_STRUCT_STAT_ST_BLKSIZE=1 \
206 -DHAVE_STRUCT_STAT_ST_BLOCKS=1 \
Elliott Hughes9e25f2c2014-10-03 11:01:13 -0700207 -DHAVE_STRUCT_STAT_ST_FLAGS=0 \
208 -DHAVE_STRUCT_STAT_ST_FSTYPE=0 \
209 -DHAVE_STRUCT_STAT_ST_GEN=0 \
210 -DHAVE_STRUCT_STAT_ST_LEVEL=0 \
Elliott Hughes15fc6a22014-01-09 10:30:06 -0800211 -DHAVE_STRUCT_STAT_ST_RDEV=1 \
Elliott Hughes37be67d2014-10-03 09:58:58 -0700212 -DHAVE_STRUCT_SYSINFO_FREEHIGH=1 \
213 -DHAVE_STRUCT_SYSINFO_MEM_UNIT=1 \
214 -DHAVE_STRUCT_SYSINFO_TOTALHIGH=1 \
Elliott Hughes9e25f2c2014-10-03 11:01:13 -0700215 -DHAVE_STRUCT_UTSNAME_DOMAINNAME=1 \
Elliott Hughes15fc6a22014-01-09 10:30:06 -0800216 -DHAVE_SYS_EPOLL_H=1 \
217 -DHAVE_SYS_IOCTL_H=1 \
218 -DHAVE_SYS_POLL_H=1 \
219 -DHAVE_SYS_REG_H=1 \
220 -DHAVE_SYS_VFS_H=1 \
Elliott Hughes0328d0a2015-03-18 11:18:43 -0700221 -DHAVE_SYS_XATTR_H=1 \
Elliott Hughes15fc6a22014-01-09 10:30:06 -0800222 -DMAJOR_IN_SYSMACROS \
223 -DPACKAGE_NAME='"strace"' \
224 -DVERSION='"$(strace_version)"' \
Elliott Hughes556f9ae2014-03-03 16:08:32 -0800225 -DSIZEOF_OFF_T=SIZEOF_LONG \
Elliott Hughes15fc6a22014-01-09 10:30:06 -0800226 -DSIZEOF_LONG_LONG=8 \
227 -DSTDC_HEADERS=1 \
Elliott Hughes5dec78d2014-02-26 15:56:23 -0800228 -DSTRACE_KNOWS_ONLY_EABI=1 \
Elliott Hughes15fc6a22014-01-09 10:30:06 -0800229 -D_LFS64_LARGEFILE=1 \
230
231LOCAL_CFLAGS += -D_GNU_SOURCE=1 -D_POSIX_SOURCE=1
Elliott Hughesbb0c2d52014-01-07 17:34:14 -0800232
Elliott Hughes4ce18c82014-04-09 19:23:30 -0700233LOCAL_CFLAGS_32 += -DSIZEOF_LONG=4 -DSIZEOF_RLIM_T=4 -DHAVE_STAT64=1
Colin Crossd6b039c2014-01-29 18:09:48 -0800234LOCAL_CFLAGS_64 += -DSIZEOF_LONG=8 -DSIZEOF_RLIM_T=8
Jeff Brownf76f96e2012-03-02 16:23:23 -0800235
Colin Crossd6b039c2014-01-29 18:09:48 -0800236LOCAL_CFLAGS_arm += -DARM=1
237LOCAL_CFLAGS_arm += -DHAVE_STRUCT___OLD_KERNEL_STAT=1
238
239LOCAL_CFLAGS_arm64 += -DAARCH64=1
240
Elliott Hughes8bcd52d2015-03-18 17:07:34 -0700241LOCAL_CFLAGS_mips += -DMIPS=1 -DLINUX_MIPSO32=1
Colin Crossd6b039c2014-01-29 18:09:48 -0800242LOCAL_CFLAGS_mips += -DHAVE_ASM_SYSMIPS_H=1
243
Elliott Hughes2bde1f72015-03-18 18:00:24 -0700244LOCAL_CFLAGS_mips64 += -DMIPS=1 -DLINUX_MIPSN64=1
Raghu Gandham55776012014-08-29 12:20:30 -0700245LOCAL_CFLAGS_mips64 += -DHAVE_ASM_SYSMIPS_H=1
246
Colin Crossd6b039c2014-01-29 18:09:48 -0800247LOCAL_CFLAGS_x86 += -DI386=1
248LOCAL_CFLAGS_x86 += -DHAVE_STRUCT___OLD_KERNEL_STAT=1
249
Elliott Hughes4ce18c82014-04-09 19:23:30 -0700250LOCAL_CFLAGS_x86_64 += -DX86_64=1
Lorenzo Colittia0b125c2009-08-20 15:06:43 -0700251
Elliott Hughesbb0c2d52014-01-07 17:34:14 -0800252LOCAL_CFLAGS += \
Elliott Hughes10bd42d2014-01-08 16:34:09 -0800253 -Wall \
Elliott Hughes1f72dc72014-09-22 10:04:17 -0700254 -Wwrite-strings \
255 -Wsign-compare \
Elliott Hughesbb0c2d52014-01-07 17:34:14 -0800256 -Wno-missing-field-initializers \
257 -Wno-unused-parameter \
258 -Wno-sign-compare \
Jeff Brownf76f96e2012-03-02 16:23:23 -0800259
Elliott Hughes0328d0a2015-03-18 11:18:43 -0700260LOCAL_C_INCLUDES_arm := $(LOCAL_PATH)/linux/arm $(LOCAL_PATH)/linux
261LOCAL_C_INCLUDES_arm64 := $(LOCAL_PATH)/linux/aarch64 $(LOCAL_PATH)/linux
262LOCAL_C_INCLUDES_mips := $(LOCAL_PATH)/linux/mips $(LOCAL_PATH)/linux
263LOCAL_C_INCLUDES_mips64 := $(LOCAL_PATH)/linux/mips $(LOCAL_PATH)/linux
264LOCAL_C_INCLUDES_x86 := $(LOCAL_PATH)/linux/i386 $(LOCAL_PATH)/linux
265LOCAL_C_INCLUDES_x86_64 := $(LOCAL_PATH)/linux/x86_64 $(LOCAL_PATH)/linux
Colin Crossd6b039c2014-01-29 18:09:48 -0800266
The Android Open Source Project34d6eab2009-03-03 19:30:45 -0800267LOCAL_MODULE := strace
268
269LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES)
270
271LOCAL_MODULE_TAGS := debug
272
Elliott Hughesbb0c2d52014-01-07 17:34:14 -0800273LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
274
The Android Open Source Project34d6eab2009-03-03 19:30:45 -0800275include $(BUILD_EXECUTABLE)
Elliott Hughes7c538322014-02-28 10:32:04 -0800276
Elliott Hughes858a5c72014-02-28 15:58:12 -0800277
Elliott Hughes7c538322014-02-28 10:32:04 -0800278# -------------------------------------------------------------------------
279
Elliott Hughes0328d0a2015-03-18 11:18:43 -0700280# TODO: this is currently broken; the checked in ioctlent*.h files are from the 4.10 release.
281
Elliott Hughes7c538322014-02-28 10:32:04 -0800282.PHONY: update-ioctls
283update-ioctls:
284 # Build the generated .h files needed by ioctlsort from the current bionic uapi headers.
285 cd external/strace; ./linux/ioctlent.sh ../../bionic/libc/kernel/uapi/
286 # Build the ioctlsort tool.
Elliott Hughes992aba72015-01-22 22:44:54 -0800287 ONE_SHOT_MAKEFILE=external/strace/Android.mk make -f build/core/main.mk $(HOST_OUT_EXECUTABLES)/ioctlsort
Elliott Hughes7c538322014-02-28 10:32:04 -0800288 # Remove the generated .h files now we've built ioctlsort.
289 rm external/strace/ioctls.h external/strace/ioctldefs.h
Elliott Hughes992aba72015-01-22 22:44:54 -0800290 # Run the ioctlsort tool to generate the one file we do want to check in.
291 ioctlsort | tr -d '\r' | sed 's/^\([[:space:]]*{\)"[^"]\+",[[:space:]]*/\1/' | sort -u -k2,2 -k1,1 > external/strace/linux/ioctlent.h
Elliott Hughes7c538322014-02-28 10:32:04 -0800292 # Rebuild strace with the new "ioctlent.h".
Elliott Hughes992aba72015-01-22 22:44:54 -0800293 ONE_SHOT_MAKEFILE=external/strace/Android.mk make -f build/core/main.mk $(TARGET_OUT_OPTIONAL_EXECUTABLES)/strace
Elliott Hughes7c538322014-02-28 10:32:04 -0800294
295# We don't build ioctlsort unless really necessary, because we don't check
296# in the temporary files needed to build it. This tool is only necessary
297# when updating strace's list of ioctls.
Elliott Hughes992aba72015-01-22 22:44:54 -0800298ifneq (,$(filter $(HOST_OUT_EXECUTABLES)/ioctlsort,$(MAKECMDGOALS)))
Elliott Hughes7c538322014-02-28 10:32:04 -0800299include $(CLEAR_VARS)
Elliott Hughescaca6ee2015-01-06 12:18:17 -0800300LOCAL_SRC_FILES := ioctlsort.c
Elliott Hughes992aba72015-01-22 22:44:54 -0800301# As long as ashmem isn't in glibc, we need the bionic header.
302# Unfortunately, it uses __u32 without pulling in a definition, so we need asm/types.h too.
303LOCAL_CFLAGS += -include asm/types.h -include bionic/libc/kernel/uapi/linux/ashmem.h
Elliott Hughes7c538322014-02-28 10:32:04 -0800304LOCAL_CFLAGS += -Wno-unused-parameter
305LOCAL_MODULE := ioctlsort
306LOCAL_MODULE_TAGS := optional
307LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
Elliott Hughes992aba72015-01-22 22:44:54 -0800308include $(BUILD_HOST_EXECUTABLE)
Elliott Hughes7c538322014-02-28 10:32:04 -0800309endif
310
311# -------------------------------------------------------------------------