From 06a8346c84bb67e4fe0448a1f784ee91b1b7bad1 Mon Sep 17 00:00:00 2001 From: Bruce Momjian <bruce@momjian.us> Date: Fri, 25 May 2001 15:48:33 +0000 Subject: [PATCH] See attached for a small patch that enables plpython to build cleanly under Cygwin. This patch together with my previous Python patch: http://postgresql.readysetnet.com/mhonarc/pgsql-patches/2001-05/msg00075.htm l enables full Python support (i.e., configure --with-python) for Cygwin PostgreSQL. Jason Tishler --- src/makefiles/Makefile.win | 6 +++++- src/pl/plpython/Makefile | 4 +++- src/pl/plpython/feature.expected | 2 +- src/pl/plpython/plpython.c | 7 ++++--- 4 files changed, 13 insertions(+), 6 deletions(-) diff --git a/src/makefiles/Makefile.win b/src/makefiles/Makefile.win index 626432b4351..7fce66b1ace 100644 --- a/src/makefiles/Makefile.win +++ b/src/makefiles/Makefile.win @@ -1,4 +1,4 @@ -# $Header: /cvsroot/pgsql/src/makefiles/Attic/Makefile.win,v 1.12 2001/05/25 14:28:58 momjian Exp $ +# $Header: /cvsroot/pgsql/src/makefiles/Attic/Makefile.win,v 1.13 2001/05/25 15:48:33 momjian Exp $ LDFLAGS+= -g DLLTOOL= dlltool DLLWRAP= dllwrap @@ -28,4 +28,8 @@ ifeq ($(findstring ecpg/lib,$(subdir)), ecpg/lib) override CPPFLAGS+= -DBUILDING_DLL=1 endif +ifeq ($(findstring src/pl/plpython,$(subdir)), src/pl/plpython) +override CPPFLAGS+= -DUSE_DL_IMPORT +endif + override javadir := '$(shell cygpath -w $(javadir))' diff --git a/src/pl/plpython/Makefile b/src/pl/plpython/Makefile index 7475cdc1e7e..d8ae12f1659 100644 --- a/src/pl/plpython/Makefile +++ b/src/pl/plpython/Makefile @@ -1,4 +1,4 @@ -# $Header: /cvsroot/pgsql/src/pl/plpython/Makefile,v 1.6 2001/05/14 22:06:50 petere Exp $ +# $Header: /cvsroot/pgsql/src/pl/plpython/Makefile,v 1.7 2001/05/25 15:48:33 momjian Exp $ subdir = src/pl/plpython top_builddir = ../../.. @@ -7,6 +7,8 @@ include $(top_builddir)/src/Makefile.global override CPPFLAGS := -I$(srcdir) -I$(python_includedir) $(CPPFLAGS) +override DLLLIBS := $(BE_DLLLIBS) $(DLLLIBS) + NAME = plpython SO_MAJOR_VERSION = 0 SO_MINOR_VERSION = 0 diff --git a/src/pl/plpython/feature.expected b/src/pl/plpython/feature.expected index eb294479307..b689c1f6154 100644 --- a/src/pl/plpython/feature.expected +++ b/src/pl/plpython/feature.expected @@ -29,7 +29,7 @@ SELECT global_test_two(); (1 row) SELECT import_fail(); -NOTICE: ('import socket failed -- untrusted dynamic module: socket',) +NOTICE: ('import socket failed -- untrusted dynamic module: _socket',) import_fail -------------------- failed as expected diff --git a/src/pl/plpython/plpython.c b/src/pl/plpython/plpython.c index 865ddb3aac6..dea0dc285f8 100644 --- a/src/pl/plpython/plpython.c +++ b/src/pl/plpython/plpython.c @@ -1,4 +1,4 @@ -/* $Header: /cvsroot/pgsql/src/pl/plpython/plpython.c,v 1.2 2001/05/12 01:30:30 petere Exp $ */ +/* $Header: /cvsroot/pgsql/src/pl/plpython/plpython.c,v 1.3 2001/05/25 15:48:33 momjian Exp $ */ /* * plpython.c - python as a procedural language for PostgreSQL @@ -1534,7 +1534,7 @@ static PyObject *PLy_spi_execute_fetch_result(SPITupleTable *, int, int); PyTypeObject PLy_PlanType = { - PyObject_HEAD_INIT(&PyType_Type) + PyObject_HEAD_INIT(NULL) 0, /*ob_size*/ "PLyPlan", /*tp_name*/ sizeof(PLyPlanObject), /*tp_size*/ @@ -1577,7 +1577,7 @@ PySequenceMethods PLy_result_as_sequence = { }; PyTypeObject PLy_ResultType = { - PyObject_HEAD_INIT(&PyType_Type) + PyObject_HEAD_INIT(NULL) 0, /*ob_size*/ "PLyResult", /*tp_name*/ sizeof(PLyResultObject), /*tp_size*/ @@ -2287,6 +2287,7 @@ PLy_init_plpy(void) /* initialize plpy module */ + PLy_PlanType.ob_type = PLy_ResultType.ob_type = &PyType_Type; plpy = Py_InitModule("plpy", PLy_methods); plpy_dict = PyModule_GetDict(plpy); -- GitLab