Merge pull request #1840 from zed-industries/build-themes-in-assets-crate

Max Brunsfeld created

Generate themes before compiling the 'assets' crate

Change summary

crates/assets/build.rs | 29 +++++++++++++++++++++++++++++
crates/zed/build.rs    | 28 ----------------------------
2 files changed, 29 insertions(+), 28 deletions(-)

Detailed changes

crates/assets/build.rs 🔗

@@ -0,0 +1,29 @@
+use std::process::Command;
+
+fn main() {
+    let output = Command::new("npm")
+        .current_dir("../../styles")
+        .args(["install", "--no-save"])
+        .output()
+        .expect("failed to run npm");
+    if !output.status.success() {
+        panic!(
+            "failed to install theme dependencies {}",
+            String::from_utf8_lossy(&output.stderr)
+        );
+    }
+
+    let output = Command::new("npm")
+        .current_dir("../../styles")
+        .args(["run", "build"])
+        .output()
+        .expect("failed to run npm");
+    if !output.status.success() {
+        panic!(
+            "build script failed {}",
+            String::from_utf8_lossy(&output.stderr)
+        );
+    }
+
+    println!("cargo:rerun-if-changed=../../styles/src");
+}

crates/zed/build.rs 🔗

@@ -1,5 +1,3 @@
-use std::process::Command;
-
 fn main() {
     println!("cargo:rustc-env=MACOSX_DEPLOYMENT_TARGET=10.15.7");
 
@@ -26,30 +24,4 @@ fn main() {
 
     // Register exported Objective-C selectors, protocols, etc
     println!("cargo:rustc-link-arg=-Wl,-ObjC");
-
-    let output = Command::new("npm")
-        .current_dir("../../styles")
-        .args(["install", "--no-save"])
-        .output()
-        .expect("failed to run npm");
-    if !output.status.success() {
-        panic!(
-            "failed to install theme dependencies {}",
-            String::from_utf8_lossy(&output.stderr)
-        );
-    }
-
-    let output = Command::new("npm")
-        .current_dir("../../styles")
-        .args(["run", "build"])
-        .output()
-        .expect("failed to run npm");
-    if !output.status.success() {
-        panic!(
-            "build script failed {}",
-            String::from_utf8_lossy(&output.stderr)
-        );
-    }
-
-    println!("cargo:rerun-if-changed=../../styles/src");
 }