Author: jelmer Date: 2007-12-21 00:36:17 +0000 (Fri, 21 Dec 2007) New Revision: 26555
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=26555 Log: Use python-config utility to find python compile/link flags. Modified: branches/SAMBA_4_0/ branches/SAMBA_4_0/source/scripting/python/config.m4 Changeset: Property changes on: branches/SAMBA_4_0 ___________________________________________________________________ Name: bzr:revision-info ...skipped... Name: bzr:revision-id:v3-trunk0 ...skipped... Modified: branches/SAMBA_4_0/source/scripting/python/config.m4 =================================================================== --- branches/SAMBA_4_0/source/scripting/python/config.m4 2007-12-20 17:07:31 UTC (rev 26554) +++ branches/SAMBA_4_0/source/scripting/python/config.m4 2007-12-21 00:36:17 UTC (rev 26555) @@ -13,120 +13,26 @@ AC_MSG_WARN([No python found]) fi -# -# Check for a version of Python >= 2.1.0 -# -AC_MSG_CHECKING([for a version of Python >= '2.1.0']) -ac_supports_python_ver=`$PYTHON -c "import sys, string; \ - ver = string.split(sys.version)[[0]]; \ - print ver >= '2.1.0'"` -if test "$ac_supports_python_ver" != "True"; then +AC_PATH_PROG([PYTHON_CONFIG],[python[$PYTHON_VERSION]-config]) +if test -z "$PYTHON_CONFIG"; then working_python=no - AC_MSG_RESULT([no]) -else - AC_MSG_RESULT([yes]) -fi - -# -# Check if you have distutils, else fail -# -AC_MSG_CHECKING([for the distutils Python package]) -ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` -if test -z "$ac_distutils_result"; then - AC_MSG_RESULT([yes]) - working_python=yes + AC_MSG_WARN([No python-config found]) else - AC_MSG_RESULT([no]) - working_python=no + working_python=yes fi -# -# Check for Python include path -# -AC_MSG_CHECKING([for Python include path]) -if test -z "$PYTHON_CPPFLAGS"; then - python_path=`$PYTHON -c "import distutils.sysconfig; \ - print distutils.sysconfig.get_python_inc();"` - if test -n "${python_path}"; then - python_path="-I$python_path" - fi - PYTHON_CPPFLAGS=$python_path -fi -AC_MSG_RESULT([$PYTHON_CPPFLAGS]) -AC_SUBST([PYTHON_CPPFLAGS]) +PYTHON_LDFLAGS=`$PYTHON_CONFIG --ldflags` +PYTHON_CFLAGS=`$PYTHON_CONFIG --cflags` -# -# Check for Python library path -# -AC_MSG_CHECKING([for Python library path]) -if test -z "$PYTHON_LDFLAGS"; then - # (makes two attempts to ensure we've got a version number - # from the interpreter) - py_version=`$PYTHON -c "from distutils.sysconfig import *; \ - from string import join; \ - print join(get_config_vars('VERSION'))"` - if test "$py_version" = "[None]"; then - if test -n "$PYTHON_VERSION"; then - py_version=$PYTHON_VERSION - else - py_version=`$PYTHON -c "import sys; \ - print sys.version[[:3]]"` - fi - fi +SMB_EXT_LIB(LIBPYTHON, [$PYTHON_LDFLAGS], [$PYTHON_CFLAGS]) - PYTHON_LDFLAGS=`$PYTHON -c "from distutils.sysconfig import *; \ - from string import join; \ - print '-L' + get_python_lib(0,1), \ - '-lpython';"`$py_version -fi -AC_MSG_RESULT([$PYTHON_LDFLAGS]) -AC_SUBST([PYTHON_LDFLAGS]) - -# -# Check for site packages -# -AC_MSG_CHECKING([for Python site-packages path]) -if test -z "$PYTHON_SITE_PKG"; then - PYTHON_SITE_PKG=`$PYTHON -c "import distutils.sysconfig; \ - print distutils.sysconfig.get_python_lib(0,0);"` -fi -AC_MSG_RESULT([$PYTHON_SITE_PKG]) -AC_SUBST([PYTHON_SITE_PKG]) - -# -# libraries which must be linked in when embedding -# -AC_MSG_CHECKING(python extra libraries) -if test -z "$PYTHON_EXTRA_LIBS"; then - PYTHON_EXTRA_LIBS=`$PYTHON -c "import distutils.sysconfig; \ - conf = distutils.sysconfig.get_config_var; \ - print conf('LOCALMODLIBS'), conf('LIBS')"` -fi -AC_MSG_RESULT([$PYTHON_EXTRA_LIBS]) -AC_SUBST(PYTHON_EXTRA_LIBS) - -# -# linking flags needed when embedding -# -AC_MSG_CHECKING(python extra linking flags) -if test -z "$PYTHON_EXTRA_LDFLAGS"; then - PYTHON_EXTRA_LDFLAGS=`$PYTHON -c "import distutils.sysconfig; \ - conf = distutils.sysconfig.get_config_var; \ - print conf('LINKFORSHARED')"` -fi -AC_MSG_RESULT([$PYTHON_EXTRA_LDFLAGS]) -AC_SUBST(PYTHON_EXTRA_LDFLAGS) - -SMB_EXT_LIB(LIBPYTHON, [$PYTHON_LDFLAGS], [$PYTHON_CPPFLAGS]) - - AC_MSG_CHECKING(working python module support) if test x$working_python = xyes then ac_save_LIBS="$LIBS" ac_save_CFLAGS="$CFLAGS" LIBS="$LIBS $PYTHON_LDFLAGS" - CFLAGS="$CFLAGS $PYTHON_CPPFLAGS" + CFLAGS="$CFLAGS $PYTHON_CFLAGS" AC_TRY_LINK([ #include <Python.h>
