Annotation of mandoc/configure.local.example, Revision 1.36
1.36 ! schwarze 1: # $Id: configure.local.example,v 1.35 2019/03/04 13:01:57 schwarze Exp $
1.1 schwarze 2: #
1.35 schwarze 3: # Copyright (c) 2014-2019 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:
1.35 schwarze 70: # When man(1) is called with the -S option and no manual page is
71: # found matching the requested name and the requested architecture,
72: # it tries to figure out whether the requested architecture is valid
73: # for the present operating system. Normally, ./configure detects
74: # the operating system using uname(1). If that fails or is not
75: # desired, either of the following lines can be used:
76:
77: OSENUM=MANDOC_OS_NETBSD
78: OSENUM=MANDOC_OS_OPENBSD
79: OSENUM=MANDOC_OS_OTHER
80:
1.1 schwarze 81: # In manual pages written in the mdoc(7) language, the operating system
82: # version is displayed in the page footer line. If an operating system
83: # is specified as an argument to the .Os macro, that is always used.
84: # If the .Os macro has no argument and an operation system is specified
85: # with the mandoc(1) -Ios= command line option, that is used.
86: # Otherwise, the uname(3) library function is called at runtime to find
87: # the name of the operating system.
88: # If you do not want uname(3) to be called but instead want a fixed
89: # string to be used, use the following line:
90:
1.35 schwarze 91: OSNAME="OpenBSD 6.5"
1.1 schwarze 92:
93: # The following installation directories are used.
94: # It is possible to set only one or a few of these variables,
95: # there is no need to copy the whole block.
96: # Even if you set PREFIX to something else, the other variables
97: # pick it up without copying them all over.
98:
99: PREFIX="/usr/local"
100: BINDIR="${PREFIX}/bin"
101: SBINDIR="${PREFIX}/sbin"
102: MANDIR="${PREFIX}/man"
1.30 schwarze 103:
104: # If BINDIR and SBINDIR are not subdirectories of the same parent
105: # directory or if the basename(1) of BINDIR differs from "bin",
106: # the relative path from SBINDIR to BINDIR is also needed.
107: # The default is:
108:
109: BIN_FROM_SBIN="../bin"
1.8 schwarze 110:
111: # Some distributions may want to avoid naming conflicts
112: # with the configuration files of other man(1) implementations.
113: # This changes the name of the installed section 5 manual page as well.
1.34 schwarze 114:
1.8 schwarze 115: MANM_MANCONF="mandoc.conf" # default is "man.conf"
1.5 schwarze 116:
1.2 schwarze 117: # Some distributions may want to avoid naming conflicts among manuals.
118: # If you want to change the names of installed section 7 manual pages,
119: # the following alternative names are suggested.
120: # The suffix ".7" will automatically be appended.
121: # It is possible to set only one or a few of these variables,
122: # there is no need to copy the whole block.
123:
1.27 schwarze 124: MANM_MAN="mandoc_man" # default is "man"
1.2 schwarze 125: MANM_MDOC="mandoc_mdoc" # default is "mdoc"
126: MANM_ROFF="mandoc_roff" # default is "roff"
127: MANM_EQN="mandoc_eqn" # default is "eqn"
128: MANM_TBL="mandoc_tbl" # default is "tbl"
129:
1.15 schwarze 130: # Some distributions may want to avoid naming conflicts with
131: # other man(1), apropos(1), makewhatis(8), or soelim(1) utilities.
1.9 schwarze 132: # If you want to change the names of binary programs,
133: # the following alternative names are suggested.
134: # Using different names is possible as well.
1.15 schwarze 135: # This changes the names of the installed section 1 and section 8
136: # manual pages as well.
137: # It is possible to set only one or two of these variables,
138: # there is no need to copy the whole block.
1.5 schwarze 139:
140: BINM_MAN=mman # default is "man"
1.15 schwarze 141: BINM_APROPOS=mapropos # default is "apropos"
142: BINM_WHATIS=mwhatis # default is "whatis"
143: BINM_MAKEWHATIS=mandocdb # default is "makewhatis"
1.9 schwarze 144: BINM_SOELIM=msoelim # default is "soelim"
1.28 schwarze 145:
146: # Some distributions do not want hardlinks
147: # between installed binary programs.
148: # Set the following variable to use symbolic links instead.
149: # It is also used for links between manual pages.
150: # It is only used by the install* targets.
151: # When using this, DESTDIR must be empty or an absolute path.
152:
153: LN="ln -sf" # default is "ln -f"
1.5 schwarze 154:
1.11 schwarze 155: # Before falling back to the bundled version of the ohash(3) hashing
156: # library, autoconfiguration tries the following linker flag to
157: # link against your system version. If you do have ohash(3) on
158: # your system but it needs different linker flags, set the following
159: # variable to specify the required linker flags.
160:
161: LD_OHASH="-lutil"
162:
1.17 schwarze 163: # Some platforms may need an additional linker flag for nanosleep(2).
164: # If none is needed or it is -lrt, it is autodetected.
165: # Otherwise, set the following variable.
1.11 schwarze 166:
1.17 schwarze 167: LD_NANOSLEEP="-lrt"
1.24 schwarze 168:
169: # Some platforms may need an additional linker flag for recvmsg(2).
170: # If none is needed or it is -lsocket, it is autodetected.
171: # Otherwise, set the following variable.
172:
173: LD_RECVMSG="-lsocket"
1.17 schwarze 174:
175: # Some platforms might need additional linker flags to link against
176: # libmandoc that are not autodetected, though no such cases are
177: # currently known.
178:
179: LDADD="-lm"
1.12 schwarze 180:
181: # Some systems may want to set additional linker flags for all the
182: # binaries, not only for those using libmandoc, for example for
183: # hardening options.
184:
185: LDFLAGS="-Wl,-z,relro"
1.11 schwarze 186:
1.1 schwarze 187: # It is possible to change the utility program used for installation
188: # and the modes files are installed with. The defaults are:
189:
190: INSTALL="install"
191: INSTALL_PROGRAM="${INSTALL} -m 0555"
192: INSTALL_LIB="${INSTALL} -m 0444"
193: INSTALL_MAN="${INSTALL} -m 0444"
194: INSTALL_DATA="${INSTALL} -m 0444"
195:
1.3 schwarze 196: # When using the "homebrew" package manager on Mac OS X, the actual
197: # manuals are located in a so-called "cellar" and only symlinked
198: # into the manual trees. To allow mandoc to follow such symlinks,
199: # you have to specify the physical location of the cellar as returned
200: # by realpath(3), for example:
201:
1.4 schwarze 202: PREFIX="/usr/local"
203: HOMEBREWDIR="${PREFIX}/Cellar"
1.22 schwarze 204:
205: # --- user settings for the mandoc(3) library --------------------------
206:
207: # By default, libmandoc.a is not installed. It is almost never needed
208: # because there is almost no non-mandoc software out there using this
209: # library. The one notable exception is NetBSD apropos(1).
210: # So, when building for the NetBSD base system - but not for NetBSD
211: # ports nor for pkgsrc! - you may want the following:
212:
213: INSTALL_LIBMANDOC=1
214:
215: # The following settings are only used when INSTALL_LIBMANDOC is set.
216:
217: INCLUDEDIR="${PREFIX}/include/mandoc"
218: LIBDIR="${PREFIX}/lib/mandoc"
1.1 schwarze 219:
1.14 schwarze 220: # --- user settings related to man.cgi ---------------------------------
1.1 schwarze 221:
222: # By default, building man.cgi(8) is disabled. To enable it, copy
223: # cgi.h.example to cgi.h, edit it, and use the following line.
224:
225: BUILD_CGI=1
226:
227: # The remaining settings in this section are only relevant if BUILD_CGI
228: # is enabled. Otherwise, they have no effect either way.
229:
1.34 schwarze 230: # By default, man.cgi(8) is linked statically if the compiler supports
231: # the -static option. If automatic detection fails, you can force
232: # static linking of man.cgi(8).
1.1 schwarze 233:
1.34 schwarze 234: STATIC="-static"
1.1 schwarze 235:
1.34 schwarze 236: # Some systems may require -pthread for static linking:
1.1 schwarze 237:
238: STATIC="-static -pthread"
239:
1.34 schwarze 240: # If static linking works in general but not with additional libraries
241: # like -lrt or -lz, you can force dynamic linking. This may for
242: # example be required on SunOS 5.9.
243:
244: STATIC=" "
245:
1.1 schwarze 246: # Some directories.
247: # This works just like PREFIX, see above.
248:
249: WWWPREFIX="/var/www"
250: HTDOCDIR="${WWWPREFIX}/htdocs"
251: CGIBINDIR="${WWWPREFIX}/cgi-bin"
1.23 schwarze 252:
253: # --- user settings related to catman ----------------------------------
254:
255: # By default, building mandocd(8) and catman(8) is disabled.
256: # To enable it, use the following line.
1.25 schwarze 257: # It does not work on SunOS 5.10 because there is no mkdirat(2)
258: # nor on SunOS 5.9 which also lacks CMSG_LEN(3) and CMSG_SPACE(3).
1.23 schwarze 259:
260: BUILD_CATMAN=1
1.26 schwarze 261:
262: # Install catman(8) with a different name.
263: # See BINM_MAN above for details of how this works.
264:
1.27 schwarze 265: BINM_CATMAN=mcatman # default is "catman"
1.1 schwarze 266:
267: # --- settings that rarely need to be touched --------------------------
268:
269: # Do not set these variables unless you really need to.
270:
271: # You can manually override the compiler to be used.
272: # But that's rarely useful because ./configure asks your make(1)
273: # which compiler to use, and that answer will hardly be wrong.
274:
275: CC=cc
276:
1.34 schwarze 277: # Because the system compiler may not provide <stdint.h>,
278: # SunOS 5.9 may need:
279:
280: CC=gcc
281:
1.13 schwarze 282: # IBM AIX may need:
283:
284: CC=xlc
285:
1.34 schwarze 286: # Normally, leave CFLAGS unset. In that case, -g will automatically
287: # be used, and various -W options will be added if the compiler
288: # supports them. If you define CFLAGS manually, it will be used
289: # unchanged, and nothing will be added.
1.13 schwarze 290:
291: CFLAGS="-g"
1.1 schwarze 292:
293: # In rare cases, it may be required to skip individual automatic tests.
294: # Each of the following variables can be set to 0 (test will not be run
295: # and will be regarded as failed) or 1 (test will not be run and will
296: # be regarded as successful).
297:
298: HAVE_DIRENT_NAMLEN=0
1.20 schwarze 299: HAVE_ENDIAN=0
1.19 schwarze 300: HAVE_EFTYPE=0
1.11 schwarze 301: HAVE_ERR=0
1.21 schwarze 302: HAVE_FTS=0 # Setting this implies HAVE_FTS_COMPARE_CONST=0.
303: HAVE_FTS_COMPARE_CONST=0 # Setting this implies HAVE_FTS=1.
1.11 schwarze 304: HAVE_GETLINE=0
1.1 schwarze 305: HAVE_GETSUBOPT=0
1.11 schwarze 306: HAVE_ISBLANK=0
1.36 ! schwarze 307: HAVE_LESS_T=0
1.11 schwarze 308: HAVE_MKDTEMP=0
1.20 schwarze 309: HAVE_NTOHL=0
1.29 schwarze 310: HAVE_O_DIRECTORY=0
1.15 schwarze 311: HAVE_OHASH=0
1.19 schwarze 312: HAVE_PATH_MAX=0
1.11 schwarze 313: HAVE_PLEDGE=0
314: HAVE_PROGNAME=0
1.1 schwarze 315: HAVE_REALLOCARRAY=0
1.31 schwarze 316: HAVE_RECALLOCARRAY=0
1.11 schwarze 317: HAVE_REWB_BSD=0
318: HAVE_REWB_SYSV=0
1.1 schwarze 319: HAVE_STRCASESTR=0
1.11 schwarze 320: HAVE_STRINGLIST=0
1.1 schwarze 321: HAVE_STRLCAT=0
322: HAVE_STRLCPY=0
323: HAVE_STRPTIME=0
324: HAVE_STRSEP=0
1.6 schwarze 325: HAVE_STRTONUM=0
1.20 schwarze 326: HAVE_SYS_ENDIAN=0
1.11 schwarze 327: HAVE_VASPRINTF=0
328: HAVE_WCHAR=0
CVSweb