diff options
author | 3gg <3gg@shellblade.net> | 2025-08-30 16:53:58 -0700 |
---|---|---|
committer | 3gg <3gg@shellblade.net> | 2025-08-30 16:53:58 -0700 |
commit | 6aaedb813fa11ba0679c3051bc2eb28646b9506c (patch) | |
tree | 34acbfc9840e02cb4753e6306ea7ce978bf8b58e /src/contrib/SDL-3.2.20/.github/actions/setup-msvc-libusb | |
parent | 8f228ade99dd3d4c8da9b78ade1815c9adf85c8f (diff) |
Update to SDL3
Diffstat (limited to 'src/contrib/SDL-3.2.20/.github/actions/setup-msvc-libusb')
-rw-r--r-- | src/contrib/SDL-3.2.20/.github/actions/setup-msvc-libusb/action.yml | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/src/contrib/SDL-3.2.20/.github/actions/setup-msvc-libusb/action.yml b/src/contrib/SDL-3.2.20/.github/actions/setup-msvc-libusb/action.yml new file mode 100644 index 0000000..cbbf098 --- /dev/null +++ b/src/contrib/SDL-3.2.20/.github/actions/setup-msvc-libusb/action.yml | |||
@@ -0,0 +1,71 @@ | |||
1 | name: 'Setup libusb for MSVC' | ||
2 | description: 'Download libusb sdk for MSVC, and set output/environment variables' | ||
3 | inputs: | ||
4 | version: | ||
5 | description: 'libusb version' | ||
6 | required: true | ||
7 | default: '1.0.27' | ||
8 | arch: | ||
9 | description: "libusb architecture (x86 or x64)" | ||
10 | rqeuired: true | ||
11 | outputs: | ||
12 | root: | ||
13 | description: "libusb root directory" | ||
14 | value: ${{ steps.final.outputs.root }} | ||
15 | runs: | ||
16 | using: 'composite' | ||
17 | steps: | ||
18 | - name: 'Restore cached libusb-${{ inputs.version }}.7z' | ||
19 | id: cache-restore | ||
20 | uses: actions/cache/restore@v4 | ||
21 | with: | ||
22 | path: 'C:\temp\libusb-${{ inputs.version }}.7z' | ||
23 | key: libusb-msvc-${{ inputs.version }} | ||
24 | - name: 'Download libusb ${{ inputs.version }}' | ||
25 | if: ${{ !steps.cache-restore.outputs.cache-hit }} | ||
26 | shell: pwsh | ||
27 | run: | | ||
28 | Invoke-WebRequest "https://github.com/libusb/libusb/releases/download/v${{ inputs.version }}/libusb-${{ inputs.version }}.7z" -OutFile "C:\temp\libusb-${{ inputs.version }}.7z" | ||
29 | - name: 'Cache libusb-${{ inputs.version }}.7z' | ||
30 | if: ${{ !steps.cache-restore.outputs.cache-hit }} | ||
31 | uses: actions/cache/save@v4 | ||
32 | with: | ||
33 | path: 'C:\temp\libusb-${{ inputs.version }}.7z' | ||
34 | key: libusb-msvc-${{ inputs.version }} | ||
35 | - name: 'Extract libusb' | ||
36 | shell: pwsh | ||
37 | run: | | ||
38 | 7z "-oC:\temp\libusb-${{ inputs.version }}" x "C:\temp\libusb-${{ inputs.version }}.7z" | ||
39 | - name: 'Set output vars' | ||
40 | id: final | ||
41 | shell: pwsh | ||
42 | run: | | ||
43 | if ('${{ inputs.arch }}' -eq 'x86') { | ||
44 | $archdir = "MS32"; | ||
45 | } elseif ('${{ inputs.arch }}' -eq 'x64') { | ||
46 | $archdir = "MS64"; | ||
47 | } else { | ||
48 | write-host "Invalid arch=${{ inputs.arch }}" | ||
49 | exit 1 | ||
50 | } | ||
51 | $libusb_incdir = "C:\temp\libusb-${{ inputs.version }}\include"; | ||
52 | $libusb_libdir = "C:\temp\libusb-${{ inputs.version }}\VS2022\${archdir}\dll"; | ||
53 | |||
54 | $libusb_header = "${libusb_incdir}\libusb.h"; | ||
55 | $libusb_implib = "${libusb_libdir}\libusb-1.0.lib"; | ||
56 | $libusb_dll = "${libusb_libdir}\libusb-1.0.dll"; | ||
57 | |||
58 | if (!(Test-Path "${libusb_header}")) { | ||
59 | write-host "${libusb_header} does not exist!" | ||
60 | exit 1 | ||
61 | } | ||
62 | if (!(Test-Path "${libusb_implib}")){ | ||
63 | write-host "${libusb_implib} does not exist!" | ||
64 | exit 1 | ||
65 | } | ||
66 | if (!(Test-Path "${libusb_dll}")) { | ||
67 | write-host "${libusb_dll} does not exist!" | ||
68 | exit 1 | ||
69 | } | ||
70 | echo "root=${libusb_incdir};${libusb_libdir}" >> $env:GITHUB_OUTPUT | ||
71 | echo "LibUSB_ROOT=${libusb_incdir};${libusb_libdir}" >> $env:GITHUB_ENV | ||