1dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# Copyright 2005 The Android Open Source Project
2dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project#
3dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# Android.mk for adb
4dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project#
5dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
6dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_PATH:= $(call my-dir)
7dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
8dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# adb host tool
9dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# =========================================================
10dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectinclude $(CLEAR_VARS)
11dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
12dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# Default to a virtual (sockets) usb interface
13dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectUSB_SRCS :=
14dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectEXTRA_SRCS :=
15dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
16dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(HOST_OS),linux)
17dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  USB_SRCS := usb_linux.c
18dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  EXTRA_SRCS := get_my_path_linux.c
199c607552077321d9b6b2e29dab8a6e276bffb457Chih-Wei Huang  LOCAL_LDLIBS += -lrt -ldl -lpthread
20571c1367682c83cb23481cc9c1028c8588a1fed0JP Abgrall  LOCAL_CFLAGS += -DWORKAROUND_BUG6558362
21dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
22dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
23dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(HOST_OS),darwin)
24dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  USB_SRCS := usb_osx.c
25dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  EXTRA_SRCS := get_my_path_darwin.c
26345ca131bbc17b1ae1073db04f37f6610ccb4c71Benoit Goby  LOCAL_LDLIBS += -lpthread -framework CoreFoundation -framework IOKit -framework Carbon
27dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
28dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
293b226f9e3b893a3e088d7b854b0e7c523e79063fAlexey Tarasovifeq ($(HOST_OS),freebsd)
303b226f9e3b893a3e088d7b854b0e7c523e79063fAlexey Tarasov  USB_SRCS := usb_libusb.c
313b226f9e3b893a3e088d7b854b0e7c523e79063fAlexey Tarasov  EXTRA_SRCS := get_my_path_freebsd.c
323b226f9e3b893a3e088d7b854b0e7c523e79063fAlexey Tarasov  LOCAL_LDLIBS += -lpthread -lusb
333b226f9e3b893a3e088d7b854b0e7c523e79063fAlexey Tarasovendif
343b226f9e3b893a3e088d7b854b0e7c523e79063fAlexey Tarasov
35dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(HOST_OS),windows)
36dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  USB_SRCS := usb_windows.c
37c788278abce1830d4b5e9e78aaefd86d0eecafdeMark Salyzyn  EXTRA_SRCS := get_my_path_windows.c
38345ca131bbc17b1ae1073db04f37f6610ccb4c71Benoit Goby  EXTRA_STATIC_LIBS := AdbWinApi
39dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  ifneq ($(strip $(USE_CYGWIN)),)
40fab167850d751a817c39e074334fe7a0987ce647Raphael    # Pure cygwin case
41d5fcafaf41f8ec90986c813f75ec78402096af2dBenoit Goby    LOCAL_LDLIBS += -lpthread -lgdi32
42fab167850d751a817c39e074334fe7a0987ce647Raphael  endif
43fab167850d751a817c39e074334fe7a0987ce647Raphael  ifneq ($(strip $(USE_MINGW)),)
44fab167850d751a817c39e074334fe7a0987ce647Raphael    # MinGW under Linux case
45d5fcafaf41f8ec90986c813f75ec78402096af2dBenoit Goby    LOCAL_LDLIBS += -lws2_32 -lgdi32
46dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project    USE_SYSDEPS_WIN32 := 1
47dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  endif
48fab167850d751a817c39e074334fe7a0987ce647Raphael  LOCAL_C_INCLUDES += development/host/windows/usb/api/
49dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
50dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
51dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_SRC_FILES := \
52dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	adb.c \
53dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	console.c \
54dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport.c \
55dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport_local.c \
56dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport_usb.c \
57dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	commandline.c \
58dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	adb_client.c \
59d5fcafaf41f8ec90986c813f75ec78402096af2dBenoit Goby	adb_auth_host.c \
60dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	sockets.c \
61dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	services.c \
62dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	file_sync_client.c \
63dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	$(EXTRA_SRCS) \
64dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	$(USB_SRCS) \
6526f3de6738c3e07e581e2f9c112a8b3086f88abbRaphael	usb_vendors.c
66dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
67d5fcafaf41f8ec90986c813f75ec78402096af2dBenoit GobyLOCAL_C_INCLUDES += external/openssl/include
68dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
69dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifneq ($(USE_SYSDEPS_WIN32),)
70dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  LOCAL_SRC_FILES += sysdeps_win32.c
71414ff7d98ac8d7610a26206335954ad15f43f3acDavid 'Digit' Turnerelse
72414ff7d98ac8d7610a26206335954ad15f43f3acDavid 'Digit' Turner  LOCAL_SRC_FILES += fdevent.c
73dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
74dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
753ea87c33a1c6e940322f5436cf0dd70a0bdadd75Stephen HinesLOCAL_CFLAGS += -O2 -g -DADB_HOST=1 -Wall -Wno-unused-parameter -Werror
767fe202f160ca1926bc0277e3c276ad7b3f9b9aebJack PalevichLOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
77dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_MODULE := adb
78d5d6d97defa8999784a15003ed41449954bc7178Kenny RootLOCAL_MODULE_TAGS := debug
79dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
80345ca131bbc17b1ae1073db04f37f6610ccb4c71Benoit GobyLOCAL_STATIC_LIBRARIES := libzipfile libunz libcrypto_static $(EXTRA_STATIC_LIBS)
81dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(USE_SYSDEPS_WIN32),)
82dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	LOCAL_STATIC_LIBRARIES += libcutils
83dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
84dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
85dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectinclude $(BUILD_HOST_EXECUTABLE)
86dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
8796535ba62044c712f8b017fe569f598a7a2934c2Ying Wang$(call dist-for-goals,dist_files sdk,$(LOCAL_BUILT_MODULE))
88dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
89dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(HOST_OS),windows)
9026f3de6738c3e07e581e2f9c112a8b3086f88abbRaphael$(LOCAL_INSTALLED_MODULE): \
9126f3de6738c3e07e581e2f9c112a8b3086f88abbRaphael    $(HOST_OUT_EXECUTABLES)/AdbWinApi.dll \
9226f3de6738c3e07e581e2f9c112a8b3086f88abbRaphael    $(HOST_OUT_EXECUTABLES)/AdbWinUsbApi.dll
93dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
94dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
95dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
96dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# adbd device daemon
97dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# =========================================================
98dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
99dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectinclude $(CLEAR_VARS)
100dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
101dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_SRC_FILES := \
102dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	adb.c \
103414ff7d98ac8d7610a26206335954ad15f43f3acDavid 'Digit' Turner	fdevent.c \
104dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport.c \
105dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport_local.c \
106dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport_usb.c \
107d5fcafaf41f8ec90986c813f75ec78402096af2dBenoit Goby	adb_auth_client.c \
108dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	sockets.c \
109dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	services.c \
110dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	file_sync_service.c \
111dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	jdwp_service.c \
112dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	framebuffer_service.c \
113dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	remount_service.c \
114bbb36319119edde9377fb80015235893c30d2bc9Paul Lawrence	disable_verity_service.c \
1157aa39a7b199bb9803d3fd47246ee9530b4a96177Mark Salyzyn	usb_linux_client.c
116dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
11760299dfd6a5dca059a079bc8e11d45a1fecf02d0Mark SalyzynLOCAL_CFLAGS := -O2 -g -DADB_HOST=0 -Wall -Wno-unused-parameter -Werror
118dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
119dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
1205890fe33141a9efd124c86c40a8c1ff6170ecf20Nick Kralevichifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))
1215890fe33141a9efd124c86c40a8c1ff6170ecf20Nick KralevichLOCAL_CFLAGS += -DALLOW_ADBD_ROOT=1
1225890fe33141a9efd124c86c40a8c1ff6170ecf20Nick Kralevichendif
1235890fe33141a9efd124c86c40a8c1ff6170ecf20Nick Kralevich
124bbb36319119edde9377fb80015235893c30d2bc9Paul Lawrenceifneq (,$(filter userdebug,$(TARGET_BUILD_VARIANT)))
125bbb36319119edde9377fb80015235893c30d2bc9Paul LawrenceLOCAL_CFLAGS += -DALLOW_ADBD_DISABLE_VERITY=1
126bbb36319119edde9377fb80015235893c30d2bc9Paul Lawrenceendif
127bbb36319119edde9377fb80015235893c30d2bc9Paul Lawrence
128dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_MODULE := adbd
129dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
130dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_FORCE_STATIC_EXECUTABLE := true
131dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_MODULE_PATH := $(TARGET_ROOT_OUT_SBIN)
132dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_UNSTRIPPED_PATH := $(TARGET_ROOT_OUT_SBIN_UNSTRIPPED)
133bbb36319119edde9377fb80015235893c30d2bc9Paul LawrenceLOCAL_C_INCLUDES += system/extras/ext4_utils system/core/fs_mgr/include
134bbb36319119edde9377fb80015235893c30d2bc9Paul Lawrence
135bbb36319119edde9377fb80015235893c30d2bc9Paul LawrenceLOCAL_STATIC_LIBRARIES := liblog \
136bbb36319119edde9377fb80015235893c30d2bc9Paul Lawrence	libfs_mgr \
137bbb36319119edde9377fb80015235893c30d2bc9Paul Lawrence	libcutils \
138bbb36319119edde9377fb80015235893c30d2bc9Paul Lawrence	libc \
139bbb36319119edde9377fb80015235893c30d2bc9Paul Lawrence	libmincrypt \
140bbb36319119edde9377fb80015235893c30d2bc9Paul Lawrence	libselinux \
141bbb36319119edde9377fb80015235893c30d2bc9Paul Lawrence	libext4_utils_static
142dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
14329e1e7393d1742f9dd5663c63026f50981e5bd89Jeff Browninclude $(BUILD_EXECUTABLE)
144dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
145c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
146c318833b359164f25d7a93f6395c0cad787bacd7John Michelau# adb host tool for device-as-host
147c318833b359164f25d7a93f6395c0cad787bacd7John Michelau# =========================================================
148dff02374301f93860568c7805e20b55e2e04a179Benoit Gobyifneq ($(SDK_ONLY),true)
149c318833b359164f25d7a93f6395c0cad787bacd7John Michelauinclude $(CLEAR_VARS)
150c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
151c318833b359164f25d7a93f6395c0cad787bacd7John MichelauLOCAL_SRC_FILES := \
152c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	adb.c \
153c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	console.c \
154c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	transport.c \
155c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	transport_local.c \
156c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	transport_usb.c \
157c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	commandline.c \
158c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	adb_client.c \
159d5fcafaf41f8ec90986c813f75ec78402096af2dBenoit Goby	adb_auth_host.c \
160c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	sockets.c \
161c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	services.c \
162c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	file_sync_client.c \
163c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	get_my_path_linux.c \
164c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	usb_linux.c \
165c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	usb_vendors.c \
166c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	fdevent.c
167c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
168c318833b359164f25d7a93f6395c0cad787bacd7John MichelauLOCAL_CFLAGS := \
169c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-O2 \
170c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-g \
171c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-DADB_HOST=1 \
172c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-DADB_HOST_ON_TARGET=1 \
17360299dfd6a5dca059a079bc8e11d45a1fecf02d0Mark Salyzyn	-Wall -Wno-unused-parameter -Werror \
174c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-D_XOPEN_SOURCE \
175c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-D_GNU_SOURCE
176c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
177d5fcafaf41f8ec90986c813f75ec78402096af2dBenoit GobyLOCAL_C_INCLUDES += external/openssl/include
178d5fcafaf41f8ec90986c813f75ec78402096af2dBenoit Goby
179c318833b359164f25d7a93f6395c0cad787bacd7John MichelauLOCAL_MODULE := adb
180c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
18148a904240bf32fcba701ad8634651569a586d0aaleozwangLOCAL_STATIC_LIBRARIES := libzipfile libunz libcutils liblog
182c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
183d5fcafaf41f8ec90986c813f75ec78402096af2dBenoit GobyLOCAL_SHARED_LIBRARIES := libcrypto
184d5fcafaf41f8ec90986c813f75ec78402096af2dBenoit Goby
185c318833b359164f25d7a93f6395c0cad787bacd7John Michelauinclude $(BUILD_EXECUTABLE)
186cb56b712b559dc66d10a3993b60ee4886cebac73Benoit Gobyendif
187