summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--buildtools/wafsamba/wafsamba.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py
index 2b53a9ceb6..96e95159b9 100644
--- a/buildtools/wafsamba/wafsamba.py
+++ b/buildtools/wafsamba/wafsamba.py
@@ -662,6 +662,7 @@ def subst_at_vars(task):
# split on the vars
a = re.split('(@\w+@)', s)
out = []
+ done_var = {}
back_sub = [ ('PREFIX', '${prefix}'), ('EXEC_PREFIX', '${exec_prefix}')]
for v in a:
if re.match('@\w+@', v):
@@ -676,7 +677,12 @@ def subst_at_vars(task):
for (b, m) in back_sub:
s = task.env[b]
if s == v[0:len(s)]:
- v = m + v[len(s):]
+ if not b in done_var:
+ # we don't want to substitute the first usage
+ done_var[b] = True
+ else:
+ v = m + v[len(s):]
+ break
out.append(v)
contents = ''.join(out)
f = open(tgt, 'w')