Android.mk revision e3baafd85a5fecd1714441455e3f75f26b5c381e
1# 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# =========================================================
10include $(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
28ifeq ($(HOST_OS),windows)
29  USB_SRCS := usb_windows.c
30  EXTRA_SRCS := get_my_path_windows.c
31  EXTRA_STATIC_LIBS := AdbWinApi
32  LOCAL_C_INCLUDES += /usr/include/w32api/ddk development/host/windows/usb/api/
33  ifneq ($(strip $(USE_CYGWIN)),)
34    LOCAL_LDLIBS += -lpthread
35  else
36    LOCAL_LDLIBS += -lws2_32
37    USE_SYSDEPS_WIN32 := 1
38  endif
39endif
40
41LOCAL_SRC_FILES := \
42	adb.c \
43	console.c \
44	transport.c \
45	transport_local.c \
46	transport_usb.c \
47	commandline.c \
48	adb_client.c \
49	sockets.c \
50	services.c \
51	file_sync_client.c \
52	$(EXTRA_SRCS) \
53	$(USB_SRCS) \
54	shlist.c \
55	utils.c \
56	usb_vendors.c
57
58
59ifneq ($(USE_SYSDEPS_WIN32),)
60  LOCAL_SRC_FILES += sysdeps_win32.c
61else
62  LOCAL_SRC_FILES += fdevent.c
63endif
64
65LOCAL_CFLAGS += -O2 -g -DADB_HOST=1  -Wall -Wno-unused-parameter
66LOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE -DSH_HISTORY
67LOCAL_MODULE := adb
68
69LOCAL_STATIC_LIBRARIES := libzipfile libunz $(EXTRA_STATIC_LIBS)
70ifeq ($(USE_SYSDEPS_WIN32),)
71	LOCAL_STATIC_LIBRARIES += libcutils
72endif
73
74include $(BUILD_HOST_EXECUTABLE)
75
76$(call dist-for-goals,droid,$(LOCAL_BUILT_MODULE))
77
78ifeq ($(HOST_OS),windows)
79$(LOCAL_INSTALLED_MODULE): \
80    $(HOST_OUT_EXECUTABLES)/AdbWinApi.dll \
81    $(HOST_OUT_EXECUTABLES)/AdbWinUsbApi.dll
82endif
83
84
85# adbd device daemon
86# =========================================================
87
88# build adbd in all non-simulator builds
89BUILD_ADBD := false
90ifneq ($(TARGET_SIMULATOR),true)
91    BUILD_ADBD := true
92endif
93
94# build adbd for the Linux simulator build
95# so we can use it to test the adb USB gadget driver on x86
96#ifeq ($(HOST_OS),linux)
97#    BUILD_ADBD := true
98#endif
99
100
101ifeq ($(BUILD_ADBD),true)
102include $(CLEAR_VARS)
103
104LOCAL_SRC_FILES := \
105	adb.c \
106	fdevent.c \
107	transport.c \
108	transport_local.c \
109	transport_usb.c \
110	sockets.c \
111	services.c \
112	file_sync_service.c \
113	jdwp_service.c \
114	framebuffer_service.c \
115	remount_service.c \
116	usb_linux_client.c \
117	log_service.c \
118	utils.c
119
120LOCAL_CFLAGS := -O2 -g -DADB_HOST=0 -Wall -Wno-unused-parameter
121LOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
122
123# TODO: This should probably be board specific, whether or not the kernel has
124# the gadget driver; rather than relying on the architecture type.
125ifeq ($(TARGET_ARCH),arm)
126LOCAL_CFLAGS += -DANDROID_GADGET=1
127endif
128
129LOCAL_MODULE := adbd
130
131LOCAL_FORCE_STATIC_EXECUTABLE := true
132LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT_SBIN)
133LOCAL_UNSTRIPPED_PATH := $(TARGET_ROOT_OUT_SBIN_UNSTRIPPED)
134
135ifeq ($(TARGET_SIMULATOR),true)
136  LOCAL_STATIC_LIBRARIES := libcutils
137  LOCAL_LDLIBS += -lpthread
138  include $(BUILD_HOST_EXECUTABLE)
139else
140  LOCAL_STATIC_LIBRARIES := libcutils libc
141  include $(BUILD_EXECUTABLE)
142endif
143
144endif
145