diff --git a/srcpkgs/icecat/patches/remove-rustc-check.patch b/srcpkgs/icecat/patches/remove-rustc-check.patch new file mode 100644 index 00000000000..5066c4605bd --- /dev/null +++ b/srcpkgs/icecat/patches/remove-rustc-check.patch @@ -0,0 +1,41 @@ +Mozilla rustc check does not support crossbuild: let's remove it +Remove calls to unwrap_rustup, they fail if rustup isn't present + +--- build/moz.configure/rust.configure 2019-07-06 03:48:30.000000000 +0200 ++++ build/moz.configure/rust.configure 2019-07-09 22:35:23.326851798 +0200 +@@ -79,9 +79,6 @@ + + return unwrap + +-rustc = unwrap_rustup(rustc, 'rustc') +-cargo = unwrap_rustup(cargo, 'cargo') +- + + set_config('CARGO', cargo) + set_config('RUSTC', rustc) +@@ -366,25 +363,6 @@ + os.write(in_fd, source) + os.close(in_fd) + +- cmd = [ +- rustc, +- '--crate-type', 'staticlib', +- target_arg, +- '-o', out_path, +- in_path, +- ] +- +- def failed(): +- die(dedent('''\ +- Cannot compile for {} with {} +- The target may be unsupported, or you may not have +- a rust std library for that target installed. Try: +- +- rustup target add {} +- '''.format(host_or_target.alias, rustc, rustc_target))) +- check_cmd_output(*cmd, onerror=failed) +- if not os.path.exists(out_path) or os.path.getsize(out_path) == 0: +- failed() + finally: + os.remove(in_path) + os.remove(out_path)