Source code
Revision control
Copy as Markdown
Other Tools
# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# 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
SOURCES += [
'../test/test_audio.cpp',
'../test/test_callback_ret.cpp',
'../test/test_devices.cpp',
'../test/test_duplex.cpp',
'../test/test_latency.cpp',
'../test/test_logging.cpp',
'../test/test_overload_callback.cpp',
'../test/test_record.cpp',
'../test/test_resampler.cpp',
'../test/test_ring_array.cpp',
'../test/test_ring_buffer.cpp',
'../test/test_sanity.cpp',
'../test/test_tone.cpp',
'../test/test_triple_buffer.cpp',
'../test/test_utils.cpp'
]
# Loopback stream is only implemented in the WASAPI backend. It fails in debug.
if CONFIG['OS_ARCH'] == 'WINNT' and not CONFIG['MOZ_DEBUG']:
SOURCES += [ '../test/test_loopback.cpp' ]
if CONFIG['OS_ARCH'] != 'Linux':
SOURCES += [ '../test/test_device_changed_callback.cpp' ]
LOCAL_INCLUDES += [
'../include',
'../src'
]
USE_LIBS += [
'cubeb',
'speex'
]
if CONFIG['OS_ARCH'] == 'WINNT':
DEFINES['UNICODE'] = True
# 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 xul 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',
]
FINAL_LIBRARY = 'xul-gtest'