Docker: Update build image with final OCIOv2, Qt 5.15.2, OTIO, Crashpad (#1489)

* Add missing xcb-util-* packages. Qt's libqxcb.so seems to require them in the newer Qt version

* Adjust breakpad install prefix to match CMake change

* Add build script for Olive for quick testing

* .n in CI image actually stands for image revision

* skipping the CI is now supported natively by GitHub Actions
This commit is contained in:
Simran
2021-03-25 03:59:42 +01:00
committed by GitHub
parent 2d420decf0
commit cc317a8b1a
16 changed files with 115 additions and 78 deletions
-9
View File
@@ -1,9 +0,0 @@
#!/usr/bin/env bash
# Copyright (c) Contributors to the aswf-docker Project. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
set -ex
export DTS_VERSION=9
export CLANG_VERSION=10.0.0
export NINJA_VERSION=1.10.0
-13
View File
@@ -1,13 +0,0 @@
#!/usr/bin/env bash
# Copyright (c) Contributors to the aswf-docker Project. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
set -ex
export BOOST_VERSION=1.70.0
export CMAKE_VERSION=3.17.3
export NUMPY_VERSION=1.16
export PYSIDE_VERSION=5.12.6
export PYTHON_VERSION_FULL=3.7.3
export PYTHON_VERSION=3.7
export QT_VERSION=5.12.8
+1 -1
View File
@@ -77,6 +77,6 @@ mkdir breakpad
cd breakpad
fetch breakpad
cd src
./configure --prefix="${OLIVE_INSTALL_PREFIX}/breakpad"
./configure --prefix="${OLIVE_INSTALL_PREFIX}"
make
make install -j$(nproc)
+18 -2
View File
@@ -2,7 +2,7 @@
# Copyright (C) 2020 Olive Team
# SPDX-License-Identifier: GPL-3.0-or-later
# Largely copied from https://trac.ffmpeg.org/wiki/CompilationGuide/Centos
# Largely based on https://trac.ffmpeg.org/wiki/CompilationGuide/Centos
#
# Uses { command } & pattern for parallelism https://gist.github.com/thenadz/6c0584d42fb007582fbc
#
@@ -44,6 +44,21 @@ set -ex
# join jobs, some libs depend on NASM/YASM
wait
# Set up libaom
{
git clone --depth 1 --branch "${AOM_VERSION}" "https://aomedia.googlesource.com/aom"
cd aom
mkdir _build
cd _build
cmake .. \
-DCMAKE_INSTALL_PREFIX="${OLIVE_INSTALL_PREFIX}" \
-DBUILD_SHARED_LIBS=1
cmake --build .
cmake --install .
cd ../..
rm -rf aom
} &
# Set up libx264
{
# TODO: Checkout stable branch instead of master?
@@ -248,12 +263,13 @@ tar xf ffmpeg.tar.xz
cd ffmpeg*
# TODO: --enable-debug?
PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH" ./configure \
PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:$PKG_CONFIG_PATH" ./configure \
--disable-doc \
--disable-ffplay \
--enable-gpl \
--enable-version3 \
--enable-shared \
--enable-libaom \
--enable-libfreetype \
--enable-libx264 \
--enable-libx265 \
+1 -1
View File
@@ -7,7 +7,7 @@ set -ex
mkdir ocio
cd ocio
git clone --depth 1 https://github.com/AcademySoftwareFoundation/OpenColorIO.git
git clone --depth 1 --branch "${OCIO_VERSION}" https://github.com/AcademySoftwareFoundation/OpenColorIO.git
cd OpenColorIO
mkdir build
+17
View File
@@ -0,0 +1,17 @@
#!/usr/bin/env bash
git clone --depth 1 https://github.com/olive-editor/olive.git
cd olive
mkdir build
cd build
cmake .. -G "Ninja"
cmake --build .
cmake --install app --prefix appdir/usr
/usr/local/linuxdeployqt-x86_64.AppImage \
appdir/usr/share/applications/org.olivevideoeditor.Olive.desktop \
-appimage \
--appimage-extract-and-run
./Olive*.AppImage --appimage-extract-and-run --version
+6 -3
View File
@@ -11,13 +11,16 @@ cd OpenTimelineIO
# git checkout "tags/v${OTIO_VERSION}" -b "v${OTIO_VERSION}"
#fi
pip install --prefix="${OLIVE_INSTALL_PREFIX}" .
#pip install --prefix="${OLIVE_INSTALL_PREFIX}" .
mkdir build
cd build
cmake .. -G "Ninja"
cmake .. -G "Ninja" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX="${OLIVE_INSTALL_PREFIX}" \
-DOTIO_PYTHON_INSTALL=OFF
cmake --build .
cmake --install . --prefix "${OLIVE_INSTALL_PREFIX}"
cmake --install .
cd ../..
rm -rf OpenTimelineIO
+24 -8
View File
@@ -14,23 +14,38 @@ yum install --setopt=tsflags=nodocs -y \
cups-libs \
freetype-devel \
giflib-devel \
gstreamer1 gstreamer1-devel \
gstreamer1-plugins-bad-free gstreamer1-plugins-bad-free-devel \
gstreamer1 \
gstreamer1-devel \
gstreamer1-plugins-bad-free \
gstreamer1-plugins-bad-free-devel \
libicu-devel \
libmng-devel \
LibRaw-devel \
libwebp-devel \
libXcomposite libXcomposite-devel \
libXcursor libXcursor-devel \
libxkbcommon libxkbcommon-devel \
libXcomposite \
libXcomposite-devel \
libXcursor \
libXcursor-devel \
libxkbcommon \
libxkbcommon-devel \
libxkbcommon-x11-devel \
libXScrnSaver libXScrnSaver-devel \
libXScrnSaver \
libXScrnSaver-devel \
mesa-libGL-devel \
numactl-devel \
openjpeg2-devel \
pciutils-devel \
pulseaudio-libs pulseaudio-libs-devel \
pulseaudio-libs \
pulseaudio-libs-devel \
python3-tkinter \
xcb-util-image \
xcb-util-image-devel \
xcb-util-keysyms \
xcb-util-keysyms-devel \
xcb-util-renderutil \
xcb-util-renderutil-devel \
xcb-util-wm \
xcb-util-wm-devel \
zlib-devel
# This is needed for Xvfb to function properly.
@@ -56,11 +71,12 @@ yum install -y epel-release
# Additional package that are not found initially
yum install -y \
rh-git218 \
rh-git218
# lame-devel
# libcaca-devel \
# libdb4-devel \
# libdc1394-devel \
# openssl11-devel \
# p7zip \
# yasm-devel \
# zvbi-devel