commit:     16749e97eb3fbfa11c9cd9a1a21dfe20763cefb6
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Feb  4 17:52:58 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Feb  4 17:52:58 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=16749e97

kde-apps/kwave: drop "optimised" memcpy

kwave currently ships with optimised/accelerated implementations of memcpy for
various architectures, sourced from xine. This shouldn't be needed these days,
as glibc at least has various SIMD memcpy implementations, but also, compilers
are very good at both pattern recognition and vectorisation these days.

If we were to keep this, we would likely want to make it gated on USE=asm
anyway (though I think there's some other, non-memcpy AVX inline asm used
which I haven't looked at).

Bug: https://bugs.kde.org/show_bug.cgi?id=499512
Signed-off-by: Sam James <sam <AT> gentoo.org>

 kde-apps/kwave/kwave-24.12.1-r1.ebuild | 89 ++++++++++++++++++++++++++++++++++
 1 file changed, 89 insertions(+)

diff --git a/kde-apps/kwave/kwave-24.12.1-r1.ebuild 
b/kde-apps/kwave/kwave-24.12.1-r1.ebuild
new file mode 100644
index 000000000000..ee8ae228851b
--- /dev/null
+++ b/kde-apps/kwave/kwave-24.12.1-r1.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_HANDBOOK="forceoptional"
+ECM_TEST="true"
+KFMIN=6.7.0
+QTMIN=6.7.2
+inherit ecm gear.kde.org
+
+DESCRIPTION="Sound editor built on KDE Frameworks that can edit many types of 
audio files"
+HOMEPAGE="https://apps.kde.org/kwave/";
+
+LICENSE="CC-BY-SA-3.0 CC0-1.0 GPL-2+ LGPL-2+ handbook? ( FDL-1.2 ) opus? ( 
BSD-2 )"
+SLOT="6"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="alsa flac mp3 opus oss pulseaudio +qtmedia vorbis"
+
+RDEPEND="
+       >=dev-qt/qtbase-${QTMIN}:6[gui,widgets]
+       >=kde-frameworks/kcompletion-${KFMIN}:6
+       >=kde-frameworks/kconfig-${KFMIN}:6
+       >=kde-frameworks/kconfigwidgets-${KFMIN}:6
+       >=kde-frameworks/kcoreaddons-${KFMIN}:6
+       >=kde-frameworks/kcrash-${KFMIN}:6
+       >=kde-frameworks/kdbusaddons-${KFMIN}:6
+       >=kde-frameworks/ki18n-${KFMIN}:6
+       >=kde-frameworks/kiconthemes-${KFMIN}:6
+       >=kde-frameworks/kio-${KFMIN}:6
+       >=kde-frameworks/ktextwidgets-${KFMIN}:6
+       >=kde-frameworks/kwidgetsaddons-${KFMIN}:6
+       >=kde-frameworks/kxmlgui-${KFMIN}:6
+       media-libs/audiofile:=
+       >=sci-libs/fftw-3:=
+       media-libs/libsamplerate
+       alsa? ( media-libs/alsa-lib )
+       flac? ( media-libs/flac:=[cxx] )
+       mp3? (
+               media-libs/id3lib
+               media-libs/libmad
+               || (
+                       media-sound/lame
+                       media-sound/toolame
+                       media-sound/twolame
+               )
+       )
+       qtmedia? ( >=dev-qt/qtmultimedia-${QTMIN}:6 )
+       opus? (
+               media-libs/libogg
+               media-libs/opus
+       )
+       pulseaudio? ( media-libs/libpulse )
+       vorbis? (
+               media-libs/libogg
+               media-libs/libvorbis
+       )
+"
+DEPEND="${RDEPEND}
+       >=dev-qt/qtbase-${QTMIN}:6[concurrent]
+"
+BDEPEND="
+       sys-devel/gettext
+       handbook? ( || (
+               gnome-base/librsvg
+               virtual/imagemagick-tools[png,svg]
+       ) )
+"
+
+DOCS=( AUTHORS CHANGES LICENSES README.md TODO )
+
+src_configure() {
+       local mycmakeargs=(
+               -DDEBUG=$(usex debug)
+               -DWITH_ALSA=$(usex alsa)
+               -DWITH_DOC=$(usex handbook)
+               -DWITH_FLAC=$(usex flac)
+               -DWITH_MP3=$(usex mp3)
+               -DWITH_OGG_VORBIS=$(usex vorbis)
+               -DWITH_OGG_OPUS=$(usex opus)
+               -DWITH_OSS=$(usex oss)
+               # https://bugs.kde.org/show_bug.cgi?id=499512
+               -DWITH_OPTIMIZED_MEMCPY=OFF
+               -DWITH_PULSEAUDIO=$(usex pulseaudio)
+               -DWITH_QT_AUDIO=$(usex qtmedia)
+       )
+
+       ecm_src_configure
+}

Reply via email to