mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-08 21:00:05 +02:00
kwave_kf6, add (disabled) recipes for 25.08.3 and 25.12.0 (#13465)
This commit is contained in:
@@ -11,7 +11,7 @@ COPYRIGHT="2010-2025 KDE Organisation"
|
||||
LICENSE="GNU LGPL v2"
|
||||
REVISION="1"
|
||||
SOURCE_URI="https://download.kde.org/stable/release-service/$portVersion/src/kwave-$portVersion.tar.xz"
|
||||
CHECKSUM_SHA256="80c1f2eb0641148ac4256418bb581a85c16d5e1d31454a1ccd77c20295315fd7"
|
||||
CHECKSUM_SHA256="48dc786800ddc9c946fcec71258f3cf7a3adee91c1304b85da056d26ce8ca254"
|
||||
SOURCE_DIR="kwave-$portVersion"
|
||||
PATCHES="kwave-$portVersion.patchset"
|
||||
ADDITIONAL_FILES="kwave.rdef.in
|
||||
@@ -188,8 +188,6 @@ INSTALL()
|
||||
rm -rf $dataDir/icons/hicolor
|
||||
rm -rf $dataDir/applications
|
||||
|
||||
mkdir -p "$dataDir/deskbar/menu/Applications/KDE"
|
||||
|
||||
unzip -o $sourceDir/../../additional-files/icons.zip -d $dataDir/icons/haiku/actions/22
|
||||
|
||||
local APP_SIGNATURE="application/x-vnd.Qt6-kwave"
|
||||
205
kde-base/kwave/kwave_kf6-25.12.0.recipe
Normal file
205
kde-base/kwave/kwave_kf6-25.12.0.recipe
Normal file
@@ -0,0 +1,205 @@
|
||||
SUMMARY="A sound editor for KDE"
|
||||
DESCRIPTION="Kwave is a sound editor built on KDE Frameworks 6
|
||||
|
||||
Features:
|
||||
* With Kwave you can record, play back, import and edit many sorts of audio files \
|
||||
including multi channel files
|
||||
* Kwave includes some plugins to transform audio files in several ways and presents \
|
||||
a graphical view with a complete zoom and scroll capability"
|
||||
HOMEPAGE="https://apps.kde.org/kwave"
|
||||
COPYRIGHT="2010-2025 KDE Organisation"
|
||||
LICENSE="GNU LGPL v2"
|
||||
REVISION="1"
|
||||
SOURCE_URI="https://download.kde.org/stable/release-service/$portVersion/src/kwave-$portVersion.tar.xz"
|
||||
CHECKSUM_SHA256="c65bbc823f943249ed05ded7be5b62b7f75a6bcf697229f733332de0fc7c7fa8"
|
||||
SOURCE_DIR="kwave-$portVersion"
|
||||
PATCHES="kwave-$portVersion.patchset"
|
||||
ADDITIONAL_FILES="kwave.rdef.in
|
||||
icons.zip"
|
||||
|
||||
# qt-multimedia backend broken with Qt >= 6.9.1
|
||||
ARCHITECTURES="?all !x86_gcc2"
|
||||
SECONDARY_ARCHITECTURES="?x86"
|
||||
|
||||
libVersion="$portVersion"
|
||||
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
|
||||
|
||||
PROVIDES="
|
||||
kwave_kf6$secondaryArchSuffix = $portVersion
|
||||
app:Kwave = $portVersion
|
||||
lib:libkwave$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libkwavegui$secondaryArchSuffix = $libVersionCompat
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
lib:libaudiofile$secondaryArchSuffix
|
||||
lib:libfftw3$secondaryArchSuffix
|
||||
lib:libFLAC$secondaryArchSuffix
|
||||
lib:libGL$secondaryArchSuffix
|
||||
lib:libiconv$secondaryArchSuffix
|
||||
lib:libid3_3.8$secondaryArchSuffix
|
||||
lib:libintl$secondaryArchSuffix
|
||||
lib:libjpeg$secondaryArchSuffix
|
||||
lib:libmad$secondaryArchSuffix
|
||||
lib:libogg$secondaryArchSuffix
|
||||
lib:libopus$secondaryArchSuffix
|
||||
lib:libpng16$secondaryArchSuffix
|
||||
lib:libsamplerate$secondaryArchSuffix
|
||||
lib:libvorbis$secondaryArchSuffix
|
||||
lib:libz$secondaryArchSuffix
|
||||
# KF6
|
||||
lib:libKF6Archive$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:libKF6DocTools$secondaryArchSuffix
|
||||
lib:libKF6GuiAddons$secondaryArchSuffix
|
||||
lib:libKF6I18n$secondaryArchSuffix
|
||||
lib:libKF6IconThemes$secondaryArchSuffix
|
||||
lib:libKF6ItemModels$secondaryArchSuffix
|
||||
lib:libKF6ItemViews$secondaryArchSuffix
|
||||
lib:libKF6JobWidgets$secondaryArchSuffix
|
||||
lib:libKF6KIOCore$secondaryArchSuffix
|
||||
lib:libKF6KIOFileWidgets$secondaryArchSuffix
|
||||
lib:libKF6KIOWidgets$secondaryArchSuffix
|
||||
lib:libKF6Notifications$secondaryArchSuffix
|
||||
lib:libKF6Parts$secondaryArchSuffix
|
||||
lib:libKF6Service$secondaryArchSuffix
|
||||
lib:libKF6Solid$secondaryArchSuffix
|
||||
lib:libKF6SonnetUi$secondaryArchSuffix
|
||||
lib:libKF6TextWidgets$secondaryArchSuffix
|
||||
lib:libKF6UnitConversion$secondaryArchSuffix
|
||||
lib:libKF6WidgetsAddons$secondaryArchSuffix
|
||||
lib:libKF6WindowSystem$secondaryArchSuffix
|
||||
lib:libKF6XmlGui$secondaryArchSuffix
|
||||
# Qt6
|
||||
lib:libQt6Core$secondaryArchSuffix
|
||||
lib:libQt6DBus$secondaryArchSuffix
|
||||
lib:libQt6Gui$secondaryArchSuffix
|
||||
lib:libQt6Network$secondaryArchSuffix
|
||||
lib:libQt6PrintSupport$secondaryArchSuffix
|
||||
lib:libQt6Widgets$secondaryArchSuffix
|
||||
lib:libQt6Xml$secondaryArchSuffix
|
||||
"
|
||||
CONFLICTS="
|
||||
kwave$secondaryArchSuffix
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
devel:libaudiofile$secondaryArchSuffix
|
||||
devel:libfftw3$secondaryArchSuffix
|
||||
devel:libFLAC$secondaryArchSuffix
|
||||
devel:libiconv$secondaryArchSuffix
|
||||
devel:libid3_3.8$secondaryArchSuffix
|
||||
devel:libintl$secondaryArchSuffix
|
||||
devel:libjpeg$secondaryArchSuffix
|
||||
devel:libmad$secondaryArchSuffix
|
||||
devel:libogg$secondaryArchSuffix
|
||||
devel:libopus$secondaryArchSuffix
|
||||
devel:libpng16$secondaryArchSuffix
|
||||
devel:libsamplerate$secondaryArchSuffix
|
||||
devel:libvorbis$secondaryArchSuffix
|
||||
devel:libz$secondaryArchSuffix
|
||||
# KF6
|
||||
extra_cmake_modules$secondaryArchSuffix
|
||||
devel:libPlasmaActivities$secondaryArchSuffix
|
||||
devel:libKF6Archive$secondaryArchSuffix
|
||||
devel:libKF6AuthCore$secondaryArchSuffix
|
||||
devel:libKF6Bookmarks$secondaryArchSuffix
|
||||
devel:libKF6Codecs$secondaryArchSuffix
|
||||
devel:libKF6ColorScheme$secondaryArchSuffix
|
||||
devel:libKF6Completion$secondaryArchSuffix
|
||||
devel:libKF6ConfigCore$secondaryArchSuffix
|
||||
devel:libKF6ConfigGui$secondaryArchSuffix
|
||||
devel:libKF6ConfigWidgets$secondaryArchSuffix
|
||||
devel:libKF6CoreAddons$secondaryArchSuffix
|
||||
devel:libKF6Crash$secondaryArchSuffix
|
||||
devel:libKF6GuiAddons$secondaryArchSuffix
|
||||
devel:libKF6I18n$secondaryArchSuffix
|
||||
devel:libKF6IconThemes$secondaryArchSuffix
|
||||
devel:libKF6ItemModels$secondaryArchSuffix
|
||||
devel:libKF6ItemViews$secondaryArchSuffix
|
||||
devel:libKF6JobWidgets$secondaryArchSuffix
|
||||
devel:libKF6KIOCore$secondaryArchSuffix
|
||||
devel:libKF6KIOFileWidgets$secondaryArchSuffix
|
||||
devel:libKF6KIOWidgets$secondaryArchSuffix
|
||||
devel:libKF6Notifications$secondaryArchSuffix
|
||||
devel:libKF6Parts$secondaryArchSuffix
|
||||
devel:libKF6Service$secondaryArchSuffix
|
||||
devel:libKF6Solid$secondaryArchSuffix
|
||||
devel:libKF6SonnetUi$secondaryArchSuffix
|
||||
devel:libKF6TextWidgets$secondaryArchSuffix
|
||||
devel:libKF6UnitConversion$secondaryArchSuffix
|
||||
devel:libKF6WidgetsAddons$secondaryArchSuffix
|
||||
devel:libKF6WindowSystem$secondaryArchSuffix
|
||||
devel:libKF6XmlGui$secondaryArchSuffix
|
||||
# Qt6
|
||||
devel:libQt6Core$secondaryArchSuffix
|
||||
devel:libQt6Multimedia$secondaryArchSuffix
|
||||
devel:libQt6Qml$secondaryArchSuffix
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
cmd:cmake
|
||||
cmd:find
|
||||
cmd:g++$secondaryArchSuffix
|
||||
cmd:make
|
||||
cmd:msgfmt$secondaryArchSuffix
|
||||
cmd:msgmerge$secondaryArchSuffix
|
||||
cmd:python3
|
||||
cmd:pkg_config$secondaryArchSuffix
|
||||
cmd:unzip
|
||||
"
|
||||
|
||||
BUILD()
|
||||
{
|
||||
cmake -B build -S . -DCMAKE_BUILD_TYPE=Release \
|
||||
$cmakeDirArgs \
|
||||
-DCMAKE_INSTALL_BINDIR=$appsDir \
|
||||
-DWITH_OSS=OFF \
|
||||
-DWITH_DOC=OFF \
|
||||
-DWITH_PULSEAUDIO=OFF \
|
||||
-DWITH_ALSA=OFF \
|
||||
-DWITH_MP3=ON \
|
||||
-DWITH_QT_AUDIO=ON \
|
||||
-DBUILD_TESTING=OFF \
|
||||
-Wno-dev
|
||||
|
||||
make -C build $jobArgs
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
make -C build install
|
||||
|
||||
mv $appsDir/kwave $appsDir/Kwave
|
||||
|
||||
mkdir -p $dataDir/icons/haiku/actions/22
|
||||
rm -rf $dataDir/icons/hicolor
|
||||
rm -rf $dataDir/applications
|
||||
|
||||
unzip -o $sourceDir/../../additional-files/icons.zip -d $dataDir/icons/haiku/actions/22
|
||||
|
||||
local APP_SIGNATURE="application/x-vnd.Qt6-kwave"
|
||||
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
|
||||
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
|
||||
local MINOR="`echo "$portVersion" | cut -d. -f3`"
|
||||
local LONG_INFO="$SUMMARY"
|
||||
sed \
|
||||
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
|
||||
-e "s|@MAJOR@|$MAJOR|" \
|
||||
-e "s|@MIDDLE@|$MIDDLE|" \
|
||||
-e "s|@MINOR@|$MINOR|" \
|
||||
-e "s|@LONG_INFO@|$LONG_INFO|" \
|
||||
$portDir/additional-files/kwave.rdef.in > kwave.rdef
|
||||
|
||||
addResourcesToBinaries kwave.rdef $appsDir/Kwave
|
||||
addAppDeskbarSymlink $appsDir/Kwave
|
||||
}
|
||||
180
kde-base/kwave/patches/kwave-25.12.0.patchset
Normal file
180
kde-base/kwave/patches/kwave-25.12.0.patchset
Normal file
@@ -0,0 +1,180 @@
|
||||
From 7cdd16399c633f2e6347eb3a4a12eac76073629f Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Sun, 24 Mar 2019 21:46:12 +1000
|
||||
Subject: Fix error: overflow in constant expression [-fpermissive]
|
||||
|
||||
|
||||
diff --git a/kwave/TopWidget.cpp b/kwave/TopWidget.cpp
|
||||
index efc0cc1..15c3dfb 100644
|
||||
--- a/kwave/TopWidget.cpp
|
||||
+++ b/kwave/TopWidget.cpp
|
||||
@@ -1045,6 +1045,7 @@ int Kwave::TopWidget::loadFile(const QUrl &url)
|
||||
if (res != 0) {
|
||||
qWarning("TopWidget::loadFile() failed: result=%d", res);
|
||||
QString reason;
|
||||
+#ifndef Q_OS_HAIKU
|
||||
switch (res) {
|
||||
case -ENOMEM:
|
||||
reason = i18n("Out of memory");
|
||||
@@ -1061,6 +1062,7 @@ int Kwave::TopWidget::loadFile(const QUrl &url)
|
||||
default:
|
||||
reason = _("");
|
||||
}
|
||||
+#endif
|
||||
|
||||
// show an error message box if the reason was known
|
||||
if (reason.length()) {
|
||||
--
|
||||
2.51.0
|
||||
|
||||
|
||||
From 5dafbf927ac6a2c8ecca1346c5079ed57397d8f3 Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Sun, 31 Mar 2019 15:27:01 +1000
|
||||
Subject: Increase sound buffer
|
||||
|
||||
|
||||
diff --git a/libkwave/PlayBackParam.h b/libkwave/PlayBackParam.h
|
||||
index 6e8843a..c0400e5 100644
|
||||
--- a/libkwave/PlayBackParam.h
|
||||
+++ b/libkwave/PlayBackParam.h
|
||||
@@ -56,7 +56,7 @@ namespace Kwave
|
||||
/** Default constructor */
|
||||
PlayBackParam()
|
||||
:rate(44100), channels(2), bits_per_sample(16),
|
||||
- device(), bufbase(10),
|
||||
+ device(), bufbase(13),
|
||||
method(Kwave::PLAYBACK_NONE)
|
||||
{
|
||||
}
|
||||
--
|
||||
2.51.0
|
||||
|
||||
|
||||
From e6b7ef3a3c3b3b24a76ea74b2ec0857fa29cfd22 Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Sat, 16 Nov 2024 17:54:31 +0100
|
||||
Subject: Disable DBus on Haiku, don't build documentation
|
||||
|
||||
Co-authored-by: Schrijvers Luc <begasus@gmail.com>
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 1677f52..35762f9 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -171,8 +171,6 @@ FIND_PACKAGE(KF6 ${KF_MIN_VERSION} REQUIRED COMPONENTS
|
||||
ConfigWidgets
|
||||
CoreAddons
|
||||
Crash
|
||||
- DBusAddons
|
||||
- DocTools
|
||||
I18n
|
||||
IconThemes
|
||||
KIO
|
||||
@@ -181,6 +179,14 @@ FIND_PACKAGE(KF6 ${KF_MIN_VERSION} REQUIRED COMPONENTS
|
||||
WidgetsAddons
|
||||
)
|
||||
|
||||
+# OPTION(WITH_DBUS) "enable KF6::DBbusAddons [default=on]" ON)
|
||||
+IF (NOT HAIKU)
|
||||
+ SET(WITH_DBUS on)
|
||||
+ FIND_PACKAGE(KF6 ${KF_MIN_VERSION} REQUIRED COMPONENTS
|
||||
+ DBusAddons
|
||||
+ )
|
||||
+ENDIF (WITH_DBUS)
|
||||
+
|
||||
IF (NOT WITH_DOC)
|
||||
SET_PACKAGE_PROPERTIES(KF6DocTools
|
||||
PROPERTIES DESCRIPTION "Tools to generate documentation"
|
||||
@@ -387,7 +393,9 @@ ADD_CUSTOM_TARGET(wrapper
|
||||
### install translations ###
|
||||
|
||||
ki18n_install(po)
|
||||
-kdoctools_install(po)
|
||||
+IF (WITH_DOC)
|
||||
+ kdoctools_install(po)
|
||||
+ENDIF (WITH_DOC)
|
||||
|
||||
#############################################################################
|
||||
|
||||
diff --git a/config.h.cmake b/config.h.cmake
|
||||
index 726dc2d..796cee2 100644
|
||||
--- a/config.h.cmake
|
||||
+++ b/config.h.cmake
|
||||
@@ -24,6 +24,9 @@
|
||||
/* support playback/recording via PulseAudio */
|
||||
#cmakedefine HAVE_PULSEAUDIO_SUPPORT
|
||||
|
||||
+/* support DBUS */
|
||||
+#cmakedefine01 WITH_DBUS
|
||||
+
|
||||
/* support playback via Qt */
|
||||
#cmakedefine HAVE_QT_AUDIO_SUPPORT
|
||||
|
||||
diff --git a/kwave/CMakeLists.txt b/kwave/CMakeLists.txt
|
||||
index 62b7459..c97fd25 100644
|
||||
--- a/kwave/CMakeLists.txt
|
||||
+++ b/kwave/CMakeLists.txt
|
||||
@@ -83,13 +83,18 @@ TARGET_LINK_LIBRARIES(kwave_core
|
||||
KF6::Completion
|
||||
KF6::ConfigCore
|
||||
KF6::Crash
|
||||
- KF6::DBusAddons
|
||||
KF6::I18n
|
||||
KF6::IconThemes
|
||||
KF6::KIOFileWidgets
|
||||
KF6::XmlGui
|
||||
)
|
||||
|
||||
+IF (WITH_DBUS)
|
||||
+TARGET_LINK_LIBRARIES(kwave_core
|
||||
+ KF6::DBusAddons
|
||||
+)
|
||||
+ENDIF (WITH_DBUS)
|
||||
+
|
||||
SET_TARGET_PROPERTIES(kwave_core PROPERTIES
|
||||
OUTPUT_NAME "kwave"
|
||||
ENABLE_EXPORTS TRUE
|
||||
diff --git a/kwave/main.cpp b/kwave/main.cpp
|
||||
index 7457a5c..3ac2e54 100644
|
||||
--- a/kwave/main.cpp
|
||||
+++ b/kwave/main.cpp
|
||||
@@ -25,7 +25,9 @@
|
||||
|
||||
#include <KAboutData>
|
||||
#include <KCrash>
|
||||
-#include <KDBusService>
|
||||
+#if WITH_DBUS
|
||||
+ #include <KDBusService>
|
||||
+#endif
|
||||
#include <KLocalizedString>
|
||||
#include <kxmlgui_version.h>
|
||||
|
||||
@@ -226,7 +228,9 @@ int main(int argc, char **argv)
|
||||
about.processCommandLine(&cmdline);
|
||||
|
||||
/* let Kwave be a "unique" application, only one instance */
|
||||
+#if WITH_DBUS
|
||||
KDBusService service(KDBusService::Unique);
|
||||
+#endif
|
||||
|
||||
// check whether to start up without splash screen or in iconic mode
|
||||
// which implicitly also disables the splash screen
|
||||
@@ -238,12 +242,14 @@ int main(int argc, char **argv)
|
||||
// now as the splash screen is in place, we can start a new instance
|
||||
retval = app.newInstance(app.arguments(), QString());
|
||||
|
||||
+#if WITH_DBUS
|
||||
QObject::connect(
|
||||
&service,
|
||||
SIGNAL(activateRequested(QStringList,QString)),
|
||||
&app,
|
||||
SLOT(newInstance(QStringList,QString))
|
||||
);
|
||||
+#endif
|
||||
|
||||
if (retval != ECANCELED)
|
||||
retval = app.exec();
|
||||
--
|
||||
2.51.0
|
||||
|
||||
Reference in New Issue
Block a user