=================================================================== RCS file: /cvs/mandoc/configure.local.example,v retrieving revision 1.16 retrieving revision 1.40 diff -u -p -r1.16 -r1.40 --- mandoc/configure.local.example 2016/07/19 22:40:33 1.16 +++ mandoc/configure.local.example 2021/08/07 13:02:10 1.40 @@ -1,6 +1,6 @@ -# $Id: configure.local.example,v 1.16 2016/07/19 22:40:33 schwarze Exp $ +# $Id: configure.local.example,v 1.40 2021/08/07 13:02:10 schwarze Exp $ # -# Copyright (c) 2014, 2015, 2016 Ingo Schwarze +# Copyright (c) 2014-2019 Ingo Schwarze # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above @@ -20,7 +20,7 @@ # and put any of these settings into it if ./configure autodetection # fails or if you want to make different choices for other reasons. -# If autodetection fails, please tell . +# If autodetection fails, please tell . # We recommend that you write ./configure.local from scratch and # only put the lines there you need. This file contains examples. @@ -28,6 +28,14 @@ # --- user settings relevant for all builds ---------------------------- +# By default, "cc" is used as the C compiler, but it can be overridden. +# For example, the system compiler in SunOS 5.9 may not provide , +# which may require this line: +CC=gcc + +# IBM AIX may need: +CC=xlc + # For -Tutf8 and -Tlocale operation, mandoc(1) requires # providing setlocale(3) and providing wcwidth(3) and # putwchar(3) with a wchar_t storing UCS-4 values. Theoretically, @@ -48,6 +56,13 @@ HAVE_WCHAR=1 HAVE_WCHAR=0 +# For -Tutf8 mode, mandoc needs to set an arbitrary locale having +# a UTF-8 character set. If autodetection of a suitable locale +# fails or selects an undesirable locale, you can manually choose +# the locale for -Tutf8 mode: + +UTF8_LOCALE=en_US.UTF-8 + # When man(1) or apropos(1) is called without -m and -M options, # MANPATH is not set in the environment, and man.conf(5) is not # available, manuals are searched for in the following directory @@ -55,6 +70,22 @@ HAVE_WCHAR=0 MANPATH_DEFAULT="/usr/share/man:/usr/X11R6/man:/usr/local/man" +# Validation of cross references with mandoc -Tlint only looks +# for manual pages in the following directories: + +MANPATH_BASE="/usr/share/man:/usr/X11R6/man" + +# When man(1) is called with the -S option and no manual page is +# found matching the requested name and the requested architecture, +# it tries to figure out whether the requested architecture is valid +# for the present operating system. Normally, ./configure detects +# the operating system using uname(1). If that fails or is not +# desired, either of the following lines can be used: + +OSENUM=MANDOC_OS_NETBSD +OSENUM=MANDOC_OS_OPENBSD +OSENUM=MANDOC_OS_OTHER + # In manual pages written in the mdoc(7) language, the operating system # version is displayed in the page footer line. If an operating system # is specified as an argument to the .Os macro, that is always used. @@ -65,7 +96,7 @@ MANPATH_DEFAULT="/usr/share/man:/usr/X11R6/man:/usr/lo # If you do not want uname(3) to be called but instead want a fixed # string to be used, use the following line: -OSNAME="OpenBSD 6.0" +OSNAME="OpenBSD 6.5" # The following installation directories are used. # It is possible to set only one or a few of these variables, @@ -76,13 +107,19 @@ OSNAME="OpenBSD 6.0" PREFIX="/usr/local" BINDIR="${PREFIX}/bin" SBINDIR="${PREFIX}/sbin" -INCLUDEDIR="${PREFIX}/include/mandoc" -LIBDIR="${PREFIX}/lib/mandoc" MANDIR="${PREFIX}/man" +# If BINDIR and SBINDIR are not subdirectories of the same parent +# directory or if the basename(1) of BINDIR differs from "bin", +# the relative path from SBINDIR to BINDIR is also needed. +# The default is: + +BIN_FROM_SBIN="../bin" + # Some distributions may want to avoid naming conflicts # with the configuration files of other man(1) implementations. # This changes the name of the installed section 5 manual page as well. + MANM_MANCONF="mandoc.conf" # default is "man.conf" # Some distributions may want to avoid naming conflicts among manuals. @@ -114,6 +151,23 @@ BINM_WHATIS=mwhatis # default is "whatis" BINM_MAKEWHATIS=mandocdb # default is "makewhatis" BINM_SOELIM=msoelim # default is "soelim" +# If less(1) is available, it is used as the default manual pager. +# Otherwise, more(1) is used: its existence is required by POSIX. +# It is possible to force using a different default pager, either +# by giving the name of a program found in the PATH, or by giving +# an absolute path. + +BINM_PAGER=pg # default is "less" or "more" + +# Some distributions do not want hardlinks +# between installed binary programs. +# Set the following variable to use symbolic links instead. +# It is also used for links between manual pages. +# It is only used by the install* targets. +# When using this, DESTDIR must be empty or an absolute path. + +LN="ln -sf" # default is "ln -f" + # Before falling back to the bundled version of the ohash(3) hashing # library, autoconfiguration tries the following linker flag to # link against your system version. If you do have ohash(3) on @@ -122,19 +176,24 @@ BINM_SOELIM=msoelim # default is "soelim" LD_OHASH="-lutil" -# When library autodetection decides to use -L/usr/local/lib, -# -I/usr/local/include is automatically added to CFLAGS. -# If you manually set LD_OHASH to something including -L/usr/local/lib, -# chances are you will also need the following line: +# Some platforms may need an additional linker flag for nanosleep(2). +# If none is needed or it is -lrt, it is autodetected. +# Otherwise, set the following variable. -CFLAGS="${CFLAGS} -I/usr/local/include" +LD_NANOSLEEP="-lrt" -# Some platforms may need additional linker flags to link against libmandoc -# that are not autodetected. -# For example, Solaris 9 and 10 need -lrt for nanosleep(2). +# Some platforms may need an additional linker flag for recvmsg(2). +# If none is needed or it is -lsocket, it is autodetected. +# Otherwise, set the following variable. -LDADD="-lrt" +LD_RECVMSG="-lsocket" +# Some platforms might need additional linker flags to link against +# libmandoc that are not autodetected, though no such cases are +# currently known. + +LDADD="-lm" + # Some systems may want to set additional linker flags for all the # binaries, not only for those using libmandoc, for example for # hardening options. @@ -150,15 +209,44 @@ INSTALL_LIB="${INSTALL} -m 0444" INSTALL_MAN="${INSTALL} -m 0444" INSTALL_DATA="${INSTALL} -m 0444" -# When using the "homebrew" package manager on Mac OS X, the actual -# manuals are located in a so-called "cellar" and only symlinked -# into the manual trees. To allow mandoc to follow such symlinks, -# you have to specify the physical location of the cellar as returned -# by realpath(3), for example: +# By default, makewhatis(8) can only read from the paths passed on the +# command line or configured in man.conf(5). +# But some package managers on some operating systems store manual pages +# in separate "cellar" or "store" directories and only symlink them +# into the manual trees. +# To support one or more such package managers, give makewhatis(8) +# read access to the cellars and stores on your system, in the form +# of a colon-separated path: +# Homebrow package manager on Mac OS X: PREFIX="/usr/local" -HOMEBREWDIR="${PREFIX}/Cellar" +READ_ALLOWED_PATH="${PREFIX}/Cellar" +# Nix package manager and/or NixOS Linux distribution: +READ_ALLOWED_PATH="/nix/store" + +# GNU Guix package manager and/or GNU Guix Linux distribution: +READ_ALLOWED_PATH="/gnu/store" + +# If multiple package managers are used concurrently: +PREFIX="/usr/local" +READ_ALLOWED_PATH="/nix/store:${PREFIX}/Cellar" + +# --- user settings for the mandoc(3) library -------------------------- + +# By default, libmandoc.a is not installed. It is almost never needed +# because there is almost no non-mandoc software out there using this +# library. The one notable exception is NetBSD apropos(1). +# So, when building for the NetBSD base system - but not for NetBSD +# ports nor for pkgsrc! - you may want the following: + +INSTALL_LIBMANDOC=1 + +# The following settings are only used when INSTALL_LIBMANDOC is set. + +INCLUDEDIR="${PREFIX}/include/mandoc" +LIBDIR="${PREFIX}/lib/mandoc" + # --- user settings related to man.cgi --------------------------------- # By default, building man.cgi(8) is disabled. To enable it, copy @@ -169,16 +257,22 @@ BUILD_CGI=1 # The remaining settings in this section are only relevant if BUILD_CGI # is enabled. Otherwise, they have no effect either way. -# By default, man.cgi(8) is linked statically. -# Some systems do not support static linking, for example Mac OS X. -# In that case, use the following line: +# By default, man.cgi(8) is linked statically if the compiler supports +# the -static option. If automatic detection fails, you can force +# static linking of man.cgi(8). -STATIC= +STATIC="-static" -# Some systems, for example Linux, require -pthread for static linking: +# Some systems may require -pthread for static linking: STATIC="-static -pthread" +# If static linking works in general but not with additional libraries +# like -lrt or -lz, you can force dynamic linking. This may for +# example be required on SunOS 5.9. + +STATIC=" " + # Some directories. # This works just like PREFIX, see above. @@ -186,26 +280,29 @@ WWWPREFIX="/var/www" HTDOCDIR="${WWWPREFIX}/htdocs" CGIBINDIR="${WWWPREFIX}/cgi-bin" -# --- settings that rarely need to be touched -------------------------- +# --- user settings related to catman ---------------------------------- -# Do not set these variables unless you really need to. +# By default, building mandocd(8) and catman(8) is disabled. +# To enable it, use the following line. +# It does not work on SunOS 5.10 because there is no mkdirat(2) +# nor on SunOS 5.9 which also lacks CMSG_LEN(3) and CMSG_SPACE(3). -# You can manually override the compiler to be used. -# But that's rarely useful because ./configure asks your make(1) -# which compiler to use, and that answer will hardly be wrong. +BUILD_CATMAN=1 -CC=cc +# Install catman(8) with a different name. +# See BINM_MAN above for details of how this works. -# IBM AIX may need: +BINM_CATMAN=mcatman # default is "catman" -CC=xlc +# --- settings that rarely need to be touched -------------------------- -# The default compiler flags are: +# Do not set these variables unless you really need to. -CFLAGS="-g -W -Wall -Wstrict-prototypes -Wno-unused-parameter -Wwrite-strings" +# Normally, leave CFLAGS unset. In that case, -g will automatically +# be used, and various -W options will be added if the compiler +# supports them. If you define CFLAGS manually, it will be used +# unchanged, and nothing will be added. -# IBM AIX xlc does not support -W; in that case, please use: - CFLAGS="-g" # In rare cases, it may be required to skip individual automatic tests. @@ -213,17 +310,26 @@ CFLAGS="-g" # and will be regarded as failed) or 1 (test will not be run and will # be regarded as successful). +HAVE_ATTRIBUTE=0 HAVE_DIRENT_NAMLEN=0 +HAVE_ENDIAN=0 +HAVE_EFTYPE=0 HAVE_ERR=0 -HAVE_FTS=0 +HAVE_FTS=0 # Setting this implies HAVE_FTS_COMPARE_CONST=0. +HAVE_FTS_COMPARE_CONST=0 # Setting this implies HAVE_FTS=1. HAVE_GETLINE=0 HAVE_GETSUBOPT=0 HAVE_ISBLANK=0 +HAVE_LESS_T=0 HAVE_MKDTEMP=0 +HAVE_NTOHL=0 +HAVE_O_DIRECTORY=0 HAVE_OHASH=0 +HAVE_PATH_MAX=0 HAVE_PLEDGE=0 HAVE_PROGNAME=0 HAVE_REALLOCARRAY=0 +HAVE_RECALLOCARRAY=0 HAVE_REWB_BSD=0 HAVE_REWB_SYSV=0 HAVE_STRCASESTR=0 @@ -233,5 +339,6 @@ HAVE_STRLCPY=0 HAVE_STRPTIME=0 HAVE_STRSEP=0 HAVE_STRTONUM=0 +HAVE_SYS_ENDIAN=0 HAVE_VASPRINTF=0 HAVE_WCHAR=0