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