# -*- 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 only supported on Linux and macOS, 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': gkrust_features += ['cubeb-remoting'] if CONFIG['MOZ_MEMORY']: gkrust_features += ['moz_memory'] gkrust_features += ['no-static-ideograph-encoder-tables'] # See details in toolkit/library/rust/shared/lib.rs # A string test is not the best thing, but it works well enough here. if CONFIG['RUSTC_VERSION'] < "1.27": gkrust_features += ['oom_with_global_alloc']