Android.mk revision dff02374301f93860568c7805e20b55e2e04a179
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
86dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project$(call dist-for-goals,droid,$(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
98dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# build adbd in all non-simulator builds
99dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectBUILD_ADBD := false
100dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifneq ($(TARGET_SIMULATOR),true)
101dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project    BUILD_ADBD := true
102dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
103dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
104dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# build adbd for the Linux simulator build
105dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# so we can use it to test the adb USB gadget driver on x86
10663e61527481c679a75cda358825ed71b156ad778Mike Lockwood#ifeq ($(HOST_OS),linux)
10763e61527481c679a75cda358825ed71b156ad778Mike Lockwood#    BUILD_ADBD := true
10863e61527481c679a75cda358825ed71b156ad778Mike Lockwood#endif
109dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
110dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
111dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(BUILD_ADBD),true)
112dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectinclude $(CLEAR_VARS)
113dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
114dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_SRC_FILES := \
115dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	adb.c \
116414ff7d98ac8d7610a26206335954ad15f43f3acDavid 'Digit' Turner	fdevent.c \
117dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport.c \
118dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport_local.c \
119dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport_usb.c \
120dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	sockets.c \
121dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	services.c \
122dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	file_sync_service.c \
123dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	jdwp_service.c \
124dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	framebuffer_service.c \
125dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	remount_service.c \
126dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	usb_linux_client.c \
127dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	log_service.c \
12826f3de6738c3e07e581e2f9c112a8b3086f88abbRaphael	utils.c
129dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
130dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_CFLAGS := -O2 -g -DADB_HOST=0 -Wall -Wno-unused-parameter
131dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
132dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
133dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# TODO: This should probably be board specific, whether or not the kernel has
134dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# the gadget driver; rather than relying on the architecture type.
135dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(TARGET_ARCH),arm)
136dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_CFLAGS += -DANDROID_GADGET=1
137dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
138dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
139dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_MODULE := adbd
140dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
141dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_FORCE_STATIC_EXECUTABLE := true
142dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_MODULE_PATH := $(TARGET_ROOT_OUT_SBIN)
143dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_UNSTRIPPED_PATH := $(TARGET_ROOT_OUT_SBIN_UNSTRIPPED)
144dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
145dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(TARGET_SIMULATOR),true)
146dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  LOCAL_STATIC_LIBRARIES := libcutils
147dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  LOCAL_LDLIBS += -lpthread
148dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  include $(BUILD_HOST_EXECUTABLE)
149dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectelse
150dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  LOCAL_STATIC_LIBRARIES := libcutils libc
151dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  include $(BUILD_EXECUTABLE)
152dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
153dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
154dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
155c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
156c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
157c318833b359164f25d7a93f6395c0cad787bacd7John Michelau# adb host tool for device-as-host
158c318833b359164f25d7a93f6395c0cad787bacd7John Michelau# =========================================================
159cb56b712b559dc66d10a3993b60ee4886cebac73Benoit Gobyifneq ($(TARGET_SIMULATOR),true)
160dff02374301f93860568c7805e20b55e2e04a179Benoit Gobyifneq ($(SDK_ONLY),true)
161c318833b359164f25d7a93f6395c0cad787bacd7John Michelauinclude $(CLEAR_VARS)
162c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
163c318833b359164f25d7a93f6395c0cad787bacd7John MichelauLOCAL_LDLIBS := -lrt -lncurses -lpthread
164c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
165c318833b359164f25d7a93f6395c0cad787bacd7John MichelauLOCAL_SRC_FILES := \
166c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	adb.c \
167c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	console.c \
168c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	transport.c \
169c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	transport_local.c \
170c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	transport_usb.c \
171c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	commandline.c \
172c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	adb_client.c \
173c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	sockets.c \
174c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	services.c \
175c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	file_sync_client.c \
176c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	get_my_path_linux.c \
177c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	usb_linux.c \
178c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	utils.c \
179c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	usb_vendors.c \
180c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	fdevent.c
181c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
182c318833b359164f25d7a93f6395c0cad787bacd7John MichelauLOCAL_CFLAGS := \
183c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-O2 \
184c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-g \
185c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-DADB_HOST=1 \
186c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-DADB_HOST_ON_TARGET=1 \
187c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-Wall \
188c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-Wno-unused-parameter \
189c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-D_XOPEN_SOURCE \
190c318833b359164f25d7a93f6395c0cad787bacd7John Michelau	-D_GNU_SOURCE
191c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
192c318833b359164f25d7a93f6395c0cad787bacd7John MichelauLOCAL_MODULE := adb
193c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
194c318833b359164f25d7a93f6395c0cad787bacd7John MichelauLOCAL_STATIC_LIBRARIES := libzipfile libunz libcutils
195c318833b359164f25d7a93f6395c0cad787bacd7John Michelau
196c318833b359164f25d7a93f6395c0cad787bacd7John Michelauinclude $(BUILD_EXECUTABLE)
197cb56b712b559dc66d10a3993b60ee4886cebac73Benoit Gobyendif
198dff02374301f93860568c7805e20b55e2e04a179Benoit Gobyendif
199