diff options
author | Jordan Petridis <jordan@centricular.com> | 2022-08-23 17:29:21 +0300 |
---|---|---|
committer | Jordan Petridis <jordan@centricular.com> | 2022-09-08 15:12:59 +0300 |
commit | de3972a707715aa0b8b9003722d357940f79fb3f (patch) | |
tree | 538cfd54be1fbd39fe12ba4a71371f7566670481 /ci | |
parent | 4616e3225cc4475660dc2094f6453d138b0ead05 (diff) |
ci: Add visual studio/msvc builds
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/841>
Diffstat (limited to 'ci')
-rw-r--r-- | ci/run_windows_tests.ps1 | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/ci/run_windows_tests.ps1 b/ci/run_windows_tests.ps1 new file mode 100644 index 000000000..fbeb2de56 --- /dev/null +++ b/ci/run_windows_tests.ps1 @@ -0,0 +1,69 @@ +$env:ErrorActionPreference='Stop' + +# List of all the crates we want to build +# We need to do this manually to avoid trying +# to build the ones which can't work on windows +[string[]] $crates = @( + # Same as default-members in Cargo.toml + "tutorial", + "version-helper", + "audio/audiofx", + "audio/claxon", + "audio/lewton", + "generic/file", + "generic/fmp4", + "generic/threadshare", + "net/onvif", + "net/raptorq", + "net/reqwest", + "net/aws", + "utils/fallbackswitch", + "utils/togglerecord", + "utils/tracers", + "utils/uriplaylistbin", + "video/cdg", + "video/ffv1", + "video/flavors", + "video/gif", + "video/rav1e", + "video/rspng", + "video/hsv", + "text/ahead", + "text/wrap", + "text/json", + "text/regex", + + # Extra crates that can be built + # "audio/csound", + "audio/spotify", + "generic/sodium", + "net/hlssink3", + "video/closedcaption", + "video/dav1d", + "video/gtk4", + "video/videofx" + # "video/webp", +) + +foreach($crate in $crates) +{ + Write-Host "Building crate: $crate" + Write-Host "Features: $env:FEATURES" + $env:LocalFeatures = $env:FEATURES + + Write-Host "with features: $env:LocalFeatures" + cargo build --color=always --manifest-path $crate/Cargo.toml --all-targets $env:LocalFeatures + + if (!$?) { + Write-Host "Failed to build crate: $crate" + Exit 1 + } + + $env:G_DEBUG="fatal_warnings" + cargo test --no-fail-fast --color=always --manifest-path $crate/Cargo.toml --all-targets $env:LocalFeatures + + if (!$?) { + Write-Host "Tests failed to for crate: $crate" + Exit 1 + } +} |