Skip to content

Commit f4d3a0e

Browse files
committed
mesa 24.1.4
1 parent f77741a commit f4d3a0e

File tree

9 files changed

+278
-167
lines changed

9 files changed

+278
-167
lines changed

.github/workflows/build-mesa.yml

Lines changed: 36 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -9,80 +9,52 @@ on:
99
jobs:
1010
build:
1111
runs-on: windows-2022
12+
strategy:
13+
matrix:
14+
arch: [x64, arm64]
15+
16+
outputs:
17+
MESA_VERSION: ${{ steps.build.outputs.MESA_VERSION }}
18+
LLVM_VERSION: ${{ steps.build.outputs.LLVM_VERSION }}
19+
1220
steps:
1321

1422
- name: checkout
15-
uses: actions/checkout@v2
23+
uses: actions/checkout@v4
1624

1725
- name: build
1826
id: build
1927
shell: cmd
20-
run: call build.cmd
21-
22-
- name: release
23-
id: release
24-
if: steps.build.outputs.MESA_VERSION != ''
25-
uses: actions/create-release@v1
26-
env:
27-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
28-
with:
29-
tag_name: ${{ steps.build.outputs.MESA_VERSION }}
30-
release_name: ${{ steps.build.outputs.MESA_VERSION }}
31-
body: |
32-
[mesa ${{ steps.build.outputs.MESA_VERSION }} release notes](https://docs.mesa3d.org/relnotes/${{ steps.build.outputs.MESA_VERSION }}.html)
33-
[llvm ${{ steps.build.outputs.LLVM_VERSION }} release notes](https://github.com/llvm/llvm-project/releases/tag/llvmorg-${{ steps.build.outputs.LLVM_VERSION }})
28+
run: call build.cmd ${{ matrix.arch }}
3429

35-
- name: upload llvmpipe
36-
id: upload-llvmpipe
37-
uses: actions/upload-release-asset@v1
38-
env:
39-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
30+
- name: upload artifacts
31+
uses: actions/upload-artifact@v4
4032
with:
41-
upload_url: ${{ steps.release.outputs.upload_url }}
42-
asset_path: "mesa-llvmpipe-${{ steps.build.outputs.MESA_VERSION }}.zip"
43-
asset_name: "mesa-llvmpipe-${{ steps.build.outputs.MESA_VERSION }}.zip"
44-
asset_content_type: application/zip
45-
46-
- name: upload osmesa
47-
id: upload-osmesa
48-
uses: actions/upload-release-asset@v1
49-
env:
50-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
51-
with:
52-
upload_url: ${{ steps.release.outputs.upload_url }}
53-
asset_path: "mesa-osmesa-${{ steps.build.outputs.MESA_VERSION }}.zip"
54-
asset_name: "mesa-osmesa-${{ steps.build.outputs.MESA_VERSION }}.zip"
55-
asset_content_type: application/zip
33+
name: mesa-${{ matrix.arch }}-${{ steps.build.outputs.MESA_VERSION }}
34+
path: mesa-*-${{ matrix.arch }}-${{ steps.build.outputs.MESA_VERSION }}.zip
35+
if-no-files-found: error
36+
compression-level: 0
37+
38+
release:
39+
runs-on: ubuntu-24.04
40+
needs: build
41+
permissions:
42+
contents: write
43+
env:
44+
GH_TOKEN: ${{ github.token }}
45+
steps:
5646

57-
- name: upload lavapipe
58-
id: upload-lavapipe
59-
uses: actions/upload-release-asset@v1
60-
env:
61-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
62-
with:
63-
upload_url: ${{ steps.release.outputs.upload_url }}
64-
asset_path: "mesa-lavapipe-${{ steps.build.outputs.MESA_VERSION }}.zip"
65-
asset_name: "mesa-lavapipe-${{ steps.build.outputs.MESA_VERSION }}.zip"
66-
asset_content_type: application/zip
47+
- name: release
48+
run: |
49+
echo '[mesa ${{ needs.build.outputs.MESA_VERSION }} release notes](https://docs.mesa3d.org/relnotes/${{ needs.build.outputs.MESA_VERSION }}.html)' >>notes.txt
50+
echo '[llvm ${{ needs.build.outputs.LLVM_VERSION }} release notes](https://github.com/llvm/llvm-project/releases/tag/llvmorg-${{ needs.build.outputs.LLVM_VERSION }})' >>notes.txt
51+
gh release create ${{ needs.build.outputs.MESA_VERSION }} -R "${GITHUB_REPOSITORY}" -t '${{ needs.build.outputs.MESA_VERSION }}' -F notes.txt
6752
68-
- name: upload d3d12
69-
id: upload-d3d12
70-
uses: actions/upload-release-asset@v1
71-
env:
72-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
53+
- name: get artifacts
54+
uses: actions/download-artifact@v4
7355
with:
74-
upload_url: ${{ steps.release.outputs.upload_url }}
75-
asset_path: "mesa-d3d12-${{ steps.build.outputs.MESA_VERSION }}.zip"
76-
asset_name: "mesa-d3d12-${{ steps.build.outputs.MESA_VERSION }}.zip"
77-
asset_content_type: application/zip
56+
pattern: mesa-*-${{ needs.build.outputs.MESA_VERSION }}
57+
merge-multiple: true
7858

79-
- name: upload zink
80-
id: upload-zink
81-
uses: actions/upload-release-asset@v1
82-
env:
83-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
84-
with:
85-
upload_url: ${{ steps.release.outputs.upload_url }}
86-
asset_path: "mesa-zink-${{ steps.build.outputs.MESA_VERSION }}.zip"
87-
asset_name: "mesa-zink-${{ steps.build.outputs.MESA_VERSION }}.zip"
88-
asset_content_type: application/zip
59+
- name: upload artifacts
60+
run: gh release upload '${{ needs.build.outputs.MESA_VERSION }}' mesa-*-${{ needs.build.outputs.MESA_VERSION }}.zip -R "${GITHUB_REPOSITORY}"

.gitignore

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
llvm
1+
llvm-*
22
llvm.src
3-
llvm.build
3+
llvm.build-*
44
mesa-*
55
mesa.src
6-
mesa.build
6+
mesa.build-*
77
archive-*
88
winflexbison
9+
cmake
910
*.zip
1011
*.exe
11-

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Automatic build of [mesa][] opengl implementations for 64-bit Windows.
1+
Automatic build of [mesa][] opengl & vulkan implementations for 64-bit Windows.
22

33
Builds are linked statically to their dependencies, just place necessary dll file next to your exe and it will use it.
44

@@ -9,6 +9,7 @@ Download binary builds as zip archive from [latest release][] page. It provides
99
* [d3d12][] - [Collabora & Microsoft][collabora] implementation of OpenGL using D3D12
1010
* [zink][] - implementation of OpenGL using Vulkan
1111
* lavapipe - software implementation of Vulkan using llvm
12+
* dzn - Microsoft implementation of Vulkan using D3D12
1213

1314
To build locally run `build.cmd` batch file, make sure you have installed all necessary dependencies (see the beginning of file).
1415

0 commit comments

Comments
 (0)