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
29 -Wall -Werror -Wno-unused-parameter \
30 -D_XOPEN_SOURCE -D_GNU_SOURCE \
33 LIBADB_darwin_SRC_FILES := fdevent.cpp get_my_path_darwin.c usb_osx.c
34 LIBADB_linux_SRC_FILES := fdevent.cpp get_my_path_linux.c usb_linux.c
35 LIBADB_windows_SRC_FILES := get_my_path_windows.c sysdeps_win32.c usb_windows.c
38 LOCAL_CLANG := $(ADB_CLANG)
39 LOCAL_MODULE := libadbd
40 LOCAL_CFLAGS := $(LIBADB_CFLAGS) -DADB_HOST=0
49 include $(BUILD_STATIC_LIBRARY)
52 LOCAL_CLANG := $(ADB_CLANG)
53 LOCAL_MODULE := libadb
54 LOCAL_CFLAGS := $(LIBADB_CFLAGS) -DADB_HOST=1
57 $(LIBADB_$(HOST_OS)_SRC_FILES) \
60 # Even though we're building a static library (and thus there's no link step for
61 # this to take effect), this adds the SSL includes to our path.
62 LOCAL_STATIC_LIBRARIES := libcrypto_static
64 ifeq ($(HOST_OS),windows)
65 LOCAL_C_INCLUDES += development/host/windows/usb/api/
68 include $(BUILD_HOST_STATIC_LIBRARY)
71 # =========================================================
74 ifeq ($(HOST_OS),linux)
75 LOCAL_LDLIBS += -lrt -ldl -lpthread
76 LOCAL_CFLAGS += -DWORKAROUND_BUG6558362
79 ifeq ($(HOST_OS),darwin)
80 LOCAL_LDLIBS += -lpthread -framework CoreFoundation -framework IOKit -framework Carbon
81 LOCAL_CFLAGS += -Wno-sizeof-pointer-memaccess -Wno-unused-parameter
84 ifeq ($(HOST_OS),windows)
85 EXTRA_STATIC_LIBS := AdbWinApi
86 ifneq ($(strip $(USE_MINGW)),)
87 # MinGW under Linux case
88 LOCAL_LDLIBS += -lws2_32 -lgdi32
89 USE_SYSDEPS_WIN32 := 1
93 LOCAL_CLANG := $(ADB_CLANG)
103 ifneq ($(USE_SYSDEPS_WIN32),)
104 LOCAL_SRC_FILES += sysdeps_win32.c
107 LOCAL_CFLAGS += -O2 -g -DADB_HOST=1 -Wall -Wno-unused-parameter -Werror
108 LOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
110 LOCAL_MODULE_TAGS := debug
112 LOCAL_STATIC_LIBRARIES := \
116 $(EXTRA_STATIC_LIBS) \
118 ifeq ($(USE_SYSDEPS_WIN32),)
119 LOCAL_STATIC_LIBRARIES += libcutils
122 LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
123 include $(BUILD_HOST_EXECUTABLE)
125 $(call dist-for-goals,dist_files sdk,$(LOCAL_BUILT_MODULE))
127 ifeq ($(HOST_OS),windows)
128 $(LOCAL_INSTALLED_MODULE): \
129 $(HOST_OUT_EXECUTABLES)/AdbWinApi.dll \
130 $(HOST_OUT_EXECUTABLES)/AdbWinUsbApi.dll
135 # =========================================================
137 include $(CLEAR_VARS)
139 LOCAL_CLANG := $(ADB_CLANG)
144 file_sync_service.c \
145 framebuffer_service.c \
147 set_verity_enable_state_service.c \
155 -Wall -Wno-unused-parameter -Werror -Wno-deprecated-declarations \
157 ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))
158 LOCAL_CFLAGS += -DALLOW_ADBD_ROOT=1
161 ifneq (,$(filter userdebug,$(TARGET_BUILD_VARIANT)))
162 LOCAL_CFLAGS += -DALLOW_ADBD_DISABLE_VERITY=1
167 LOCAL_FORCE_STATIC_EXECUTABLE := true
168 LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT_SBIN)
169 LOCAL_UNSTRIPPED_PATH := $(TARGET_ROOT_OUT_SBIN_UNSTRIPPED)
170 LOCAL_C_INCLUDES += system/extras/ext4_utils system/core/fs_mgr/include
172 LOCAL_STATIC_LIBRARIES := \
180 libext4_utils_static \
182 LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
184 include $(BUILD_EXECUTABLE)