Physical split: app/{audio,cli,codec,common,config,node,pluginSupport,
render,task,timeline,undo,tool,shaders} plus coreengine, version and
ui/icons+colorcoding move to a new top-level engine/ tree, built as
liboakengine.so (shared). The render backends (oakgl/oakvulkan) move
with it and link the engine library instead of embedding a static
render-core subset (libolive-rendercore is gone).
- oak-render-worker now links liboakengine instead of the whole
libolive-editor object set: 336MB -> 2.9MB, no Qt Widgets UI
- the editor links liboakengine for the engine and keeps only UI
objects in libolive-editor
- install/packaging: GNUInstallDirs libdir on Linux, bundle copy on
macOS, oakengine.dll staged for NSIS, AppImage validation entry
- fix backend lookup for the new layout: DynamicRenderer searched
../app but backends now live in engine/; a stale pre-split liboakgl
in the build tree got dlopened instead, re-initialized and later
destroyed the interposed engine statics (full-suite segfault at
DialogSequenceParameterTab, found via gdb watchpoint)
85 lines
2.7 KiB
CMake
85 lines
2.7 KiB
CMake
# Olive - Non-Linear Video Editor
|
|
# Copyright (C) 2022 Olive Team
|
|
# Modifications Copyright (C) 2025 mikesolar
|
|
#
|
|
# This program is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation, either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
add_subdirectory(job)
|
|
add_subdirectory(ipc)
|
|
add_subdirectory(ocioconf)
|
|
add_subdirectory(opengl)
|
|
add_subdirectory(plugin)
|
|
set(OLIVE_SOURCES
|
|
${OLIVE_SOURCES}
|
|
render/audioplaybackcache.cpp
|
|
render/audioplaybackcache.h
|
|
render/audiowaveformcache.cpp
|
|
render/audiowaveformcache.h
|
|
render/backend/dynamicrenderer.cpp
|
|
render/backend/dynamicrenderer.h
|
|
render/backend/renderbackend_c.h
|
|
render/cancelatom.h
|
|
render/colormanagement.cpp
|
|
render/colorprocessor.cpp
|
|
render/colorprocessor.h
|
|
render/colorprocessorcache.h
|
|
render/diskmanager.cpp
|
|
render/diskmanager.h
|
|
render/framehashcache.cpp
|
|
render/framehashcache.h
|
|
render/framemanager.cpp
|
|
render/framemanager.h
|
|
render/lutlibrary.cpp
|
|
render/lutlibrary.h
|
|
render/interlacetexture.cpp
|
|
render/loopmode.h
|
|
render/managedcolor.cpp
|
|
render/managedcolor.h
|
|
render/playbackcache.cpp
|
|
render/playbackcache.h
|
|
render/previewaudiodevice.cpp
|
|
render/previewaudiodevice.h
|
|
render/previewautocacher.cpp
|
|
render/previewautocacher.h
|
|
render/projectcopier.cpp
|
|
render/projectcopier.h
|
|
render/renderer.cpp
|
|
render/renderer.h
|
|
render/rendercache.h
|
|
render/renderjobtracker.cpp
|
|
render/renderjobtracker.h
|
|
render/rendermanager.cpp
|
|
render/rendermanager.h
|
|
render/renderworkerpool.cpp
|
|
render/renderworkerpool.h
|
|
render/rendermodes.h
|
|
render/renderprocessor.cpp
|
|
render/renderprocessor.h
|
|
render/renderticket.cpp
|
|
render/renderticket.h
|
|
render/shadercode.h
|
|
render/subtitleparams.cpp
|
|
render/subtitleparams.h
|
|
render/texture.cpp
|
|
render/texture.h
|
|
render/videoparams.cpp
|
|
render/videoparams.h
|
|
PARENT_SCOPE
|
|
)
|
|
|
|
set(OLIVE_RESOURCES
|
|
${OLIVE_RESOURCES}
|
|
PARENT_SCOPE
|
|
)
|