1 # Copyright 2005 The Android Open Source Project
6 LOCAL_PATH:= $(call my-dir)
11 # =========================================================
13 # Much of adb is duplicated in bootable/recovery/minadb and fastboot. Changes
14 # made to adb rarely get ported to the other two, so the trees have diverged a
15 # bit. We'd like to stop this because it is a maintenance nightmare, but the
16 # divergence makes this difficult to do all at once. For now, we will start
17 # small by moving common files into a static library. Hopefully some day we can
18 # get enough of adb in here that we no longer need minadb. https://b/17626262
30 -Wno-unused-parameter \
31 -Wno-missing-field-initializers \
32 -D_XOPEN_SOURCE -D_GNU_SOURCE \
35 LIBADB_darwin_SRC_FILES := fdevent.cpp get_my_path_darwin.c usb_osx.c
36 LIBADB_linux_SRC_FILES := fdevent.cpp get_my_path_linux.c usb_linux.c
37 LIBADB_windows_SRC_FILES := get_my_path_windows.c sysdeps_win32.c usb_windows.c
40 LOCAL_CLANG := $(ADB_CLANG)
41 LOCAL_MODULE := libadbd
42 LOCAL_CFLAGS := $(LIBADB_CFLAGS) -DADB_HOST=0
51 include $(BUILD_STATIC_LIBRARY)
54 LOCAL_CLANG := $(ADB_CLANG)
55 LOCAL_MODULE := libadb
56 LOCAL_CFLAGS := $(LIBADB_CFLAGS) -DADB_HOST=1
59 $(LIBADB_$(HOST_OS)_SRC_FILES) \
62 # Even though we're building a static library (and thus there's no link step for
63 # this to take effect), this adds the SSL includes to our path.
64 LOCAL_STATIC_LIBRARIES := libcrypto_static
66 ifeq ($(HOST_OS),windows)
67 LOCAL_C_INCLUDES += development/host/windows/usb/api/
70 include $(BUILD_HOST_STATIC_LIBRARY)
76 LOCAL_CLANG := $(ADB_CLANG)
77 LOCAL_MODULE := adbd_test
78 LOCAL_CFLAGS := -DADB_HOST=0 $(LIBADB_CFLAGS)
79 LOCAL_SRC_FILES := $(LIBADB_TEST_SRCS)
80 LOCAL_STATIC_LIBRARIES := libadbd
81 LOCAL_SHARED_LIBRARIES := liblog
82 include $(BUILD_NATIVE_TEST)
85 LOCAL_CLANG := $(ADB_CLANG)
86 LOCAL_MODULE := adb_test
87 LOCAL_CFLAGS := -DADB_HOST=1 $(LIBADB_CFLAGS)
88 LOCAL_SRC_FILES := $(LIBADB_TEST_SRCS) services.c
89 LOCAL_STATIC_LIBRARIES := \
94 ifeq ($(HOST_OS),linux)
95 LOCAL_LDLIBS += -lrt -ldl -lpthread
98 include $(BUILD_HOST_NATIVE_TEST)
101 # =========================================================
102 include $(CLEAR_VARS)
104 ifeq ($(HOST_OS),linux)
105 LOCAL_LDLIBS += -lrt -ldl -lpthread
106 LOCAL_CFLAGS += -DWORKAROUND_BUG6558362
109 ifeq ($(HOST_OS),darwin)
110 LOCAL_LDLIBS += -lpthread -framework CoreFoundation -framework IOKit -framework Carbon
111 LOCAL_CFLAGS += -Wno-sizeof-pointer-memaccess -Wno-unused-parameter
114 ifeq ($(HOST_OS),windows)
115 EXTRA_STATIC_LIBS := AdbWinApi
116 ifneq ($(strip $(USE_MINGW)),)
117 # MinGW under Linux case
118 LOCAL_LDLIBS += -lws2_32 -lgdi32
119 USE_SYSDEPS_WIN32 := 1
123 LOCAL_CLANG := $(ADB_CLANG)
133 ifneq ($(USE_SYSDEPS_WIN32),)
134 LOCAL_SRC_FILES += sysdeps_win32.c
137 LOCAL_CFLAGS += -O2 -g -DADB_HOST=1 -Wall -Wno-unused-parameter -Werror
138 LOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
140 LOCAL_MODULE_TAGS := debug
142 LOCAL_STATIC_LIBRARIES := \
146 $(EXTRA_STATIC_LIBS) \
148 ifeq ($(USE_SYSDEPS_WIN32),)
149 LOCAL_STATIC_LIBRARIES += libcutils
152 LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
153 include $(BUILD_HOST_EXECUTABLE)
155 $(call dist-for-goals,dist_files sdk,$(LOCAL_BUILT_MODULE))
157 ifeq ($(HOST_OS),windows)
158 $(LOCAL_INSTALLED_MODULE): \
159 $(HOST_OUT_EXECUTABLES)/AdbWinApi.dll \
160 $(HOST_OUT_EXECUTABLES)/AdbWinUsbApi.dll
165 # =========================================================
167 include $(CLEAR_VARS)
169 LOCAL_CLANG := $(ADB_CLANG)
174 file_sync_service.c \
175 framebuffer_service.c \
177 set_verity_enable_state_service.c \
185 -Wall -Wno-unused-parameter -Werror -Wno-deprecated-declarations \
187 ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))
188 LOCAL_CFLAGS += -DALLOW_ADBD_ROOT=1
191 ifneq (,$(filter userdebug,$(TARGET_BUILD_VARIANT)))
192 LOCAL_CFLAGS += -DALLOW_ADBD_DISABLE_VERITY=1
197 LOCAL_FORCE_STATIC_EXECUTABLE := true
198 LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT_SBIN)
199 LOCAL_UNSTRIPPED_PATH := $(TARGET_ROOT_OUT_SBIN_UNSTRIPPED)
200 LOCAL_C_INCLUDES += system/extras/ext4_utils system/core/fs_mgr/include
202 LOCAL_STATIC_LIBRARIES := \
210 libext4_utils_static \
212 LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
214 include $(BUILD_EXECUTABLE)