Files
UltraGrid/.github/scripts/Linux/install_others.sh
Martin Pulec 21cc7be8c7 CI Linux: enable Vulkan
enabled Vulkan build on U18.04 runner
2023-01-17 08:56:32 +01:00

77 lines
2.0 KiB
Bash
Executable File

#!/bin/sh -eux
install_ximea() {
wget --no-verbose https://www.ximea.com/downloads/recent/XIMEA_Linux_SP.tgz
tar xzf XIMEA_Linux_SP.tgz
cd package
sudo ./install
}
# Install AJA
install_aja() {(
cd /var/tmp
git clone --depth 1 https://github.com/aja-video/ntv2
cd ntv2/ajalibraries/ajantv2/build
make -j "$(nproc)"
)}
install_gpujpeg() {(
cd "$GITHUB_WORKSPACE"
./ext-deps/bootstrap_gpujpeg.sh -d
mkdir ext-deps/gpujpeg/build
cd ext-deps/gpujpeg/build
cmake -DBUILD_OPENGL=OFF ..
cmake --build . --parallel
sudo cmake --install .
sudo ldconfig
)}
# Install NDI
install_ndi() {
(
cd /var/tmp
[ -f Install_NDI_SDK_Linux.tar.gz ] || return 0
tar -xzf Install_NDI_SDK_Linux.tar.gz
# shellcheck disable=SC2125
installer=./Install*NDI*sh
yes | PAGER="cat" $installer
sudo cp -r NDI\ SDK\ for\ Linux/include/* /usr/local/include
sed 's/\(.*\)/\#define NDI_VERSION \"\1\"/' < 'NDI SDK for Linux/Version.txt' | sudo tee /usr/local/include/ndi_version.h
sudo cp -r NDI\ SDK\ for\ Linux/lib/x86_64-linux-gnu/* /usr/local/lib
sudo ldconfig
)
}
# TODO: needed only for U18.04, remove after upgrading to U20.04
install_vulkan() {(
git clone --depth 1 https://github.com/KhronosGroup/Vulkan-Headers
mkdir Vulkan-Headers/build
cd Vulkan-Headers/build
cmake ..
sudo make install
cd ../..
git clone --depth 1 https://github.com/KhronosGroup/Vulkan-Loader
mkdir Vulkan-Loader/build
cd Vulkan-Loader/build
cmake ..
cmake --build . --parallel
sudo make install
)}
# Install live555
git clone https://github.com/xanview/live555/
cd live555
git checkout 35c375
./genMakefiles linux-64bit
make -j "$(nproc)" CPLUSPLUS_COMPILER="c++ -DXLOCALE_NOT_USED"
sudo make install
cd ..
install_aja
install_gpujpeg
install_ndi
install_vulkan
install_ximea