diff --git a/configure.ac b/configure.ac index ea290c4..6c3eba2 100644 --- a/configure.ac +++ b/configure.ac @@ -21,13 +21,45 @@ if echo $CC | grep -q "gcc"; then fi AM_PATH_PYTHON([2.6],, [AC_ERROR([Python is required])]) -saved_deployment_target=$MACOSX_DEPLOYMENT_TARGET -unset MACOSX_DEPLOYMENT_TARGET -PYTHON_CONFIG=${PYTHON}-config -PYTHON_CFLAGS=$($PYTHON_CONFIG --includes) -PYTHON_LDFLAGS= -PYTHON_LIBS=$($PYTHON_CONFIG --libs) -export MACOSX_DEPLOYMENT_TARGET=$saved_deployment_target +PYTHON_PREFIX=$($PYTHON -c 'import sys; print(sys.prefix)') +PYTHON_EXEC_PREFIX=$($PYTHON -c 'import sys; print(sys.exec_prefix)') +PYTHON_ABIFLAGS=$($PYTHON -c 'import sys; print(getattr(sys, "abiflags", ""))') +PYTHON_CFLAGS="" +PYTHON_LDFLAGS="" +PYTHON_LIBS="" +AC_DEFUN([ADD_PYTHON_INCDIR], [ +if [[ -d "$1" ]]; then + PYTHON_CFLAGS="-I\"$1\" $PYTHON_CFLAGS" +fi +]) +AC_DEFUN([ADD_PYTHON_LIBDIR], [ +if [[ -d "$1" ]]; then + PYTHON_LIBS="-L\"$1\" $PYTHON_LIBS" +fi +]) +ADD_PYTHON_INCDIR([${PYTHON_PREFIX}/include/python${PYTHON_VERSION}${PYTHON_ABIFLAGS}/]) +ADD_PYTHON_LIBDIR([${PYTHON_PREFIX}/lib/]) +ADD_PYTHON_LIBDIR([${PYTHON_PREFIX}/lib/python${PYTHON_VERSION}/config/]) +ADD_PYTHON_LIBDIR([${PYTHON_PREFIX}/lib/python${PYTHON_VERSION}/config-${PYTHON_VERSION}${PYTHON_ABIFLAGS}/]) +if [[ "$PYTHON_EXEC_PREFIX" != "$PYTHON_PREFIX" ]]; then + ADD_PYTHON_INCDIR([${PYTHON_EXEC_PREFIX}/include/python${PYTHON_VERSION}${PYTHON_ABIFLAGS}/]) + ADD_PYTHON_LIBDIR([${PYTHON_EXEC_PREFIX}/lib/]) + ADD_PYTHON_LIBDIR([${PYTHON_EXEC_PREFIX}/lib/python${PYTHON_VERSION}/config/]) + ADD_PYTHON_LIBDIR([${PYTHON_EXEC_PREFIX}/lib/python${PYTHON_VERSION}/config-${PYTHON_VERSION}${PYTHON_ABIFLAGS}/]) +fi +PYTHON_LIBS="$PYTHON_LIBS $($PYTHON -c ["result = None +try: + import sysconfig + lib = sysconfig.get_config_var('PY3LIBRARY') + if lib is not None and len(lib) > 0: + result = '-lpython3' +except: + pass +if result is None: + result = '-lpython${PYTHON_VERSION}${PYTHON_ABIFLAGS}' +print(result) +"])" + AC_SUBST(PYTHON_CFLAGS) AC_SUBST(PYTHON_LDFLAGS) AC_SUBST(PYTHON_LIBS)