1AC_DEFUN([AX_CHECK_PYTHON_DEVEL], [ 2ac_previous_cppflags=$CPPFLAGS 3ac_previous_ldflags=$LDFLAGS 4ac_previous_libs=$LIBS 5AC_PATH_PROG([pyconfig], [$PYTHON-config], [no]) 6AS_IF([test x"$pyconfig" = x"no"], [ 7 dnl For those that don't have python-config 8 CPPFLAGS="$CFLAGS `$PYTHON -c 'import distutils.sysconfig; \ 9 print("-I" + distutils.sysconfig.get_config_var("INCLUDEPY"))'`" 10 CPPFLAGS="$CPPFLAGS `$PYTHON -c 'import distutils.sysconfig; \ 11 print(distutils.sysconfig.get_config_var("CFLAGS"))'`" 12 LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \ 13 print("-L" + distutils.sysconfig.get_python_lib(plat_specific=1,\ 14 standard_lib=1) + "/config")'`" 15 LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \ 16 print(distutils.sysconfig.get_config_var("LINKFORSHARED"))'`" 17 LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \ 18 print(distutils.sysconfig.get_config_var("LDFLAGS"))'`" 19 LIBS="$LIBS `$PYTHON -c 'import distutils.sysconfig; \ 20 print(distutils.sysconfig.get_config_var("LIBS"))'`" 21 LIBS="$LIBS `$PYTHON -c 'import distutils.sysconfig; \ 22 print(distutils.sysconfig.get_config_var("SYSLIBS"))'`" 23], [ 24 dnl If python-config is found use it 25 CPPFLAGS="$CFLAGS `$PYTHON-config --cflags`" 26 dnl We need to use --embed with python 3.8 but not with earlier version so 27 dnl check if it is recognized. 28 python_devel_embed="" 29 if $PYTHON-config --embed >/dev/null 2>/dev/null; then 30 python_devel_embed="--embed" 31 fi 32 LDFLAGS="$LDFLAGS `$PYTHON-config --ldflags $python_devel_embed`" 33 LIBS="$LIBS `$PYTHON-config --libs $python_devel_embed`" 34 unset python_devel_embed 35]) 36 37AC_CHECK_HEADER([Python.h], [], 38 [AC_MSG_ERROR([Unable to find Python development headers])],) 39AC_CHECK_FUNC([PyArg_ParseTuple], [], 40 [AC_MSG_ERROR([Unable to find a suitable python development library])]) 41 42CPPFLAGS=$ac_previous_cppflags 43LDFLAGS=$ac_previous_ldflags 44LIBS=$ac_previous_libs 45]) 46