aboutsummaryrefslogtreecommitdiff
path: root/audio/mixxx
diff options
context:
space:
mode:
authorThomas Zander <riggs@FreeBSD.org>2017-03-05 16:27:12 +0000
committerThomas Zander <riggs@FreeBSD.org>2017-03-05 16:27:12 +0000
commite6347b3f449306dc2ae249e9161bb1c3104fdc6f (patch)
tree985df48293fc6598879d0daa4e3f98c3a53333eb /audio/mixxx
parent50dbf2b3e1a87e9019c41500f5aeb0623f9bd9fc (diff)
downloadports-e6347b3f449306dc2ae249e9161bb1c3104fdc6f.tar.gz
ports-e6347b3f449306dc2ae249e9161bb1c3104fdc6f.zip
Update to upstream release 2.0.0
PR: 215814 Submitted by: joe@thrallingpenguin.com Reviewed by: riggs
Notes
Notes: svn path=/head/; revision=435487
Diffstat (limited to 'audio/mixxx')
-rw-r--r--audio/mixxx/Makefile35
-rw-r--r--audio/mixxx/distinfo5
-rw-r--r--audio/mixxx/files/patch-build_depends.py125
-rw-r--r--audio/mixxx/files/patch-build_features.py47
-rw-r--r--audio/mixxx/files/patch-build_mixxx.py14
-rw-r--r--audio/mixxx/files/patch-build_qt4.py13
-rw-r--r--audio/mixxx/files/patch-lib_hidapi-0.8.0-pre_linux_hid-libusb.c42
-rw-r--r--audio/mixxx/files/patch-lib_hidapi-0.8.0-rc1_libusb_hid.c11
-rw-r--r--audio/mixxx/files/patch-src_controllers_controllermanager.cpp17
-rw-r--r--audio/mixxx/files/patch-src_controllers_controllerpresetfilehandler.cpp14
-rw-r--r--audio/mixxx/files/patch-src_defs.h17
-rw-r--r--audio/mixxx/files/patch-src_musicbrainz_chromaprinter.cpp17
-rw-r--r--audio/mixxx/files/patch-src_recording_encodermp3.cpp20
-rw-r--r--audio/mixxx/files/patch-src_sounddeviceportaudio.cpp15
-rw-r--r--audio/mixxx/files/patch-src_soundmanager.cpp23
-rw-r--r--audio/mixxx/files/patch-src_soundmanagerconfig.cpp11
-rw-r--r--audio/mixxx/files/patch-src_soundsourceoggvorbis.cpp18
-rw-r--r--audio/mixxx/files/patch-src_soundsourceproxy.cpp11
-rw-r--r--audio/mixxx/files/patch-src_upgrade.cpp11
-rw-r--r--audio/mixxx/files/patch-src_widget_wdisplay.cpp13
-rw-r--r--audio/mixxx/pkg-plist2
21 files changed, 162 insertions, 319 deletions
diff --git a/audio/mixxx/Makefile b/audio/mixxx/Makefile
index 0ae6e74d2a5a..73b909dd7b9a 100644
--- a/audio/mixxx/Makefile
+++ b/audio/mixxx/Makefile
@@ -2,9 +2,8 @@
# $FreeBSD$
PORTNAME= mixxx
-PORTVERSION= 1.11.0
+PORTVERSION= 2.0.0
DISTVERSIONSUFFIX= -src
-PORTREVISION= 15
CATEGORIES= audio
MASTER_SITES= http://downloads.mixxx.org/${PORTNAME}-${PORTVERSION}/
@@ -14,11 +13,14 @@ COMMENT= DJ mixing application
LICENSE= GPLv2+
LICENSE_FILE= ${WRKSRC}/LICENSE
-LIB_DEPENDS= libFLAC.so:audio/flac \
+LIB_DEPENDS= libchromaprint.so:audio/chromaprint \
+ libFLAC.so:audio/flac \
libid3tag.so:audio/libid3tag \
libmad.so:audio/libmad \
libportaudio.so:audio/portaudio \
+ librubberband.so:audio/rubberband \
libsndfile.so:audio/libsndfile \
+ libvamp-sdk.so:audio/vamp-plugin-sdk \
libvorbisfile.so:audio/libvorbis \
libtag.so:audio/taglib \
libprotobuf.so:devel/protobuf
@@ -27,18 +29,20 @@ WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
BROKEN_aarch64= Fails to compile: Exception("invalid machine type")
-USES= scons iconv
-USE_QT4= corelib gui network opengl script sql svg xml \
- linguisttools_build moc_build qmake_build rcc_build uic_build
-USE_GL= glu
-MAKE_ARGS= qtdir="${PREFIX}" optimize=0
+USES= scons iconv pkgconfig
+USE_QT4= corelib gui network opengl script scripttools sql svg \
+ testlib xml xmlpatterns linguisttools_build moc_build \
+ qmake_build rcc_build uic_build
+USE_GL= gl glu
+MAKE_ARGS= qtdir="${PREFIX}" install_root="${PREFIX}" \
+ build=release optimize=native
LATE_INSTALL_ARGS= --install-sandbox=${STAGEDIR}
PORTDATA= *
PORTDOCS= *
-OPTIONS_DEFINE= DOCS FAAD GPERFTOOLS LAME SHOUTCAST WAVPACK
-OPTIONS_DEFAULT= FAAD SHOUTCAST WAVPACK
+OPTIONS_DEFINE= DOCS FAAD GPERFTOOLS HID LAME OPUS SHOUTCAST WAVPACK
+OPTIONS_DEFAULT= FAAD HID SHOUTCAST OPUS WAVPACK
OPTIONS_SUB= yes
FAAD_LIB_DEPENDS= libfaad.so:audio/faad \
@@ -48,7 +52,14 @@ FAAD_MAKE_ARGS_OFF= faad=0
GPERFTOOLS_LIB_DEPENDS= libtcmalloc.so:devel/google-perftools
GPERFTOOLS_MAKE_ARGS= perftools=1
GPERFTOOLS_MAKE_ARGS_OFF= perftools=0
+HID_DESC= USB HID controllers support
+HID_MAKE_ARGS= hid=1
+HID_MAKE_ARGS_OFF= hid=0
LAME_RUN_DEPENDS= lame:audio/lame
+OPUS_LIB_DEPENDS= libopus.so:audio/opus \
+ libopusfile.so:audio/opusfile
+OPUS_MAKE_ARGS= opus=1
+OPUS_MAKE_ARGS_OFF= opus=0
SHOUTCAST_LIB_DEPENDS= libshout.so:audio/libshout
SHOUTCAST_MAKE_ARGS= shoutcast=1
SHOUTCAST_MAKE_ARGS_OFF= shoutcast=0
@@ -66,7 +77,7 @@ post-patch:
${WRKSRC}/src/SConscript
@${REINPLACE_CMD} -e "s|^Exec=.*|Exec=mixxx| ; \
s|^Icon=.*|Icon=${PREFIX}/share/pixmaps/mixxx-icon.png|" \
- ${WRKSRC}/src/mixxx.desktop
+ ${WRKSRC}/res/linux/mixxx.desktop
.for i in midi/midimessage.h qtscript-bytearray/bytearrayclass.h
@${ECHO_CMD} >> ${WRKSRC}/src/controllers/${i}
.endfor
@@ -76,7 +87,7 @@ post-install:
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mixxx/plugins/*/*.so
@${MKDIR} ${STAGEDIR}${PREFIX}/lib/mixxx/plugins/soundsource
@${MKDIR} ${STAGEDIR}${DOCSDIR}
-.for i in Mixxx-Manual.pdf README README.macro
+.for i in Mixxx-Manual.pdf README README.md
(cd ${WRKSRC} && ${INSTALL_DATA} ${i} \
${STAGEDIR}${DOCSDIR})
.endfor
diff --git a/audio/mixxx/distinfo b/audio/mixxx/distinfo
index 908cfae58896..6a36aee32e09 100644
--- a/audio/mixxx/distinfo
+++ b/audio/mixxx/distinfo
@@ -1,2 +1,3 @@
-SHA256 (mixxx-1.11.0-src.tar.gz) = 00961b5d6c1e6d6686d76e55de474b943bbeff4e59b163dddd3d9940dc1b0331
-SIZE (mixxx-1.11.0-src.tar.gz) = 24473835
+TIMESTAMP = 1483555438
+SHA256 (mixxx-2.0.0-src.tar.gz) = e1b8f33bba35046608578095ed3209967034579252d84c99e6bc03ec030f676d
+SIZE (mixxx-2.0.0-src.tar.gz) = 25300881
diff --git a/audio/mixxx/files/patch-build_depends.py b/audio/mixxx/files/patch-build_depends.py
index 2125e9f8771e..f9a758010299 100644
--- a/audio/mixxx/files/patch-build_depends.py
+++ b/audio/mixxx/files/patch-build_depends.py
@@ -1,113 +1,64 @@
---- build/depends.py.orig 2013-05-08 23:20:26 UTC
+--- build/depends.py.orig 2015-12-29 16:10:41 UTC
+++ build/depends.py
-@@ -150,7 +150,7 @@ class FLAC(Dependence):
+@@ -262,7 +262,7 @@ class Qt(Dependence):
- class Qt(Dependence):
- DEFAULT_QTDIRS = {'linux': '/usr/share/qt4',
-- 'bsd': '/usr/local/lib/qt4',
-+ 'bsd': '%%LOCALBASE%%/lib/qt4',
- 'osx': '/Library/Frameworks',
- 'windows': 'C:\\qt\\4.6.0'}
-
-@@ -219,6 +219,7 @@ class Qt(Dependence):
- build.env.Append(LIBS = 'QtOpenGL')
- build.env.Append(LIBS = 'QtXml')
- build.env.Append(LIBS = 'QtNetwork')
-+ build.env.Append(LIBS = 'QtSql')
- build.env.Append(LIBS = 'QtScript')
- if use_qtwebkit:
- build.env.Append(LIBS = 'QtWebKit')
-@@ -264,16 +265,16 @@ class Qt(Dependence):
-
- # Set Qt include paths for non-OSX
- if not build.platform_is_osx:
-- include_paths = ['$QTDIR/include/QtCore',
-- '$QTDIR/include/QtGui',
-- '$QTDIR/include/QtOpenGL',
-- '$QTDIR/include/QtXml',
-- '$QTDIR/include/QtNetwork',
-- '$QTDIR/include/QtSql',
-- '$QTDIR/include/QtScript',
-- '$QTDIR/include/Qt']
-+ include_paths = ['$QTDIR/include/qt4/QtCore',
-+ '$QTDIR/include/qt4/QtGui',
-+ '$QTDIR/include/qt4/QtOpenGL',
-+ '$QTDIR/include/qt4/QtXml',
-+ '$QTDIR/include/qt4/QtNetwork',
-+ '$QTDIR/include/qt4/QtSql',
-+ '$QTDIR/include/qt4/QtScript',
-+ '$QTDIR/include/qt4/Qt']
- if use_qtwebkit:
-- include_paths.append('$QTDIR/include/QtWebKit')
-+ include_paths.append('$QTDIR/include/qt4/QtWebKit')
+ elif build.platform_is_bsd:
+ build.env.Append(LIBS=qt_modules)
+- include_paths = ['$QTDIR/include/%s' % module
++ include_paths = ['%%LOCALBASE%%/include/qt4/%s' % module
+ for module in qt_modules]
build.env.Append(CPPPATH=include_paths)
+ elif build.platform_is_osx:
+@@ -358,7 +358,7 @@ class Qt(Dependence):
+ if not build.platform_is_windows and not (using_104_sdk or compiling_on_104):
+ qtdir = build.env['QTDIR']
+ framework_path = Qt.find_framework_libdir(qtdir, qt5)
+- if os.path.isdir(framework_path):
++ if framework_path and os.path.isdir(framework_path):
+ build.env.Append(LINKFLAGS="-Wl,-rpath," + framework_path)
+ build.env.Append(LINKFLAGS="-L" + framework_path)
- # Set the rpath for linux/bsd/osx.
-@@ -387,7 +388,7 @@ class TagLib(Dependence):
- # the files correctly. Adding this folder ot the include path should fix
- # it, though might cause issues. This is safe to remove once we
- # deprecate Karmic support. rryan 2/2011
-- build.env.Append(CPPPATH='/usr/include/taglib/')
-+ build.env.Append(CPPPATH='%%LOCALBASE%%/include/taglib/')
+@@ -1045,7 +1045,6 @@ class MixxxCore(Feature):
- if build.platform_is_windows and build.static_dependencies:
- build.env.Append(CPPDEFINES = 'TAGLIB_STATIC')
-@@ -782,14 +783,9 @@ class MixxxCore(Feature):
if build.toolchain_is_gnu:
# Default GNU Options
- # TODO(XXX) always generate debugging info?
-- build.env.Append(CCFLAGS = '-pipe')
- build.env.Append(CCFLAGS = '-Wall')
- build.env.Append(CCFLAGS = '-Wextra')
-- build.env.Append(CCFLAGS = '-g')
+- build.env.Append(CCFLAGS='-pipe')
+ build.env.Append(CCFLAGS='-Wall')
+ build.env.Append(CCFLAGS='-Wextra')
-- # Check that g++ is present (yeah, SCONS is a bit dumb here)
-- if os.system("which g++ > /dev/null"): #Checks for non-zero return code
-- raise Exception("Did not find g++.")
- elif build.toolchain_is_msvs:
- # Validate the specified winlib directory exists
- mixxx_lib_path = SCons.ARGUMENTS.get('winlib', '..\\..\\..\\mixxx-win32lib-msvc100-release')
-@@ -851,16 +847,19 @@ class MixxxCore(Feature):
+@@ -1146,11 +1145,13 @@ class MixxxCore(Feature):
elif build.platform_is_bsd:
build.env.Append(CPPDEFINES='__BSD__')
- build.env.Append(CPPPATH=['/usr/include',
- '/usr/local/include',
-- '/usr/X11R6/include/'])
-- build.env.Append(LIBPATH=['/usr/lib/',
-- '/usr/local/lib',
-- '/usr/X11R6/lib'])
- build.env.Append(LIBS='pthread')
+ build.env.Append(CPPPATH=['%%LOCALBASE%%/include/portaudio2',
+ '%%LOCALBASE%%/include/qt4',
-+ '%%LOCALBASE%%/include'])
++ '%%LOCALBASE%%/include',
+ '/usr/X11R6/include/'])
+- build.env.Append(LIBPATH=['/usr/lib/',
+- '/usr/local/lib',
+ build.env.Append(LIBPATH=['%%LOCALBASE%%/lib/portaudio2',
+ '%%LOCALBASE%%/lib/qt4',
-+ '%%LOCALBASE%%/lib'])
-+ build.env.Append(LINKFLAGS=['%%LOCALBASE%%/lib/libportaudio.so',
-+ '-Wl,-rpath,%%LOCALBASE%%/lib/qt4',
-+ '-Wl,-rpath,%%LOCALBASE%%/lib'])
++ '%%LOCALBASE%%/lib',
+ '/usr/X11R6/lib'])
+ build.env.Append(LIBS='pthread')
# why do we need to do this on OpenBSD and not on Linux? if we
- # don't then CheckLib("vorbisfile") fails
-- build.env.Append(LIBS=['ogg', 'vorbis'])
-+ # build.env.Append(LIBS=['ogg', 'vorbis'])
-
- # Define for things that would like to special case UNIX (Linux or BSD)
- if build.platform_is_bsd or build.platform_is_linux:
-@@ -897,14 +896,14 @@ class MixxxCore(Feature):
+@@ -1188,7 +1189,7 @@ class MixxxCore(Feature):
# Say where to find resources on Unix. TODO(XXX) replace this with a
# RESOURCE_PATH that covers Win and OSX too:
if build.platform_is_linux or build.platform_is_bsd:
- prefix = SCons.ARGUMENTS.get('prefix', '/usr/local')
+ prefix = SCons.ARGUMENTS.get('prefix', '%%PREFIX%%')
- share_path = os.path.join(prefix, 'share/mixxx')
- build.env.Append(CPPDEFINES=('UNIX_SHARE_PATH', r'\"%s\"' % share_path))
- lib_path = os.path.join(prefix, 'lib/mixxx')
- build.env.Append(CPPDEFINES=('UNIX_LIB_PATH', r'\"%s\"' % lib_path))
+ share_path = os.path.join (prefix, build.env.get(
+ 'SHAREDIR', default='share'), 'mixxx')
+ build.env.Append(
+@@ -1199,7 +1200,7 @@ class MixxxCore(Feature):
+ CPPDEFINES=('UNIX_LIB_PATH', r'\"%s\"' % lib_path))
def depends(self, build):
-- return [SoundTouch, ReplayGain, PortAudio, PortMIDI, Qt,
-+ return [SoundTouch, ReplayGain, PortAudio, Qt,
- FidLib, SndFile, FLAC, OggVorbis, OpenGL, TagLib, ProtoBuf]
+- return [SoundTouch, ReplayGain, PortAudio, PortMIDI, Qt, TestHeaders,
++ return [SoundTouch, ReplayGain, PortAudio, Qt, TestHeaders,
+ FidLib, SndFile, FLAC, OggVorbis, OpenGL, TagLib, ProtoBuf,
+ Chromaprint, RubberBand, SecurityFramework, CoreServices, FpClassify]
- def post_dependency_check_configure(self, build, conf):
diff --git a/audio/mixxx/files/patch-build_features.py b/audio/mixxx/files/patch-build_features.py
index e86985c496d3..3f0f038449c1 100644
--- a/audio/mixxx/files/patch-build_features.py
+++ b/audio/mixxx/files/patch-build_features.py
@@ -1,25 +1,25 @@
---- build/features.py.orig 2013-05-08 23:20:26 UTC
+--- build/features.py.orig 2015-12-29 16:10:41 UTC
+++ build/features.py
-@@ -83,6 +83,9 @@ class HID(Feature):
+@@ -87,6 +87,9 @@ class HID(Feature):
+ raise Exception('Did not find the setupapi library, exiting.')
elif build.platform_is_osx:
- build.env.Append(LINKFLAGS='-framework IOKit')
- build.env.Append(LINKFLAGS='-framework CoreFoundation')
+ build.env.AppendUnique(FRAMEWORKS=['IOKit', 'CoreFoundation'])
+ elif build.platform_is_bsd:
+ conf.CheckLib(['usb', 'libusb'])
+ conf.CheckLib(['usbhid', 'libusbhid'])
- build.env.Append(CPPDEFINES = '__HID__')
+ build.env.Append(CPPDEFINES='__HID__')
-@@ -95,7 +98,7 @@ class HID(Feature):
- # Requires setupapi.lib which is included by the above check for
+@@ -100,7 +103,7 @@ class HID(Feature):
# setupapi.
- sources.append(os.path.join(self.HIDAPI_INTERNAL_PATH, "windows/hid.c"))
+ sources.append(
+ os.path.join(self.HIDAPI_INTERNAL_PATH, "windows/hid.c"))
- elif build.platform_is_linux:
+ elif build.platform_is_linux or build.platform_is_bsd:
- sources.append(os.path.join(self.HIDAPI_INTERNAL_PATH, 'linux/hid-libusb.c'))
- elif build.platform_is_osx:
- sources.append(os.path.join(self.HIDAPI_INTERNAL_PATH, 'mac/hid.c'))
-@@ -108,24 +111,27 @@ class Bulk(Feature):
+ # hidapi compiles the libusb implementation by default on Linux
+ sources.append(
+ os.path.join(self.HIDAPI_INTERNAL_PATH, 'libusb/hid.c'))
+@@ -117,14 +120,14 @@ class Bulk(Feature):
def enabled(self, build):
# For now only make Bulk default on Linux only. Turn on for all
# platforms after the 1.11.0 release.
@@ -33,23 +33,28 @@
def add_options(self, build, vars):
- is_default = 1 if build.platform_is_linux else 0
+ is_default = 1 if build.platform_is_linux or build.platform_is_bsd else 0
- vars.Add('bulk', 'Set to 1 to enable USB Bulk controller support.', is_default)
+ vars.Add('bulk',
+ 'Set to 1 to enable USB Bulk controller support.', is_default)
- def configure(self, build, conf):
+@@ -132,12 +135,15 @@ class Bulk(Feature):
if not self.enabled(build):
return
-- build.env.ParseConfig('pkg-config libusb-1.0 --silence-errors --cflags --libs')
+- build.env.ParseConfig(
+- 'pkg-config libusb-1.0 --silence-errors --cflags --libs')
- if (not conf.CheckLib(['libusb-1.0', 'usb-1.0']) or
-- not conf.CheckHeader('libusb-1.0/libusb.h')):
-- raise Exception('Did not find the libusb 1.0 development library or its header file, exiting!')
+- not conf.CheckHeader('libusb-1.0/libusb.h')):
+- raise Exception(
+- 'Did not find the libusb 1.0 development library or its header file, exiting!')
+ if build.platform_is_linux:
-+ build.env.ParseConfig('pkg-config libusb-1.0 --silence-errors --cflags --libs')
++ build.env.ParseConfig(
++ 'pkg-config libusb-1.0 --silence-errors --cflags --libs')
+ if (not conf.CheckLib(['libusb-1.0', 'usb-1.0']) or
-+ not conf.CheckHeader('libusb-1.0/libusb.h')):
-+ raise Exception('Did not find the libusb 1.0 development library or its header file, exiting!')
++ not conf.CheckHeader('libusb-1.0/libusb.h')):
++ raise Exception(
++ 'Did not find the libusb 1.0 development library or its header file, exiting!')
+ elif build.platform_is_bsd:
+ conf.CheckLib(['usb', 'libusb'])
- build.env.Append(CPPDEFINES = '__BULK__')
+ build.env.Append(CPPDEFINES='__BULK__')
diff --git a/audio/mixxx/files/patch-build_mixxx.py b/audio/mixxx/files/patch-build_mixxx.py
new file mode 100644
index 000000000000..15bb70d2a829
--- /dev/null
+++ b/audio/mixxx/files/patch-build_mixxx.py
@@ -0,0 +1,14 @@
+--- build/mixxx.py.orig 2015-12-29 16:10:41 UTC
++++ build/mixxx.py
+@@ -380,9 +380,9 @@ class MixxxBuild(object):
+ self.env['LINKFLAGS'] += SCons.Util.CLVar(os.environ['LDFLAGS'])
+
+ # Allow installation directories to be specified.
+- prefix = Script.ARGUMENTS.get('prefix', '/usr/local')
++ prefix = Script.ARGUMENTS.get('prefix', '%%PREFIX%%')
+ if os.environ.has_key('LIBDIR'):
+- self.env['LIBDIR'] = os.path.relpath(os.environ['LIBDIR'], prefix)
++ self.env['LIBDIR'] = 'lib' # os.path.relpath(os.environ['LIBDIR'], prefix)
+ if os.environ.has_key('BINDIR'):
+ self.env['BINDIR'] = os.path.relpath(os.environ['BINDIR'], prefix)
+ if os.environ.has_key('SHAREDIR'):
diff --git a/audio/mixxx/files/patch-build_qt4.py b/audio/mixxx/files/patch-build_qt4.py
deleted file mode 100644
index 2a3ccd22bce1..000000000000
--- a/audio/mixxx/files/patch-build_qt4.py
+++ /dev/null
@@ -1,13 +0,0 @@
---- build/qt4.py.orig 2013-05-08 23:20:26 UTC
-+++ build/qt4.py
-@@ -246,8 +246,8 @@ def generate(env):
- env.Replace(
- # QTDIR = _detect(env),
- QT4_BINPATH = os.path.join('$QTDIR', 'bin'),
-- QT4_CPPPATH = os.path.join('$QTDIR', 'include'),
-- QT4_LIBPATH = os.path.join('$QTDIR', 'lib'),
-+ QT4_CPPPATH = os.path.join('$QTDIR', 'include', 'qt4', 'Qt'),
-+ QT4_LIBPATH = os.path.join('$QTDIR', 'lib', 'qt4'),
- # TODO: This is not reliable to QTDIR value changes but needed in order to support '-qt4' variants
- QT4_MOC = locateQt4Command(env,'moc', env['QTDIR']),
- QT4_UIC = locateQt4Command(env,'uic', env['QTDIR']),
diff --git a/audio/mixxx/files/patch-lib_hidapi-0.8.0-pre_linux_hid-libusb.c b/audio/mixxx/files/patch-lib_hidapi-0.8.0-pre_linux_hid-libusb.c
deleted file mode 100644
index 9ef29ab1275b..000000000000
--- a/audio/mixxx/files/patch-lib_hidapi-0.8.0-pre_linux_hid-libusb.c
+++ /dev/null
@@ -1,42 +0,0 @@
---- lib/hidapi-0.8.0-pre/linux/hid-libusb.c.orig 2013-05-08 23:20:26 UTC
-+++ lib/hidapi-0.8.0-pre/linux/hid-libusb.c
-@@ -48,6 +48,12 @@
-
- #include "hidapi.h"
-
-+#ifdef __FreeBSD__
-+#define LIBUSB_GET_STRING_DESCRIPTOR(h,i,l,d,n) libusb_get_string_descriptor_ascii(h,i,d,n)
-+#else
-+#define LIBUSB_GET_STRING_DESCRIPTOR(h,i,l,d,n) libusb_get_string_descriptor(h,i,l,d,n)
-+#endif
-+
- #ifdef __cplusplus
- extern "C" {
- #endif
-@@ -264,7 +270,7 @@ static uint16_t get_first_language(libus
- int len;
-
- /* Get the string from libusb. */
-- len = libusb_get_string_descriptor(dev,
-+ len = LIBUSB_GET_STRING_DESCRIPTOR(dev,
- 0x0, /* String ID */
- 0x0, /* Language */
- (unsigned char*)buf,
-@@ -282,7 +288,7 @@ static int is_language_supported(libusb_
- int i;
-
- /* Get the string from libusb. */
-- len = libusb_get_string_descriptor(dev,
-+ len = LIBUSB_GET_STRING_DESCRIPTOR(dev,
- 0x0, /* String ID */
- 0x0, /* Language */
- (unsigned char*)buf,
-@@ -327,7 +333,7 @@ static wchar_t *get_usb_string(libusb_de
- lang = get_first_language(dev);
-
- /* Get the string from libusb. */
-- len = libusb_get_string_descriptor(dev,
-+ len = LIBUSB_GET_STRING_DESCRIPTOR(dev,
- idx,
- lang,
- (unsigned char*)buf,
diff --git a/audio/mixxx/files/patch-lib_hidapi-0.8.0-rc1_libusb_hid.c b/audio/mixxx/files/patch-lib_hidapi-0.8.0-rc1_libusb_hid.c
new file mode 100644
index 000000000000..262647d3ea6f
--- /dev/null
+++ b/audio/mixxx/files/patch-lib_hidapi-0.8.0-rc1_libusb_hid.c
@@ -0,0 +1,11 @@
+--- lib/hidapi-0.8.0-rc1/libusb/hid.c.orig 2015-12-29 16:10:41 UTC
++++ lib/hidapi-0.8.0-rc1/libusb/hid.c
+@@ -258,7 +258,7 @@ static int get_usage(uint8_t *report_des
+ Note that the data parameter is Unicode in UTF-16LE encoding.
+ Return value is the number of bytes in data, or LIBUSB_ERROR_*.
+ */
+-static inline int libusb_get_string_descriptor(libusb_device_handle *dev,
++inline int libusb_get_string_descriptor(libusb_device_handle *dev,
+ uint8_t descriptor_index, uint16_t lang_id,
+ unsigned char *data, int length)
+ {
diff --git a/audio/mixxx/files/patch-src_controllers_controllermanager.cpp b/audio/mixxx/files/patch-src_controllers_controllermanager.cpp
index be14f60d1d0e..d83e88ba17b8 100644
--- a/audio/mixxx/files/patch-src_controllers_controllermanager.cpp
+++ b/audio/mixxx/files/patch-src_controllers_controllermanager.cpp
@@ -1,18 +1,7 @@
---- src/controllers/controllermanager.cpp.orig 2013-05-08 23:20:26 UTC
+--- src/controllers/controllermanager.cpp.orig 2015-12-29 16:10:41 UTC
+++ src/controllers/controllermanager.cpp
-@@ -12,7 +12,10 @@
- #include "controllers/defs_controllers.h"
- #include "controllers/controllerlearningeventfilter.h"
-
-+#ifdef __PORTMIDI__
- #include "controllers/midi/portmidienumerator.h"
-+#endif
-+
- #ifdef __HSS1394__
- #include "controllers/midi/hss1394enumerator.h"
- #endif
-@@ -78,7 +81,9 @@ ControllerManager::ControllerManager(Con
- m_pPresetInfoManager = new PresetInfoEnumerator(m_pConfig);
+@@ -83,7 +83,9 @@ ControllerManager::ControllerManager(Con
+ m_pMainThreadPresetEnumerator = new PresetInfoEnumerator(presetSearchPaths);
// Instantiate all enumerators
+#ifdef __PORTMIDI__
diff --git a/audio/mixxx/files/patch-src_controllers_controllerpresetfilehandler.cpp b/audio/mixxx/files/patch-src_controllers_controllerpresetfilehandler.cpp
new file mode 100644
index 000000000000..464b33c32d4b
--- /dev/null
+++ b/audio/mixxx/files/patch-src_controllers_controllerpresetfilehandler.cpp
@@ -0,0 +1,14 @@
+--- src/controllers/controllerpresetfilehandler.cpp.orig 2015-12-29 16:10:41 UTC
++++ src/controllers/controllerpresetfilehandler.cpp
+@@ -43,7 +43,11 @@ ControllerPresetPointer ControllerPreset
+ pHandler = new MidiControllerPresetFileHandler();
+ } else if (scriptPath.endsWith(HID_PRESET_EXTENSION, Qt::CaseInsensitive) ||
+ scriptPath.endsWith(BULK_PRESET_EXTENSION, Qt::CaseInsensitive)) {
++#if __HID__
+ pHandler = new HidControllerPresetFileHandler();
++#else
++ return ControllerPresetPointer();
++#endif
+ }
+
+ if (pHandler == NULL) {
diff --git a/audio/mixxx/files/patch-src_defs.h b/audio/mixxx/files/patch-src_defs.h
deleted file mode 100644
index 04ef41da2eb8..000000000000
--- a/audio/mixxx/files/patch-src_defs.h
+++ /dev/null
@@ -1,17 +0,0 @@
---- src/defs.h.orig 2013-05-08 23:20:26 UTC
-+++ src/defs.h
-@@ -87,6 +87,8 @@ inline double zap_denormal(double x)
- #define math_min(a,b) (((a) < (b)) ? (a) : (b))
- #endif
-
-+#if !defined(__GNUC__)
-+
- // MSVC 2005/2008 needs these
- #ifndef fmax
- #define fmax math_max
-@@ -98,3 +100,5 @@ inline double zap_denormal(double x)
-
- #endif
-
-+#endif
-+
diff --git a/audio/mixxx/files/patch-src_musicbrainz_chromaprinter.cpp b/audio/mixxx/files/patch-src_musicbrainz_chromaprinter.cpp
new file mode 100644
index 000000000000..f8bb7f198703
--- /dev/null
+++ b/audio/mixxx/files/patch-src_musicbrainz_chromaprinter.cpp
@@ -0,0 +1,17 @@
+--- src/musicbrainz/chromaprinter.cpp.orig 2015-12-29 16:10:41 UTC
++++ src/musicbrainz/chromaprinter.cpp
+@@ -57,12 +57,12 @@ QString ChromaPrinter::calcFingerPrint(c
+ }
+ chromaprint_finish(ctx);
+
+- void* fprint = NULL;
++ unsigned int* fprint = NULL;
+ int size = 0;
+ int ret = chromaprint_get_raw_fingerprint(ctx, &fprint, &size);
+ QByteArray fingerprint;
+ if (ret == 1) {
+- void* encoded = NULL;
++ char* encoded = NULL;
+ int encoded_size = 0;
+ chromaprint_encode_fingerprint(fprint, size,
+ CHROMAPRINT_ALGORITHM_DEFAULT,
diff --git a/audio/mixxx/files/patch-src_recording_encodermp3.cpp b/audio/mixxx/files/patch-src_recording_encodermp3.cpp
deleted file mode 100644
index 5c4c83fd9b30..000000000000
--- a/audio/mixxx/files/patch-src_recording_encodermp3.cpp
+++ /dev/null
@@ -1,20 +0,0 @@
---- src/recording/encodermp3.cpp.orig 2013-05-08 23:20:26 UTC
-+++ src/recording/encodermp3.cpp
-@@ -85,7 +85,7 @@ EncoderMp3::EncoderMp3(EngineAbstractRec
- */
- QStringList libnames;
- QString libname = "";
--#ifdef __LINUX__
-+#if defined(__BSD__) || defined(__LINUX__)
- libnames << "mp3lame";
- #elif __WINDOWS__
- libnames << "lame_enc.dll";
-@@ -108,7 +108,7 @@ EncoderMp3::EncoderMp3(EngineAbstractRec
- props->setType(DLG_WARNING);
- props->setTitle(tr("Encoder"));
- QString key = "";
--#ifdef __LINUX__
-+#if defined(__BSD__) || defined(__LINUX__)
- key = tr("<html>Mixxx cannot record or stream in MP3 without the MP3 encoder &quot;lame&quot;. Due to licensing issues, we cannot include this with Mixxx. To record or stream in MP3, you must download <b>libmp3lame</b> and install it on your system. <p>See <a href='http://mixxx.org/wiki/doku.php/internet_broadcasting#linux'>Mixxx Wiki</a> for more information. </html>");
- props->setText(key);
- #elif __WINDOWS__
diff --git a/audio/mixxx/files/patch-src_sounddeviceportaudio.cpp b/audio/mixxx/files/patch-src_sounddeviceportaudio.cpp
deleted file mode 100644
index ff34f62cef20..000000000000
--- a/audio/mixxx/files/patch-src_sounddeviceportaudio.cpp
+++ /dev/null
@@ -1,15 +0,0 @@
---- src/sounddeviceportaudio.cpp.orig 2013-05-08 23:20:26 UTC
-+++ src/sounddeviceportaudio.cpp
-@@ -182,10 +182,10 @@ int SoundDevicePortAudio::open()
- qDebug() << "Opened PortAudio stream successfully... starting";
- }
-
--#ifdef __LINUX__
-+#if defined(__BSD__) || defined(__LINUX__)
- //Attempt to dynamically load and resolve stuff in the PortAudio library
- //in order to enable RT priority with ALSA.
-- QLibrary portaudio("libportaudio.so.2");
-+ QLibrary portaudio("libportaudio.so");
- if (!portaudio.load())
- qWarning() << "Failed to dynamically load PortAudio library";
- else
diff --git a/audio/mixxx/files/patch-src_soundmanager.cpp b/audio/mixxx/files/patch-src_soundmanager.cpp
deleted file mode 100644
index 626f63cb0d0b..000000000000
--- a/audio/mixxx/files/patch-src_soundmanager.cpp
+++ /dev/null
@@ -1,23 +0,0 @@
---- src/soundmanager.cpp.orig 2013-05-08 23:20:26 UTC
-+++ src/soundmanager.cpp
-@@ -234,7 +234,7 @@ void SoundManager::queryDevices() {
- #ifdef __PORTAUDIO__
- PaError err = paNoError;
- if (!m_paInitialized) {
--#ifdef Q_OS_LINUX
-+#if defined(__BSD__) || defined(Q_OS_LINUX)
- setJACKName();
- #endif
- err = Pa_Initialize();
-@@ -626,9 +626,9 @@ QList<AudioInput> SoundManager::register
-
- void SoundManager::setJACKName() const {
- #ifdef __PORTAUDIO__
--#ifdef Q_OS_LINUX
-+#if defined(__BSD__) || defined(Q_OS_LINUX)
- typedef PaError (*SetJackClientName)(const char *name);
-- QLibrary portaudio("libportaudio.so.2");
-+ QLibrary portaudio("libportaudio.so");
- if (portaudio.load()) {
- SetJackClientName func(
- reinterpret_cast<SetJackClientName>(
diff --git a/audio/mixxx/files/patch-src_soundmanagerconfig.cpp b/audio/mixxx/files/patch-src_soundmanagerconfig.cpp
deleted file mode 100644
index 3eb0c22cfdd8..000000000000
--- a/audio/mixxx/files/patch-src_soundmanagerconfig.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/soundmanagerconfig.cpp.orig 2013-05-08 23:20:26 UTC
-+++ src/soundmanagerconfig.cpp
-@@ -290,7 +290,7 @@ void SoundManagerConfig::loadDefaults(So
- if (flags & SoundManagerConfig::API) {
- QList<QString> apiList = soundManager->getHostAPIList();
- if (!apiList.isEmpty()) {
--#ifdef __LINUX__
-+#if defined(__BSD__) || defined(__LINUX__)
- //Check for JACK and use that if it's available, otherwise use ALSA
- if (apiList.contains(MIXXX_PORTAUDIO_JACK_STRING)) {
- m_api = MIXXX_PORTAUDIO_JACK_STRING;
diff --git a/audio/mixxx/files/patch-src_soundsourceoggvorbis.cpp b/audio/mixxx/files/patch-src_soundsourceoggvorbis.cpp
deleted file mode 100644
index 5e3d66439f1b..000000000000
--- a/audio/mixxx/files/patch-src_soundsourceoggvorbis.cpp
+++ /dev/null
@@ -1,18 +0,0 @@
---- src/soundsourceoggvorbis.cpp.orig 2013-05-08 23:20:26 UTC
-+++ src/soundsourceoggvorbis.cpp
-@@ -32,6 +32,15 @@
- #endif
- #endif
-
-+#ifdef __BSD__
-+#include <sys/endian.h>
-+#if _BYTE_ORDER == _LITTLE_ENDIAN
-+#define OV_ENDIAN_ARG 0
-+#else
-+#define OV_ENDIAN_ARG 1
-+#endif
-+#endif
-+
- #ifdef __LINUX__
- #include <endian.h>
- #if __BYTE_ORDER == __LITTLE_ENDIAN
diff --git a/audio/mixxx/files/patch-src_soundsourceproxy.cpp b/audio/mixxx/files/patch-src_soundsourceproxy.cpp
deleted file mode 100644
index 56423ca4d62b..000000000000
--- a/audio/mixxx/files/patch-src_soundsourceproxy.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/soundsourceproxy.cpp.orig 2013-05-08 23:20:26 UTC
-+++ src/soundsourceproxy.cpp
-@@ -84,7 +84,7 @@ void SoundSourceProxy::loadPlugins()
- qDebug() << "Adding plugin path from commandline arg:" << pluginPath;
- pluginDirs.append(QDir(pluginPath));
- }
--#ifdef __LINUX__
-+#if defined(__BSD__) || defined(__LINUX__)
- QDir libPath(UNIX_LIB_PATH);
- if (libPath.cd("plugins") && libPath.cd("soundsource")) {
- pluginDirs.append(libPath.absolutePath());
diff --git a/audio/mixxx/files/patch-src_upgrade.cpp b/audio/mixxx/files/patch-src_upgrade.cpp
new file mode 100644
index 000000000000..76525df942bc
--- /dev/null
+++ b/audio/mixxx/files/patch-src_upgrade.cpp
@@ -0,0 +1,11 @@
+--- src/upgrade.cpp.orig 2015-12-29 16:10:41 UTC
++++ src/upgrade.cpp
+@@ -43,7 +43,7 @@ Upgrade::~Upgrade() {
+
+ // static
+ QString Upgrade::mixxx17HomePath() {
+-#ifdef __LINUX__
++#if defined(__LINUX__) || defined(__BSD__)
+ return QDir::homePath().append("/").append(".mixxx/");
+ #elif __WINDOWS__
+ return QDir::homePath().append("/").append("Local Settings/Application Data/Mixxx/");
diff --git a/audio/mixxx/files/patch-src_widget_wdisplay.cpp b/audio/mixxx/files/patch-src_widget_wdisplay.cpp
deleted file mode 100644
index 806c99c008f0..000000000000
--- a/audio/mixxx/files/patch-src_widget_wdisplay.cpp
+++ /dev/null
@@ -1,13 +0,0 @@
-Fix bogus pointer comparison.
-
---- src/widget/wdisplay.cpp.orig 2013-05-08 23:20:26 UTC
-+++ src/widget/wdisplay.cpp
-@@ -86,7 +86,7 @@ void WDisplay::setPixmap(int iPos, const
-
- void WDisplay::paintEvent(QPaintEvent *)
- {
-- if (m_pPixmaps>0)
-+ if (m_pPixmaps)
- {
- int idx = (int)(m_fValue*(float)(m_iNoPos)/128.);
- // Range check
diff --git a/audio/mixxx/pkg-plist b/audio/mixxx/pkg-plist
index a9b10e0b9fad..053fec2033cc 100644
--- a/audio/mixxx/pkg-plist
+++ b/audio/mixxx/pkg-plist
@@ -2,5 +2,7 @@ bin/mixxx
%%FAAD%%lib/mixxx/plugins/soundsource/libsoundsourcem4a.so
%%WAVPACK%%lib/mixxx/plugins/soundsource/libsoundsourcewv.so
lib/mixxx/plugins/vamp/libmixxxminimal.so
+share/appdata/mixxx.appdata.xml
share/applications/mixxx.desktop
share/pixmaps/mixxx-icon.png
+@dir lib/mixxx/plugins/soundsource