forked from mirrors/gstreamer-rs
ci: Install GTK from the GStreamer monorepo
Force-build the gtk subproject when building gstreamer This subproject is only pulled in when -Drs=enabled by gst-plugins-rs, so we need to force-enable it here. Co-authored-by: Nirbheek Chauhan <nirbheek@centricular.com> Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1298>
This commit is contained in:
parent
16e1f92489
commit
c0f9551fc4
6 changed files with 5 additions and 51 deletions
|
@ -151,7 +151,6 @@ trigger:
|
|||
libcsound64-dev llvm clang nasm libsodium-dev libwebp-dev
|
||||
FDO_DISTRIBUTION_EXEC: >-
|
||||
bash ci/install-gst.sh &&
|
||||
bash ci/install-gtk4.sh &&
|
||||
bash ci/install-dav1d.sh &&
|
||||
pip3 install --break-system-packages git+http://gitlab.freedesktop.org/freedesktop/ci-templates &&
|
||||
pip3 install --break-system-packages tomli
|
||||
|
@ -505,6 +504,7 @@ pages:
|
|||
|
||||
.windows rust docker build:
|
||||
stage: 'container-final'
|
||||
timeout: '2h'
|
||||
needs: []
|
||||
variables:
|
||||
# Unlike the buildah/linux jobs, this file
|
||||
|
|
|
@ -22,6 +22,7 @@ PLUGINS="-D gst-plugins-base:ogg=enabled \
|
|||
-D gst-plugins-bad:opus=enabled \
|
||||
-D gst-plugins-ugly:x264=enabled"
|
||||
|
||||
echo "subproject('gtk')" >> meson.build
|
||||
meson setup build \
|
||||
-D prefix=/usr/local \
|
||||
-D gpl=enabled \
|
||||
|
|
|
@ -1,21 +0,0 @@
|
|||
#! /bin/sh
|
||||
|
||||
set -eux
|
||||
|
||||
BRANCH=4.10.3
|
||||
|
||||
git clone https://gitlab.gnome.org/GNOME/gtk.git --branch $BRANCH --depth=1
|
||||
cd gtk
|
||||
|
||||
meson setup build \
|
||||
-D prefix=/usr/local \
|
||||
-Ddemos=false \
|
||||
-Dbuild-testsuite=false \
|
||||
-Dbuild-examples=false \
|
||||
-Dbuild-tests=false \
|
||||
-Dwayland-protocols:tests=false
|
||||
meson compile -C build
|
||||
meson install -C build
|
||||
ldconfig
|
||||
cd ..
|
||||
rm -rf gtk/
|
|
@ -15,9 +15,8 @@ RUN choco install -y pkgconfiglite nasm llvm openssl
|
|||
RUN setx PATH '%PATH%;C:\Program Files\NASM;C:\gst-install\bin'
|
||||
ENV PKG_CONFIG_PATH="C:\gst-install\lib\pkgconfig"
|
||||
|
||||
COPY install_gst.ps1 install_gtk.ps1 install_dav1d.ps1 C:\
|
||||
COPY install_gst.ps1 install_dav1d.ps1 C:\
|
||||
RUN C:\install_gst.ps1
|
||||
RUN C:\install_gtk.ps1
|
||||
RUN C:\install_dav1d.ps1
|
||||
|
||||
RUN Invoke-WebRequest -Uri https://win.rustup.rs/x86_64 -OutFile C:\rustup-init.exe
|
||||
|
|
|
@ -37,6 +37,8 @@ $MESON_ARGS = @(`
|
|||
"-Dgst-plugins-good:lame=disabled"
|
||||
)
|
||||
|
||||
$PSDefaultParameterValues['Out-File:Encoding'] = 'utf8'
|
||||
echo "subproject('gtk')" >> meson.build
|
||||
|
||||
Write-Output "Building gstreamer"
|
||||
meson setup --vsenv $MESON_ARGS _build
|
||||
|
|
|
@ -1,27 +0,0 @@
|
|||
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12;
|
||||
|
||||
$env:MESON_ARGS = "--prefix=C:\gst-install\"
|
||||
|
||||
# Download gtk and all its subprojects
|
||||
git clone -b 4.10.3 --depth 1 https://gitlab.gnome.org/gnome/gtk.git C:\gtk
|
||||
if (!$?) {
|
||||
Write-Host "Failed to clone gtk"
|
||||
Exit 1
|
||||
}
|
||||
|
||||
Set-Location C:\gtk
|
||||
|
||||
Write-Output "Building gtk"
|
||||
cmd.exe /C "C:\BuildTools\Common7\Tools\VsDevCmd.bat -host_arch=amd64 -arch=amd64 && meson _build $env:MESON_ARGS && meson compile -C _build && ninja -C _build install"
|
||||
|
||||
if (!$?) {
|
||||
Write-Host "Failed to build and install gtk"
|
||||
Exit 1
|
||||
}
|
||||
|
||||
cd C:\
|
||||
cmd /c rmdir /s /q C:\gtk
|
||||
if (!$?) {
|
||||
Write-Host "Failed to remove gtk checkout"
|
||||
Exit 1
|
||||
}
|
Loading…
Reference in a new issue