summaryrefslogtreecommitdiff
path: root/src/pl/plpython
diff options
context:
space:
mode:
Diffstat (limited to 'src/pl/plpython')
-rw-r--r--src/pl/plpython/Makefile22
1 files changed, 11 insertions, 11 deletions
diff --git a/src/pl/plpython/Makefile b/src/pl/plpython/Makefile
index afd8dea17ef..e9b5e3c065f 100644
--- a/src/pl/plpython/Makefile
+++ b/src/pl/plpython/Makefile
@@ -5,13 +5,20 @@ top_builddir = ../../..
include $(top_builddir)/src/Makefile.global
-# On some platforms we can only build PL/Python if libpython is a
-# shared library. Since there is no official way to determine this
-# (at least not in pre-2.3 Python), we see if there is a file that is
-# named like a shared library.
+# We need libpython as a shared library. In Python >=2.5, configure
+# asks Python directly. But because this has been broken in Debian
+# for a long time (http://bugs.debian.org/695979), and to support
+# older Python versions, we see if there is a file that is named like
+# a shared library as a fallback. (Note that this is wrong on OS X,
+# where DLSUFFIX is .so, but libpython is a .dylib. Python <2.5 is
+# therefore not supported on OS X.)
+ifeq (1,$(python_enable_shared))
+shared_libpython = yes
+else
ifneq (,$(wildcard $(python_libdir)/libpython*$(DLSUFFIX)*))
shared_libpython = yes
endif
+endif
# Windows needs to convert backslashed paths to normal slashes,
# and we have to remove -lpython from the link since we are building our own
@@ -21,13 +28,6 @@ python_includespec := $(subst \,/,$(python_includespec))
override python_libspec =
endif
-# Darwin (OS X) has its own ideas about how to do this.
-ifeq ($(PORTNAME), darwin)
-shared_libpython = yes
-override python_libspec = -framework Python
-override python_additional_libs =
-endif
-
# If we don't have a shared library, we have to skip it.
ifeq ($(shared_libpython),yes)