Re: Compiling postgres-7.4.1 - Mailing list pgsql-general

From Tom Lane
Subject Re: Compiling postgres-7.4.1
Date
Msg-id 17853.1074714288@sss.pgh.pa.us
Whole thread Raw
In response to Compiling postgres-7.4.1  ("Sathiamoorthy Balasubramaniyan (ext_TCS)" <Balasubramaniyan.Sathiamoorthy.ext_TCS@ts.siemens.de>)
List pgsql-general
"Sathiamoorthy Balasubramaniyan (ext_TCS)" <Balasubramaniyan.Sathiamoorthy.ext_TCS@ts.siemens.de> writes:
> Iam trying to install postgres-7.4.1 on my tru64 (O.S version 5.1A) box
> without the shared library support.

There seems to be some bit-rot in the support for --disable-shared.
I've applied the attached patch to fix it.

Note that without shared libraries, you are not going to have any PL
languages nor any character encoding conversion support.  That's rather
a big restriction, so you might want to look into how to get shared
libraries to work, instead ...

            regards, tom lane

Index: src/backend/utils/mb/conversion_procs/proc.mk
===================================================================
RCS file: /cvsroot/pgsql-server/src/backend/utils/mb/conversion_procs/proc.mk,v
retrieving revision 1.6
diff -c -r1.6 proc.mk
*** src/backend/utils/mb/conversion_procs/proc.mk    23 Aug 2003 04:22:34 -0000    1.6
--- src/backend/utils/mb/conversion_procs/proc.mk    21 Jan 2004 19:24:05 -0000
***************
*** 12,18 ****
--- 12,20 ----
  include $(top_srcdir)/src/Makefile.shlib

  install: all
+ ifeq ($(enable_shared), yes)
      $(INSTALL_SHLIB) $(shlib) $(DESTDIR)$(pkglibdir)/$(NAME)$(DLSUFFIX)
+ endif

  uninstall:
      rm -f $(DESTDIR)$(pkglibdir)/$(NAME)$(DLSUFFIX)
Index: src/backend/utils/mb/conversion_procs/Makefile
===================================================================
RCS file: /cvsroot/pgsql-server/src/backend/utils/mb/conversion_procs/Makefile,v
retrieving revision 1.9
diff -c -r1.9 Makefile
*** src/backend/utils/mb/conversion_procs/Makefile    23 Aug 2003 04:22:34 -0000    1.9
--- src/backend/utils/mb/conversion_procs/Makefile    21 Jan 2004 19:24:05 -0000
***************
*** 147,152 ****
--- 147,153 ----
      @for dir in $(DIRS); do $(MAKE) -C $$dir $@ || exit; done

  $(SQLSCRIPT): Makefile
+ ifeq ($(enable_shared), yes)
      @set $(CONVERSIONS) ; \
      while [ "$$#" -gt 0 ] ; \
      do \
***************
*** 160,165 ****
--- 161,169 ----
          echo "DROP CONVERSION pg_catalog.$$name;"; \
          echo "CREATE DEFAULT CONVERSION pg_catalog.$$name FOR '$$se' TO '$$de' FROM $$func;"; \
      done > $@
+ else
+     echo "-- No conversion support, for lack of shared library support" > $@
+ endif

  $(REGRESSION_SCRIPT): Makefile
      @cp regress_prolog $@; \
Index: src/pl/plperl/GNUmakefile
===================================================================
RCS file: /cvsroot/pgsql-server/src/pl/plperl/GNUmakefile,v
retrieving revision 1.10
diff -c -r1.10 GNUmakefile
*** src/pl/plperl/GNUmakefile    28 May 2002 16:57:53 -0000    1.10
--- src/pl/plperl/GNUmakefile    21 Jan 2004 19:24:05 -0000
***************
*** 37,43 ****
--- 37,49 ----
      $(PERL) $(perl_privlibexp)/ExtUtils/xsubpp -typemap $(perl_privlibexp)/ExtUtils/typemap $< >$@

  install: all installdirs
+ ifeq ($(enable_shared), yes)
      $(INSTALL_SHLIB) $(shlib) $(DESTDIR)$(pkglibdir)/plperl$(DLSUFFIX)
+ else
+     @echo "*****"; \
+      echo "* PL/Perl was not installed due to lack of shared library support."; \
+      echo "*****"
+ endif

  installdirs:
      $(mkinstalldirs) $(DESTDIR)$(pkglibdir)
Index: src/pl/plpython/Makefile
===================================================================
RCS file: /cvsroot/pgsql-server/src/pl/plpython/Makefile,v
retrieving revision 1.11
diff -c -r1.11 Makefile
*** src/pl/plpython/Makefile    5 Sep 2002 18:28:46 -0000    1.11
--- src/pl/plpython/Makefile    21 Jan 2004 19:24:05 -0000
***************
*** 32,38 ****
--- 32,44 ----
  all: all-lib

  install: all installdirs
+ ifeq ($(enable_shared), yes)
      $(INSTALL_SHLIB) $(shlib) $(DESTDIR)$(pkglibdir)/plpython$(DLSUFFIX)
+ else
+     @echo "*****"; \
+      echo "* PL/Python was not installed due to lack of shared library support."; \
+      echo "*****"
+ endif

  installdirs:
      $(mkinstalldirs) $(DESTDIR)$(pkglibdir)
Index: src/pl/tcl/Makefile
===================================================================
RCS file: /cvsroot/pgsql-server/src/pl/tcl/Makefile,v
retrieving revision 1.40
diff -c -r1.40 Makefile
*** src/pl/tcl/Makefile    27 Sep 2003 19:35:32 -0000    1.40
--- src/pl/tcl/Makefile    21 Jan 2004 19:24:05 -0000
***************
*** 44,50 ****
--- 44,56 ----
      $(MAKE) -C modules $@

  install: all installdirs
+ ifeq ($(enable_shared), yes)
      $(INSTALL_SHLIB) $(shlib) $(DESTDIR)$(pkglibdir)/$(NAME)$(DLSUFFIX)
+ else
+     @echo "*****"; \
+      echo "* PL/Tcl was not installed due to lack of shared library support."; \
+      echo "*****"
+ endif
      $(MAKE) -C modules $@

  installdirs:
***************
*** 60,66 ****
  # Provide dummy targets for the case where we can't build the shared library.
  all:
      @echo "*****"; \
!      echo "* Cannot build pltcl because Tcl is not a shared library; skipping it."; \
       echo "*****"

  endif # TCL_SHARED_BUILD = 0
--- 66,72 ----
  # Provide dummy targets for the case where we can't build the shared library.
  all:
      @echo "*****"; \
!      echo "* Cannot build PL/Tcl because Tcl is not a shared library; skipping it."; \
       echo "*****"

  endif # TCL_SHARED_BUILD = 0

pgsql-general by date:

Previous
From: Alex Madon
Date:
Subject: Re: postgresql + apache under heavy load
Next
From: "D. Dante Lorenso"
Date:
Subject: Update inside (Insert) Trigger and Unique constraint...