moz.build (1279B)
1 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 # vim: set filetype=python: 3 # This Source Code Form is subject to the terms of the Mozilla Public 4 # License, v. 2.0. If a copy of the MPL was not distributed with this 5 # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 7 Library('speex') 8 9 EXPORTS.speex += [ 10 'speex_resampler.h', 11 ] 12 13 SOURCES += [ 14 'resample.c', 15 'simd_detect.cpp', 16 ] 17 18 # We allow warnings for third-party code that can be updated from upstream. 19 AllowCompilerWarnings() 20 21 FINAL_LIBRARY = 'xul' 22 23 # We don't compile the full speex codec, only the resampler. 24 DEFINES['OUTSIDE_SPEEX'] = True 25 26 DEFINES['EXPORT'] = '' 27 DEFINES['FLOATING_POINT'] = True 28 29 # Only use SSE code when using floating point samples, and on x86 30 if CONFIG['INTEL_ARCHITECTURE']: 31 DEFINES['USE_SSE'] = True 32 DEFINES['USE_SSE2'] = True 33 SOURCES += [ 34 'resample_sse.c' 35 ] 36 SOURCES['resample_sse.c'].flags += CONFIG['SSE2_FLAGS'] 37 38 if CONFIG['TARGET_CPU'] == 'arm' and CONFIG['BUILD_ARM_NEON']: 39 DEFINES['USE_NEON'] = True 40 SOURCES += [ 41 'resample_neon.c' 42 ] 43 SOURCES['resample_neon.c'].flags += CONFIG['NEON_FLAGS'] 44 45 # Suppress warnings in third-party code. 46 if CONFIG['CC_TYPE'] in ('clang', 'gcc'): 47 CFLAGS += ['-Wno-sign-compare']