Android.mk revision fab167850d751a817c39e074334fe7a0987ce647
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	shlist.c \
66dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	utils.c \
6726f3de6738c3e07e581e2f9c112a8b3086f88abbRaphael	usb_vendors.c
68dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
69dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
70dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifneq ($(USE_SYSDEPS_WIN32),)
71dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  LOCAL_SRC_FILES += sysdeps_win32.c
72414ff7d98ac8d7610a26206335954ad15f43f3acDavid 'Digit' Turnerelse
73414ff7d98ac8d7610a26206335954ad15f43f3acDavid 'Digit' Turner  LOCAL_SRC_FILES += fdevent.c
74dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
75dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
76dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_CFLAGS += -O2 -g -DADB_HOST=1  -Wall -Wno-unused-parameter
77dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE -DSH_HISTORY
78dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_MODULE := adb
79dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
80dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_STATIC_LIBRARIES := libzipfile libunz $(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
87dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project$(call dist-for-goals,droid,$(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 Project# build adbd in all non-simulator builds
100dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectBUILD_ADBD := false
101dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifneq ($(TARGET_SIMULATOR),true)
102dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project    BUILD_ADBD := true
103dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
104dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
105dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# build adbd for the Linux simulator build
106dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# so we can use it to test the adb USB gadget driver on x86
10763e61527481c679a75cda358825ed71b156ad778Mike Lockwood#ifeq ($(HOST_OS),linux)
10863e61527481c679a75cda358825ed71b156ad778Mike Lockwood#    BUILD_ADBD := true
10963e61527481c679a75cda358825ed71b156ad778Mike Lockwood#endif
110dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
111dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
112dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(BUILD_ADBD),true)
113dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectinclude $(CLEAR_VARS)
114dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
115dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_SRC_FILES := \
116dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	adb.c \
117414ff7d98ac8d7610a26206335954ad15f43f3acDavid 'Digit' Turner	fdevent.c \
118dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport.c \
119dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport_local.c \
120dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	transport_usb.c \
121dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	sockets.c \
122dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	services.c \
123dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	file_sync_service.c \
124dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	jdwp_service.c \
125dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	framebuffer_service.c \
126dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	remount_service.c \
127dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	usb_linux_client.c \
128dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project	log_service.c \
12926f3de6738c3e07e581e2f9c112a8b3086f88abbRaphael	utils.c
130dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
131dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_CFLAGS := -O2 -g -DADB_HOST=0 -Wall -Wno-unused-parameter
132dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
133dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
134dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# TODO: This should probably be board specific, whether or not the kernel has
135dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project# the gadget driver; rather than relying on the architecture type.
136dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(TARGET_ARCH),arm)
137dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source ProjectLOCAL_CFLAGS += -DANDROID_GADGET=1
138dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
139dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
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
146dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectifeq ($(TARGET_SIMULATOR),true)
147dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  LOCAL_STATIC_LIBRARIES := libcutils
148dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  LOCAL_LDLIBS += -lpthread
149dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  include $(BUILD_HOST_EXECUTABLE)
150dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectelse
151dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  LOCAL_STATIC_LIBRARIES := libcutils libc
152dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project  include $(BUILD_EXECUTABLE)
153dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
154dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Project
155dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0The Android Open Source Projectendif
156