Commit Graph

143 Commits

Author SHA1 Message Date
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
4357452c32 move soundfont to shared + always install
This simplifies things a bit at the expense that the soundfont is always
included/installed (91 kB).

Added get_data_path() function for generic handling the path to common
data (eg. /usr/local/share/ultragrid if installed). The idea is to catch
all cases - installed (run with absolute or relative path) or run from
inside the source directory in one place.
2025-09-03 16:42:28 +02:00
Martin Pulec
6e8a62bf1c CI: use SDL3 2025-08-27 12:13:08 +02:00
Martin Pulec
3a60095d58 CI: enforce fluidsynth, do not require sdl_mixer 2025-08-27 09:00:21 +02:00
Martin Pulec
cc2e7103b1 configure.ac: generate debug symbols for Win
<https://stackoverflow.com/questions/74416539/clang-14-does-not-generate-pdb-file>

Set it only when linking, not for configure.
2025-08-12 12:24:59 +02:00
Martin Pulec
f1e2c9b568 CI Win: pthreads are now provided with a new pkg 2025-08-12 12:24:58 +02:00
Martin Pulec
a525f474c1 CI GPUJPEG Win: upstream file name has changed 2025-01-27 10:26:40 +01:00
Martin Pulec
64db0c40d4 CI Win: current MSVC/CUDA 11.8 incompatibility workaroud
Workaround to current MSVC error with CUDA 11.8:
```
C:\Program Files\Microsoft Visual
Studio\2022\Community\VC\Tools\MSVC\14.41.34120\include\yvals_core.h(888):
error: static assertion failed with "error STL1002: Unexpected compiler
version, expected CUDA 12.4 or newer."
```

CUDA 11.8 is used for compatibility with CC 3.5 (Kepler) devices. The
support for those will however end in 5 days [1] so we may swich to CUDA
12.x later.

[1]: https://endoflife.date/nvidia-gpu
2024-08-28 13:29:49 +02:00
Martin Pulec
e40eeee538 Revert "GitHub CI: Win - install whole gcc toolchain"
Seem no longer to be needed, also GCC has been used that time.
The change may very slightly (if noticable) improve CI run time but it
is consstent with instructions in wiki and also more clear.

This reverts commit 8278e15201.
2024-07-25 09:35:25 +02:00
Martin Piatka
8f6c5fb81e CI Win: Install VC 2010 Redist 2024-07-08 16:04:21 +02:00
Martin Pulec
47c492ffb9 CI Win: CUDA/MSVC incompatibility fix
Latest MSVS 2022 17.10.34928.147 (MSVC v14.40.33807) in GH runner
20240603.1.0) is no longer compatible with CUDA 11.8.0.52206. CUDA refuses
to compile because of unsupported compiler. Previous version 17.9.34902.65
(GH runner 20240514.3.0) was OK.

As MSVS 2022 is supported by CUDA 11.8 in general, we can pass
-allow-unsupported-compiler flag.
2024-06-07 10:40:19 +02:00
Martin Pulec
bd91d16b27 CI: common live555 handling 2024-05-31 16:04:45 +02:00
Martin Pulec
a735dac86a CI+build Win: use libajantv2
Use libajantv2 + switch the build system to the new lib at the same time
(it is easier and there is perhaps not a big advantage to splitthis to
2 steps).
2024-05-31 16:04:44 +02:00
Martin Pulec
5a10b1a614 CI Win: adapt to new DELATCAST packages
See:
<https://www.deltacast.tv/media/30987/changenotice_videomaster625_installers_and_distribution_packages.pdf>
2024-05-07 12:50:17 +02:00
Martin Pulec
b348d32547 CI Windows: install clang gcc-compat
No longer installed automatically, causing gcc from mingw64 MSYS2
environment being used (autoconf defaults to gcc).
2024-04-23 16:14:50 +02:00
Martin Pulec
d5af762fe4 CI Windows: build CUDA stuff for CC 3.5
Kepler cards are still (and few months will be) supported by NVIDIA.
2024-04-09 07:55:33 +02:00
Martin Pulec
21f4627af5 CI Windows: install Vulkan
Supposedly, it has been installed as a ffmpeg dependency but now the
MSYS package depends just on vulkan-loader, not headers.
2024-03-25 11:03:52 +01:00
Martin Pulec
448c19f69b CI Windows: add include path for MSVC
src/libavcodec/*cuda* includes FFmpeg headers, so provide them also for
MSVC (which is used to compile CUDA).
2024-03-08 16:11:47 +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
6bd76fcb4c CI: Fix Win jack download 2024-02-13 13:05:15 +01:00
Martin Pulec
be84cf8ab0 CI: limit CMake build with logical cores
This fixes all occurences of `cmake --build` as it already was in one
case with commit HEAD~7.

If omitted, CMake leaves the number of processes used on underlying
implementation, which turns out to `make -j`, thus unlimited number of
cores, which is undesirable.
2024-01-25 17:07:42 +01:00
Martin Pulec
040a6797f2 CI scripts: ennsure that really copying to dir
Following to the previous commit, ensure that we are really copying to
an existing dir, where it is expected by appending '/' to the path.
2023-11-20 08:09:13 +01:00
Martin Pulec
8d9b9964d9 CI Win Cineform: do not copy .pc file
After previous commit, UG configure finds the .pc file because
the file was copied incorrectly before - it is copied to
/usr/local/lib/pkgconfig, which was perhaps not a directory, creating
file _named_ pkgconfig instead the file inside that dir. Interestingly
this didn't look like it influenced other libraries, that might also
want to copy its files to something, that was then file.

But the contents is not usable without adjustnments:
1. prefix is C:/Program Files/CineFormSDK
2. lib is set to -lCFHDCodecShared in the PC file, but generated
library has name just CFHDCodec (something similar as already solved
by 0001-CMakeList.txt-remove-output-lib-name-force-UNIX.patch)

While the pkg-config file was not used previously, it is perhaps easiest
to leave it as it used to be instead of trying to fix the .pc file.
2023-11-20 08:09:11 +01:00
Martin Pulec
424d62eedd CI Win: install natpmp with pkg 2023-11-16 16:26:11 +01:00
Martin Pulec
e92385abcc CI Win: cache CineForm build
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).
2023-11-16 16:26:10 +01:00
Martin Pulec
9eab706d6d .github/scripts/Windows/prepare_msys.sh: delta+gpujpeg to fn
Moved the components to its respective functions to be consistent with
the rest of the code.
2023-11-16 14:53:20 +01:00
Martin Pulec
dc1ff7d21b CI: generalize GH asset download 2023-11-16 14:04:56 +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
635c083e00 CI Windows: cache Spout2 build
Since we are now building Spout2 in CI, it takes some 1:30 minute to
build so cache it not to increase the build time when cached.
2023-11-06 13:28:18 +01:00
Martin Pulec
b98b5ab02c CI Win: build own Spout
closes GH-352

It looks like the pre-build library BUILD/Binaries/x64/SpoutLibrary.dll
is no longer compatible with the headers in Git.

Pre-built library version is 2.007.010 while the latest version on GitHub
is Spout 2.007.012. When building Spout from sources, the referenced
issue no longer occurs. Also the libraries are not expected to be included
in the Git in future (leadedge/Spout2#103).
2023-11-06 10:11:15 +01:00
Martin Pulec
56439f413c CI Win: unneeded p7zip install
FFmpeg is now used from MSYS2 so, p7zip is not needed (added in commit
794a512f using Gyan Windows FFmpeg buils).
2023-09-06 14:39:49 +02:00
Martin Pulec
78796781db bundled SoundFount is sf3 2023-05-18 08:43:39 +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
96b9ff511c Win CI scripts: create /usr/local/* if not
Ensure that /usr/local/{bin,include,lib} are created in scrips that copy
to that.

This is not problem for the CI because `.github/scripts/Windows/prepare_msys.sh`
already creates them but the scripts are standalone installers and it
can be run independently by a developer to install the particular dependency.
2023-04-11 13:02:24 +02:00
Martin Pulec
f7c0e8b138 CI Windows: update CUDA to 12.1 2023-03-22 15:51:05 +01:00
Martin Pulec
6b0974d6c3 CI Windows/prepare_msys.sh: use shorter repo prefix
use shorter environment variable for the prefix (readability)
2023-03-09 14:03:55 +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
79bfc80fed Revert "GitHub CI Win: curl ca-cert path error workaround"
no longer needed - this has already been fixed in MSYS upstream

This reverts commit 07f5031c70.
2023-01-19 10:10:12 +01:00
Martin Pulec
07f5031c70 GitHub CI Win: curl ca-cert path error workaround
to mitigate some CA bundle path error with mingw-w64-clang-x86_64-curl

    curl: (77) error setting certificate file: C:/msys64/clang64/ssl/certs/ca-bundle.crt

(eg. in https://github.com/MartinPulec/UltraGrid/actions/runs/3946986623/jobs/6755674412)

there should be etc in the path (.../clang64/etc/ssl/...)

This commit should be reverted when fixed in MSYS builds, so:

    /clang64/bin/curl -LS https://raw.githubusercontent.com/hellerf/EmbeddableWebServer/master/EmbeddableWebServer.h

succeeds (without having `/clang64/ssl/certs/ca-bundle.crt` manual copy)
2023-01-18 11:39:04 +01:00
Martin Pulec
8efdce2337 CI: fixed Windows natpmp build error
Fixes failed run  https://github.com/CESNET/UltraGrid/actions/runs/3894640814/jobs/6648919900.

cmd.exe script for unknown reason ceased to work, copied appropriate
parts of script to our script.

+ use shell debug flag for the script
2023-01-12 10:50:47 +01:00
Martin Pulec
9dcceaf3f3 CI: pass GITHUB_TOKEN to bypass rate limiting
see https://github.com/MartinPulec/UltraGrid/actions/runs/3821590834/jobs/6500891823
2023-01-02 11:18:04 +01:00
Martin Pulec
603d5f8b6d CI: added Soxr 2022-10-26 09:20:49 +02:00
Martin Pulec
39d62f9f3a CI AJA: factor out common handling 2022-09-27 15:52:32 +02:00
Martin Pulec
0a07ab837f CI: fixed fetching of AJA assets
pass also GITHUB_TOKEN when fetching AJA GH assets
2022-09-27 15:52:32 +02:00
Martin Pulec
0f38366079 CI AJA: use GH provided GITHUB_TOKEN
Pass our GITHUB_TOKEN when querying AJA releases in attempt to avoid
reacing API rate limit. See also the failed build:

https://github.com/CESNET/UltraGrid/actions/runs/3113151876
2022-09-23 16:21:03 +02:00
Martin Pulec
9389cf7bd4 CI AJA: use common JSON handling
Use common JSON handling functions because it offer error checking.

+ use -sS for curl
2022-09-22 10:51:29 +02:00
Martin Pulec
031e5be285 CI: use GH api instead of taking it from HTML
similarly to previous commit
2022-09-20 12:11:19 +02:00
Martin Pulec
e351f182cd CI: use SpoutLibrary build 2022-09-15 14:27:22 +02:00
Martin Pulec
5ec962d939 CI Windows/prepare_msys.sh: replace MSYS_REPO
MSYS2 itself uses MINGW_PACKAGE_PREFIX if run with appropriate scripts
so make this similarly.
2022-09-12 16:44:04 +02:00