parent
8fa112b0d3
commit
f296311925
6
.github/workflows/main.yml
vendored
6
.github/workflows/main.yml
vendored
@ -65,6 +65,12 @@ jobs:
|
|||||||
git config --global user.name "User"
|
git config --global user.name "User"
|
||||||
./y.rs prepare
|
./y.rs prepare
|
||||||
|
|
||||||
|
- name: Build without unstable features
|
||||||
|
env:
|
||||||
|
TARGET_TRIPLE: ${{ matrix.env.TARGET_TRIPLE }}
|
||||||
|
# This is the config rust-lang/rust uses for builds
|
||||||
|
run: ./y.rs build --no-unstable-features
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
run: ./y.rs build --sysroot none
|
run: ./y.rs build --sysroot none
|
||||||
|
|
||||||
|
@ -2,9 +2,17 @@ use std::env;
|
|||||||
use std::path::{Path, PathBuf};
|
use std::path::{Path, PathBuf};
|
||||||
use std::process::Command;
|
use std::process::Command;
|
||||||
|
|
||||||
pub(crate) fn build_backend(channel: &str, host_triple: &str) -> PathBuf {
|
pub(crate) fn build_backend(
|
||||||
|
channel: &str,
|
||||||
|
host_triple: &str,
|
||||||
|
use_unstable_features: bool,
|
||||||
|
) -> PathBuf {
|
||||||
let mut cmd = Command::new("cargo");
|
let mut cmd = Command::new("cargo");
|
||||||
cmd.arg("build").arg("--target").arg(host_triple).arg("--features").arg("unstable-features");
|
cmd.arg("build").arg("--target").arg(host_triple);
|
||||||
|
|
||||||
|
if use_unstable_features {
|
||||||
|
cmd.arg("--features").arg("unstable-features");
|
||||||
|
}
|
||||||
|
|
||||||
match channel {
|
match channel {
|
||||||
"debug" => {}
|
"debug" => {}
|
||||||
|
9
y.rs
9
y.rs
@ -43,7 +43,9 @@ mod utils;
|
|||||||
fn usage() {
|
fn usage() {
|
||||||
eprintln!("Usage:");
|
eprintln!("Usage:");
|
||||||
eprintln!(" ./y.rs prepare");
|
eprintln!(" ./y.rs prepare");
|
||||||
eprintln!(" ./y.rs build [--debug] [--sysroot none|clif|llvm] [--target-dir DIR]");
|
eprintln!(
|
||||||
|
" ./y.rs build [--debug] [--sysroot none|clif|llvm] [--target-dir DIR] [--no-unstable-features]"
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
macro_rules! arg_error {
|
macro_rules! arg_error {
|
||||||
@ -92,6 +94,7 @@ fn main() {
|
|||||||
let mut target_dir = PathBuf::from("build");
|
let mut target_dir = PathBuf::from("build");
|
||||||
let mut channel = "release";
|
let mut channel = "release";
|
||||||
let mut sysroot_kind = SysrootKind::Clif;
|
let mut sysroot_kind = SysrootKind::Clif;
|
||||||
|
let mut use_unstable_features = true;
|
||||||
while let Some(arg) = args.next().as_deref() {
|
while let Some(arg) = args.next().as_deref() {
|
||||||
match arg {
|
match arg {
|
||||||
"--target-dir" => {
|
"--target-dir" => {
|
||||||
@ -109,6 +112,7 @@ fn main() {
|
|||||||
None => arg_error!("--sysroot requires argument"),
|
None => arg_error!("--sysroot requires argument"),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
"--no-unstable-features" => use_unstable_features = false,
|
||||||
flag if flag.starts_with("-") => arg_error!("Unknown flag {}", flag),
|
flag if flag.starts_with("-") => arg_error!("Unknown flag {}", flag),
|
||||||
arg => arg_error!("Unexpected argument {}", arg),
|
arg => arg_error!("Unexpected argument {}", arg),
|
||||||
}
|
}
|
||||||
@ -141,7 +145,8 @@ fn main() {
|
|||||||
process::exit(1);
|
process::exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
let cg_clif_build_dir = build_backend::build_backend(channel, &host_triple);
|
let cg_clif_build_dir =
|
||||||
|
build_backend::build_backend(channel, &host_triple, use_unstable_features);
|
||||||
build_sysroot::build_sysroot(
|
build_sysroot::build_sysroot(
|
||||||
channel,
|
channel,
|
||||||
sysroot_kind,
|
sysroot_kind,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user