From: Andrew Tridgell Date: Fri, 7 May 2010 09:41:50 +0000 (+0200) Subject: build: fixed pc file variable substitution X-Git-Tag: samba-3.6.0pre1~2181 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=022266566d7b87fe3aea0c7080f6374c7740b11c;p=thirdparty%2Fsamba.git build: fixed pc file variable substitution We should not substitute for the first use of each variable declaration in the pkgconfig file --- diff --git a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py index 2b53a9ceb64..96e95159b91 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')