[packages/mixxx] - updated to 2.5.2 (now defaults to qt6, ready for taglib 2)

qboosh qboosh at pld-linux.org
Fri Aug 29 17:13:02 CEST 2025


commit 85054e3a834a78180789ce6d1fad65c00fc6469c
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Fri Aug 29 17:15:44 2025 +0200

    - updated to 2.5.2 (now defaults to qt6, ready for taglib 2)

 mixxx-libdjinterop.patch |  13 ++--
 mixxx-msgsl.patch        |  26 +++----
 mixxx-taglib2.patch      | 184 -----------------------------------------------
 mixxx.spec               |  52 +++++++++++---
 4 files changed, 62 insertions(+), 213 deletions(-)
---
diff --git a/mixxx.spec b/mixxx.spec
index 03b1423..dc8676b 100644
--- a/mixxx.spec
+++ b/mixxx.spec
@@ -1,33 +1,33 @@
-# TODO: system shoutidjc >= 2.4.6?
 #
 # Conditional build:
 %bcond_without	faad		# FAAD AAC audio decoder
 %bcond_without	ffmpeg		# FFmpeg support
 %bcond_without	hidapi		# HID controller support
 %bcond_without	lv2		# LV2 support
+%bcond_with	qt5		# Qt5 instead of Qt6
 %bcond_without	qtkeychain	# secure credentials storage for Live Broadcasting profiles (qt5 only, see below)
-%bcond_with	taglib2		# allow Taglib 2 (not fully supported)
 %bcond_without	upower		# UPower battery state support
 %bcond_without	wavpack		# WavPack audio decoder
 
 %define		qt5_ver		5.12
+%define		qt6_ver		6.2
 
 Summary:	Mixxx - DJ tool
 Summary(hu.UTF-8):	Mixxx - DJ program
 Summary(pl.UTF-8):	Mixxx - narzędzie dla DJ-ów
 Name:		mixxx
-Version:	2.4.1
-Release:	2
+Version:	2.5.2
+Release:	1
 License:	GPL v2+ (code), Apache v2.0 (OpenSans font), Ubuntu Font License v1.0 (Ubuntu fonts)
 Group:		X11/Applications/Multimedia
 Source0:	https://github.com/mixxxdj/mixxx/archive/%{version}/%{name}-%{version}.tar.gz
-# Source0-md5:	95d2cc0cb35b88164615a75d9466bc0f
+# Source0-md5:	5d986f81243d2867a139fb28e6cb5e2c
 Patch0:		%{name}-build-type.patch
-Patch1:		%{name}-taglib2.patch
 Patch2:		%{name}-msgsl.patch
 Patch3:		%{name}-libdjinterop.patch
 URL:		https://mixxx.org/
 BuildRequires:	OpenGL-devel
+%if %{with qt5}
 BuildRequires:	Qt5Concurrent-devel >= %{qt5_ver}
 BuildRequires:	Qt5Core-devel >= %{qt5_ver}
 BuildRequires:	Qt5DBus-devel >= %{qt5_ver}
@@ -37,6 +37,8 @@ BuildRequires:	Qt5Network-devel >= %{qt5_ver}
 BuildRequires:	Qt5OpenGL-devel >= %{qt5_ver}
 BuildRequires:	Qt5PrintSupport-devel >= %{qt5_ver}
 BuildRequires:	Qt5Qml-devel >= %{qt5_ver}
+BuildRequires:	Qt5Quick-devel >= %{qt5_ver}
+BuildRequires:	Qt5Quick-controls2-devel >= %{qt5_ver}
 BuildRequires:	Qt5Script-devel >= %{qt5_ver}
 BuildRequires:	Qt5ScriptTools-devel >= %{qt5_ver}
 BuildRequires:	Qt5Sql-devel >= %{qt5_ver}
@@ -45,6 +47,25 @@ BuildRequires:	Qt5Test-devel >= %{qt5_ver}
 BuildRequires:	Qt5Widgets-devel >= %{qt5_ver}
 BuildRequires:	Qt5X11Extras-devel >= %{qt5_ver}
 BuildRequires:	Qt5Xml-devel >= %{qt5_ver}
+%else
+BuildRequires:	Qt6Concurrent-devel >= %{qt6_ver}
+BuildRequires:	Qt6Core-devel >= %{qt6_ver}
+BuildRequires:	Qt6DBus-devel >= %{qt6_ver}
+BuildRequires:	Qt6Gui-devel >= %{qt6_ver}
+%{?with_qtkeychain:BuildRequires:	Qt6Keychain-devel}
+BuildRequires:	Qt6Network-devel >= %{qt6_ver}
+BuildRequires:	Qt6OpenGL-devel >= %{qt6_ver}
+BuildRequires:	Qt6PrintSupport-devel >= %{qt6_ver}
+BuildRequires:	Qt6Qml-devel >= %{qt6_ver}
+BuildRequires:	Qt6Quick-devel >= %{qt6_ver}
+BuildRequires:	Qt6Qt5Compat-devel >= %{qt6_ver}
+BuildRequires:	Qt6ShaderTools-devel >= %{qt6_ver}
+BuildRequires:	Qt6Sql-devel >= %{qt6_ver}
+BuildRequires:	Qt6Svg-devel >= %{qt6_ver}
+BuildRequires:	Qt6Test-devel >= %{qt6_ver}
+BuildRequires:	Qt6Widgets-devel >= %{qt6_ver}
+BuildRequires:	Qt6Xml-devel >= %{qt6_ver}
+%endif
 BuildRequires:	cmake >= 3.16
 # libavcodec >= 58.35.100 libavformat >= 58.20.100 libavutil >= 56.22.100 libswresample >= 3.3.100
 %{?with_ffmpeg:BuildRequires:	ffmpeg-devel >= 4.1.9}
@@ -54,15 +75,14 @@ BuildRequires:	gtest-devel
 %{?with_hidapi:BuildRequires:	hidapi-devel >= 0.11.2}
 BuildRequires:	lame-libs-devel
 BuildRequires:	libchromaprint-devel
-BuildRequires:	libdjinterop-devel >= 0.20.2
+BuildRequires:	libdjinterop-devel >= 0.24.3
 BuildRequires:	libebur128-devel
 BuildRequires:	libid3tag-devel
 BuildRequires:	libmad-devel
 BuildRequires:	libmodplug-devel
 BuildRequires:	libogg-devel
 BuildRequires:	libkeyfinder-devel >= 2.2.8
-# TODO: use system package when appropriate version gets released
-#BuildRequires:	libshout-idjc-devel >= 2.4.6
+BuildRequires:	libshout-idjc-devel >= 2.4.6
 BuildRequires:	libsndfile-devel
 # -std=c++20
 BuildRequires:	libstdc++-devel >= 6:8
@@ -81,24 +101,32 @@ BuildRequires:	portmidi-devel >= 217
 BuildRequires:	protobuf-devel
 BuildRequires:	python3 >= 1:3
 BuildRequires:	rubberband-devel
+%if %{with qt5}
 BuildRequires:	qt5-build >= %{qt5_ver}
 BuildRequires:	qt5-linguist >= %{qt5_ver}
+%else
+BuildRequires:	qt6-build >= %{qt6_ver}
+BuildRequires:	qt6-linguist >= %{qt6_ver}
+BuildRequires:	qt6-shadertools >= %{qt6_ver}
+%endif
 BuildRequires:	rpmbuild(macros) >= 1.605
 BuildRequires:	sed >= 4.0
 BuildRequires:	soundtouch-devel >= 2.1.2
 BuildRequires:	sqlite3-devel >= 3
 BuildRequires:	taglib-devel >= 1.11
-%{!?with_taglib2:BuildRequires:	taglib-devel < 2}
 BuildRequires:	udev-devel
 %{?with_upower:BuildRequires:	upower-devel}
 %{?with_wavpack:BuildRequires:	wavpack-devel}
 BuildRequires:	xorg-lib-libX11-devel
+BuildRequires:	xorg-lib-libxkbcommon-devel >= 0.5.0
 # for local djinterop
 BuildRequires:	zlib-devel >= 1.2.8
 Requires:	Qt5Sql-sqldriver-sqlite3 >= %{qt5_ver}
 %{?with_ffmpeg:Requires:	ffmpeg-libs >= 4.1.9}
 %{?with_hidapi:Requires:	hidapi >= 0.11.2}
+Requires:	libdjinterop >= 0.24.3
 Requires:	libkeyfinder >= 2.2.8
+Requires:	libshout-idjc >= 2.4.6
 Requires:	soundtouch >= 2.1.2
 Requires:	taglib >= 1.11
 Requires:	zlib >= 1.2.8
@@ -134,7 +162,6 @@ Podstawowe skórki dla programu Mixxx.
 %prep
 %setup -q
 %patch -P0 -p1
-%{?with_taglib2:%patch -P1 -p1}
 %patch -P2 -p1
 %patch -P3 -p1
 
@@ -190,12 +217,14 @@ rm -rf $RPM_BUILD_ROOT
 %{_datadir}/mixxx/controllers
 %{_datadir}/mixxx/effects
 %{_datadir}/mixxx/keyboard
+%{_datadir}/mixxx/qml
 %dir %{_datadir}/mixxx/skins
 %{_datadir}/mixxx/skins/*.qss
 # This is the default skin
 %{_datadir}/mixxx/skins/Deere
 %dir %{_datadir}/mixxx/translations
 %lang(ar) %{_datadir}/mixxx/translations/mixxx_ar.qm
+%lang(ar_DZ) %{_datadir}/mixxx/translations/mixxx_ar_DZ.qm
 %lang(ast) %{_datadir}/mixxx/translations/mixxx_ast.qm
 %lang(bg) %{_datadir}/mixxx/translations/mixxx_bg.qm
 %lang(br) %{_datadir}/mixxx/translations/mixxx_br.qm
@@ -270,6 +299,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_desktopdir}/org.mixxx.Mixxx.desktop
 %{_iconsdir}/hicolor/*x*/apps/mixxx.png
 %{_iconsdir}/hicolor/scalable/apps/mixxx.svg
+%{_iconsdir}/hicolor/scalable/apps/mixxx_ios.svg
 
 %files skins-core
 %defattr(644,root,root,755)
diff --git a/mixxx-libdjinterop.patch b/mixxx-libdjinterop.patch
index c788276..4983083 100644
--- a/mixxx-libdjinterop.patch
+++ b/mixxx-libdjinterop.patch
@@ -1,11 +1,14 @@
---- mixxx-2.4.1/CMakeLists.txt.orig	2024-09-28 21:47:06.674846532 +0200
-+++ mixxx-2.4.1/CMakeLists.txt	2024-09-28 22:01:31.953175308 +0200
-@@ -2283,7 +2283,7 @@ if(ENGINEPRIME)
+--- mixxx-2.5.2/CMakeLists.txt.orig	2025-08-29 06:18:22.546245677 +0200
++++ mixxx-2.5.2/CMakeLists.txt	2025-08-29 06:19:12.115896755 +0200
+@@ -2423,9 +2423,9 @@ if(ENGINEPRIME)
    # statically.  This situation should be reviewed once libdjinterop hits version 1.x.
-   set(LIBDJINTEROP_VERSION 0.20.2)
+   set(LIBDJINTEROP_VERSION 0.24.3)
    # Look whether an existing installation of libdjinterop matches the required version.
 -  find_package(DjInterop  ${LIBDJINTEROP_VERSION} EXACT CONFIG)
 +  find_package(DjInterop  ${LIBDJINTEROP_VERSION} CONFIG)
    if(NOT DjInterop_FOUND)
-     find_package(DjInterop  ${LIBDJINTEROP_VERSION} EXACT MODULE)
+-    find_package(DjInterop  ${LIBDJINTEROP_VERSION} EXACT MODULE)
++    find_package(DjInterop  ${LIBDJINTEROP_VERSION} MODULE)
    endif()
+ 
+   if(DjInterop_FOUND)
diff --git a/mixxx-msgsl.patch b/mixxx-msgsl.patch
index 9c0108d..82b02bd 100644
--- a/mixxx-msgsl.patch
+++ b/mixxx-msgsl.patch
@@ -1,20 +1,20 @@
---- mixxx-2.4.1/CMakeLists.txt.orig	2024-05-08 23:05:56.000000000 +0200
-+++ mixxx-2.4.1/CMakeLists.txt	2024-09-25 18:27:13.893167991 +0200
-@@ -1754,7 +1754,7 @@ endif()
- # src/qmldlgpreferencesproxy.h, which is #included from src/qmlapplication.h.
- target_include_directories(mixxx PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/mixxx-lib_autogen/include")
+--- mixxx-2.5.2/CMakeLists.txt.orig	2025-08-29 06:22:49.195412802 +0200
++++ mixxx-2.5.2/CMakeLists.txt	2025-08-29 06:23:33.843291598 +0200
+@@ -1813,7 +1813,7 @@ else()
+ endif()
+ 
  set_target_properties(mixxx-lib PROPERTIES CXX_CLANG_TIDY "${CLANG_TIDY}")
 -target_link_libraries(mixxx PRIVATE mixxx-lib mixxx-gitinfostore)
 +target_link_libraries(mixxx PRIVATE mixxx-lib mixxx-gitinfostore Microsoft.GSL::GSL)
  
  #
  # Installation and Packaging
-@@ -2106,7 +2106,7 @@ add_executable(mixxx-test
- target_precompile_headers(mixxx-test REUSE_FROM mixxx-lib)
- find_package(GTest CONFIG REQUIRED)
- set_target_properties(mixxx-test PROPERTIES AUTOMOC ON)
--target_link_libraries(mixxx-test PRIVATE mixxx-lib mixxx-gitinfostore GTest::gtest GTest::gmock)
-+target_link_libraries(mixxx-test PRIVATE mixxx-lib mixxx-gitinfostore GTest::gtest GTest::gmock Microsoft.GSL::GSL)
+@@ -2232,7 +2232,7 @@ if(BUILD_TESTING)
+ 
+   target_precompile_headers(mixxx-test REUSE_FROM mixxx-lib)
+   set_target_properties(mixxx-test PROPERTIES AUTOMOC ON)
+-  target_link_libraries(mixxx-test PRIVATE mixxx-lib mixxx-gitinfostore GTest::gtest GTest::gmock)
++  target_link_libraries(mixxx-test PRIVATE mixxx-lib mixxx-gitinfostore GTest::gtest GTest::gmock Microsoft.GSL::GSL)
  
- find_package(benchmark)
- target_link_libraries(mixxx-test PRIVATE benchmark::benchmark)
+   if(BUILD_BENCH)
+     add_compile_definitions(USE_BENCH)
diff --git a/mixxx-taglib2.patch b/mixxx-taglib2.patch
deleted file mode 100644
index 4f976b6..0000000
--- a/mixxx-taglib2.patch
+++ /dev/null
@@ -1,184 +0,0 @@
-From dffb164606ee15b320d8f457e96683aa497682ab Mon Sep 17 00:00:00 2001
-From: Jan Holthuis <jholthuis at mixxx.org>
-Date: Sun, 11 Feb 2024 21:43:28 +0100
-Subject: [PATCH] build: Print a warning instead of aborting build if TagLib
- 2.0 is used
-
----
- CMakeLists.txt | 6 +-----
- 1 file changed, 1 insertion(+), 5 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index ba6fd58918c..276dcc1f751 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -2951,11 +2951,7 @@ target_link_libraries(mixxx-lib PRIVATE
- find_package(TagLib 1.11 REQUIRED)
- target_link_libraries(mixxx-lib PUBLIC TagLib::TagLib)
- if (NOT TagLib_VERSION VERSION_LESS 2.0.0)
--    message(FATAL_ERROR "Installed Taglib ${TagLib_VERSION} is not supported. Use Version >= 1.11 and < 2.0 and its development headers.")
--    # Dear package maintainer: Do not patch away this fatal error
--    # using taglib 2.0.0 will put user data at risk!!
--    # Mixxx is a complex application that needs to be adapted and tested thoroughly
--    # https://github.com/mixxxdj/mixxx/issues/12708
-+  message(WARNING "Installed Taglib ${TagLib_VERSION} is not supported and might lead to data loss (https://github.com/mixxxdj/mixxx/issues/12708). Use version >= 1.11 and < 2.0 instead.")
- endif()
- 
- # Threads
-From ed547fd2b0f9dee98740fcf32c1307a092470322 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= <daschuer at mixxx.org>
-Date: Tue, 20 Feb 2024 22:59:18 +0100
-Subject: [PATCH 1/3] Add multi value protection for all muti-value tags: (Add
- title album and comment as well)
-
----
- src/track/taglib/trackmetadata_common.cpp | 24 +++++++++++++++--------
- 1 file changed, 16 insertions(+), 8 deletions(-)
-
-diff --git a/src/track/taglib/trackmetadata_common.cpp b/src/track/taglib/trackmetadata_common.cpp
-index 77c84f41bbd..e4609bc0558 100644
---- a/src/track/taglib/trackmetadata_common.cpp
-+++ b/src/track/taglib/trackmetadata_common.cpp
-@@ -274,20 +274,25 @@ void exportTrackMetadataIntoTag(
-         WriteTagMask writeMask) {
-     DEBUG_ASSERT(pTag); // already validated before
- 
--    pTag->setTitle(toTString(trackMetadata.getTrackInfo().getTitle()));
--    pTag->setAlbum(toTString(trackMetadata.getAlbumInfo().getTitle()));
--
-     // The mapping of multi-valued fields in TagLib is not bijective.
-     // We don't want to overwrite existing values if the corresponding
--    // field has not been modified in Mixxx. This workaround only covers
--    // the most common multi-valued fields.
-+    // field has not been modified in Mixxx.
-     //
-     // See also: <https://github.com/mixxxdj/mixxx/issues/12587>
--    const auto artist = toTString(trackMetadata.getTrackInfo().getArtist());
-+
-+    const TagLib::String title = toTString(trackMetadata.getTrackInfo().getTitle());
-+    if (title != pTag->title()) {
-+        pTag->setTitle(title);
-+    }
-+    const TagLib::String album = toTString(trackMetadata.getAlbumInfo().getTitle());
-+    if (album != pTag->album()) {
-+        pTag->setAlbum(album);
-+    }
-+    const TagLib::String artist = toTString(trackMetadata.getTrackInfo().getArtist());
-     if (artist != pTag->artist()) {
-         pTag->setArtist(artist);
-     }
--    const auto genre = toTString(trackMetadata.getTrackInfo().getGenre());
-+    const TagLib::String genre = toTString(trackMetadata.getTrackInfo().getGenre());
-     if (genre != pTag->genre()) {
-         pTag->setGenre(genre);
-     }
-@@ -297,7 +302,10 @@ void exportTrackMetadataIntoTag(
-     // different purposes, e.g. ID3v2. In this case setting the
-     // comment here should be omitted.
-     if (0 == (writeMask & WriteTagFlag::OmitComment)) {
--        pTag->setComment(toTString(trackMetadata.getTrackInfo().getComment()));
-+        const TagLib::String comment = toTString(trackMetadata.getTrackInfo().getComment());
-+        if (comment != pTag->comment()) {
-+            pTag->setComment(comment);
-+        }
-     }
- 
-     // Specialized write functions for tags derived from Taglib::Tag might
-
-From c052808ca4b27050e99ce9fab9f0b53e90377eed Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= <daschuer at mixxx.org>
-Date: Tue, 20 Feb 2024 23:01:18 +0100
-Subject: [PATCH 2/3] Introduce isMultiValueTagEqual() that compares in the
- QString domain to sort out encoding issues.
-
----
- src/track/taglib/trackmetadata_common.cpp | 30 +++++++++++------------
- 1 file changed, 14 insertions(+), 16 deletions(-)
-
-diff --git a/src/track/taglib/trackmetadata_common.cpp b/src/track/taglib/trackmetadata_common.cpp
-index e4609bc0558..fffa9f8170a 100644
---- a/src/track/taglib/trackmetadata_common.cpp
-+++ b/src/track/taglib/trackmetadata_common.cpp
-@@ -268,6 +268,10 @@ void importTrackMetadataFromTag(
-     }
- }
- 
-+bool isMultiValueTagEqual(const TagLib::String& taglibVal, const QString& mixxxVal) {
-+    return toQString(taglibVal) == mixxxVal;
-+}
-+
- void exportTrackMetadataIntoTag(
-         TagLib::Tag* pTag,
-         const TrackMetadata& trackMetadata,
-@@ -279,22 +283,17 @@ void exportTrackMetadataIntoTag(
-     // field has not been modified in Mixxx.
-     //
-     // See also: <https://github.com/mixxxdj/mixxx/issues/12587>
--
--    const TagLib::String title = toTString(trackMetadata.getTrackInfo().getTitle());
--    if (title != pTag->title()) {
--        pTag->setTitle(title);
-+    if (!isMultiValueTagEqual(pTag->title(), trackMetadata.getTrackInfo().getTitle())) {
-+        pTag->setTitle(toTString(trackMetadata.getTrackInfo().getTitle()));
-     }
--    const TagLib::String album = toTString(trackMetadata.getAlbumInfo().getTitle());
--    if (album != pTag->album()) {
--        pTag->setAlbum(album);
-+    if (!isMultiValueTagEqual(pTag->album(), trackMetadata.getAlbumInfo().getTitle())) {
-+        pTag->setAlbum(toTString(trackMetadata.getAlbumInfo().getTitle()));
-     }
--    const TagLib::String artist = toTString(trackMetadata.getTrackInfo().getArtist());
--    if (artist != pTag->artist()) {
--        pTag->setArtist(artist);
-+    if (!isMultiValueTagEqual(pTag->artist(), trackMetadata.getTrackInfo().getArtist())) {
-+        pTag->setArtist(toTString(trackMetadata.getTrackInfo().getArtist()));
-     }
--    const TagLib::String genre = toTString(trackMetadata.getTrackInfo().getGenre());
--    if (genre != pTag->genre()) {
--        pTag->setGenre(genre);
-+    if (!isMultiValueTagEqual(pTag->genre(), trackMetadata.getTrackInfo().getGenre())) {
-+        pTag->setGenre(toTString(trackMetadata.getTrackInfo().getGenre()));
-     }
- 
-     // Using setComment() from TagLib::Tag might have undesirable
-@@ -302,9 +301,8 @@ void exportTrackMetadataIntoTag(
-     // different purposes, e.g. ID3v2. In this case setting the
-     // comment here should be omitted.
-     if (0 == (writeMask & WriteTagFlag::OmitComment)) {
--        const TagLib::String comment = toTString(trackMetadata.getTrackInfo().getComment());
--        if (comment != pTag->comment()) {
--            pTag->setComment(comment);
-+        if (!isMultiValueTagEqual(pTag->comment(), trackMetadata.getTrackInfo().getComment())) {
-+            pTag->setComment(toTString(trackMetadata.getTrackInfo().getComment()));
-         }
-     }
- 
-
-From c4b3a7e91c56cea7f9bd1c18c1fe01d9da705144 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= <daschuer at mixxx.org>
-Date: Wed, 21 Feb 2024 00:00:06 +0100
-Subject: [PATCH 3/3] Ignore separator " / " when comparing multi value tags
-
----
- src/track/taglib/trackmetadata_common.cpp | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/src/track/taglib/trackmetadata_common.cpp b/src/track/taglib/trackmetadata_common.cpp
-index fffa9f8170a..62bb583f5a2 100644
---- a/src/track/taglib/trackmetadata_common.cpp
-+++ b/src/track/taglib/trackmetadata_common.cpp
-@@ -268,8 +268,12 @@ void importTrackMetadataFromTag(
-     }
- }
- 
--bool isMultiValueTagEqual(const TagLib::String& taglibVal, const QString& mixxxVal) {
--    return toQString(taglibVal) == mixxxVal;
-+bool isMultiValueTagEqual(const TagLib::String& taglibVal, QString mixxxVal) {
-+    // Taglib 2 uses " / " instead of " " as a multi value separator.
-+    // We may have read or write with either TagLib 1 or 2.
-+    QString taglibValStripped = toQString(taglibVal).remove(" /");
-+    QString mixxxValStripped = mixxxVal.remove(" /");
-+    return taglibValStripped == mixxxValStripped;
- }
- 
- void exportTrackMetadataIntoTag(
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/mixxx.git/commitdiff/85054e3a834a78180789ce6d1fad65c00fc6469c



More information about the pld-cvs-commit mailing list