Android.mk revision 5890fe33141a9efd124c86c40a8c1ff6170ecf20
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
19dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  LOCAL_LDLIBS += -lrt -lncurses -lpthread
20dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
21dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
22dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(HOST_OS),darwin)
23dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  USB_SRCS := usb_osx.c
24dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  EXTRA_SRCS := get_my_path_darwin.c
25dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  LOCAL_LDLIBS += -lpthread -framework CoreFoundation -framework IOKit -framework Carbon
26dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
27dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
283b226f9e3b893a3e088d7b854b0e7c523e79063fAlexey Tarasovifeq ($(HOST_OS),freebsd)
293b226f9e3b893a3e088d7b854b0e7c523e79063fAlexey Tarasov  USB_SRCS := usb_libusb.c
303b226f9e3b893a3e088d7b854b0e7c523e79063fAlexey Tarasov  EXTRA_SRCS := get_my_path_freebsd.c
313b226f9e3b893a3e088d7b854b0e7c523e79063fAlexey Tarasov  LOCAL_LDLIBS += -lpthread -lusb
323b226f9e3b893a3e088d7b854b0e7c523e79063fAlexey Tarasovendif
333b226f9e3b893a3e088d7b854b0e7c523e79063fAlexey Tarasov
34dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(HOST_OS),windows)
35dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  USB_SRCS := usb_windows.c
36dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  EXTRA_SRCS := get_my_path_windows.c
37dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  EXTRA_STATIC_LIBS := AdbWinApi
38dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  ifneq ($(strip $(USE_CYGWIN)),)
39fab167850d751a817c39e074334fe7a0987ce647Raphael    # Pure cygwin case
40dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project    LOCAL_LDLIBS += -lpthread
41fab167850d751a817c39e074334fe7a0987ce647Raphael    LOCAL_C_INCLUDES += /usr/include/w32api/ddk
42fab167850d751a817c39e074334fe7a0987ce647Raphael  endif
43fab167850d751a817c39e074334fe7a0987ce647Raphael  ifneq ($(strip $(USE_MINGW)),)
44fab167850d751a817c39e074334fe7a0987ce647Raphael    # MinGW under Linux case
45dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project    LOCAL_LDLIBS += -lws2_32
46dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project    USE_SYSDEPS_WIN32 := 1
47fab167850d751a817c39e074334fe7a0987ce647Raphael    LOCAL_C_INCLUDES += /usr/i586-mingw32msvc/include/ddk
48dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  endif
49fab167850d751a817c39e074334fe7a0987ce647Raphael  LOCAL_C_INCLUDES += development/host/windows/usb/api/
50dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
51dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
52dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_SRC_FILES := \
53dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	adb.c \
54dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	console.c \
55dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport.c \
56dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport_local.c \
57dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport_usb.c \
58dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	commandline.c \
59dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	adb_client.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) \
65dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	utils.c \
6626f3de6738c3e07e581e2f9c112a8b3086f88abbRaphael	usb_vendors.c
67dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
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
75dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_CFLAGS += -O2 -g -DADB_HOST=1  -Wall -Wno-unused-parameter
767fe202f160ca1926bc0277e3c276ad7b3f9b9aebJack PalevichLOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
77dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_MODULE := adb
78dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
79dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_STATIC_LIBRARIES := libzipfile libunz $(EXTRA_STATIC_LIBS)
80dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(USE_SYSDEPS_WIN32),)
81dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	LOCAL_STATIC_LIBRARIES += libcutils
82dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
83dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
84dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectinclude $(BUILD_HOST_EXECUTABLE)
85dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
861c061b9ea952ebdf6093ca1e7c29bfff6332857eYing Wang$(call dist-for-goals,dist_files,$(LOCAL_BUILT_MODULE))
87dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
88dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(HOST_OS),windows)
8926f3de6738c3e07e581e2f9c112a8b3086f88abbRaphael$(LOCAL_INSTALLED_MODULE): \
9026f3de6738c3e07e581e2f9c112a8b3086f88abbRaphael    $(HOST_OUT_EXECUTABLES)/AdbWinApi.dll \
9126f3de6738c3e07e581e2f9c112a8b3086f88abbRaphael    $(HOST_OUT_EXECUTABLES)/AdbWinUsbApi.dll
92dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
93dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
94dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
95dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# adbd device daemon
96dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# =========================================================
97dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
9829e1e7393d1742f9dd5663c63026f50981e5bd89Jeff BrownBUILD_ADBD := true
99dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
100dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# build adbd for the Linux simulator build
101dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# so we can use it to test the adb USB gadget driver on x86
10263e61527481c679a75cda358825ed71b156ad778Mike Lockwood#ifeq ($(HOST_OS),linux)
10363e61527481c679a75cda358825ed71b156ad778Mike Lockwood#    BUILD_ADBD := true
10463e61527481c679a75cda358825ed71b156ad778Mike Lockwood#endif
105dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
106dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
107dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(BUILD_ADBD),true)
108dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectinclude $(CLEAR_VARS)
109dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
110dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_SRC_FILES := \
111dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	adb.c \
112d2f5415c603f7d9961f7a0b05579a0768e071410Christopher Tate	backup_service.c \
113414ff7d98ac8d7610a26206335954ad15f43f3acDavid 'Digit' Turner	fdevent.c \
114dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport.c \
115dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport_local.c \
116dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport_usb.c \
117dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	sockets.c \
118dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	services.c \
119dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	file_sync_service.c \
120dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	jdwp_service.c \
121dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	framebuffer_service.c \
122dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	remount_service.c \
123dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	usb_linux_client.c \
124dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	log_service.c \
12526f3de6738c3e07e581e2f9c112a8b3086f88abbRaphael	utils.c
126dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
127dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_CFLAGS := -O2 -g -DADB_HOST=0 -Wall -Wno-unused-parameter
128dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
129dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
130dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# TODO: This should probably be board specific, whether or not the kernel has
131dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# the gadget driver; rather than relying on the architecture type.
132dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(TARGET_ARCH),arm)
133dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_CFLAGS += -DANDROID_GADGET=1
134dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
135dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
1365890fe33141a9efd124c86c40a8c1ff6170ecf20Nick Kralevichifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))
1375890fe33141a9efd124c86c40a8c1ff6170ecf20Nick KralevichLOCAL_CFLAGS += -DALLOW_ADBD_ROOT=1
1385890fe33141a9efd124c86c40a8c1ff6170ecf20Nick Kralevichendif
1395890fe33141a9efd124c86c40a8c1ff6170ecf20Nick Kralevich
140dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_MODULE := adbd
141dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
142dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_FORCE_STATIC_EXECUTABLE := true
143dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_MODULE_PATH := $(TARGET_ROOT_OUT_SBIN)
144dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_UNSTRIPPED_PATH := $(TARGET_ROOT_OUT_SBIN_UNSTRIPPED)
145dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
14629e1e7393d1742f9dd5663c63026f50981e5bd89Jeff BrownLOCAL_STATIC_LIBRARIES := libcutils libc
14729e1e7393d1742f9dd5663c63026f50981e5bd89Jeff Browninclude $(BUILD_EXECUTABLE)
148dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
149dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
150c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
151c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
152c318833b359164f25d7a93f6395c0cad787bacd7John Michelau# adb host tool for device-as-host
153c318833b359164f25d7a93f6395c0cad787bacd7John Michelau# =========================================================
154dff02374301f93860568c7805e20b55e2e04a179Benoit Gobyifneq ($(SDK_ONLY),true)
155c318833b359164f25d7a93f6395c0cad787bacd7John Michelauinclude $(CLEAR_VARS)
156c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
157c318833b359164f25d7a93f6395c0cad787bacd7John MichelauLOCAL_LDLIBS := -lrt -lncurses -lpthread
158c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
159c318833b359164f25d7a93f6395c0cad787bacd7John MichelauLOCAL_SRC_FILES := \
160c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	adb.c \
161c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	console.c \
162c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	transport.c \
163c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	transport_local.c \
164c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	transport_usb.c \
165c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	commandline.c \
166c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	adb_client.c \
167c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	sockets.c \
168c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	services.c \
169c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	file_sync_client.c \
170c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	get_my_path_linux.c \
171c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	usb_linux.c \
172c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	utils.c \
173c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	usb_vendors.c \
174c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	fdevent.c
175c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
176c318833b359164f25d7a93f6395c0cad787bacd7John MichelauLOCAL_CFLAGS := \
177c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-O2 \
178c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-g \
179c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-DADB_HOST=1 \
180c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-DADB_HOST_ON_TARGET=1 \
181c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-Wall \
182c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-Wno-unused-parameter \
183c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-D_XOPEN_SOURCE \
184c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-D_GNU_SOURCE
185c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
186c318833b359164f25d7a93f6395c0cad787bacd7John MichelauLOCAL_MODULE := adb
187c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
188c318833b359164f25d7a93f6395c0cad787bacd7John MichelauLOCAL_STATIC_LIBRARIES := libzipfile libunz libcutils
189c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
190c318833b359164f25d7a93f6395c0cad787bacd7John Michelauinclude $(BUILD_EXECUTABLE)
191cb56b712b559dc66d10a3993b60ee4886cebac73Benoit Gobyendif
192