Android.mk revision f8d6b9b1ef9c19769dd4a450390f9bdec17f11b3
1# Copyright 2005 The Android Open Source Project 2# 3# Android.mk for adb 4# 5 6LOCAL_PATH:= $(call my-dir) 7 8ADB_CLANG := 9 10# libadb 11# ========================================================= 12 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 19LIBADB_SRC_FILES := \ 20 adb.cpp \ 21 adb_auth.cpp \ 22 adb_io.cpp \ 23 adb_listeners.cpp \ 24 sockets.cpp \ 25 transport.cpp \ 26 transport_local.cpp \ 27 transport_usb.cpp \ 28 29LIBADB_CFLAGS := \ 30 -Wall -Werror \ 31 -Wno-unused-parameter \ 32 -Wno-missing-field-initializers \ 33 -fvisibility=hidden \ 34 35LIBADB_darwin_SRC_FILES := \ 36 fdevent.cpp \ 37 get_my_path_darwin.cpp \ 38 usb_osx.c \ 39 40LIBADB_linux_SRC_FILES := \ 41 fdevent.cpp \ 42 get_my_path_linux.cpp \ 43 usb_linux.cpp \ 44 45LIBADB_windows_SRC_FILES := \ 46 get_my_path_windows.cpp \ 47 sysdeps_win32.c \ 48 usb_windows.cpp \ 49 50include $(CLEAR_VARS) 51LOCAL_CLANG := true 52LOCAL_MODULE := libadbd 53LOCAL_CFLAGS := $(LIBADB_CFLAGS) -DADB_HOST=0 54LOCAL_SRC_FILES := \ 55 $(LIBADB_SRC_FILES) \ 56 adb_auth_client.cpp \ 57 fdevent.cpp \ 58 jdwp_service.cpp \ 59 qemu_tracing.cpp \ 60 usb_linux_client.cpp \ 61 62include $(BUILD_STATIC_LIBRARY) 63 64include $(CLEAR_VARS) 65LOCAL_CLANG := $(ADB_CLANG) 66LOCAL_MODULE := libadb 67LOCAL_CFLAGS := $(LIBADB_CFLAGS) -DADB_HOST=1 68LOCAL_SRC_FILES := \ 69 $(LIBADB_SRC_FILES) \ 70 $(LIBADB_$(HOST_OS)_SRC_FILES) \ 71 adb_auth_host.cpp \ 72 73# Even though we're building a static library (and thus there's no link step for 74# this to take effect), this adds the SSL includes to our path. 75LOCAL_STATIC_LIBRARIES := libcrypto_static 76 77ifeq ($(HOST_OS),windows) 78 LOCAL_C_INCLUDES += development/host/windows/usb/api/ 79endif 80 81include $(BUILD_HOST_STATIC_LIBRARY) 82 83LIBADB_TEST_SRCS := \ 84 adb_io_test.cpp \ 85 transport_test.cpp \ 86 87include $(CLEAR_VARS) 88LOCAL_CLANG := $(ADB_CLANG) 89LOCAL_MODULE := adbd_test 90LOCAL_CFLAGS := -DADB_HOST=0 $(LIBADB_CFLAGS) 91LOCAL_SRC_FILES := $(LIBADB_TEST_SRCS) 92LOCAL_STATIC_LIBRARIES := libadbd 93LOCAL_SHARED_LIBRARIES := liblog libbase libcutils 94include $(BUILD_NATIVE_TEST) 95 96include $(CLEAR_VARS) 97LOCAL_CLANG := $(ADB_CLANG) 98LOCAL_MODULE := adb_test 99LOCAL_CFLAGS := -DADB_HOST=1 $(LIBADB_CFLAGS) 100LOCAL_SRC_FILES := $(LIBADB_TEST_SRCS) services.cpp 101LOCAL_SHARED_LIBRARIES := liblog libbase 102LOCAL_STATIC_LIBRARIES := \ 103 libadb \ 104 libcrypto_static \ 105 libcutils \ 106 107ifeq ($(HOST_OS),linux) 108 LOCAL_LDLIBS += -lrt -ldl -lpthread 109endif 110 111ifeq ($(HOST_OS),darwin) 112 LOCAL_LDLIBS += -framework CoreFoundation -framework IOKit 113endif 114 115include $(BUILD_HOST_NATIVE_TEST) 116 117# adb host tool 118# ========================================================= 119include $(CLEAR_VARS) 120 121ifeq ($(HOST_OS),linux) 122 LOCAL_LDLIBS += -lrt -ldl -lpthread 123 LOCAL_CFLAGS += -DWORKAROUND_BUG6558362 124endif 125 126ifeq ($(HOST_OS),darwin) 127 LOCAL_LDLIBS += -lpthread -framework CoreFoundation -framework IOKit -framework Carbon 128 LOCAL_CFLAGS += -Wno-sizeof-pointer-memaccess -Wno-unused-parameter 129endif 130 131ifeq ($(HOST_OS),windows) 132 EXTRA_STATIC_LIBS := AdbWinApi 133 ifneq ($(strip $(USE_MINGW)),) 134 # MinGW under Linux case 135 LOCAL_LDLIBS += -lws2_32 -lgdi32 136 USE_SYSDEPS_WIN32 := 1 137 endif 138endif 139 140LOCAL_CLANG := $(ADB_CLANG) 141 142LOCAL_SRC_FILES := \ 143 adb_main.cpp \ 144 console.cpp \ 145 commandline.cpp \ 146 adb_client.cpp \ 147 services.cpp \ 148 file_sync_client.cpp \ 149 150LOCAL_CFLAGS += \ 151 -Wall -Werror \ 152 -Wno-unused-parameter \ 153 -D_GNU_SOURCE \ 154 -DADB_HOST=1 \ 155 156LOCAL_MODULE := adb 157LOCAL_MODULE_TAGS := debug 158 159LOCAL_STATIC_LIBRARIES := \ 160 libadb \ 161 libcrypto_static \ 162 $(EXTRA_STATIC_LIBS) \ 163 164ifeq ($(USE_SYSDEPS_WIN32),) 165 LOCAL_STATIC_LIBRARIES += libcutils 166endif 167 168include $(BUILD_HOST_EXECUTABLE) 169 170$(call dist-for-goals,dist_files sdk,$(LOCAL_BUILT_MODULE)) 171 172ifeq ($(HOST_OS),windows) 173$(LOCAL_INSTALLED_MODULE): \ 174 $(HOST_OUT_EXECUTABLES)/AdbWinApi.dll \ 175 $(HOST_OUT_EXECUTABLES)/AdbWinUsbApi.dll 176endif 177 178 179# adbd device daemon 180# ========================================================= 181 182include $(CLEAR_VARS) 183 184LOCAL_CLANG := $(ADB_CLANG) 185 186LOCAL_SRC_FILES := \ 187 adb_main.cpp \ 188 services.cpp \ 189 file_sync_service.cpp \ 190 framebuffer_service.cpp \ 191 remount_service.cpp \ 192 set_verity_enable_state_service.cpp \ 193 194LOCAL_CFLAGS := \ 195 -DADB_HOST=0 \ 196 -D_GNU_SOURCE \ 197 -Wall -Werror \ 198 -Wno-unused-parameter \ 199 -Wno-deprecated-declarations \ 200 201ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT))) 202LOCAL_CFLAGS += -DALLOW_ADBD_ROOT=1 203endif 204 205ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT))) 206LOCAL_CFLAGS += -DALLOW_ADBD_DISABLE_VERITY=1 207endif 208 209LOCAL_MODULE := adbd 210 211LOCAL_FORCE_STATIC_EXECUTABLE := true 212LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT_SBIN) 213LOCAL_UNSTRIPPED_PATH := $(TARGET_ROOT_OUT_SBIN_UNSTRIPPED) 214LOCAL_C_INCLUDES += system/extras/ext4_utils 215 216LOCAL_STATIC_LIBRARIES := \ 217 libadbd \ 218 libbase \ 219 libfs_mgr \ 220 liblog \ 221 libcutils \ 222 libc \ 223 libmincrypt \ 224 libselinux \ 225 libext4_utils_static \ 226 227include $(BUILD_EXECUTABLE) 228