media-sound/mixxx: Bump to 2.5.4

Signed-off-by: Nicolas PARLANT <nicolas.parlant@parhuet.fr>
Part-of: https://github.com/gentoo/gentoo/pull/45037
Closes: https://github.com/gentoo/gentoo/pull/45037
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Nicolas PARLANT 2025-12-15 11:47:15 +01:00 committed by Sam James
parent be265e7f38
commit 2f8d59f16c
No known key found for this signature in database
GPG Key ID: 738409F520DF9190
2 changed files with 172 additions and 0 deletions

View File

@ -1 +1,2 @@
DIST mixxx-2.5.3.tar.gz 40055675 BLAKE2B 613d6eb774345eff58525442d4240227fe10910854f20833358640783bf4f7b429cbedded3b644c96dd7a7bdb9ff022458c4b0398a29c8d6723d7faeb7519607 SHA512 3dbb87fdc02e2dc38a370a7c78ce66140d69b6b84f6b5db986da83dc559de0a7ed9b9c72a52e94363eb86b94fee2176718b3d8fbc921fce1741a144bd693ea9d DIST mixxx-2.5.3.tar.gz 40055675 BLAKE2B 613d6eb774345eff58525442d4240227fe10910854f20833358640783bf4f7b429cbedded3b644c96dd7a7bdb9ff022458c4b0398a29c8d6723d7faeb7519607 SHA512 3dbb87fdc02e2dc38a370a7c78ce66140d69b6b84f6b5db986da83dc559de0a7ed9b9c72a52e94363eb86b94fee2176718b3d8fbc921fce1741a144bd693ea9d
DIST mixxx-2.5.4.tar.gz 40315669 BLAKE2B 130073f0484dc34e76e3ea306c71281dc153ffb731e8a64c51ede2d42d8b00f39778b50dc3290de008311b7365485e40604e19d8312858e682e479b86940421b SHA512 ded35b6c3e6934de2f6d36c7dedc8c36b5d37cea675faf1adba870b1c1d64d8b86f12783fe5bb42828b6fbd2029fec5b2725752c295d71da70c3aa125cc13b9c

View File

@ -0,0 +1,171 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake dot-a udev xdg
DESCRIPTION="Advanced Digital DJ tool based on Qt"
HOMEPAGE="https://mixxx.org/"
if [[ ${PV} == *9999 ]] ; then
inherit git-r3
if [[ ${PV} == ?.?.9999 ]] ; then
EGIT_BRANCH=${PV%.9999}
fi
EGIT_REPO_URI="https://github.com/mixxxdj/${PN}.git"
else
SRC_URI="https://github.com/mixxxdj/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~arm64 ~x86"
fi
LICENSE="GPL-2"
SLOT="0"
# gles2-only: at least not before 2.6 for keyworded ebuild
IUSE="aac benchmark ffmpeg keyfinder lv2 midi modplug mp3 mp4 opus"
IUSE+=" qtkeychain rubberband shout test upower wavpack +X"
REQUIRED_USE="
benchmark? ( test )
qtkeychain? ( shout )
test? ( aac ffmpeg midi mp3 opus rubberband )
"
RESTRICT="!test? ( test )"
RDEPEND="
dev-db/sqlite:3
dev-cpp/abseil-cpp:=
dev-libs/hidapi
dev-libs/protobuf:=
dev-qt/qt5compat:6
dev-qt/qtbase:6[concurrent,dbus,-gles2-only,gui,icu,network,opengl,sql,sqlite,ssl,widgets,xml,X?]
dev-qt/qtdeclarative:6
dev-qt/qtshadertools:6
dev-qt/qtsvg:6
media-libs/chromaprint:=
media-libs/flac:=
media-libs/libebur128:=
media-libs/libglvnd[X?]
media-libs/libogg
media-libs/libsndfile
media-libs/libsoundtouch:=
media-libs/libvorbis
media-libs/portaudio
media-libs/taglib:=
media-sound/lame
virtual/libusb:1
virtual/udev
aac? (
media-libs/faad2
media-libs/libmp4v2
)
benchmark? (
dev-cpp/benchmark:=
dev-cpp/gtest:=
dev-util/google-perftools:=
)
ffmpeg? ( media-video/ffmpeg:= )
keyfinder? ( media-libs/libkeyfinder )
lv2? ( media-libs/lilv )
midi? ( media-libs/portmidi )
modplug? ( media-libs/libmodplug )
mp3? (
media-libs/libid3tag:=
media-libs/libmad
)
mp4? ( media-libs/libmp4v2 )
opus? (
media-libs/opus
media-libs/opusfile
)
qtkeychain? ( >=dev-libs/qtkeychain-0.14.2:=[qt6(+)] )
rubberband? ( media-libs/rubberband:= )
shout? ( dev-libs/openssl:= )
upower? (
dev-libs/glib:2
sys-power/upower:=
)
wavpack? ( media-sound/wavpack )
X? ( x11-libs/libX11 )
"
DEPEND="
${RDEPEND}
dev-cpp/gtest
dev-cpp/ms-gsl
"
BDEPEND="virtual/pkgconfig"
PATCHES=(
# Try OpenGL::OpenGL first for X11-less system
# Make libX11 optional. Merged in main branch.
"${FILESDIR}"/${PN}-2.5.2-x11_opt.patch
)
CMAKE_SKIP_TESTS=(
# need HID controller
LegacyControllerMappingValidationTest.HidMappingsValid
# randomly fails
# https://github.com/mixxxdj/mixxx/issues/12554
EngineBufferE2ETest
)
src_configure() {
# prevent ld error as package builds static libs.
lto-guarantee-fat
local mycmakeargs=(
-DBATTERY="$(usex upower)"
-DBROADCAST="$(usex shout)"
-DBUILD_SHARED_LIBS=ON
-DBUILD_TESTING="$(usex test)"
-DBUILD_BENCH="$(usex benchmark)"
# prevent duplicate call
-DCCACHE_SUPPORT=OFF
-DCMAKE_DISABLE_FIND_PACKAGE_X11=$(usex !X)
-DENGINEPRIME=OFF
-DFAAD="$(usex aac)"
-DFFMPEG="$(usex ffmpeg)"
-DGPERFTOOLS="$(usex benchmark)"
-DGPERFTOOLSPROFILER="$(usex benchmark)"
-DHID=ON
-DINSTALL_USER_UDEV_RULES=OFF
-DKEYFINDER="$(usex keyfinder)"
-DLILV="$(usex lv2)"
-DMAD="$(usex mp3)"
-DMODPLUG="$(usex modplug)"
-DOPTIMIZE=OFF
-DOPUS="$(usex opus)"
-DPORTMIDI="$(usex midi)"
# new QML-UI, experimental and not functionnal for now
-DQML=OFF
-DQTKEYCHAIN="$(usex qtkeychain)"
-DRUBBERBAND="$(usex rubberband)"
-DVINYLCONTROL=ON
-DWAVPACK="$(usex wavpack)"
)
cmake_src_configure
}
src_install() {
cmake_src_install
use benchmark && dobin "${BUILD_DIR}"/mixxx-test
udev_newrules "${S}"/res/linux/mixxx-usb-uaccess.rules 69-mixxx-usb-uaccess.rules
}
pkg_postinst() {
xdg_pkg_postinst
udev_reload
elog "Manuals are no longer part of the package."
elog "Please refer to https://downloads.mixxx.org/manual/ for up-to-date manuals."
if use benchmark; then
elog ""
elog "Launch benchmark : ${EROOT}/usr/bin/mixxx-test --benchmark"
elog "Launch Unittests : ${EROOT}/usr/bin/mixxx-test"
elog "Some test suites may not be available without source files."
fi
}
pkg_postrm() {
xdg_pkg_postrm
udev_reload
}