mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-06 00:48:18 -07:00
media-sound/mixxx: Added qt5 support.
Package-Manager: portage-2.3.0 Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
This commit is contained in:
158
media-sound/mixxx/files/mixxx-2.0.0-system-libs.patch
Normal file
158
media-sound/mixxx/files/mixxx-2.0.0-system-libs.patch
Normal file
@@ -0,0 +1,158 @@
|
||||
diff -Naur mixxx-2.0.0/build/depends.py mixxx-2.0.0_patch/build/depends.py
|
||||
--- mixxx-2.0.0/build/depends.py 2015-12-29 08:10:41.000000000 -0800
|
||||
+++ mixxx-2.0.0_patch/build/depends.py 2016-01-11 20:23:40.641866196 -0800
|
||||
@@ -369,25 +369,10 @@
|
||||
|
||||
class FidLib(Dependence):
|
||||
|
||||
- def sources(self, build):
|
||||
- symbol = None
|
||||
- if build.platform_is_windows:
|
||||
- if build.toolchain_is_msvs:
|
||||
- symbol = 'T_MSVC'
|
||||
- elif build.crosscompile:
|
||||
- # Not sure why, but fidlib won't build with mingw32msvc and
|
||||
- # T_MINGW
|
||||
- symbol = 'T_LINUX'
|
||||
- elif build.toolchain_is_gnu:
|
||||
- symbol = 'T_MINGW'
|
||||
- else:
|
||||
- symbol = 'T_LINUX'
|
||||
-
|
||||
- return [build.env.StaticObject('#lib/fidlib-0.9.10/fidlib.c',
|
||||
- CPPDEFINES=symbol)]
|
||||
-
|
||||
def configure(self, build, conf):
|
||||
- build.env.Append(CPPPATH='#lib/fidlib-0.9.10/')
|
||||
+ if not conf.CheckLib('fidlib'):
|
||||
+ raise Exception('Did not find fidlib library, exiting!')
|
||||
+ build.env.Append(CPPPATH=[SCons.ARGUMENTS.get('prefix') + '/include/fidlib'])
|
||||
|
||||
|
||||
class ReplayGain(Dependence):
|
||||
@@ -400,42 +385,17 @@
|
||||
|
||||
|
||||
class SoundTouch(Dependence):
|
||||
- SOUNDTOUCH_PATH = 'soundtouch-1.8.0'
|
||||
|
||||
def sources(self, build):
|
||||
- return ['engine/enginebufferscalest.cpp',
|
||||
- '#lib/%s/AAFilter.cpp' % self.SOUNDTOUCH_PATH,
|
||||
- '#lib/%s/BPMDetect.cpp' % self.SOUNDTOUCH_PATH,
|
||||
- '#lib/%s/FIFOSampleBuffer.cpp' % self.SOUNDTOUCH_PATH,
|
||||
- '#lib/%s/FIRFilter.cpp' % self.SOUNDTOUCH_PATH,
|
||||
- '#lib/%s/InterpolateCubic.cpp' % self.SOUNDTOUCH_PATH,
|
||||
- '#lib/%s/InterpolateLinear.cpp' % self.SOUNDTOUCH_PATH,
|
||||
- '#lib/%s/InterpolateShannon.cpp' % self.SOUNDTOUCH_PATH,
|
||||
- '#lib/%s/PeakFinder.cpp' % self.SOUNDTOUCH_PATH,
|
||||
- '#lib/%s/RateTransposer.cpp' % self.SOUNDTOUCH_PATH,
|
||||
- '#lib/%s/SoundTouch.cpp' % self.SOUNDTOUCH_PATH,
|
||||
- '#lib/%s/TDStretch.cpp' % self.SOUNDTOUCH_PATH,
|
||||
- # SoundTouch CPU optimizations are only for x86
|
||||
- # architectures. SoundTouch automatically ignores these files
|
||||
- # when it is not being built for an architecture that supports
|
||||
- # them.
|
||||
- '#lib/%s/cpu_detect_x86.cpp' % self.SOUNDTOUCH_PATH,
|
||||
- '#lib/%s/mmx_optimized.cpp' % self.SOUNDTOUCH_PATH,
|
||||
- '#lib/%s/sse_optimized.cpp' % self.SOUNDTOUCH_PATH]
|
||||
+ return ['engine/enginebufferscalest.cpp']
|
||||
|
||||
def configure(self, build, conf, env=None):
|
||||
if env is None:
|
||||
env = build.env
|
||||
- env.Append(CPPPATH=['#lib/%s' % self.SOUNDTOUCH_PATH])
|
||||
-
|
||||
- # Prevents circular import.
|
||||
- from features import Optimize
|
||||
-
|
||||
- # If we do not want optimizations then disable them.
|
||||
- optimize = (build.flags['optimize'] if 'optimize' in build.flags
|
||||
- else Optimize.get_optimization_level(build))
|
||||
- if optimize == Optimize.LEVEL_OFF:
|
||||
- env.Append(CPPDEFINES='SOUNDTOUCH_DISABLE_X86_OPTIMIZATIONS')
|
||||
+ if not conf.CheckLib(['SoundTouch','libSoundTouch']):
|
||||
+ raise Exception('Did not find SoundTouch library, exiting!')
|
||||
+ build.env.Append(CPPPATH=[SCons.ARGUMENTS.get('prefix') + '/include/soundtouch'])
|
||||
+ build.env.Append(LIBS='SoundTouch')
|
||||
|
||||
|
||||
class RubberBand(Dependence):
|
||||
diff -Naur mixxx-2.0.0/build/features.py mixxx-2.0.0_patch/build/features.py
|
||||
--- mixxx-2.0.0/build/features.py 2015-12-29 08:10:41.000000000 -0800
|
||||
+++ mixxx-2.0.0_patch/build/features.py 2016-01-11 20:27:05.342990424 -0800
|
||||
@@ -62,10 +62,6 @@
|
||||
def configure(self, build, conf):
|
||||
if not self.enabled(build):
|
||||
return
|
||||
- # TODO(XXX) allow external hidapi install, but for now we just use our
|
||||
- # internal one.
|
||||
- build.env.Append(
|
||||
- CPPPATH=[os.path.join(self.HIDAPI_INTERNAL_PATH, 'hidapi')])
|
||||
|
||||
if build.platform_is_linux:
|
||||
build.env.ParseConfig(
|
||||
@@ -90,23 +86,17 @@
|
||||
|
||||
build.env.Append(CPPDEFINES='__HID__')
|
||||
|
||||
+ if not conf.CheckLib('hidapi-libusb'):
|
||||
+ raise Exception('Did not find HID API library, exiting!')
|
||||
+ build.env.Append(CPPPATH=[SCons.ARGUMENTS.get('prefix') + '/include/hidapi'])
|
||||
+ build.env.Append(LIBS='hidapi-libusb')
|
||||
+
|
||||
+
|
||||
def sources(self, build):
|
||||
sources = ['controllers/hid/hidcontroller.cpp',
|
||||
'controllers/hid/hidenumerator.cpp',
|
||||
'controllers/hid/hidcontrollerpresetfilehandler.cpp']
|
||||
|
||||
- if build.platform_is_windows:
|
||||
- # Requires setupapi.lib which is included by the above check for
|
||||
- # setupapi.
|
||||
- sources.append(
|
||||
- os.path.join(self.HIDAPI_INTERNAL_PATH, "windows/hid.c"))
|
||||
- elif build.platform_is_linux:
|
||||
- # hidapi compiles the libusb implementation by default on Linux
|
||||
- sources.append(
|
||||
- os.path.join(self.HIDAPI_INTERNAL_PATH, 'libusb/hid.c'))
|
||||
- elif build.platform_is_osx:
|
||||
- sources.append(
|
||||
- os.path.join(self.HIDAPI_INTERNAL_PATH, 'mac/hid.c'))
|
||||
return sources
|
||||
|
||||
|
||||
@@ -745,24 +735,15 @@
|
||||
test_env.Append(CCFLAGS='-pthread')
|
||||
test_env.Append(LINKFLAGS='-pthread')
|
||||
|
||||
- test_env.Append(CPPPATH="#lib/gtest-1.7.0/include")
|
||||
- gtest_dir = test_env.Dir("#lib/gtest-1.7.0")
|
||||
- # gtest_dir.addRepository(build.env.Dir('#lib/gtest-1.5.0'))
|
||||
- # build.env['EXE_OUTPUT'] = '#/lib/gtest-1.3.0/bin' # example,
|
||||
- # optional
|
||||
- test_env['LIB_OUTPUT'] = '#/lib/gtest-1.7.0/lib'
|
||||
-
|
||||
- env = test_env
|
||||
- SCons.Export('env')
|
||||
- env.SConscript(env.File('SConscript', gtest_dir))
|
||||
-
|
||||
- # build and configure gmock
|
||||
- test_env.Append(CPPPATH="#lib/gmock-1.7.0/include")
|
||||
- gmock_dir = test_env.Dir("#lib/gmock-1.7.0")
|
||||
- # gmock_dir.addRepository(build.env.Dir('#lib/gmock-1.5.0'))
|
||||
- test_env['LIB_OUTPUT'] = '#/lib/gmock-1.7.0/lib'
|
||||
-
|
||||
- env.SConscript(env.File('SConscript', gmock_dir))
|
||||
+ if not conf.CheckLib('gtest'):
|
||||
+ raise Exception('Did not find gtest library, exiting!')
|
||||
+ test_env.Append(CPPPATH=[SCons.ARGUMENTS.get('prefix') + '/include/gtest'])
|
||||
+ test_env.Append(LIBS='gtest')
|
||||
+
|
||||
+ if not conf.CheckLib('gmock'):
|
||||
+ raise Exception('Did not find gmock library, exiting!')
|
||||
+ test_env.Append(CPPPATH=[SCons.ARGUMENTS.get('prefix') + '/include/gmock'])
|
||||
+ test_env.Append(LIBS='gmock')
|
||||
|
||||
return []
|
||||
|
||||
@@ -13,17 +13,14 @@ SRC_URI="http://downloads.${PN}.org/${P}/${P}-src.tar.gz"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="aac debug doc hid mp3 mp4 shout wavpack ffmpeg"
|
||||
IUSE="aac debug doc hid mp3 mp4 qt4 +qt5 shout wavpack ffmpeg"
|
||||
REQUIRED_USE="^^ ( qt4 qt5 )"
|
||||
|
||||
# fails to compile system-fidlib. Add ">media-libs/fidlib-0.9.10-r1" once this
|
||||
# got fixed
|
||||
RDEPEND="dev-db/sqlite
|
||||
dev-libs/libusb:1
|
||||
dev-libs/protobuf
|
||||
dev-qt/qtcore:4
|
||||
dev-qt/qtgui:4
|
||||
dev-qt/qtopengl:4
|
||||
dev-qt/qtscript:4
|
||||
dev-qt/qtsql:4
|
||||
dev-qt/qtsvg:4
|
||||
media-libs/chromaprint
|
||||
media-libs/flac
|
||||
media-libs/libid3tag
|
||||
@@ -45,27 +42,65 @@ RDEPEND="dev-db/sqlite
|
||||
hid? ( dev-libs/hidapi )
|
||||
mp3? ( media-libs/libmad )
|
||||
mp4? ( media-libs/libmp4v2:= )
|
||||
qt4? (
|
||||
dev-qt/qtcore:4
|
||||
dev-qt/qtgui:4
|
||||
dev-qt/qtopengl:4
|
||||
dev-qt/qtscript:4
|
||||
dev-qt/qtsql:4
|
||||
dev-qt/qtsvg:4
|
||||
)
|
||||
qt5? (
|
||||
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
|
||||
)
|
||||
shout? ( media-libs/libshout )
|
||||
wavpack? ( media-sound/wavpack )
|
||||
ffmpeg? ( media-video/ffmpeg )"
|
||||
# media-libs/rubberband RDEPENDs on sci-libs/fftw:3.0
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig"
|
||||
sci-libs/fftw:3.0
|
||||
virtual/pkgconfig
|
||||
qt5? ( dev-qt/qtxmlpatterns:5 )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2.0.0-docs.patch
|
||||
#"${FILESDIR}"/${PN}-2.0.0-system-libs.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 myqtdir=qt5
|
||||
if use qt4 ; then
|
||||
myqtdir="qt4"
|
||||
fi
|
||||
|
||||
myesconsargs=(
|
||||
prefix="${EPREFIX}/usr"
|
||||
qtdir="${EPREFIX}/usr/$(get_libdir)/qt4"
|
||||
qtdir="${EPREFIX}/usr/$(get_libdir)/${myqtdir}"
|
||||
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=native
|
||||
qdebug="$(usex debug 1 0)"
|
||||
qt5="$(usex qt5 1 0)"
|
||||
shoutcast="$(usex shout 1 0)"
|
||||
vinylcontrol=1
|
||||
wv="$(usex wavpack 1 0)"
|
||||
Reference in New Issue
Block a user