Annotation of mandoc/configure.local.example, Revision 1.34
1.34 ! schwarze 1: # $Id: configure.local.example,v 1.33 2017/07/20 16:24:53 schwarze Exp $
1.1 schwarze 2: #
1.34 ! schwarze 3: # Copyright (c) 2014,2015,2016,2017,2018 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.34 ! schwarze 80: OSNAME="OpenBSD 6.3"
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.
1.34 ! schwarze 103:
1.8 schwarze 104: MANM_MANCONF="mandoc.conf" # default is "man.conf"
1.5 schwarze 105:
1.2 schwarze 106: # Some distributions may want to avoid naming conflicts among manuals.
107: # If you want to change the names of installed section 7 manual pages,
108: # the following alternative names are suggested.
109: # The suffix ".7" will automatically be appended.
110: # It is possible to set only one or a few of these variables,
111: # there is no need to copy the whole block.
112:
1.27 schwarze 113: MANM_MAN="mandoc_man" # default is "man"
1.2 schwarze 114: MANM_MDOC="mandoc_mdoc" # default is "mdoc"
115: MANM_ROFF="mandoc_roff" # default is "roff"
116: MANM_EQN="mandoc_eqn" # default is "eqn"
117: MANM_TBL="mandoc_tbl" # default is "tbl"
118:
1.15 schwarze 119: # Some distributions may want to avoid naming conflicts with
120: # other man(1), apropos(1), makewhatis(8), or soelim(1) utilities.
1.9 schwarze 121: # If you want to change the names of binary programs,
122: # the following alternative names are suggested.
123: # Using different names is possible as well.
1.15 schwarze 124: # This changes the names of the installed section 1 and section 8
125: # manual pages as well.
126: # It is possible to set only one or two of these variables,
127: # there is no need to copy the whole block.
1.5 schwarze 128:
129: BINM_MAN=mman # default is "man"
1.15 schwarze 130: BINM_APROPOS=mapropos # default is "apropos"
131: BINM_WHATIS=mwhatis # default is "whatis"
132: BINM_MAKEWHATIS=mandocdb # default is "makewhatis"
1.9 schwarze 133: BINM_SOELIM=msoelim # default is "soelim"
1.28 schwarze 134:
135: # Some distributions do not want hardlinks
136: # between installed binary programs.
137: # Set the following variable to use symbolic links instead.
138: # It is also used for links between manual pages.
139: # It is only used by the install* targets.
140: # When using this, DESTDIR must be empty or an absolute path.
141:
142: LN="ln -sf" # default is "ln -f"
1.5 schwarze 143:
1.11 schwarze 144: # Before falling back to the bundled version of the ohash(3) hashing
145: # library, autoconfiguration tries the following linker flag to
146: # link against your system version. If you do have ohash(3) on
147: # your system but it needs different linker flags, set the following
148: # variable to specify the required linker flags.
149:
150: LD_OHASH="-lutil"
151:
1.17 schwarze 152: # Some platforms may need an additional linker flag for nanosleep(2).
153: # If none is needed or it is -lrt, it is autodetected.
154: # Otherwise, set the following variable.
1.11 schwarze 155:
1.17 schwarze 156: LD_NANOSLEEP="-lrt"
1.24 schwarze 157:
158: # Some platforms may need an additional linker flag for recvmsg(2).
159: # If none is needed or it is -lsocket, it is autodetected.
160: # Otherwise, set the following variable.
161:
162: LD_RECVMSG="-lsocket"
1.17 schwarze 163:
164: # Some platforms might need additional linker flags to link against
165: # libmandoc that are not autodetected, though no such cases are
166: # currently known.
167:
168: LDADD="-lm"
1.12 schwarze 169:
170: # Some systems may want to set additional linker flags for all the
171: # binaries, not only for those using libmandoc, for example for
172: # hardening options.
173:
174: LDFLAGS="-Wl,-z,relro"
1.11 schwarze 175:
1.1 schwarze 176: # It is possible to change the utility program used for installation
177: # and the modes files are installed with. The defaults are:
178:
179: INSTALL="install"
180: INSTALL_PROGRAM="${INSTALL} -m 0555"
181: INSTALL_LIB="${INSTALL} -m 0444"
182: INSTALL_MAN="${INSTALL} -m 0444"
183: INSTALL_DATA="${INSTALL} -m 0444"
184:
1.3 schwarze 185: # When using the "homebrew" package manager on Mac OS X, the actual
186: # manuals are located in a so-called "cellar" and only symlinked
187: # into the manual trees. To allow mandoc to follow such symlinks,
188: # you have to specify the physical location of the cellar as returned
189: # by realpath(3), for example:
190:
1.4 schwarze 191: PREFIX="/usr/local"
192: HOMEBREWDIR="${PREFIX}/Cellar"
1.22 schwarze 193:
194: # --- user settings for the mandoc(3) library --------------------------
195:
196: # By default, libmandoc.a is not installed. It is almost never needed
197: # because there is almost no non-mandoc software out there using this
198: # library. The one notable exception is NetBSD apropos(1).
199: # So, when building for the NetBSD base system - but not for NetBSD
200: # ports nor for pkgsrc! - you may want the following:
201:
202: INSTALL_LIBMANDOC=1
203:
204: # The following settings are only used when INSTALL_LIBMANDOC is set.
205:
206: INCLUDEDIR="${PREFIX}/include/mandoc"
207: LIBDIR="${PREFIX}/lib/mandoc"
1.1 schwarze 208:
1.14 schwarze 209: # --- user settings related to man.cgi ---------------------------------
1.1 schwarze 210:
211: # By default, building man.cgi(8) is disabled. To enable it, copy
212: # cgi.h.example to cgi.h, edit it, and use the following line.
213:
214: BUILD_CGI=1
215:
216: # The remaining settings in this section are only relevant if BUILD_CGI
217: # is enabled. Otherwise, they have no effect either way.
218:
1.34 ! schwarze 219: # By default, man.cgi(8) is linked statically if the compiler supports
! 220: # the -static option. If automatic detection fails, you can force
! 221: # static linking of man.cgi(8).
1.1 schwarze 222:
1.34 ! schwarze 223: STATIC="-static"
1.1 schwarze 224:
1.34 ! schwarze 225: # Some systems may require -pthread for static linking:
1.1 schwarze 226:
227: STATIC="-static -pthread"
228:
1.34 ! schwarze 229: # If static linking works in general but not with additional libraries
! 230: # like -lrt or -lz, you can force dynamic linking. This may for
! 231: # example be required on SunOS 5.9.
! 232:
! 233: STATIC=" "
! 234:
1.1 schwarze 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.34 ! schwarze 266: # Because the system compiler may not provide <stdint.h>,
! 267: # SunOS 5.9 may need:
! 268:
! 269: CC=gcc
! 270:
1.13 schwarze 271: # IBM AIX may need:
272:
273: CC=xlc
274:
1.34 ! schwarze 275: # Normally, leave CFLAGS unset. In that case, -g will automatically
! 276: # be used, and various -W options will be added if the compiler
! 277: # supports them. If you define CFLAGS manually, it will be used
! 278: # unchanged, and nothing will be added.
1.13 schwarze 279:
280: CFLAGS="-g"
1.1 schwarze 281:
282: # In rare cases, it may be required to skip individual automatic tests.
283: # Each of the following variables can be set to 0 (test will not be run
284: # and will be regarded as failed) or 1 (test will not be run and will
285: # be regarded as successful).
286:
287: HAVE_DIRENT_NAMLEN=0
1.20 schwarze 288: HAVE_ENDIAN=0
1.19 schwarze 289: HAVE_EFTYPE=0
1.11 schwarze 290: HAVE_ERR=0
1.21 schwarze 291: HAVE_FTS=0 # Setting this implies HAVE_FTS_COMPARE_CONST=0.
292: HAVE_FTS_COMPARE_CONST=0 # Setting this implies HAVE_FTS=1.
1.11 schwarze 293: HAVE_GETLINE=0
1.1 schwarze 294: HAVE_GETSUBOPT=0
1.11 schwarze 295: HAVE_ISBLANK=0
296: HAVE_MKDTEMP=0
1.20 schwarze 297: HAVE_NTOHL=0
1.29 schwarze 298: HAVE_O_DIRECTORY=0
1.15 schwarze 299: HAVE_OHASH=0
1.19 schwarze 300: HAVE_PATH_MAX=0
1.11 schwarze 301: HAVE_PLEDGE=0
302: HAVE_PROGNAME=0
1.1 schwarze 303: HAVE_REALLOCARRAY=0
1.31 schwarze 304: HAVE_RECALLOCARRAY=0
1.11 schwarze 305: HAVE_REWB_BSD=0
306: HAVE_REWB_SYSV=0
1.1 schwarze 307: HAVE_STRCASESTR=0
1.11 schwarze 308: HAVE_STRINGLIST=0
1.1 schwarze 309: HAVE_STRLCAT=0
310: HAVE_STRLCPY=0
311: HAVE_STRPTIME=0
312: HAVE_STRSEP=0
1.6 schwarze 313: HAVE_STRTONUM=0
1.20 schwarze 314: HAVE_SYS_ENDIAN=0
1.11 schwarze 315: HAVE_VASPRINTF=0
316: HAVE_WCHAR=0
CVSweb