summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorGraham.Dumpleton <devnull@localhost>2009-04-14 00:44:44 +0000
committerGraham.Dumpleton <devnull@localhost>2009-04-14 00:44:44 +0000
commit966a0d54743dd1f267db49364c750cd84726a041 (patch)
treec5cbe00b04851cb8ffc72c3573172da681d8955b /configure.ac
parent7d9e1184d1ca3a05817c534631e4d564a3619781 (diff)
downloadmod_wsgi-966a0d54743dd1f267db49364c750cd84726a041.tar.gz
On MacOS X, wheere there is a .a file in config directory, that would normally
link to Python framework, then link against it rather than framework. This is to get around issue where MacPorts Python framework doesn't seem to embed its location properly into .so when linked against. This should also work for normal Python distributions as well.
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac46
1 files changed, 29 insertions, 17 deletions
diff --git a/configure.ac b/configure.ac
index 5dea0b9..8c7f49b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -76,6 +76,10 @@ AC_SUBST(CPPFLAGS)
PYTHONLIBDIR=`${PYTHON} -c 'from sys import stdout; \
from distutils import sysconfig; \
stdout.write(sysconfig.get_config_var("LIBDIR"))'`
+PYTHONCFGDIR=`${PYTHON} -c 'from sys import stdout; \
+ import distutils.sysconfig; \
+ stdout.write(distutils.sysconfig.get_python_lib(plat_specific=1, \
+ standard_lib=1) +"/config")'`
PYTHONFRAMEWORKDIR=`${PYTHON} -c 'from sys import stdout; \
from distutils import sysconfig; \
stdout.write(sysconfig.get_config_var("PYTHONFRAMEWORKDIR"))'`
@@ -88,11 +92,7 @@ PYTHONFRAMEWORK=`${PYTHON} -c 'from sys import stdout; \
if test "${PYTHONFRAMEWORKDIR}" = "no-framework"; then
LDFLAGS1="-L${PYTHONLIBDIR}"
- LDFLAGS2=`${PYTHON} -c 'from sys import stdout; \
- import distutils.sysconfig; \
- stdout.write("-L" + \
- distutils.sysconfig.get_python_lib(plat_specific=1, \
- standard_lib=1) +"/config")'`
+ LDFLAGS2="-L${PYTHONCFGDIR}"
LDLIBS1="-lpython${PYTHON_VERSION}"
LDLIBS2=`${PYTHON} -c 'from sys import stdout; \
@@ -102,18 +102,30 @@ if test "${PYTHONFRAMEWORKDIR}" = "no-framework"; then
from distutils import sysconfig; \
stdout.write(sysconfig.get_config_var("SYSLIBS"))'`
else
- LDFLAGS1="-F${PYTHONFRAMEWORKPREFIX} -framework ${PYTHONFRAMEWORK}"
-
- VERSION="${PYTHON_VERSION}"
- STRING="${PYTHONFRAMEWORKDIR}/Versions/${VERSION}/${PYTHONFRAMEWORK}"
- LDFLAGS2=`${PYTHON} -c "from sys import stdout; \
- from distutils import sysconfig; \
- stdout.write(sysconfig.get_config_var(\"LINKFORSHARED\").replace( \
- \"${STRING}\", ''))"`
-
- LDLIBS1=`${PYTHON} -c 'from sys import stdout; \
- from distutils import sysconfig; \
- stdout.write(sysconfig.get_config_var("LIBS"))'`
+ if test -f "${PYTHONCFGDIR}/libpython${PYTHON_VERSION}.a"; then
+ LDFLAGS2="-L${PYTHONCFGDIR}"
+
+ LDLIBS1="-lpython${PYTHON_VERSION}"
+ LDLIBS2=`${PYTHON} -c 'from sys import stdout; \
+ from distutils import sysconfig; \
+ stdout.write(sysconfig.get_config_var("LIBS"))'`
+ LDLIBS3=`${PYTHON} -c 'from sys import stdout; \
+ from distutils import sysconfig; \
+ stdout.write(sysconfig.get_config_var("SYSLIBS"))'`
+ else
+ LDFLAGS1="-F${PYTHONFRAMEWORKPREFIX} -framework ${PYTHONFRAMEWORK}"
+
+ VERSION="${PYTHON_VERSION}"
+ STRING="${PYTHONFRAMEWORKDIR}/Versions/${VERSION}/${PYTHONFRAMEWORK}"
+ LDFLAGS2=`${PYTHON} -c "from sys import stdout; \
+ from distutils import sysconfig; \
+ stdout.write(sysconfig.get_config_var(
+ \"LINKFORSHARED\").replace(\"${STRING}\", ''))"`
+
+ LDLIBS1=`${PYTHON} -c 'from sys import stdout; \
+ from distutils import sysconfig; \
+ stdout.write(sysconfig.get_config_var("LIBS"))'`
+ fi
fi
CFLAGS=""