1include rules_yocto.mk 2NAME = adbd 3 4SOURCES = \ 5 adb/adbconnection/adbconnection_server.cpp \ 6 adb/daemon/auth.cpp \ 7 adb/daemon/file_sync_service.cpp \ 8 adb/daemon/file_sync_service.h \ 9 adb/daemon/framebuffer_service.cpp \ 10 adb/daemon/framebuffer_service.h \ 11 adb/daemon/jdwp_service.cpp \ 12 adb/daemon/main.cpp \ 13 adb/daemon/restart_service.cpp \ 14 adb/daemon/restart_service.h \ 15 adb/daemon/services.cpp \ 16 adb/daemon/shell_service.cpp \ 17 adb/daemon/shell_service.h \ 18 adb/daemon/usb_ffs.cpp \ 19 adb/daemon/usb_legacy.cpp \ 20 adb/daemon/usb.cpp \ 21 adb/shell_service_protocol.cpp \ 22 adb/adb.cpp \ 23 adb/adb_io.cpp \ 24 adb/adb_listeners.cpp \ 25 adb/adb_trace.cpp \ 26 adb/adb_unique_fd.cpp \ 27 adb/adb_utils.cpp \ 28 adb/fdevent/fdevent.cpp \ 29 adb/fdevent/fdevent_epoll.cpp \ 30 adb/services.cpp \ 31 adb/sockets.cpp \ 32 adb/socket_spec.cpp \ 33 adb/sysdeps/errno.cpp \ 34 adb/sysdeps/posix/network.cpp \ 35 adb/sysdeps_unix.cpp \ 36 adb/transport.cpp \ 37 adb/transport_fd.cpp \ 38 adb/transport_local.cpp \ 39 adb/transport_usb.cpp \ 40 adb/types.cpp \ 41 diagnose_usb/diagnose_usb.cpp \ 42 libasyncio/AsyncIO.cpp \ 43 44SOURCES := $(foreach source, $(SOURCES), system/core/$(source)) 45 46SOURCES += \ 47 frameworks/native/libs/adbd_auth/adbd_auth.cpp 48 49CXXFLAGS += -std=gnu++20 50CPPFLAGS += -Isystem/coreinclude -Isystem/core/adb -Isystem/core/base/include -Idebian/out/system/core -Isystem/tools/mkbootimg/include/bootimg -Isystem/core/fs_mgr/include \ 51 -Isystem/core/fs_mgr/include_fstab \ 52 -DADB_VERSION='"$(DEB_VERSION)"' -D_GNU_SOURCE 53LDFLAGS += -Wl,-rpath='$$ORIGIN/../lib/android' -Wl,-rpath-link='$$ORIGIN/../lib/android' \ 54 -lpthread -Ldebian/out/system/core -Ldebian/out/external/boringssl -lbase -lcrypto_utils -l:libcrypto.a -lcutils -llog -lresolv 55 56PAGE_SIZE ?= 4096 57 58CXXFLAGS += -UADB_HOST 59CXXFLAGS += -DADB_HOST=0 60CXXFLAGS += -DALLOW_ADBD_DISABLE_VERITY 61CXXFLAGS += -DALLOW_ADBD_NO_AUTH 62CXXFLAGS += -DPLATFORM_TOOLS_VERSION='"28.0.2"' 63CXXFLAGS += -Isystem/core/diagnose_usb/include 64CXXFLAGS += -Isystem/core/adb/daemon/include 65CXXFLAGS += -Isystem/core/adb/adbconnection/include 66CXXFLAGS += -Isystem/core/libasyncio/include 67CXXFLAGS += -Isystem/core/libcutils/include 68CXXFLAGS += -Isystem/core/libcrypto_utils/include 69CXXFLAGS += -Isystem/core/liblog/include/ 70CXXFLAGS += -Isystem/core/libutils/include 71CXXFLAGS += -Iframeworks/native/libs/adbd_auth/include 72CXXFLAGS += -Wno-c++11-narrowing 73CXXFLAGS += -DPAGE_SIZE=$(PAGE_SIZE) 74 75 76# -latomic should be the last library specified 77# https://github.com/android/ndk/issues/589 78ifneq ($(filter armel mipsel,$(DEB_HOST_ARCH)),) 79 LDFLAGS += -latomic 80endif 81 82build: $(SOURCES) 83 mkdir --parents debian/out/system/core 84 $(CXX) $^ -o debian/out/system/core/adbd $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) 85 86clean: 87 $(RM) debian/out/system/core/adbd 88