]> granicus.if.org Git - postgresql/commitdiff
Properly exit ODBC with 'X', allow linking on BSD/OS.
authorBruce Momjian <bruce@momjian.us>
Sat, 10 Feb 2001 05:50:29 +0000 (05:50 +0000)
committerBruce Momjian <bruce@momjian.us>
Sat, 10 Feb 2001 05:50:29 +0000 (05:50 +0000)
23 files changed:
src/interfaces/odbc/GNUmakefile
src/interfaces/odbc/bind.c
src/interfaces/odbc/columninfo.c
src/interfaces/odbc/connection.c
src/interfaces/odbc/convert.c
src/interfaces/odbc/dlg_specific.c
src/interfaces/odbc/drvconn.c
src/interfaces/odbc/environ.c
src/interfaces/odbc/execute.c
src/interfaces/odbc/info.c
src/interfaces/odbc/lobj.c
src/interfaces/odbc/misc.c
src/interfaces/odbc/options.c
src/interfaces/odbc/parse.c
src/interfaces/odbc/pgtypes.c
src/interfaces/odbc/psqlodbc.c
src/interfaces/odbc/qresult.c
src/interfaces/odbc/results.c
src/interfaces/odbc/setup.c
src/interfaces/odbc/socket.c
src/interfaces/odbc/statement.c
src/interfaces/odbc/tuple.c
src/interfaces/odbc/tuplelist.c

index 7a1542f3d4178de2e1e7a75d934b3b6d76671442..7265512a9f15a79d4eac688476604d0c4615ec7d 100644 (file)
@@ -2,7 +2,7 @@
 #
 # GNUMakefile for psqlodbc (Postgres ODBC driver)
 #
-# $Header: /cvsroot/pgsql/src/interfaces/odbc/Attic/GNUmakefile,v 1.8 2000/12/16 18:14:25 petere Exp $
+# $Header: /cvsroot/pgsql/src/interfaces/odbc/Attic/GNUmakefile,v 1.9 2001/02/10 05:50:27 momjian Exp $
 #
 #-------------------------------------------------------------------------
 
@@ -24,7 +24,6 @@ OBJS = info.o bind.o columninfo.o connection.o convert.o drvconn.o \
         gpps.o tuple.o tuplelist.o dlg_specific.o $(OBJX)
 
 SHLIB_LINK = $(filter -lm, $(LIBS))
-
 all: all-lib
 
 # Shared library stuff
@@ -33,7 +32,13 @@ include $(top_srcdir)/src/Makefile.shlib
 # Symbols must be resolved to the version in the shared library because
 # the driver manager (e.g., iodbc) provides some symbols with the same
 # names and we don't want those.  (This issue is probably ELF specific.)
+#
+# BSD/OS fails with libc and crt1.o undefined symbols without this.
+# bjm 2001-02-09
+#
+ifneq ($(PORTNAME), bsdi)
 LINK.shared += $(shlib_symbolic)
+endif
 
 odbc_headers = isql.h isqlext.h iodbc.h
 odbc_includedir = $(includedir)/iodbc
index 6ec25f80d6372fc0d76451919fdb51694a7e1832..ce25c4a1c3a26e1b5f27a94024817bad3da264fd 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          bind.c
  *
  * Description:     This module contains routines related to binding 
index 9e5223b83b39b306c98666fd0c8f2d43c50503a0..75fdd9f4f6884a84ad420dbf494a51b8723a75e1 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          columninfo.c
  *
  * Description:     This module contains routines related to 
index b528a69ea03ab2415677a2b99f05b6e2662d38a3..7d20e4cb4f1560514d603ac30ca7c8e1f777a20c 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          connection.c
  *
  * Description:     This module contains routines related to 
index 95ac701247b41e7b5896cfd8d87f9f6ec9d31391..f033ce4b3ff86962fde8453f76fe026721085ed6 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         convert.c
  *
  * Description:           This module contains routines related to 
index 13e8b44e6189deb4382b000efb3a9a1f1226d409..9be8b3cdd5fc0542e2a40775c7762ef57acf9429 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          dlg_specific.c
  *
  * Description:     This module contains any specific code for handling
index 2cbe6e6a87a639be1148f75d0bcc32d2fec222b6..cbc254672660098465d4390bdb0edcf867570e15 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          drvconn.c
  *
  * Description:     This module contains only routines related to 
index 080a8026d5e6947dc0c3f855766596f467951426..637b5fc160b1d3bc3038104ea99ef5a2b1efbaa2 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          environ.c
  *
  * Description:     This module contains routines related to 
index ac5d0b19c38dd17c7430ca69239f444e0606a4eb..57199f739665879cab2ae85206176836ad7abd4f 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          execute.c
  *
  * Description:     This module contains routines related to 
index bf43d6522b57b7e5b4f9558f67b9903021a59629..9ee92c0687f2e3735b313596ccab5f5abfa86bb9 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          info.c
  *
  * Description:     This module contains routines related to
index 8d98ee33e4fd62ffc706157c873af3cec636f605..c31591a65bb77b4e970314da882f225135cd25cd 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          lobj.c
  *
  * Description:     This module contains routines related to manipulating
index 5d0a19c375e5dd9d39395480d42a5c16978496b0..b35c5c3d5b6a8cd8cc8eab440a706b043fafe1cf 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          misc.c
  *
  * Description:     This module contains miscellaneous routines
index ccc419299dd62a8b28f93491caa45f1e8d257481..67c973ec0ac873fa02aa27fb4dea23bb2e678292 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          options.c
  *
  * Description:     This module contains routines for getting/setting
index 690a902ec4b937129f7123a18de5ce71fd691bbc..dd85e66dceb02a791a560509aa934a902a4421ac 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          parse.c
  *
  * Description:     This module contains routines related to parsing SQL statements.
index ebee8ab262f55eff03741817143a4a1e7bfd65a4..91a1b3d37ff5077f43454f8be7e8ec3f88e54cf7 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          pgtypes.c
  *
  * Description:     This module contains routines for getting information
index dbf4029a4acf9f77c6ae0d4aa93849860f27e22e..c5770f9d33c648d21c75c5e714e2e4df28483cd9 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          psqlodbc.c
  *
  * Description:     This module contains the main entry point (DllMain) for the library.
index de52884ff3cd562a3550fc98539a7029c8a96c26..eaffef5b793ce6a449718cef8bf8bf66385ee078 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          qresult.c
  *
  * Description:     This module contains functions related to 
index 8ef3936a8a62177407c541bf7c762ff134afac18..3ef098a91b74ee21e439713ebac7ddf21aaa62b3 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          results.c
  *
  * Description:     This module contains functions related to 
index 8c3ba4d02ae4d0bbd20948cafd681b3c504a3cd3..4c31afed49ecee75453a0f057b0880f3aa7e03c9 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          setup.c
  *
  * Description:     This module contains the setup functions for 
index 30fb56f904218f4bc40eb586df150f8468963bc0..917951f49d4df68ee59a396193906dd9da6001bf 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          socket.c
  *
  * Description:     This module contains functions for low level socket
@@ -78,7 +77,11 @@ SOCK_Destructor(SocketClass *self)
 {
        if (self->socket != -1) {
                if ( ! shutdown(self->socket, 2)) /* no sends or receives */
+               {
+                       SOCK_put_char(self, 'X');
+                       SOCK_flush_output(self);
                        closesocket(self->socket);
+               }
        }
 
        if (self->buffer_in)
index 06d97f7457e99f97a991e45bd883900b440995f3..b0ea3a9f59c8337b6d3ee0106ba0c90862ad0d18 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          statement.c
  *
  * Description:     This module contains functions related to creating
index 303476fef28cb090619c3e9ba68c7a615955c572..968f098a80cee2a77d4a637243dac04060fc99e5 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          tuple.c
  *
  * Description:     This module contains functions for setting the data for individual
index 31acb9c9c908ffd6edfc1da7d6b523af05691b72..75110896a724e49e54b095674dab73518898abdb 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:          tuplelist.c
  *
  * Description:     This module contains functions for creating a manual result set