From 06ed9c0c57ee47ce6c023bfb58eff8b1eddfe181 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 20 Sep 2016 19:42:08 +0200 Subject: [PATCH] mixxx: initial add 2.0.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Andreas Müller --- ...do-not-check-for-known-machine-types.patch | 41 ++++++++++++ .../0002-force-using-system-soundtouch.patch | 41 ++++++++++++ ...art.cpp-fix-build-with-gcc-6-for-Qt5.patch | 58 ++++++++++++++++ .../recipes-multimedia/mixxx/mixxx_git.bb | 66 +++++++++++++++++++ 4 files changed, 206 insertions(+) create mode 100644 recipes-misc/recipes-multimedia/mixxx/files/0001-do-not-check-for-known-machine-types.patch create mode 100644 recipes-misc/recipes-multimedia/mixxx/files/0002-force-using-system-soundtouch.patch create mode 100644 recipes-misc/recipes-multimedia/mixxx/files/0003-coverart.cpp-fix-build-with-gcc-6-for-Qt5.patch create mode 100644 recipes-misc/recipes-multimedia/mixxx/mixxx_git.bb diff --git a/recipes-misc/recipes-multimedia/mixxx/files/0001-do-not-check-for-known-machine-types.patch b/recipes-misc/recipes-multimedia/mixxx/files/0001-do-not-check-for-known-machine-types.patch new file mode 100644 index 00000000..3bb3e981 --- /dev/null +++ b/recipes-misc/recipes-multimedia/mixxx/files/0001-do-not-check-for-known-machine-types.patch @@ -0,0 +1,41 @@ +From b8673fb304f0eed41a1bcaa953a63bedb27b05e6 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Mon, 19 Sep 2016 01:11:47 +0200 +Subject: [PATCH] do not check for known machine types +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Andreas Müller +--- + build/mixxx.py | 12 ------------ + 1 file changed, 12 deletions(-) + +diff --git a/build/mixxx.py b/build/mixxx.py +index 70c21a5..c79a09b 100644 +--- a/build/mixxx.py ++++ b/build/mixxx.py +@@ -45,18 +45,6 @@ class MixxxBuild(object): + if target not in ['windows', 'osx', 'linux', 'bsd']: + raise Exception("invalid target platform") + +- if machine.lower() not in ['x86_64', 'x86', 'i686', 'i586', +- 'alpha', 'hppa', 'mips', 'mipsel', 's390', +- 'sparc', 'ia64', 'armel', 'armhf', 'hurd-i386', +- 'armv5tel', 'armv5tejl', 'armv6l', 'armv6hl', +- 'armv7l', 'armv7hl', 'armv7hnl', +- 'sh3', 'sh4', +- 'kfreebsd-amd64', 'kfreebsd-i386', +- 'i486', 'i386', 'ppc', 'ppc64', 'powerpc', +- 'powerpc64', 'powerpcspe', 's390x', +- 'amd64', 'em64t', 'intel64', 'arm64', +- 'ppc64el', 'm68k', 'mips64', 'mips64el', 'mipsn32', 'mipsn32el']: +- raise Exception("invalid machine type") + + if toolchain not in ['gnu', 'msvs']: + raise Exception('invalid toolchain type') +-- +2.5.5 + diff --git a/recipes-misc/recipes-multimedia/mixxx/files/0002-force-using-system-soundtouch.patch b/recipes-misc/recipes-multimedia/mixxx/files/0002-force-using-system-soundtouch.patch new file mode 100644 index 00000000..6ea9e3f9 --- /dev/null +++ b/recipes-misc/recipes-multimedia/mixxx/files/0002-force-using-system-soundtouch.patch @@ -0,0 +1,41 @@ +From bf659102f80fa2c104c2725e71943453ed8b9caf Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Mon, 19 Sep 2016 23:46:11 +0200 +Subject: [PATCH] force using system soundtouch +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +For unknown reasons soundtouch is not properly found - maybe +PKG_CONFIG_PATH gets lost in some scons depth - no idea. + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Andreas Müller +--- + build/depends.py | 9 +++------ + 1 file changed, 3 insertions(+), 6 deletions(-) + +diff --git a/build/depends.py b/build/depends.py +index a053970..3edb64e 100644 +--- a/build/depends.py ++++ b/build/depends.py +@@ -490,12 +490,9 @@ class SoundTouch(Dependence): + env = build.env + + if build.platform_is_linux: +- # Try using system lib +- if conf.CheckForPKG('soundtouch', '1.8.0'): +- # System Lib found +- build.env.ParseConfig('pkg-config soundtouch --silence-errors \ +- --cflags --libs') +- self.INTERNAL_LINK = False ++ build.env.ParseConfig('pkg-config soundtouch --silence-errors \ ++ --cflags --libs') ++ self.INTERNAL_LINK = False + + if self.INTERNAL_LINK: + env.Append(CPPPATH=[self.SOUNDTOUCH_INTERNAL_PATH]) +-- +2.5.5 + diff --git a/recipes-misc/recipes-multimedia/mixxx/files/0003-coverart.cpp-fix-build-with-gcc-6-for-Qt5.patch b/recipes-misc/recipes-multimedia/mixxx/files/0003-coverart.cpp-fix-build-with-gcc-6-for-Qt5.patch new file mode 100644 index 00000000..62bad93f --- /dev/null +++ b/recipes-misc/recipes-multimedia/mixxx/files/0003-coverart.cpp-fix-build-with-gcc-6-for-Qt5.patch @@ -0,0 +1,58 @@ +From 5d147b7a84d2fa392b46c508d963276c6093b9c5 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Tue, 20 Sep 2016 00:25:13 +0200 +Subject: [PATCH] coverart.cpp: fix build +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +fixes (with gcc-6 / Qt5.7): +src/library/coverart.cpp:35:44: error: no match for 'operator%' (operand types are 'QString' and 'QLatin1Literal {aka QLatin1String}') + return typeToString(infoRelative.type) % QLatin1Literal(",") % + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ +src/library/coverart.cpp: In function 'QString {anonymous}::coverInfoToString(const CoverInfo&)': +src/library/coverart.cpp:42:44: error: no match for 'operator%' (operand types are 'QString' and 'QLatin1Literal {aka QLatin1String}') + return coverInfoRelativeToString(info) % QLatin1Literal(",") % + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ + +Signed-off-by: Andreas Müller +--- + src/library/coverart.cpp | 14 +++++++------- + 1 file changed, 7 insertions(+), 7 deletions(-) + +diff --git a/src/library/coverart.cpp b/src/library/coverart.cpp +index 621b424..2afc5f0 100644 +--- a/src/library/coverart.cpp ++++ b/src/library/coverart.cpp +@@ -1,5 +1,5 @@ + #include +-#include ++#include + + #include "library/coverart.h" + #include "library/coverartutils.h" +@@ -32,15 +32,15 @@ QString typeToString(CoverInfo::Type type) { + } + + QString coverInfoRelativeToString(const CoverInfoRelative& infoRelative) { +- return typeToString(infoRelative.type) % QLatin1Literal(",") % +- sourceToString(infoRelative.source) % QLatin1Literal(",") % +- infoRelative.coverLocation % QLatin1Literal(",") % +- QLatin1Literal("0x") % QString::number(infoRelative.hash, 16); ++ return typeToString(infoRelative.type) % QLatin1String(",") % ++ sourceToString(infoRelative.source) % QLatin1String(",") % ++ infoRelative.coverLocation % QLatin1String(",") % ++ QLatin1String("0x") % QString::number(infoRelative.hash, 16); + } + + QString coverInfoToString(const CoverInfo& info) { +- return coverInfoRelativeToString(info) % QLatin1Literal(",") % +- info.trackLocation % QLatin1Literal(","); ++ return coverInfoRelativeToString(info) % QLatin1String(",") % ++ info.trackLocation % QLatin1String(","); + } + } // anonymous namespace + +-- +2.5.5 + diff --git a/recipes-misc/recipes-multimedia/mixxx/mixxx_git.bb b/recipes-misc/recipes-multimedia/mixxx/mixxx_git.bb new file mode 100644 index 00000000..8328159c --- /dev/null +++ b/recipes-misc/recipes-multimedia/mixxx/mixxx_git.bb @@ -0,0 +1,66 @@ +SUMMARY = "Qt based DJ software" +HOMEPAGE = "http://mixxx.org/" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://LICENSE;md5=bb18019490a2ef1942831060527e3feb" + +inherit scons + +DEPENDS += " \ + qtbase \ + qtscript \ + qtsvg \ + libusb1 \ + hidapi \ + upower \ + sqlite \ + gperftools \ + libid3tag \ + taglib \ + libmad \ + faad2 \ + libmp4v2 \ + libogg \ + libvorbis \ + protobuf \ + fftw \ + portaudio-v19 \ + portmidi \ + chromaprint \ + rubberband \ + soundtouch \ +" + +SRC_URI = " \ + git://github.com/mixxxdj/${BPN}.git \ + file://0001-do-not-check-for-known-machine-types.patch \ + file://0002-force-using-system-soundtouch.patch \ + file://0003-coverart.cpp-fix-build-with-gcc-6-for-Qt5.patch \ +" +SRCREV = "ba6150137a5a85bce292cde34f0efd107aa89143" +S = "${WORKDIR}/git" +PV = "2.0.0+git${SRCPV}" + +EXTRA_OESCONS_GL ??= " \ + opengles=1 \ +" + +EXTRA_OESCONS += " \ + build=release \ + target=linux \ + machine=${TARGET_ARCH} \ + qt5=1 \ + shoutcast=0 \ + localecompare=0 \ + faad=1 \ + perftools=1 \ + ${EXTRA_OESCONS_GL} \ +" + +# TODO faad not detected libmp4v2 + +do_install_prepend() { + install -d ${D}${prefix} + sed -i 's:/etc/udev:${D}/etc/udev:g' ${S}/src/SConscript +} + +FILES_${PN} += "${datadir}/appdata"