kdenlive, add (disabled) KF6 version (#11720)

This commit is contained in:
Schrijvers Luc
2025-02-04 21:10:03 +01:00
committed by GitHub
parent 344b91d6de
commit 4fd5ce2c40
2 changed files with 205 additions and 0 deletions

View File

@@ -0,0 +1,182 @@
SUMMARY="Free and open source video editor"
DESCRIPTION="Through the MLT framework, Kdenlive integrates many plugin effects for video and \
sound processing or creation. Furthermore Kdenlive brings a powerful titling tool, a DVD \
authoring (menus) solution, and can then be used as a complete studio for video creation. \
Video effects are provided by freior while audio effects use ladspa."
HOMEPAGE="https://invent.kde.org/multimedia/kdenlive"
COPYRIGHT="2010-2024 KDE Organisation"
LICENSE="GNU GPL v2"
REVISION="1"
SOURCE_URI="https://download.kde.org/stable/release-service/$portVersion/src/kdenlive-$portVersion.tar.xz"
CHECKSUM_SHA256="6d1345462a1ad9a725dbf9ab42b8b340eeafc8437d9c0f52ac5ebacfdfd9b8b2"
SOURCE_DIR="kdenlive-$portVersion"
PATCHES="kdenlive24-$portVersion.patchset"
ADDITIONAL_FILES="kdenlive.rdef.in"
ARCHITECTURES="?all !x86_gcc2"
SECONDARY_ARCHITECTURES="?x86"
PROVIDES="
kdenlive24$secondaryArchSuffix = $portVersion
cmd:kdenlive$secondaryArchSuffix = $portVersion
cmd:kdenlive_render$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
frei0r$secondaryArchSuffix
cmd:mediainfo
lib:libmlt++_7$secondaryArchSuffix
# KF6
lib:libGL$secondaryArchSuffix
lib:libopenal$secondaryArchSuffix
lib:libKF6Archive$secondaryArchSuffix
lib:libKF6Attica$secondaryArchSuffix
lib:libKF6AuthCore$secondaryArchSuffix
lib:libKF6Bookmarks$secondaryArchSuffix
lib:libKF6Codecs$secondaryArchSuffix
lib:libKF6ColorScheme$secondaryArchSuffix
lib:libKF6Completion$secondaryArchSuffix
lib:libKF6ConfigCore$secondaryArchSuffix
lib:libKF6ConfigGui$secondaryArchSuffix
lib:libKF6ConfigWidgets$secondaryArchSuffix
lib:libKF6CoreAddons$secondaryArchSuffix
lib:libKF6Crash$secondaryArchSuffix
# lib:libKF6DbusAddons$secondaryArchSuffix
lib:libKF6FileMetaData$secondaryArchSuffix
lib:libKF6GuiAddons$secondaryArchSuffix
lib:libKF6I18n$secondaryArchSuffix
lib:libKF6IconThemes$secondaryArchSuffix
lib:libKF6ItemViews$secondaryArchSuffix
lib:libKF6KIOCore$secondaryArchSuffix
lib:libKF6KIOFileWidgets$secondaryArchSuffix
lib:libKF6KIOGui$secondaryArchSuffix
lib:libKF6KIOWidgets$secondaryArchSuffix
lib:libKF6JobWidgets$secondaryArchSuffix
lib:libKF6NewStuffCore$secondaryArchSuffix
lib:libKF6NewStuffWidgets$secondaryArchSuffix
lib:libKF6Notifications$secondaryArchSuffix
lib:libKF6NotifyConfig$secondaryArchSuffix
lib:libKF6Package$secondaryArchSuffix
lib:libKF6Purpose$secondaryArchSuffix
lib:libKF6PurposeWidgets$secondaryArchSuffix
lib:libKF6Service$secondaryArchSuffix
lib:libKF6Solid$secondaryArchSuffix
lib:libKF6SonnetUi$secondaryArchSuffix
lib:libKF6TextWidgets$secondaryArchSuffix
lib:libKF6WidgetsAddons$secondaryArchSuffix
lib:libKF6WindowSystem$secondaryArchSuffix
lib:libKF6XmlGui$secondaryArchSuffix
# Qt6
lib:libQt6Core$secondaryArchSuffix
lib:libQt6DBus$secondaryArchSuffix
lib:libQt6Gui$secondaryArchSuffix
lib:libQt6Multimedia$secondaryArchSuffix
lib:libQt6NetworkAuth$secondaryArchSuffix
lib:libQt6Qml$secondaryArchSuffix
lib:libQt6Quick$secondaryArchSuffix
lib:libQt6Svg$secondaryArchSuffix
lib:libQt6Widgets$secondaryArchSuffix
lib:libQt6Xml$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libavformat$secondaryArchSuffix >= 60
devel:frei0r$secondaryArchSuffix
devel:libgdk_pixbuf_2.0$secondaryArchSuffix
devel:libmediainfo$secondaryArchSuffix
devel:libmlt++_7$secondaryArchSuffix
# KF6
extra_cmake_modules$secondaryArchSuffix
devel:libKF6Archive$secondaryArchSuffix
devel:libKF6Attica$secondaryArchSuffix
devel:libKF6Bookmarks$secondaryArchSuffix
devel:libKF6Codecs$secondaryArchSuffix
devel:libKF6Colorscheme$secondaryArchSuffix
devel:libKF6Completion$secondaryArchSuffix
devel:libKF6ConfigCore$secondaryArchSuffix
devel:libKF6ConfigWidgets$secondaryArchSuffix
devel:libKF6CoreAddons$secondaryArchSuffix
devel:libKF6Crash$secondaryArchSuffix
# devel:libKF6DbusAddons$secondaryArchSuffix
devel:libKF6FileMetaData$secondaryArchSuffix
devel:libKF6GuiAddons$secondaryArchSuffix
devel:libKF6IconThemes$secondaryArchSuffix
devel:libKF6ItemViews$secondaryArchSuffix
devel:libKF6JobWidgets$secondaryArchSuffix
devel:libKF6KIOCore$secondaryArchSuffix
devel:libKF6NewStuffCore$secondaryArchSuffix
devel:libKF6Notifications$secondaryArchSuffix
devel:libKF6NotifyConfig$secondaryArchSuffi
devel:libKF6Purpose$secondaryArchSuffix
devel:libKF6Service$secondaryArchSuffix
devel:libKF6Solid$secondaryArchSuffix
devel:libKF6TextWidgets$secondaryArchSuffix
devel:libKF6WidgetsAddons$secondaryArchSuffix
devel:libKF6WindowSystem$secondaryArchSuffix
devel:libKF6XmlGui$secondaryArchSuffix
# Qt6
devel:libQt6Core$secondaryArchSuffix
devel:libQt6Multimedia$secondaryArchSuffix
devel:libQt6NetworkAuth$secondaryArchSuffix
devel:libQt6Qml$secondaryArchSuffix
devel:libQt6Svg$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:g++$secondaryArchSuffix
cmd:make
cmd:msgfmt$secondaryArchSuffix
cmd:msgmerge$secondaryArchSuffix
cmd:pkg_config$secondaryArchSuffix
cmd:python3
"
BUILD()
{
cmake -Bbuild -S. $cmakeDirArgs \
-DCMAKE_BUILD_TYPE=Release \
-DKDE_INSTALL_DATAROOTDIR=$dataDir \
-DKDE_INSTALL_PLUGINDIR=$addOnsDir/Qt6 \
-DKDE_INSTALL_QTPLUGINDIR=$addOnsDir/Qt6 \
-DECM_DIR=/system/data/cmake/Modules/ECM/cmake \
-DBUILD_TESTING=OFF
make -C build $jobArgs
}
INSTALL()
{
make -C build install
# cleanup
rm -rf $dataDir/{applications,icons,metainfo}
rm -rf $dataDir/mime/{aliases,generic-icons,globs,globs2,icons,magic}
rm -rf $dataDir/mime/{mime.cache,subclasses,treemagic,types,version,XMLnamespaces}
mkdir -p "$dataDir/deskbar/menu/Applications/KDE"
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
local MINOR="`echo "$portVersion" | cut -d. -f3`"
local APP_NAME="Kdenlive"
local LONG_INFO="$SUMMARY"
local APP_SIGNATURE="application/x-vnd.kdenlive"
sed \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
-e "s|@LONG_INFO@|$LONG_INFO|" \
-e "s|@APP_NAME@|$APP_NAME|" \
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
$portDir/additional-files/kdenlive.rdef.in > kdenlive.rdef
addResourcesToBinaries kdenlive.rdef $prefix/bin/kdenlive
addAppDeskbarSymlink $prefix/bin/kdenlive "KDE/Kdenlive"
}
TEST()
{
# 82% tests passed, 5 tests failed out of 28
ctest --test-dir build --output-on-failure
}

View File

@@ -0,0 +1,23 @@
From b2b173fccdc194e48bf768a420703166fab4181b Mon Sep 17 00:00:00 2001
From: Schrijvers Luc <begasus@gmail.com>
Date: Thu, 26 Dec 2024 17:44:51 +0100
Subject: Use Haiku icon style
diff --git a/src/main.cpp b/src/main.cpp
index b4d5107..5917bda 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -196,7 +196,9 @@ int main(int argc, char *argv[])
QCoreApplication::setAttribute(Qt::AA_ShareOpenGLContexts, true);
// trigger initialisation of proper icon theme
+#if !defined(Q_OS_HAIKU)
KIconTheme::initTheme();
+#endif
QApplication app(argc, argv);
--
2.45.2