Annotation of mandoc/configure.local.example, Revision 1.33
1.33 ! schwarze 1: # $Id: configure.local.example,v 1.32 2017/07/01 09:47:30 schwarze Exp $
1.1 schwarze 2: #
1.28 schwarze 3: # Copyright (c) 2014, 2015, 2016, 2017 Ingo Schwarze <schwarze@openbsd.org>
1.1 schwarze 4: #
5: # Permission to use, copy, modify, and distribute this software for any
6: # purpose with or without fee is hereby granted, provided that the above
7: # copyright notice and this permission notice appear in all copies.
8: #
9: # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10: # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11: # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12: # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13: # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14: # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15: # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16:
17: # For all settings documented in this file, there are reasonable
18: # defaults and/or the ./configure script attempts autodetection.
19: # Consequently, you only need to create a file ./configure.local
20: # and put any of these settings into it if ./configure autodetection
21: # fails or if you want to make different choices for other reasons.
22:
1.33 ! schwarze 23: # If autodetection fails, please tell <tech@mandoc.bsd.lv>.
1.1 schwarze 24:
25: # We recommend that you write ./configure.local from scratch and
26: # only put the lines there you need. This file contains examples.
27: # It is not intended as a template to be copied as a whole.
28:
29: # --- user settings relevant for all builds ----------------------------
30:
31: # For -Tutf8 and -Tlocale operation, mandoc(1) requires <locale.h>
32: # providing setlocale(3) and <wchar.h> providing wcwidth(3) and
33: # putwchar(3) with a wchar_t storing UCS-4 values. Theoretically,
34: # the latter should be tested with the __STDC_ISO_10646__ feature
35: # macro. In practice, many <wchar.h> headers do not provide that
36: # macro even though they treat wchar_t as UCS-4. So the automatic
37: # test only checks that wchar_t is wide enough, that is, at least
38: # four bytes.
39:
40: # The following line forces multi-byte support.
41: # If your C library does not treat wchar_t as UCS-4, the UTF-8 output
42: # mode will print garbage.
43:
44: HAVE_WCHAR=1
45:
46: # The following line disables multi-byte support.
47: # The output modes -Tutf8 and -Tlocale will be the same as -Tascii.
48:
49: HAVE_WCHAR=0
1.18 schwarze 50:
51: # For -Tutf8 mode, mandoc needs to set an arbitrary locale having
52: # a UTF-8 character set. If autodetection of a suitable locale
53: # fails or selects an undesirable locale, you can manually choose
54: # the locale for -Tutf8 mode:
55:
56: UTF8_LOCALE=en_US.UTF-8
1.7 schwarze 57:
58: # When man(1) or apropos(1) is called without -m and -M options,
1.16 schwarze 59: # MANPATH is not set in the environment, and man.conf(5) is not
60: # available, manuals are searched for in the following directory
61: # trees by default.
1.7 schwarze 62:
63: MANPATH_DEFAULT="/usr/share/man:/usr/X11R6/man:/usr/local/man"
1.32 schwarze 64:
65: # Validation of cross references with mandoc -Tlint only looks
66: # for manual pages in the following directories:
67:
68: MANPATH_BASE="/usr/share/man:/usr/X11R6/man"
1.1 schwarze 69:
70: # In manual pages written in the mdoc(7) language, the operating system
71: # version is displayed in the page footer line. If an operating system
72: # is specified as an argument to the .Os macro, that is always used.
73: # If the .Os macro has no argument and an operation system is specified
74: # with the mandoc(1) -Ios= command line option, that is used.
75: # Otherwise, the uname(3) library function is called at runtime to find
76: # the name of the operating system.
77: # If you do not want uname(3) to be called but instead want a fixed
78: # string to be used, use the following line:
79:
1.15 schwarze 80: OSNAME="OpenBSD 6.0"
1.1 schwarze 81:
82: # The following installation directories are used.
83: # It is possible to set only one or a few of these variables,
84: # there is no need to copy the whole block.
85: # Even if you set PREFIX to something else, the other variables
86: # pick it up without copying them all over.
87:
88: PREFIX="/usr/local"
89: BINDIR="${PREFIX}/bin"
90: SBINDIR="${PREFIX}/sbin"
91: MANDIR="${PREFIX}/man"
1.30 schwarze 92:
93: # If BINDIR and SBINDIR are not subdirectories of the same parent
94: # directory or if the basename(1) of BINDIR differs from "bin",
95: # the relative path from SBINDIR to BINDIR is also needed.
96: # The default is:
97:
98: BIN_FROM_SBIN="../bin"
1.8 schwarze 99:
100: # Some distributions may want to avoid naming conflicts
101: # with the configuration files of other man(1) implementations.
102: # This changes the name of the installed section 5 manual page as well.
103: MANM_MANCONF="mandoc.conf" # default is "man.conf"
1.5 schwarze 104:
1.2 schwarze 105: # Some distributions may want to avoid naming conflicts among manuals.
106: # If you want to change the names of installed section 7 manual pages,
107: # the following alternative names are suggested.
108: # The suffix ".7" will automatically be appended.
109: # It is possible to set only one or a few of these variables,
110: # there is no need to copy the whole block.
111:
1.27 schwarze 112: MANM_MAN="mandoc_man" # default is "man"
1.2 schwarze 113: MANM_MDOC="mandoc_mdoc" # default is "mdoc"
114: MANM_ROFF="mandoc_roff" # default is "roff"
115: MANM_EQN="mandoc_eqn" # default is "eqn"
116: MANM_TBL="mandoc_tbl" # default is "tbl"
117:
1.15 schwarze 118: # Some distributions may want to avoid naming conflicts with
119: # other man(1), apropos(1), makewhatis(8), or soelim(1) utilities.
1.9 schwarze 120: # If you want to change the names of binary programs,
121: # the following alternative names are suggested.
122: # Using different names is possible as well.
1.15 schwarze 123: # This changes the names of the installed section 1 and section 8
124: # manual pages as well.
125: # It is possible to set only one or two of these variables,
126: # there is no need to copy the whole block.
1.5 schwarze 127:
128: BINM_MAN=mman # default is "man"
1.15 schwarze 129: BINM_APROPOS=mapropos # default is "apropos"
130: BINM_WHATIS=mwhatis # default is "whatis"
131: BINM_MAKEWHATIS=mandocdb # default is "makewhatis"
1.9 schwarze 132: BINM_SOELIM=msoelim # default is "soelim"
1.28 schwarze 133:
134: # Some distributions do not want hardlinks
135: # between installed binary programs.
136: # Set the following variable to use symbolic links instead.
137: # It is also used for links between manual pages.
138: # It is only used by the install* targets.
139: # When using this, DESTDIR must be empty or an absolute path.
140:
141: LN="ln -sf" # default is "ln -f"
1.5 schwarze 142:
1.11 schwarze 143: # Before falling back to the bundled version of the ohash(3) hashing
144: # library, autoconfiguration tries the following linker flag to
145: # link against your system version. If you do have ohash(3) on
146: # your system but it needs different linker flags, set the following
147: # variable to specify the required linker flags.
148:
149: LD_OHASH="-lutil"
150:
1.15 schwarze 151: # When library autodetection decides to use -L/usr/local/lib,
152: # -I/usr/local/include is automatically added to CFLAGS.
153: # If you manually set LD_OHASH to something including -L/usr/local/lib,
154: # chances are you will also need the following line:
155:
156: CFLAGS="${CFLAGS} -I/usr/local/include"
157:
1.17 schwarze 158: # Some platforms may need an additional linker flag for nanosleep(2).
159: # If none is needed or it is -lrt, it is autodetected.
160: # Otherwise, set the following variable.
1.11 schwarze 161:
1.17 schwarze 162: LD_NANOSLEEP="-lrt"
1.24 schwarze 163:
164: # Some platforms may need an additional linker flag for recvmsg(2).
165: # If none is needed or it is -lsocket, it is autodetected.
166: # Otherwise, set the following variable.
167:
168: LD_RECVMSG="-lsocket"
1.17 schwarze 169:
170: # Some platforms might need additional linker flags to link against
171: # libmandoc that are not autodetected, though no such cases are
172: # currently known.
173:
174: LDADD="-lm"
1.12 schwarze 175:
176: # Some systems may want to set additional linker flags for all the
177: # binaries, not only for those using libmandoc, for example for
178: # hardening options.
179:
180: LDFLAGS="-Wl,-z,relro"
1.11 schwarze 181:
1.1 schwarze 182: # It is possible to change the utility program used for installation
183: # and the modes files are installed with. The defaults are:
184:
185: INSTALL="install"
186: INSTALL_PROGRAM="${INSTALL} -m 0555"
187: INSTALL_LIB="${INSTALL} -m 0444"
188: INSTALL_MAN="${INSTALL} -m 0444"
189: INSTALL_DATA="${INSTALL} -m 0444"
190:
1.3 schwarze 191: # When using the "homebrew" package manager on Mac OS X, the actual
192: # manuals are located in a so-called "cellar" and only symlinked
193: # into the manual trees. To allow mandoc to follow such symlinks,
194: # you have to specify the physical location of the cellar as returned
195: # by realpath(3), for example:
196:
1.4 schwarze 197: PREFIX="/usr/local"
198: HOMEBREWDIR="${PREFIX}/Cellar"
1.22 schwarze 199:
200: # --- user settings for the mandoc(3) library --------------------------
201:
202: # By default, libmandoc.a is not installed. It is almost never needed
203: # because there is almost no non-mandoc software out there using this
204: # library. The one notable exception is NetBSD apropos(1).
205: # So, when building for the NetBSD base system - but not for NetBSD
206: # ports nor for pkgsrc! - you may want the following:
207:
208: INSTALL_LIBMANDOC=1
209:
210: # The following settings are only used when INSTALL_LIBMANDOC is set.
211:
212: INCLUDEDIR="${PREFIX}/include/mandoc"
213: LIBDIR="${PREFIX}/lib/mandoc"
1.1 schwarze 214:
1.14 schwarze 215: # --- user settings related to man.cgi ---------------------------------
1.1 schwarze 216:
217: # By default, building man.cgi(8) is disabled. To enable it, copy
218: # cgi.h.example to cgi.h, edit it, and use the following line.
219:
220: BUILD_CGI=1
221:
222: # The remaining settings in this section are only relevant if BUILD_CGI
223: # is enabled. Otherwise, they have no effect either way.
224:
225: # By default, man.cgi(8) is linked statically.
226: # Some systems do not support static linking, for example Mac OS X.
227: # In that case, use the following line:
228:
229: STATIC=
230:
231: # Some systems, for example Linux, require -pthread for static linking:
232:
233: STATIC="-static -pthread"
234:
235: # Some directories.
236: # This works just like PREFIX, see above.
237:
238: WWWPREFIX="/var/www"
239: HTDOCDIR="${WWWPREFIX}/htdocs"
240: CGIBINDIR="${WWWPREFIX}/cgi-bin"
1.23 schwarze 241:
242: # --- user settings related to catman ----------------------------------
243:
244: # By default, building mandocd(8) and catman(8) is disabled.
245: # To enable it, use the following line.
1.25 schwarze 246: # It does not work on SunOS 5.10 because there is no mkdirat(2)
247: # nor on SunOS 5.9 which also lacks CMSG_LEN(3) and CMSG_SPACE(3).
1.23 schwarze 248:
249: BUILD_CATMAN=1
1.26 schwarze 250:
251: # Install catman(8) with a different name.
252: # See BINM_MAN above for details of how this works.
253:
1.27 schwarze 254: BINM_CATMAN=mcatman # default is "catman"
1.1 schwarze 255:
256: # --- settings that rarely need to be touched --------------------------
257:
258: # Do not set these variables unless you really need to.
259:
260: # You can manually override the compiler to be used.
261: # But that's rarely useful because ./configure asks your make(1)
262: # which compiler to use, and that answer will hardly be wrong.
263:
264: CC=cc
265:
1.13 schwarze 266: # IBM AIX may need:
267:
268: CC=xlc
269:
1.1 schwarze 270: # The default compiler flags are:
271:
272: CFLAGS="-g -W -Wall -Wstrict-prototypes -Wno-unused-parameter -Wwrite-strings"
1.13 schwarze 273:
274: # IBM AIX xlc does not support -W; in that case, please use:
275:
276: CFLAGS="-g"
1.1 schwarze 277:
278: # In rare cases, it may be required to skip individual automatic tests.
279: # Each of the following variables can be set to 0 (test will not be run
280: # and will be regarded as failed) or 1 (test will not be run and will
281: # be regarded as successful).
282:
283: HAVE_DIRENT_NAMLEN=0
1.20 schwarze 284: HAVE_ENDIAN=0
1.19 schwarze 285: HAVE_EFTYPE=0
1.11 schwarze 286: HAVE_ERR=0
1.21 schwarze 287: HAVE_FTS=0 # Setting this implies HAVE_FTS_COMPARE_CONST=0.
288: HAVE_FTS_COMPARE_CONST=0 # Setting this implies HAVE_FTS=1.
1.11 schwarze 289: HAVE_GETLINE=0
1.1 schwarze 290: HAVE_GETSUBOPT=0
1.11 schwarze 291: HAVE_ISBLANK=0
292: HAVE_MKDTEMP=0
1.20 schwarze 293: HAVE_NTOHL=0
1.29 schwarze 294: HAVE_O_DIRECTORY=0
1.15 schwarze 295: HAVE_OHASH=0
1.19 schwarze 296: HAVE_PATH_MAX=0
1.11 schwarze 297: HAVE_PLEDGE=0
298: HAVE_PROGNAME=0
1.1 schwarze 299: HAVE_REALLOCARRAY=0
1.31 schwarze 300: HAVE_RECALLOCARRAY=0
1.11 schwarze 301: HAVE_REWB_BSD=0
302: HAVE_REWB_SYSV=0
1.1 schwarze 303: HAVE_STRCASESTR=0
1.11 schwarze 304: HAVE_STRINGLIST=0
1.1 schwarze 305: HAVE_STRLCAT=0
306: HAVE_STRLCPY=0
307: HAVE_STRPTIME=0
308: HAVE_STRSEP=0
1.6 schwarze 309: HAVE_STRTONUM=0
1.20 schwarze 310: HAVE_SYS_ENDIAN=0
1.11 schwarze 311: HAVE_VASPRINTF=0
312: HAVE_WCHAR=0
CVSweb