summaryrefslogtreecommitdiff
path: root/media-sound/mixxx
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-09-08 10:50:14 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-09-08 10:50:14 +0100
commit3f71901f8c228f4de570abed1831ce3ee425343e (patch)
treea2dcd300d05ef8a2ec275b44a92a9d85bd3baa24 /media-sound/mixxx
parent12bb627384ddfd47382b9f1b6464481a58d01ebb (diff)
gentoo resync 08.09.2018
Diffstat (limited to 'media-sound/mixxx')
-rw-r--r--media-sound/mixxx/Manifest15
-rw-r--r--media-sound/mixxx/files/mixxx-2.0.0-chromaprint-1.4.patch40
-rw-r--r--media-sound/mixxx/files/mixxx-2.0.0-eliminate-unnecessary-heap-allocation-of-qtime.patch55
-rw-r--r--media-sound/mixxx/files/mixxx-2.0.0-fix-formatting-of-time-durations.patch24
-rw-r--r--media-sound/mixxx/files/mixxx-2.0.0-fix-formatting-of-time-durations2.patch139
-rw-r--r--media-sound/mixxx/files/mixxx-2.0.0-fix-missing-pointer-initialization.patch271
-rw-r--r--media-sound/mixxx/files/mixxx-2.0.0-gcc62.patch24
-rw-r--r--media-sound/mixxx/files/mixxx-2.0.0-move-definition-of-time-formatseconds-into-dot-cpp-file.patch88
-rw-r--r--media-sound/mixxx/files/mixxx-2.0.0-rmx2-backport-controller-scripts.patch280
-rw-r--r--media-sound/mixxx/files/mixxx-2.0.0-sqlite3.patch14
-rw-r--r--media-sound/mixxx/mixxx-2.0.0-r5.ebuild144
-rw-r--r--media-sound/mixxx/mixxx-2.1.1-r1.ebuild2
12 files changed, 2 insertions, 1094 deletions
diff --git a/media-sound/mixxx/Manifest b/media-sound/mixxx/Manifest
index 20da1dbbdb16..2ee3624088ae 100644
--- a/media-sound/mixxx/Manifest
+++ b/media-sound/mixxx/Manifest
@@ -1,20 +1,7 @@
-AUX mixxx-2.0.0-chromaprint-1.4.patch 1518 BLAKE2B ead525e69d7c031b81aa00f969a1e569182eb958d794a6715d809d46dc8d5789b71e7d4dbd8a6ce8987013d614f3fd1b4b0a63fa488c7e2f48136614c3bafea8 SHA512 31da87b64646188be144611fc6f601d58edfcf9e63b5382060f5088797c24d61ff4b48a4e80c5c3b919b7291287d3977c0f61829ddfe7a43f9fbae7db3b735c0
AUX mixxx-2.0.0-docs.patch 435 BLAKE2B c2e9b09abb293e59b2af49527eccf07c9488ae5e30e29e6c4d6330cc298a568ee7dd7014af6b9c1f1c4d98b8c11c96da7f74660eb4b3b522f449e7a6a431addc SHA512 01ab76466f782f538c894e460f7694553ae12804651f68aabb6aaa0dbdc89e2ff7e2b51529b0f112cee42c8053b75fc64241a9c8898def8cf1c76231b1ec5d59
-AUX mixxx-2.0.0-eliminate-unnecessary-heap-allocation-of-qtime.patch 1615 BLAKE2B 08a41664f1941ac100b8fbee0c92e064813f0eb549cfd17e766541034954c73ea8b5ca9c759d98edb1f3513447719313790000c92f47c53ef54e0b74fe8c7f6c SHA512 825599d1bdfbcc673c64226bde25f2ae56b046d32139c3347cb2aae698aa27158b17609dd097ce772e62bcd58b7f711d352386069683239541f3f4160dc6d915
-AUX mixxx-2.0.0-fix-formatting-of-time-durations.patch 866 BLAKE2B 04c26b07097adbcac2236d19c1443e1337a988d592abf460548823aa2b66133c1a05967ebc6ef7fa0a1a00b4184f9a4811341cf85db61ccaa88a617fd26b9062 SHA512 4850724ba1a6809a242976dcec5337b1f9c6c8c93c60c3ce5fa9cf6b6b714aa83485e58e7b97f849720da17e664c89adf33ed53d73d13d249a01700f638de3e2
-AUX mixxx-2.0.0-fix-formatting-of-time-durations2.patch 5912 BLAKE2B 5ae56d5ee1813ec08996df98a54f01e6f530c66bc458eb0581221f5646cfe16be51b47ebcc1029077b5abf366fbf84d535904da702fcbc8cc79452c0d175fb90 SHA512 c7e7480fb6880e3543ade9455cafa9ef1cfdde0af813cb54c8dc3cd98ad964dcdf7b2c4b209dac89d7654551e54dc0bd185fb00783c0f0507f0f72f21d61a599
-AUX mixxx-2.0.0-fix-missing-pointer-initialization.patch 9702 BLAKE2B 72f6beab3927eee78a17bb9a8437597ae6b764fcc8627917b3a663bd2864cab2bd95d9bdafd3dbd42e614b77fbe333433ef52b7c654436ae3f5b94e66f147bf1 SHA512 048f74fb3c0079f5935f41a4a3b5c04a691f6eaec199a8261dba119e8fa2efe15c4f8e6c24befbfadb7cf1af3db49c75ac52b3a265f52480889d4f9c9ad89eba
-AUX mixxx-2.0.0-gcc62.patch 726 BLAKE2B c480db47ddabf8f1fa40ed615b1b6eb63c0459c61e5f926191ef18a84a2928a01908d65d40e231186e7b0bcd8a7c8a7e419d810f35581ab2ad8c5431f7795275 SHA512 cd0469d29ebf3b0d30154bc178b60383d52abfe5c6a34ed6de83da3ed425ed55630d0bf4159e00b7bd9ddc9822e98a9805051a29b2372f2ae952a43cced34c47
-AUX mixxx-2.0.0-move-definition-of-time-formatseconds-into-dot-cpp-file.patch 3113 BLAKE2B e3bd72182b36c8a93dd635f73bf4b5d982f74af89d212b7dea223da1d0163d952ba40a06b7bebe06c06487ee53a827da75e0638dd19b5b6f9d085b069e8b2d61 SHA512 73ea80adbc32cf8c087cd97d8c8225f1d94ea138835557dac1f8b9cd8e4415ae0f6eb4548a6581aa4a8d3bada01f7c6ad3a538d3907c233a69327f4b3d31b316
-AUX mixxx-2.0.0-rmx2-backport-controller-scripts.patch 10840 BLAKE2B 18054948e2a9e2c737ae4fe0a9c05ae1da17c66ba33e8aa36cdbc236c08b5a5fdaca3f6bc7968e1cb0a6a85dd2239edc7ec9eff8beb98c0c402fa6cc9441e15c SHA512 6ffced1c2368b1c5ad2cadf72fd21c917626318784cfcdbaf2d85ac63955ecdb96aefafd268a005962ced766cf8150b3daf409d587edab6a8b854ab6c7e812c5
-AUX mixxx-2.0.0-sqlite3.patch 345 BLAKE2B 2c06cea5358df63d0c5e690fb700766b8a3631f7cd8a239e22fee7b7c2b31b57218173367fbffda127a066e163f62fce7d2aafb6ced3b60624c646f820f994ff SHA512 18e390daf6ec7530614e7601f0695f2e42a4742d4502992b2d86d98a5c0d357c424325fd4e6fec4dad11333730afc34aaf9f3be1d3b6e4c26250e4817468345b
-DIST mixxx-2.0.0-ffmpeg30.patch 714 BLAKE2B 00c5cdc233262e64fa52abcc97fc15d1347a391d411b5a0e2650bc3d06f1ef994b28c1f5bd942026201850925f6959fa0b3896c5dff48fbad1c28df8bcd8067b SHA512 60788ecab1fa92b825815fff5dfdfefe02fb097e46f7f55f318bb8a8677da42e4601cce51eaaec51988990eebb72d59346d1ec45ed76cac3c8a7f9a9d1e8cf54
-DIST mixxx-2.0.0-ffmpeg31.patch 2844 BLAKE2B ee44c1da8af553cff478d12bc4fb05ae50bd788340ba5e414b6a535873a3c1868363762697ab21580bfa8f4006c0314acdc2c778f80a910c316a49d91c3e0205 SHA512 7207ad72d0ea851b1425ff7472aafe5f828ca70aad0821a1ef1eb54845527532489ac7913f6584e3af5fb53bf3459abc173fbf482f83be8a22358d28b1b5cf74
-DIST mixxx-2.0.0-src.tar.gz 25300881 BLAKE2B a0dbc03350bf6d6a8ce5abd06df50bf58cf3d75fcc3f8614873c807ad8a77d1afb12a8715944ebba80da5750e4c6d6570ea60a5afb83b87f8cc54c7c4d0ccb00 SHA512 8878c0f785e4c5f67724deeca61154d2587969a81d28aef8fa9d526aec8419a218ce2a7ef88d6fcf468d30fa13d31ac9a56ca9082431a35b7e4e040a7ccfbb1a
DIST mixxx-2.1.1.tar.gz 34458368 BLAKE2B cf718cfea64fe71e2ccd5f299454fc9d396266052cc2516fa4494216a9d8ae9cea62858bf02e026d5072705df780d6243616d1d1705e3f251bc2392b4dc3d166 SHA512 c0047a238bf39e464f2bc25646ba03138d0b8d27cde667ca7b12bfba5f40d339ce4b426853e048d695b2c59c847e88322e27b91bead467899d7bf1cb43358f20
DIST mixxx-2.1.3.tar.gz 34471372 BLAKE2B 88b634003a6014ebe746cf0f5f2b3d3de6775c6b2a5298898e70c55feb1ae5a54a692f9428103419943e829438b2ac2fdbfa93c45d4624a7aede59f8ecbe98ae SHA512 3aaf207963cb7380d98c9458f9c1d85c2c72bc0bc2197758a47af50ea38a80158c1abacc70ef50398ccd89a4bd4c30d93c65d70112332e529f3a3aed31509324
-EBUILD mixxx-2.0.0-r5.ebuild 3717 BLAKE2B 3e838a7dff793c2ef3bb4c99803746e3dd85fc19e837f4022d15189b8527eb6c775627c8e95c8dda42c875e33e1e89737791469f0df17784c2f15f318adfde6d SHA512 429289d7d632a723bc3919740f9f8fcde60707923e1c4b384ce4dbeea843a110b954c95519b3e91bff5fa7084179982736008e5ae207a4b018af2a087a32be21
-EBUILD mixxx-2.1.1-r1.ebuild 3005 BLAKE2B e806ef891917a0abb00a5f9295e454fb98c6f7dbe9e7ad70731acf6b6aae8c7be35fba41f355cc8d45aa9d290c9078901cbb1a8795301747509d3bf2ea0c5fa4 SHA512 2d11acf52aad36769d209d137f94484c99a8106087d8cf4a864864171bea9255b65facc65a35e2efa3a8d8cfe89fe218f0f5db917e3dec531f23b23c02c2318c
+EBUILD mixxx-2.1.1-r1.ebuild 3004 BLAKE2B a1718363b127fe5515d616bf8daf6a354c9ee4798514327fee5b90d8f9d397a1b59ca5ec6423d1949ebc3863b24beeb6f8f154cf6610dd1ae3e7fcb527a329b1 SHA512 db6c3550d8453e36e0b469a283317235e27fae69f2ec7c40b893e4e2345a7a4c5295d6ab7fe4572c91867311067697a602cd8173e771f2b10319fcfc453d3bd9
EBUILD mixxx-2.1.3.ebuild 3006 BLAKE2B 0c393607bc1db7e23d986a55c4b72c966ea00d317884a24cea3550414e5fb04963a0a5085a717a0f9a3e3ed7564909162e7fa699f43d38256afe6862ceb34b3a SHA512 1df37aec5a1d8c5bce3b2bb352328b9da488235baaf2121704ed17fa1cfb82b9ff5d813e5c44c94b9618438c4cdfba52f933ecbf4827d2165d27ee19358fdc36
EBUILD mixxx-9999.ebuild 3006 BLAKE2B 0c393607bc1db7e23d986a55c4b72c966ea00d317884a24cea3550414e5fb04963a0a5085a717a0f9a3e3ed7564909162e7fa699f43d38256afe6862ceb34b3a SHA512 1df37aec5a1d8c5bce3b2bb352328b9da488235baaf2121704ed17fa1cfb82b9ff5d813e5c44c94b9618438c4cdfba52f933ecbf4827d2165d27ee19358fdc36
MISC metadata.xml 642 BLAKE2B 125facf06db489fe7e3f4663b1664a4e0c4288cad028b9d0e73db345c8e6a8004383b4efb70e7b5315028fba769fb790cb2b39949980b5adc6f3de2178c0f7c9 SHA512 e336e472a4ee405e18a2521cbd296917a1c555c444eb3794eea602a36ec30f5eab99e9dcad36a08c9852c228253721311d957ef632ae0d14c96391a95ad4dd5e
diff --git a/media-sound/mixxx/files/mixxx-2.0.0-chromaprint-1.4.patch b/media-sound/mixxx/files/mixxx-2.0.0-chromaprint-1.4.patch
deleted file mode 100644
index 77827f3d8d81..000000000000
--- a/media-sound/mixxx/files/mixxx-2.0.0-chromaprint-1.4.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-Backported chromaprint-1.4 API changes based on the fix suggested in:
-https://github.com/mixxxdj/mixxx/pull/1073
-
-and the work done by Charlie Gehlin in:
-https://bugs.gentoo.org/604528
-
---- mixxx-2.0.0/src/musicbrainz/chromaprinter.cpp
-+++ mixxx-2.0.0/src/musicbrainz/chromaprinter.cpp
-@@ -25,6 +25,16 @@
-
- QString ChromaPrinter::calcFingerPrint(const Mixxx::SoundSourcePointer& pSoundSource) {
-
-+ // Type declarations of *fprint and *encoded pointers need to account for Chromaprint API version
-+ // (void* -> uint32_t*) and (void* -> char*) changed in versions v1.4.0 or later -- alyptik 12/2016
-+ #if (CHROMAPRINT_VERSION_MINOR > 3) || (CHROMAPRINT_VERSION_MAJOR > 1)
-+ typedef uint32_t* uint32_p;
-+ typedef char* char_p;
-+ #else
-+ typedef void* uint32_p;
-+ typedef void* char_p;
-+ #endif
-+
- // this is worth 2min of audio, multiply by 2 because we have 2 channels
- // AcoustID only stores a fingerprint for the first two minutes of a song
- // on their server so we need only a fingerprint of the first two minutes
-@@ -57,12 +67,12 @@
- }
- chromaprint_finish(ctx);
-
-- void* fprint = NULL;
-+ uint32_p fprint = NULL;
- int size = 0;
- int ret = chromaprint_get_raw_fingerprint(ctx, &fprint, &size);
- QByteArray fingerprint;
- if (ret == 1) {
-- void* encoded = NULL;
-+ char_p encoded = NULL;
- int encoded_size = 0;
- chromaprint_encode_fingerprint(fprint, size,
- CHROMAPRINT_ALGORITHM_DEFAULT,
diff --git a/media-sound/mixxx/files/mixxx-2.0.0-eliminate-unnecessary-heap-allocation-of-qtime.patch b/media-sound/mixxx/files/mixxx-2.0.0-eliminate-unnecessary-heap-allocation-of-qtime.patch
deleted file mode 100644
index 04538a01e15a..000000000000
--- a/media-sound/mixxx/files/mixxx-2.0.0-eliminate-unnecessary-heap-allocation-of-qtime.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-diff -dNur a/src/analyserwaveform.cpp b/src/analyserwaveform.cpp
---- a/src/analyserwaveform.cpp 2015-12-29 17:10:41.000000000 +0100
-+++ b/src/analyserwaveform.cpp 2017-02-04 21:12:30.127952910 +0100
-@@ -1,6 +1,3 @@
--#include <QImage>
--#include <QtDebug>
--#include <QTime>
- #include <QtDebug>
-
- #include "analyserwaveform.h"
-@@ -40,7 +37,6 @@
- }
- }
-
-- m_timer = new QTime();
- m_analysisDao = new AnalysisDao(m_database, pConfig);
- }
-
-@@ -48,14 +44,13 @@
- qDebug() << "AnalyserWaveform::~AnalyserWaveform()";
- destroyFilters();
- m_database.close();
-- delete m_timer;
- delete m_analysisDao;
- }
-
- bool AnalyserWaveform::initialise(TrackPointer tio, int sampleRate, int totalSamples) {
- m_skipProcessing = false;
-
-- m_timer->start();
-+ m_timer.start();
-
- if (totalSamples == 0) {
- qWarning() << "AnalyserWaveform::initialise - no waveform/waveform summary";
-@@ -320,7 +315,7 @@
- #endif
-
- qDebug() << "Waveform generation for track" << tio->getId() << "done"
-- << m_timer->elapsed()/1000.0 << "s";
-+ << m_timer.elapsed()/1000.0 << "s";
- }
-
- void AnalyserWaveform::storeIfGreater(float* pDest, float source) {
-diff -dNur a/src/analyserwaveform.h b/src/analyserwaveform.h
---- a/src/analyserwaveform.h 2015-12-29 17:10:41.000000000 +0100
-+++ b/src/analyserwaveform.h 2017-02-04 21:12:45.367713395 +0100
-@@ -171,7 +171,7 @@
- EngineFilterIIRBase* m_filter[FilterCount];
- std::vector<float> m_buffers[FilterCount];
-
-- QTime* m_timer;
-+ QTime m_timer;
- QSqlDatabase m_database;
- AnalysisDao* m_analysisDao;
-
diff --git a/media-sound/mixxx/files/mixxx-2.0.0-fix-formatting-of-time-durations.patch b/media-sound/mixxx/files/mixxx-2.0.0-fix-formatting-of-time-durations.patch
deleted file mode 100644
index 654c01f53b9d..000000000000
--- a/media-sound/mixxx/files/mixxx-2.0.0-fix-formatting-of-time-durations.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 76c53b0f0a2be7b5cf85fa523f3521a5725affb2 Mon Sep 17 00:00:00 2001
-From: Uwe Klotz <uwe_klotz@web.de>
-Date: Fri, 8 Jan 2016 18:22:33 +0100
-Subject: [PATCH] Fix formatting of time durations
-
----
- src/util/time.h | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/src/util/time.h b/src/util/time.h
-index 29187ad..7b38eb4 100644
---- a/src/util/time.h
-+++ b/src/util/time.h
-@@ -75,7 +75,9 @@ class Time {
- const int days = static_cast<int>(dSeconds) / kSecondsPerDay;
- dSeconds -= days * kSecondsPerDay;
-
-- QTime t = QTime().addMSecs(dSeconds * kMillisPerSecond);
-+ // NOTE(uklotzde): Time() constructs a 'null' object, but
-+ // we need 'zero' here.
-+ QTime t = QTime(0, 0).addMSecs(dSeconds * kMillisPerSecond);
-
- QString formatString =
- (days > 0 ? (QString::number(days) %
diff --git a/media-sound/mixxx/files/mixxx-2.0.0-fix-formatting-of-time-durations2.patch b/media-sound/mixxx/files/mixxx-2.0.0-fix-formatting-of-time-durations2.patch
deleted file mode 100644
index f8c041e4043e..000000000000
--- a/media-sound/mixxx/files/mixxx-2.0.0-fix-formatting-of-time-durations2.patch
+++ /dev/null
@@ -1,139 +0,0 @@
-diff -dNur a/src/library/basesqltablemodel.cpp b/src/library/basesqltablemodel.cpp
---- a/src/library/basesqltablemodel.cpp 2015-12-29 17:10:41.000000000 +0100
-+++ b/src/library/basesqltablemodel.cpp 2017-02-04 21:33:39.403861857 +0100
-@@ -559,7 +559,7 @@
- if (column == fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_DURATION)) {
- int duration = value.toInt();
- if (duration > 0) {
-- value = Time::formatSeconds(duration, false);
-+ value = Time::formatSeconds(duration);
- } else {
- value = QString();
- }
-diff -dNur a/src/library/browse/browsethread.cpp b/src/library/browse/browsethread.cpp
---- a/src/library/browse/browsethread.cpp 2015-12-29 17:10:41.000000000 +0100
-+++ b/src/library/browse/browsethread.cpp 2017-02-04 21:32:23.605066421 +0100
-@@ -185,8 +185,7 @@
- item->setData(item->text(), Qt::UserRole);
- row_data.insert(COLUMN_COMMENT, item);
-
-- QString duration = Time::formatSeconds(qVariantValue<int>(
-- tio.getDuration()), false);
-+ QString duration = Time::formatSeconds(tio.getDuration());
- item = new QStandardItem(duration);
- item->setToolTip(item->text());
- item->setData(item->text(), Qt::UserRole);
-diff -dNur a/src/library/cratefeature.cpp b/src/library/cratefeature.cpp
---- a/src/library/cratefeature.cpp 2015-12-29 17:10:41.000000000 +0100
-+++ b/src/library/cratefeature.cpp 2017-02-04 21:30:54.962474898 +0100
-@@ -493,7 +493,7 @@
- crateListTableModel.index(row, durationColumn)).toInt();
- m_crateList.append(qMakePair(id, QString("%1 (%2) %3")
- .arg(name, QString::number(count),
-- Time::formatSeconds(duration, false))));
-+ Time::formatSeconds(duration))));
- }
- }
-
-diff -dNur a/src/library/playlistfeature.cpp b/src/library/playlistfeature.cpp
---- a/src/library/playlistfeature.cpp 2015-12-29 17:10:41.000000000 +0100
-+++ b/src/library/playlistfeature.cpp 2017-02-04 21:33:06.920378091 +0100
-@@ -168,7 +168,7 @@
- playlistTableModel.index(row, durationColumn)).toInt();
- m_playlistList.append(qMakePair(id, QString("%1 (%2) %3")
- .arg(name, QString::number(count),
-- Time::formatSeconds(duration, false))));
-+ Time::formatSeconds(duration))));
- }
- }
-
-diff -dNur a/src/trackinfoobject.cpp b/src/trackinfoobject.cpp
---- a/src/trackinfoobject.cpp 2015-12-29 17:10:41.000000000 +0100
-+++ b/src/trackinfoobject.cpp 2017-02-04 21:42:36.423323807 +0100
-@@ -293,7 +293,7 @@
- int iDuration = m_iDuration;
- lock.unlock();
-
-- return Time::formatSeconds(iDuration, false);
-+ return Time::formatSeconds(iDuration);
- }
-
- void TrackInfoObject::setLocation(const QString& location) {
-diff -dNur a/src/util/time.cpp b/src/util/time.cpp
---- a/src/util/time.cpp 2017-02-04 21:29:44.439595305 +0100
-+++ b/src/util/time.cpp 2017-02-04 21:37:54.739803100 +0100
-@@ -1,5 +1,7 @@
- #include "util/time.h"
-
-+#include "util/assert.h"
-+
- // static
- LLTIMER Time::s_timer;
- // static
-@@ -8,7 +10,7 @@
- qint64 Time::s_testElapsed_nsecs = 0;
-
- // static
--QString Time::formatSeconds(double dSeconds, bool showCentis) {
-+QString Time::formatSeconds(double dSeconds, Precision precision) {
- if (dSeconds < 0) {
- return "?";
- }
-@@ -24,13 +26,14 @@
- (days > 0 ? (QString::number(days) %
- QLatin1String("'d', ")) : QString()) %
- QLatin1String(days > 0 || t.hour() > 0 ? "hh:mm:ss" : "mm:ss") %
-- QLatin1String(showCentis ? ".zzz" : "");
-+ QLatin1String(Precision::SECONDS == precision ? "" : ".zzz");
-
- QString timeString = t.toString(formatString);
-
- // The format string gives us milliseconds but we want
- // centiseconds. Slice one character off.
-- if (showCentis) {
-+ if (Precision::CENTISECONDS == precision) {
-+ DEBUG_ASSERT(1 <= timeString.length());
- timeString = timeString.left(timeString.length() - 1);
- }
-
-diff -dNur a/src/util/time.h b/src/util/time.h
---- a/src/util/time.h 2017-02-04 21:29:44.439595305 +0100
-+++ b/src/util/time.h 2017-02-04 21:41:01.476833822 +0100
-@@ -55,10 +55,17 @@
- s_testElapsed_nsecs = elapsed * 1000000;
- }
-
-- // The standard way of formatting a time in seconds. Used for display of
-- // track duration, etc. showCentis indicates whether to include
-- // centisecond-precision or to round to the nearest second.
-- static QString formatSeconds(double dSeconds, bool showCentis);
-+ enum class Precision {
-+ SECONDS,
-+ CENTISECONDS,
-+ MILLISECONDS
-+ };
-+
-+ // The standard way of formatting a time in seconds. Used for display
-+ // of track duration, etc.
-+ static QString formatSeconds(
-+ double dSeconds,
-+ Precision precision = Time::Precision::SECONDS);
-
- private:
- static LLTIMER s_timer;
-diff -dNur a/src/widget/wnumberpos.cpp b/src/widget/wnumberpos.cpp
---- a/src/widget/wnumberpos.cpp 2015-12-29 17:10:41.000000000 +0100
-+++ b/src/widget/wnumberpos.cpp 2017-02-04 21:41:57.023950430 +0100
-@@ -92,10 +92,10 @@
- QString valueString;
- if (valueMillis >= 0) {
- valueString = m_skinText % Time::formatSeconds(
-- valueMillis / Time::kMillisPerSecond, true);
-+ valueMillis / Time::kMillisPerSecond, Time::Precision::MILLISECONDS);
- } else {
- valueString = m_skinText % QLatin1String("-") % Time::formatSeconds(
-- -valueMillis / Time::kMillisPerSecond, true);
-+ -valueMillis / Time::kMillisPerSecond, Time::Precision::CENTISECONDS);
- }
- setText(valueString);
- }
diff --git a/media-sound/mixxx/files/mixxx-2.0.0-fix-missing-pointer-initialization.patch b/media-sound/mixxx/files/mixxx-2.0.0-fix-missing-pointer-initialization.patch
deleted file mode 100644
index 3364995ce4f5..000000000000
--- a/media-sound/mixxx/files/mixxx-2.0.0-fix-missing-pointer-initialization.patch
+++ /dev/null
@@ -1,271 +0,0 @@
-diff -dNur a/src/analyserwaveform.cpp b/src/analyserwaveform.cpp
---- a/src/analyserwaveform.cpp 2017-02-04 21:14:33.266016824 +0100
-+++ b/src/analyserwaveform.cpp 2017-02-04 21:19:09.205671982 +0100
-@@ -11,8 +11,8 @@
-
- AnalyserWaveform::AnalyserWaveform(ConfigObject<ConfigValue>* pConfig) :
- m_skipProcessing(false),
-- m_waveformData(NULL),
-- m_waveformSummaryData(NULL),
-+ m_waveformData(nullptr),
-+ m_waveformSummaryData(nullptr),
- m_stride(0, 0),
- m_currentStride(0),
- m_currentSummaryStride(0) {
-@@ -37,14 +37,13 @@
- }
- }
-
-- m_analysisDao = new AnalysisDao(m_database, pConfig);
-+ m_pAnalysisDao = std::make_unique<AnalysisDao>(m_database, pConfig);
- }
-
- AnalyserWaveform::~AnalyserWaveform() {
- qDebug() << "AnalyserWaveform::~AnalyserWaveform()";
- destroyFilters();
- m_database.close();
-- delete m_analysisDao;
- }
-
- bool AnalyserWaveform::initialise(TrackPointer tio, int sampleRate, int totalSamples) {
-@@ -115,7 +114,7 @@
-
- if (trackId != -1 && (missingWaveform || missingWavesummary)) {
- QList<AnalysisDao::AnalysisInfo> analyses =
-- m_analysisDao->getAnalysesForTrack(trackId);
-+ m_pAnalysisDao->getAnalysesForTrack(trackId);
-
- QListIterator<AnalysisDao::AnalysisInfo> it(analyses);
- while (it.hasNext()) {
-@@ -130,7 +129,7 @@
- missingWaveform = false;
- } else if (vc != WaveformFactory::VC_KEEP) {
- // remove all other Analysis except that one we should keep
-- m_analysisDao->deleteAnalysis(analysis.analysisId);
-+ m_pAnalysisDao->deleteAnalysis(analysis.analysisId);
- }
- } if (analysis.type == AnalysisDao::TYPE_WAVESUMMARY) {
- vc = WaveformFactory::waveformSummaryVersionToVersionClass(analysis.version);
-@@ -140,7 +139,7 @@
- missingWavesummary = false;
- } else if (vc != WaveformFactory::VC_KEEP) {
- // remove all other Analysis except that one we should keep
-- m_analysisDao->deleteAnalysis(analysis.analysisId);
-+ m_pAnalysisDao->deleteAnalysis(analysis.analysisId);
- }
- }
- }
-@@ -273,13 +272,13 @@
- tio->setWaveform(ConstWaveformPointer());
- // Since clear() could delete the waveform, clear our pointer to the
- // waveform's vector data first.
-- m_waveformData = NULL;
-+ m_waveformData = nullptr;
- m_waveform.clear();
-
- tio->setWaveformSummary(ConstWaveformPointer());
- // Since clear() could delete the waveform, clear our pointer to the
- // waveform's vector data first.
-- m_waveformSummaryData = NULL;
-+ m_waveformSummaryData = nullptr;
- m_waveformSummary.clear();
- }
-
-@@ -295,7 +294,7 @@
- m_waveform->setDescription(WaveformFactory::currentWaveformDescription());
- // Since clear() could delete the waveform, clear our pointer to the
- // waveform's vector data first.
-- m_waveformData = NULL;
-+ m_waveformData = nullptr;
- m_waveform.clear();
- }
-
-@@ -306,7 +305,7 @@
- m_waveformSummary->setDescription(WaveformFactory::currentWaveformSummaryDescription());
- // Since clear() could delete the waveform, clear our pointer to the
- // waveform's vector data first.
-- m_waveformSummaryData = NULL;
-+ m_waveformSummaryData = nullptr;
- m_waveformSummary.clear();
- }
-
-diff -dNur a/src/analyserwaveform.h b/src/analyserwaveform.h
---- a/src/analyserwaveform.h 2017-02-04 21:14:33.266016824 +0100
-+++ b/src/analyserwaveform.h 2017-02-04 21:20:17.308598419 +0100
-@@ -4,12 +4,14 @@
- #include <QTime>
- #include <QImage>
- #include <QSqlDatabase>
-+
- #include <limits>
-
- #include "configobject.h"
- #include "analyser.h"
- #include "waveform/waveform.h"
- #include "util/math.h"
-+#include "util/memory.h"
-
- //NOTS vrince some test to segment sound, to apply color in the waveform
- //#define TEST_HEAT_MAP
-@@ -173,7 +175,7 @@
-
- QTime m_timer;
- QSqlDatabase m_database;
-- AnalysisDao* m_analysisDao;
-+ std::unique_ptr<AnalysisDao> m_pAnalysisDao;
-
- #ifdef TEST_HEAT_MAP
- QImage* test_heatMap;
-diff -dNur a/src/util/memory.h b/src/util/memory.h
---- a/src/util/memory.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/src/util/memory.h 2017-02-04 22:19:41.846922929 +0100
-@@ -0,0 +1,149 @@
-+// Taken from https://github.com/bstreiff/cppbits
-+// Thank you Brandon Streiff!
-+
-+// Implementation of C++14's make_unique for C++11 compilers.
-+//
-+// This has been tested with:
-+// - MSVC 11.0 (Visual Studio 2012)
-+// - gcc 4.6.3
-+// - Xcode 4.4 (with clang "4.0")
-+//
-+// It is based off an implementation proposed by Stephan T. Lavavej for
-+// inclusion in the C++14 standard:
-+// http://isocpp.org/files/papers/N3656.txt
-+// Where appropriate, it borrows the use of MSVC's _VARIADIC_EXPAND_0X macro
-+// machinery to compensate for lack of variadic templates.
-+//
-+// This file injects make_unique into the std namespace, which I acknowledge is
-+// technically forbidden ([C++11: 17.6.4.2.2.1/1]), but is necessary in order
-+// to have syntax compatibility with C++14.
-+//
-+// I perform compiler version checking for MSVC, gcc, and clang to ensure that
-+// we don't add make_unique if it is already there (instead, we include
-+// <memory> to get the compiler-provided one). You can override the compiler
-+// version checking by defining the symbol COMPILER_SUPPORTS_MAKE_UNIQUE.
-+//
-+//
-+// ===============================================================================
-+// This file is released into the public domain. See LICENCE for more information.
-+// ===============================================================================
-+
-+#ifndef MIXXX_UTIL_MEMORY_H
-+#define MIXXX_UTIL_MEMORY_H
-+
-+// If user hasn't specified COMPILER_SUPPORTS_MAKE_UNIQUE then try to figure out
-+// based on compiler version if std::make_unique is provided.
-+#if !defined(COMPILER_SUPPORTS_MAKE_UNIQUE)
-+ // Compiling with -std=c++11 sets __cplusplus=201103L and disables
-+ // std::make_unique() from C++14! We need to take this into account.
-+ #define CPLUSPLUS_SUPPORTS_MAKE_UNIQUE (__cplusplus > 201103L)
-+ #if defined(_MSC_VER)
-+ // std::make_unique was added in MSVC 12.0
-+ #if _MSC_VER >= 1800 // MSVC 12.0 (Visual Studio 2013)
-+ #define COMPILER_SUPPORTS_MAKE_UNIQUE
-+ #endif
-+ #elif defined(__clang__)
-+ // std::make_unique was added in clang 3.4, but not until Xcode 6.
-+ // Annoyingly, Apple makes the clang version defines match the version
-+ // of Xcode, not the version of clang.
-+ #define CLANG_VERSION (__clang_major__ * 10000 + __clang_minor__ * 100 + __clang_patchlevel__)
-+ #if defined(__APPLE__) && CLANG_VERSION >= 60000 && CPLUSPLUS_SUPPORTS_MAKE_UNIQUE
-+ #define COMPILER_SUPPORTS_MAKE_UNIQUE
-+ #elif !defined(__APPLE__) && CLANG_VERSION >= 30400 && CPLUSPLUS_SUPPORTS_MAKE_UNIQUE
-+ #define COMPILER_SUPPORTS_MAKE_UNIQUE
-+ #endif
-+ #elif defined(__GNUC__)
-+ // std::make_unique was added in gcc 4.9
-+ #define GCC_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)
-+ #if GCC_VERSION >= 40900 && CPLUSPLUS_SUPPORTS_MAKE_UNIQUE
-+ #define COMPILER_SUPPORTS_MAKE_UNIQUE
-+ #endif
-+ #endif
-+#endif
-+
-+#if defined(COMPILER_SUPPORTS_MAKE_UNIQUE)
-+
-+// If the compiler supports std::make_unique, then pull in <memory> to get it.
-+#include <memory>
-+
-+#else
-+
-+// Otherwise, the compiler doesn't provide it, so implement it ourselves.
-+
-+#include <cstddef>
-+#include <memory>
-+#include <type_traits>
-+#include <utility>
-+
-+namespace std {
-+
-+template<class _Ty> struct _Unique_if {
-+ typedef unique_ptr<_Ty> _Single_object;
-+};
-+
-+template<class _Ty> struct _Unique_if<_Ty[]> {
-+ typedef unique_ptr<_Ty[]> _Unknown_bound;
-+};
-+
-+template<class _Ty, size_t N> struct _Unique_if<_Ty[N]> {
-+ typedef void _Known_bound;
-+};
-+
-+//
-+// template< class T, class... Args >
-+// unique_ptr<T> make_unique( Args&&... args);
-+//
-+
-+#if defined(_MSC_VER) && (_MSC_VER < 1800)
-+
-+// Macro machinery because MSVC 11.0 doesn't support variadic templates.
-+// The _VARIADIC_EXPAND_0X stuff is defined in <xstddef>
-+#define _MAKE_UNIQUE( \
-+ TEMPLATE_LIST, PADDING_LIST, LIST, COMMA, X1, X2, X3, X4) \
-+ template<class _Ty COMMA LIST(_CLASS_TYPE)> inline \
-+ typename _Unique_if<_Ty>::_Single_object make_unique(LIST(_TYPE_REFREF_ARG)) \
-+ { \
-+ return unique_ptr<_Ty>(new _Ty(LIST(_FORWARD_ARG))); \
-+ } \
-+
-+_VARIADIC_EXPAND_0X(_MAKE_UNIQUE, , , , )
-+#undef _MAKE_UNIQUE
-+
-+#else // not MSVC 11.0 or earlier
-+
-+template<class _Ty, class... Args>
-+ typename _Unique_if<_Ty>::_Single_object
-+ make_unique(Args&&... args) {
-+ return unique_ptr<_Ty>(new _Ty(std::forward<Args>(args)...));
-+ }
-+
-+#endif
-+
-+// template< class T >
-+// unique_ptr<T> make_unique( std::size_t size );
-+
-+template<class _Ty>
-+ typename _Unique_if<_Ty>::_Unknown_bound
-+ make_unique(size_t n) {
-+ typedef typename remove_extent<_Ty>::type U;
-+ return unique_ptr<_Ty>(new U[n]());
-+ }
-+
-+// template< class T, class... Args >
-+// /* unspecified */ make_unique( Args&&... args ) = delete;
-+
-+// MSVC 11.0 doesn't support deleted functions, so the best we can do
-+// is simply not define the function.
-+#if !(defined(_MSC_VER) && (_MSC_VER < 1800))
-+
-+template<class T, class... Args>
-+ typename _Unique_if<T>::_Known_bound
-+ make_unique(Args&&...) = delete;
-+
-+#endif
-+
-+} // namespace std
-+
-+#endif // !COMPILER_SUPPORTS_MAKE_UNIQUE
-+
-+#endif /* MIXXX_UTIL_MEMORY_H */
diff --git a/media-sound/mixxx/files/mixxx-2.0.0-gcc62.patch b/media-sound/mixxx/files/mixxx-2.0.0-gcc62.patch
deleted file mode 100644
index c19c914b330e..000000000000
--- a/media-sound/mixxx/files/mixxx-2.0.0-gcc62.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- a/src/util/math.h 2015-12-29 17:10:41.000000000 +0100
-+++ b/src/util/math.h 2016-09-25 12:54:18.345291146 +0200
-@@ -3,8 +3,20 @@
-
- // Causes MSVC to define M_PI and friends.
- // http://msdn.microsoft.com/en-us/library/4hwaceh6.aspx
-+// Our SConscript defines this but check anyway.
-+#ifdef __WINDOWS__
-+#ifndef _USE_MATH_DEFINES
- #define _USE_MATH_DEFINES
--#include <cmath>
-+#endif
-+#endif
-+
-+#include <math.h>
-+#include <cmath>
-+// Note: Because of our fpclassify hack, we actualy need to inlude both,
-+// the c and the c++ version of the math header.
-+// From GCC 6.1.1 math.h depends on cmath, which failes to compile if included
-+// after our fpclassify hack
-+
- #include <algorithm>
-
- #include "util/assert.h"
diff --git a/media-sound/mixxx/files/mixxx-2.0.0-move-definition-of-time-formatseconds-into-dot-cpp-file.patch b/media-sound/mixxx/files/mixxx-2.0.0-move-definition-of-time-formatseconds-into-dot-cpp-file.patch
deleted file mode 100644
index 9a95a5d675ec..000000000000
--- a/media-sound/mixxx/files/mixxx-2.0.0-move-definition-of-time-formatseconds-into-dot-cpp-file.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-From c2af9e6eeb469718b9aa069b90a719fac80dd0d9 Mon Sep 17 00:00:00 2001
-From: Uwe Klotz <uwe_klotz@web.de>
-Date: Fri, 8 Jan 2016 19:25:58 +0100
-Subject: [PATCH] Move definition of Time::formatSeconds() into .cpp file
-
----
- src/util/time.cpp | 30 ++++++++++++++++++++++++++++++
- src/util/time.h | 29 +----------------------------
- 2 files changed, 31 insertions(+), 28 deletions(-)
-
-diff --git a/src/util/time.cpp b/src/util/time.cpp
-index 998fa73..d8a122b 100644
---- a/src/util/time.cpp
-+++ b/src/util/time.cpp
-@@ -6,3 +6,33 @@ LLTIMER Time::s_timer;
- bool Time::s_testMode = false;
- // static
- qint64 Time::s_testElapsed_nsecs = 0;
-+
-+// static
-+QString Time::formatSeconds(double dSeconds, bool showCentis) {
-+ if (dSeconds < 0) {
-+ return "?";
-+ }
-+
-+ const int days = static_cast<int>(dSeconds) / kSecondsPerDay;
-+ dSeconds -= days * kSecondsPerDay;
-+
-+ // NOTE(uklotzde): Time() constructs a 'null' object, but
-+ // we need 'zero' here.
-+ QTime t = QTime(0, 0).addMSecs(dSeconds * kMillisPerSecond);
-+
-+ QString formatString =
-+ (days > 0 ? (QString::number(days) %
-+ QLatin1String("'d', ")) : QString()) %
-+ QLatin1String(days > 0 || t.hour() > 0 ? "hh:mm:ss" : "mm:ss") %
-+ QLatin1String(showCentis ? ".zzz" : "");
-+
-+ QString timeString = t.toString(formatString);
-+
-+ // The format string gives us milliseconds but we want
-+ // centiseconds. Slice one character off.
-+ if (showCentis) {
-+ timeString = timeString.left(timeString.length() - 1);
-+ }
-+
-+ return timeString;
-+}
-diff --git a/src/util/time.h b/src/util/time.h
-index 7b38eb4..b4e2c2d 100644
---- a/src/util/time.h
-+++ b/src/util/time.h
-@@ -67,34 +67,7 @@ class Time {
- // The standard way of formatting a time in seconds. Used for display of
- // track duration, etc. showCentis indicates whether to include
- // centisecond-precision or to round to the nearest second.
-- static QString formatSeconds(double dSeconds, bool showCentis) {
-- if (dSeconds < 0) {
-- return "?";
-- }
--
-- const int days = static_cast<int>(dSeconds) / kSecondsPerDay;
-- dSeconds -= days * kSecondsPerDay;
--
-- // NOTE(uklotzde): Time() constructs a 'null' object, but
-- // we need 'zero' here.
-- QTime t = QTime(0, 0).addMSecs(dSeconds * kMillisPerSecond);
--
-- QString formatString =
-- (days > 0 ? (QString::number(days) %
-- QLatin1String("'d', ")) : QString()) %
-- QLatin1String(days > 0 || t.hour() > 0 ? "hh:mm:ss" : "mm:ss") %
-- QLatin1String(showCentis ? ".zzz" : "");
--
-- QString timeString = t.toString(formatString);
--
-- // The format string gives us milliseconds but we want
-- // centiseconds. Slice one character off.
-- if (showCentis) {
-- timeString = timeString.left(timeString.length() - 1);
-- }
--
-- return timeString;
-- }
-+ static QString formatSeconds(double dSeconds, bool showCentis);
-
- private:
- static LLTIMER s_timer;
diff --git a/media-sound/mixxx/files/mixxx-2.0.0-rmx2-backport-controller-scripts.patch b/media-sound/mixxx/files/mixxx-2.0.0-rmx2-backport-controller-scripts.patch
deleted file mode 100644
index a82f27166abc..000000000000
--- a/media-sound/mixxx/files/mixxx-2.0.0-rmx2-backport-controller-scripts.patch
+++ /dev/null
@@ -1,280 +0,0 @@
-diff -dNur a/res/controllers/Hercules-DJ-Console-RMX-2-scripts.js b/res/controllers/Hercules-DJ-Console-RMX-2-scripts.js
---- a/res/controllers/Hercules-DJ-Console-RMX-2-scripts.js 2015-12-29 17:10:41.000000000 +0100
-+++ b/res/controllers/Hercules-DJ-Console-RMX-2-scripts.js 2017-02-04 22:01:01.629506434 +0100
-@@ -1,128 +1,159 @@
--/*╔══:::Made Lovingly By Circuitfry:::═════════════════════════════════╗
-- ║ Hercules DJConsole RMX 2 Mapping Scripts v. 0.1.3 ║
-- ╚════════════════════════════════════════════════════════════════════╝
-- * Version 0.1.0: Basic Midi Wizard Mapping
-- * Version 0.1.1: Partially-Functional platters (version 1).
-- * Version 0.1.2: Functional platters (version 1)
-- * Version 0.1.3: Functional EQ Kill/Pitch Bending buttons
-- Functional Looping/Sample/Effect pads
-- Bugfix: Source 2 Gain knob doesn't load tracks.
-- Overhaul: MIDI Scripting file.
-- Worklog: Need to implement Microphone/Source1/Source2 input.
-- * Note 1: [DEP] Means the command is meant for Mixxx v1.10.x + below.
-- * Note 2: [FUT] Means the command is meant for Mixxx v1.11.x + above.
--*/
--function DJCRMX2(){}
--DJCRMX2.scratching = [];
-+/* ╔══:::Made Lovingly By Circuitfry:::═════════════════════════════════╗
-+ * ║ Hercules DJConsole RMX 2 Mapping Scripts ║
-+ * ╚════════════════════════════════════════════════════════════════════╝
-+ */
-
--/* [ Function init ] - Version 0.1.3
-- * Initiates some global variables and assigns an ID. Required.
--*/
--DJCRMX2.init = function(id){
-- DJCRMX2.id = id;
-- DJCRMX2.scratching[1]=false;
-- DJCRMX2.scratching[2]=false;
-- engine.setValue("[Microphone]","enabled",0);
-- engine.setValue("[Microphone]","talkover",0);
-+function DJCRMX2() {}
-+DJCRMX2.decks = [];
-+
-+/* [ Function init ]
-+ * Initiates some global variables and assigns an ID. Required.
-+ */
-+DJCRMX2.init = function (id) {
-+ DJCRMX2.id = id;
-+ DJCRMX2.decks[1] = new DJCRMX2.Deck(1);
-+ DJCRMX2.decks[2] = new DJCRMX2.Deck(2);
-+ engine.setValue("[Microphone]", "enabled", 0);
-+ engine.setValue("[Microphone]", "talkover", 0);
- }
-
--/* [ Function wheelPress ] - Version 0.1.2
-- * Detects whether a jog wheel is pressed or not and sets a specific
-- * variable on and off accordingly.
--*/
--DJCRMX2.wheelPress = function (channel, control, value, status, group){
-- if (status == 0x90) // If status #144 is active (2 possibilities)
-- {
-- if (value == 0x7F) // And the jog wheel is pressed down:
-- { /* engine.scratchEnable(int,int,float,float,float,bool);
-- * [ int deck ] Which track/platter is playing?
-- * [ int intervalsPerRev ] # of MIDI signals sent in 1 spin.
-- * [ float rpm ] Imaginary vinyl rotation speed.
-- * [ float alpha ] Just a fine-tuning variable.
-- * [ float beta ] Just a fine-tuning variable.
-- * [ bool ramp ] As far as I know, nothing...
-- */
-- var alpha = 1.0/8;
-- var beta = alpha/32;
-- if(group=="[Channel1]")
-- {
-- engine.scratchEnable(1, 250, 50, alpha, beta);
-- DJCRMX2.scratching[1] = true; //[DEP]
-- }
-- if(group=="[Channel2]")
-- {
-- engine.scratchEnable(2, 250, 50, alpha, beta);
-- DJCRMX2.scratching[2] = true; //[DEP]
-- }
--
-- }
-- if (value == 0x00 ) // If the jog wheel is released:
-- {
-- if(group=="[Channel1]")
-- {
-- DJCRMX2.scratching[1] = false; // <- v1.10.x and below
-- engine.scratchDisable(1);
-- }
-- if(group=="[Channel2]")
-- {
-- DJCRMX2.scratching[2] = false; // <- v1.10.x and below
-- engine.scratchDisable(2);
-- }
-- }
-- }
-- else //Default setting where button is not held down.
-- {
-- DJCRMX2.scratching[1] = false; // Only for v1.10.x and below
-- DJCRMX2.scratching[2] = false; // Only for v1.10.x and below
-- engine.scratchDisable(1);
-- engine.scratchDisable(2);
-- }
-- return;
-+////////////////////////////////////////////////////////////////////////
-+// Decks //
-+////////////////////////////////////////////////////////////////////////
-+
-+DJCRMX2.Deck = function(number) {
-+ this.number = number;
-+ this.group = "[Channel" + this.number + "]";
-+ this.scratchTimer = 0;
-+};
-+
-+DJCRMX2.Deck.prototype.wheelPress = function (value) {
-+ if (this.scratchTimer != 0) {
-+ // The wheel was touched again, reset the timer.
-+ engine.stopTimer(this.scratchTimer);
-+ this.scratchTimer = 0;
-+ }
-+ if (value == 0x7F) {
-+ // And the jog wheel is pressed down:
-+
-+ /* engine.scratchEnable(int,int,float,float,float,bool);
-+ * [ int deck ] Which track/platter is playing?
-+ * [ int intervalsPerRev ] # of MIDI signals sent in 1 spin.
-+ * [ float rpm ] Imaginary vinyl rotation speed.
-+ * [ float alpha ] Just a fine-tuning variable.
-+ * [ float beta ] Just a fine-tuning variable.
-+ * [ bool ramp ] As far as I know, nothing...
-+ */
-+
-+ var alpha = 1.0 / 8;
-+ var beta = alpha / 32;
-+ engine.scratchEnable(this.number, 256, 33 + 1/3, alpha, beta);
-+ } else {
-+ // The wheel touch sensor can be overly sensitive, so don't release scratch mode right away.
-+ // Depending on how fast the platter was moving, lengthen the time we'll wait.
-+ var scratchRate = Math.abs(engine.getValue(this.group, "scratch2"));
-+ var inertiaTime = Math.pow(1.8, scratchRate) * 50;
-+ if (inertiaTime < 100) {
-+ // Just do it now.
-+ this.finishWheelPress();
-+ } else {
-+ this.scratchTimer = engine.beginTimer(
-+ 100, "DJCRMX2.decks[" + this.number + "].finishWheelPress()", true);
-+ }
-+ }
-+}
-+
-+DJCRMX2.Deck.prototype.finishWheelPress = function() {
-+ this.scratchTimer = 0;
-+ var play = engine.getValue(this.group, "play");
-+ if (play != 0) {
-+ // If we are playing, just hand off to the engine.
-+ engine.scratchDisable(this.number, true);
-+ } else {
-+ // If things are paused, there will be a non-smooth handoff between scratching and jogging.
-+ // Instead, keep scratch on until the platter is not moving.
-+ var scratchRate = Math.abs(engine.getValue(this.group, "scratch2"));
-+ if (scratchRate < 0.01) {
-+ // The platter is basically stopped, now we can disable scratch and hand off to jogging.
-+ engine.scratchDisable(this.number, false);
-+ } else {
-+ // Check again soon.
-+ this.scratchTimer = engine.beginTimer(
-+ 100, "DJCRMX2.decks[" + this.number + "].finishWheelPress()", true);
-+ }
-+ }
-+};
-+
-+
-+/* [ Function wheelTurn ]
-+ * Pays attention to the current deck, checks scratching, affects the
-+ * song accordingly.
-+ */
-+DJCRMX2.Deck.prototype.wheelTurn = function (value) {
-+ var newValue = 0;
-+ // Spinning backwards = 127 or less (less meaning faster)
-+ // Spinning forwards = 1 or more (more meaning faster)
-+ if (value - 64 > 0) {
-+ newValue = value - 128;
-+ } else {
-+ newValue = value;
-+ }
-+
-+ if (engine.isScratching(this.number)) {
-+ engine.scratchTick(this.number, newValue);
-+ } else {
-+ engine.setValue(this.group, "jog", newValue);
-+ }
- }
-+
-+/* [ Function wheelPress ]
-+ * Detects whether a jog wheel is pressed or not and sets a specific
-+ * variable on and off accordingly.
-+ */
-+DJCRMX2.wheelPress = function (channel, control, value, status, group) {
-+ var deck = 0;
-+ if (group == "[Channel1]") {
-+ deck = 1;
-+ } else if (group == "[Channel2]") {
-+ deck = 2;
-+ } else {
-+ return;
-+ }
-+ DJCRMX2.decks[deck].wheelPress(value);
-+}
-+
-
--/* [ Function wheelTurn ] - Version 0.1.2
-- * Pays attention to the current deck, checks scratching, affects the
-- * song accordingly.
--*/
--DJCRMX2.wheelTurn = function (channel, control, value, status, group){
-- var newValue=0;
-- // Spinning backwards = 127 or less (less meaning faster)
-- // Spinning forwards = 1 or more (more meaning faster)
-- if (value-64 > 0) newValue = (value-128);
-- else newValue=value;
-- //if (!engine.isScratching(DJCRMX2.currentDeck)) // [FUT]
-- if(group=="[Channel1]")
-- {
-- if(DJCRMX2.scratching[1]==true) {engine.scratchTick(1,newValue);return;}
-- }
-- else if(group=="[Channel2]")
-- {
-- if(DJCRMX2.scratching[2]==true) {engine.scratchTick(2,newValue);return;}
-- }
-- engine.setValue(group, "jog", newValue);
-- return;
-+/* [ Function wheelTurn ]
-+ * Pays attention to the current deck, checks scratching, affects the
-+ * song accordingly.
-+ */
-+DJCRMX2.wheelTurn = function (channel, control, value, status, group) {
-+ var deck = 0;
-+ if (group == "[Channel1]") {
-+ deck = 1;
-+ } else if (group == "[Channel2]") {
-+ deck = 2;
-+ } else {
-+ return;
-+ }
-+ DJCRMX2.decks[deck].wheelTurn(value);
- }
-
--DJCRMX2.micSwitch = function (channel, control, value, status) //???
-+DJCRMX2.micSwitch = function (channel, control, value, status)
- {
-- if(status == 0x90 && control == 0x48 && value == 0x7F)
-- {
-- engine.setValue("[Microphone]","enabled",1);
-- engine.setValue("[Microphone]","talkover",1);
-- }
-- if(status == 0x90 && control == 0x48 && value == 0x00)
-- {
-- engine.setValue("[Microphone]","enabled",0);
-- engine.setValue("[Microphone]","talkover",0);
-- }
-+ if (status == 0x90 && control == 0x48 && value == 0x7F) {
-+ engine.setValue("[Microphone]","enabled",1);
-+ engine.setValue("[Microphone]","talkover",1);
-+ } else if (status == 0x90 && control == 0x48 && value == 0x00) {
-+ engine.setValue("[Microphone]","enabled",0);
-+ engine.setValue("[Microphone]","talkover",0);
-+ }
- }
-
--/* [ Function shutdown ] - Version 0.1.3
-- * Sets variables down for shutoff.
--*/
--DJCRMX2.shutdown = function(id){
-- DJCRMX2.scratching[1]=false;
-- DJCRMX2.scratching[2]=false;
-- engine.setValue("[Microphone]","enabled",0);
-- engine.setValue("[Microphone]","talkover",0);
-+/* [ Function shutdown ] - Version 0.1.3
-+ * Sets variables down for shutoff.
-+ */
-+DJCRMX2.shutdown = function (id) {
-+ engine.setValue("[Microphone]", "enabled", 0);
-+ engine.setValue("[Microphone]", "talkover", 0);
- }
diff --git a/media-sound/mixxx/files/mixxx-2.0.0-sqlite3.patch b/media-sound/mixxx/files/mixxx-2.0.0-sqlite3.patch
deleted file mode 100644
index a8cb15e63c65..000000000000
--- a/media-sound/mixxx/files/mixxx-2.0.0-sqlite3.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-https://bugs.gentoo.org/622776
-
---- mixxx-2.0.0/src/library/trackcollection.h
-+++ mixxx-2.0.0/src/library/trackcollection.h
-@@ -34,8 +34,7 @@
- #include "library/dao/libraryhashdao.h"
-
- #ifdef __SQLITE3__
--typedef struct sqlite3_context sqlite3_context;
--typedef struct Mem sqlite3_value;
-+#include <sqlite3.h>
- #endif
-
- class TrackInfoObject;
diff --git a/media-sound/mixxx/mixxx-2.0.0-r5.ebuild b/media-sound/mixxx/mixxx-2.0.0-r5.ebuild
deleted file mode 100644
index a8fcb5ca5c84..000000000000
--- a/media-sound/mixxx/mixxx-2.0.0-r5.ebuild
+++ /dev/null
@@ -1,144 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic scons-utils toolchain-funcs
-
-DESCRIPTION="Advanced Digital DJ tool based on Qt"
-HOMEPAGE="https://www.mixxx.org/"
-SRC_URI="https://downloads.${PN}.org/${P}/${P}-src.tar.gz"
-
-# Upstream patches
-SRC_URI+=" https://github.com/mixxxdj/mixxx/commit/51d95ba58d99309f439cb7e2d1285cfb33aa0f63.patch -> ${PN}-2.0.0-ffmpeg30.patch"
-SRC_URI+=" https://github.com/mixxxdj/mixxx/commit/869e07067b15e09bf7ef886a8772afdfb79cbc3c.patch -> ${PN}-2.0.0-ffmpeg31.patch"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="aac debug doc ffmpeg hid mp3 mp4 opus shout wavpack"
-
-# fails to compile system-fidlib. Add ">media-libs/fidlib-0.9.10-r1" once this
-# got fixed
-RDEPEND="
- dev-db/sqlite
- dev-libs/protobuf:0=
- dev-qt/qtconcurrent:5
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtnetwork:5
- dev-qt/qtopengl:5
- dev-qt/qtscript:5[scripttools]
- dev-qt/qtsql:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5
- dev-qt/qtxml:5
- media-libs/chromaprint
- media-libs/flac
- media-libs/libid3tag
- media-libs/libogg
- media-libs/libsndfile
- >=media-libs/libsoundtouch-1.5
- media-libs/libvorbis
- >=media-libs/portaudio-19_pre
- media-libs/portmidi
- media-libs/rubberband
- media-libs/taglib
- media-libs/vamp-plugin-sdk
- sci-libs/fftw:3.0=
- virtual/libusb:1
- virtual/opengl
- x11-libs/libX11
- aac? (
- media-libs/faad2
- media-libs/libmp4v2:0
- )
- hid? ( dev-libs/hidapi )
- mp3? ( media-libs/libmad )
- mp4? ( media-libs/libmp4v2:= )
- opus? ( media-libs/opusfile )
- shout? ( media-libs/libshout )
- wavpack? ( media-sound/wavpack )
- ffmpeg? ( media-video/ffmpeg:0= )
-"
-# media-libs/rubberband RDEPENDs on sci-libs/fftw:3.0
-DEPEND="
- ${RDEPEND}
- virtual/pkgconfig
- dev-qt/qttest:5
- dev-qt/qtxmlpatterns:5
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.0.0-docs.patch
-
- "${DISTDIR}"/${P}-ffmpeg30.patch
- "${DISTDIR}"/${P}-ffmpeg31.patch
-
- "${FILESDIR}"/${P}-chromaprint-1.4.patch #604528
- "${FILESDIR}"/${P}-gcc62.patch #595090
-
- "${FILESDIR}"/${PN}-2.0.0-sqlite3.patch #622776
-
- # The following patches were taken from sunny-overlay (bug #608430)
- "${FILESDIR}"/${P}-fix-formatting-of-time-durations.patch
- "${FILESDIR}"/${P}-eliminate-unnecessary-heap-allocation-of-qtime.patch
- "${FILESDIR}"/${P}-fix-missing-pointer-initialization.patch
- "${FILESDIR}"/${P}-move-definition-of-time-formatseconds-into-dot-cpp-file.patch
- "${FILESDIR}"/${P}-fix-formatting-of-time-durations2.patch
- "${FILESDIR}"/${P}-rmx2-backport-controller-scripts.patch
-)
-
-src_prepare() {
- # use multilib compatible directory for plugins
- sed -i -e "/unix_lib_path =/s/'lib'/'$(get_libdir)'/" src/SConscript || die
-
- default
-}
-
-src_configure() {
- local myoptimize=0
-
- # Required for >=qt-5.7.0 (bug #590690)
- append-cxxflags -std=c++11
-
- # Try to get cpu type based on CFLAGS.
- # Bug #591968
- for i in $(get-flag mcpu) $(get-flag march) ; do
- if [[ ${i} = native ]] ; then
- myoptimize="native"
- break
- fi
- done
-
- myesconsargs=(
- prefix="${EPREFIX}/usr"
- qtdir="${EPREFIX}/usr/$(get_libdir)/qt5"
- faad="$(usex aac 1 0)"
- ffmpeg="$(usex ffmpeg 1 0)"
- hid="$(usex hid 1 0)"
- hifieq=1
- m4a="$(usex mp4 1 0)"
- mad="$(usex mp3 1 0)"
- optimize="${myoptimize}"
- opus="$(usex opus 1 0)"
- qdebug="$(usex debug 1 0)"
- qt5=1
- shoutcast="$(usex shout 1 0)"
- vinylcontrol=1
- wv="$(usex wavpack 1 0)"
- )
-}
-
-src_compile() {
- CC="$(tc-getCC)" CXX="$(tc-getCXX)" LINKFLAGS="${LDFLAGS}" \
- LIBDIR="${EPREFIX}/usr/$(get_libdir)" escons ${myesconsargs[@]}
-}
-
-src_install() {
- CC="$(tc-getCC)" CXX="$(tc-getCXX)" LINKFLAGS="${LDFLAGS}" \
- LIBDIR="${EPREFIX}/usr/$(get_libdir)" escons ${myesconsargs[@]} \
- install_root="${ED}"/usr install
-
- dodoc README Mixxx-Manual.pdf
-}
diff --git a/media-sound/mixxx/mixxx-2.1.1-r1.ebuild b/media-sound/mixxx/mixxx-2.1.1-r1.ebuild
index 6ddad2e85e46..6134b2177b39 100644
--- a/media-sound/mixxx/mixxx-2.1.1-r1.ebuild
+++ b/media-sound/mixxx/mixxx-2.1.1-r1.ebuild
@@ -14,7 +14,7 @@ else
#SRC_URI="https://downloads.mixxx.org/${P}/${P}-src.tar.gz"
SRC_URI="https://github.com/mixxxdj/${PN}/archive/release-${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-release-${PV}"
- KEYWORDS="~amd64 x86"
+ KEYWORDS="amd64 x86"
fi
LICENSE="GPL-2"