Skip to content

Commit

Permalink
mesa 24.1.4
Browse files Browse the repository at this point in the history
  • Loading branch information
mmozeiko committed Jul 18, 2024
1 parent f77741a commit f4d3a0e
Show file tree
Hide file tree
Showing 9 changed files with 278 additions and 167 deletions.
100 changes: 36 additions & 64 deletions .github/workflows/build-mesa.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,80 +9,52 @@ on:
jobs:
build:
runs-on: windows-2022
strategy:
matrix:
arch: [x64, arm64]

outputs:
MESA_VERSION: ${{ steps.build.outputs.MESA_VERSION }}
LLVM_VERSION: ${{ steps.build.outputs.LLVM_VERSION }}

steps:

- name: checkout
uses: actions/checkout@v2
uses: actions/checkout@v4

- name: build
id: build
shell: cmd
run: call build.cmd

- name: release
id: release
if: steps.build.outputs.MESA_VERSION != ''
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ steps.build.outputs.MESA_VERSION }}
release_name: ${{ steps.build.outputs.MESA_VERSION }}
body: |
[mesa ${{ steps.build.outputs.MESA_VERSION }} release notes](https://docs.mesa3d.org/relnotes/${{ steps.build.outputs.MESA_VERSION }}.html)
[llvm ${{ steps.build.outputs.LLVM_VERSION }} release notes](https://github.com/llvm/llvm-project/releases/tag/llvmorg-${{ steps.build.outputs.LLVM_VERSION }})
run: call build.cmd ${{ matrix.arch }}

- name: upload llvmpipe
id: upload-llvmpipe
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: upload artifacts
uses: actions/upload-artifact@v4
with:
upload_url: ${{ steps.release.outputs.upload_url }}
asset_path: "mesa-llvmpipe-${{ steps.build.outputs.MESA_VERSION }}.zip"
asset_name: "mesa-llvmpipe-${{ steps.build.outputs.MESA_VERSION }}.zip"
asset_content_type: application/zip

- name: upload osmesa
id: upload-osmesa
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.release.outputs.upload_url }}
asset_path: "mesa-osmesa-${{ steps.build.outputs.MESA_VERSION }}.zip"
asset_name: "mesa-osmesa-${{ steps.build.outputs.MESA_VERSION }}.zip"
asset_content_type: application/zip
name: mesa-${{ matrix.arch }}-${{ steps.build.outputs.MESA_VERSION }}
path: mesa-*-${{ matrix.arch }}-${{ steps.build.outputs.MESA_VERSION }}.zip
if-no-files-found: error
compression-level: 0

release:
runs-on: ubuntu-24.04
needs: build
permissions:
contents: write
env:
GH_TOKEN: ${{ github.token }}
steps:

- name: upload lavapipe
id: upload-lavapipe
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.release.outputs.upload_url }}
asset_path: "mesa-lavapipe-${{ steps.build.outputs.MESA_VERSION }}.zip"
asset_name: "mesa-lavapipe-${{ steps.build.outputs.MESA_VERSION }}.zip"
asset_content_type: application/zip
- name: release
run: |
echo '[mesa ${{ needs.build.outputs.MESA_VERSION }} release notes](https://docs.mesa3d.org/relnotes/${{ needs.build.outputs.MESA_VERSION }}.html)' >>notes.txt
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
gh release create ${{ needs.build.outputs.MESA_VERSION }} -R "${GITHUB_REPOSITORY}" -t '${{ needs.build.outputs.MESA_VERSION }}' -F notes.txt
- name: upload d3d12
id: upload-d3d12
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: get artifacts
uses: actions/download-artifact@v4
with:
upload_url: ${{ steps.release.outputs.upload_url }}
asset_path: "mesa-d3d12-${{ steps.build.outputs.MESA_VERSION }}.zip"
asset_name: "mesa-d3d12-${{ steps.build.outputs.MESA_VERSION }}.zip"
asset_content_type: application/zip
pattern: mesa-*-${{ needs.build.outputs.MESA_VERSION }}
merge-multiple: true

- name: upload zink
id: upload-zink
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.release.outputs.upload_url }}
asset_path: "mesa-zink-${{ steps.build.outputs.MESA_VERSION }}.zip"
asset_name: "mesa-zink-${{ steps.build.outputs.MESA_VERSION }}.zip"
asset_content_type: application/zip
- name: upload artifacts
run: gh release upload '${{ needs.build.outputs.MESA_VERSION }}' mesa-*-${{ needs.build.outputs.MESA_VERSION }}.zip -R "${GITHUB_REPOSITORY}"
8 changes: 4 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
llvm
llvm-*
llvm.src
llvm.build
llvm.build-*
mesa-*
mesa.src
mesa.build
mesa.build-*
archive-*
winflexbison
cmake
*.zip
*.exe

3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Automatic build of [mesa][] opengl implementations for 64-bit Windows.
Automatic build of [mesa][] opengl & vulkan implementations for 64-bit Windows.

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

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

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

Expand Down
Loading

0 comments on commit f4d3a0e

Please sign in to comment.