diff --git a/libs/scrap/build.rs b/libs/scrap/build.rs index 23b20c1a4..62b035026 100644 --- a/libs/scrap/build.rs +++ b/libs/scrap/build.rs @@ -10,18 +10,23 @@ fn find_package(name: &str) -> Vec<PathBuf> { let mut target_arch = std::env::var("CARGO_CFG_TARGET_ARCH").unwrap(); if target_arch == "x86_64" { target_arch = "x64".to_owned(); + } else if target_arch == "i686" { + target_arch = "x86".to_owned(); } else if target_arch == "aarch64" { target_arch = "arm64".to_owned(); } else { target_arch = "arm".to_owned(); } - let target = if target_os == "macos" { + let mut target = if target_os == "macos" { "x64-osx".to_owned() } else if target_os == "windows" { "x64-windows-static".to_owned() } else { format!("{}-{}", target_arch, target_os) }; + if target_arch == "i686" { + target = target.replace("x64", "x86"); + } println!("cargo:info={}", target); path.push("installed"); path.push(target); @@ -88,7 +93,7 @@ fn main() { // then set x64 to default by "rustup default stable-x86_64-pc-windows-msvc" let target = target_build_utils::TargetInfo::new(); if target.unwrap().target_pointer_width() != "64" { - panic!("Only support 64bit system"); + // panic!("Only support 64bit system"); } env::remove_var("CARGO_CFG_TARGET_FEATURE"); env::set_var("CARGO_CFG_TARGET_FEATURE", "crt-static"); diff --git a/libs/scrap/src/common/codec.rs b/libs/scrap/src/common/codec.rs index 6977f51b1..f1533d7cf 100644 --- a/libs/scrap/src/common/codec.rs +++ b/libs/scrap/src/common/codec.rs @@ -66,7 +66,7 @@ macro_rules! call_vpx { macro_rules! call_vpx_ptr { ($x:expr) => {{ let result = unsafe { $x }; // original expression - let result_int = unsafe { std::mem::transmute::<_, i64>(result) }; + let result_int = unsafe { std::mem::transmute::<_, isize>(result) }; if result_int == 0 { return Err(Error::BadPtr(format!( "errcode={} {}:{}:{}:{}",