use main branch instead
As for the other GH actions, use rather the main branch than a fixed
tag. The advantage is that we can avoid these technical commits because
the Node.js actions are gradually deprecated so that we'd need to update
every time it happens (although not often).
Although the actions example suggest using the fixed tags, this
doesn't seem to cause any problems while soe time used eg for
actions/cache. Otherwise, fixed tags may be returned at any time.
The advantages:
- shorter files and more transparent changes (eg. in Git)
- allowing running the job for one platform
This should be mostly a pure refactor - the platform jobs were split as
they were:
- the actual build jobs macOS/Linux/Windows moved to separate files
- the new workflows can (and are) triggered by worflow_call
- in ccpp.yml, the original jobs are now only dispatchedi with uses:
Actually not sure why I've added this since there is no rationale.
Anyways, this seems not to be a good idea at least from the security
POV - can the pull requester modify the workflow files? If so, it can
steal GITHUB_TOKEN and/or do something nesty with the repo.
This reverts commit 656e6fa107.
allow environment variable notarytool (sic) overriding `xcrun notarytool`
(currently needed internally for alt builds to be able to use the sign.sh
script, because the notarytool is not in standard path /actually used
XCode 13 for higher macOS version/)
Seems no longer being needed and it is unclear why it was actually needed.
Run download_build_aja() in subshell (not added when the fn split to
download/install in 2024 with the commit 0ed7d449) to avoid leaking
exactly such variables that can influence further workflow.
We are using `set -x` so the output is a bit disturbing when using just -h.
But we can move it past the help (the beginning should not cause problems,
ideally).
Allow installing individual items in case that someone wants to use it
outsice of CI interactively. Also add help for this case.
This is already done so eg. in .github/scripts/macOS/install_others.sh.
to be able to compile normally without setting std in CFLAGS
+ remove it from macos-14 CI
clang 15 as in macOS 14 doesn't support c23 [[attributes]] such as
[[gnu::always_inline]]
Improves the commit 4136c263 from last week - we usually expect gnu
extensions, although doesn't seem to cause problems in this case (but eg.
the asm keywords won't work /not used here because is arm64/ - __asm__
would be required instead).
only for Win + non-ARM Linux - doesn't seem to be officially supported
in neither ARM nor macOS
configure.ac - require just SVT-JPEG-XS 0.9 as is in msys Win package
(proxy mode commented out - isn't needed to set to "proxy_mode_full"
explicitly, anyways)
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 @^).
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)
If the curl for filename fails, do not succeed with restoring the cache
with partial match. This will return false which may be unexpected
(typically this is correlated when the Coverity servers are down).
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;
```
With v5, NDI doesn't compile because of NDIlib_frame_type_source_change
missing. According to the NDI license, the most recent version should
be used, anyways.
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
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.
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).
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)
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
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/).
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.