vendor/boringssl/crypto/curve25519/internal.h hunk was added in upstream. https://boringssl.googlesource.com/boringssl.git/+/80b08dfe5ef7d9190fa28d8204f2f7e8612134ee%5E%21/ use bundled libusb as explained in release page.
371 lines
11 KiB
Diff
371 lines
11 KiB
Diff
--- a/vendor/CMakeLists.adb.txt
|
|
+++ b/vendor/CMakeLists.adb.txt
|
|
@@ -31,24 +31,38 @@
|
|
adb/pairing_connection/pairing_connection.cpp
|
|
adb/services.cpp
|
|
adb/socket_spec.cpp
|
|
- adb/sysdeps_unix.cpp
|
|
adb/sysdeps/errno.cpp
|
|
- adb/sysdeps/posix/network.cpp
|
|
${ADB_APP_PROCESSES_PROTO_SRCS} ${ADB_APP_PROCESSES_PROTO_HDRS}
|
|
${ADB_HOST_PROTO_SRCS} ${ADB_HOST_PROTO_HDRS}
|
|
${ADB_KNOWN_HOSTS_PROTO_SRCS} ${ADB_KNOWN_HOSTS_PROTO_HDRS}
|
|
${ADB_KEY_TYPE_PROTO_SRCS} ${ADB_KEY_TYPE_PROTO_HDRS}
|
|
${ADB_PAIRING_PROTO_SRCS} ${ADB_PAIRING_PROTO_HDRS})
|
|
|
|
-if(APPLE)
|
|
+if(WIN32)
|
|
+ list(APPEND libadb_SOURCES
|
|
+ adb/client/usb_windows.cpp
|
|
+ adb/sysdeps_win32.cpp
|
|
+ adb/sysdeps/win32/errno.cpp
|
|
+ adb/sysdeps/win32/stat.cpp)
|
|
+elseif(APPLE)
|
|
list(APPEND libadb_SOURCES
|
|
- adb/client/usb_osx.cpp)
|
|
+ adb/client/usb_osx.cpp
|
|
+ adb/sysdeps_unix.cpp
|
|
+ adb/sysdeps/posix/network.cpp)
|
|
else()
|
|
list(APPEND libadb_SOURCES
|
|
- adb/client/usb_linux.cpp)
|
|
+ adb/client/usb_linux.cpp
|
|
+ adb/sysdeps_unix.cpp
|
|
+ adb/sysdeps/posix/network.cpp)
|
|
endif()
|
|
|
|
add_library(libadb STATIC ${libadb_SOURCES})
|
|
+if(WIN32)
|
|
+ target_compile_definitions(libadb PRIVATE
|
|
+ UNICODE _UNICODE _POSIX _POSIX_SOURCE)
|
|
+target_include_directories(libadb PUBLIC
|
|
+ development/host/windows/usb/api)
|
|
+endif()
|
|
target_compile_definitions(libadb PRIVATE -D_GNU_SOURCE)
|
|
target_compile_definitions(libadb PUBLIC -DADB_HOST=1)
|
|
target_include_directories(libadb PUBLIC
|
|
@@ -98,6 +112,9 @@
|
|
|
|
target_compile_definitions(liblog PRIVATE
|
|
-DLIBLOG_LOG_TAG=1006 -D_XOPEN_SOURCE=700 -DFAKE_LOG_DEVICE=1)
|
|
+if(WIN32)
|
|
+ target_compile_definitions(liblog PRIVATE WIN32_LEAN_AND_MEAN)
|
|
+endif()
|
|
target_include_directories(liblog PUBLIC
|
|
core/include
|
|
logging/liblog/include
|
|
@@ -105,26 +122,35 @@
|
|
libbase/include)
|
|
|
|
set(libcutils_SOURCES
|
|
- core/libcutils/android_get_control_file.cpp
|
|
- core/libcutils/ashmem-host.cpp
|
|
core/libcutils/config_utils.cpp
|
|
- core/libcutils/fs.cpp
|
|
- core/libcutils/hashmap.cpp
|
|
core/libcutils/iosched_policy.cpp
|
|
core/libcutils/load_file.cpp
|
|
- core/libcutils/multiuser.cpp
|
|
core/libcutils/native_handle.cpp
|
|
core/libcutils/properties.cpp
|
|
core/libcutils/record_stream.cpp
|
|
- core/libcutils/socket_inaddr_any_server_unix.cpp
|
|
- core/libcutils/socket_local_client_unix.cpp
|
|
- core/libcutils/socket_local_server_unix.cpp
|
|
- core/libcutils/socket_network_client_unix.cpp
|
|
- core/libcutils/sockets_unix.cpp
|
|
core/libcutils/sockets.cpp
|
|
- core/libcutils/str_parms.cpp
|
|
- core/libcutils/strlcpy.c
|
|
- core/libcutils/trace-host.cpp)
|
|
+ core/libcutils/strlcpy.c)
|
|
+
|
|
+if (WIN32)
|
|
+ list(APPEND libcutils_SOURCES
|
|
+ core/libcutils/socket_inaddr_any_server_windows.cpp
|
|
+ core/libcutils/socket_network_client_windows.cpp
|
|
+ core/libcutils/sockets_windows.cpp)
|
|
+else()
|
|
+ list(APPEND libcutils_SOURCES
|
|
+ core/libcutils/android_get_control_file.cpp
|
|
+ core/libcutils/ashmem-host.cpp
|
|
+ core/libcutils/fs.cpp
|
|
+ core/libcutils/hashmap.cpp
|
|
+ core/libcutils/multiuser.cpp
|
|
+ core/libcutils/socket_inaddr_any_server_unix.cpp
|
|
+ core/libcutils/socket_local_client_unix.cpp
|
|
+ core/libcutils/socket_local_server_unix.cpp
|
|
+ core/libcutils/socket_network_client_unix.cpp
|
|
+ core/libcutils/sockets_unix.cpp
|
|
+ core/libcutils/str_parms.cpp
|
|
+ core/libcutils/trace-host.cpp)
|
|
+endif()
|
|
|
|
if (NOT APPLE AND NOT WIN32)
|
|
list(APPEND libcutils_SOURCES
|
|
@@ -159,7 +185,7 @@
|
|
target_include_directories(libcrypto PUBLIC
|
|
core/libcrypto_utils/include boringssl/include)
|
|
|
|
-add_executable(adb
|
|
+set(adb_SOURCES
|
|
adb/adb.cpp
|
|
adb/adb_io.cpp
|
|
adb/adb_listeners.cpp
|
|
@@ -168,7 +194,6 @@
|
|
adb/adb_utils.cpp
|
|
adb/fdevent/fdevent.cpp
|
|
adb/fdevent/fdevent_poll.cpp
|
|
- adb/fdevent/fdevent_epoll.cpp
|
|
adb/shell_service_protocol.cpp
|
|
adb/sockets.cpp
|
|
adb/socket_spec.cpp
|
|
@@ -179,6 +204,18 @@
|
|
adb/types.cpp
|
|
${ADB_KEY_TYPE_PROTO_HDRS})
|
|
|
|
+if(WIN32)
|
|
+ list(APPEND adb_SOURCES
|
|
+ )
|
|
+else()
|
|
+ list(APPEND adb_SOURCES
|
|
+ adb/fdevent/fdevent_epoll.cpp)
|
|
+endif()
|
|
+
|
|
+add_executable(adb ${adb_SOURCES})
|
|
+if(WIN32)
|
|
+ target_compile_definitions(adb PRIVATE _GNU_SOURCE _POSIX _POSIX_SOURCE)
|
|
+endif()
|
|
target_include_directories(adb PRIVATE
|
|
core/include libbase/include adb
|
|
core/libcrypto_utils/include boringssl/include)
|
|
@@ -204,6 +241,11 @@
|
|
PkgConfig::libusb-1.0
|
|
z
|
|
PkgConfig::libzstd)
|
|
+if(WIN32)
|
|
+ add_dependencies(adb AdbWinApi)
|
|
+ target_link_libraries(adb "${ADBWINAPI_LIBRARY}" ws2_32)
|
|
+ set_target_properties(adb PROPERTIES LINK_FLAGS "-municode")
|
|
+endif()
|
|
|
|
if(APPLE)
|
|
target_link_libraries(adb
|
|
--- a/vendor/CMakeLists.fastboot.txt
|
|
+++ b/vendor/CMakeLists.fastboot.txt
|
|
@@ -14,17 +14,7 @@
|
|
libbase/include)
|
|
|
|
add_library(libutil STATIC
|
|
- core/libutils/FileMap.cpp
|
|
- core/libutils/JenkinsHash.cpp
|
|
- core/libutils/LightRefBase.cpp
|
|
- core/libutils/NativeHandle.cpp
|
|
- core/libutils/Printer.cpp
|
|
- core/libutils/StopWatch.cpp
|
|
- core/libutils/SystemClock.cpp
|
|
- core/libutils/Threads.cpp
|
|
- core/libutils/Timers.cpp
|
|
- core/libutils/Tokenizer.cpp
|
|
- core/libutils/misc.cpp)
|
|
+ core/libutils/FileMap.cpp)
|
|
|
|
target_include_directories(libutil PUBLIC
|
|
core/include
|
|
@@ -43,6 +33,7 @@
|
|
|
|
# Only add common sources from libselinux_defaults and libselinux
|
|
# See the file list in selinux/libselinux/Android.bp
|
|
+if(NOT WIN32)
|
|
add_library(libselinux STATIC
|
|
selinux/libselinux/src/booleans.c
|
|
selinux/libselinux/src/callbacks.c
|
|
@@ -99,6 +90,7 @@
|
|
|
|
target_include_directories(libsepol PUBLIC
|
|
selinux/libsepol/include)
|
|
+endif(NOT WIN32)
|
|
|
|
set(fastboot_SOURCES
|
|
core/fastboot/bootimg_utils.cpp
|
|
@@ -116,7 +108,10 @@
|
|
core/fastboot/vendor_boot_img_utils.cpp
|
|
core/fastboot/util.cpp)
|
|
|
|
-if(APPLE)
|
|
+if(WIN32)
|
|
+ list(APPEND fastboot_SOURCES
|
|
+ core/fastboot/usb_windows.cpp)
|
|
+elseif(APPLE)
|
|
list(APPEND fastboot_SOURCES
|
|
core/fastboot/usb_osx.cpp)
|
|
else()
|
|
@@ -130,13 +125,24 @@
|
|
extras/ext4_utils/include extras/f2fs_utils
|
|
core/libziparchive/include mkbootimg/include/bootimg
|
|
core/fs_mgr/liblp/include core/fs_mgr/libstorage_literals avb)
|
|
+if(WIN32)
|
|
+ target_compile_definitions(fastboot PRIVATE WIN32_LEAN_AND_MEAN)
|
|
+ target_include_directories(fastboot PRIVATE development/host/windows/usb/api)
|
|
+endif()
|
|
target_compile_definitions(fastboot PRIVATE
|
|
-D_GNU_SOURCE -D_XOPEN_SOURCE=700 -DUSE_F2FS
|
|
-DANDROID_MKE2FS_NAME="${ANDROID_MKE2FS_NAME}")
|
|
target_link_libraries(fastboot
|
|
libsparse libzip libcutils liblog liblp libutil
|
|
- libbase libext4 libselinux libsepol libdiagnoseusb crypto
|
|
- z PkgConfig::libpcre2-8 Threads::Threads dl)
|
|
+ libbase libext4 libdiagnoseusb crypto
|
|
+ z PkgConfig::libpcre2-8 Threads::Threads)
|
|
+if(WIN32)
|
|
+ add_dependencies(fastboot AdbWinApi)
|
|
+ target_link_libraries(fastboot "${ADBWINAPI_LIBRARY}")
|
|
+else()
|
|
+ target_link_libraries(fastboot
|
|
+ libselinux libsepol dl)
|
|
+endif()
|
|
|
|
if(APPLE)
|
|
target_link_libraries(fastboot
|
|
--- a/vendor/CMakeLists.libbase.txt
|
|
+++ b/vendor/CMakeLists.libbase.txt
|
|
@@ -1,7 +1,6 @@
|
|
-add_library(libbase STATIC
|
|
- libbase/abi_compatibility.cpp
|
|
+set(libbase_SOURCES
|
|
+ libbase/abi_compatibility.cpp
|
|
libbase/chrono_utils.cpp
|
|
- libbase/cmsg.cpp
|
|
libbase/file.cpp
|
|
libbase/hex.cpp
|
|
libbase/logging.cpp
|
|
@@ -14,9 +13,22 @@
|
|
libbase/stringprintf.cpp
|
|
libbase/strings.cpp
|
|
libbase/threads.cpp
|
|
- libbase/test_utils.cpp
|
|
- libbase/errors_unix.cpp)
|
|
+ libbase/test_utils.cpp)
|
|
|
|
+if(WIN32)
|
|
+ list(APPEND libbase_SOURCES
|
|
+ libbase/errors_windows.cpp
|
|
+ libbase/utf8.cpp)
|
|
+else()
|
|
+ list(APPEND libbase_SOURCES
|
|
+ libbase/cmsg.cpp
|
|
+ libbase/errors_unix.cpp)
|
|
+endif()
|
|
+
|
|
+add_library(libbase STATIC ${libbase_SOURCES})
|
|
+if(WIN32)
|
|
+ target_compile_definitions(libbase PUBLIC _POSIX_C_SOURCE)
|
|
+endif()
|
|
target_include_directories(libbase PUBLIC
|
|
libbase/include core/include)
|
|
target_link_libraries(libbase PUBLIC fmt::fmt liblog)
|
|
--- a/vendor/CMakeLists.mkbootimg.txt
|
|
+++ b/vendor/CMakeLists.mkbootimg.txt
|
|
@@ -1,7 +1,7 @@
|
|
set(MKBOOTIMG_SCRIPTS_DIR ${CMAKE_INSTALL_DATADIR}/android-tools/mkbootimg)
|
|
install(PROGRAMS mkbootimg/mkbootimg.py DESTINATION ${MKBOOTIMG_SCRIPTS_DIR})
|
|
-add_custom_target(mkbootimg_symlink ALL COMMAND ${CMAKE_COMMAND} -E create_symlink
|
|
- ../${MKBOOTIMG_SCRIPTS_DIR}/mkbootimg.py
|
|
+add_custom_target(mkbootimg_symlink ALL COMMAND ${CMAKE_COMMAND} -E copy
|
|
+ ${CMAKE_CURRENT_SOURCE_DIR}/mkbootimg/mkbootimg.py
|
|
${CMAKE_CURRENT_BINARY_DIR}/mkbootimg)
|
|
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/mkbootimg DESTINATION ${CMAKE_INSTALL_BINDIR})
|
|
install(FILES mkbootimg/gki/generate_gki_certificate.py DESTINATION ${MKBOOTIMG_SCRIPTS_DIR}/gki)
|
|
--- a/vendor/CMakeLists.partition.txt
|
|
+++ b/vendor/CMakeLists.partition.txt
|
|
@@ -15,6 +15,7 @@
|
|
target_include_directories(liblp PUBLIC
|
|
core/fs_mgr/liblp/include)
|
|
|
|
+if(NOT WIN32)
|
|
protobuf_generate_cpp(DYNAMIC_PARTITIONS_DEVICE_INFO_PROTO_SRCS DYNAMIC_PARTITIONS_DEVICE_INFO_PROTO_HDRS
|
|
extras/partition_tools/dynamic_partitions_device_info.proto)
|
|
|
|
@@ -54,3 +55,4 @@
|
|
extras/partition_tools/lpunpack.cc)
|
|
target_link_libraries(lpunpack
|
|
libbase liblog liblp libsparse)
|
|
+endif(NOT WIN32)
|
|
--- a/vendor/CMakeLists.sparse.txt
|
|
+++ b/vendor/CMakeLists.sparse.txt
|
|
@@ -24,3 +24,6 @@
|
|
core/libsparse/append2simg.cpp)
|
|
target_link_libraries(append2simg
|
|
libsparse z libbase)
|
|
+if(WIN32)
|
|
+ target_compile_definitions(append2simg PRIVATE _GNU_SOURCE)
|
|
+endif()
|
|
--- a/vendor/CMakeLists.txt
|
|
+++ b/vendor/CMakeLists.txt
|
|
@@ -91,7 +91,7 @@
|
|
|
|
find_package(Protobuf CONFIG)
|
|
find_package(Protobuf REQUIRED)
|
|
-set(THREADS_PREFER_PTHREAD_FLAG ON)
|
|
+#set(THREADS_PREFER_PTHREAD_FLAG ON)
|
|
find_package(Threads REQUIRED)
|
|
|
|
check_symbol_exists(strlcpy "string.h" HAVE_STRLCPY)
|
|
@@ -110,24 +110,39 @@
|
|
include_directories(${PROTOBUF_INCLUDE_DIRS})
|
|
include_directories(${CMAKE_CURRENT_BINARY_DIR})
|
|
|
|
+if(WIN32)
|
|
+ set(ADBWINAPI_LIBRARY "${CMAKE_CURRENT_BINARY_DIR}/AdbWinApi.dll.a")
|
|
+ add_custom_command(
|
|
+ OUTPUT "${ADBWINAPI_LIBRARY}"
|
|
+ COMMAND dlltool -d "${CMAKE_CURRENT_SOURCE_DIR}/AdbWinApi.def" -l "${ADBWINAPI_LIBRARY}"
|
|
+ DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/AdbWinApi.def")
|
|
+ add_custom_target(AdbWinApi DEPENDS "${ADBWINAPI_LIBRARY}")
|
|
+endif(WIN32)
|
|
+
|
|
include(CMakeLists.libbase.txt)
|
|
include(CMakeLists.adb.txt)
|
|
include(CMakeLists.sparse.txt)
|
|
include(CMakeLists.fastboot.txt)
|
|
-include(CMakeLists.f2fstools.txt)
|
|
-include(CMakeLists.mke2fs.txt)
|
|
include(CMakeLists.partition.txt)
|
|
include(CMakeLists.mkbootimg.txt)
|
|
include(CMakeLists.libufdt.txt)
|
|
include(CMakeLists.avb.txt)
|
|
+if(NOT WIN32)
|
|
+ include(CMakeLists.f2fstools.txt)
|
|
+ include(CMakeLists.mke2fs.txt)
|
|
+endif()
|
|
|
|
# Targets which should be installed by `make install`.
|
|
install(TARGETS
|
|
- "${ANDROID_MKE2FS_NAME}"
|
|
adb
|
|
append2simg
|
|
fastboot
|
|
img2simg
|
|
+ simg2img
|
|
+ DESTINATION bin)
|
|
+if(NOT WIN32)
|
|
+install(TARGETS
|
|
+ "${ANDROID_MKE2FS_NAME}"
|
|
lpadd
|
|
lpdump
|
|
lpflash
|
|
@@ -135,11 +150,11 @@
|
|
lpunpack
|
|
make_f2fs
|
|
sload_f2fs
|
|
- simg2img
|
|
ext2simg
|
|
DESTINATION bin)
|
|
+endif()
|
|
|
|
-if(NOT APPLE)
|
|
+if(NOT APPLE AND NOT WIN32)
|
|
install(TARGETS
|
|
e2fsdroid
|
|
DESTINATION bin)
|