Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 2381526

Browse files
committed
I have had a few problems with the PL stuff recently committed. The
following patches fix the problems (i.e., all regression tests pass) in what I hope to be a platform-independent fashion. The accomplish the following: Brook Milligan
1 parent 60fee72 commit 2381526

File tree

4 files changed

+95
-32
lines changed

4 files changed

+95
-32
lines changed

src/configure.in

+42-1
Original file line numberDiff line numberDiff line change
@@ -799,6 +799,30 @@ if test "$USE_TCL" = "true"; then
799799
AC_SUBST(TCL_LIB)
800800
fi
801801

802+
dnl Check for Tcl configuration script tclConfig.sh
803+
if test "$USE_TCL"; then
804+
AC_MSG_CHECKING(for tclConfig.sh)
805+
library_dirs="/usr/lib $LIBRARY_DIRS"
806+
TCL_CONFIG_SH=
807+
for dir in $library_dirs; do
808+
for tcl_dir in $tcl_dirs; do
809+
if test -z "$TCL_CONFIG_SH"; then
810+
if test -d "$dir/$tcl_dir" -a -r "$dir/$tcl_dir/tclConfig.sh"; then
811+
TCL_CONFIG_SH=$dir/$tcl_dir/tclConfig.sh
812+
fi
813+
fi
814+
done
815+
done
816+
if test -z "$TCL_CONFIG_SH"; then
817+
AC_MSG_RESULT(no)
818+
AC_MSG_WARN(tcl support disabled; Tcl configuration script missing)
819+
USE_TCL=
820+
else
821+
AC_MSG_RESULT($TCL_CONFIG_SH)
822+
AC_SUBST(TCL_CONFIG_SH)
823+
fi
824+
fi
825+
802826
dnl Check for location of Tk support (only if Tcl used)
803827
dnl Disable Tcl support if Tk not found
804828

@@ -883,4 +907,21 @@ fi
883907

884908
AC_CONFIG_HEADER(interfaces/odbc/config.h)
885909

886-
AC_OUTPUT(GNUmakefile Makefile.global backend/port/Makefile bin/pg_version/Makefile bin/psql/Makefile bin/pg_dump/Makefile backend/utils/Gen_fmgrtab.sh interfaces/libpq/Makefile interfaces/libpq++/Makefile interfaces/libpgtcl/Makefile interfaces/ecpg/lib/Makefile include/version.h interfaces/odbc/Makefile.global interfaces/odbc/GNUmakefile)
910+
AC_OUTPUT(
911+
GNUmakefile
912+
Makefile.global
913+
backend/port/Makefile
914+
backend/utils/Gen_fmgrtab.sh
915+
bin/pg_dump/Makefile
916+
bin/pg_version/Makefile
917+
bin/psql/Makefile
918+
include/version.h
919+
interfaces/ecpg/lib/Makefile
920+
interfaces/libpgtcl/Makefile
921+
interfaces/libpq++/Makefile
922+
interfaces/libpq/Makefile
923+
interfaces/odbc/GNUmakefile
924+
interfaces/odbc/Makefile.global
925+
pl/plpgsql/src/Makefile
926+
pl/tcl/mkMakefile.tcldefs.sh
927+
)

src/pl/plpgsql/src/Makefile renamed to src/pl/plpgsql/src/Makefile.in

+51-4
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# Makefile for the plpgsql shared object
55
#
66
# IDENTIFICATION
7-
# $Header: /cvsroot/pgsql/src/pl/plpgsql/src/Makefile,v 1.1 1998/09/25 15:50:02 momjian Exp $
7+
# $Header: /cvsroot/pgsql/src/pl/plpgsql/src/Attic/Makefile.in,v 1.1 1998/10/08 23:45:17 momjian Exp $
88
#
99
#-------------------------------------------------------------------------
1010

@@ -17,7 +17,8 @@ SRCDIR= ../../..
1717
# Include the global and port specific Makefiles
1818
#
1919
include $(SRCDIR)/Makefile.global
20-
include $(SRCDIR)/Makefile.port
20+
21+
PORTNAME=@PORTNAME@
2122

2223
CFLAGS+= -I$(LIBPQDIR) -I$(SRCDIR)/include
2324
LFLAGS+= -i -l
@@ -27,6 +28,53 @@ CFLAGS+= -I$(SRCDIR)/backend
2728

2829
LDADD+= -L$(LIBPQDIR) -lpq
2930

31+
ifeq ($(PORTNAME), linux)
32+
CFLAGS += $(CFLAGS_SL)
33+
LDFLAGS_SL = -shared
34+
endif
35+
36+
ifeq ($(PORTNAME), bsd)
37+
ifdef BSD_SHLIB
38+
LDFLAGS_SL = -x -Bshareable -Bforcearchive
39+
CFLAGS += $(CFLAGS_SL)
40+
endif
41+
endif
42+
43+
ifeq ($(PORTNAME), bsdi)
44+
ifdef BSD_SHLIB
45+
ifeq ($(LDSUFFIX), .so)
46+
LD := shlicc
47+
LDFLAGS_SL += -O -shared
48+
CFLAGS += $(CFLAGS_SL)
49+
endif
50+
ifeq ($(LDSUFFIX), .o)
51+
LD := shlicc
52+
LDFLAGS_SL += -O -r
53+
CFLAGS += $(CFLAGS_SL)
54+
endif
55+
endif
56+
endif
57+
58+
ifeq ($(PORTNAME), solaris)
59+
LDFLAGS_SL := -G -z text
60+
CFLAGS += $(CFLAGS_SL)
61+
endif
62+
63+
ifeq ($(PORTNAME), unixware)
64+
LDFLAGS_SL := -G -z text
65+
CFLAGS += $(CFLAGS_SL)
66+
endif
67+
68+
ifeq ($(PORTNAME), univel)
69+
LDFLAGS_SL := -G -z text
70+
CFLAGS += $(CFLAGS_SL)
71+
endif
72+
73+
ifeq ($(PORTNAME), hpux)
74+
LDFLAGS_SL := -b
75+
CFLAGS += $(CFLAGS_SL)
76+
endif
77+
3078
#
3179
# DLOBJ is the dynamically-loaded object file.
3280
#
@@ -54,9 +102,8 @@ install: all
54102
$(INSTALL) $(INSTL_LIB_OPTS) $(DLOBJ) $(DESTDIR)$(LIBDIR)/$(DLOBJ)
55103

56104
$(DLOBJ): $(OBJS)
57-
$(CC) -shared -o $@ $(OBJS)
105+
$(LD) $(LDFLAGS_SL) -o $@ $(OBJS)
58106

59-
# $(LD) $(LDFLAGS_SL) -o $@ $(OBJS)
60107

61108

62109
pl_handler.o: pl_handler.c plpgsql.h pl.tab.h

src/pl/tcl/Makefile

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# Makefile for the pltcl shared object
55
#
66
# IDENTIFICATION
7-
# $Header: /cvsroot/pgsql/src/pl/tcl/Makefile,v 1.5 1998/04/06 16:53:15 momjian Exp $
7+
# $Header: /cvsroot/pgsql/src/pl/tcl/Makefile,v 1.6 1998/10/08 23:45:18 momjian Exp $
88
#
99
#-------------------------------------------------------------------------
1010

@@ -77,7 +77,7 @@ endif
7777
all: $(INFILES)
7878

7979
Makefile.tcldefs:
80-
./mkMakefile.tcldefs
80+
/bin/sh mkMakefile.tcldefs.sh
8181

8282
#
8383
# Clean

src/pl/tcl/mkMakefile.tcldefs

-25
This file was deleted.

0 commit comments

Comments
 (0)