]> granicus.if.org Git - postgresql/blobdiff - src/Makefile.global.in
From: t-ishii@sra.co.jp
[postgresql] / src / Makefile.global.in
index c890fe174314f5862d6bd6543f7e42821f4ed014..555066e2811e7b4ad3ba7219e304fbed6db8f390 100644 (file)
@@ -7,7 +7,7 @@
 #
 #
 # IDENTIFICATION
-#    $Header: /cvsroot/pgsql/src/Makefile.global.in,v 1.18 1997/04/04 10:38:23 scrappy Exp $
+#    $Header: /cvsroot/pgsql/src/Makefile.global.in,v 1.45 1998/07/26 04:30:15 scrappy Exp $
 #
 # NOTES
 #    Essentially all Postgres make files include this file and use the 
 # CONFIGURATION SECTION
 #
 # Following are settings pertaining to the postgres build and 
-# installation.  The most important one is obviously the name 
+# installation.  
 # of the port.
+#
+# Ignore BSD_SHLIB if you're not using one of the BSD ports.  But if you
+# are, and it's one that doesn't have shared libraries (NetBSD/vax is an
+# example of this), set BSD_SHLIB to null in Makefile.custom.
+BSD_SHLIB= true
 
-#  The name of the port.  Valid choices are:
-#   aix            IBM on AIX 3.2.5
-#   alpha          DEC Alpha AXP on OSF/1 2.0
-#   BSD44_derived  OSs derived from 4.4-lite BSD (NetBSD, FreeBSD)
-#   bsdi           BSD/OS 2.0, 2.01, 2.1
-#   dgux           DG/UX 5.4R3.10
-#   hpux           HP PA-RISC on HP-UX 9.0
-#   i386_solaris   i386 Solaris
-#   irix5          SGI MIPS on IRIX 5.3 or better
-#   linux          Intel x86 on Linux 1.2 and Linux ELF
-#                  (For non-ELF Linux, see LINUX_ELF below).
-#   sparc_solaris  SUN SPARC on Solaris 2.4
-#   sunos4         SUN SPARC on SunOS 4.1.3
-#   svr4           Intel x86 on Intel SVR4
-#   ultrix4        DEC MIPS on Ultrix 4.4
-#   univel         Unixware 2.0x x86
-#
-# PostgresSQL has known problems/bugs on the following platforms:
-#
-#   nextstep       Motorola MC68K or Intel x86 on NeXTSTEP 3.2 or greater
-#
-#  Note that portname is defined here to be UNDEFINED to remind you
-#  to change it in Makefile.custom.
-#
-#  make sure that you have no whitespaces after the PORTNAME setting
-#  or the makefiles can get confused
-PORTNAME= @PORTNAME@
-
-# Ignore LINUX_ELF if you're not using Linux.  But if you are, and you're
-# compiling to a.out (which means you're using the dld dynamic loading 
-# library), set LINUX_ELF to null in Makefile.custom.
-LINUX_ELF= true
-
-LIBPQDIR:= $(SRCDIR)/libpq
+LIBPQDIR:= $(SRCDIR)/interfaces/libpq
 
 # For convenience, POSTGRESDIR is where BINDIR, and LIBDIR 
 # and other target destinations are rooted.  Of course, each of these is 
@@ -108,23 +80,6 @@ POSTDOCDIR= $(POSTGRESDIR)/doc
 # Where the header files necessary to build frontend programs get installed.
 HEADERDIR= $(POSTGRESDIR)/include
 
-# NAMEDATALEN is the max length for system identifiers (e.g. table names,
-# attribute names, function names, etc.)
-#
-# These MUST be set here.  DO NOT COMMENT THESE OUT
-# Setting these too high will result in excess space usage for system catalogs
-# Setting them too low will make the system unusable.
-# values between 16 and 64 that are multiples of four are recommended.
-# 
-# NOTE also that databases with different NAMEDATALEN's cannot interoperate!
-#
-# THERE ARE REDUNDANT DEFINITIONS OF THESE VALUES IN config.h.
-# Don't change anything here without changing it there too.
-
-NAMEDATALEN= 32
-# OIDNAMELEN should be set to NAMEDATALEN + sizeof(Oid)
-OIDNAMELEN= 36
 ##############################################################################
 #
 # FEATURES 
@@ -135,10 +90,6 @@ OIDNAMELEN= 36
 # Compile libpq++
 @HAVECXX@
 
-# Commenting out CASSERT will make things go a LOT faster, but you will
-# also loose a lot of useful error-checking.
-CASSERT= true
-
 # Comment out ENFORCE_ALIGNMENT if you do NOT want unaligned access to
 # multi-byte types to generate a bus error.
 ENFORCE_ALIGNMENT= true
@@ -184,25 +135,26 @@ endif
 # location of Tcl/Tk headers and libraries
 #
 # Uncomment this to build the tcl utilities.
-# USE_TCL= true
+USE_TCL= @USE_TCL@
 # customize these to your site's needs
 #
-TCL_INCDIR= /home/tools/include
-TCL_LIBDIR= /home/tools/lib
-TCL_LIB= -ltcl7.5
-TK_INCDIR= /home/tools/include
-TK_LIBDIR= /home/tools/lib
-TK_LIB= -ltk4.1
+TCL_LIB= @TCL_LIB@
+TK_LIB= @TK_LIB@
 
-X11_INCDIR= /usr/include
-X11_LIBDIR= /usr/lib
-X11_LIB= -lX11 @SOCKET_LIB@ @NSL_LIB@
+USE_PERL= @USE_PERL@
 
-##############################################################################
-#
-#  YACC
+X_CFLAGS= @X_CFLAGS@
+X_LIBS= @X_LIBS@
+X11_LIBS= -lX11 @X_EXTRA_LIBS@
 
-YFLAGS= -d
+#
+# enable multi-byte support
+# choose one of:
+# EUC_JP,EUC_CN,EUC_KR,EUC_TW,UNICODE,MULE_INTERNAL,LATIN1-5
+MULTIBYTE=@MULTIBYTE@
+ifdef MULTIBYTE
+MBFLAGS = -DMULTIBYTE=$(MULTIBYTE)
+endif
 
 ##############################################################################
 #
@@ -215,6 +167,7 @@ RANLIB= @RANLIB@
 INSTLOPTS= @INSTLOPTS@
 INSTL_EXE_OPTS= @INSTL_EXE_OPTS@
 INSTL_LIB_OPTS= @INSTL_LIB_OPTS@
+INSTL_SHLIB_OPTS= @INSTL_SHLIB_OPTS@
 
 ##############################################################################
 #
@@ -232,205 +185,31 @@ DASH_N= @DASH_N@
 BACKSLASH_C= @BACKSLASH_C@ 
 
 
-##############################################################################
-#
-# Customization.
-#
-# This includes your local customizations if Makefile.custom exists
-# in the source directory.  This file doesn't exist in the original
-# distribution so that it doesn't get overwritten when you upgrade.
-ifneq ($(wildcard $(SRCDIR)/Makefile.custom), )
-include $(SRCDIR)/Makefile.custom
-endif
 
 #-------------------------------------------------------------
 # See the subdirectory template for default settings for these
 #-------------------------------------------------------------
 CC= @CC@
+YFLAGS= @YFLAGS@
+YACC= @YACC@
 LEX= @LEX@
 AROPT= @AROPT@
-CFLAGS= @CPPFLAGS@ @CFLAGS@
+CFLAGS= -I$(SRCDIR)/include -I$(SRCDIR)/backend @CPPFLAGS@ @CFLAGS@ 
 CFLAGS_SL= @SHARED_LIB@
 LDFLAGS= @LDFLAGS@ @LIBS@
 DLSUFFIX= @DLSUFFIX@
 
-#----------------------------------------------------------------------
-ifeq ($(PORTNAME), BSD44_derived)
-%.so: %.o
-       $(LD) -x -r -o $<.obj $<
-       @echo building shared object $@
-       @rm -f $@.pic
-       @${AR} cq $@.pic `lorder $<.obj | tsort`
-       ${RANLIB} $@.pic
-       @rm -f $@
-       $(LD) -x -Bshareable -Bforcearchive \
-         -o $@ $@.pic
-endif
-
-#--------------------------------------------------------------------------
-
-ifeq ($(PORTNAME), aix)
-
-# MAKE_EXPORTS is required for svr4 loaders that want a file of
-# symbol names to tell them what to export/import.
-MAKE_EXPORTS= true
-
-EXPSUFF= .exp
-
-POSTGRES_EXP= $(SRCDIR)/backend/postgres$(EXPSUFF)
-
-MKLDEXPORT=$(SRCDIR)/backend/port/aix/mkldexport.sh
-
-%$(EXPSUFF):  %.o
-       $(MKLDEXPORT) $< `pwd` > $@
-
-$(POSTGRES_EXP): 
-       $(MAKE) -C $(SRCDIR)/backend postgres.exp
-
-%.so: %.o %$(EXPSUFF) $(POSTGRES_EXP)
-       @echo Making share library $@ from $*.o, $*$(EXPSUFF), and postgres.exp
-       $(LD) -H512 -T512 -o $@ -e _nostart \
-         -bI:$(POSTGRES_EXP) -bE:$*$(EXPSUFF) \
-         $*.o @MATH_LIB@ -lc 2>/dev/null
-endif
-
-#---------------------------------------------------------------------------
-
-ifeq ($(PORTNAME), alpha)
-%.so:  %.o
-       $(LD) -shared -expect_unresolved '*' -o $@ $<
-endif
-
-#--------------------------------------------------------------------------
-
-ifeq ($(PORTNAME), dgux)
-%.so: %.o
-       $(CC) -shared -o $@ $<
-
-YACC= bison -y
-
-endif
-
-#----------------------------------------------------------------------------
-
-ifeq ($(PORTNAME), hpux)
-
-#ifdef ENFORCE_ALIGNMENT
-#   CFLAGS_BE= -DNOFIXADE
-#else
-#   HPUX_VERS:= $(shell uname -r)
-#   HPUX_MAJOR= ${HPUX_VERS:R:E}
-#   HPUX_MINOR= ${HPUX_VERS:E}
-#   ifeq ($(HPUX_MAJOR), 08)
-#      CFLAGS_BE+= +u -DHP_S500_ALIGN
-#      LDFLAGS_BE+= +u
-#   else
-#   ifeq ($(HPUX_MAJOR), 09)
-#      ifeq ($(CC), cc)
-#         CFLAGS_BE+= +u4 
-#         LDFLAGS_BE+= +u4
-#      endif
-#   endif
-#   endif
-#endif
-
-%.sl: %.o
-       $(LD) -b -o $@ $<
-
-endif
-
-#--------------------------------------------------------------------------
-
-ifeq ($(PORTNAME), i386_solaris)
-# cc won't work!
-
-%.so: %.o
-       $(LD) -G -Bdynamic -o $@ $<
-
-endif
-
-#----------------------------------------------------------------------------
-
-ifeq ($(PORTNAME), irix5)
-
-# RANLIB is not used on IRIX 5
-RANLIB= touch
-
-%.so: %.o
-       $(LD) -G -Bdynamic -o $@ $< $(LDFLAGS)
-
-endif
-
-#---------------------------------------------------------------------------
-
-ifeq ($(PORTNAME), linux)
-ifdef LINUX_ELF
-LDFLAGS+= -rdynamic
-endif
-MK_NO_LORDER= true
-
-%.so: %.o
-       $(CC) -shared -o $@ $<
-
-endif
-
-#---------------------------------------------------------------------------
-
-ifeq ($(PORTNAME), sunos4)
-%.so: %.o
-       $(LD) -dc -dp -Bdynamic -o $@ $<
-endif
-
-#----------------------------------------------------------------------------
-
-ifeq ($(PORTNAME), sparc_solaris)
-
-%.so: %.o
-       $(LD) -G -Bdynamic -o $@ $<
-
-endif
-
-#-----------------------------------------------------------------------------
-
-ifeq ($(PORTNAME), svr4)
-YACC= bison -y
-
-# MAKE_EXPORTS is required for svr4 loaders that want a file of
-# symbol names to tell them what to export/import.
-MAKE_EXPORTS= true
-
-LDFLAGS+= /usr/ucblib/libucb.a -LD-Blargedynsym
-
-%.so: %.o
-       $(LD) -G -Bdynamic -o $@ $<
-
-endif
-
-#---------------------------------------------------------------------------
-
-ifeq ($(PORTNAME), ultrix4)
-# install creates intermediate directories
-NO_BEFOREINSTL= true
-endif
-
-
-#-----------------------------------------------------------------------------
+include $(SRCDIR)/Makefile.port
 
+##############################################################################
 #
-#      The univel port is almost guaranteed NOT to work yet.
+# Customization.
 #
-ifeq ($(PORTNAME), univel)
-YACC= bison -y
-
-# MAKE_EXPORTS is required for svr4 loaders that want a file of
-# symbol names to tell them what to export/import.
-#MAKE_EXPORTS= true
-
-%.so: %.o
-       $(LD) -G -Bdynamic -o $@ $<
-
-INSTALL= /usr/ucb/install
-
+# This includes your local customizations if Makefile.custom exists
+# in the source directory.  This file doesn't exist in the original
+# distribution so that it doesn't get overwritten when you upgrade.
+ifneq ($(wildcard $(SRCDIR)/Makefile.custom), )
+include $(SRCDIR)/Makefile.custom
 endif
 
 # This goes here so that customization in Makefile.custom is effective
@@ -481,15 +260,10 @@ endif
 
 ifdef COPT
    CFLAGS+= $(COPT)
-endif
-
-ifndef CASSERT
-   CFLAGS+= -DNO_ASSERT_CHECKING
+   LDFLAGS+= $(COPT)
 endif
 
 ifdef PROFILE
    CFLAGS+= $(PROFILE)
+   LDFLAGS+= $(PROFILE)
 endif
-
-# Globally pass PORTNAME
-CFLAGS+= -D$(PORTNAME)