summaryrefslogtreecommitdiffstats
path: root/html/makedefs.1.html
blob: ce6725713b148c82a1d53c2d054792ee7f5d6005 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/loose.dtd">
<html> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel='stylesheet' type='text/css' href='postfix-doc.css'>
<title> Postfix manual - makedefs(1) </title>
</head> <body> <pre>
MAKEDEFS(1)                                                        MAKEDEFS(1)

<b>NAME</b>
       makedefs - Postfix makefile configuration utility

<b>SYNOPSIS</b>
       <b>make makefiles</b> <i>name=value...</i>

<b>DESCRIPTION</b>
       The  <b>makedefs</b> command identifies the compilation environment, and emits
       macro definitions on the standard output stream that can  be  prepended
       to  template  Makefiles.   These macros implement an internal interface
       and are subject to change without notice.

<b>NAME=VALUE OVERRIDES</b>
       Default settings can be overruled by  specifying  them  as  environment
       variables  (or  as  name=value  pairs  on the "make" command line). Use
       quotes if variables contain whitespace or shell meta characters.

       The command "<b>make makefiles  name=value...</b>"  will  replace  the  string
       <b>MAIL_VERSION</b>   at   the  end  of  a  value  with  the  Postfix  version
       (<i>major.minor.patchlevel</i> for a stable release,  <i>major.minor-date</i>  for  a
       development  release).  Do not try to specify something like <b>$<a href="postconf.5.html#mail_version">mail_ver</a>-</b>
       <b><a href="postconf.5.html#mail_version">sion</a></b>: that produces inconsistent results with different implementations
       of the make(1) command.

       <b>AUXLIBS=</b><i>object</i><b>_</b><i>library...</i>
              Specifies  one or more non-default object libraries. Postfix 3.0
              and later specify some of their  database  library  dependencies
              with  <a href="CDB_README.html">AUXLIBS_CDB</a>,  <a href="LDAP_README.html">AUXLIBS_LDAP</a>, <a href="LMDB_README.html">AUXLIBS_LMDB</a>, <a href="MONGODB_README.html">AUXLIBS_MONGODB</a>,
              <a href="MYSQL_README.html">AUXLIBS_MYSQL</a>, <a href="PCRE_README.html">AUXLIBS_PCRE</a>,  <a href="PGSQL_README.html">AUXLIBS_PGSQL</a>,  AUXLIBS_SDBM,  and
              <a href="SQLITE_README.html">AUXLIBS_SQLITE</a>, respectively.

       <b>CC=</b><i>compiler</i><b>_</b><i>command</i>
              Specifies  a  non-default compiler. On many systems, the default
              is <b>gcc</b>.

       <b>CCARGS=</b><i>compiler</i><b>_</b><i>arguments</i>
              Specifies  non-default  compiler  arguments,  for   example,   a
              non-default  <i>include</i>  directory.   The  following directives are
              special:

              <b>-DNO_DB</b>
                     Do not build with Berkeley DB support.

              <b>-DNO_DEVPOLL</b>
                     Do not build with Solaris /dev/poll support.  By default,
                     /dev/poll  support  is  compiled in on platforms that are
                     known to support it.

              <b>-DNO_DNSSEC</b>
                     Do not build with DNSSEC support, even  if  the  resolver
                     library appears to support it.

              <b>-DNO_EPOLL</b>
                     Do not build with Linux EPOLL support.  By default, EPOLL
                     support is compiled in on platforms  that  are  known  to
                     support it.

              <b>-DNO_EAI</b>
                     Do not build with EAI (SMTPUTF8) support. By default, EAI
                     support is compiled in when the "pkg-config"  command  is
                     found, or the deprecated "icu-config" command.

              <b>-DNO_INLINE</b>
                     Do  not  require  support  for  C99  "inline"  functions.
                     Instead,    implement     argument     typechecks     for
                     non-(printf/scanf)-like  functions with ternary operators
                     and unreachable code.

              <b>-DNO_IPV6</b>
                     Do not build with IPv6 support.  By default, IPv6 support
                     is  compiled  in on platforms that are known to have IPv6
                     support.

                     Note: this directive is for debugging and  testing  only.
                     It  is  not  guaranteed  to work on all platforms. If you
                     don't want IPv6 support, set "<a href="postconf.5.html#inet_protocols">inet_protocols</a> =  ipv4"  in
                     <a href="postconf.5.html">main.cf</a>.

              <b>-DNO_IP_CYRUS_SASL_AUTH</b>
                     Don't  pass remote SMTP client and Postfix SMTP server IP
                     address and port information to the Cyrus  SASL  library.
                     This is compatible with Postfix &lt; 3.2.

              <b>-DNO_KQUEUE</b>
                     Do  not  build  with FreeBSD/NetBSD/OpenBSD/MacOSX KQUEUE
                     support.  By default, KQUEUE support is  compiled  in  on
                     platforms that are known to support it.

              <b>-DNO_NIS</b>
                     Do not build with NIS or NISPLUS support. Support for NIS
                     is unavailable on some recent Linux distributions.

              <b>-DNO_NISPLUS</b>
                     Do not build with NISPLUS support. Support for NISPLUS is
                     unavailable on some recent Solaris distributions.

              <b>-DNO_PCRE</b>
                     Do not build with PCRE support.  By default, PCRE support
                     is compiled in when the <b>pcre2-config</b> or <b>pcre-config</b> util-
                     ity are installed.

              <b>-DNO_POSIX_GETPW_R</b>
                     Disable support for POSIX getpwnam_r/getpwuid_r.

              <b>-DNO_RES_NCALLS</b>
                     Do   not   build  with  the  threadsafe  resolver(5)  API
                     (res_ninit() etc.).

              <b>-DNO_SIGSETJMP</b>
                     Use  setjmp()/longjmp()   instead   of   sigsetjmp()/sig-
                     longjmp().   By  default,  Postfix  uses sigsetjmp()/sig-
                     longjmp() when they appear to work.

              <b>-DNO_SNPRINTF</b>
                     Use sprintf() instead of snprintf(). By default,  Postfix
                     uses snprintf() except on ancient systems.

       <b>DEBUG=</b><i>debug</i><b>_</b><i>level</i>
              Specifies  a  non-default  debugging  level.  The default is <b>-g</b>.
              Specify <b>DEBUG=</b> to turn off debugging.

       <b>OPT=</b><i>optimization</i><b>_</b><i>level</i>
              Specifies a non-default optimization level. The default  is  <b>-O</b>.
              Specify <b>OPT=</b> to turn off optimization.

       <b>POSTFIX_INSTALL_OPTS=</b><i>-option...</i>
              Specifies  options for the postfix-install command, separated by
              whitespace.   Currently,   the   only   supported   option    is
              <b>-keep-build-mtime</b>.

       <b>SHLIB_CFLAGS=</b><i>flags</i>
              Override  the  compiler  flags  (typically, "-fPIC") for Postfix
              dynamically-linked libraries and database plugins.

              This feature was introduced with Postfix 3.0.

       <b>SHLIB_RPATH=</b><i>rpath</i>
              Override the  runpath  (typically,  "'-Wl,-rpath,${SHLIB_DIR}'")
              for Postfix dynamically-linked libraries.

              This feature was introduced with Postfix 3.0.

       <b>SHLIB_SUFFIX=</b><i>suffix</i>
              Override  the  filename  suffix  (typically,  ".so") for Postfix
              dynamically-linked libraries and database plugins.

              This feature was introduced with Postfix 3.0.

       <b>shared=yes</b>

       <b>shared=no</b>
              Enable  (disable)   Postfix   builds   with   dynamically-linked
              libraries typically named $<a href="postconf.5.html#shlib_directory">shlib_directory</a>/libpostfix-*.so.*.

              This feature was introduced with Postfix 3.0.

       <b>dynamicmaps=yes</b>

       <b>dynamicmaps=no</b>
              Enable  (disable)  Postfix  builds  with  the configuration file
              $<a href="postconf.5.html#meta_directory">meta_directory</a>/dynamicmaps.cf and dynamically-loadable database
              plugins  typically  named  postfix-*.so.*.   The setting "dynam-
              icmaps=yes"  implicitly   enables   Postfix   dynamically-linked
              libraries.

              This feature was introduced with Postfix 3.0.

       <b>pie=yes</b>

       <b>pie=no</b> Enable  (disable)  Postfix builds with position-independent exe-
              cutables, on platforms where this is supported.

              This feature was introduced with Postfix 3.0.

       <i>installation</i><b>_</b><i>parameter</i><b>=</b><i>value</i>...
              Override the compiled-in default value of the specified  instal-
              lation  parameter(s).  The following parameters are supported in
              this context:

              <a href="postconf.5.html#command_directory">command_directory</a> <a href="postconf.5.html#config_directory">config_directory</a> <a href="postconf.5.html#daemon_directory">daemon_directory</a>  <a href="postconf.5.html#data_directory">data_direc</a>-
              <a href="postconf.5.html#data_directory">tory</a>  <a href="postconf.5.html#default_database_type">default_database_type</a>  <a href="postconf.5.html#html_directory">html_directory</a> <a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a>
              <a href="postconf.5.html#mailq_path">mailq_path</a>  <a href="postconf.5.html#manpage_directory">manpage_directory</a>   <a href="postconf.5.html#meta_directory">meta_directory</a>   <a href="postconf.5.html#newaliases_path">newaliases_path</a>
              <a href="postconf.5.html#queue_directory">queue_directory</a>  <a href="postconf.5.html#readme_directory">readme_directory</a>  <a href="postconf.5.html#sendmail_path">sendmail_path</a> <a href="postconf.5.html#shlib_directory">shlib_directory</a>
              <a href="postconf.5.html#openssl_path">openssl_path</a>

              See the <a href="postconf.5.html">postconf(5)</a> manpage for a description of  these  parame-
              ters.

              This feature was introduced with Postfix 3.0.

       <b>WARN=</b><i>warning</i><b>_</b><i>flags</i>
              Specifies  non-default gcc compiler warning options for use when
              "make" is invoked in a source subdirectory only.

<b>LICENSE</b>
       The Secure Mailer license must be distributed with this software.

<b>AUTHOR(S)</b>
       Wietse Venema
       IBM T.J. Watson Research
       P.O. Box 704
       Yorktown Heights, NY 10598, USA

       Wietse Venema
       Google, Inc.
       111 8th Avenue
       New York, NY 10011, USA

                                                                   MAKEDEFS(1)
</pre> </body> </html>