about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorMatthias Krüger <matthias.krueger@famsik.de>2022-11-29 22:43:22 +0100
committerGitHub <noreply@github.com>2022-11-29 22:43:22 +0100
commita5ca67b951df38347d09ffc309a048b5fb2d0e5c (patch)
tree3dd53c7f428a3374e51abcc4f672aca66b9e1e16 /src
parent08a6c939a52b67ec1fc5a8b7af77ee9190b83c11 (diff)
parent66180dfad8999661068ab7065b379fa044a114c6 (diff)
downloadrust-a5ca67b951df38347d09ffc309a048b5fb2d0e5c.tar.gz
rust-a5ca67b951df38347d09ffc309a048b5fb2d0e5c.zip
Rollup merge of #105068 - jneem:master, r=jyn514
Run patchelf also on rust-analyzer-proc-macro-srv.

On NixOS, `rust-analyzer-proc-macro-srv` needs to be `patchelf`ed just like all the other libs and binaries.

With this fix, I am able to use the language server configuration recommended in [the guide](https://rustc-dev-guide.rust-lang.org/building/suggested.html#configuring-rust-analyzer-for-rustc).
Diffstat (limited to 'src')
-rw-r--r--src/bootstrap/bootstrap.py1
-rw-r--r--src/bootstrap/download.rs1
2 files changed, 2 insertions, 0 deletions
diff --git a/src/bootstrap/bootstrap.py b/src/bootstrap/bootstrap.py
index 57128685d91..2d5018d934e 100644
--- a/src/bootstrap/bootstrap.py
+++ b/src/bootstrap/bootstrap.py
@@ -441,6 +441,7 @@ class RustBuild(object):
 
             self.fix_bin_or_dylib("{}/bin/rustc".format(bin_root))
             self.fix_bin_or_dylib("{}/bin/rustdoc".format(bin_root))
+            self.fix_bin_or_dylib("{}/libexec/rust-analyzer-proc-macro-srv".format(bin_root))
             lib_dir = "{}/lib".format(bin_root)
             for lib in os.listdir(lib_dir):
                 if lib.endswith(".so"):
diff --git a/src/bootstrap/download.rs b/src/bootstrap/download.rs
index d0f389df973..6ae283f32a5 100644
--- a/src/bootstrap/download.rs
+++ b/src/bootstrap/download.rs
@@ -360,6 +360,7 @@ impl Config {
 
             self.fix_bin_or_dylib(&bin_root.join("bin").join("rustc"));
             self.fix_bin_or_dylib(&bin_root.join("bin").join("rustdoc"));
+            self.fix_bin_or_dylib(&bin_root.join("libexec").join("rust-analyzer-proc-macro-srv"));
             let lib_dir = bin_root.join("lib");
             for lib in t!(fs::read_dir(&lib_dir), lib_dir.display().to_string()) {
                 let lib = t!(lib);