"Install only the specified example",
"Install all examples",
)
+ .arg_target_triple("Build for the target triple")
.arg(opt("root", "Directory to install packages into").value_name("DIR"))
.after_help(
"\
use cargo::util::ProcessBuilder;
use cargotest::ChannelChanger;
use cargotest::install::{cargo_home, has_installed_exe};
+use cargotest::support::cross_compile;
use cargotest::support::git;
use cargotest::support::paths;
use cargotest::support::registry::Package;
assert!(lock == lock2, "different lockfiles");
}
+#[test]
+fn install_target_native() {
+ pkg("foo", "0.1.0");
+
+ assert_that(
+ cargo_process("install")
+ .arg("foo")
+ .arg("--target")
+ .arg(cargotest::rustc_host()),
+ execs()
+ .with_status(0),
+ );
+ assert_that(cargo_home(), has_installed_exe("foo"));
+}
+
+#[test]
+fn install_target_foreign() {
+ if cross_compile::disabled() {
+ return;
+ }
+
+ pkg("foo", "0.1.0");
+
+ assert_that(
+ cargo_process("install")
+ .arg("foo")
+ .arg("--target")
+ .arg(cross_compile::alternate()),
+ execs()
+ .with_status(0),
+ );
+ assert_that(cargo_home(), has_installed_exe("foo"));
+}
+
#[test]
fn vers_precise() {
pkg("foo", "0.1.1");