blob: e893ca91ee4a9c61cfa1e7b2b02fa5e13f2a1721 [file] [log] [blame]
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -08001# Copyright 2005 The Android Open Source Project
2#
3# Android.mk for adb
4#
5
6LOCAL_PATH:= $(call my-dir)
7
8# adb host tool
9# =========================================================
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -080010include $(CLEAR_VARS)
11
12# Default to a virtual (sockets) usb interface
13USB_SRCS :=
14EXTRA_SRCS :=
15
16ifeq ($(HOST_OS),linux)
17 USB_SRCS := usb_linux.c
18 EXTRA_SRCS := get_my_path_linux.c
19 LOCAL_LDLIBS += -lrt -lncurses -lpthread
20endif
21
22ifeq ($(HOST_OS),darwin)
23 USB_SRCS := usb_osx.c
24 EXTRA_SRCS := get_my_path_darwin.c
25 LOCAL_LDLIBS += -lpthread -framework CoreFoundation -framework IOKit -framework Carbon
26endif
27
Alexey Tarasov3b226f92009-10-25 01:37:37 +110028ifeq ($(HOST_OS),freebsd)
29 USB_SRCS := usb_libusb.c
30 EXTRA_SRCS := get_my_path_freebsd.c
31 LOCAL_LDLIBS += -lpthread -lusb
32endif
33
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -080034ifeq ($(HOST_OS),windows)
35 USB_SRCS := usb_windows.c
36 EXTRA_SRCS := get_my_path_windows.c
37 EXTRA_STATIC_LIBS := AdbWinApi
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -080038 ifneq ($(strip $(USE_CYGWIN)),)
Raphaelfab16782010-04-13 15:25:50 -070039 # Pure cygwin case
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -080040 LOCAL_LDLIBS += -lpthread
Raphaelfab16782010-04-13 15:25:50 -070041 LOCAL_C_INCLUDES += /usr/include/w32api/ddk
42 endif
43 ifneq ($(strip $(USE_MINGW)),)
44 # MinGW under Linux case
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -080045 LOCAL_LDLIBS += -lws2_32
46 USE_SYSDEPS_WIN32 := 1
Raphaelfab16782010-04-13 15:25:50 -070047 LOCAL_C_INCLUDES += /usr/i586-mingw32msvc/include/ddk
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -080048 endif
Raphaelfab16782010-04-13 15:25:50 -070049 LOCAL_C_INCLUDES += development/host/windows/usb/api/
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -080050endif
51
52LOCAL_SRC_FILES := \
53 adb.c \
54 console.c \
55 transport.c \
56 transport_local.c \
57 transport_usb.c \
58 commandline.c \
59 adb_client.c \
60 sockets.c \
61 services.c \
62 file_sync_client.c \
63 $(EXTRA_SRCS) \
64 $(USB_SRCS) \
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -080065 utils.c \
Raphael26f3de62009-08-11 11:08:45 -070066 usb_vendors.c
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -080067
68
69ifneq ($(USE_SYSDEPS_WIN32),)
70 LOCAL_SRC_FILES += sysdeps_win32.c
David 'Digit' Turner414ff7d2009-05-18 17:07:46 +020071else
72 LOCAL_SRC_FILES += fdevent.c
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -080073endif
74
75LOCAL_CFLAGS += -O2 -g -DADB_HOST=1 -Wall -Wno-unused-parameter
Jack Palevich7fe202f2010-05-25 14:49:57 +080076LOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -080077LOCAL_MODULE := adb
78
79LOCAL_STATIC_LIBRARIES := libzipfile libunz $(EXTRA_STATIC_LIBS)
80ifeq ($(USE_SYSDEPS_WIN32),)
81 LOCAL_STATIC_LIBRARIES += libcutils
82endif
83
84include $(BUILD_HOST_EXECUTABLE)
85
Ying Wang1c061b92010-12-09 10:33:27 -080086$(call dist-for-goals,dist_files,$(LOCAL_BUILT_MODULE))
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -080087
88ifeq ($(HOST_OS),windows)
Raphael26f3de62009-08-11 11:08:45 -070089$(LOCAL_INSTALLED_MODULE): \
90 $(HOST_OUT_EXECUTABLES)/AdbWinApi.dll \
91 $(HOST_OUT_EXECUTABLES)/AdbWinUsbApi.dll
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -080092endif
93
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -080094
95# adbd device daemon
96# =========================================================
97
98# build adbd in all non-simulator builds
99BUILD_ADBD := false
100ifneq ($(TARGET_SIMULATOR),true)
101 BUILD_ADBD := true
102endif
103
104# build adbd for the Linux simulator build
105# so we can use it to test the adb USB gadget driver on x86
Mike Lockwood63e61522009-08-06 10:58:00 -0400106#ifeq ($(HOST_OS),linux)
107# BUILD_ADBD := true
108#endif
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -0800109
110
111ifeq ($(BUILD_ADBD),true)
112include $(CLEAR_VARS)
113
114LOCAL_SRC_FILES := \
115 adb.c \
Christopher Tated2f54152011-04-21 12:53:28 -0700116 backup_service.c \
David 'Digit' Turner414ff7d2009-05-18 17:07:46 +0200117 fdevent.c \
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -0800118 transport.c \
119 transport_local.c \
120 transport_usb.c \
121 sockets.c \
122 services.c \
123 file_sync_service.c \
124 jdwp_service.c \
125 framebuffer_service.c \
126 remount_service.c \
127 usb_linux_client.c \
128 log_service.c \
Raphael26f3de62009-08-11 11:08:45 -0700129 utils.c
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -0800130
131LOCAL_CFLAGS := -O2 -g -DADB_HOST=0 -Wall -Wno-unused-parameter
132LOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
133
134# TODO: This should probably be board specific, whether or not the kernel has
135# the gadget driver; rather than relying on the architecture type.
136ifeq ($(TARGET_ARCH),arm)
137LOCAL_CFLAGS += -DANDROID_GADGET=1
138endif
139
140LOCAL_MODULE := adbd
141
142LOCAL_FORCE_STATIC_EXECUTABLE := true
143LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT_SBIN)
144LOCAL_UNSTRIPPED_PATH := $(TARGET_ROOT_OUT_SBIN_UNSTRIPPED)
145
146ifeq ($(TARGET_SIMULATOR),true)
147 LOCAL_STATIC_LIBRARIES := libcutils
148 LOCAL_LDLIBS += -lpthread
149 include $(BUILD_HOST_EXECUTABLE)
150else
151 LOCAL_STATIC_LIBRARIES := libcutils libc
152 include $(BUILD_EXECUTABLE)
153endif
154
155endif
John Michelauc3188332010-09-23 17:08:34 -0500156
157
158# adb host tool for device-as-host
159# =========================================================
Benoit Gobycb56b712010-10-06 17:11:59 -0700160ifneq ($(TARGET_SIMULATOR),true)
Benoit Gobydff02372010-10-06 18:30:55 -0700161ifneq ($(SDK_ONLY),true)
John Michelauc3188332010-09-23 17:08:34 -0500162include $(CLEAR_VARS)
163
164LOCAL_LDLIBS := -lrt -lncurses -lpthread
165
166LOCAL_SRC_FILES := \
167 adb.c \
Christopher Tated2f54152011-04-21 12:53:28 -0700168 backup_service.c \
John Michelauc3188332010-09-23 17:08:34 -0500169 console.c \
170 transport.c \
171 transport_local.c \
172 transport_usb.c \
173 commandline.c \
174 adb_client.c \
175 sockets.c \
176 services.c \
177 file_sync_client.c \
178 get_my_path_linux.c \
179 usb_linux.c \
180 utils.c \
181 usb_vendors.c \
182 fdevent.c
183
184LOCAL_CFLAGS := \
185 -O2 \
186 -g \
187 -DADB_HOST=1 \
188 -DADB_HOST_ON_TARGET=1 \
189 -Wall \
190 -Wno-unused-parameter \
191 -D_XOPEN_SOURCE \
192 -D_GNU_SOURCE
193
194LOCAL_MODULE := adb
195
196LOCAL_STATIC_LIBRARIES := libzipfile libunz libcutils
197
198include $(BUILD_EXECUTABLE)
Benoit Gobycb56b712010-10-06 17:11:59 -0700199endif
Benoit Gobydff02372010-10-06 18:30:55 -0700200endif