# -*- Mode: python; c-basic-offset: 4; 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 # file, You can obtain one at http://mozilla.org/MPL/2.0/. gkrust_features = ['servo', 'bindgen'] if CONFIG['MOZ_DEBUG']: gkrust_features += ['gecko_debug'] if CONFIG['MOZ_BUILD_WEBRENDER']: gkrust_features += ['quantum_render'] if CONFIG['MOZ_PULSEAUDIO']: gkrust_features += ['cubeb_pulse_rust'] if CONFIG['MOZ_RUST_SIMD']: gkrust_features += ['simd-accel'] # This feature is not yet supported on all platforms, and this check needs to # match MOZ_CUBEB_REMOTING in CubebUtils.cpp. if (CONFIG['OS_ARCH'] == 'Linux' and CONFIG['OS_TARGET'] != 'Android') or CONFIG['OS_ARCH'] == 'Darwin' or (CONFIG['OS_ARCH'] == 'WINNT' and CONFIG['CPU_ARCH'] != 'aarch64'): gkrust_features += ['cubeb-remoting'] if CONFIG['MOZ_MEMORY']: gkrust_features += ['moz_memory'] if CONFIG['MOZ_PLACES']: gkrust_features += ['moz_places'] if CONFIG['ENABLE_WASM_CRANELIFT']: gkrust_features += ['spidermonkey_rust'] if CONFIG['JS_CODEGEN_X86'] or CONFIG['JS_CODEGEN_X64']: gkrust_features += ['cranelift_x86'] elif CONFIG['JS_CODEGEN_ARM']: gkrust_features += ['cranelift_arm32'] elif CONFIG['JS_CODEGEN_ARM64']: gkrust_features += ['cranelift_arm64'] else: gkrust_features += ['cranelift_none'] if CONFIG['MOZ_GECKO_PROFILER']: gkrust_features += ['gecko_profiler'] if CONFIG['MOZ_GECKO_PROFILER_PARSE_ELF']: gkrust_features += ['gecko_profiler_parse_elf'] if CONFIG['MOZ_BITS_DOWNLOAD']: gkrust_features += ['bitsdownload']