diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
commit | 43a97878ce14b72f0981164f87f2e35e14151312 (patch) | |
tree | 620249daf56c0258faa40cbdcf9cfba06de2a846 /third_party/rust/cssparser/build.rs | |
parent | Initial commit. (diff) | |
download | firefox-43a97878ce14b72f0981164f87f2e35e14151312.tar.xz firefox-43a97878ce14b72f0981164f87f2e35e14151312.zip |
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'third_party/rust/cssparser/build.rs')
-rw-r--r-- | third_party/rust/cssparser/build.rs | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/third_party/rust/cssparser/build.rs b/third_party/rust/cssparser/build.rs new file mode 100644 index 0000000000..07a72ffe1c --- /dev/null +++ b/third_party/rust/cssparser/build.rs @@ -0,0 +1,46 @@ +/* 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/. */ + +#[cfg(feature = "dummy_match_byte")] +mod codegen { + pub fn main() {} +} + +#[cfg(not(feature = "dummy_match_byte"))] +#[path = "build/match_byte.rs"] +mod match_byte; + +#[cfg(not(feature = "dummy_match_byte"))] +mod codegen { + use std::env; + use std::path::Path; + use std::thread::Builder; + + pub fn main() { + let manifest_dir = env::var("CARGO_MANIFEST_DIR").unwrap(); + + let input = Path::new(&manifest_dir).join("src/tokenizer.rs"); + let output = Path::new(&env::var("OUT_DIR").unwrap()).join("tokenizer.rs"); + println!("cargo:rerun-if-changed={}", input.display()); + + // We have stack overflows on Servo's CI. + let handle = Builder::new() + .stack_size(128 * 1024 * 1024) + .spawn(move || { + crate::match_byte::expand(&input, &output); + }) + .unwrap(); + + handle.join().unwrap(); + } +} + +fn main() { + if std::mem::size_of::<Option<bool>>() == 1 { + // https://github.com/rust-lang/rust/pull/45225 + println!("cargo:rustc-cfg=rustc_has_pr45225") + } + + codegen::main(); +} |