Issue 31713: python3 python-config script generates invalid includes (original) (raw)

Related to https://bugs.python.org/issue22907

If building in a path that starts with /usr, the includedir=$(echo "@includedir@" | sed "s#^$prefix_build#$prefix_real#") assignment in the python-config.sh ends up having the path it processes ran through a path substitution once before this line is executed because the @includedir@ in the python-config.sh.in is set to the string '${prefix}/include'. prefixisassignedjustaboveincludedirinpython−config.shtoprefix={prefix} is assigned just above includedir in python-config.sh to prefix=prefixisassignedjustaboveincludedirinpython−config.shtoprefix=(echo "$prefix_build" | sed "s#^$prefix_build#$prefix_real#")

I believe we need to update the includedir to

includedir=$(echo "@includedir@")

Or rename the prefix variable in python-config.sh so that there isn't a naming conflict if a string is passed in via @includedir@ with that variable.

Without fixing this you end up with multiple /usr substitutions in the includedir string, each replaced with the real path. ie resulting in an invalid path.