]> granicus.if.org Git - postgresql/commitdiff
Fix shared libpython detection on OS X
authorPeter Eisentraut <peter_e@gmx.net>
Sat, 2 May 2015 03:12:45 +0000 (23:12 -0400)
committerPeter Eisentraut <peter_e@gmx.net>
Sat, 2 May 2015 03:12:45 +0000 (23:12 -0400)
Apparently, looking for an appropriately named file doesn't work on some
older versions, so put the back the explicit platform detection.

configure
configure.in

index 98f6516c9a8f3b22b7733558e72ef559bee6dc29..17105fa9e9558f9e43dca3d02d72c4d69e2499df 100755 (executable)
--- a/configure
+++ b/configure
@@ -7542,23 +7542,28 @@ fi
 
 
 
-  # We need libpython as a shared library.  With Python >=2.5, we check
-  # the Py_ENABLE_SHARED setting.  OS X does supply a .dylib even
-  # though Py_ENABLE_SHARED does not get set.  On Debian, the setting
-  # is not correct before the jessie release
-  # (http://bugs.debian.org/695979).  We also want to support older
-  # Python versions.  So as a fallback we see if there is a file that
-  # is named like a shared library.
+  # We need libpython as a shared library.  With Python >=2.5, we
+  # check the Py_ENABLE_SHARED setting.  On Debian, the setting is not
+  # correct before the jessie release (http://bugs.debian.org/695979).
+  # We also want to support older Python versions.  So as a fallback
+  # we see if there is a file that is named like a shared library.
 
   if test "$python_enable_shared" != 1; then
-    # We don't know the platform shared library extension here yet, so
-    # we try some candidates.
-    for dlsuffix in .so .dll .dylib .sl; do
-      if ls "$python_libdir"/libpython*${dlsuffix}* >/dev/null 2>&1; then
-        python_enable_shared=1
-        break
-      fi
-    done
+    # OS X does supply a .dylib even though Py_ENABLE_SHARED does not
+    # get set.  The file detection logic below doesn't succeed on
+    # older OS X versions, so make it explicit.
+    if test "$PORTNAME" = darwin; then
+      python_enable_shared=1
+    else
+      # We don't know the platform shared library extension here yet,
+      # so we try some candidates.
+      for dlsuffix in .so .dll .sl; do
+        if ls "$python_libdir"/libpython*${dlsuffix}* >/dev/null 2>&1; then
+          python_enable_shared=1
+          break
+        fi
+      done
+    fi
   fi
 
   if test "$python_enable_shared" != 1; then
index 0080515c0c622e60a7e9828969f70ecda08b7657..6cc47cd5d5741794d2d7ffa252e1c9dc4f8760bc 100644 (file)
@@ -902,23 +902,28 @@ if test "$with_python" = yes; then
   PGAC_PATH_PYTHON
   PGAC_CHECK_PYTHON_EMBED_SETUP
 
-  # We need libpython as a shared library.  With Python >=2.5, we check
-  # the Py_ENABLE_SHARED setting.  OS X does supply a .dylib even
-  # though Py_ENABLE_SHARED does not get set.  On Debian, the setting
-  # is not correct before the jessie release
-  # (http://bugs.debian.org/695979).  We also want to support older
-  # Python versions.  So as a fallback we see if there is a file that
-  # is named like a shared library.
+  # We need libpython as a shared library.  With Python >=2.5, we
+  # check the Py_ENABLE_SHARED setting.  On Debian, the setting is not
+  # correct before the jessie release (http://bugs.debian.org/695979).
+  # We also want to support older Python versions.  So as a fallback
+  # we see if there is a file that is named like a shared library.
 
   if test "$python_enable_shared" != 1; then
-    # We don't know the platform shared library extension here yet, so
-    # we try some candidates.
-    for dlsuffix in .so .dll .dylib .sl; do
-      if ls "$python_libdir"/libpython*${dlsuffix}* >/dev/null 2>&1; then
-        python_enable_shared=1
-        break
-      fi
-    done
+    # OS X does supply a .dylib even though Py_ENABLE_SHARED does not
+    # get set.  The file detection logic below doesn't succeed on
+    # older OS X versions, so make it explicit.
+    if test "$PORTNAME" = darwin; then
+      python_enable_shared=1
+    else
+      # We don't know the platform shared library extension here yet,
+      # so we try some candidates.
+      for dlsuffix in .so .dll .sl; do
+        if ls "$python_libdir"/libpython*${dlsuffix}* >/dev/null 2>&1; then
+          python_enable_shared=1
+          break
+        fi
+      done
+    fi
   fi
 
   if test "$python_enable_shared" != 1; then