From 06eeecc0defec91a6e0fa8eb4acff27a59785e66 Mon Sep 17 00:00:00 2001 From: Melody Horn Date: Tue, 6 Apr 2021 20:37:24 -0600 Subject: skip rule-specific macros instead of trying to parse them as prereqs --- src/makefile/input.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/makefile/input.rs') diff --git a/src/makefile/input.rs b/src/makefile/input.rs index e5473a1..9c895e1 100644 --- a/src/makefile/input.rs +++ b/src/makefile/input.rs @@ -474,7 +474,6 @@ impl<'a, 'parent, R: BufRead> MakefileReader<'a, 'parent, R> { let (targets, not_targets) = line_tokens .split_once(':') .ok_or_else(|| eyre!("read_rule couldn't find a ':' on line {}", line_number))?; - // TODO handle rule-specific variables let targets = self.expand_macros(&targets)?; let targets = targets.split_whitespace().collect::>(); let (prerequisites, mut commands) = match not_targets.split_once(';') { @@ -484,6 +483,10 @@ impl<'a, 'parent, R: BufRead> MakefileReader<'a, 'parent, R> { } None => (not_targets, vec![]), }; + if prerequisites.contains_text("=") { + log::error!("rule-specific macros are not implemented yet"); + return Ok(()); + } let prerequisites = self.expand_macros(&prerequisites)?; let prerequisites = prerequisites .split_whitespace() -- cgit v1.2.3