diff --git a/src/etc/make-win-dist.py b/src/etc/make-win-dist.py index bb9a112b7b28a..9d883dec968ee 100644 --- a/src/etc/make-win-dist.py +++ b/src/etc/make-win-dist.py @@ -58,15 +58,15 @@ def make_win_dist(dist_root, target_triple): for src in rustc_dlls: shutil.copy(src, dist_bin_dir) - # Copy platform tools (and another copy of runtime dlls) to platform-spcific bin directory - target_bin_dir = os.path.join(dist_root, "bin", "rustlib", target_triple, "bin") + # Copy platform tools to platform-specific bin directory + target_bin_dir = os.path.join(dist_root, "bin", "rustlib", target_triple, "gcc", "bin") if not os.path.exists(target_bin_dir): os.makedirs(target_bin_dir) for src in target_tools: shutil.copy(src, target_bin_dir) # Copy platform libs to platform-spcific lib directory - target_lib_dir = os.path.join(dist_root, "bin", "rustlib", target_triple, "lib") + target_lib_dir = os.path.join(dist_root, "bin", "rustlib", target_triple, "gcc", "lib") if not os.path.exists(target_lib_dir): os.makedirs(target_lib_dir) for src in target_libs: diff --git a/src/librustc/driver/driver.rs b/src/librustc/driver/driver.rs index 4ff9133c8a534..b4e7b296268f0 100644 --- a/src/librustc/driver/driver.rs +++ b/src/librustc/driver/driver.rs @@ -560,8 +560,8 @@ pub fn phase_6_link_output(sess: &Session, trans: &CrateTranslation, outputs: &OutputFilenames) { let old_path = os::getenv("PATH").unwrap_or_else(||String::new()); - let mut new_path = os::split_paths(old_path.as_slice()); - new_path.push_all_move(sess.host_filesearch().get_tools_search_paths()); + let mut new_path = sess.host_filesearch().get_tools_search_paths(); + new_path.push_all_move(os::split_paths(old_path.as_slice())); os::setenv("PATH", os::join_paths(new_path.as_slice()).unwrap()); time(sess.time_passes(), "linking", (), |_| diff --git a/src/librustc/metadata/filesearch.rs b/src/librustc/metadata/filesearch.rs index 148aaf9568675..553ec096521cd 100644 --- a/src/librustc/metadata/filesearch.rs +++ b/src/librustc/metadata/filesearch.rs @@ -150,8 +150,12 @@ impl<'a> FileSearch<'a> { p.push(find_libdir(self.sysroot)); p.push(rustlibdir()); p.push(self.triple); - p.push("bin"); - vec![p] + let mut p1 = p.clone(); + p1.push("bin"); + let mut p2 = p.clone(); + p2.push("gcc"); + p2.push("bin"); + vec![p1, p2] } }