forked from libretro/RetroArch
-
Notifications
You must be signed in to change notification settings - Fork 0
214 lines (205 loc) · 8.82 KB
/
UWP.yml
File metadata and controls
214 lines (205 loc) · 8.82 KB
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
name: UWP
'on':
push:
branches:
- master
pull_request:
branches:
- master
schedule:
- cron: '0 0 * * 1'
workflow_dispatch:
jobs:
SyncUpstream:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Checkout master
uses: actions/checkout@v4
with:
ref: master
fetch-depth: 0
- name: Sync with Upstream
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
uses: aormsby/Fork-Sync-With-Upstream-action@v3.4.1
with:
target_sync_branch: master
target_repo_token: ${{ secrets.GITHUB_TOKEN }}
upstream_sync_branch: master
upstream_sync_repo: libretro/RetroArch
test_mode: false
XboxOne:
needs: SyncUpstream
runs-on: windows-latest
steps:
- name: Add msbuild to PATH
uses: microsoft/setup-msbuild@v2
- name: Checkout Repository
uses: actions/checkout@v6.0.1
with:
fetch-depth: 0
submodules: false
- name: Download ANGLE Cores, DLLs and Extract
run: >
curl -L "https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/Angle%%20Cores.zip" --output Angle_Cores.zip
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.001" --output DLLs.zip.001
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.002" --output DLLs.zip.002 &&
7z x Angle_Cores.zip -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores" *.* -r -y && 7z x DLLs.zip.001 -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64" *.* -r -y &&
del /q /f "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\.empty" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\.empty"
shell: cmd
- name: Compile ANGLE build
run: |
msbuild pkg\msvc-UWP\RetroArch-msvcUWP.sln `
/p:AppxBundle=Always `
/p:UapAppxPackageBuildMode==SideloadOnly `
/p:AppxBundlePlatforms="x64" `
/p:Configuration="ReleaseANGLE" `
/p:Platform="x64"
shell: pwsh
- name: Grab AppX package
shell: cmd
run: >
cd pkg\msvc-uwp\x64\ReleaseANGLE\RetroArch-msvcUWP && copy /B *ReleaseANGLE.appx ..\..\RetroArch-XboxOne.appx
- name: Upload AppX package
uses: actions/upload-artifact@v6
with:
name: "RetroArch-XboxOne"
path: ./pkg/msvc-uwp/x64/RetroArch-XboxOne.appx
SeriesConsoles:
needs: SyncUpstream
runs-on: windows-latest
steps:
- name: Add msbuild to PATH
uses: microsoft/setup-msbuild@v2
- name: Checkout Repository
uses: actions/checkout@v6.0.1
with:
fetch-depth: 0
submodules: false
- name: Download and Extract DLLs
run: >
curl -L "https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.001" --output DLLs.zip.001
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.002" --output DLLs.zip.002 &&
7z x DLLs.zip.001 -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64" *.* -r -y &&
del /q /f "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\.empty" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\.empty"
shell: cmd
- name: Compile Mesa build
run: |
msbuild pkg\msvc-UWP\RetroArch-msvcUWP.sln `
/p:AppxBundle=Always `
/p:UapAppxPackageBuildMode==SideloadOnly `
/p:AppxBundlePlatforms="x64" `
/p:Configuration="Release" `
/p:Platform="x64"
shell: pwsh
- name: Grab AppX package
shell: cmd
run: >
cd pkg\msvc-uwp\x64\Release\RetroArch-msvcUWP && copy /B *x64.appx ..\..\RetroArch-SeriesConsoles.appx
- name: Upload AppX package
uses: actions/upload-artifact@v6
with:
name: "RetroArch-SeriesConsoles"
path: ./pkg/msvc-uwp/x64/RetroArch-SeriesConsoles.appx
XboxOneAllCores:
needs: SyncUpstream
runs-on: windows-latest
steps:
- name: Add msbuild to PATH
uses: microsoft/setup-msbuild@v2
- name: Checkout Repository
uses: actions/checkout@v6.0.1
with:
fetch-depth: 0
submodules: false
- name: Download Cores, DLLs and Extract
run: >
curl -L "https://buildbot.libretro.com/nightly/windows/x86_64/RetroArch_cores.7z" --output Cores.7z
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/Angle%%20Cores.zip" --output Angle_Cores.zip
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.001" --output DLLs.zip.001
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.002" --output DLLs.zip.002 &&
7z e Cores.7z -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\" && 7z x Angle_Cores.zip -aoa -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores" *.* -r -y && 7z x DLLs.zip.001 -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64" *.* -r -y &&
del /q /f "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\.empty" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\.empty" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\citra2018_libretro.dll" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\citra_libretro.dll"
shell: cmd
- name: Compile ANGLE build
run: |
msbuild pkg\msvc-UWP\RetroArch-msvcUWP.sln `
/p:AppxBundle=Always `
/p:UapAppxPackageBuildMode==SideloadOnly `
/p:AppxBundlePlatforms="x64" `
/p:Configuration="ReleaseANGLE" `
/p:Platform="x64"
shell: pwsh
- name: Grab AppX package
shell: cmd
run: >
cd pkg\msvc-uwp\x64\ReleaseANGLE\RetroArch-msvcUWP && copy /B *ReleaseANGLE.appx ..\..\RetroArch-XboxOne-AllCores.appx
- name: Upload AppX package
uses: actions/upload-artifact@v6
with:
name: "RetroArch-XboxOne-AllCores"
path: ./pkg/msvc-uwp/x64/RetroArch-XboxOne-AllCores.appx
SeriesConsolesAllCores:
needs: SyncUpstream
runs-on: windows-latest
steps:
- name: Add msbuild to PATH
uses: microsoft/setup-msbuild@v2
- name: Checkout Repository
uses: actions/checkout@v6.0.1
with:
fetch-depth: 0
submodules: false
- name: Download Cores, DLLs and Extract
run: >
curl -L "https://buildbot.libretro.com/nightly/windows/x86_64/RetroArch_cores.7z" --output Cores.7z
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.001" --output DLLs.zip.001
"https://github.com/TheRhysWyrill/RA-Xbox-Files/raw/main/DLLs.zip.002" --output DLLs.zip.002 &&
7z e Cores.7z -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\" && 7z x DLLs.zip.001 -o"pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64" *.* -r -y &&
del /q /f "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\.empty" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\.empty" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\citra2018_libretro.dll" "pkg\msvc-uwp\RetroArch-msvcUWP\cores\x64\cores\citra_libretro.dll"
shell: cmd
- name: Compile Mesa build
run: |
msbuild pkg\msvc-UWP\RetroArch-msvcUWP.sln `
/p:AppxBundle=Always `
/p:UapAppxPackageBuildMode==SideloadOnly `
/p:AppxBundlePlatforms="x64" `
/p:Configuration="Release" `
/p:Platform="x64"
shell: pwsh
- name: Grab AppX package
shell: cmd
run: >
cd pkg\msvc-uwp\x64\Release\RetroArch-msvcUWP && copy /B *x64.appx ..\..\RetroArch-SeriesConsoles-AllCores.appx
- name: Upload AppX package
uses: actions/upload-artifact@v6
with:
name: "RetroArch-SeriesConsoles-AllCores"
path: ./pkg/msvc-uwp/x64/RetroArch-SeriesConsoles-AllCores.appx
Publish-release:
needs: [XboxOne, SeriesConsoles, XboxOneAllCores, SeriesConsolesAllCores]
name: Publish Release
if: github.ref == 'refs/heads/master'
permissions: write-all
runs-on: ubuntu-slim
steps:
- name: Get current date
id: date
run: echo "::set-output name=date::$(date +'%m-%d-%Y')"
- name: Download Artifacts
uses: actions/download-artifact@v6
with:
path: ./artifacts/
- name: Create a new release
uses: marvinpinto/action-automatic-releases@latest
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
automatic_release_tag: ${{ steps.date.outputs.date }}
prerelease: false
title: Xbox Builds [${{ steps.date.outputs.date }}]
files: |
./artifacts/RetroArch-XboxOne/RetroArch-XboxOne.appx
./artifacts/RetroArch-SeriesConsoles/RetroArch-SeriesConsoles.appx
./artifacts/RetroArch-XboxOne-AllCores/RetroArch-XboxOne-AllCores.appx
./artifacts/RetroArch-SeriesConsoles-AllCores/RetroArch-SeriesConsoles-AllCores.appx