| #!/bin/sh |
| |
| # This shell script is used to fake Python. Gdb wants to be passed a |
| # Python interpreter, to run its own python-config.py program, which |
| # uses sysconfig. However, when cross-compiling, this doesn't work |
| # well since we would have to use the host Python, whose sysconfig |
| # module would return host values. |
| # |
| # As recommended at |
| # https://sourceware.org/gdb/wiki/CrossCompilingWithPythonSupport, |
| # this wrapper shell script can be used as a replacement. It ignores |
| # the python-config.py script passed as first arguments, and |
| # "emulates" its behavior. |
| |
| if [ $# -ne 2 ] ; then |
| echo "Bad # args." >&2 |
| exit 1 |
| fi |
| |
| if [ -z "${BR_PYTHON_VERSION}" ]; then |
| echo "Environment variable BR_PYTHON_VERSION not set." >&2 |
| exit 1 |
| fi |
| |
| # The first argument is the path to python-config.py, ignore it. |
| |
| case "$2" in |
| --includes) |
| echo "-I${STAGING_DIR}/usr/include/python${BR_PYTHON_VERSION}" |
| ;; |
| --ldflags) |
| echo "-lpthread -ldl -lutil -lm -lpython${BR_PYTHON_VERSION}" |
| ;; |
| --exec-prefix) |
| echo "/usr" |
| ;; |
| *) |
| echo "Bad arg $2." >&2 |
| exit 1 |
| ;; |
| esac |