Files
RustPython/pylib/build.rs
Jeong, YunWon b1a38c2d50 Fix rust 1.80 warnings (#5363)
* Fix rust 1.80 warnings

* Fix nightly clippy warnings
2024-07-28 10:43:40 +09:00

41 lines
1.3 KiB
Rust

fn main() {
process_python_libs("../vm/Lib/python_builtins/*");
process_python_libs("../vm/Lib/core_modules/*");
#[cfg(feature = "freeze-stdlib")]
if cfg!(windows) {
process_python_libs("../Lib/**/*");
} else {
process_python_libs("./Lib/**/*");
}
if cfg!(windows) {
if let Ok(real_path) = std::fs::read_to_string("Lib") {
let canonicalized_path = std::fs::canonicalize(real_path)
.expect("failed to resolve RUSTPYTHONPATH during build time");
println!(
"cargo:rustc-env=win_lib_path={}",
canonicalized_path.to_str().unwrap()
);
}
}
}
// remove *.pyc files and add *.py to watch list
fn process_python_libs(pattern: &str) {
let glob = glob::glob(pattern).unwrap_or_else(|e| panic!("failed to glob {pattern:?}: {e}"));
for entry in glob.flatten() {
if entry.is_dir() {
continue;
}
let display = entry.display();
if display.to_string().ends_with(".pyc") {
if std::fs::remove_file(&entry).is_err() {
println!("cargo:warning=failed to remove {display}")
}
continue;
}
println!("cargo:rerun-if-changed={display}");
}
}