80 lines
1.8 KiB
Plaintext
80 lines
1.8 KiB
Plaintext
# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
|
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
DEFINES['CUBEB_GECKO_BUILD'] = True
|
|
|
|
GeckoCppUnitTests([
|
|
'test_duplex',
|
|
'test_record',
|
|
'test_tone',
|
|
'test_utils'
|
|
])
|
|
|
|
if CONFIG['MOZ_PULSEAUDIO'] or CONFIG['OS_TARGET'] in ('Darwin', 'WINNT', 'Android'):
|
|
GeckoCppUnitTests([
|
|
'test_resampler',
|
|
])
|
|
|
|
if CONFIG['OS_TARGET'] != 'Android':
|
|
GeckoCppUnitTests([
|
|
'test_audio',
|
|
'test_latency',
|
|
'test_sanity'
|
|
])
|
|
|
|
LOCAL_INCLUDES += [
|
|
'../include',
|
|
'../src'
|
|
]
|
|
|
|
USE_LIBS += [
|
|
'cubeb',
|
|
'speex'
|
|
]
|
|
|
|
if CONFIG['OS_ARCH'] == 'WINNT':
|
|
# On windows, the WASAPI backend needs the resampler we have in
|
|
# /media/libspeex_resampler, so we can't get away with just linking cubeb's
|
|
# .o
|
|
USE_LIBS += [
|
|
'cubeb',
|
|
'speex',
|
|
]
|
|
OS_LIBS += [
|
|
'ole32'
|
|
]
|
|
else:
|
|
# Otherwise, we can just grab all the compiled .o and compile against that,
|
|
# linking the appriopriate libraries.
|
|
USE_LIBS += [
|
|
'cubeb',
|
|
]
|
|
# Don't link gkmedias for it introduces dependencies on Android.
|
|
if CONFIG['OS_TARGET'] == 'Android':
|
|
USE_LIBS += [
|
|
'speex',
|
|
]
|
|
|
|
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
|
|
OS_LIBS += [
|
|
'-framework AudioUnit',
|
|
'-framework CoreAudio',
|
|
]
|
|
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'uikit':
|
|
OS_LIBS += [
|
|
'-framework CoreFoundation',
|
|
'-framework AudioToolbox',
|
|
]
|
|
elif CONFIG['MOZ_SNDIO']:
|
|
OS_LIBS += [
|
|
'sndio',
|
|
]
|
|
else:
|
|
OS_LIBS += CONFIG['MOZ_ALSA_LIBS']
|
|
OS_LIBS += CONFIG['MOZ_PULSEAUDIO_LIBS']
|
|
|
|
if CONFIG['GNU_CXX']:
|
|
CXXFLAGS += ['-Wno-error=shadow']
|