moz.build (4417B)
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 with Files("*"): 8 BUG_COMPONENT = ("Core", "Web Audio") 9 10 DIRS += ["blink"] 11 12 MOCHITEST_MANIFESTS += [ 13 "test/blink/mochitest.toml", 14 "test/mochitest.toml", 15 "test/mochitest_audio.toml", 16 "test/mochitest_bugs.toml", 17 "test/mochitest_media.toml", 18 ] 19 20 TEST_HARNESS_FILES.testing.mochitest.tests.dom.media.webaudio.test.blink += [ 21 "test/blink/audio-testing.js", 22 "test/blink/convolution-testing.js", 23 "test/blink/panner-model-testing.js", 24 ] 25 26 EXPORTS += [ 27 "AlignedTArray.h", 28 "AudioBlock.h", 29 "AudioEventTimeline.h", 30 "AudioNodeEngine.h", 31 "AudioNodeExternalInputTrack.h", 32 "AudioNodeTrack.h", 33 "AudioParamTimeline.h", 34 "MediaBufferDecoder.h", 35 "ThreeDPoint.h", 36 "WebAudioUtils.h", 37 ] 38 39 EXPORTS.mozilla += [ 40 "FFTBlock.h", 41 "MediaStreamAudioDestinationNode.h", 42 ] 43 44 EXPORTS.mozilla.dom += [ 45 "AnalyserNode.h", 46 "AudioBuffer.h", 47 "AudioBufferSourceNode.h", 48 "AudioContext.h", 49 "AudioDestinationNode.h", 50 "AudioListener.h", 51 "AudioNode.h", 52 "AudioParam.h", 53 "AudioParamDescriptorMap.h", 54 "AudioParamMap.h", 55 "AudioProcessingEvent.h", 56 "AudioScheduledSourceNode.h", 57 "AudioWorklet.h", 58 "AudioWorkletGlobalScope.h", 59 "AudioWorkletNode.h", 60 "AudioWorkletProcessor.h", 61 "BiquadFilterNode.h", 62 "ChannelMergerNode.h", 63 "ChannelSplitterNode.h", 64 "ConstantSourceNode.h", 65 "ConvolverNode.h", 66 "DelayNode.h", 67 "DynamicsCompressorNode.h", 68 "GainNode.h", 69 "IIRFilterNode.h", 70 "MediaElementAudioSourceNode.h", 71 "MediaStreamAudioDestinationNode.h", 72 "MediaStreamAudioSourceNode.h", 73 "MediaStreamTrackAudioSourceNode.h", 74 "OscillatorNode.h", 75 "PannerNode.h", 76 "PeriodicWave.h", 77 "ScriptProcessorNode.h", 78 "StereoPannerNode.h", 79 "WaveShaperNode.h", 80 ] 81 82 UNIFIED_SOURCES += [ 83 "AnalyserNode.cpp", 84 "AudioBlock.cpp", 85 "AudioBuffer.cpp", 86 "AudioBufferSourceNode.cpp", 87 "AudioContext.cpp", 88 "AudioDestinationNode.cpp", 89 "AudioEventTimeline.cpp", 90 "AudioListener.cpp", 91 "AudioNode.cpp", 92 "AudioNodeEngine.cpp", 93 "AudioNodeExternalInputTrack.cpp", 94 "AudioNodeTrack.cpp", 95 "AudioParam.cpp", 96 "AudioParamMap.cpp", 97 "AudioProcessingEvent.cpp", 98 "AudioScheduledSourceNode.cpp", 99 "AudioWorklet.cpp", 100 "AudioWorkletGlobalScope.cpp", 101 "AudioWorkletImpl.cpp", 102 "AudioWorkletNode.cpp", 103 "AudioWorkletProcessor.cpp", 104 "BiquadFilterNode.cpp", 105 "ChannelMergerNode.cpp", 106 "ChannelSplitterNode.cpp", 107 "ConstantSourceNode.cpp", 108 "ConvolverNode.cpp", 109 "DelayBuffer.cpp", 110 "DelayNode.cpp", 111 "DynamicsCompressorNode.cpp", 112 "FFTBlock.cpp", 113 "GainNode.cpp", 114 "IIRFilterNode.cpp", 115 "MediaBufferDecoder.cpp", 116 "MediaElementAudioSourceNode.cpp", 117 "MediaStreamAudioDestinationNode.cpp", 118 "MediaStreamAudioSourceNode.cpp", 119 "MediaStreamTrackAudioSourceNode.cpp", 120 "OscillatorNode.cpp", 121 "PannerNode.cpp", 122 "PeriodicWave.cpp", 123 "ScriptProcessorNode.cpp", 124 "StereoPannerNode.cpp", 125 "ThreeDPoint.cpp", 126 "WaveShaperNode.cpp", 127 "WebAudioUtils.cpp", 128 ] 129 130 if CONFIG["TARGET_CPU"] == "aarch64" or CONFIG["BUILD_ARM_NEON"]: 131 DEFINES["USE_NEON"] = True 132 LOCAL_INCLUDES += ["/third_party/xsimd/include"] 133 SOURCES += ["AudioNodeEngineNEON.cpp"] 134 SOURCES["AudioNodeEngineNEON.cpp"].flags += CONFIG["NEON_FLAGS"] 135 136 # Are we targeting x86 or x64? If so, build SSEX files. 137 if CONFIG["INTEL_ARCHITECTURE"]: 138 DEFINES["USE_SSE2"] = True 139 SOURCES += ["AudioNodeEngineSSE2.cpp"] 140 LOCAL_INCLUDES += ["/third_party/xsimd/include"] 141 SOURCES["AudioNodeEngineSSE2.cpp"].flags += CONFIG["SSE2_FLAGS"] 142 if CONFIG["SSE4_2_FLAGS"] and CONFIG["FMA_FLAGS"]: 143 DEFINES["USE_SSE4_2"] = True 144 DEFINES["USE_FMA3"] = True 145 SOURCES += ["AudioNodeEngineSSE4_2_FMA3.cpp"] 146 SOURCES["AudioNodeEngineSSE4_2_FMA3.cpp"].flags += ( 147 CONFIG["SSE4_2_FLAGS"] + CONFIG["FMA_FLAGS"] 148 ) 149 150 if CONFIG["MOZ_SYSTEM_AV1"]: 151 CXXFLAGS += CONFIG["MOZ_SYSTEM_LIBAOM_CFLAGS"] 152 153 include("/ipc/chromium/chromium-config.mozbuild") 154 155 FINAL_LIBRARY = "xul" 156 LOCAL_INCLUDES += [".."]