forked from mirrors/gstreamer-rs
4ce27c130b
Uses stable clippy for the time being Otherwise we'll get warnings about lint names being deprecated without being able to fix it while still being able to compile on stable. This will solve itself once the new lint names move to stable and we can switch to them.
86 lines
2.3 KiB
YAML
86 lines
2.3 KiB
YAML
stages:
|
|
- "lint"
|
|
- "test"
|
|
- "extras"
|
|
|
|
.tarball_setup: &setup
|
|
variables:
|
|
# Only stuff inside the repo directory can be cached
|
|
# Override the CARGO_HOME variable to force its location
|
|
CARGO_HOME: "${CI_PROJECT_DIR}/.cargo_home"
|
|
DEPENDENCIES: |
|
|
curl
|
|
liborc-dev
|
|
libglib2.0-dev
|
|
libxml2-dev
|
|
libgtk-3-dev
|
|
libegl1-mesa
|
|
libgles2-mesa
|
|
libgl1-mesa-dri
|
|
libgl1-mesa-glx
|
|
libwayland-egl1-mesa
|
|
before_script:
|
|
- apt-get update -yqq
|
|
- apt-get install -yqq --no-install-recommends $DEPENDENCIES
|
|
|
|
- mkdir -p precompiled-gst && cd precompiled-gst
|
|
|
|
- curl -L https://people.freedesktop.org/~slomo/gstreamer-1.14.3.tar.gz | tar xz
|
|
- sed -i "s;prefix=/root/gstreamer;prefix=$PWD/gstreamer;g" $PWD/gstreamer/lib/x86_64-linux-gnu/pkgconfig/*.pc
|
|
- export PKG_CONFIG_PATH=$PWD/gstreamer/lib/x86_64-linux-gnu/pkgconfig
|
|
- export GST_PLUGIN_SYSTEM_PATH=$PWD/gstreamer/lib/x86_64-linux-gnu/gstreamer-1.0
|
|
- export GST_PLUGIN_SCANNER=$PWD/gstreamer/libexec/gstreamer-1.0/gst-plugin-scanner
|
|
- export PATH=$PATH:$PWD/gstreamer/bin
|
|
- export LD_LIBRARY_PATH=$PWD/gstreamer/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
|
|
|
|
- cd "${CI_PROJECT_DIR}"
|
|
cache:
|
|
key: "gst"
|
|
paths:
|
|
- "${CARGO_HOME}"
|
|
|
|
.cargo_test_template: &cargo_test
|
|
stage: "test"
|
|
<<: *setup
|
|
script:
|
|
- rustc --version
|
|
- cargo build --color=always --all
|
|
- G_DEBUG=fatal_warnings cargo test --color=always --all
|
|
- cargo build --color=always --all --all-features
|
|
- G_DEBUG=fatal_warnings cargo test --color=always --all --all-features
|
|
|
|
test 1.31:
|
|
# 1.31 img
|
|
# https://hub.docker.com/_/rust/
|
|
image: "rust:1.31-slim"
|
|
<<: *cargo_test
|
|
|
|
test stable:
|
|
# Stable img
|
|
# https://hub.docker.com/_/rust/
|
|
image: "rust:slim"
|
|
<<: *cargo_test
|
|
|
|
test nightly:
|
|
# Nightly
|
|
# https://hub.docker.com/r/rustlang/rust/
|
|
image: "rustlang/rust:nightly-slim"
|
|
allow_failure: true
|
|
<<: *cargo_test
|
|
|
|
rustfmt:
|
|
image: "rust:slim"
|
|
stage: "lint"
|
|
script:
|
|
- rustup component add rustfmt
|
|
- cargo fmt --version
|
|
- cargo fmt -- --color=always --check
|
|
|
|
clippy:
|
|
image: "rust:slim"
|
|
stage: 'extras'
|
|
<<: *setup
|
|
script:
|
|
- rustup component add clippy-preview
|
|
- cargo clippy --version
|
|
- cargo clippy --color=always --all --all-features
|