/
CMakeLists.txt
51 lines (44 loc) · 1.92 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
cmake_minimum_required(VERSION 3.15)
project(android-tools-win)
if(NOT MSVC)
message(FATAL_ERROR "ADB API for Windows can only be built using MSVC.")
endif()
# For static linking
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
set(adbwinapi_SOURCES
host/windows/usb/api/AdbWinApi.cpp
host/windows/usb/api/AdbWinApi.def
host/windows/usb/api/AdbWinApi.rc
host/windows/usb/api/adb_api.cpp
host/windows/usb/api/adb_api_instance.cpp
host/windows/usb/api/adb_endpoint_object.cpp
host/windows/usb/api/adb_helper_routines.cpp
host/windows/usb/api/adb_interface.cpp
host/windows/usb/api/adb_interface_enum.cpp
host/windows/usb/api/adb_io_completion.cpp
host/windows/usb/api/adb_legacy_endpoint_object.cpp
host/windows/usb/api/adb_legacy_interface.cpp
host/windows/usb/api/adb_legacy_io_completion.cpp
host/windows/usb/api/adb_object_handle.cpp
host/windows/usb/api/stdafx.cpp
)
add_library(AdbWinApi SHARED ${adbwinapi_SOURCES})
target_compile_definitions(AdbWinApi PRIVATE
ADBWIN_EXPORTS _CRT_NON_CONFORMING_SWPRINTFS _CRT_SECURE_NO_WARNINGS _UNICODE UNICODE
NTDDI_VERSION=NTDDI_WIN10 _WIN32_WINNT=_WIN32_WINNT_WIN10 WINVER=_WIN32_WINNT_WIN10)
target_link_libraries(AdbWinApi PRIVATE setupapi)
set(adbwinusbapi_SOURCES
host/windows/usb/winusb/AdbWinUsbApi.cpp
host/windows/usb/winusb/AdbWinUsbApi.def
host/windows/usb/winusb/AdbWinUsbApi.rc
host/windows/usb/winusb/adb_winusb_endpoint_object.cpp
host/windows/usb/winusb/adb_winusb_interface.cpp
host/windows/usb/winusb/adb_winusb_io_completion.cpp
host/windows/usb/winusb/stdafx.cpp
)
add_library(AdbWinUsbApi SHARED ${adbwinusbapi_SOURCES})
target_compile_definitions(AdbWinUsbApi PRIVATE
ADBWIN_EXPORTS _CRT_NON_CONFORMING_SWPRINTFS _CRT_SECURE_NO_WARNINGS _UNICODE UNICODE
NTDDI_VERSION=NTDDI_WIN10 _WIN32_WINNT=_WIN32_WINNT_WIN10 WINVER=_WIN32_WINNT_WIN10)
target_link_libraries(AdbWinUsbApi PRIVATE AdbWinApi winusb)
install(TARGETS AdbWinApi AdbWinUsbApi RUNTIME DESTINATION bin)