Skip to content

Commit ea1fe61

Browse files
authored
Merge pull request #419 from Detanup01/vs-26-and-clang
Update to VS26
2 parents 0482c57 + 5d76e04 commit ea1fe61

20 files changed

Lines changed: 149 additions & 114 deletions

.github/workflows/emu-build-all-linux.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ permissions:
1010
contents: "write"
1111

1212
env:
13-
PREMAKE_ACTION: "gmake2"
13+
PREMAKE_ACTION: "gmake"
1414
DEPS_CACHE_KEY: "emu-deps-linux"
1515
DEPS_CACHE_DIR: "build/deps/linux"
1616

@@ -29,7 +29,7 @@ jobs:
2929
builds-matrix-linux:
3030
name: "build"
3131
needs: ["deps"]
32-
runs-on: "ubuntu-22.04"
32+
runs-on: "ubuntu-24.04"
3333
if: ${{ !cancelled() }}
3434
continue-on-error: true
3535

@@ -49,7 +49,7 @@ jobs:
4949
# tests
5050
"test_gamepad_linux",
5151
]
52-
arch: ["x64", "x32"]
52+
arch: ["x64", "x86"]
5353
cfg: ["debug", "release"]
5454

5555
steps:
@@ -91,7 +91,7 @@ jobs:
9191
working-directory: "${{ github.workspace }}"
9292
run: |
9393
sudo chmod 777 ./${{env.THIRD_PARTY_BASE_DIR}}/common/linux/premake/premake5
94-
./${{env.THIRD_PARTY_BASE_DIR}}/common/linux/premake/premake5 --file=premake5.lua --genproto --emubuild=${{ github.sha }} --os=linux gmake2
94+
./${{env.THIRD_PARTY_BASE_DIR}}/common/linux/premake/premake5 --file=premake5.lua --genproto --emubuild=${{ github.sha }} --os=linux gmake
9595
9696
# mandatory Linux packages
9797
- name: "Install required packages"
@@ -112,7 +112,7 @@ jobs:
112112
# build target
113113
- name: "Build target"
114114
shell: "bash"
115-
working-directory: "${{ github.workspace }}/build/project/gmake2/linux"
115+
working-directory: "${{ github.workspace }}/build/project/gmake/linux"
116116
run: |
117117
echo "dry run..."
118118
make -n -j ${{ env.MAX_PARALLEL_JOBS }} config=${{ matrix.cfg }}_${{ matrix.arch }} ${{ matrix.prj }}

.github/workflows/emu-build-all-win.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ permissions:
1010
contents: "write"
1111

1212
env:
13-
PREMAKE_ACTION: "vs2022"
13+
PREMAKE_ACTION: "vs2026"
1414
DEPS_CACHE_KEY: "emu-deps-win"
1515
DEPS_CACHE_DIR: "build/deps/win"
1616

@@ -28,7 +28,7 @@ jobs:
2828
builds-matrix-win:
2929
name: "build"
3030
needs: ["deps"]
31-
runs-on: "windows-2022"
31+
runs-on: "windows-2025-vs2026"
3232
if: ${{ !cancelled() }}
3333
continue-on-error: true
3434

@@ -103,14 +103,14 @@ jobs:
103103
shell: "cmd"
104104
working-directory: "${{ github.workspace }}"
105105
run: |
106-
"${{env.THIRD_PARTY_BASE_DIR}}\common\win\premake\premake5.exe" --file=premake5.lua --genproto --emubuild=${{ github.sha }} --dosstub --winrsrc --winsign --os=windows vs2022
106+
"${{env.THIRD_PARTY_BASE_DIR}}\common\win\premake\premake5.exe" --file=premake5.lua --genproto --emubuild=${{ github.sha }} --dosstub --winrsrc --winsign --os=windows vs2026
107107
108108
# build target
109109
- name: "Build target"
110110
shell: "cmd"
111-
working-directory: "${{ github.workspace }}/build/project/vs2022/win"
111+
working-directory: "${{ github.workspace }}/build/project/vs2026/win"
112112
run: |
113-
msbuild /nologo /target:${{ matrix.prj }} /m:1 -p:CL_MPCount=${{ env.MAX_PARALLEL_JOBS }} /v:n /p:Configuration=${{ matrix.cfg }},Platform=${{ matrix.arch }} gbe.sln
113+
msbuild /nologo /target:${{ matrix.prj }} /m:1 -p:CL_MPCount=${{ env.MAX_PARALLEL_JOBS }} /v:n /p:Configuration=${{ matrix.cfg }},Platform=${{ matrix.arch }} gbe.slnx
114114
115115
# upload artifact/package to github Actions
116116
- name: "Upload target package"

.github/workflows/emu-deps-linux.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ permissions:
1010
contents: "write"
1111

1212
env:
13-
PREMAKE_ACTION: "gmake2"
13+
PREMAKE_ACTION: "gmake"
1414
DEPS_CACHE_KEY: "emu-deps-linux"
1515
DEPS_CACHE_DIR: "build/deps/linux"
1616

@@ -22,7 +22,7 @@ env:
2222

2323
jobs:
2424
deps-build:
25-
runs-on: "ubuntu-22.04"
25+
runs-on: "ubuntu-24.04"
2626
if: ${{ !cancelled() }}
2727

2828
steps:
@@ -90,4 +90,4 @@ jobs:
9090
run: |
9191
export CMAKE_GENERATOR="Unix Makefiles"
9292
sudo chmod 777 ./${{env.THIRD_PARTY_BASE_DIR}}/common/linux/premake/premake5
93-
./${{env.THIRD_PARTY_BASE_DIR}}/common/linux/premake/premake5 --file=premake5-deps.lua --64-build --32-build --all-ext --all-build --j=${{ env.MAX_PARALLEL_JOBS }} --verbose --clean --os=linux gmake2
93+
./${{env.THIRD_PARTY_BASE_DIR}}/common/linux/premake/premake5 --file=premake5-deps.lua --64-build --32-build --all-ext --all-build --j=${{ env.MAX_PARALLEL_JOBS }} --verbose --clean --os=linux gmake

.github/workflows/emu-deps-win.yml

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ permissions:
1010
contents: "write"
1111

1212
env:
13-
PREMAKE_ACTION: "vs2022"
13+
PREMAKE_ACTION: "vs2026"
1414
DEPS_CACHE_KEY: "emu-deps-win"
1515
DEPS_CACHE_DIR: "build/deps/win"
1616

@@ -22,7 +22,7 @@ env:
2222

2323
jobs:
2424
deps-build:
25-
runs-on: "windows-2022"
25+
runs-on: "windows-2025-vs2026"
2626
if: ${{ !cancelled() }}
2727

2828
steps:
@@ -69,17 +69,10 @@ jobs:
6969
ref: "third-party/deps/common"
7070
path: "${{env.THIRD_PARTY_BASE_DIR}}/deps/common"
7171

72-
- name: "Clone third-party deps (common/win)"
73-
if: steps.emu-deps-cache-step.outputs.cache-hit != 'true'
74-
uses: actions/checkout@v6
75-
with:
76-
ref: "third-party/common/win"
77-
path: "${{env.THIRD_PARTY_BASE_DIR}}/common/win"
78-
7972
- name: "Build deps"
8073
if: steps.emu-deps-cache-step.outputs.cache-hit != 'true'
8174
shell: "cmd"
8275
working-directory: "${{ github.workspace }}"
8376
run: |
84-
set "CMAKE_GENERATOR=Visual Studio 17 2022"
85-
"${{env.THIRD_PARTY_BASE_DIR}}\common\win\premake\premake5.exe" --file=premake5-deps.lua --64-build --32-build --all-ext --all-build --j=${{ env.MAX_PARALLEL_JOBS }} --verbose --clean --os=windows vs2022
77+
set "CMAKE_GENERATOR=Visual Studio 18 2026"
78+
"${{env.THIRD_PARTY_BASE_DIR}}\common\win\premake\premake5.exe" --file=premake5-deps.lua --64-build --32-build --all-ext --all-build --j=${{ env.MAX_PARALLEL_JOBS }} --verbose --clean --os=windows vs2026

.github/workflows/migrate_gse-build-linux.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ env:
1616

1717
jobs:
1818
build:
19-
runs-on: "ubuntu-22.04"
19+
runs-on: "ubuntu-24.04"
2020

2121
steps:
2222
- name: "Checkout branch"

.github/workflows/migrate_gse-build-win.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ env:
1818

1919
jobs:
2020
build:
21-
runs-on: "windows-2022"
21+
runs-on: "windows-2025-vs2026"
2222

2323
steps:
2424
- name: "Set up Python 3.12"

.github/workflows/release.yml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121

2222
emu-win-prep:
2323
needs: ["emu-win-all"]
24-
runs-on: "windows-2022"
24+
runs-on: "windows-2025-vs2026"
2525
steps:
2626
# on Windows Git will auto change line ending to CRLF, not preferable
2727
- name: "Ensure LF line ending"
@@ -61,13 +61,13 @@ jobs:
6161
- name: "Package build (release)"
6262
shell: "cmd"
6363
working-directory: "${{ github.workspace }}"
64-
run: package_win.bat vs2022\release
64+
run: package_win.bat vs2026\release
6565

6666
# package (debug mode)
6767
- name: "Package build (debug)"
6868
shell: "cmd"
6969
working-directory: "${{ github.workspace }}"
70-
run: package_win.bat vs2022\debug 1
70+
run: package_win.bat vs2026\debug 1
7171

7272
# release (debug + release modes) if this is a tag push
7373
- name: "Release"
@@ -82,7 +82,7 @@ jobs:
8282
uses: actions/upload-artifact@v7
8383
with:
8484
name: "release-emu-win-release-${{ github.sha }}"
85-
path: "build/package/win/vs2022/*release*"
85+
path: "build/package/win/vs2026/*release*"
8686
if-no-files-found: "error"
8787
compression-level: 0
8888
retention-days: 7
@@ -92,7 +92,7 @@ jobs:
9292
uses: actions/upload-artifact@v7
9393
with:
9494
name: "release-emu-win-debug-${{ github.sha }}"
95-
path: "build/package/win/vs2022/*debug*"
95+
path: "build/package/win/vs2026/*debug*"
9696
if-no-files-found: "error"
9797
compression-level: 0
9898
retention-days: 7
@@ -104,7 +104,7 @@ jobs:
104104

105105
emu-linux-prep:
106106
needs: ["emu-linux-all"]
107-
runs-on: "ubuntu-22.04"
107+
runs-on: "ubuntu-24.04"
108108
steps:
109109
# we need branch because it has package scripts
110110
- name: "Checkout branch"
@@ -150,13 +150,13 @@ jobs:
150150
- name: "Package build (release)"
151151
shell: "bash"
152152
working-directory: "${{ github.workspace }}"
153-
run: ./package_linux.sh gmake2/release
153+
run: ./package_linux.sh gmake/release
154154

155155
# package (debug mode)
156156
- name: "Package build (debug)"
157157
shell: "bash"
158158
working-directory: "${{ github.workspace }}"
159-
run: ./package_linux.sh gmake2/debug 1
159+
run: ./package_linux.sh gmake/debug 1
160160

161161
# release (debug + release modes) if this is a tag push
162162
- name: "Release"
@@ -171,7 +171,7 @@ jobs:
171171
uses: actions/upload-artifact@v7
172172
with:
173173
name: "release-emu-linux-release-${{ github.sha }}"
174-
path: "build/package/linux/gmake2/*release*"
174+
path: "build/package/linux/gmake/*release*"
175175
if-no-files-found: "error"
176176
compression-level: 0
177177
retention-days: 7
@@ -181,7 +181,7 @@ jobs:
181181
uses: actions/upload-artifact@v7
182182
with:
183183
name: "release-emu-linux-debug-${{ github.sha }}"
184-
path: "build/package/linux/gmake2/*debug*"
184+
path: "build/package/linux/gmake/*debug*"
185185
if-no-files-found: "error"
186186
compression-level: 0
187187
retention-days: 7
@@ -193,7 +193,7 @@ jobs:
193193

194194
migrate_gse_script-win-prep:
195195
needs: ["migrate_gse_script-win"]
196-
runs-on: "windows-2022"
196+
runs-on: "windows-2025-vs2026"
197197
steps:
198198
# on Windows Git will auto change line ending to CRLF, not preferable
199199
- name: "Ensure LF line ending"
@@ -253,7 +253,7 @@ jobs:
253253

254254
migrate_gse_script-linux-prep:
255255
needs: ["migrate_gse_script-linux"]
256-
runs-on: "ubuntu-22.04"
256+
runs-on: "ubuntu-24.04"
257257
steps:
258258
# we need branch because it has package scripts
259259
- name: "Checkout branch"

.gitmodules

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@
1111
[submodule "third-party/common/win"]
1212
path = third-party/common/win
1313
url = ./
14-
branch = third-party/common/win
14+
branch = third-party/common/win
1515

1616
[submodule "third-party/common/linux"]
1717
path = third-party/common/linux
1818
url = ./
19-
branch = third-party/common/linux
19+
branch = third-party/common/linux
2020

2121
[submodule "third-party/deps/win"]
2222
path = third-party/deps/win
@@ -31,4 +31,4 @@
3131
[submodule "third-party/deps/common"]
3232
path = third-party/deps/common
3333
url = ./
34-
branch = third-party/deps/common
34+
branch = third-party/deps/common

README.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -144,8 +144,8 @@ The only times you'll need to rebuild them is either when their separete build f
144144
Open CMD in the repo folder, then run the following
145145
* To build using `Visual Studio`
146146
```batch
147-
set "CMAKE_GENERATOR=Visual Studio 17 2022"
148-
third-party\common\win\premake\premake5.exe --file=premake5-deps.lua --64-build --32-build --all-ext --all-build --verbose --os=windows vs2022
147+
set "CMAKE_GENERATOR=Visual Studio 18 2026"
148+
third-party\common\win\premake\premake5.exe --file=premake5-deps.lua --64-build --32-build --all-ext --all-build --verbose --os=windows vs2026
149149
```
150150
* To build using `MSYS2` **this is currently experimental and will not work due to ABI differences**
151151
<details>
@@ -196,14 +196,14 @@ This will:
196196
Open CMD in the repo folder, then run the following
197197
* For `Visual Studio 2022`
198198
```batch
199-
third-party\common\win\premake\premake5.exe --file=premake5.lua --genproto --os=windows vs2022
199+
third-party\common\win\premake\premake5.exe --file=premake5.lua --genproto --os=windows vs2026
200200
```
201-
You can then go to the folder `build\project\vs2022\win` and open the produced `.sln` file in Visual Studio.
202-
Or, if you prefer to do it from command line, open the `Developer Command Prompt for VS 2022` inside the above folder, then:
201+
You can then go to the folder `build\project\vs2026\win` and open the produced `.sln` file in Visual Studio.
202+
Or, if you prefer to do it from command line, open the `Developer Command Prompt for VS 2026` inside the above folder, then:
203203
```batch
204-
msbuild /nologo /v:n /p:Configuration=release,Platform=Win32 gbe.sln
204+
msbuild /nologo /v:n /p:Configuration=release,Platform=Win32 gbe.slnx
205205
206-
msbuild /nologo /v:n /p:Configuration=release,Platform=x64 gbe.sln
206+
msbuild /nologo /v:n /p:Configuration=release,Platform=x64 gbe.slnx
207207
```
208208

209209
* For `MSYS2` **this is currently experimental and will not work due to ABI differences**
@@ -312,7 +312,7 @@ Open CMD in the repos's directory, then run this script
312312
```batch
313313
package_win.bat <build_folder>
314314
```
315-
`build_folder` is any folder inside `build\win`, for example: `vs2022\release`
315+
`build_folder` is any folder inside `build\win`, for example: `vs2026\release`
316316
The above example will create a `.7z` archive inside `build\package\win\`
317317
318318
### On Linux:

build_win_premake.bat

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,8 @@ set /a "BUILD_JOBS=-1"
4848

4949
:: build deps
5050
if %BUILD_DEPS% equ 1 (
51-
set "CMAKE_GENERATOR=Visual Studio 17 2022"
52-
call "%PREMAKE_EXE%" --file="premake5-deps.lua" --64-build --32-build --all-ext --all-build --j=2 --verbose --clean --os=windows vs2022 || (
51+
set "CMAKE_GENERATOR=Visual Studio 18 2026"
52+
call "%PREMAKE_EXE%" --file="premake5-deps.lua" --64-build --32-build --all-ext --all-build --j=2 --verbose --clean --os=windows vs2026 || (
5353
goto :end_script_with_err
5454
)
5555
goto :end_script
@@ -84,13 +84,13 @@ set /a "BUILD_JOBS=-1"
8484
if %GEN_PROJECT% equ 0 (
8585
goto :gen_project_end
8686
)
87-
call "%PREMAKE_EXE%" --file="premake5.lua" --genproto --dosstub --winrsrc --winsign --os=windows vs2022 || (
87+
call "%PREMAKE_EXE%" --file="premake5.lua" --genproto --dosstub --winrsrc --winsign --os=windows vs2026 || (
8888
goto :end_script_with_err
8989
)
9090
:gen_project_end
9191

9292
:: check .sln
93-
set "SLN_FILE=build\project\vs2022\win\gbe.sln"
93+
set "SLN_FILE=build\project\vs2026\win\gbe.slnx"
9494
if not exist "%SLN_FILE%" (
9595
1>&2 echo:.sln file wasn't found
9696
goto :end_script_with_err

0 commit comments

Comments
 (0)