1 # Id: configure.local.example,v 1.43 2021/09/20 13:25:42 schwarze Exp 2 # 3 # Copyright (c) 2014-2021 Ingo Schwarze <schwarze (a] openbsd.org> 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 23 # If autodetection fails, please tell <tech (a] mandoc.bsd.lv>. 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 # By default, "cc" is used as the C compiler, but it can be overridden. 32 # For example, the system compiler in SunOS 5.9 may not provide <stdint.h>, 33 # which may require this line: 34 CC=gcc 35 36 # IBM AIX may need: 37 CC=xlc 38 39 # By default, "ar" is used as the library archive builder, but it 40 # can be overridden. For example, NixOS may not have ar(1) in the 41 # PATH, but may want to specify an absolute path instead. 42 AR=ar 43 44 # For -Tutf8 and -Tlocale operation, mandoc(1) requires <locale.h> 45 # providing setlocale(3) and <wchar.h> providing wcwidth(3) and 46 # putwchar(3) with a wchar_t storing UCS-4 values. Theoretically, 47 # the latter should be tested with the __STDC_ISO_10646__ feature 48 # macro. In practice, many <wchar.h> headers do not provide that 49 # macro even though they treat wchar_t as UCS-4. So the automatic 50 # test only checks that wchar_t is wide enough, that is, at least 51 # four bytes. 52 53 # The following line forces multi-byte support. 54 # If your C library does not treat wchar_t as UCS-4, the UTF-8 output 55 # mode will print garbage. 56 57 HAVE_WCHAR=1 58 59 # The following line disables multi-byte support. 60 # The output modes -Tutf8 and -Tlocale will be the same as -Tascii. 61 62 HAVE_WCHAR=0 63 64 # For -Tutf8 mode, mandoc needs to set an arbitrary locale having 65 # a UTF-8 character set. If autodetection of a suitable locale 66 # fails or selects an undesirable locale, you can manually choose 67 # the locale for -Tutf8 mode: 68 69 UTF8_LOCALE=en_US.UTF-8 70 71 # When man(1) or apropos(1) is called without -m and -M options, 72 # MANPATH is not set in the environment, and man.conf(5) is not 73 # available, manuals are searched for in the following directory 74 # trees by default. 75 76 MANPATH_DEFAULT="/usr/share/man:/usr/X11R6/man:/usr/local/man" 77 78 # Validation of cross references with mandoc -Tlint only looks 79 # for manual pages in the following directories: 80 81 MANPATH_BASE="/usr/share/man:/usr/X11R6/man" 82 83 # When man(1) is called with the -S option and no manual page is 84 # found matching the requested name and the requested architecture, 85 # it tries to figure out whether the requested architecture is valid 86 # for the present operating system. Normally, ./configure detects 87 # the operating system using uname(1). If that fails or is not 88 # desired, either of the following lines can be used: 89 90 OSENUM=MANDOC_OS_NETBSD 91 OSENUM=MANDOC_OS_OPENBSD 92 OSENUM=MANDOC_OS_OTHER 93 94 # In manual pages written in the mdoc(7) language, the operating system 95 # version is displayed in the page footer line. If an operating system 96 # is specified as an argument to the .Os macro, that is always used. 97 # If the .Os macro has no argument and an operation system is specified 98 # with the mandoc(1) -Ios= command line option, that is used. 99 # Otherwise, the uname(3) library function is called at runtime to find 100 # the name of the operating system. 101 # If you do not want uname(3) to be called but instead want a fixed 102 # string to be used, use the following line: 103 104 OSNAME="OpenBSD 7.0" 105 106 # The following installation directories are used. 107 # It is possible to set only one or a few of these variables, 108 # there is no need to copy the whole block. 109 # Even if you set PREFIX to something else, the other variables 110 # pick it up without copying them all over. 111 112 PREFIX="/usr/local" 113 BINDIR="${PREFIX}/bin" 114 SBINDIR="${PREFIX}/sbin" 115 MANDIR="${PREFIX}/man" 116 117 # If BINDIR and SBINDIR are not subdirectories of the same parent 118 # directory or if the basename(1) of BINDIR differs from "bin", 119 # the relative path from SBINDIR to BINDIR is also needed. 120 # The default is: 121 122 BIN_FROM_SBIN="../bin" 123 124 # Some distributions may want to avoid naming conflicts 125 # with the configuration files of other man(1) implementations. 126 # This changes the name of the installed section 5 manual page as well. 127 128 MANM_MANCONF="mandoc.conf" # default is "man.conf" 129 130 # Some distributions may want to avoid naming conflicts among manuals. 131 # If you want to change the names of installed section 7 manual pages, 132 # the following alternative names are suggested. 133 # The suffix ".7" will automatically be appended. 134 # It is possible to set only one or a few of these variables, 135 # there is no need to copy the whole block. 136 137 MANM_MAN="mandoc_man" # default is "man" 138 MANM_MDOC="mandoc_mdoc" # default is "mdoc" 139 MANM_ROFF="mandoc_roff" # default is "roff" 140 MANM_EQN="mandoc_eqn" # default is "eqn" 141 MANM_TBL="mandoc_tbl" # default is "tbl" 142 143 # Some distributions may want to avoid naming conflicts with 144 # other man(1), apropos(1), makewhatis(8), or soelim(1) utilities. 145 # If you want to change the names of binary programs, 146 # the following alternative names are suggested. 147 # Using different names is possible as well. 148 # This changes the names of the installed section 1 and section 8 149 # manual pages as well. 150 # It is possible to set only one or two of these variables, 151 # there is no need to copy the whole block. 152 153 BINM_MAN=mman # default is "man" 154 BINM_APROPOS=mapropos # default is "apropos" 155 BINM_WHATIS=mwhatis # default is "whatis" 156 BINM_MAKEWHATIS=mandocdb # default is "makewhatis" 157 BINM_SOELIM=msoelim # default is "soelim" 158 159 # If less(1) is available, it is used as the default manual pager. 160 # Otherwise, more(1) is used: its existence is required by POSIX. 161 # It is possible to force using a different default pager, either 162 # by giving the name of a program found in the PATH, or by giving 163 # an absolute path. 164 165 BINM_PAGER=pg # default is "less" or "more" 166 167 # Some distributions do not want hardlinks 168 # between installed binary programs. 169 # Set the following variable to use symbolic links instead. 170 # It is also used for links between manual pages. 171 # It is only used by the install* targets. 172 # When using this, DESTDIR must be empty or an absolute path. 173 174 LN="ln -sf" # default is "ln -f" 175 176 # Before falling back to the bundled version of the ohash(3) hashing 177 # library, autoconfiguration tries the following linker flag to 178 # link against your system version. If you do have ohash(3) on 179 # your system but it needs different linker flags, set the following 180 # variable to specify the required linker flags. 181 182 LD_OHASH="-lutil" 183 184 # Some platforms may need an additional linker flag for nanosleep(2). 185 # If none is needed or it is -lrt, it is autodetected. 186 # Otherwise, set the following variable. 187 188 LD_NANOSLEEP="-lrt" 189 190 # Some platforms may need an additional linker flag for recvmsg(2). 191 # If none is needed or it is -lsocket, it is autodetected. 192 # Otherwise, set the following variable. 193 194 LD_RECVMSG="-lsocket" 195 196 # Some platforms might need additional linker flags to link against 197 # libmandoc that are not autodetected, though no such cases are 198 # currently known. 199 200 LDADD="-lm" 201 202 # Some systems may want to set additional linker flags for all the 203 # binaries, not only for those using libmandoc, for example for 204 # hardening options. 205 206 LDFLAGS="-Wl,-z,relro" 207 208 # It is possible to change the utility program used for installation 209 # and the modes files are installed with. The defaults are: 210 211 INSTALL="install" 212 INSTALL_PROGRAM="${INSTALL} -m 0555" 213 INSTALL_LIB="${INSTALL} -m 0444" 214 INSTALL_MAN="${INSTALL} -m 0444" 215 INSTALL_DATA="${INSTALL} -m 0444" 216 217 # By default, makewhatis(8) can only read from the paths passed on the 218 # command line or configured in man.conf(5). 219 # But some package managers on some operating systems store manual pages 220 # in separate "cellar" or "store" directories and only symlink them 221 # into the manual trees. 222 # To support one or more such package managers, give makewhatis(8) 223 # read access to the cellars and stores on your system, in the form 224 # of a colon-separated path: 225 226 # Homebrow package manager on Mac OS X: 227 PREFIX="/usr/local" 228 READ_ALLOWED_PATH="${PREFIX}/Cellar" 229 230 # Nix package manager and/or NixOS Linux distribution: 231 READ_ALLOWED_PATH="/nix/store" 232 233 # GNU Guix package manager and/or GNU Guix Linux distribution: 234 READ_ALLOWED_PATH="/gnu/store" 235 236 # If multiple package managers are used concurrently: 237 PREFIX="/usr/local" 238 READ_ALLOWED_PATH="/nix/store:${PREFIX}/Cellar" 239 240 # --- user settings for the mandoc(3) library -------------------------- 241 242 # By default, libmandoc.a is not installed. It is almost never needed 243 # because there is almost no non-mandoc software out there using this 244 # library. The one notable exception is NetBSD apropos(1). 245 # So, when building for the NetBSD base system - but not for NetBSD 246 # ports nor for pkgsrc! - you may want the following: 247 248 INSTALL_LIBMANDOC=1 249 250 # The following settings are only used when INSTALL_LIBMANDOC is set. 251 252 INCLUDEDIR="${PREFIX}/include/mandoc" 253 LIBDIR="${PREFIX}/lib/mandoc" 254 255 # --- user settings related to man.cgi --------------------------------- 256 257 # By default, building man.cgi(8) is disabled. To enable it, copy 258 # cgi.h.example to cgi.h, edit it, and use the following line. 259 260 BUILD_CGI=1 261 262 # The remaining settings in this section are only relevant if BUILD_CGI 263 # is enabled. Otherwise, they have no effect either way. 264 265 # By default, man.cgi(8) is linked statically if the compiler supports 266 # the -static option. If automatic detection fails, you can force 267 # static linking of man.cgi(8). 268 269 STATIC="-static" 270 271 # Some systems may require -pthread for static linking: 272 273 STATIC="-static -pthread" 274 275 # If static linking works in general but not with additional libraries 276 # like -lrt or -lz, you can force dynamic linking. This may for 277 # example be required on SunOS 5.9. 278 279 STATIC=" " 280 281 # Some directories. 282 # This works just like PREFIX, see above. 283 284 WWWPREFIX="/var/www" 285 HTDOCDIR="${WWWPREFIX}/htdocs" 286 CGIBINDIR="${WWWPREFIX}/cgi-bin" 287 288 # --- user settings related to catman ---------------------------------- 289 290 # By default, building mandocd(8) and catman(8) is disabled. 291 # To enable it, use the following line. 292 # It does not work on SunOS 5.10 because there is no mkdirat(2) 293 # nor on SunOS 5.9 which also lacks CMSG_LEN(3) and CMSG_SPACE(3). 294 # It may not work on old releases of Mac OS X either. For example, 295 # Mac OS X 10.4 Tiger provides neither mkdirat(2) nor openat(2). 296 297 BUILD_CATMAN=1 298 299 # Install catman(8) with a different name. 300 # See BINM_MAN above for details of how this works. 301 302 BINM_CATMAN=mcatman # default is "catman" 303 304 # --- settings that rarely need to be touched -------------------------- 305 306 # Do not set these variables unless you really need to. 307 308 # Normally, leave CFLAGS unset. In that case, -g will automatically 309 # be used, and various -W options will be added if the compiler 310 # supports them. If you define CFLAGS manually, it will be used 311 # unchanged, and nothing will be added. 312 313 CFLAGS="-g" 314 315 # In rare cases, it may be required to skip individual automatic tests. 316 # Each of the following variables can be set to 0 (test will not be run 317 # and will be regarded as failed) or 1 (test will not be run and will 318 # be regarded as successful). 319 320 HAVE_ATTRIBUTE=0 321 HAVE_DIRENT_NAMLEN=0 322 HAVE_ENDIAN=0 323 HAVE_EFTYPE=0 324 HAVE_ERR=0 325 HAVE_FTS=0 # Setting this implies HAVE_FTS_COMPARE_CONST=0. 326 HAVE_FTS_COMPARE_CONST=0 # Setting this implies HAVE_FTS=1. 327 HAVE_GETLINE=0 328 HAVE_GETSUBOPT=0 329 HAVE_ISBLANK=0 330 HAVE_LESS_T=0 331 HAVE_MKDTEMP=0 332 HAVE_NTOHL=0 333 HAVE_O_DIRECTORY=0 334 HAVE_OHASH=0 335 HAVE_PATH_MAX=0 336 HAVE_PLEDGE=0 337 HAVE_PROGNAME=0 338 HAVE_REALLOCARRAY=0 339 HAVE_RECALLOCARRAY=0 340 HAVE_REWB_BSD=0 341 HAVE_REWB_SYSV=0 342 HAVE_STRCASESTR=0 343 HAVE_STRINGLIST=0 344 HAVE_STRLCAT=0 345 HAVE_STRLCPY=0 346 HAVE_STRPTIME=0 347 HAVE_STRSEP=0 348 HAVE_STRTONUM=0 349 HAVE_SYS_ENDIAN=0 350 HAVE_VASPRINTF=0 351 HAVE_WCHAR=0 352