shared library, or we can do without one.
# -*-makefile-*-
-# $Header: /cvsroot/pgsql/src/Makefile.global.in,v 1.133 2001/08/26 22:28:04 petere Exp $
+# $Header: /cvsroot/pgsql/src/Makefile.global.in,v 1.134 2001/08/27 00:29:49 petere Exp $
#------------------------------------------------------------------------------
# All PostgreSQL makefiles include this file and use the variables it sets,
python_moduledir = @python_moduledir@
python_moduleexecdir = @python_moduleexecdir@
python_libspec = @python_libspec@
+python_configdir = @python_configdir@
krb_srvtab = @krb_srvtab@
#
# Copyright (c) 1994, Regents of the University of California
#
-# $Header: /cvsroot/pgsql/src/pl/Makefile,v 1.20 2001/05/12 01:30:30 petere Exp $
+# $Header: /cvsroot/pgsql/src/pl/Makefile,v 1.21 2001/08/27 00:29:49 petere Exp $
#
#-------------------------------------------------------------------------
DIRS += plperl
endif
-# Doesn't build portably yet.
-#ifeq ($(with_python), yes)
-#DIRS += plpython
-#endif
+ifeq ($(with_python), yes)
+DIRS += plpython
+endif
all install installdirs uninstall depend distprep:
@for dir in $(DIRS); do $(MAKE) -C $$dir $@ || exit; done
-# $Header: /cvsroot/pgsql/src/pl/plpython/Makefile,v 1.8 2001/07/10 16:33:02 petere Exp $
+# $Header: /cvsroot/pgsql/src/pl/plpython/Makefile,v 1.9 2001/08/27 00:29:49 petere Exp $
subdir = src/pl/plpython
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,
+# we see if there is a file that is named like a shared library.
+ifneq (,$(wildcard $(python_configdir)/libpython*$(DLSUFFIX)*))
+shared_libpython = yes
+endif
+
+# If we don't have a shared library and the platform doesn't allow it
+# to work without, we have to skip it.
+ifneq (,$(findstring yes, $(shared_libpython)$(allow_nonpic_in_shlib)))
+
override CPPFLAGS := -I$(srcdir) $(python_includespec) $(CPPFLAGS)
override DLLLIBS := $(BE_DLLLIBS) $(DLLLIBS)
installcheck:
PATH=$(bindir):$$PATH $(SHELL) $(srcdir)/test.sh
+
+else # can't build
+
+all:
+ @echo ""; \
+ echo "*** Cannot build PL/Python because libpython is not a shared library." ; \
+ echo "*** You might have to rebuild your Python installation. Refer to"; \
+ echo "*** the documentation for details."; \
+ echo ""
+
+endif # can't build