1#!/bin/sh 2 3# Keep this script in sync with python-config.in 4 5exit_with_usage () 6{ 7 echo "Usage: $0 --prefix|--exec-prefix|--includes|--libs|--cflags|--ldflags|--extension-suffix|--help|--abiflags|--configdir|--embed" 8 exit $1 9} 10 11if [ "$1" = "" ] ; then 12 exit_with_usage 1 13fi 14 15# Returns the actual prefix where this script was installed to. 16installed_prefix () 17{ 18 RESULT=$(dirname $(cd $(dirname "$1") && pwd -P)) 19 if which readlink >/dev/null 2>&1 ; then 20 if readlink -f "$RESULT" >/dev/null 2>&1; then 21 RESULT=$(readlink -f "$RESULT") 22 fi 23 fi 24 echo $RESULT 25} 26 27prefix_real=$(installed_prefix "$0") 28 29# Use sed to fix paths from their built-to locations to their installed-to 30# locations. Keep prefix & exec_prefix using their original values in case 31# they are referenced in other configure variables, to prevent double 32# substitution, issue #22140. 33prefix="/tmpfs/src/git/out/python3/install" 34exec_prefix="${prefix}" 35exec_prefix_real=${prefix_real} 36includedir=$(echo "${prefix}/include" | sed "s#$prefix#$prefix_real#") 37libdir=$(echo "${exec_prefix}/lib" | sed "s#$prefix#$prefix_real#") 38CFLAGS=$(echo "-Wno-unused-command-line-argument" | sed "s#$prefix#$prefix_real#") 39VERSION="3.11" 40LIBM="-lm" 41LIBC="" 42SYSLIBS="$LIBM $LIBC" 43ABIFLAGS="" 44LIBS=" -lpthread -ldl -lutil $SYSLIBS" 45LIBS_EMBED="-lpython${VERSION}${ABIFLAGS} -lpthread -ldl -lutil $SYSLIBS" 46BASECFLAGS=" -Wsign-compare" 47LDLIBRARY="libpython${LDVERSION}.so" 48OPT="-DNDEBUG -g -O3 -Wall" 49PY_ENABLE_SHARED="1" 50LDVERSION="${VERSION}${ABIFLAGS}" 51LIBDEST=${prefix_real}/lib/python${VERSION} 52LIBPL=$(echo "${prefix}/lib/python3.11/config-${VERSION}${ABIFLAGS}-x86_64-linux-gnu" | sed "s#$prefix#$prefix_real#") 53SO=".cpython-311-x86_64-linux-gnu.so" 54PYTHONFRAMEWORK="" 55INCDIR="-I$includedir/python${VERSION}${ABIFLAGS}" 56PLATINCDIR="-I$includedir/python${VERSION}${ABIFLAGS}" 57PY_EMBED=0 58 59# Scan for --help or unknown argument. 60for ARG in $* 61do 62 case $ARG in 63 --help) 64 exit_with_usage 0 65 ;; 66 --embed) 67 PY_EMBED=1 68 ;; 69 --prefix|--exec-prefix|--includes|--libs|--cflags|--ldflags|--extension-suffix|--abiflags|--configdir) 70 ;; 71 *) 72 exit_with_usage 1 73 ;; 74 esac 75done 76 77if [ $PY_EMBED = 1 ] ; then 78 LIBS="$LIBS_EMBED" 79fi 80 81for ARG in "$@" 82do 83 case "$ARG" in 84 --prefix) 85 echo "$prefix_real" 86 ;; 87 --exec-prefix) 88 echo "$exec_prefix_real" 89 ;; 90 --includes) 91 echo "$INCDIR $PLATINCDIR" 92 ;; 93 --cflags) 94 echo "$INCDIR $PLATINCDIR $BASECFLAGS $CFLAGS $OPT" 95 ;; 96 --libs) 97 echo "$LIBS" 98 ;; 99 --ldflags) 100 LIBPLUSED= 101 if [ "$PY_ENABLE_SHARED" = "0" ] ; then 102 LIBPLUSED="-L$LIBPL" 103 fi 104 echo "$LIBPLUSED -L$libdir $LIBS" 105 ;; 106 --extension-suffix) 107 echo "$SO" 108 ;; 109 --abiflags) 110 echo "$ABIFLAGS" 111 ;; 112 --configdir) 113 echo "$LIBPL" 114 ;; 115esac 116done 117