aboutsummaryrefslogtreecommitdiff
path: root/mesalib/scons
diff options
context:
space:
mode:
Diffstat (limited to 'mesalib/scons')
-rw-r--r--mesalib/scons/source_list.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/mesalib/scons/source_list.py b/mesalib/scons/source_list.py
index 1d5166ba1..8111f4318 100644
--- a/mesalib/scons/source_list.py
+++ b/mesalib/scons/source_list.py
@@ -63,7 +63,7 @@ class SourceListParser(object):
self._error('not a variable definition')
if op_pos > 0:
- if line[op_pos - 1] in [':', '+']:
+ if line[op_pos - 1] in [':', '+', '?']:
op_pos -= 1
else:
self._error('only =, :=, and += are supported')
@@ -77,6 +77,9 @@ class SourceListParser(object):
self.symbol_table[sym] = val
elif op == '+=':
self.symbol_table[sym] += ' ' + val
+ elif op == '?=':
+ if sym not in self.symbol_table:
+ self.symbol_table[sym] = val
def _parse_line(self, line):
"""Parse a source list line."""