Makefile.global.in
上传用户:blenddy
上传日期:2007-01-07
资源大小:6495k
文件大小:9k
源码类别:

数据库系统

开发平台:

Unix_Linux

  1. #----------------------------------------------------------------------------
  2. #
  3. # Makefile.global--
  4. #    global configuration for the Makefiles
  5. #
  6. # Copyright (c) 1994, Regents of the University of California
  7. #
  8. #
  9. # IDENTIFICATION
  10. #    $Header: /usr/local/cvsroot/pgsql/src/Makefile.global.in,v 1.56.2.1 1999/07/30 04:13:44 scrappy Exp $
  11. #
  12. # NOTES
  13. #    Essentially all Postgres make files include this file and use the
  14. #    variables it sets.
  15. #
  16. #    To override the default setting, create a Makefile.custom in this
  17. #    directory and put your defines there. (Makefile.custom is included
  18. #    near the end of this file).  Sometimes, a variable gets set in
  19. #    Makefile.global after Makefile.custom has been included, so you can't
  20. #    simply set that variable in Makefile.custom.  In those cases, there is
  21. #    often another variable (like CUSTOM_COPT) that you can set in
  22. #    Makefile.custom that influences the later setting of the true variable
  23. #    of interest (like CFLAGS) by Makefile.global.
  24. #
  25. #
  26. #    If you change any of these defines you probably have to
  27. #       make clean; make
  28. #    since no dependencies are created for these. (of course you can
  29. #    be crafty and check what files really depend on them and just remake
  30. #    those).
  31. #
  32. #    Before including this file, you must set the SRCDIR variable to the
  33. #    path of the top of the Postgres source tree (the directory that
  34. #    contains this file).
  35. #
  36. #-------------------------------------------------------------------------
  37. ##############################################################################
  38. #
  39. # CONFIGURATION SECTION
  40. #
  41. # Following are settings pertaining to the postgres build and
  42. # installation.
  43. # of the port.
  44. #
  45. # Ignore BSD_SHLIB if you're not using one of the BSD ports.  But if you
  46. # are, and it's one that doesn't have shared libraries (NetBSD/vax is an
  47. # example of this), set BSD_SHLIB to null in Makefile.custom.
  48. BSD_SHLIB= true
  49. # This is mainly for use on FreeBSD, where we have both a.out and elf
  50. # systems now.  May be applicable to other systems to?
  51. ELF_SYSTEM= @ELF_SYS@
  52. LIBPQDIR:= $(SRCDIR)/interfaces/libpq
  53. # For convenience, POSTGRESDIR is where BINDIR, and LIBDIR
  54. # and other target destinations are rooted.  Of course, each of these is
  55. # changable separately.
  56. POSTGRESDIR= @prefix@
  57. # Where the postgres executables live (changeable by just putting them
  58. # somewhere else and putting that directory in your shell PATH)
  59. BINDIR= $(POSTGRESDIR)/bin
  60. # Where libpq.a gets installed.  You must put it where your loader will
  61. # look for it if you wish to use the -lpq convention.  Otherwise you
  62. # can just put the absolute pathname to the library at the end of your
  63. # command line.
  64. LIBDIR= $(POSTGRESDIR)/lib
  65. # This is the directory where IPC utilities ipcs and ipcrm are located
  66. #
  67. IPCS=@ipcs@
  68. IPCRM=@ipcrm@
  69. # Where the man pages (suitable for use with "man") get installed.
  70. POSTMANDIR= $(POSTGRESDIR)/man
  71. # Where the formatted documents (e.g., the reference manual) get installed.
  72. POSTDOCDIR= $(POSTGRESDIR)/doc
  73. # Where the header files necessary to build frontend programs get installed.
  74. HEADERDIR= $(POSTGRESDIR)/include
  75. # Where the ODBC installation-wide configuration file gets installed.
  76. # This needs to be a client-side readable area, so can't go in $PGDATA.
  77. # - thomas 1998-10-05
  78. ODBCINST= $(POSTGRESDIR)
  79. ##############################################################################
  80. #
  81. # FEATURES
  82. #
  83. # To disable a feature, comment out the entire definition
  84. # (that is, prepend '#', don't set it to "0" or "no").
  85. # Compile libpq++
  86. @HAVECXX@
  87. # Comment out ENFORCE_ALIGNMENT if you do NOT want unaligned access to
  88. # multi-byte types to generate a bus error.
  89. ENFORCE_ALIGNMENT= true
  90. # Comment out PROFILE to generate a profile version of the binaries
  91. #PROFILE= -p -non_shared
  92. # If you plan to use Kerberos for authentication...
  93. #
  94. # Comment out KRBVERS if you do not use Kerberos.
  95. # Set KRBVERS to "4" for Kerberos v4, "5" for Kerberos v5.
  96. # XXX Edit the default Kerberos variables below!
  97. #
  98. #KRBVERS= 5
  99. # Globally pass Kerberos file locations.
  100. # these are used in the postmaster and all libpq applications.
  101. #
  102. # Adjust KRBINCS and KRBLIBS to reflect where you have Kerberos
  103. # include files and libraries installed.
  104. # PG_KRB_SRVNAM is the name under which POSTGRES is registered in
  105. # the Kerberos database (KDC).
  106. # PG_KRB_SRVTAB is the location of the server's keytab file.
  107. #
  108. ifdef KRBVERS
  109. KRBINCS= -I/usr/athena/include
  110. KRBLIBS= -L/usr/athena/lib
  111. KRBFLAGS+= $(KRBINCS) -DPG_KRB_SRVNAM='"postgres_dbms"'
  112.    ifeq ($(KRBVERS), 4)
  113. KRBFLAGS+= -DKRB4
  114. KRBFLAGS+= -DPG_KRB_SRVTAB='"/etc/srvtab"'
  115. KRBLIBS+= -lkrb -ldes
  116.    else
  117.    ifeq ($(KRBVERS), 5)
  118. KRBFLAGS+= -DKRB5
  119. KRBFLAGS+= -DPG_KRB_SRVTAB='"FILE:/krb5/srvtab.postgres"'
  120. KRBLIBS+= -lkrb5 -lcrypto -lcom_err -lisode
  121.    endif
  122.    endif
  123. endif
  124. #
  125. # Please do not edit USE_TCL and USE_TK by hand.
  126. #
  127. USE_TCL= @USE_TCL@
  128. USE_TK= @USE_TK@
  129. USE_PERL= @USE_PERL@
  130. #
  131. # enable native odbc driver support
  132. USE_ODBC= @USE_ODBC@
  133. X_CFLAGS= @X_CFLAGS@
  134. X_LIBS= @X_LIBS@
  135. X11_LIBS= -lX11 @X_EXTRA_LIBS@
  136. #
  137. # enable multi-byte support
  138. # choose one of:
  139. # EUC_JP,EUC_CN,EUC_KR,EUC_TW,UNICODE,MULE_INTERNAL,LATIN1-5
  140. MULTIBYTE=@MULTIBYTE@
  141. ifdef MULTIBYTE
  142. MBFLAGS = -DMULTIBYTE=$(MULTIBYTE)
  143. endif
  144. ##############################################################################
  145. #
  146. # Installation.
  147. #
  148. # For many ports, INSTALL is overridden below.
  149. INSTALL= @INSTALL@
  150. RANLIB= @RANLIB@
  151. INSTLOPTS= @INSTLOPTS@
  152. INSTL_EXE_OPTS= @INSTL_EXE_OPTS@
  153. INSTL_LIB_OPTS= @INSTL_LIB_OPTS@
  154. INSTL_SHLIB_OPTS= @INSTL_SHLIB_OPTS@
  155. ##############################################################################
  156. #
  157. # For building shell scripts:
  158. #
  159. # For many ports, these are overridden below.
  160. # DASH_N is what we put before the text on an echo command when we don't
  161. # want a trailing newline.  BACKSLASH_C is what we put at the end of the
  162. # string on a echo command when we don't want a trailing newline.  On
  163. # some systems, you do echo -n "no newline after this", while on others
  164. # you do echo "no newline after thisc".
  165. DASH_N= @DASH_N@
  166. BACKSLASH_C= @BACKSLASH_C@
  167. #-------------------------------------------------------------
  168. # See the subdirectory template for default settings for these
  169. #-------------------------------------------------------------
  170. CC= @CC@
  171. CPP= @CPP@
  172. YFLAGS= @YFLAGS@
  173. YACC= @YACC@
  174. LEX= @LEX@
  175. AROPT= @AROPT@
  176. CFLAGS= -I$(SRCDIR)/include -I$(SRCDIR)/backend @CPPFLAGS@ @CFLAGS@
  177. CFLAGS_SL= @SHARED_LIB@
  178. LIBS= @LIBS@
  179. LDFLAGS= @LDFLAGS@ $(LIBS)
  180. DLSUFFIX= @DLSUFFIX@
  181. LN_S= @LN_S@
  182. TAR= @tar@
  183. GZCAT= @GZCAT@
  184. ##############################################################################
  185. #
  186. # Additional platform-specific settings
  187. #
  188. # Name of the target platform.
  189. PORTNAME= @PORTNAME@
  190. CPU= @CPU@
  191. # Various grungy items needed to configure some platforms.
  192. HAVE_POSIX_SIGNALS= @HAVE_POSIX_SIGNALS@
  193. HPUXMATHLIB= @HPUXMATHLIB@
  194. include $(SRCDIR)/Makefile.port
  195. ##############################################################################
  196. #
  197. # Customization.
  198. #
  199. # This includes your local customizations if Makefile.custom exists
  200. # in the source directory.  This file doesn't exist in the original
  201. # distribution so that it doesn't get overwritten when you upgrade.
  202. ifneq ($(wildcard $(SRCDIR)/Makefile.custom), )
  203. include $(SRCDIR)/Makefile.custom
  204. endif
  205. # This goes here so that customization in Makefile.custom is effective
  206. ##############################################################################
  207. ifneq ($(CUSTOM_INSTALL),)
  208. INSTALL= $(CUSTOM_INSTALL)
  209. endif
  210. #
  211. # Flags for CC and LD.
  212. ##############################################################################
  213. # COPT
  214. #
  215. # COPT is for options that the sophisticated builder might want to vary
  216. # from one build to the next, like options to build Postgres with debugging
  217. # information included.  COPT is meant to be set on the make command line,
  218. # for example with the command "make COPT=-g".  The value you see set here
  219. # is the default that gets used if the builder does not give a value for
  220. # COPT on his make command.
  221. #
  222. # There is a nonobvious relationship between -O (optimization) and
  223. # -Werror (consider all warnings fatal).  On some systems, if you don't
  224. # optimize, you will always get some warnings because the system header
  225. # files will include some unreferenced functions in the code.  These are
  226. # functions that are supposed to be inline, so there wouldn't ordinarily
  227. # be an "unreferenced" problem, but if you don't enable optimization, no
  228. # inlining can happen, and hence the problem.  Therefore, we include
  229. # if you override -O, you override -Werror as well.
  230. #
  231. # CUSTOM_COPT is something the user may set in Makefile.custom
  232. # Common values for COPT are: -g for debuggable binaries, -m486 if you are
  233. # using a i486 or better.
  234. ifneq ($(CUSTOM_CC),)
  235.   CC= $(CUSTOM_CC)
  236. endif
  237. ifneq ($(CUSTOM_COPT),)
  238.   COPT= $(CUSTOM_COPT)
  239. endif
  240. ifeq ($(CC), gcc)
  241. CFLAGS+= -Wall -Wmissing-prototypes
  242. endif
  243. ifdef COPT
  244.    CFLAGS+= $(COPT)
  245.    LDFLAGS+= $(COPT)
  246. endif
  247. ifdef PROFILE
  248.    CFLAGS+= $(PROFILE)
  249.    LDFLAGS+= $(PROFILE)
  250. endif