Index: head/audio/mixxx/Makefile =================================================================== --- head/audio/mixxx/Makefile (revision 499930) +++ head/audio/mixxx/Makefile (revision 499931) @@ -1,115 +1,115 @@ # Created by: Jean-Yves Lefort # $FreeBSD$ PORTNAME= mixxx DISTVERSIONPREFIX= release- -DISTVERSION= 2.2.0 -PORTREVISION= 2 +DISTVERSION= 2.2.1 CATEGORIES= audio MAINTAINER= acm@FreeBSD.org COMMENT= DJ mixing application LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/LICENSE BROKEN_aarch64= fails to compile: Exception("invalid machine type") BROKEN_powerpc64= fails to configure: unmet dependencies: Could not find libprotobuf, libchromaprint, libmp4, and libwavpack +BUILD_DEPENDS= lv2>=1.14.0:audio/lv2 LIB_DEPENDS= libchromaprint.so:audio/chromaprint \ libFLAC.so:audio/flac \ libfftw3.so:math/fftw3 \ libhidapi.so:comms/hidapi \ libid3tag.so:audio/libid3tag \ libmad.so:audio/libmad \ libmodplug.so:audio/libmodplug \ libportaudio.so:audio/portaudio \ libSoundTouch.so:audio/soundtouch \ libebur128.so:audio/libebur128 \ librubberband.so:audio/rubberband \ libsndfile.so:audio/libsndfile \ libvamp-sdk.so:audio/vamp-plugin-sdk \ libogg.so:audio/libogg \ libvorbisfile.so:audio/libvorbis \ libtag.so:audio/taglib \ libprotobuf.so:devel/protobuf \ liblilv-0.so:audio/lilv USES= compiler:c++11-lang gl iconv qt:5 pkgconfig scons USE_XORG= x11 USE_GL= gl glu USE_GITHUB= yes GH_ACCOUNT= mixxxdj USE_QT= buildtools concurrent core dbus gui network opengl script scripttools \ sql sql-sqlite3 svg testlib xml xmlpatterns linguisttools_build \ qmake_build widgets CONFLICTS= mixxx20* mixxx21* MAKE_ARGS= qtdir="${PREFIX}" install_root="${PREFIX}" \ build=release optimize=native ${GUI} battery=0 vamp=1 modplug=1 LATE_INSTALL_ARGS= --install-sandbox=${STAGEDIR} GUI= qt5=1 PORTDATA= * PORTDOCS= * 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 \ libmp4v2.so:multimedia/mp4v2 FAAD_MAKE_ARGS= faad=1 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 WAVPACK_LIB_DEPENDS= libwavpack.so:audio/wavpack WAVPACK_MAKE_ARGS= wv=1 WAVPACK_MAKE_ARGS_OFF= wv=0 post-patch: @${REINPLACE_CMD} -e "s|%%LOCALBASE%%|${LOCALBASE}|g ; \ s|%%PREFIX%%|${PREFIX}|g" \ ${WRKSRC}/build/depends.py @${REINPLACE_CMD} -e "s|bzr |true |g" \ ${WRKSRC}/build/util.py @${REINPLACE_CMD} -e "/('install', docs)/d" \ ${WRKSRC}/src/SConscript @${REINPLACE_CMD} -e "s|^Exec=.*|Exec=mixxx| ; \ - s|^Icon=.*|Icon=${PREFIX}/share/pixmaps/mixxx-icon.png|" \ + s|^Icon=.*|Icon=${PREFIX}/share/pixmaps/mixxx_icon.svg|" \ ${WRKSRC}/res/linux/mixxx.desktop @${REINPLACE_CMD} -e "s,(Q_OS_LINUX),(Q_OS_LINUX) || defined(Q_OS_FREEBSD),g" \ ${WRKSRC}/src/util/screensaver.h .for i in midi/midimessage.h @${ECHO_CMD} >> ${WRKSRC}/src/controllers/${i} .endfor post-install: @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/mixxx @${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.md (cd ${WRKSRC} && ${INSTALL_DATA} ${i} \ ${STAGEDIR}${DOCSDIR}) .endfor @${MKDIR} ${STAGEDIR}${DOCSDIR} cd ${WRKSRC} && ${INSTALL_DATA} Mixxx-Manual.pdf \ ${STAGEDIR}${DOCSDIR} @${FIND} ${STAGEDIR}${PREFIX}/lib/mixxx/plugins/soundsource -type d -empty -delete .include Index: head/audio/mixxx/distinfo =================================================================== --- head/audio/mixxx/distinfo (revision 499930) +++ head/audio/mixxx/distinfo (revision 499931) @@ -1,3 +1,3 @@ -TIMESTAMP = 1545879622 -SHA256 (mixxxdj-mixxx-release-2.2.0_GH0.tar.gz) = 03c819a55b1abee778c02d2ad889246c9ead9dd2948572a711b2aa94e4839faf -SIZE (mixxxdj-mixxx-release-2.2.0_GH0.tar.gz) = 34639153 +TIMESTAMP = 1556154610 +SHA256 (mixxxdj-mixxx-release-2.2.1_GH0.tar.gz) = 9011c854014a1ce826fe465d92693800f50fc97b806f6ba8935ebe2d89f05b31 +SIZE (mixxxdj-mixxx-release-2.2.1_GH0.tar.gz) = 34763333 Index: head/audio/mixxx/files/patch-build_depends.py =================================================================== --- head/audio/mixxx/files/patch-build_depends.py (revision 499930) +++ head/audio/mixxx/files/patch-build_depends.py (revision 499931) @@ -1,159 +1,159 @@ --- build/depends.py 2018-12-24 01:37:23.000000000 -0500 +++ build/depends.py 2018-12-26 22:17:54.336049000 -0500 @@ -12,7 +12,7 @@ if not conf.CheckLib('portaudio'): raise Exception( 'Did not find libportaudio.a, portaudio.lib, or the PortAudio-v19 development header files.') - elif build.platform_is_linux: + elif build.platform_is_linux or build.platform_is_bsd: build.env.ParseConfig('pkg-config portaudio-2.0 --silence-errors --cflags --libs') # Turn on PortAudio support in Mixxx @@ -74,7 +74,8 @@ if (not conf.CheckLib('GLU') and not conf.CheckLib('glu32') and - not conf.CheckCHeader('OpenGL/glu.h')): + not conf.CheckCHeader('OpenGL/glu.h') and + not conf.CheckCHeader('GL/glu.h')): raise Exception('Did not find GLU development files') @@ -106,7 +107,7 @@ class UPower(Dependence): """UPower is used to get battery measurements on Linux.""" def configure(self, build, conf): - if not build.platform_is_linux: + if not build.platform_is_linux or not build.platform_is_bsd: return build.env.ParseConfig( 'pkg-config upower-glib --silence-errors --cflags --libs') @@ -185,15 +186,17 @@ class Qt(Dependence): DEFAULT_QT4DIRS = {'linux': '/usr/share/qt4', - 'bsd': '/usr/local/lib/qt4', + 'bsd': '%%LOCALBASE%%/share/qt4', 'osx': '/Library/Frameworks', 'windows': 'C:\\qt\\4.6.0'} DEFAULT_QT5DIRS64 = {'linux': '/usr/lib/x86_64-linux-gnu/qt5', + 'bsd': '%%LOCALBASE%%/lib/qt5', 'osx': '/Library/Frameworks', 'windows': 'C:\\qt\\5.11.1'} DEFAULT_QT5DIRS32 = {'linux': '/usr/lib/i386-linux-gnu/qt5', + 'bsd': '%%LOCALBASE%%/lib/qt5', 'osx': '/Library/Frameworks', 'windows': 'C:\\qt\\5.11.1'} @@ -324,9 +327,17 @@ build.env.Append(CCFLAGS='-fPIC') elif build.platform_is_bsd: - build.env.Append(LIBS=qt_modules) - include_paths = ['$QTDIR/include/%s' % module - for module in qt_modules] + qt_modules.extend(['QtDBus']) + if qt5: + qt5_modules = [w.replace('Qt', 'Qt5') for w in qt_modules] + build.env.Append(LIBS = qt5_modules) + build.env.Append(CCFLAGS='-fPIC') + include_paths = ['%%LOCALBASE%%/include/qt5/%s' % module + for module in qt_modules] + else: + build.env.Append(LIBS = qt_modules) + include_paths = ['%%LOCALBASE%%/include/qt4/%s' % module + for module in qt_modules] build.env.Append(CPPPATH=include_paths) elif build.platform_is_osx: qtdir = build.env['QTDIR'] @@ -492,7 +503,7 @@ 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="-L" + framework_path) # Mixxx requires C++11 support. Windows enables C++11 features by @@ -586,7 +597,7 @@ if env is None: env = build.env - if build.platform_is_linux: + if build.platform_is_linux or build.platform_is_bsd: # Try using system lib if conf.CheckForPKG('soundtouch', '2.0.0'): # System Lib found @@ -630,7 +641,7 @@ # the files correctly. Adding this folder to 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/') if build.platform_is_windows and build.static_dependencies: build.env.Append(CPPDEFINES='TAGLIB_STATIC') @@ -1343,7 +1354,6 @@ if build.toolchain_is_gnu: # Default GNU Options - build.env.Append(CCFLAGS='-pipe') build.env.Append(CCFLAGS='-Wall') if build.compiler_is_clang: # Quiet down Clang warnings about inconsistent use of override @@ -1472,17 +1482,24 @@ build.env.Append(CPPPATH=['/opt/local/include']) elif build.platform_is_bsd: + qt5 = Qt.qt5_enabled(build) + + if qt5: + qtdirectory = 'qt5' + else: + qtdirectory = 'qt4' + build.env.Append(CPPDEFINES='__BSD__') build.env.Append(CPPPATH=['/usr/include', - '/usr/local/include', - '/usr/X11R6/include/']) + '%%LOCALBASE%%/include', + '%%LOCALBASE%%/include/'+ qtdirectory]) build.env.Append(LIBPATH=['/usr/lib/', - '/usr/local/lib', - '/usr/X11R6/lib']) + '%%LOCALBASE%%/lib', + '%%LOCALBASE%%/lib/'+ qtdirectory]) 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','X11']) # Define for things that would like to special case UNIX (Linux or BSD) if build.platform_is_bsd or build.platform_is_linux: @@ -1515,7 +1532,7 @@ # 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, build.env.get( 'SHAREDIR', default='share'), 'mixxx') build.env.Append( @@ -1526,10 +1543,10 @@ CPPDEFINES=('UNIX_LIB_PATH', r'\"%s\"' % lib_path)) def depends(self, build): - return [SoundTouch, ReplayGain, Ebur128Mit, PortAudio, PortMIDI, Qt, TestHeaders, - FidLib, SndFile, FLAC, OggVorbis, OpenGL, TagLib, ProtoBuf, -- Chromaprint, RubberBand, SecurityFramework, CoreServices, IOKit, -- QtScriptByteArray, Reverb, FpClassify, PortAudioRingBuffer] +- Chromaprint, RubberBand, SecurityFramework, CoreServices, Foundation, IOKit, +- QtScriptByteArray, Reverb, FpClassify, PortAudioRingBuffer, OSXFilePathUrlBackport] + return [SoundTouch, ReplayGain, Ebur128Mit, PortAudio, Qt, TestHeaders, + FidLib, SndFile, FLAC, OggVorbis, OpenGL, TagLib, ProtoBuf, + Chromaprint, RubberBand, SecurityFramework, CoreServices, IOKit, + QtScriptByteArray, Reverb, FpClassify, PortAudioRingBuffer] def post_dependency_check_configure(self, build, conf): """Sets up additional things in the Environment that must happen