From 022266566d7b87fe3aea0c7080f6374c7740b11c Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Fri, 7 May 2010 11:41:50 +0200 Subject: [PATCH] build: fixed pc file variable substitution We should not substitute for the first use of each variable declaration in the pkgconfig file --- buildtools/wafsamba/wafsamba.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) 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') -- 2.34.1