summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane1998-10-18 19:41:00 +0000
committerTom Lane1998-10-18 19:41:00 +0000
commite1942f5b9e1c71e3f5e912ab9ffeb1e34339845d (patch)
treebd94766d228875c33dc468f3deb2c53c5dec69c3
parent14f4ca009c259330dbb43b1cccc49c9fd7a98c58 (diff)
Clean up shared makefile install procedures.
Get the permissions right, don't overwrite real files with symlinks, etc. plpgsql and odbc still aren't fully up to speed, but at least they don't crash and burn...
-rw-r--r--src/interfaces/ecpg/lib/Makefile.in44
-rw-r--r--src/interfaces/libpgtcl/Makefile.in22
-rw-r--r--src/interfaces/libpq++/Makefile.in153
-rw-r--r--src/interfaces/libpq/Makefile.in25
-rw-r--r--src/interfaces/odbc/GNUmakefile.in36
-rw-r--r--src/interfaces/odbc/Makefile.global.in3
-rw-r--r--src/interfaces/odbc/configure.in19
-rw-r--r--src/pl/plpgsql/src/Makefile.in4
-rw-r--r--src/pl/tcl/Makefile4
9 files changed, 201 insertions, 109 deletions
diff --git a/src/interfaces/ecpg/lib/Makefile.in b/src/interfaces/ecpg/lib/Makefile.in
index d9f7d7c763..b04a1e7cb6 100644
--- a/src/interfaces/ecpg/lib/Makefile.in
+++ b/src/interfaces/ecpg/lib/Makefile.in
@@ -72,24 +72,43 @@ ifeq ($(PORTNAME), unixware)
CFLAGS += $(CFLAGS_SL)
endif
+ifeq ($(PORTNAME), hpux)
+ install-shlib-dep := install-shlib
+ shlib := lib$(NAME).sl
+ LDFLAGS_SL := -b
+ CFLAGS += $(CFLAGS_SL)
+endif
+
all: lib$(NAME).a $(shlib)
-$(shlib): ecpglib.sho.o typename.sho.o
- $(LD) $(LDFLAGS_SL) -o $@ ecpglib.sho.o typename.sho.o
+$(shlib): ecpglib.o typename.o
+ $(LD) $(LDFLAGS_SL) -o $@ ecpglib.o typename.o
clean:
- rm -f *.o *.sho *.a core a.out *~ $(shlib) lib$(NAME)$(DLSUFFIX)
+ rm -f *.o *.a core a.out *~ $(shlib) lib$(NAME)$(DLSUFFIX)
dep depend:
-install: lib$(NAME).a $(shlib) $(install-shlib-dep)
- $(INSTALL) $(INSTLOPTS) lib$(NAME).a $(LIBDIR)
+.PHONY: install install-libecpg install-shlib
+
+install: install-libecpg $(install-shlib-dep)
+
+install-libecpg: lib$(NAME).a
+ $(INSTALL) $(INSTL_LIB_OPTS) lib$(NAME).a $(LIBDIR)/lib$(NAME).a
+
+install-shlib: $(shlib)
+ $(INSTALL) $(INSTL_SHLIB_OPTS) $(shlib) $(LIBDIR)/$(shlib)
+ if [ "$(shlib)" != "lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)" ]; then \
+ cd $(LIBDIR); \
+ rm -f lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION); \
+ $(LN_S) $(shlib) lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION); \
+ fi
+ if [ "$(shlib)" != "lib$(NAME)$(DLSUFFIX)" ]; then \
+ cd $(LIBDIR); \
+ rm -f lib$(NAME)$(DLSUFFIX); \
+ $(LN_S) $(shlib) lib$(NAME)$(DLSUFFIX); \
+ fi
-install-shlib:
- $(INSTALL) $(INSTLOPTS) $(shlib) $(LIBDIR)
- cd $(LIBDIR) && $(LN_S) -f $(shlib) lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)
- cd $(LIBDIR) && $(LN_S) -f $(shlib) lib$(NAME)$(DLSUFFIX)
-
uninstall::
rm -f $(LIBDIR)/lib$(NAME).a $(LIBDIR)/$(shlib)
@@ -103,8 +122,3 @@ ecpglib.o : ecpglib.c ../include/ecpglib.h ../include/ecpgtype.h
$(CC) $(CFLAGS) -I../include $(PQ_INCLUDE) -c $< -o $@
typename.o : typename.c ../include/ecpgtype.h
$(CC) $(CFLAGS) -I../include $(PQ_INCLUDE) -c $< -o $@
-
-ecpglib.sho : ecpglib.c ../include/ecpglib.h ../include/ecpgtype.h
- $(CC) $(CFLAGS) $(CFLAGS_SL) -I../include $(PQ_INCLUDE) -c $< -o $@
-typename.sho : typename.c ../include/ecpgtype.h
- $(CC) $(CFLAGS) $(CFLAGS_SL) -I../include $(PQ_INCLUDE) -c $< -o $@
diff --git a/src/interfaces/libpgtcl/Makefile.in b/src/interfaces/libpgtcl/Makefile.in
index 9df0dc0d3c..c072f13662 100644
--- a/src/interfaces/libpgtcl/Makefile.in
+++ b/src/interfaces/libpgtcl/Makefile.in
@@ -7,7 +7,7 @@
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/interfaces/libpgtcl/Attic/Makefile.in,v 1.31 1998/10/14 16:12:54 thomas Exp $
+# $Header: /cvsroot/pgsql/src/interfaces/libpgtcl/Attic/Makefile.in,v 1.32 1998/10/18 19:40:54 tgl Exp $
#
#-------------------------------------------------------------------------
@@ -130,7 +130,7 @@ $(shlib): $(OBJS)
$(LD) $(LDFLAGS_SL) -o $@ $(OBJS) $(LIBPQ)
.PHONY: beforeinstall-headers install-headers
-.PHONY: install install-libpgtcl
+.PHONY: install install-libpgtcl install-shlib
install: install-headers install-libpgtcl $(install-shlib-dep)
@@ -144,14 +144,20 @@ install-libpgtcl: lib$(NAME).a
$(INSTALL) $(INSTL_LIB_OPTS) lib$(NAME).a $(LIBDIR)/lib$(NAME).a
install-shlib: $(shlib)
- $(INSTALL) $(INSTL_SHLIB_OPTS) $(shlib) \
- $(LIBDIR)/$(shlib)
- rm -f $(LIBDIR)/lib$(NAME)$(DLSUFFIX)
- cd $(LIBDIR) && $(LN_S) -f $(shlib) lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)
- cd $(LIBDIR) && $(LN_S) -f $(shlib) lib$(NAME)$(DLSUFFIX)
+ $(INSTALL) $(INSTL_SHLIB_OPTS) $(shlib) $(LIBDIR)/$(shlib)
+ if [ "$(shlib)" != "lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)" ]; then \
+ cd $(LIBDIR); \
+ rm -f lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION); \
+ $(LN_S) $(shlib) lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION); \
+ fi
+ if [ "$(shlib)" != "lib$(NAME)$(DLSUFFIX)" ]; then \
+ cd $(LIBDIR); \
+ rm -f lib$(NAME)$(DLSUFFIX); \
+ $(LN_S) $(shlib) lib$(NAME)$(DLSUFFIX); \
+ fi
.PHONY: clean
clean:
- rm -f $(OBJS) $(shlib) lib$(NAME).a lib$(NAME)$(DLSUFFIX)
+ rm -f $(OBJS) $(shlib) lib$(NAME).a
dep depend:
diff --git a/src/interfaces/libpq++/Makefile.in b/src/interfaces/libpq++/Makefile.in
index dcd50fbd2a..f3a8eaead9 100644
--- a/src/interfaces/libpq++/Makefile.in
+++ b/src/interfaces/libpq++/Makefile.in
@@ -7,20 +7,23 @@
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/interfaces/libpq++/Attic/Makefile.in,v 1.8 1998/10/13 14:12:22 scrappy Exp $
+# $Header: /cvsroot/pgsql/src/interfaces/libpq++/Attic/Makefile.in,v 1.9 1998/10/18 19:40:55 tgl Exp $
#
#-------------------------------------------------------------------------
-SRCDIR= ../..
+NAME= pq++
+SO_MAJOR_VERSION= 2
+SO_MINOR_VERSION= 0
+
+SRCDIR= @top_srcdir@
include $(SRCDIR)/Makefile.global
-SRCHEADERDIR = $(SRCDIR)/include
-LIBPQHEADERDIR = $(SRCHEADERDIR)/libpq
-LIBNAME= libpq++
+PORTNAME=@PORTNAME@
CXX=@CXX@
-PORTNAME=@PORTNAME@
+SRCHEADERDIR = $(SRCDIR)/include
+LIBPQHEADERDIR = $(SRCHEADERDIR)/libpq
# We have to override -Werror, which makes warnings, fatal, because we
# inevitably get the warning, "abstract declarator used as declaration"
@@ -48,41 +51,69 @@ endif
OBJS = pgenv.o pgconnection.o pgtransdb.o pgcursordb.o pglobject.o
# Shared library stuff
-SHLIB :=
-INSTALL-SHLIB-DEP :=
+shlib :=
+install-shlib-dep :=
+
ifeq ($(PORTNAME), linux)
- INSTALL-SHLIB-DEP := install-shlib
- SHLIB := libpq++.so.1
- LDFLAGS_SL = -shared -soname $(SHLIB)
- CFLAGS += $(CFLAGS_SL)
+ install-shlib-dep := install-shlib
+ shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ LDFLAGS_SL := -shared -soname lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ CFLAGS += $(CFLAGS_SL)
+endif
+
+ifeq ($(PORTNAME), bsd)
+ ifdef BSD_SHLIB
+ install-shlib-dep := install-shlib
+ shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ LDFLAGS_SL := -x -Bshareable -Bforcearchive
+ CFLAGS += $(CFLAGS_SL)
+ endif
+endif
+
+ifeq ($(PORTNAME), bsdi)
+ ifdef BSD_SHLIB
+ ifeq ($(DLSUFFIX), .so)
+ install-shlib-dep := install-shlib
+ shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ LDFLAGS_SL += -shared
+ CFLAGS += $(CFLAGS_SL)
+ endif
+ ifeq ($(DLSUFFIX), .o)
+ install-shlib-dep := install-shlib
+ shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ LD := shlicc
+ LDFLAGS_SL += -O -r
+ CFLAGS += $(CFLAGS_SL)
+ endif
+ endif
endif
ifeq ($(PORTNAME), solaris_sparc)
- INSTALL-SHLIB-DEP := install-shlib
- SHLIB := libpq++.so.1
- LDFLAGS_SL = -G -shared
- CFLAGS += $(CFLAGS_SL)
+ install-shlib-dep := install-shlib
+ shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ LDFLAGS_SL := -G
+ CFLAGS += $(CFLAGS_SL)
endif
ifeq ($(PORTNAME), solaris_i386)
- INSTALL-SHLIB-DEP := install-shlib
- SHLIB := libpq++.so.1
- LDFLAGS_SL = -G -shared
- CFLAGS += $(CFLAGS_SL)
+ install-shlib-dep := install-shlib
+ shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ LDFLAGS_SL := -G
+ CFLAGS += $(CFLAGS_SL)
endif
ifeq ($(PORTNAME), svr4)
- INSTALL-SHLIB-DEP := install-shlib
- SHLIB := libpq++.so.1
- LDFLAGS_SL = -G -shared -soname $(SHLIB)
- CFLAGS += $(CFLAGS_SL)
+ install-shlib-dep := install-shlib
+ shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ LDFLAGS_SL := -G
+ CFLAGS += $(CFLAGS_SL)
endif
ifeq ($(PORTNAME), unixware)
- install-shlib-dep := install-shlib
- shlib := libpq.so.1
- LDFLAGS_SL = -G -z text
- CFLAGS += $(CFLAGS_SL)
+ install-shlib-dep := install-shlib
+ shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ LDFLAGS_SL := -G -z text
+ CFLAGS += $(CFLAGS_SL)
ifeq ($(CXX), CC)
CXXFLAGS += -Xw
COMPILE.cc = $(CXX) $(CXXFLAGS:ll,alloca=ll) $(CPPFLAGS) $(TARGET_ARCH) -c
@@ -90,10 +121,10 @@ ifeq ($(PORTNAME), unixware)
endif
ifeq ($(PORTNAME), univel)
- install-shlib-dep := install-shlib
- shlib := libpq.so.1
- LDFLAGS_SL = -G -z text
- CFLAGS += $(CFLAGS_SL)
+ install-shlib-dep := install-shlib
+ shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ LDFLAGS_SL := -G -z text
+ CFLAGS += $(CFLAGS_SL)
ifeq ($(CXX), CC)
CXXFLAGS += -Xw
COMPILE.cc = $(CXX) $(CXXFLAGS:ll,alloca=ll) $(CPPFLAGS) $(TARGET_ARCH) -c
@@ -101,37 +132,38 @@ ifeq ($(PORTNAME), univel)
endif
ifeq ($(PORTNAME), hpux)
- install-shlib-dep := install-shlib
- shlib := libpq.sl
- LDFLAGS_SL = -b
- CFLAGS += $(CFLAGS_SL)
+ install-shlib-dep := install-shlib
+ shlib := lib$(NAME).sl
+ LDFLAGS_SL := -b
+ CFLAGS += $(CFLAGS_SL)
endif
-all: $(LIBNAME).a $(SHLIB)
-$(LIBNAME).a: $(OBJS)
+all: libpq++.a $(shlib)
+
+libpq++.a: $(OBJS)
ifdef MK_NO_LORDER
- $(AR) $(AROPT) $(LIBNAME).a $(OBJS)
+ $(AR) $(AROPT) libpq++.a $(OBJS)
else
- $(AR) $(AROPT) $(LIBNAME).a `lorder $(OBJS) | tsort`
+ $(AR) $(AROPT) libpq++.a `lorder $(OBJS) | tsort`
endif
- $(RANLIB) $(LIBNAME).a
+ $(RANLIB) libpq++.a
-$(SHLIB): $(OBJS)
- $(LD) $(LDFLAGS) $(LDFLAGS_SL) -o $@ $(OBJS)
+$(shlib): $(OBJS)
+ $(LD) $(LDFLAGS_SL) -o $@ $(OBJS)
.PHONY: examples
examples:
$(MAKE) -C examples all
.PHONY: beforeinstall-headers install-headers
-.PHONY: install beforeinstall-lib install-$(LIBNAME)
+.PHONY: install beforeinstall-lib install-libpq++ install-shlib
-install: install-headers install-$(LIBNAME) $(INSTALL-SHLIB-DEP)
+install: install-headers install-libpq++ $(install-shlib-dep)
-LIBPGXXDIR = $(LIBNAME)
+LIBPGXXDIR = libpq++
LIBPGXXHEADERDIR = $(HEADERDIR)/$(LIBPGXXDIR)
-MAINHEADER = $(LIBNAME).h
+MAINHEADER = libpq++.h
LIBPGXXHEADERS = pgenv.h \
pgconnection.h \
pgdatabase.h \
@@ -153,16 +185,25 @@ beforeinstall-headers:
beforeinstall-lib:
@if [ ! -d $(LIBDIR) ] ; then mkdir $(LIBDIR); fi
-install-$(LIBNAME): $(LIBNAME).a beforeinstall-lib
- $(INSTALL) $(INSTL_LIB_OPTS) $(LIBNAME).a $(LIBDIR)/$(LIBNAME).a
-
-install-shlib: $(SHLIBNAME) beforeinstall-lib
- $(INSTALL) $(INSTL_SHLIB_OPTS) $(SHLIB) $(LIBDIR)/$(SHLIB)
- rm -f $(LIBDIR)/libpq++.so
- $(LN_S) -f $(SHLIB) $(LIBDIR)/libpq++.so
-
+install-libpq++: libpq++.a beforeinstall-lib
+ $(INSTALL) $(INSTL_LIB_OPTS) libpq++.a $(LIBDIR)/libpq++.a
+
+install-shlib: $(shlib)
+ $(INSTALL) $(INSTL_SHLIB_OPTS) $(shlib) $(LIBDIR)/$(shlib)
+ if [ "$(shlib)" != "lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)" ]; then \
+ cd $(LIBDIR); \
+ rm -f lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION); \
+ $(LN_S) $(shlib) lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION); \
+ fi
+ if [ "$(shlib)" != "lib$(NAME)$(DLSUFFIX)" ]; then \
+ cd $(LIBDIR); \
+ rm -f lib$(NAME)$(DLSUFFIX); \
+ $(LN_S) $(shlib) lib$(NAME)$(DLSUFFIX); \
+ fi
+
+.PHONY: clean
clean:
- rm -f $(LIBNAME).a $(OBJS)
+ rm -f libpq++.a $(shlib) $(OBJS)
$(MAKE) -C examples clean
dep depend:
diff --git a/src/interfaces/libpq/Makefile.in b/src/interfaces/libpq/Makefile.in
index ed2a561090..7d9d8b5741 100644
--- a/src/interfaces/libpq/Makefile.in
+++ b/src/interfaces/libpq/Makefile.in
@@ -7,7 +7,7 @@
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/interfaces/libpq/Attic/Makefile.in,v 1.38 1998/10/14 16:13:03 thomas Exp $
+# $Header: /cvsroot/pgsql/src/interfaces/libpq/Attic/Makefile.in,v 1.39 1998/10/18 19:40:55 tgl Exp $
#
#-------------------------------------------------------------------------
@@ -117,6 +117,7 @@ ifeq ($(PORTNAME), hpux)
CFLAGS += $(CFLAGS_SL)
endif
+
all: libpq.a $(shlib)
libpq.a: $(OBJS)
@@ -158,7 +159,7 @@ $(shlib): $(OBJS)
.PHONY: beforeinstall-headers install-headers
-.PHONY: install install-libpq install-shlib-dep
+.PHONY: install install-libpq install-shlib
install: install-headers install-libpq $(install-shlib-dep)
@@ -228,20 +229,26 @@ install-libpq: libpq.a
install-shlib: $(shlib)
$(INSTALL) $(INSTL_SHLIB_OPTS) $(shlib) $(LIBDIR)/$(shlib)
- rm -f $(LIBDIR)/lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)
- rm -f $(LIBDIR)/lib$(NAME)$(DLSUFFIX)
- cd $(LIBDIR) && $(LN_S) -f $(shlib) lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)
- cd $(LIBDIR) && $(LN_S) -f $(shlib) lib$(NAME)$(DLSUFFIX)
-
+ if [ "$(shlib)" != "lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)" ]; then \
+ cd $(LIBDIR); \
+ rm -f lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION); \
+ $(LN_S) $(shlib) lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION); \
+ fi
+ if [ "$(shlib)" != "lib$(NAME)$(DLSUFFIX)" ]; then \
+ cd $(LIBDIR); \
+ rm -f lib$(NAME)$(DLSUFFIX); \
+ $(LN_S) $(shlib) lib$(NAME)$(DLSUFFIX); \
+ fi
-depend dep:
- $(CC) -MM $(CFLAGS) *.c >depend
.PHONY: clean
clean:
rm -f libpq.a $(shlib) $(OBJS)
rm -f dllist.c common.c wchar.c conv.c
+depend dep:
+ $(CC) -MM $(CFLAGS) *.c >depend
+
ifeq (depend,$(wildcard depend))
include depend
endif
diff --git a/src/interfaces/odbc/GNUmakefile.in b/src/interfaces/odbc/GNUmakefile.in
index 4597ed3ca6..bb97b0b15d 100644
--- a/src/interfaces/odbc/GNUmakefile.in
+++ b/src/interfaces/odbc/GNUmakefile.in
@@ -7,7 +7,7 @@
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/interfaces/odbc/Attic/GNUmakefile.in,v 1.5 1998/10/14 16:09:32 thomas Exp $
+# $Header: /cvsroot/pgsql/src/interfaces/odbc/Attic/GNUmakefile.in,v 1.6 1998/10/18 19:40:56 tgl Exp $
#
#-------------------------------------------------------------------------
@SET_MAKE@
@@ -25,17 +25,24 @@ FIND= @find@
TAR= @tar@
SPLIT= @split@
-install-shlib-dep := install-shlib
-shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+# Shared library stuff
+shlib :=
+install-shlib-dep :=
ifeq ($(PORTNAME), linux)
+ install-shlib-dep := install-shlib
+ shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
LDFLAGS_SL = -shared -soname lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
LDFLAGS_SL += -Bsymbolic $(LDFLAGS) -lc -lm
+ CFLAGS += $(CFLAGS_SL)
endif
ifeq ($(PORTNAME), bsd)
ifdef BSD_SHLIB
+ install-shlib-dep := install-shlib
+ shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
LDFLAGS_SL = -x -Bshareable -Bforcearchive $(LDFLAGS)
+ CFLAGS += $(CFLAGS_SL)
endif
endif
@@ -55,16 +62,15 @@ CFLAGS += -I. @DEFS@
all: libpsqlodbc.a $(shlib)
libpsqlodbc.a: $(OBJECTS)
- $(AR) $(AROPT) libpsqlodbc.a $(OBJS)
+ $(AR) $(AROPT) libpsqlodbc.a $(OBJECTS)
$(RANLIB) libpsqlodbc.a
$(shlib): $(OBJECTS)
$(LD) $(LDFLAGS_SL) $(OBJECTS) \
-o $(shlib) $(LIBS)
-.PHONY: beforeinstall-headers
-
-.PHONY: install
+.PHONY: beforeinstall-headers install-headers
+.PHONY: install install-libpsqlodbc install-ini install-shlib
install: $(HEADERDIR) $(LIBDIR) $(ODBCINST) install-headers \
install-libpsqlodbc install-ini $(install-shlib-dep)
@@ -84,11 +90,17 @@ install-libpsqlodbc: libpsqlodbc.a
$(INSTALL) $(INSTL_LIB_OPTS) libpsqlodbc.a $(LIBDIR)/lib$(NAME).a
install-shlib: $(shlib)
- $(INSTALL) $(INSTL_LIB_OPTS) $(shlib) $(LIBDIR)/$(shlib)
- rm -f $(LIBDIR)/lib$(NAME)$(DLSUFFIX)
- rm -f $(LIBDIR)/lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)
- cd $(LIBDIR) && $(LN_S) -f $(shlib) lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)
- cd $(LIBDIR) && $(LN_S) -f $(shlib) lib$(NAME)$(DLSUFFIX)
+ $(INSTALL) $(INSTL_SHLIB_OPTS) $(shlib) $(LIBDIR)/$(shlib)
+ if [ "$(shlib)" != "lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)" ]; then \
+ cd $(LIBDIR); \
+ rm -f lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION); \
+ $(LN_S) $(shlib) lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION); \
+ fi
+ if [ "$(shlib)" != "lib$(NAME)$(DLSUFFIX)" ]; then \
+ cd $(LIBDIR); \
+ rm -f lib$(NAME)$(DLSUFFIX); \
+ $(LN_S) $(shlib) lib$(NAME)$(DLSUFFIX); \
+ fi
install-ini: odbcinst.ini
$(INSTALL) $(INSTL_LIB_OPTS) odbcinst.ini $(ODBCINST)
diff --git a/src/interfaces/odbc/Makefile.global.in b/src/interfaces/odbc/Makefile.global.in
index d5edb32a0d..c1374167ef 100644
--- a/src/interfaces/odbc/Makefile.global.in
+++ b/src/interfaces/odbc/Makefile.global.in
@@ -7,7 +7,7 @@
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/interfaces/odbc/Attic/Makefile.global.in,v 1.2 1998/10/09 07:04:50 thomas Exp $
+# $Header: /cvsroot/pgsql/src/interfaces/odbc/Attic/Makefile.global.in,v 1.3 1998/10/18 19:40:56 tgl Exp $
#
# NOTES
# This is derived from the main Postgres makefile.
@@ -102,6 +102,7 @@ RANLIB= @RANLIB@
INSTLOPTS= @INSTLOPTS@
INSTL_EXE_OPTS= @INSTL_EXE_OPTS@
INSTL_LIB_OPTS= @INSTL_LIB_OPTS@
+INSTL_SHLIB_OPTS= @INSTL_SHLIB_OPTS@
##############################################################################
#
diff --git a/src/interfaces/odbc/configure.in b/src/interfaces/odbc/configure.in
index 893f696300..ded19b9b3d 100644
--- a/src/interfaces/odbc/configure.in
+++ b/src/interfaces/odbc/configure.in
@@ -250,8 +250,8 @@ AC_SUBST(CFLAGS)
AC_SUBST(DLSUFFIX)
AC_SUBST(DL_LIB)
-INSTALLPATH="/usr/ucb:$PATH"
-AC_PATH_PROGS(INSTALL, ginstall installbsd bsdinst scoinst install, NONE, $INSTALLPATH)
+INSTALLPATH="`echo /usr/ucb:$PATH | sed 's/:/ /g'`"
+AC_PATH_PROGS(INSTALL, ginstall installbsd bsdinst scoinst install, NONE, $INSTALLPATH )
if test $INSTALL = "NONE"
then
echo "- No Install Script found - aborting."
@@ -261,18 +261,29 @@ fi
INSTLOPTS="-m 444"
INSTL_EXE_OPTS="-m 555"
INSTL_LIB_OPTS="-m 644"
+INSTL_SHLIB_OPTS="-m 644"
+dnl HPUX wants shared libs to be mode 555.
+case "$host_os" in
+ hpux*)
+ INSTL_SHLIB_OPTS="-m 555" ;;
+esac
+
+dnl These flavors of install need -c to install by copy rather than move.
+dnl install by move is fatal because it removes stuff from the source tree!
case "`basename $INSTALL`" in
- install|installbsd|scoinst)
+ install|installbsd|scoinst|install-sh)
INSTLOPTS="-c $INSTLOPTS"
INSTL_EXE_OPTS="-c $INSTL_EXE_OPTS"
- INSTL_LIB_OPTS="-c $INSTL_LIB_OPTS";;
+ INSTL_LIB_OPTS="-c $INSTL_LIB_OPTS"
+ INSTL_SHLIB_OPTS="-c $INSTL_SHLIB_OPTS";;
esac
echo "- Using $INSTALL"
AC_SUBST(INSTALL)
AC_SUBST(INSTLOPTS)
AC_SUBST(INSTL_LIB_OPTS)
+AC_SUBST(INSTL_SHLIB_OPTS)
AC_SUBST(INSTL_EXE_OPTS)
dnl Check the option to echo to inhibit newlines.
diff --git a/src/pl/plpgsql/src/Makefile.in b/src/pl/plpgsql/src/Makefile.in
index a4092278ea..eeb8271b26 100644
--- a/src/pl/plpgsql/src/Makefile.in
+++ b/src/pl/plpgsql/src/Makefile.in
@@ -4,7 +4,7 @@
# Makefile for the plpgsql shared object
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/pl/plpgsql/src/Attic/Makefile.in,v 1.8 1998/10/12 01:23:29 momjian Exp $
+# $Header: /cvsroot/pgsql/src/pl/plpgsql/src/Attic/Makefile.in,v 1.9 1998/10/18 19:40:58 tgl Exp $
#
#-------------------------------------------------------------------------
@@ -113,7 +113,7 @@ clean:
rm -f *.o y.tab.h pl.tab.h pl_gram.c gram.c pl_scan.c scan.c
install: all
- $(INSTALL) $(INSTL_LIB_OPTS) $(DLOBJ) $(DESTDIR)$(LIBDIR)/$(DLOBJ)
+ $(INSTALL) $(INSTL_SHLIB_OPTS) $(DLOBJ) $(DESTDIR)$(LIBDIR)/$(DLOBJ)
$(DLOBJ): $(OBJS)
$(LD) $(LDFLAGS_SL) -o $@ $(OBJS)
diff --git a/src/pl/tcl/Makefile b/src/pl/tcl/Makefile
index d21164c009..6ffe172ca0 100644
--- a/src/pl/tcl/Makefile
+++ b/src/pl/tcl/Makefile
@@ -4,7 +4,7 @@
# Makefile for the pltcl shared object
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/pl/tcl/Makefile,v 1.8 1998/10/17 23:33:23 tgl Exp $
+# $Header: /cvsroot/pgsql/src/pl/tcl/Makefile,v 1.9 1998/10/18 19:41:00 tgl Exp $
#
#-------------------------------------------------------------------------
@@ -89,7 +89,7 @@ ifeq ($(TCL_SHARED_BUILD),1)
all: $(INFILES)
install: all
- $(INSTALL) $(INSTL_LIB_OPTS) $(DLOBJS) $(LIBDIR)/$(DLOBJS)
+ $(INSTALL) $(INSTL_SHLIB_OPTS) $(DLOBJS) $(LIBDIR)/$(DLOBJS)
else