forked from mirrors/gstreamer-rs
52c764b986
We all know that external utilities returning a non-zero exit code do not terminate a powershell script. However, most do not know (and neither did I) that it is impossible to promote error exit codes to script-terminating errors with ErrorActionPreference. Explicitly check the return codes and Exit. https://github.com/MicrosoftDocs/PowerShell-Docs/issues/1583 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1368>
22 lines
793 B
Docker
22 lines
793 B
Docker
# escape=`
|
|
|
|
FROM "registry.freedesktop.org/gstreamer/gstreamer/amd64/windows:2023-07-17.0-main"
|
|
|
|
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
|
|
|
|
ARG DEFAULT_BRANCH="main"
|
|
ARG RUST_VERSION="invalid"
|
|
|
|
RUN choco install -y pkgconfiglite nasm llvm openssl
|
|
|
|
# https://stackoverflow.com/a/50716450
|
|
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_dav1d.ps1 C:\
|
|
RUN C:\install_gst.ps1
|
|
RUN C:\install_dav1d.ps1
|
|
|
|
RUN Invoke-WebRequest -Uri https://win.rustup.rs/x86_64 -OutFile C:\rustup-init.exe
|
|
RUN C:\rustup-init.exe -y --profile minimal --default-toolchain $env:RUST_VERSION
|
|
RUN cargo install --locked cargo-c --version 0.9.22+cargo-0.72
|