| diff -Naur Python-3.8.0-orig/Misc/python-config.sh.in Python-3.8.0/Misc/python-config.sh.in |
| --- Python-3.8.0-orig/Misc/python-config.sh.in 2019-10-14 16:34:47.000000000 +0300 |
| +++ Python-3.8.0/Misc/python-config.sh.in 2019-10-22 10:02:24.584090700 +0300 |
| @@ -1,32 +1,44 @@ |
| #!/bin/sh |
| |
| -# Keep this script in sync with python-config.in |
| - |
| exit_with_usage () |
| { |
| echo "Usage: $0 --prefix|--exec-prefix|--includes|--libs|--cflags|--ldflags|--extension-suffix|--help|--abiflags|--configdir|--embed" |
| - exit $1 |
| + exit 1 |
| } |
| |
| +# Really, python-config.py (and thus .sh) should be called directly, but |
| +# sometimes software (e.g. GDB) calls python-config.sh as if it were the |
| +# Python executable, passing python-config.py as the first argument. |
| +# Work around that oddness by ignoring any .py passed as first arg. |
| +case "$1" in |
| + *.py) |
| + shift |
| + ;; |
| +esac |
| + |
| if [ "$1" = "" ] ; then |
| - exit_with_usage 1 |
| + exit_with_usage |
| fi |
| |
| # Returns the actual prefix where this script was installed to. |
| installed_prefix () |
| { |
| - RESULT=$(dirname $(cd $(dirname "$1") && pwd -P)) |
| - if which readlink >/dev/null 2>&1 ; then |
| - if readlink -f "$RESULT" >/dev/null 2>&1; then |
| - RESULT=$(readlink -f "$RESULT") |
| - fi |
| + local RESULT=$(dirname $(cd $(dirname "$1") && pwd -P)) |
| + if [ $(which readlink) ] ; then |
| + RESULT=$(readlink -f "$RESULT") |
| + fi |
| + # Since we don't know where the output from this script will end up |
| + # we keep all paths in Windows-land since MSYS2 can handle that |
| + # while native tools can't handle paths in MSYS2-land. |
| + if [ "$OSTYPE" = "msys" ]; then |
| + RESULT=$(cd "$RESULT" && pwd -W) |
| fi |
| echo $RESULT |
| } |
| |
| prefix_real=$(installed_prefix "$0") |
| |
| -# Use sed to fix paths from their built-to locations to their installed-to |
| +# Use sed to fix paths from their built-to locations to their installed to |
| # locations. Keep prefix & exec_prefix using their original values in case |
| # they are referenced in other configure variables, to prevent double |
| # substitution, issue #22140. |
| @@ -41,13 +53,17 @@ |
| LIBC="@LIBC@" |
| SYSLIBS="$LIBM $LIBC" |
| ABIFLAGS="@ABIFLAGS@" |
| +# Protect against lack of substitution. |
| +if [ "$ABIFLAGS" = "@""ABIFLAGS""@" ] ; then |
| + ABIFLAGS= |
| +fi |
| LIBS="@LIBPYTHON@ @LIBS@ $SYSLIBS" |
| LIBS_EMBED="-lpython${VERSION}${ABIFLAGS} @LIBS@ $SYSLIBS" |
| BASECFLAGS="@BASECFLAGS@" |
| -LDLIBRARY="@LDLIBRARY@" |
| OPT="@OPT@" |
| PY_ENABLE_SHARED="@PY_ENABLE_SHARED@" |
| LDVERSION="@LDVERSION@" |
| +LDLIBRARY="@LDLIBRARY@" |
| LIBDEST=${prefix_real}/lib/python${VERSION} |
| LIBPL=$(echo "@LIBPL@" | sed "s#$prefix#$prefix_real#") |
| SO="@EXT_SUFFIX@" |
| @@ -61,7 +77,7 @@ |
| do |
| case $ARG in |
| --help) |
| - exit_with_usage 0 |
| + exit_with_usage |
| ;; |
| --embed) |
| PY_EMBED=1 |
| @@ -69,7 +85,7 @@ |
| --prefix|--exec-prefix|--includes|--libs|--cflags|--ldflags|--extension-suffix|--abiflags|--configdir) |
| ;; |
| *) |
| - exit_with_usage 1 |
| + exit_with_usage |
| ;; |
| esac |
| done |
| @@ -80,37 +96,37 @@ |
| |
| for ARG in "$@" |
| do |
| - case "$ARG" in |
| + case $ARG in |
| --prefix) |
| - echo "$prefix_real" |
| + echo -ne "$prefix_real" |
| ;; |
| --exec-prefix) |
| - echo "$exec_prefix_real" |
| + echo -ne "$exec_prefix_real " |
| ;; |
| --includes) |
| - echo "$INCDIR $PLATINCDIR" |
| + echo -ne "$INCDIR $PLATINCDIR" |
| ;; |
| --cflags) |
| - echo "$INCDIR $PLATINCDIR $BASECFLAGS $CFLAGS $OPT" |
| + echo -ne "$INCDIR $PLATINCDIR $BASECFLAGS $CFLAGS $OPT" |
| ;; |
| --libs) |
| - echo "$LIBS" |
| + echo -ne "$LIBS" |
| ;; |
| --ldflags) |
| LIBPLUSED= |
| if [ "$PY_ENABLE_SHARED" = "0" ] ; then |
| LIBPLUSED="-L$LIBPL" |
| fi |
| - echo "$LIBPLUSED -L$libdir $LIBS" |
| + echo -ne "$LIBPLUSED -L$libdir $LIBS " |
| ;; |
| --extension-suffix) |
| - echo "$SO" |
| + echo -ne "$SO " |
| ;; |
| --abiflags) |
| - echo "$ABIFLAGS" |
| + echo -ne "$ABIFLAGS " |
| ;; |
| --configdir) |
| - echo "$LIBPL" |
| + echo -ne "$LIBPL " |
| ;; |
| esac |
| done |