macOS 12 is no longer supported and as Homebrew has a policy, that it
compiles packages from sources on unsupported macOSes, it is needed to
switch to newer macOS to keep reasonable build times.
the message: `Error: No such keg: /opt/homebrew/Cellar/asciidoctor`
is now print on stderr, which disturbs GitHub CI (complains about it in
action summary annotations; just a warning).
`
Some features that are used by x86_64 Linux build are disabled, for the
rest dependencies are installed.
disabled:
- CUDA features (except of NV Jetson usually there is no CUDA)
- lavc vdpau (similar to CUDA, it is primarliy NV-focused API)
- Qt GUI
- Cineform (doesn't compile on ARM)
dependencies installed:
- libsdl2-ttf-dev
- libsdl2-mixer-dev
- libva-dev
Since we must now build the new libajantv2, which takes some 3 minutes,
cache the build in order not to increase the build time.
Also use libajantv2 path for the SDK instead of AJA (doesn't require
unneeded rename), which will be Windows specific.
Only do it in MSW, since the build is slowest. But it can be easily used
also for other platforms.
\+ error from the notarize script if called
Previously (since commit 1c7c3ac1), the script silently exitted without
cigning and notarizing the app, which may harden debugging. Now the skip
is explicit and if the script is called anyways, it returns error.
enhances the commit 1c7c3ac1 (2024-03-22)
Building rav1e requires nasm 2.15 (if asm is not disabled) while U20
has just 2.14.02, so that the build in CI currently fails, anyways.
Pick sse4 for now but expect using avx2 version later, depending on
UG_ARCH value.
\+ populate PKG_CONFIG_PATH immediately
Use the installer and rely on dylibbundler v2 to deploy the framework
correctly.
Note: in the macOS/install_others.sh script, make sure that the env var
modification is global (== not just in the subshell) in order to be updated
by subsequent commands in the same script.
`hdiutil umount` occasionally fails with `hdiutil: create failed -
Resource busy`. Perhaps some macOS process is touching the content
of the DMG (there are some reports in different GH about
`XProtectBehaviorService` or something).
refer to GH-367
This saves some 2.5 minute from the Windows runner run time.
There is also commented-out code to download the Release Asset directly
from CineForm GH. This unfortunatelly doesn't work right now (commented
in the file).
Homebrew builds now dependencies from sources on unsupported macOSes
(which is 11 now), which makes it slow. Relevant snippet from brew output:
```
Warning: You are using macOS 11.
We (and Apple) do not provide support for this old version.
It is expected behaviour that some formulae will fail to build in this old version.
It is expected behaviour that Homebrew will be buggy and slow.
```
Allow 32-bit builds on Buster. This has some advantages
regarding supported HW accelerations in UltraGrid, eg. h264_omx is not
supported in higher versions of the system.
It is not enabled by default but can be enabled easily by switching the
value in YAML file.
refers to GH-344
Since 291c58781 (yesterday) the bundle is created dirctly inside the dir
root, not gui/QT/uv-qt.app (where it is now only the build GUI without
other things).
Copy sounfont to known path for macOS and Windows CI builds (in Linux,
this is already handled with a environment var SDL_SOUNDFONTS). And also
use that location if there is any soundfont.
SDL2 now obviously works on U20.04, because we are building there. It
doesn't work on U22.04, but neither the build with SDL 2.0.20 nor 2.26.2
does.
The problem seems actually to be the inclusion of Wayland libraries in
AppImage.
Use MSYS2 shell for Windows runner by default. This makes the workflow
job somehow more natural and easier.
+ `command -v windeployqt-qt6 >/dev/null` was incorrectly in $()
- the yaml file is less messed
- all platform features are put together without being spread across the
respecive jobs in the yaml
- $FEATURES are now used also by Coverity CI