New submission from Matthias Klose:
LIPL has the value
${prefix}/lib/python3.5/config-$(VERSION)$(ABIFLAGS)-x86_64-linux-gnu
and the code relies to substitute parameters from the left to the right, but it
prefers $() variables. the attached patch substitutes all variables from the
left to the right.
diff -r d8229c26dd92 Lib/sysconfig.py
--- a/Lib/sysconfig.py Fri Jul 24 09:05:59 2015 +0300
+++ b/Lib/sysconfig.py Fri Jul 24 14:04:57 2015 +0200
@@ -260,7 +260,12 @@
while len(variables) > 0:
for name in tuple(variables):
value = notdone[name]
- m = _findvar1_rx.search(value) or _findvar2_rx.search(value)
+ m1 = _findvar1_rx.search(value)
+ m2 = _findvar2_rx.search(value)
+ if m1 and m2:
+ m = m1 if m1.start() < m2.start() else m2
+ else:
+ m = m1 if m1 else m2
if m is not None:
n = m.group(1)
found = True
----------
assignee: doko
components: Library (Lib)
messages: 247272
nosy: doko
priority: normal
severity: normal
status: open
title: sysconfig._parse_makefile doesn't expand ${} vars appearing before $()
vars
versions: Python 3.5, Python 3.6
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue24705>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com