adb: switch over to Android.bp.
Rearrange some files while we're doing this. Bug: http://b/71721338 Test: manually ran adb on windows Change-Id: Ie47bda82279e4b9521505ad0353bf9ef649fc7d7
This commit is contained in:
parent
e2176118f4
commit
2776845aa5
30 changed files with 337 additions and 418 deletions
314
adb/Android.bp
314
adb/Android.bp
|
@ -12,6 +12,320 @@
|
|||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
cc_defaults {
|
||||
name: "adb_defaults",
|
||||
|
||||
cflags: [
|
||||
"-Wall",
|
||||
"-Wextra",
|
||||
"-Werror",
|
||||
"-Wno-unused-parameter",
|
||||
"-Wno-missing-field-initializers",
|
||||
"-Wvla",
|
||||
],
|
||||
rtti: true,
|
||||
|
||||
clang_cflags: [
|
||||
"-Wexit-time-destructors",
|
||||
"-Wthread-safety",
|
||||
],
|
||||
|
||||
compile_multilib: "first",
|
||||
product_variables: {
|
||||
debuggable: {
|
||||
cflags: [
|
||||
"-DALLOW_ADBD_ROOT",
|
||||
"-DALLOW_ADBD_DISABLE_VERITY",
|
||||
"-DALLOW_ADBD_NO_AUTH",
|
||||
],
|
||||
},
|
||||
},
|
||||
|
||||
target: {
|
||||
android: {
|
||||
cflags: ["-DADB_HOST=0"],
|
||||
},
|
||||
|
||||
host: {
|
||||
cflags: ["-DADB_HOST=1"],
|
||||
},
|
||||
|
||||
darwin: {
|
||||
host_ldlibs: [
|
||||
"-lpthread",
|
||||
"-framework CoreFoundation",
|
||||
"-framework IOKit",
|
||||
"-lobjc",
|
||||
],
|
||||
},
|
||||
|
||||
windows: {
|
||||
cflags: [
|
||||
// Define windows.h and tchar.h Unicode preprocessor symbols so that
|
||||
// CreateFile(), _tfopen(), etc. map to versions that take wchar_t*, breaking the
|
||||
// build if you accidentally pass char*. Fix by calling like:
|
||||
// std::wstring path_wide;
|
||||
// if (!android::base::UTF8ToWide(path_utf8, &path_wide)) { /* error handling */ }
|
||||
// CreateFileW(path_wide.c_str());
|
||||
"-DUNICODE=1",
|
||||
"-D_UNICODE=1",
|
||||
|
||||
// -std=gnu++14 doesn't set _GNU_SOURCE on Windows.
|
||||
"-D_GNU_SOURCE",
|
||||
],
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
// libadb
|
||||
// =========================================================
|
||||
// These files are compiled for both the host and the device.
|
||||
libadb_srcs = [
|
||||
"adb.cpp",
|
||||
"adb_io.cpp",
|
||||
"adb_listeners.cpp",
|
||||
"adb_trace.cpp",
|
||||
"adb_utils.cpp",
|
||||
"fdevent.cpp",
|
||||
"services.cpp",
|
||||
"sockets.cpp",
|
||||
"socket_spec.cpp",
|
||||
"sysdeps/errno.cpp",
|
||||
"transport.cpp",
|
||||
"transport_local.cpp",
|
||||
"transport_usb.cpp",
|
||||
]
|
||||
|
||||
libadb_posix_srcs = [
|
||||
"sysdeps_unix.cpp",
|
||||
"sysdeps/posix/network.cpp",
|
||||
]
|
||||
|
||||
libadb_test_srcs = [
|
||||
"adb_io_test.cpp",
|
||||
"adb_listeners_test.cpp",
|
||||
"adb_utils_test.cpp",
|
||||
"fdevent_test.cpp",
|
||||
"socket_spec_test.cpp",
|
||||
"socket_test.cpp",
|
||||
"sysdeps_test.cpp",
|
||||
"sysdeps/stat_test.cpp",
|
||||
"transport_test.cpp",
|
||||
]
|
||||
|
||||
cc_library_host_static {
|
||||
name: "libadb_host",
|
||||
defaults: ["adb_defaults"],
|
||||
|
||||
srcs: libadb_srcs + [
|
||||
"client/auth.cpp",
|
||||
"client/usb_libusb.cpp",
|
||||
"client/usb_dispatch.cpp",
|
||||
"client/transport_mdns.cpp",
|
||||
],
|
||||
|
||||
target: {
|
||||
linux: {
|
||||
srcs: ["client/usb_linux.cpp"],
|
||||
},
|
||||
darwin: {
|
||||
srcs: ["client/usb_osx.cpp"],
|
||||
},
|
||||
|
||||
not_windows: {
|
||||
srcs: libadb_posix_srcs,
|
||||
},
|
||||
windows: {
|
||||
enabled: true,
|
||||
srcs: [
|
||||
"client/usb_windows.cpp",
|
||||
"sysdeps_win32.cpp",
|
||||
"sysdeps/win32/errno.cpp",
|
||||
"sysdeps/win32/stat.cpp",
|
||||
],
|
||||
shared_libs: ["AdbWinApi"],
|
||||
},
|
||||
},
|
||||
|
||||
static_libs: [
|
||||
"libbase",
|
||||
"libcrypto_utils",
|
||||
"libcrypto",
|
||||
"libdiagnose_usb",
|
||||
"libmdnssd",
|
||||
"libusb",
|
||||
],
|
||||
}
|
||||
|
||||
cc_test_host {
|
||||
name: "adb_test",
|
||||
defaults: ["adb_defaults"],
|
||||
srcs: libadb_test_srcs,
|
||||
static_libs: [
|
||||
"libadb_host",
|
||||
"libbase",
|
||||
"libcutils",
|
||||
"libcrypto_utils",
|
||||
"libcrypto",
|
||||
"libmdnssd",
|
||||
"libdiagnose_usb",
|
||||
"libusb",
|
||||
],
|
||||
}
|
||||
|
||||
cc_binary_host {
|
||||
name: "adb",
|
||||
tags: ["debug"],
|
||||
|
||||
defaults: ["adb_defaults"],
|
||||
|
||||
srcs: [
|
||||
"client/adb_client.cpp",
|
||||
"client/bugreport.cpp",
|
||||
"client/commandline.cpp",
|
||||
"client/file_sync_client.cpp",
|
||||
"client/main.cpp",
|
||||
"client/console.cpp",
|
||||
"client/line_printer.cpp",
|
||||
"shell_service_protocol.cpp",
|
||||
],
|
||||
|
||||
static_libs: [
|
||||
"libadb_host",
|
||||
"libbase",
|
||||
"libcutils",
|
||||
"libcrypto_utils",
|
||||
"libcrypto",
|
||||
"libdiagnose_usb",
|
||||
"liblog",
|
||||
"libmdnssd",
|
||||
"libusb",
|
||||
],
|
||||
|
||||
stl: "libc++_static",
|
||||
|
||||
// Don't add anything here, we don't want additional shared dependencies
|
||||
// on the host adb tool, and shared libraries that link against libc++
|
||||
// will violate ODR
|
||||
shared_libs: [],
|
||||
|
||||
target: {
|
||||
darwin: {
|
||||
cflags: [
|
||||
"-Wno-sizeof-pointer-memaccess",
|
||||
],
|
||||
},
|
||||
windows: {
|
||||
enabled: true,
|
||||
ldflags: ["-municode"],
|
||||
host_ldlibs: [
|
||||
"-lws2_32",
|
||||
"-lgdi32",
|
||||
],
|
||||
|
||||
shared_libs: ["AdbWinApi"],
|
||||
required: [
|
||||
"AdbWinUsbApi",
|
||||
],
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
cc_library_static {
|
||||
name: "libadbd",
|
||||
defaults: ["adb_defaults"],
|
||||
|
||||
// libminadbd wants both, for some reason.
|
||||
compile_multilib: "both",
|
||||
srcs: libadb_srcs + libadb_posix_srcs + [
|
||||
"daemon/auth.cpp",
|
||||
"daemon/usb.cpp",
|
||||
"daemon/jdwp_service.cpp",
|
||||
],
|
||||
|
||||
static_libs: [
|
||||
"libasyncio",
|
||||
"libbootloader_message",
|
||||
"libcrypto_utils",
|
||||
"libcrypto",
|
||||
"libdiagnose_usb",
|
||||
"libqemu_pipe",
|
||||
"libbase",
|
||||
],
|
||||
}
|
||||
|
||||
cc_binary {
|
||||
name: "adbd",
|
||||
defaults: ["adb_defaults"],
|
||||
|
||||
srcs: [
|
||||
"daemon/main.cpp",
|
||||
"daemon/mdns.cpp",
|
||||
"daemon/file_sync_service.cpp",
|
||||
"daemon/framebuffer_service.cpp",
|
||||
"daemon/remount_service.cpp",
|
||||
"daemon/set_verity_enable_state_service.cpp",
|
||||
"daemon/shell_service.cpp",
|
||||
"shell_service_protocol.cpp",
|
||||
],
|
||||
|
||||
cflags: [
|
||||
"-D_GNU_SOURCE",
|
||||
"-Wno-deprecated-declarations",
|
||||
],
|
||||
|
||||
strip: {
|
||||
keep_symbols: true,
|
||||
},
|
||||
|
||||
static_libs: [
|
||||
"libadbd",
|
||||
"libasyncio",
|
||||
"libavb_user",
|
||||
"libbootloader_message",
|
||||
"libcrypto_utils",
|
||||
"libcrypto",
|
||||
"libdiagnose_usb",
|
||||
"libfec",
|
||||
"libfec_rs",
|
||||
"libfs_mgr",
|
||||
"liblog",
|
||||
"libext4_utils",
|
||||
"libmdnssd",
|
||||
"libminijail",
|
||||
"libselinux",
|
||||
"libsquashfs_utils",
|
||||
"libqemu_pipe",
|
||||
"libdebuggerd_handler",
|
||||
|
||||
"libbase",
|
||||
"libcutils",
|
||||
],
|
||||
}
|
||||
|
||||
cc_test {
|
||||
name: "adbd_test",
|
||||
defaults: ["adb_defaults"],
|
||||
srcs: libadb_test_srcs + [
|
||||
"daemon/shell_service.cpp",
|
||||
"daemon/shell_service_test.cpp",
|
||||
"shell_service_protocol.cpp",
|
||||
"shell_service_protocol_test.cpp",
|
||||
],
|
||||
|
||||
static_libs: [
|
||||
"libadbd",
|
||||
"libbase",
|
||||
"libcutils",
|
||||
"libcrypto_utils",
|
||||
"libcrypto",
|
||||
"libdiagnose_usb",
|
||||
"liblog",
|
||||
"libusb",
|
||||
"libmdnssd",
|
||||
],
|
||||
}
|
||||
|
||||
python_binary_host {
|
||||
name: "adb_integration_test_adb",
|
||||
main: "test_adb.py",
|
||||
|
|
387
adb/Android.mk
387
adb/Android.mk
|
@ -1,387 +0,0 @@
|
|||
# Copyright 2005 The Android Open Source Project
|
||||
#
|
||||
# Android.mk for adb
|
||||
#
|
||||
|
||||
LOCAL_PATH:= $(call my-dir)
|
||||
|
||||
include $(LOCAL_PATH)/../platform_tools_tool_version.mk
|
||||
|
||||
adb_host_sanitize :=
|
||||
adb_target_sanitize :=
|
||||
|
||||
ADB_COMMON_CFLAGS := \
|
||||
-frtti \
|
||||
-Wall -Wextra -Werror \
|
||||
-Wno-unused-parameter \
|
||||
-Wno-missing-field-initializers \
|
||||
-Wvla \
|
||||
-DADB_VERSION="\"$(tool_version)\"" \
|
||||
|
||||
ADB_COMMON_posix_CFLAGS := \
|
||||
-Wexit-time-destructors \
|
||||
-Wthread-safety \
|
||||
|
||||
ADB_COMMON_linux_CFLAGS := \
|
||||
$(ADB_COMMON_posix_CFLAGS) \
|
||||
|
||||
ADB_COMMON_darwin_CFLAGS := \
|
||||
$(ADB_COMMON_posix_CFLAGS) \
|
||||
|
||||
# Define windows.h and tchar.h Unicode preprocessor symbols so that
|
||||
# CreateFile(), _tfopen(), etc. map to versions that take wchar_t*, breaking the
|
||||
# build if you accidentally pass char*. Fix by calling like:
|
||||
# std::wstring path_wide;
|
||||
# if (!android::base::UTF8ToWide(path_utf8, &path_wide)) { /* error handling */ }
|
||||
# CreateFileW(path_wide.c_str());
|
||||
ADB_COMMON_windows_CFLAGS := \
|
||||
-DUNICODE=1 -D_UNICODE=1 \
|
||||
|
||||
# libadb
|
||||
# =========================================================
|
||||
|
||||
# Much of adb is duplicated in bootable/recovery/minadb and fastboot. Changes
|
||||
# made to adb rarely get ported to the other two, so the trees have diverged a
|
||||
# bit. We'd like to stop this because it is a maintenance nightmare, but the
|
||||
# divergence makes this difficult to do all at once. For now, we will start
|
||||
# small by moving common files into a static library. Hopefully some day we can
|
||||
# get enough of adb in here that we no longer need minadb. https://b/17626262
|
||||
LIBADB_SRC_FILES := \
|
||||
adb.cpp \
|
||||
adb_io.cpp \
|
||||
adb_listeners.cpp \
|
||||
adb_trace.cpp \
|
||||
adb_utils.cpp \
|
||||
fdevent.cpp \
|
||||
sockets.cpp \
|
||||
socket_spec.cpp \
|
||||
sysdeps/errno.cpp \
|
||||
transport.cpp \
|
||||
transport_local.cpp \
|
||||
transport_usb.cpp \
|
||||
|
||||
LIBADB_TEST_SRCS := \
|
||||
adb_io_test.cpp \
|
||||
adb_listeners_test.cpp \
|
||||
adb_utils_test.cpp \
|
||||
fdevent_test.cpp \
|
||||
socket_spec_test.cpp \
|
||||
socket_test.cpp \
|
||||
sysdeps_test.cpp \
|
||||
sysdeps/stat_test.cpp \
|
||||
transport_test.cpp \
|
||||
|
||||
LIBADB_CFLAGS := \
|
||||
$(ADB_COMMON_CFLAGS) \
|
||||
-fvisibility=hidden \
|
||||
|
||||
LIBADB_linux_CFLAGS := \
|
||||
$(ADB_COMMON_linux_CFLAGS) \
|
||||
|
||||
LIBADB_darwin_CFLAGS := \
|
||||
$(ADB_COMMON_darwin_CFLAGS) \
|
||||
|
||||
LIBADB_windows_CFLAGS := \
|
||||
$(ADB_COMMON_windows_CFLAGS) \
|
||||
|
||||
LIBADB_darwin_SRC_FILES := \
|
||||
sysdeps_unix.cpp \
|
||||
sysdeps/posix/network.cpp \
|
||||
client/usb_dispatch.cpp \
|
||||
client/usb_libusb.cpp \
|
||||
client/usb_osx.cpp \
|
||||
|
||||
LIBADB_linux_SRC_FILES := \
|
||||
sysdeps_unix.cpp \
|
||||
sysdeps/posix/network.cpp \
|
||||
client/usb_dispatch.cpp \
|
||||
client/usb_libusb.cpp \
|
||||
client/usb_linux.cpp \
|
||||
|
||||
LIBADB_windows_SRC_FILES := \
|
||||
sysdeps_win32.cpp \
|
||||
sysdeps/win32/errno.cpp \
|
||||
sysdeps/win32/stat.cpp \
|
||||
client/usb_dispatch.cpp \
|
||||
client/usb_libusb.cpp \
|
||||
client/usb_windows.cpp \
|
||||
|
||||
LIBADB_TEST_windows_SRCS := \
|
||||
sysdeps/win32/errno_test.cpp \
|
||||
sysdeps_win32_test.cpp \
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := libadbd_usb
|
||||
LOCAL_CFLAGS := $(LIBADB_CFLAGS) -DADB_HOST=0
|
||||
LOCAL_SRC_FILES := daemon/usb.cpp
|
||||
|
||||
LOCAL_SANITIZE := $(adb_target_sanitize)
|
||||
|
||||
# Even though we're building a static library (and thus there's no link step for
|
||||
# this to take effect), this adds the includes to our path.
|
||||
LOCAL_STATIC_LIBRARIES := libcrypto_utils libcrypto libbase libasyncio
|
||||
|
||||
include $(BUILD_STATIC_LIBRARY)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := libadbd
|
||||
LOCAL_CFLAGS := $(LIBADB_CFLAGS) -DADB_HOST=0
|
||||
LOCAL_SRC_FILES := \
|
||||
$(LIBADB_SRC_FILES) \
|
||||
adbd_auth.cpp \
|
||||
jdwp_service.cpp \
|
||||
sysdeps/posix/network.cpp \
|
||||
|
||||
LOCAL_SANITIZE := $(adb_target_sanitize)
|
||||
|
||||
# Even though we're building a static library (and thus there's no link step for
|
||||
# this to take effect), this adds the includes to our path.
|
||||
LOCAL_STATIC_LIBRARIES := libcrypto_utils libcrypto libqemu_pipe libbase
|
||||
|
||||
LOCAL_WHOLE_STATIC_LIBRARIES := libadbd_usb
|
||||
|
||||
include $(BUILD_STATIC_LIBRARY)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := libadb
|
||||
LOCAL_MODULE_HOST_OS := darwin linux windows
|
||||
LOCAL_CFLAGS := $(LIBADB_CFLAGS) -DADB_HOST=1
|
||||
LOCAL_CFLAGS_windows := $(LIBADB_windows_CFLAGS)
|
||||
LOCAL_CFLAGS_linux := $(LIBADB_linux_CFLAGS)
|
||||
LOCAL_CFLAGS_darwin := $(LIBADB_darwin_CFLAGS)
|
||||
LOCAL_SRC_FILES := \
|
||||
$(LIBADB_SRC_FILES) \
|
||||
adb_auth_host.cpp \
|
||||
transport_mdns.cpp \
|
||||
|
||||
LOCAL_SRC_FILES_darwin := $(LIBADB_darwin_SRC_FILES)
|
||||
LOCAL_SRC_FILES_linux := $(LIBADB_linux_SRC_FILES)
|
||||
LOCAL_SRC_FILES_windows := $(LIBADB_windows_SRC_FILES)
|
||||
|
||||
LOCAL_SANITIZE := $(adb_host_sanitize)
|
||||
|
||||
# Even though we're building a static library (and thus there's no link step for
|
||||
# this to take effect), this adds the includes to our path.
|
||||
LOCAL_STATIC_LIBRARIES := libcrypto_utils libcrypto libbase libmdnssd libusb
|
||||
|
||||
LOCAL_C_INCLUDES_windows := development/host/windows/usb/api/
|
||||
LOCAL_MULTILIB := first
|
||||
|
||||
include $(BUILD_HOST_STATIC_LIBRARY)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := adbd_test
|
||||
LOCAL_CFLAGS := -DADB_HOST=0 $(LIBADB_CFLAGS)
|
||||
LOCAL_SRC_FILES := \
|
||||
$(LIBADB_TEST_SRCS) \
|
||||
$(LIBADB_TEST_linux_SRCS) \
|
||||
shell_service.cpp \
|
||||
shell_service_protocol.cpp \
|
||||
shell_service_protocol_test.cpp \
|
||||
shell_service_test.cpp \
|
||||
|
||||
LOCAL_SANITIZE := $(adb_target_sanitize)
|
||||
LOCAL_STATIC_LIBRARIES := libadbd libcrypto_utils libcrypto libusb libmdnssd
|
||||
LOCAL_SHARED_LIBRARIES := liblog libbase libcutils
|
||||
include $(BUILD_NATIVE_TEST)
|
||||
|
||||
# libdiagnose_usb
|
||||
# =========================================================
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := libdiagnose_usb
|
||||
LOCAL_MODULE_HOST_OS := darwin linux windows
|
||||
LOCAL_CFLAGS := $(LIBADB_CFLAGS)
|
||||
LOCAL_SRC_FILES := diagnose_usb.cpp
|
||||
# Even though we're building a static library (and thus there's no link step for
|
||||
# this to take effect), this adds the includes to our path.
|
||||
LOCAL_STATIC_LIBRARIES := libbase
|
||||
include $(BUILD_HOST_STATIC_LIBRARY)
|
||||
|
||||
# adb_test
|
||||
# =========================================================
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := adb_test
|
||||
LOCAL_MODULE_HOST_OS := darwin linux windows
|
||||
LOCAL_CFLAGS := -DADB_HOST=1 $(LIBADB_CFLAGS)
|
||||
LOCAL_CFLAGS_windows := $(LIBADB_windows_CFLAGS)
|
||||
LOCAL_CFLAGS_linux := $(LIBADB_linux_CFLAGS)
|
||||
LOCAL_CFLAGS_darwin := $(LIBADB_darwin_CFLAGS)
|
||||
LOCAL_SRC_FILES := \
|
||||
$(LIBADB_TEST_SRCS) \
|
||||
adb_client.cpp \
|
||||
bugreport.cpp \
|
||||
bugreport_test.cpp \
|
||||
line_printer.cpp \
|
||||
services.cpp \
|
||||
shell_service_protocol.cpp \
|
||||
shell_service_protocol_test.cpp \
|
||||
|
||||
LOCAL_SRC_FILES_linux := $(LIBADB_TEST_linux_SRCS)
|
||||
LOCAL_SRC_FILES_darwin := $(LIBADB_TEST_darwin_SRCS)
|
||||
LOCAL_SRC_FILES_windows := $(LIBADB_TEST_windows_SRCS)
|
||||
LOCAL_SANITIZE := $(adb_host_sanitize)
|
||||
LOCAL_STATIC_LIBRARIES := \
|
||||
libadb \
|
||||
libbase \
|
||||
libcrypto_utils \
|
||||
libcrypto \
|
||||
libcutils \
|
||||
libdiagnose_usb \
|
||||
libmdnssd \
|
||||
libgmock_host \
|
||||
libusb \
|
||||
|
||||
# Set entrypoint to wmain from sysdeps_win32.cpp instead of main
|
||||
LOCAL_LDFLAGS_windows := -municode
|
||||
LOCAL_LDLIBS_linux := -lrt -ldl -lpthread
|
||||
LOCAL_LDLIBS_darwin := -framework CoreFoundation -framework IOKit -lobjc
|
||||
LOCAL_LDLIBS_windows := -lws2_32 -luserenv
|
||||
LOCAL_SHARED_LIBRARIES_windows := AdbWinApi
|
||||
|
||||
LOCAL_MULTILIB := first
|
||||
|
||||
include $(BUILD_HOST_NATIVE_TEST)
|
||||
|
||||
# adb host tool
|
||||
# =========================================================
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
LOCAL_LDLIBS_linux := -lrt -ldl -lpthread
|
||||
|
||||
LOCAL_LDLIBS_darwin := -lpthread -framework CoreFoundation -framework IOKit -framework Carbon -lobjc
|
||||
|
||||
# Use wmain instead of main
|
||||
LOCAL_LDFLAGS_windows := -municode
|
||||
LOCAL_LDLIBS_windows := -lws2_32 -lgdi32
|
||||
LOCAL_SHARED_LIBRARIES_windows := AdbWinApi
|
||||
LOCAL_REQUIRED_MODULES_windows := AdbWinUsbApi
|
||||
|
||||
LOCAL_SRC_FILES := \
|
||||
adb_client.cpp \
|
||||
bugreport.cpp \
|
||||
client/main.cpp \
|
||||
console.cpp \
|
||||
commandline.cpp \
|
||||
file_sync_client.cpp \
|
||||
line_printer.cpp \
|
||||
services.cpp \
|
||||
shell_service_protocol.cpp \
|
||||
|
||||
LOCAL_CFLAGS += \
|
||||
$(ADB_COMMON_CFLAGS) \
|
||||
-D_GNU_SOURCE \
|
||||
-DADB_HOST=1 \
|
||||
|
||||
LOCAL_CFLAGS_windows := \
|
||||
$(ADB_COMMON_windows_CFLAGS)
|
||||
|
||||
LOCAL_CFLAGS_linux := \
|
||||
$(ADB_COMMON_linux_CFLAGS) \
|
||||
|
||||
LOCAL_CFLAGS_darwin := \
|
||||
$(ADB_COMMON_darwin_CFLAGS) \
|
||||
-Wno-sizeof-pointer-memaccess -Wno-unused-parameter \
|
||||
|
||||
LOCAL_MODULE := adb
|
||||
LOCAL_MODULE_TAGS := debug
|
||||
LOCAL_MODULE_HOST_OS := darwin linux windows
|
||||
|
||||
LOCAL_SANITIZE := $(adb_host_sanitize)
|
||||
LOCAL_STATIC_LIBRARIES := \
|
||||
libadb \
|
||||
libbase \
|
||||
libcrypto_utils \
|
||||
libcrypto \
|
||||
libdiagnose_usb \
|
||||
liblog \
|
||||
libmdnssd \
|
||||
libusb \
|
||||
|
||||
# Don't use libcutils on Windows.
|
||||
LOCAL_STATIC_LIBRARIES_darwin := libcutils
|
||||
LOCAL_STATIC_LIBRARIES_linux := libcutils
|
||||
|
||||
LOCAL_CXX_STL := libc++_static
|
||||
|
||||
# Don't add anything here, we don't want additional shared dependencies
|
||||
# on the host adb tool, and shared libraries that link against libc++
|
||||
# will violate ODR
|
||||
LOCAL_SHARED_LIBRARIES :=
|
||||
|
||||
include $(BUILD_HOST_EXECUTABLE)
|
||||
|
||||
$(call dist-for-goals,dist_files sdk win_sdk,$(LOCAL_BUILT_MODULE))
|
||||
ifdef HOST_CROSS_OS
|
||||
# Archive adb.exe for win_sdk build.
|
||||
$(call dist-for-goals,win_sdk,$(ALL_MODULES.host_cross_adb.BUILT))
|
||||
endif
|
||||
|
||||
|
||||
# adbd device daemon
|
||||
# =========================================================
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
LOCAL_SRC_FILES := \
|
||||
daemon/main.cpp \
|
||||
daemon/mdns.cpp \
|
||||
services.cpp \
|
||||
file_sync_service.cpp \
|
||||
framebuffer_service.cpp \
|
||||
remount_service.cpp \
|
||||
set_verity_enable_state_service.cpp \
|
||||
shell_service.cpp \
|
||||
shell_service_protocol.cpp \
|
||||
|
||||
LOCAL_CFLAGS := \
|
||||
$(ADB_COMMON_CFLAGS) \
|
||||
$(ADB_COMMON_linux_CFLAGS) \
|
||||
-DADB_HOST=0 \
|
||||
-D_GNU_SOURCE \
|
||||
-Wno-deprecated-declarations \
|
||||
|
||||
LOCAL_CFLAGS += -DALLOW_ADBD_NO_AUTH=$(if $(filter userdebug eng,$(TARGET_BUILD_VARIANT)),1,0)
|
||||
|
||||
ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))
|
||||
LOCAL_CFLAGS += -DALLOW_ADBD_DISABLE_VERITY=1
|
||||
LOCAL_CFLAGS += -DALLOW_ADBD_ROOT=1
|
||||
endif
|
||||
|
||||
LOCAL_MODULE := adbd
|
||||
|
||||
LOCAL_FORCE_STATIC_EXECUTABLE := true
|
||||
|
||||
LOCAL_SANITIZE := $(adb_target_sanitize)
|
||||
LOCAL_STRIP_MODULE := keep_symbols
|
||||
LOCAL_STATIC_LIBRARIES := \
|
||||
libadbd \
|
||||
libasyncio \
|
||||
libavb_user \
|
||||
libbase \
|
||||
libqemu_pipe \
|
||||
libbootloader_message \
|
||||
libfs_mgr \
|
||||
libfec \
|
||||
libfec_rs \
|
||||
libselinux \
|
||||
liblog \
|
||||
libext4_utils \
|
||||
libsquashfs_utils \
|
||||
libcutils \
|
||||
libbase \
|
||||
libcrypto_utils \
|
||||
libcrypto \
|
||||
libminijail \
|
||||
libmdnssd \
|
||||
libdebuggerd_handler \
|
||||
|
||||
include $(BUILD_EXECUTABLE)
|
||||
|
||||
# adb integration test
|
||||
# =========================================================
|
||||
$(call dist-for-goals,sdk,$(ALL_MODULES.adb_integration_test_adb.BUILT))
|
||||
$(call dist-for-goals,sdk,$(ALL_MODULES.adb_integration_test_device.BUILT))
|
||||
|
||||
include $(call first-makefiles-under,$(LOCAL_PATH))
|
|
@ -1,2 +0,0 @@
|
|||
set noparent
|
||||
filter=-build/header_guard,-build/include,-readability/function,-whitespace/indent
|
|
@ -64,9 +64,9 @@ std::string adb_version() {
|
|||
// Don't change the format of this --- it's parsed by ddmlib.
|
||||
return android::base::StringPrintf(
|
||||
"Android Debug Bridge version %d.%d.%d\n"
|
||||
"Version %s\n"
|
||||
"Version TODO: b/71719137\n"
|
||||
"Installed as %s\n",
|
||||
ADB_VERSION_MAJOR, ADB_VERSION_MINOR, ADB_SERVER_VERSION, ADB_VERSION,
|
||||
ADB_VERSION_MAJOR, ADB_VERSION_MINOR, ADB_SERVER_VERSION,
|
||||
android::base::GetExecutablePath().c_str());
|
||||
}
|
||||
|
||||
|
|
|
@ -128,7 +128,7 @@ static void jdwp_process_event(int socket, unsigned events, void* _proc);
|
|||
static void jdwp_process_list_updated(void);
|
||||
|
||||
struct JdwpProcess;
|
||||
static std::list<std::unique_ptr<JdwpProcess>> _jdwp_list;
|
||||
static auto& _jdwp_list = *new std::list<std::unique_ptr<JdwpProcess>>();
|
||||
|
||||
struct JdwpProcess {
|
||||
explicit JdwpProcess(int socket) {
|
||||
|
@ -511,7 +511,7 @@ struct JdwpTracker : public asocket {
|
|||
bool need_initial;
|
||||
};
|
||||
|
||||
static std::vector<std::unique_ptr<JdwpTracker>> _jdwp_trackers;
|
||||
static auto& _jdwp_trackers = *new std::vector<std::unique_ptr<JdwpTracker>>();
|
||||
|
||||
static void jdwp_process_list_updated(void) {
|
||||
std::string data;
|
|
@ -158,9 +158,9 @@ int adbd_main(int server_port) {
|
|||
// descriptor will always be open.
|
||||
adbd_cloexec_auth_socket();
|
||||
|
||||
if (ALLOW_ADBD_NO_AUTH && !android::base::GetBoolProperty("ro.adb.secure", false)) {
|
||||
auth_required = false;
|
||||
}
|
||||
#if defined(ALLOW_ADBD_NO_AUTH)
|
||||
auth_required = android::base::GetBoolProperty("ro.adb.secure", true);
|
||||
#endif
|
||||
|
||||
adbd_auth_init();
|
||||
|
||||
|
|
|
@ -38,12 +38,13 @@
|
|||
#include <android-base/strings.h>
|
||||
#include <android-base/thread_annotations.h>
|
||||
|
||||
#include <diagnose_usb.h>
|
||||
|
||||
#include "adb.h"
|
||||
#include "adb_auth.h"
|
||||
#include "adb_io.h"
|
||||
#include "adb_trace.h"
|
||||
#include "adb_utils.h"
|
||||
#include "diagnose_usb.h"
|
||||
#include "fdevent.h"
|
||||
|
||||
static void transport_unref(atransport *t);
|
||||
|
@ -736,9 +737,7 @@ atransport* acquire_one_transport(TransportType type, const char* serial, Transp
|
|||
std::unique_lock<std::recursive_mutex> lock(transport_lock);
|
||||
for (const auto& t : transport_list) {
|
||||
if (t->GetConnectionState() == kCsNoPerm) {
|
||||
#if ADB_HOST
|
||||
*error_out = UsbNoPermissionsLongHelpText();
|
||||
#endif
|
||||
continue;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2016 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/* For when mDNS discovery is unsupported */
|
||||
void init_mdns_transport_discovery(void) {}
|
13
diagnose_usb/Android.bp
Normal file
13
diagnose_usb/Android.bp
Normal file
|
@ -0,0 +1,13 @@
|
|||
cc_library_static {
|
||||
name: "libdiagnose_usb",
|
||||
cflags: ["-Wall", "-Wextra", "-Werror"],
|
||||
host_supported: true,
|
||||
target: {
|
||||
windows: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
srcs: ["diagnose_usb.cpp"],
|
||||
export_include_dirs: ["include"],
|
||||
static_libs: ["libbase"],
|
||||
}
|
|
@ -33,7 +33,7 @@ static const char kPermissionsHelpUrl[] = "http://developer.android.com/tools/de
|
|||
// Returns a message describing any potential problems we find with udev, or an empty string if we
|
||||
// can't find plugdev information (i.e. udev is not installed).
|
||||
static std::string GetUdevProblem() {
|
||||
#if defined(__linux__)
|
||||
#if defined(__linux__) && !defined(__BIONIC__)
|
||||
errno = 0;
|
||||
group* plugdev_group = getgrnam("plugdev");
|
||||
|
Loading…
Reference in a new issue