Module: Mesa
Branch: main
Commit: 2d504bc5a05467ad19f9a6df92f649697288f8f5
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=2d504bc5a05467ad19f9a6df92f649697288f8f5

Author: Sil Vilerino <[email protected]>
Date:   Fri Oct 14 10:36:58 2022 -0400

CI: Add gallium-va and video-codecs in windows-vs2019 and debian-mingw32-x86_64

Reviewed-by: Jesse Natalie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19063>

---

 .gitlab-ci/build/gitlab-ci.yml                     |  2 ++
 .../debian/x86_build-mingw-source-deps.sh          | 22 ++++++++++++++++
 .gitlab-ci/image-tags.yml                          |  4 +--
 .gitlab-ci/windows/mesa_build.ps1                  |  2 ++
 .gitlab-ci/windows/mesa_deps_build.ps1             | 29 ++++++++++++++++++++++
 5 files changed, 57 insertions(+), 2 deletions(-)

diff --git a/.gitlab-ci/build/gitlab-ci.yml b/.gitlab-ci/build/gitlab-ci.yml
index 5cb14ae70a8..cff465eb7de 100644
--- a/.gitlab-ci/build/gitlab-ci.yml
+++ b/.gitlab-ci/build/gitlab-ci.yml
@@ -611,6 +611,8 @@ debian-mingw32-x86_64:
       -D microsoft-clc=enabled
       -D static-libclc=all
       -D llvm=enabled
+      -D gallium-va=true
+      -D video-codecs=h264dec,h264enc,h265dec,h265enc,vc1dec
     EXTRA_OPTION: >
       -D min-windows-version=7
       -D spirv-to-dxil=true
diff --git a/.gitlab-ci/container/debian/x86_build-mingw-source-deps.sh 
b/.gitlab-ci/container/debian/x86_build-mingw-source-deps.sh
index 0dc5833c68d..e42a65f33ca 100644
--- a/.gitlab-ci/container/debian/x86_build-mingw-source-deps.sh
+++ b/.gitlab-ci/container/debian/x86_build-mingw-source-deps.sh
@@ -3,6 +3,9 @@
 
 set -e
 
+# Building libdrm (libva dependency)
+. .gitlab-ci/container/build-libdrm.sh
+
 wd=$PWD
 
CMAKE_TOOLCHAIN_MINGW_PATH=$wd/.gitlab-ci/container/debian/x86_mingw-toolchain.cmake
 mkdir -p ~/tmp
@@ -21,6 +24,25 @@ meson .. \
 ninja install
 popd
 
+# Building libva
+git clone https://github.com/intel/libva
+pushd libva/
+# Checking out commit hash with libva-win32 support
+# This feature will be released with libva version 2.17
+git checkout 2579eb0f77897dc01a02c1e43defc63c40fd2988
+popd
+# libva already has a build dir in their repo, use builddir instead
+mkdir -p libva/builddir
+pushd libva/builddir
+meson .. \
+--backend=ninja \
+--buildtype=release \
+-Dprefix=/usr/x86_64-w64-mingw32/ \
+--cross-file=$wd/.gitlab-ci/x86_64-w64-mingw32
+
+ninja install
+popd
+
 export VULKAN_SDK_VERSION=1.3.211.0
 
 # Building SPIRV Tools
diff --git a/.gitlab-ci/image-tags.yml b/.gitlab-ci/image-tags.yml
index 3da06118d7c..ade497261a6 100644
--- a/.gitlab-ci/image-tags.yml
+++ b/.gitlab-ci/image-tags.yml
@@ -6,7 +6,7 @@ variables:
    DEBIAN_BUILD_TAG: "2022-09-30-mkbootimg"
 
    DEBIAN_X86_BUILD_MINGW_IMAGE_PATH: "debian/x86_build-mingw"
-   DEBIAN_BUILD_MINGW_TAG: "2022-08-25-shellcheck"
+   DEBIAN_BUILD_MINGW_TAG: "2022-10-17-add-libdrm-libva-deps.3"
 
    DEBIAN_X86_TEST_BASE_IMAGE: "debian/x86_test-base"
 
@@ -21,7 +21,7 @@ variables:
    WINDOWS_X64_VS_TAG: "2022-08-17-bump"
 
    WINDOWS_X64_BUILD_PATH: "windows/x64_build"
-   WINDOWS_X64_BUILD_TAG: "2022-08-17-bump"
+   WINDOWS_X64_BUILD_TAG: "2022-10-17-add-libva-deps.1"
 
    WINDOWS_X64_TEST_PATH: "windows/x64_test"
    WINDOWS_X64_TEST_TAG: "2022-08-17-bump"
diff --git a/.gitlab-ci/windows/mesa_build.ps1 
b/.gitlab-ci/windows/mesa_build.ps1
index 88f7d2f86cd..ce9759d8827 100644
--- a/.gitlab-ci/windows/mesa_build.ps1
+++ b/.gitlab-ci/windows/mesa_build.ps1
@@ -49,6 +49,8 @@ meson `
 -Dshared-llvm=disabled `
 -Dvulkan-drivers="swrast,amd,microsoft-experimental" `
 -Dgallium-drivers="swrast,d3d12,zink" `
+-Dgallium-va=true `
+-Dvideo-codecs="h264dec,h264enc,h265dec,h265enc,vc1dec" `
 -Dshared-glapi=enabled `
 -Dgles1=enabled `
 -Dgles2=enabled `
diff --git a/.gitlab-ci/windows/mesa_deps_build.ps1 
b/.gitlab-ci/windows/mesa_deps_build.ps1
index 1034981d272..afeb8bf6750 100644
--- a/.gitlab-ci/windows/mesa_deps_build.ps1
+++ b/.gitlab-ci/windows/mesa_deps_build.ps1
@@ -32,6 +32,35 @@ Pop-Location
 
 $depsInstallPath="C:\mesa-deps"
 
+Get-Date
+Write-Host "Cloning libva"
+git clone https://github.com/intel/libva.git deps/libva
+if (!$?) {
+  Write-Host "Failed to clone libva repository"
+  Exit 1
+}
+
+Push-Location -Path ".\deps\libva"
+Write-Host "Checking out libva commit 2579eb0f77897dc01a02c1e43defc63c40fd2988"
+# Checking out commit hash with libva-win32 support
+# This feature will be released with libva version 2.17
+git checkout 2579eb0f77897dc01a02c1e43defc63c40fd2988
+Pop-Location
+
+Write-Host "Building libva"
+# libva already has a build dir in their repo, use builddir instead
+$libva_build = New-Item -ItemType Directory -Path ".\deps\libva" -Name 
"builddir"
+Push-Location -Path $libva_build.FullName
+meson .. -Dprefix="$depsInstallPath"
+ninja -j32 install
+$buildstatus = $?
+Pop-Location
+Remove-Item -Recurse -Force -ErrorAction SilentlyContinue -Path $libva_build
+if (!$buildstatus) {
+  Write-Host "Failed to compile libva"
+  Exit 1
+}
+
 Get-Date
 # slightly convoluted syntax but avoids the CWD being under the PS filesystem 
meta-path
 $llvm_build = New-Item -ItemType Directory -ErrorAction SilentlyContinue 
-Force -Path ".\deps\llvm-project" -Name "build"

Reply via email to