diff options
author | Melody Horn <melody@boringcactus.com> | 2021-04-06 18:35:25 -0600 |
---|---|---|
committer | Melody Horn <melody@boringcactus.com> | 2021-04-06 18:35:25 -0600 |
commit | c76e7e969b2277a0b4e00aad4a43cfbd5862869e (patch) | |
tree | adcd6dcd9667c21833061a56802d476ed37128b8 | |
parent | 6dbb6548990841e7aeb991b76a58e14d237e79d0 (diff) | |
download | makers-c76e7e969b2277a0b4e00aad4a43cfbd5862869e.tar.gz makers-c76e7e969b2277a0b4e00aad4a43cfbd5862869e.zip |
don't do exports on POSIX
-rw-r--r-- | src/makefile/input.rs | 8 | ||||
-rw-r--r-- | src/makefile/macro.rs | 7 | ||||
-rw-r--r-- | src/makefile/mod.rs | 6 |
3 files changed, 18 insertions, 3 deletions
diff --git a/src/makefile/input.rs b/src/makefile/input.rs index 1757222..912b119 100644 --- a/src/makefile/input.rs +++ b/src/makefile/input.rs @@ -703,6 +703,7 @@ impl<'a, 'parent, R: BufRead> MakefileReader<'a, 'parent, R> { FinishedMakefileReader { inference_rules: self.inference_rules, macros: self.macros.data, + #[cfg(feature = "full")] macro_exports: self.macros.exported, targets: self.targets, first_non_special_target: self.first_non_special_target, @@ -712,7 +713,11 @@ impl<'a, 'parent, R: BufRead> MakefileReader<'a, 'parent, R> { fn extend(&mut self, new: FinishedMakefileReader) { self.inference_rules.extend(new.inference_rules); - self.macros.extend(new.macros, new.macro_exports); + self.macros.extend( + new.macros, + #[cfg(feature = "full")] + new.macro_exports, + ); self.targets.extend(new.targets); if self.first_non_special_target.is_none() { self.first_non_special_target = new.first_non_special_target; @@ -724,6 +729,7 @@ impl<'a, 'parent, R: BufRead> MakefileReader<'a, 'parent, R> { pub struct FinishedMakefileReader { pub inference_rules: Vec<InferenceRule>, pub macros: HashMap<String, Macro>, + #[cfg(feature = "full")] pub macro_exports: ExportConfig, pub targets: HashMap<String, Target>, pub first_non_special_target: Option<String>, diff --git a/src/makefile/macro.rs b/src/makefile/macro.rs index 65a87d1..c8a9542 100644 --- a/src/makefile/macro.rs +++ b/src/makefile/macro.rs @@ -183,7 +183,12 @@ impl<'parent, 'lookup> Set<'parent, 'lookup> { .or_else(|| self.parent.and_then(|p| p.get(name).cloned())) } - pub fn extend(&mut self, other: HashMap<String, Macro>, other_exports: ExportConfig) { + pub fn extend( + &mut self, + other: HashMap<String, Macro>, + #[cfg(feature = "full")] other_exports: ExportConfig, + ) { + #[cfg(feature = "full")] match (&mut self.exported, other_exports) { (ExportConfig::Only(se), ExportConfig::Only(oe)) => { se.extend(oe); diff --git a/src/makefile/mod.rs b/src/makefile/mod.rs index cdf9d0b..ac6090e 100644 --- a/src/makefile/mod.rs +++ b/src/makefile/mod.rs @@ -110,7 +110,11 @@ impl<'a> Makefile<'a> { pub fn extend(&mut self, new: FinishedMakefileReader) -> Result<()> { self.inference_rules.extend(new.inference_rules); - self.macros.extend(new.macros, new.macro_exports); + self.macros.extend( + new.macros, + #[cfg(feature = "full")] + new.macro_exports, + ); self.targets.borrow_mut().extend( new.targets .into_iter() |