Commit Graph

677 Commits

Author SHA1 Message Date
Martin Pulec
dde604ed73 ARM CI: fix explicit features dropped
with the commit 6e8a62bf (27th Aug 2025) the explicit feature spec was
accidently dropped (missing $@)
2026-02-20 16:26:28 +01:00
Martin Pulec
aee07cbbf5 CI tests: fix infinite loop
Fixed 261df79f which added continue in a loop _prior_ to incrementing
the loop variable.
2026-02-20 16:24:27 +01:00
Martin Pulec
e5a70fd4c2 CI tests: print start/stop message + send kill
- for better debuggability
- -k to avoid hang if UG doesn't exit even after SIGTERM
2026-02-20 16:24:24 +01:00
Martin Pulec
d668d96652 Revert "CI Linux FFmpeg: apply SVT-AV1 patch"
This reverts commit 725cab8d6b.

no longer needed - the patch has been merged in upstream FFmpeg
2026-02-20 15:24:08 +01:00
Martin Pulec
4136c26319 mv r12l_to_gbrp1{2,6}le from lavc to pixfmt_conv
to be able to used also in different places

+ use compat/endian.h (POSIX) macros in BYTE_SWAP
2026-02-20 15:24:06 +01:00
Martin Pulec
261df79fa7 add Spout semi-weekly test + vcap/spout hook
this should have catched the:
<https://github.com/CESNET/UltraGrid/issues/487>

and check also for its regression

+ added get_spout (vcap/spout) Doxy
2026-02-17 16:21:40 +01:00
Martin Pulec
a46429087c add semi-weekly CI tests
for additional testing in addition to what is done by dist check

tested is eg. the Reed-Solomon problem that occured between 1.8.5 and 1.8.6
2026-02-17 16:21:39 +01:00
Martin Pulec
f28c5aaf4a CI Win Spout2: fix MinGW vtable incompat
This together with the previous commit should fix the
<https://github.com/CESNET/UltraGrid/issues/487> problem with current Spout
code (prebuild previous Spout 2-007-016 was used as a workaround until @^).
2026-02-17 10:57:15 +01:00
Martin Pulec
f230d35c52 Revert "CI Win: use pre-built Spout"
This reverts commit b300fa64f4.

we would need to patch the upstream Spout code
2026-02-17 10:56:34 +01:00
Martin Pulec
485851ffcd CI Linux FFmpeg: drop no longer needed workaround
added by the commit 98515da3 in 20th Jun 2025 - effectively reverted
(but the script was renamed in the meantime)
2026-02-17 10:14:27 +01:00
Martin Pulec
e4d3035c1f CI Arch Linux Docker test: add -u to -Sy
It seems like some install fail if we do not upgrade at the same time.

fixes the error:
<https://gist.github.com/MartinPulec/602c195ec03933f826668b3ec1239d02>

+ use more descriptive name for the CI step
+ drop final \ in the Dockerfile (as mentioned in the CI output linked above)
2026-02-17 09:32:22 +01:00
Martin Pulec
725cab8d6b CI Linux FFmpeg: apply SVT-AV1 patch
current FFmpeg version dd2976b9 doesn't compile with SVT-AV1 commit
9485b939 with following error:
```
libavcodec/libsvtav1.c:240:14: error: ‘EbSvtAv1EncConfiguration’ has no member named ‘enable_adaptive_quantization’
  240 |         param->enable_adaptive_quantization = 0;

```
2026-01-23 13:12:42 +01:00
Martin Pulec
80c5fdbb22 CI: reenable screen for macos-15-intel runner
AV Foundation backend now works
2026-01-20 10:02:29 +01:00
Martin Pulec
e5f61f655a CI Linux FFmpeg: updated SVT-HEVC patch
SVT-JPEG-XS has been merged, which was causing the conflicts
2026-01-15 14:48:20 +01:00
Martin Pulec
c3cff06095 CI Win: temporarily revert to Spout 2.007.016
refers to <https://github.com/CESNET/UltraGrid/issues/487>
2026-01-13 10:52:25 +01:00
Martin Pulec
b300fa64f4 CI Win: use pre-built Spout
instead of building own Spout, use pre-built release on GH

This actually reverts the commit b98b5ab0 from 2023-11-06.
Date:   Mon Nov 6 09:08:46 2023 +0100
2026-01-09 15:29:01 +01:00
Martin Pulec
d5c01300d4 docker_appimage_tests.sh: print which test failed
Since the tests are run in parallel (and also there is much output),
it may be difficult to track which one container actually failed so
write at least a summary.
2026-01-07 15:52:06 +01:00
Martin Pulec
af553d6d27 CI Linux install libdecor Cairo plugin explicitly
Instead of ensuring that the plugin is present, instal the Cairo plugin
directly.

The Cairo implementation is the only libdecor plugin present in U22.04
repositories (U24.04 has the Gtk implementation as well).
2026-01-06 11:01:43 +01:00
Martin Pulec
a44e42e520 AppImage: bundle libdecor
both GLFW and SDL load libdecor-0.so.0 by dlopen so it is not going to
be bundled...
2026-01-06 09:02:56 +01:00
Martin Pulec
393a2d8e67 GH/scripts/environment.sh: expect pipefail avail
Expect that the shell implements pipefail - as the environment.sh is
run (sourced) always by bash (implicit CI shell for Linux/macOS and
C:\shells\msys2bash.cmd set explictly in Windows).

this changes c1cfe73a (from today)
2026-01-02 16:00:31 +01:00
Martin Pulec
c1cfe73a71 GH/scripts/environment.sh: add -o pipefail
Try to set -o pipefail. The option should be supported since POSIX v8
(2024). Of course it is supported by shells like bash/zsh long time ago
but it was added to dash [here], which is merged to dash 5.13, so it
is not in any Ubuntu version yet. So adding '|| true' to suppress
omission.

XIMEA URL extraction must have been updated 'sed -e "... q"' causes
broken pipe, which becomes now fatal.

[here]: https://git.kernel.org/pub/scm/utils/dash/dash.git/commit/?id=6347b9fc52d742f36a0276cdea06cd9ad1f02c77
2026-01-02 09:42:59 +01:00
Martin Pulec
040c5c7eb5 CI: use macos-15-intel
screen must be disabled here because the Core Graphics API for screen
capture is being deprecated/removed in macOS 15.

closes <https://github.com/CESNET/UltraGrid/issues/485>
2026-01-02 09:42:59 +01:00
Martin Pulec
e83a4070f5 create_release (continuous): URL shortcut change
use IMO "prettier" shortcut URLs - UGNightyArchive -> UltraGridArchive
and UGAltBuilds -> UltraGridAltBuilds

While the use of CamelCase is enforced by <https://shlink.io/> UGN...
and UGA.. prefixes is harder to read so use unsortened UltraGrid,
omitting Nightly from UGNightlyArchive (with UltraGrid exceeds 20 char
limits and the Nightly isn't necessary /it is actually continuous/).
2026-01-02 09:42:55 +01:00
Martin Pulec
626fdc6d0d continuous desc: change URLs of archive/alt-builds
moved to different location

Also the new link is a shortcut so it may be re-pointed latter elsewhere.
2025-12-05 10:31:11 +01:00
Martin Pulec
566585c7b8 CI delta SDK: output name explicitly
When non-free SDK path is provided but the server curl automatic path
with -O doesn't work (eg. the downloaded file name is passed in a GET
variable).
2025-12-04 16:50:31 +01:00
Martin Pulec
3b713aae48 CI AJA: use release branch
Use rather branch release instead of main because in main things may
break sometimes.

Eg. currently (libajantv2 commit 9060cc4a), ntv2m31enums.h is not
installed but ntv2utils.h includes that.
2025-12-04 10:39:02 +01:00
Martin Pulec
de37ee3a70 CI Dockerfile.ubuntu: adjust also for ubuntu-latest
some packages changed its names
2025-11-25 11:55:49 +01:00
Martin Pulec
8b13221a05 CI Linux: run Docker tests in parallel 2025-11-25 11:55:49 +01:00
Martin Pulec
9e7f643aed docker_appimage_tests.sh: simplify
add the version unconditionally in the script and do not add a placeholder
to Dockerfile
2025-11-25 11:55:49 +01:00
Martin Pulec
aa3051dc0e CI Linux AppImage Docker: try also latest Ubuntu 2025-11-25 11:55:48 +01:00
Martin Pulec
59069b8361 CI Linux AppImage check: run at once 2025-11-25 11:55:48 +01:00
Martin Pulec
8e9f142f7c CI Dockerfile.archlinux: add missing deps
- harfbuzz - blacklisted by AI excludelist
- xorg-server-xvfb - needed for GUI test
2025-11-25 11:55:48 +01:00
Martin Pulec
53892bbd0a CI Linux AppImage test: run tests for both distros
run the same test cases for both Arch Linux and Ubuntu

+ rename Dockerfile.arch to Dockerfile.archlinux (the former is a bit
misleading - arch==architecture or what?)
2025-11-25 11:55:48 +01:00
Martin Pulec
e693ca0b98 GH/.../docker_appimage_tests.sh: quote vars
+ split long lines
+ move --appimage-extract to the begining

all changes are mostly a refactor
2025-11-25 11:55:48 +01:00
Martin Pulec
709276a8af CI: mv AppImage Docker tests to standalone script 2025-11-25 11:55:42 +01:00
Martin Piatka
2ee732aae4 CI: Linux/SDL: Install xtest build dependency 2025-11-20 12:38:37 +01:00
Martin Pulec
8bb8b2cb81 gh/create_release: check URL not empty
ensure URL is not empty

see also f4f54fda - adding -f to curl caused URL to be empty if release
was not found (was to be created) - the GH REST API returns 404 with
a valid body without -f but fails with empty. Since `-o pipefail` is not
used, the curl error was not used because last command of pipeline is jq.
2025-11-20 09:08:42 +01:00
Martin Pulec
f4f54fdae9 partially revert 194cb695
The REST API returned 4xx on unknown object but valid JSON body. As
written originally, valid JSON was assumed (result queried on null).

So revert back the original curl calls where acquiring JSON.
2025-11-14 16:30:28 +01:00
Martin Pulec
fc5ff25315 CI PCP: simplified
- '|| true' no longer needded
- CFLAGS also doesn't seem to be required
- remove --disable-shared - when possible, linkling dynamic library may
be rather preferred than the contrary
2025-11-14 13:47:04 +01:00
Martin Pulec
8cfe1af9c3 CI Win PCP: removed the patch
accepted in upstream
2025-11-12 10:13:40 +01:00
Martin Pulec
cc5ff8417d CI: move cineform patch to patches/ subdir 2025-11-12 08:15:14 +01:00
Martin Pulec
bfbaddb2f0 CI Win: unpin libpcpnatpmp
but the code still needs to be patched

this roughly reverts the commit 382f2fc26b
2025-11-11 16:19:57 +01:00
Martin Pulec
960a36288d CI: compute checksums
compute SHA256 checksums for builds

this is useful at least for 2 reasons:
1. user can ensure that the build comes really from the CI (isn't
tampered)
2. can identify or match version with appropriate action run (the $VERSION
is usually always "continuous", except for releases)

The sha256 sum is currently only show in the protocol, not uploaded
to GH releases - this doesn't seem to be needed because GH currently
already prints the checksum by itself on the download (releases) page.

Skip computing checksum in Win when uplad-artifact is used - the zip
is actually created by the Action so we cannot compute the checksum
on it.

/sbin/sha256sum is not present in CI mac workers for some reason
2025-10-31 16:18:57 +01:00
Martin Pulec
fd38dbfadb CI Linux FFmpeg: build with liboapv
to support APV in Linux binary builds
2025-10-24 11:23:00 +02:00
Martin Pulec
da5c166935 CI Windows: updated Spout build
the CMakeList.txt in upstream changed build location

+ print missing items in configure.ac
2025-10-20 11:41:56 +02:00
Martin Pulec
0921b1d30b CI Linux FFmpeg: build own dav1d
current FFmpeg code requires dav1d >1.0.0 but in Ubuntu 22.04 is just 0.9.2
2025-10-03 15:57:09 +02:00
Martin Pulec
3f0d98a18f CI Linux FFmpeg: update libde265 patch
the original version no longer applied so the UG/FFmpeg build failed
2025-10-03 15:19:58 +02:00
Martin Pulec
5de91b212f configure: testcard-extras - move to testcard2
The sdl_mixer audio capture has gone and there remains just TTF, which
can be considered as an optional feature for testcard2.
2025-09-29 14:44:28 +02:00
Martin Pulec
2a315d4a22 CI libajantv2 macOS fix
CMAKE_OSX_SYSROOT is empty by default since CMake 4 [1] so make a workaround

MSCOS_SDK_VERSION_MAJOR and _MINOR seems to be unused but are derived
from MACOS_SDK_VERSION which is conversly derived from MACOS_SDK_NAME,
which can be now eg. /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
(`xcrun --sdk macosx --show-sdk-path`) - not containing the version
string in expected form.

[1]: https://cmake.org/cmake/help/latest/variable/CMAKE_OSX_SYSROOT.html
2025-09-15 12:39:24 +02:00
Martin Pulec
95180fa86e CI: build dynamic version of Cineform
doesn't need to be patched

Also, the dynamic version may be slightly better because it is separated
from UG, eg. also because the uv binary and reflector both link with
this so not linking twice (increasing overall size).
2025-09-15 12:35:04 +02:00