diff options
author | HimbeerserverDE <himbeerserverde@gmail.com> | 2022-12-28 15:39:14 +0100 |
---|---|---|
committer | HimbeerserverDE <himbeerserverde@gmail.com> | 2022-12-28 15:39:14 +0100 |
commit | 6ba8c6b2d7eb8e9b372f665416462c170f6f6fcf (patch) | |
tree | d84ea972164ef767294c3b9bce58827c6bc2cce1 /src | |
parent | 5a8ce21f7bf8f96f1b28af70c775db89c10ab478 (diff) |
link musl libc statically
rustkrazy can now run rust programs for the first time
Diffstat (limited to 'src')
-rw-r--r-- | src/main.rs | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/main.rs b/src/main.rs index 5d11537..b7f9b16 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,5 +1,6 @@ use anyhow::bail; -use cargo::core::{compiler::CompileMode, SourceId}; +use cargo::core::compiler::{BuildConfig, CompileMode}; +use cargo::core::SourceId; use cargo::ops::CompileOptions; use cargo::util::config::Config as CargoConfig; use clap::Parser; @@ -225,6 +226,16 @@ fn write_root( let tmp_dir = tempfile::tempdir()?; + let mut compile_opts = CompileOptions::new(&CargoConfig::default()?, CompileMode::Build)?; + + compile_opts.build_config = BuildConfig::new( + &CargoConfig::default()?, + None, + false, + &[String::from("x86_64-unknown-linux-musl")], + CompileMode::Build, + )?; + if !crates.is_empty() { cargo::ops::install( &CargoConfig::default()?, @@ -232,7 +243,7 @@ fn write_root( crates.iter().map(|pkg| (pkg.as_str(), None)).collect(), SourceId::crates_io(&CargoConfig::default()?)?, false, // from_cwd - &CompileOptions::new(&CargoConfig::default()?, CompileMode::Build)?, + &compile_opts, false, // force true, // no_track )?; @@ -253,7 +264,7 @@ fn write_root( vec![(pkg, None)], SourceId::from_url(&("git+".to_owned() + url.as_str()))?, false, // from_cwd - &CompileOptions::new(&CargoConfig::default()?, CompileMode::Build)?, + &compile_opts, false, // force true, // no_track )?; |