Commit Graph

110 Commits

Author SHA1 Message Date
Martin Pulec
36f427485f CI Linux: add deb-src in U24.04
ubuntu-latest is now U24.04, which uses .source files in deb822 format
instead the original .list in one-line-style format. ubuntu-latest is
used by Coverity runner.
2024-10-15 16:19:54 +02:00
Martin Pulec
1c61070f91 CI Linux: use libcurl4-openssl-dev instead of NSS
Needed for coverity-scan newly builds on ubuntu-latest (currently
24.04). Ubuntu 24.04 has no longer libcurl4-nss-dev.
2024-10-15 16:13:44 +02:00
Martin Pulec
09e140c2cc CI Linux FFmpeg: removed unused dep exclude
- libsdl2-dev is now normally used (previously used own build)
- libzmq3-dev perhaps also no longer needed to exclude
2024-07-18 09:15:19 +02:00
Martin Pulec
4229e9e381 CI Linux: hold libva2
refers to the revert - ensure that libva **won't** be installed from the PPA
2024-07-18 09:07:55 +02:00
Martin Pulec
10f1fffd51 CI Linux: install libvulkan-dev from PPA 2024-07-18 09:07:25 +02:00
Martin Pulec
433a54caf9 Revert "CI Linux FFmpeg: add the savoury1 PPA early"
The libva in the savoury1 is very new (2.22), which is even newer than
in U24.04. This would prevent LD_PRELOAD of libva from the system.

This reverts commit 234821d31c.
2024-07-18 08:43:48 +02:00
Martin Pulec
91b56cddab Reapply "CI Linux: use Vulkan directy from repo"
with the ppa:savoury1/ffmpeg4 (previous commit) no longer needed

This reverts commit 8922476204.
2024-07-16 16:20:39 +02:00
Martin Pulec
234821d31c CI Linux FFmpeg: add the savoury1 PPA early
needed for updated libvulkan-dev
2024-07-16 16:20:39 +02:00
Martin Pulec
4c07ff5c35 CI Linux FFmpeg: add OpenH264
U20.04 doesn't have libopenh264 yet, so use it from the
ppa:savoury1/ffmpeg4, which replaces ppa:savoury1/vlc3 - it contains
the same x265 version (3.6).

The new repo ppa:savoury1/ffmpeg4 contains more (updated) packages
than /vlc3, which can be actually the advantage (eg. no need to build
own Vulkan loader/headers).
2024-07-16 16:20:38 +02:00
Martin Pulec
f77763dcd5 CI Linux: use libajantv2
also build the library shared
2024-05-31 16:04:44 +02:00
Martin Pulec
8074e26ca4 CI Linux FFmpeg: do not build own libx264
added by the commit f3003ed1

For the original reason it is no longer needed (the higher bit depth
x264 is already included in distro repositories). Anyways, the version
of libx264, that will be installed, is taken from ppa:savoury1/vlc3,
anyways (newer one).
2024-04-12 10:56:56 +02:00
Martin Pulec
f5467237ae CI Linux: download rav1e build instead of building own
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
2024-03-20 14:16:08 +01:00
Martin Pulec
d74922e443 CI: install gcc 10 only in U20.04
This modifies the commit 7f166a2411. Although Linux CI is run with U20.04,
Coverity workflow uses ubuntu-latest, which is currently 22.04, where
default gcc is actually 11 and this breaks GPUJPEG compilation with
error starting with:
```
-- The C compiler identification is GNU 10.5.0
CMake Error at /usr/local/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake:780 (message):
  Compiling the CUDA compiler identification source file
  "CMakeCUDACompilerId.cu" failed.

  Compiler: /usr/bin/nvcc
```

fixes failed run <https://github.com/CESNET/UltraGrid/actions/runs/7968323068>
2024-02-28 12:15:39 +01:00
Martin Pulec
bf09d1cdca CI: add sountfont, not download
The size is only some 90 kB when compressed so it is perhaps not worth
downloading from external source and depend on it.

It could be even bundled directly, not by CI. Now it is actually the case
in Linux (create-appimage.sh) but it is also possible for other platforms.
2024-02-13 16:44:31 +01:00
Martin Piatka
7f166a2411 CI: Ubuntu install gcc-10
FFmpeg refuses to build on gcc 9, because of missing intrinsic
_mm256_loadu2_m128i
2024-02-13 13:59:04 +01:00
Martin Pulec
b73edbf575 scripts: remove SC2140 disable
It is not needed to split the string like this:
```
a="potentially long string on"\
"multiple lines"
```
but it is better rather to put the '\' inside the string:
```
a="potentially long string on\
multiple lines"
```
2024-02-09 12:14:21 +01:00
Martin Pulec
683718a285 CI Linux FFmpeg: do not build VPL tools
tools are not required, reducing dependencies and build time

see failed run:
<https://github.com/CESNET/UltraGrid/actions/runs/7386262548/job/20092516404>
2024-01-03 09:17:11 +01:00
Martin Pulec
4019d611b3 CI: install AsciiDoc
In order to build the manual pages as those are build during UG build
since the previous commits.
2023-11-14 11:13:45 +01:00
Martin Pulec
8922476204 Revert "CI Linux: use Vulkan directy from repo"
FFmpeg Vulkan support requires at least Vulkan headers v1.3.238 but
Ubuntu 20.04 has only 1.2.131.

This reverts commit 8cb7e7e779.
2023-08-23 14:14:40 +02:00
Martin Pulec
b8ce258d4d sdl_mixer: try to open from common path
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.
2023-04-28 10:15:11 +02:00
Martin Pulec
30e9484ff7 AppImage: bundle a SoundFont file
In order to sdl_mixer being able to synthetise MIDI.
2023-04-28 10:15:11 +02:00
Martin Pulec
8cb7e7e779 CI Linux: use Vulkan directy from repo 2023-04-05 08:25:49 +02:00
Martin Pulec
3ac7af2aa0 CI Linux: install wayland with apt
Previously, actually the same version was used but downloaded directly
and installed with dpkg, because it has been used a version from U20
(now default) to U18.
2023-04-05 08:22:48 +02:00
Martin Pulec
9eb376ee38 CI Linux: do not build own SDL2 anymore
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.
2023-04-04 12:49:46 +02:00
Martin Piatka
eb7406f06e CI/Linux: Migrate to Ubuntu 20.04 2023-04-04 10:46:16 +02:00
Martin Pulec
f6dbfe1b85 CI Linux: removed libx11-dev
this should be no longer required to be installed explicitly
2023-03-20 16:54:28 +01:00
Martin Pulec
eaff363e93 CI Linux: install magickwand
For Coverity CI, it is not installed automatically as it is in C/C++ CI
(most likely build req for FFmpeg).
2023-03-20 16:54:28 +01:00
Martin Pulec
449c03dfcd CI: added caca 2023-03-09 13:27:47 +01:00
Martin Pulec
56ecf79f06 removed remaning cppunit bits 2023-03-07 15:45:46 +01:00
Martin Pulec
fc4ee41994 CI Linux: set git user identity
otherwise 'git am' fails
2023-01-20 13:31:20 +01:00
Martin Pulec
6bdbf6ff58 CI: avoid missing debhelper-compat(=12) on U20.04
see failed run https://github.com/CESNET/UltraGrid/actions/runs/3657908562

See also 438dbfa4 - `aptitude build-dep` for whatever reason fails on GH
CI ON installation of debhelper-compat(=12), which is a virtual package
provided by debhelper, apt doesn't.

log:

    + sudo aptitude -y build-dep libsdl2-mixer libsdl2-ttf libsdl2-dev:
    [...]
    Building tag database...
    Unable to apply some actions, aborting
    Unable to satisfy the build-depends: Build-Depends: debhelper-compat (= 12)
2022-12-09 17:16:57 +01:00
Martin Pulec
bfe2ee4255 CI Linux FFmpeg: add openVPL
refer to GH-270
2022-12-09 10:52:07 +01:00
Martin Pulec
207874398b CI FFmpeg Linux: added libde265
with own patch
2022-12-02 11:15:21 +01:00
Martin Pulec
f7bcf8258d CI Linux: do not apt upgrade
It should not be necessary. The distro is quite bulky and it would
update things like PHP etc. and wastes relatively significant time
(approx. 15 minutes - bootstrap time was reduced from 20 to 5 mins).
2022-11-22 16:37:16 +01:00
Martin Pulec
438dbfa465 CI: fixed debhelper-compat(=12) not found for SDL2
Fixed a fail in U20.04 (currently GH's ubuntu-latest) affecting
coverity-scan (continuous still using 18.04):

    https://github.com/CESNET/UltraGrid/actions/runs/3506409582

A dependency of libsdl2 debhelper-compat=12 is not available. apt
frontend can handle that somehow, but aptitude doesn't, so use apt to
install SDL2 dependencies (aptitude still used for mixer and ttf to
avoid installation of libsdl2 library itself).
2022-11-21 14:17:02 +01:00
Martin Pulec
4cba76e800 CI Linux: moved the code around a bit
It seems like that changing arbitrary packages installed (dependencies
for SDL) cause some FFmpeg dependencies to be rebuild (libvpx, SVT-*).

So revert back to depending on whole .github/scripts/Linux/prepare.sh
but move building/installation of AJA, live555 etc. to separate file
to reduce cached FFmpeg rebuilds at least a bit.

+ removed chmod 777 /usr/local
2022-11-16 11:15:43 +01:00
Martin Pulec
868ddab9be CI Linux: cache built SDL 2022-11-16 11:13:27 +01:00
Martin Pulec
603d5f8b6d CI: added Soxr 2022-10-26 09:20:49 +02:00
Martin Pulec
dae8192c4d CI Linux: build own SDL2
This fixed crashing on Wayland (only - Weston without XWayland) in both U20.04 and
U22.04.
2022-10-24 15:06:23 +02:00
Martin Pulec
8ff9156b53 CI Linux: moved FFmpeg deps install to sep file
The file with dependencies installation is a prerequisity for FFmpeg
rebuild so move it to a smaller file to reduce number of required FFmpeg
rebuilds if that file changes.

Install libopencv-core-dev instead of libopencv-dev because it
transitively (libopencv-highgui-dev) depend on libswscale-dev that is
going to be removed.
2022-10-21 14:45:18 +02:00
Martin Pulec
b15e0086a9 CI Ubnutu: APT - write deb-src separate file
Write deb-src to a separate file in /etc/apt/sources.list.d/. Someone is
rewriting /etc/apt/sources.list. See failed run:

  https://github.com/CESNET/UltraGrid/actions/runs/3286915245
2022-10-20 13:09:22 +02:00
Martin Pulec
71ec5f5cf7 Revert "CI: removed SDL2_mixer"
This reverts commit d547bcb9e3.

Now used by MIDI audio capture.
2022-09-12 16:44:04 +02:00
Martin Pulec
8bb3026f27 shellchecked .github/scripts/*/prepare.sh 2022-09-08 11:13:47 +02:00
Martin Pulec
ae7610e19b CI: Cineform build - factor common code
generalize compilation for Linux+mac
2022-09-08 11:13:44 +02:00
Martin Pulec
59871a6850 CI [Linux]: removed custom SDL2 repo
See #168 - according to the testing, the fix may already have been
applied upstream (in Ubuntu distro SDL2 package, although minor version
has not changed).
2022-09-06 16:25:30 +02:00
Martin Pulec
a2f5a78c09 CI: replaced removed PPA for SDL2
The previous seem that hasn't been used in recent builds anyways
(perhaps packages were removed from the repository earlier?).
2022-08-26 15:49:55 +02:00
Martin Pulec
d547bcb9e3 CI: removed SDL2_mixer
no longer used by testcard2
2022-08-26 15:49:36 +02:00
Martin Pulec
720009aea4 GitHub CI Linux: disable GL suppoort for GPUJPEG
This support is currnetly unused by UltraGrid and adds libOpenGL.so.o
GPUJPEG dependency:

https://cmake.org/cmake/help/v3.22/module/FindOpenGL.html#linux-specific

Since we don't need this, it is best to disable GPUJPEG OpenGL support.
2022-08-10 08:14:08 +02:00
Martin Pulec
49fe808693 GitHub CI Linux: CUDA_HOST_COMPILER no longer needed 2022-08-10 08:14:07 +02:00
Martin Pulec
d38410e13d GitHub CI Linux GPUJPEG: revert to cmake
This reverts 2c90fee5 that is hopefully no longer needed.

+ use function for the build instead of a nasty one-liner
+ parallel build
2022-08-10 08:14:07 +02:00