mirror of
https://github.com/Genymobile/scrcpy.git
synced 2025-08-03 14:49:29 +00:00
Build on Windows with libusb support
This commit is contained in:
parent
0d3ed2f669
commit
26ee63d9e9
5 changed files with 49 additions and 1 deletions
|
@ -73,7 +73,7 @@ if v4l2_support
|
||||||
src += [ 'src/v4l2_sink.c' ]
|
src += [ 'src/v4l2_sink.c' ]
|
||||||
endif
|
endif
|
||||||
|
|
||||||
usb_support = host_machine.system() == 'linux'
|
usb_support = host_machine.system() == 'linux' or host_machine.system() == 'windows'
|
||||||
if usb_support
|
if usb_support
|
||||||
src += [
|
src += [
|
||||||
'src/usb/aoa_hid.c',
|
'src/usb/aoa_hid.c',
|
||||||
|
@ -140,9 +140,22 @@ else
|
||||||
include_directories: include_directories(ffmpeg_include_dir)
|
include_directories: include_directories(ffmpeg_include_dir)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
prebuilt_libusb = meson.get_cross_property('prebuilt_libusb')
|
||||||
|
prebuilt_libusb_root = meson.get_cross_property('prebuilt_libusb_root')
|
||||||
|
libusb_bin_dir = meson.current_source_dir() + '/../prebuilt-deps/data/' + prebuilt_libusb + '/dll'
|
||||||
|
libusb_include_dir = '../prebuilt-deps/data/' + prebuilt_libusb_root + '/include'
|
||||||
|
|
||||||
|
libusb = declare_dependency(
|
||||||
|
dependencies: [
|
||||||
|
cc.find_library('libusb-1.0', dirs: libusb_bin_dir),
|
||||||
|
],
|
||||||
|
include_directories: include_directories(libusb_include_dir)
|
||||||
|
)
|
||||||
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
ffmpeg,
|
ffmpeg,
|
||||||
sdl2,
|
sdl2,
|
||||||
|
libusb,
|
||||||
cc.find_library('mingw32')
|
cc.find_library('mingw32')
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
|
@ -21,3 +21,5 @@ ffmpeg_avformat = 'avformat-58'
|
||||||
ffmpeg_avutil = 'avutil-56'
|
ffmpeg_avutil = 'avutil-56'
|
||||||
prebuilt_ffmpeg = 'ffmpeg-win32-4.3.1'
|
prebuilt_ffmpeg = 'ffmpeg-win32-4.3.1'
|
||||||
prebuilt_sdl2 = 'SDL2-2.0.20/i686-w64-mingw32'
|
prebuilt_sdl2 = 'SDL2-2.0.20/i686-w64-mingw32'
|
||||||
|
prebuilt_libusb_root = 'libusb-1.0.25'
|
||||||
|
prebuilt_libusb = prebuilt_libusb_root + '/MinGW32'
|
||||||
|
|
|
@ -21,3 +21,5 @@ ffmpeg_avformat = 'avformat-59'
|
||||||
ffmpeg_avutil = 'avutil-57'
|
ffmpeg_avutil = 'avutil-57'
|
||||||
prebuilt_ffmpeg = 'ffmpeg-win64-5.0'
|
prebuilt_ffmpeg = 'ffmpeg-win64-5.0'
|
||||||
prebuilt_sdl2 = 'SDL2-2.0.20/x86_64-w64-mingw32'
|
prebuilt_sdl2 = 'SDL2-2.0.20/x86_64-w64-mingw32'
|
||||||
|
prebuilt_libusb_root = 'libusb-1.0.25'
|
||||||
|
prebuilt_libusb = prebuilt_libusb_root + '/MinGW64'
|
||||||
|
|
28
prebuilt-deps/prepare-libusb.sh
Executable file
28
prebuilt-deps/prepare-libusb.sh
Executable file
|
@ -0,0 +1,28 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
set -e
|
||||||
|
DIR=$(dirname ${BASH_SOURCE[0]})
|
||||||
|
cd "$DIR"
|
||||||
|
. common
|
||||||
|
mkdir -p "$PREBUILT_DATA_DIR"
|
||||||
|
cd "$PREBUILT_DATA_DIR"
|
||||||
|
|
||||||
|
DEP_DIR=libusb-1.0.25
|
||||||
|
|
||||||
|
FILENAME=libusb-1.0.25.7z
|
||||||
|
SHA256SUM=3d1c98416f454026034b2b5d67f8a294053898cb70a8b489874e75b136c6674d
|
||||||
|
|
||||||
|
if [[ -d "$DEP_DIR" ]]
|
||||||
|
then
|
||||||
|
echo "$DEP_DIR" found
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
get_file "https://github.com/libusb/libusb/releases/download/v1.0.25/$FILENAME" "$FILENAME" "$SHA256SUM"
|
||||||
|
|
||||||
|
mkdir "$DEP_DIR"
|
||||||
|
cd "$DEP_DIR"
|
||||||
|
|
||||||
|
7z x "../$FILENAME" \
|
||||||
|
MinGW32/dll/libusb-1.0.dll \
|
||||||
|
MinGW64/dll/libusb-1.0.dll \
|
||||||
|
include /
|
|
@ -66,6 +66,7 @@ prepare-deps-win32:
|
||||||
@prebuilt-deps/prepare-adb.sh
|
@prebuilt-deps/prepare-adb.sh
|
||||||
@prebuilt-deps/prepare-sdl.sh
|
@prebuilt-deps/prepare-sdl.sh
|
||||||
@prebuilt-deps/prepare-ffmpeg-win32.sh
|
@prebuilt-deps/prepare-ffmpeg-win32.sh
|
||||||
|
@prebuilt-deps/prepare-libusb.sh
|
||||||
|
|
||||||
build-win32: prepare-deps-win32
|
build-win32: prepare-deps-win32
|
||||||
[ -d "$(WIN32_BUILD_DIR)" ] || ( mkdir "$(WIN32_BUILD_DIR)" && \
|
[ -d "$(WIN32_BUILD_DIR)" ] || ( mkdir "$(WIN32_BUILD_DIR)" && \
|
||||||
|
@ -107,6 +108,7 @@ dist-win32: build-server build-win32
|
||||||
cp prebuilt-deps/data/platform-tools-31.0.3/AdbWinApi.dll "$(DIST)/$(WIN32_TARGET_DIR)/"
|
cp prebuilt-deps/data/platform-tools-31.0.3/AdbWinApi.dll "$(DIST)/$(WIN32_TARGET_DIR)/"
|
||||||
cp prebuilt-deps/data/platform-tools-31.0.3/AdbWinUsbApi.dll "$(DIST)/$(WIN32_TARGET_DIR)/"
|
cp prebuilt-deps/data/platform-tools-31.0.3/AdbWinUsbApi.dll "$(DIST)/$(WIN32_TARGET_DIR)/"
|
||||||
cp prebuilt-deps/data/SDL2-2.0.20/i686-w64-mingw32/bin/SDL2.dll "$(DIST)/$(WIN32_TARGET_DIR)/"
|
cp prebuilt-deps/data/SDL2-2.0.20/i686-w64-mingw32/bin/SDL2.dll "$(DIST)/$(WIN32_TARGET_DIR)/"
|
||||||
|
cp prebuilt-deps/data/libusb-1.0.25/MinGW32/dll/libusb-1.0.dll "$(DIST)/$(WIN32_TARGET_DIR)/"
|
||||||
|
|
||||||
dist-win64: build-server build-win64
|
dist-win64: build-server build-win64
|
||||||
mkdir -p "$(DIST)/$(WIN64_TARGET_DIR)"
|
mkdir -p "$(DIST)/$(WIN64_TARGET_DIR)"
|
||||||
|
@ -125,6 +127,7 @@ dist-win64: build-server build-win64
|
||||||
cp prebuilt-deps/data/platform-tools-31.0.3/AdbWinApi.dll "$(DIST)/$(WIN64_TARGET_DIR)/"
|
cp prebuilt-deps/data/platform-tools-31.0.3/AdbWinApi.dll "$(DIST)/$(WIN64_TARGET_DIR)/"
|
||||||
cp prebuilt-deps/data/platform-tools-31.0.3/AdbWinUsbApi.dll "$(DIST)/$(WIN64_TARGET_DIR)/"
|
cp prebuilt-deps/data/platform-tools-31.0.3/AdbWinUsbApi.dll "$(DIST)/$(WIN64_TARGET_DIR)/"
|
||||||
cp prebuilt-deps/data/SDL2-2.0.20/x86_64-w64-mingw32/bin/SDL2.dll "$(DIST)/$(WIN64_TARGET_DIR)/"
|
cp prebuilt-deps/data/SDL2-2.0.20/x86_64-w64-mingw32/bin/SDL2.dll "$(DIST)/$(WIN64_TARGET_DIR)/"
|
||||||
|
cp prebuilt-deps/data/libusb-1.0.25/MinGW64/dll/libusb-1.0.dll "$(DIST)/$(WIN64_TARGET_DIR)/"
|
||||||
|
|
||||||
zip-win32: dist-win32
|
zip-win32: dist-win32
|
||||||
cd "$(DIST)/$(WIN32_TARGET_DIR)"; \
|
cd "$(DIST)/$(WIN32_TARGET_DIR)"; \
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue