From c6364fa6aa08752ec144047c63db3d60538570f1 Mon Sep 17 00:00:00 2001 From: Puck Meerburg Date: Sun, 2 Mar 2025 22:13:55 +0000 Subject: [PATCH] (zilch lang rust cargo): find target-specific build dependencies --- lang/rust/src/cargo.sld | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lang/rust/src/cargo.sld b/lang/rust/src/cargo.sld index 5f04999..a07f840 100644 --- a/lang/rust/src/cargo.sld +++ b/lang/rust/src/cargo.sld @@ -387,7 +387,6 @@ (cargo-dependency-from-toml (car kv) (if (string? (cdr kv)) (vector (cons "version" (cdr kv))) (cdr kv)) workspace #f)) (vector->list (or (and-cdr (assoc "dependencies" internals)) #())))) - ;; TODO(puck): target.{matching cfg}.build-dependencies??? (define build-dependencies (map (lambda (kv) @@ -410,7 +409,14 @@ (lambda (kv) (cargo-dependency-from-toml (car kv) (if (string? (cdr kv)) (vector (cons "version" (cdr kv))) (cdr kv)) workspace #f)) (vector->list (or (and-cdr (assoc "dependencies" (vector->list contents))) #()))) - dependencies)))) + dependencies)) + (set! build-dependencies + (append + (map + (lambda (kv) + (cargo-dependency-from-toml (car kv) (if (string? (cdr kv)) (vector (cons "version" (cdr kv))) (cdr kv)) workspace #f)) + (vector->list (or (and-cdr (assoc "build-dependencies" (vector->list contents))) #()))) + build-dependencies)))) (vector->list (or (and-cdr (assoc "target" internals)) #()))) (define own-features (parse-features (vector->list (or (and-cdr (assoc "features" internals)) #())) (map cargo-dependency-name dependencies) (map cargo-dependency-name build-dependencies)))