"Fossies" - the Fresh Open Source Software Archive

Member "krb5-1.18/doc/pdf/build.tex" (12 Feb 2020, 40499 Bytes) of package /linux/misc/krb5-1.18.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) TeX and LaTeX source code syntax highlighting (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 %% Generated by Sphinx.
    2 \def\sphinxdocclass{report}
    3 \documentclass[letterpaper,10pt,english]{sphinxmanual}
    4 \ifdefined\pdfpxdimen
    5    \let\sphinxpxdimen\pdfpxdimen\else\newdimen\sphinxpxdimen
    6 \fi \sphinxpxdimen=.75bp\relax
    7 
    8 \usepackage[utf8]{inputenc}
    9 \ifdefined\DeclareUnicodeCharacter
   10  \ifdefined\DeclareUnicodeCharacterAsOptional
   11   \DeclareUnicodeCharacter{"00A0}{\nobreakspace}
   12   \DeclareUnicodeCharacter{"2500}{\sphinxunichar{2500}}
   13   \DeclareUnicodeCharacter{"2502}{\sphinxunichar{2502}}
   14   \DeclareUnicodeCharacter{"2514}{\sphinxunichar{2514}}
   15   \DeclareUnicodeCharacter{"251C}{\sphinxunichar{251C}}
   16   \DeclareUnicodeCharacter{"2572}{\textbackslash}
   17  \else
   18   \DeclareUnicodeCharacter{00A0}{\nobreakspace}
   19   \DeclareUnicodeCharacter{2500}{\sphinxunichar{2500}}
   20   \DeclareUnicodeCharacter{2502}{\sphinxunichar{2502}}
   21   \DeclareUnicodeCharacter{2514}{\sphinxunichar{2514}}
   22   \DeclareUnicodeCharacter{251C}{\sphinxunichar{251C}}
   23   \DeclareUnicodeCharacter{2572}{\textbackslash}
   24  \fi
   25 \fi
   26 \usepackage{cmap}
   27 \usepackage[T1]{fontenc}
   28 \usepackage{amsmath,amssymb,amstext}
   29 \usepackage{babel}
   30 \usepackage{times}
   31 \usepackage[Bjarne]{fncychap}
   32 \usepackage[dontkeepoldnames]{sphinx}
   33 
   34 \usepackage{geometry}
   35 
   36 % Include hyperref last.
   37 \usepackage{hyperref}
   38 % Fix anchor placement for figures with captions.
   39 \usepackage{hypcap}% it must be loaded after hyperref.
   40 % Set up styles of URL: it should be placed after hyperref.
   41 \urlstyle{same}
   42 
   43 \addto\captionsenglish{\renewcommand{\figurename}{Fig.}}
   44 \addto\captionsenglish{\renewcommand{\tablename}{Table}}
   45 \addto\captionsenglish{\renewcommand{\literalblockname}{Listing}}
   46 
   47 \addto\captionsenglish{\renewcommand{\literalblockcontinuedname}{continued from previous page}}
   48 \addto\captionsenglish{\renewcommand{\literalblockcontinuesname}{continues on next page}}
   49 
   50 \addto\extrasenglish{\def\pageautorefname{page}}
   51 
   52 \setcounter{tocdepth}{0}
   53 
   54 
   55 
   56 \title{Building MIT Kerberos}
   57 \date{ }
   58 \release{1.18}
   59 \author{MIT}
   60 \newcommand{\sphinxlogo}{\vbox{}}
   61 \renewcommand{\releasename}{Release}
   62 \makeindex
   63 
   64 \begin{document}
   65 
   66 \maketitle
   67 \sphinxtableofcontents
   68 \phantomsection\label{\detokenize{build/index::doc}}
   69 
   70 
   71 This section details how to build and install MIT Kerberos software
   72 from the source.
   73 
   74 
   75 \chapter{Prerequisites}
   76 \label{\detokenize{build/index:building-kerberos-v5}}\label{\detokenize{build/index:prerequisites}}\label{\detokenize{build/index:build-v5}}
   77 In order to build Kerberos V5, you will need approximately 60-70
   78 megabytes of disk space.  The exact amount will vary depending on the
   79 platform and whether the distribution is compiled with debugging
   80 symbol tables or not.
   81 
   82 Your C compiler must conform to ANSI C (ISO/IEC 9899:1990, “c89”).
   83 Some operating systems do not have an ANSI C compiler, or their
   84 default compiler requires extra command-line options to enable ANSI C
   85 conformance.
   86 
   87 If you wish to keep a separate build tree, which contains the compiled
   88 *.o file and executables, separate from your source tree, you will
   89 need a make program which supports \sphinxstylestrong{VPATH}, or you will need to use
   90 a tool such as lndir to produce a symbolic link tree for your build
   91 tree.
   92 
   93 
   94 \chapter{Obtaining the software}
   95 \label{\detokenize{build/index:obtaining-the-software}}
   96 The source code can be obtained from MIT Kerberos Distribution page,
   97 at \sphinxurl{https://kerberos.org/dist/index.html}.
   98 The MIT Kerberos distribution comes in an archive file, generally
   99 named krb5-VERSION-signed.tar, where \sphinxstyleemphasis{VERSION} is a placeholder for
  100 the major and minor versions of MIT Kerberos.  (For example, MIT
  101 Kerberos 1.9 has major version “1” and minor version “9”.)
  102 
  103 The krb5-VERSION-signed.tar contains a compressed tar file consisting
  104 of the sources for all of Kerberos (generally named
  105 krb5-VERSION.tar.gz) and a PGP signature file for this source tree
  106 (generally named krb5-VERSION.tar.gz.asc).  MIT highly recommends that
  107 you verify the integrity of the source code using this signature,
  108 e.g., by running:
  109 
  110 \fvset{hllines={, ,}}%
  111 \begin{sphinxVerbatim}[commandchars=\\\{\}]
  112 \PYG{n}{tar} \PYG{n}{xf} \PYG{n}{krb5}\PYG{o}{\PYGZhy{}}\PYG{n}{VERSION}\PYG{o}{\PYGZhy{}}\PYG{n}{signed}\PYG{o}{.}\PYG{n}{tar}
  113 \PYG{n}{gpg} \PYG{o}{\PYGZhy{}}\PYG{o}{\PYGZhy{}}\PYG{n}{verify} \PYG{n}{krb5}\PYG{o}{\PYGZhy{}}\PYG{n}{VERSION}\PYG{o}{.}\PYG{n}{tar}\PYG{o}{.}\PYG{n}{gz}\PYG{o}{.}\PYG{n}{asc}
  114 \end{sphinxVerbatim}
  115 
  116 Unpack krb5-VERSION.tar.gz in some directory. In this section we will assume
  117 that you have chosen the top directory of the distribution the directory
  118 \sphinxcode{/u1/krb5-VERSION}.
  119 
  120 Review the README file for the license, copyright and other sprecific to the
  121 distribution information.
  122 
  123 
  124 \chapter{Contents}
  125 \label{\detokenize{build/index:contents}}
  126 
  127 \section{Organization of the source directory}
  128 \label{\detokenize{build/directory_org::doc}}\label{\detokenize{build/directory_org:organization-of-the-source-directory}}
  129 Below is a brief overview of the organization of the complete source
  130 directory.  More detailed descriptions follow.
  131 
  132 
  133 \begin{savenotes}\sphinxattablestart
  134 \centering
  135 \begin{tabulary}{\linewidth}[t]{|T|T|}
  136 \hline
  137 
  138 appl
  139 &
  140 Kerberos application client and server programs
  141 \\
  142 \hline
  143 ccapi
  144 &
  145 Credential cache services
  146 \\
  147 \hline
  148 clients
  149 &
  150 Kerberos V5 user programs (See \DUrole{xref,std,std-ref}{user\_commands})
  151 \\
  152 \hline
  153 config
  154 &
  155 Configure scripts
  156 \\
  157 \hline
  158 config-files
  159 &
  160 Sample Kerberos configuration files
  161 \\
  162 \hline
  163 include
  164 &
  165 include files needed to build the Kerberos system
  166 \\
  167 \hline
  168 kadmin
  169 &
  170 Administrative interface to the Kerberos master database: \DUrole{xref,std,std-ref}{kadmin(1)}, \DUrole{xref,std,std-ref}{kdb5\_util(8)}, \DUrole{xref,std,std-ref}{ktutil(1)}.
  171 \\
  172 \hline
  173 kdc
  174 &
  175 Kerberos V5 Authentication Service and Key Distribution Center
  176 \\
  177 \hline
  178 {\hyperref[\detokenize{build/directory_org:lib}]{\sphinxcrossref{lib}}}
  179 &
  180 Libraries for use with/by Kerberos V5
  181 \\
  182 \hline
  183 plugins
  184 &
  185 Kerberos plugins directory
  186 \\
  187 \hline
  188 po
  189 &
  190 Localization infrastructure
  191 \\
  192 \hline
  193 prototype
  194 &
  195 Templates files containing the MIT copyright message and a placeholder for the title and description of the file.
  196 \\
  197 \hline
  198 kprop
  199 &
  200 Utilities for propagating the database to replica KDCs \DUrole{xref,std,std-ref}{kprop(8)} and \DUrole{xref,std,std-ref}{kpropd(8)}
  201 \\
  202 \hline
  203 tests
  204 &
  205 Test suite
  206 \\
  207 \hline
  208 {\hyperref[\detokenize{build/directory_org:util}]{\sphinxcrossref{util}}}
  209 &
  210 Various utilities for building/configuring the code, sending bug reports, etc.
  211 \\
  212 \hline
  213 windows
  214 &
  215 Source code for building Kerberos V5 on Windows (see windows/README)
  216 \\
  217 \hline
  218 \end{tabulary}
  219 \par
  220 \sphinxattableend\end{savenotes}
  221 
  222 
  223 \subsection{lib}
  224 \label{\detokenize{build/directory_org:lib}}\label{\detokenize{build/directory_org:id1}}
  225 The lib directory contain several subdirectories as well as some
  226 definition and glue files.
  227 \begin{itemize}
  228 \item {} 
  229 The apputils directory contains the code for the generic network
  230 servicing.
  231 
  232 \item {} 
  233 The crypto subdirectory contains the Kerberos V5 encryption
  234 library.
  235 
  236 \item {} 
  237 The gssapi library contains the Generic Security Services API,
  238 which is a library of commands to be used in secure client-server
  239 communication.
  240 
  241 \item {} 
  242 The kadm5 directory contains the libraries for the KADM5
  243 administration utilities.
  244 
  245 \item {} 
  246 The Kerberos 5 database libraries are contained in kdb.
  247 
  248 \item {} 
  249 The krb5 directory contains Kerberos 5 API.
  250 
  251 \item {} 
  252 The rpc directory contains the API for the Kerberos Remote
  253 Procedure Call protocol.
  254 
  255 \end{itemize}
  256 
  257 
  258 \subsection{util}
  259 \label{\detokenize{build/directory_org:util}}\label{\detokenize{build/directory_org:id2}}\begin{description}
  260 \item[{The util directory contains several utility programs and libraries.}] \leavevmode\begin{itemize}
  261 \item {} 
  262 the programs used to configure and build the code, such as
  263 autoconf, lndir, kbuild, reconf, and makedepend, are in this
  264 directory.
  265 
  266 \item {} 
  267 the profile directory contains most of the functions which parse
  268 the Kerberos configuration files (krb5.conf and kdc.conf).
  269 
  270 \item {} 
  271 the Kerberos error table library and utilities (et);
  272 
  273 \item {} 
  274 the Sub-system library and utilities (ss);
  275 
  276 \item {} 
  277 database utilities (db2);
  278 
  279 \item {} 
  280 pseudo-terminal utilities (pty);
  281 
  282 \item {} 
  283 bug-reporting program send-pr;
  284 
  285 \item {} 
  286 a generic support library support used by several of our other
  287 libraries;
  288 
  289 \item {} 
  290 the build infrastructure for building lightweight Kerberos client
  291 (collected-client-lib)
  292 
  293 \item {} 
  294 the tool for validating Kerberos configuration files
  295 (confvalidator);
  296 
  297 \item {} 
  298 the toolkit for kernel integrators for building krb5 code subsets
  299 (gss-kernel-lib);
  300 
  301 \item {} 
  302 source code for building Kerberos V5 on MacOS (mac)
  303 
  304 \item {} 
  305 Windows getopt operations (windows)
  306 
  307 \end{itemize}
  308 
  309 \end{description}
  310 
  311 
  312 \section{Doing the build}
  313 \label{\detokenize{build/doing_build::doc}}\label{\detokenize{build/doing_build:doing-the-build}}
  314 
  315 \subsection{Building within a single tree}
  316 \label{\detokenize{build/doing_build:do-build}}\label{\detokenize{build/doing_build:building-within-a-single-tree}}
  317 If you only need to build Kerberos for one platform, using a single
  318 directory tree which contains both the source files and the object
  319 files is the simplest.  However, if you need to maintain Kerberos for
  320 a large number of platforms, you will probably want to use separate
  321 build trees for each platform.  We recommend that you look at OS
  322 Incompatibilities, for notes that we have on particular operating
  323 systems.
  324 
  325 If you don’t want separate build trees for each architecture, then use
  326 the following abbreviated procedure:
  327 
  328 \fvset{hllines={, ,}}%
  329 \begin{sphinxVerbatim}[commandchars=\\\{\}]
  330 \PYG{n}{cd} \PYG{o}{/}\PYG{n}{u1}\PYG{o}{/}\PYG{n}{krb5}\PYG{o}{\PYGZhy{}}\PYG{n}{VERSION}\PYG{o}{/}\PYG{n}{src}
  331 \PYG{o}{.}\PYG{o}{/}\PYG{n}{configure}
  332 \PYG{n}{make}
  333 \end{sphinxVerbatim}
  334 
  335 That’s it!
  336 
  337 
  338 \subsection{Building with separate build directories}
  339 \label{\detokenize{build/doing_build:building-with-separate-build-directories}}
  340 If you wish to keep separate build directories for each platform, you
  341 can do so using the following procedure.  (Note, this requires that
  342 your make program support VPATH.  GNU’s make will provide this
  343 functionality, for example.)  If your make program does not support
  344 this, see the next section.
  345 
  346 For example, if you wish to store the binaries in \sphinxcode{tmpbuild} build
  347 directory you might use the following procedure:
  348 
  349 \fvset{hllines={, ,}}%
  350 \begin{sphinxVerbatim}[commandchars=\\\{\}]
  351 \PYG{n}{mkdir} \PYG{o}{/}\PYG{n}{u1}\PYG{o}{/}\PYG{n}{tmpbuild}
  352 \PYG{n}{cd} \PYG{o}{/}\PYG{n}{u1}\PYG{o}{/}\PYG{n}{tmpbuild}
  353 \PYG{o}{/}\PYG{n}{u1}\PYG{o}{/}\PYG{n}{krb5}\PYG{o}{\PYGZhy{}}\PYG{n}{VERSION}\PYG{o}{/}\PYG{n}{src}\PYG{o}{/}\PYG{n}{configure}
  354 \PYG{n}{make}
  355 \end{sphinxVerbatim}
  356 
  357 
  358 \subsection{Building using lndir}
  359 \label{\detokenize{build/doing_build:building-using-lndir}}
  360 If you wish to keep separate build directories for each platform, and
  361 you do not have access to a make program which supports VPATH, all is
  362 not lost.  You can use the lndir program to create symbolic link trees
  363 in your build directory.
  364 
  365 For example, if you wish to create a build directory for solaris
  366 binaries you might use the following procedure:
  367 
  368 \fvset{hllines={, ,}}%
  369 \begin{sphinxVerbatim}[commandchars=\\\{\}]
  370 mkdir /u1/krb5\PYGZhy{}VERSION/solaris
  371 cd /u1/krb5\PYGZhy{}VERSION/solaris
  372 /u1/krb5\PYGZhy{}VERSION/src/util/lndir {}`pwd{}`/../src
  373 ./configure
  374 make
  375 \end{sphinxVerbatim}
  376 
  377 You must give an absolute pathname to lndir because it has a bug that
  378 makes it fail for relative pathnames.  Note that this version differs
  379 from the latest version as distributed and installed by the
  380 XConsortium with X11R6.  Either version should be acceptable.
  381 
  382 
  383 \subsection{Installing the binaries}
  384 \label{\detokenize{build/doing_build:installing-the-binaries}}
  385 Once you have built Kerberos, you should install the binaries. You can
  386 do this by running:
  387 
  388 \fvset{hllines={, ,}}%
  389 \begin{sphinxVerbatim}[commandchars=\\\{\}]
  390 \PYG{n}{make} \PYG{n}{install}
  391 \end{sphinxVerbatim}
  392 
  393 If you want to install the binaries into a destination directory that
  394 is not their final destination, which may be convenient if you want to
  395 build a binary distribution to be deployed on multiple hosts, you may
  396 use:
  397 
  398 \fvset{hllines={, ,}}%
  399 \begin{sphinxVerbatim}[commandchars=\\\{\}]
  400 \PYG{n}{make} \PYG{n}{install} \PYG{n}{DESTDIR}\PYG{o}{=}\PYG{o}{/}\PYG{n}{path}\PYG{o}{/}\PYG{n}{to}\PYG{o}{/}\PYG{n}{destdir}
  401 \end{sphinxVerbatim}
  402 
  403 This will install the binaries under \sphinxstyleemphasis{DESTDIR/PREFIX}, e.g., the user
  404 programs will install into \sphinxstyleemphasis{DESTDIR/PREFIX/bin}, the libraries into
  405 \sphinxstyleemphasis{DESTDIR/PREFIX/lib}, etc.  \sphinxstyleemphasis{DESTDIR} must be an absolute path.
  406 
  407 Some implementations of make allow multiple commands to be run in
  408 parallel, for faster builds.  We test our Makefiles in parallel builds
  409 with GNU make only; they may not be compatible with other parallel
  410 build implementations.
  411 
  412 
  413 \subsection{Testing the build}
  414 \label{\detokenize{build/doing_build:testing-the-build}}
  415 The Kerberos V5 distribution comes with built-in regression tests.  To
  416 run them, simply type the following command while in the top-level
  417 build directory (i.e., the directory where you sent typed make to
  418 start building Kerberos; see {\hyperref[\detokenize{build/doing_build:do-build}]{\sphinxcrossref{\DUrole{std,std-ref}{Building within a single tree}}}}):
  419 
  420 \fvset{hllines={, ,}}%
  421 \begin{sphinxVerbatim}[commandchars=\\\{\}]
  422 \PYG{n}{make} \PYG{n}{check}
  423 \end{sphinxVerbatim}
  424 
  425 However, there are several prerequisites that must be satisfied first:
  426 \begin{itemize}
  427 \item {} 
  428 Configure and build Kerberos with Tcl support. Tcl is used to drive
  429 the test suite.  This often means passing \sphinxstylestrong{-}\sphinxstylestrong{-with-tcl} to
  430 configure to tell it the location of the Tcl configuration
  431 script. (See {\hyperref[\detokenize{build/options2configure:options2configure}]{\sphinxcrossref{\DUrole{std,std-ref}{Options to configure}}}}.)
  432 
  433 \item {} 
  434 In addition to Tcl, DejaGnu must be available on the system for some
  435 of the tests to run.  The test suite will still run the other tests
  436 if DejaGnu is not present, but the test coverage will be reduced
  437 accordingly.
  438 
  439 \item {} 
  440 On some operating systems, you have to run \sphinxcode{make install} before
  441 running \sphinxcode{make check}, or the test suite will pick up installed
  442 versions of Kerberos libraries rather than the newly built ones.
  443 You can install into a prefix that isn’t in the system library
  444 search path, though. Alternatively, you can configure with
  445 \sphinxstylestrong{-}\sphinxstylestrong{-disable-rpath}, which renders the build tree less suitable for
  446 installation, but allows testing without interference from
  447 previously installed libraries.
  448 
  449 \end{itemize}
  450 
  451 There are additional regression tests available, which are not run
  452 by \sphinxcode{make check}.  These tests require manual setup and teardown of
  453 support infrastructure which is not easily automated, or require
  454 excessive resources for ordinary use.  The procedure for running
  455 the manual tests is documented at
  456 \sphinxurl{https://k5wiki.kerberos.org/wiki/Manual\_Testing}.
  457 
  458 
  459 \subsection{Cleaning up the build}
  460 \label{\detokenize{build/doing_build:cleaning-up-the-build}}\begin{itemize}
  461 \item {} 
  462 Use \sphinxcode{make clean} to remove all files generated by running make
  463 command.
  464 
  465 \item {} 
  466 Use \sphinxcode{make distclean} to remove all files generated by running
  467 ./configure script.  After running \sphinxcode{make distclean} your source
  468 tree (ideally) should look like the raw (just un-tarred) source
  469 tree.
  470 
  471 \end{itemize}
  472 
  473 
  474 \subsection{Using autoconf}
  475 \label{\detokenize{build/doing_build:using-autoconf}}
  476 (If you are not a developer, you can ignore this section.)
  477 
  478 In the Kerberos V5 source directory, there is a configure script which
  479 automatically determines the compilation environment and creates the
  480 proper Makefiles for a particular platform.  This configure script is
  481 generated using autoconf, which you should already have installed if
  482 you will be making changes to \sphinxcode{src/configure.in}.
  483 
  484 Normal users will not need to worry about running autoconf; the
  485 distribution comes with the configure script already prebuilt.
  486 
  487 The autoconf package comes with a script called \sphinxcode{autoreconf} that
  488 will automatically run \sphinxcode{autoconf} and \sphinxcode{autoheader} as needed.  You
  489 should run \sphinxcode{autoreconf} from the top source directory, e.g.:
  490 
  491 \fvset{hllines={, ,}}%
  492 \begin{sphinxVerbatim}[commandchars=\\\{\}]
  493 \PYG{n}{cd} \PYG{o}{/}\PYG{n}{u1}\PYG{o}{/}\PYG{n}{krb5}\PYG{o}{\PYGZhy{}}\PYG{n}{VERSION}\PYG{o}{/}\PYG{n}{src}
  494 \PYG{n}{autoreconf} \PYG{o}{\PYGZhy{}}\PYG{o}{\PYGZhy{}}\PYG{n}{verbose}
  495 \end{sphinxVerbatim}
  496 
  497 
  498 \section{Options to \sphinxstyleemphasis{configure}}
  499 \label{\detokenize{build/options2configure:options2configure}}\label{\detokenize{build/options2configure::doc}}\label{\detokenize{build/options2configure:options-to-configure}}
  500 There are a number of options to configure which you can use to
  501 control how the Kerberos distribution is built.
  502 
  503 
  504 \subsection{Most commonly used options}
  505 \label{\detokenize{build/options2configure:most-commonly-used-options}}\begin{description}
  506 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-help}}] \leavevmode
  507 Provides help to configure.  This will list the set of commonly
  508 used options for building Kerberos.
  509 
  510 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-prefix=}\sphinxstyleemphasis{PREFIX}}] \leavevmode
  511 By default, Kerberos will install the package’s files rooted at
  512 \sphinxcode{/usr/local}.  If you desire to place the binaries into the
  513 directory \sphinxstyleemphasis{PREFIX}, use this option.
  514 
  515 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-exec-prefix=}\sphinxstyleemphasis{EXECPREFIX}}] \leavevmode
  516 This option allows one to separate the architecture independent
  517 programs from the host-dependent files (configuration files,
  518 manual pages).  Use this option to install architecture-dependent
  519 programs in \sphinxstyleemphasis{EXECPREFIX}.  The default location is the value of
  520 specified by \sphinxstylestrong{-}\sphinxstylestrong{-prefix} option.
  521 
  522 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-localstatedir=}\sphinxstyleemphasis{LOCALSTATEDIR}}] \leavevmode
  523 This option sets the directory for locally modifiable
  524 single-machine data.  In Kerberos, this mostly is useful for
  525 setting a location for the KDC data files, as they will be
  526 installed in \sphinxcode{LOCALSTATEDIR/krb5kdc}, which is by default
  527 \sphinxcode{PREFIX/var/krb5kdc}.
  528 
  529 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-netlib}{[}=\sphinxstyleemphasis{libs}{]}}] \leavevmode
  530 Allows for suppression of or replacement of network libraries.  By
  531 default, Kerberos V5 configuration will look for \sphinxcode{-lnsl} and
  532 \sphinxcode{-lsocket}.  If your operating system has a broken resolver
  533 library or fails to pass the tests in \sphinxcode{src/tests/resolv}, you
  534 will need to use this option.
  535 
  536 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-tcl=}\sphinxstyleemphasis{TCLPATH}}] \leavevmode
  537 Some of the unit-tests in the build tree rely upon using a program
  538 in Tcl.  The directory specified by \sphinxstyleemphasis{TCLPATH} specifies where the
  539 Tcl header file (TCLPATH/include/tcl.h) as well as where the Tcl
  540 library (TCLPATH/lib) should be found.
  541 
  542 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-enable-dns-for-realm}}] \leavevmode
  543 Enable the use of DNS to look up a host’s Kerberos realm,
  544 if the information is not provided in
  545 \DUrole{xref,std,std-ref}{krb5.conf(5)}.  See \DUrole{xref,std,std-ref}{mapping\_hostnames}
  546 for information about using DNS to determine the default realm.
  547 DNS lookups for realm names are disabled by default.
  548 
  549 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-system-et}}] \leavevmode
  550 Use an installed version of the error-table (et) support software,
  551 the compile\_et program, the com\_err.h header file and the com\_err
  552 library.  If these are not in the default locations, you may wish
  553 to specify \sphinxcode{CPPFLAGS=-I/some/dir} and
  554 \sphinxcode{LDFLAGS=-L/some/other/dir} options at configuration time as
  555 well.
  556 
  557 If this option is not given, a version supplied with the Kerberos
  558 sources will be built and installed along with the rest of the
  559 Kerberos tree, for Kerberos applications to link against.
  560 
  561 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-system-ss}}] \leavevmode
  562 Use an installed version of the subsystem command-line interface
  563 software, the mk\_cmds program, the \sphinxcode{ss/ss.h} header file and the
  564 ss library.  If these are not in the default locations, you may
  565 wish to specify \sphinxcode{CPPFLAGS=-I/some/dir} and
  566 \sphinxcode{LDFLAGS=-L/some/other/dir} options at configuration time as
  567 well.  See also the \sphinxstylestrong{SS\_LIB} option.
  568 
  569 If this option is not given, the ss library supplied with the
  570 Kerberos sources will be compiled and linked into those programs
  571 that need it; it will not be installed separately.
  572 
  573 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-system-db}}] \leavevmode
  574 Use an installed version of the Berkeley DB package, which must
  575 provide an API compatible with version 1.85.  This option is
  576 unsupported and untested.  In particular, we do not know if the
  577 database-rename code used in the dumpfile load operation will
  578 behave properly.
  579 
  580 If this option is not given, a version supplied with the Kerberos
  581 sources will be built and installed.  (We are not updating this
  582 version at this time because of licensing issues with newer
  583 versions that we haven’t investigated sufficiently yet.)
  584 
  585 \end{description}
  586 
  587 
  588 \subsection{Environment variables}
  589 \label{\detokenize{build/options2configure:environment-variables}}\begin{description}
  590 \item[{\sphinxstylestrong{CC=}\sphinxstyleemphasis{COMPILER}}] \leavevmode
  591 Use \sphinxstyleemphasis{COMPILER} as the C compiler.
  592 
  593 \item[{\sphinxstylestrong{CFLAGS=}\sphinxstyleemphasis{FLAGS}}] \leavevmode
  594 Use \sphinxstyleemphasis{FLAGS} as the default set of C compiler flags.
  595 
  596 \item[{\sphinxstylestrong{CPP=}\sphinxstyleemphasis{CPP}}] \leavevmode
  597 C preprocessor to use. (e.g., \sphinxcode{CPP='gcc -E'})
  598 
  599 \item[{\sphinxstylestrong{CPPFLAGS=}\sphinxstyleemphasis{CPPOPTS}}] \leavevmode
  600 Use \sphinxstyleemphasis{CPPOPTS} as the default set of C preprocessor flags.  The
  601 most common use of this option is to select certain \#define’s for
  602 use with the operating system’s include files.
  603 
  604 \item[{\sphinxstylestrong{DB\_HEADER=}\sphinxstyleemphasis{headername}}] \leavevmode
  605 If db.h is not the correct header file to include to compile
  606 against the Berkeley DB 1.85 API, specify the correct header file
  607 name with this option. For example, \sphinxcode{DB\_HEADER=db3/db\_185.h}.
  608 
  609 \item[{\sphinxstylestrong{DB\_LIB=}\sphinxstyleemphasis{libs}}] \leavevmode
  610 If \sphinxcode{-ldb} is not the correct library specification for the
  611 Berkeley DB library version to be used, override it with this
  612 option. For example, \sphinxcode{DB\_LIB=-ldb-3.3}.
  613 
  614 \item[{\sphinxstylestrong{DEFCCNAME=}\sphinxstyleemphasis{ccachename}}] \leavevmode
  615 Override the built-in default credential cache name.
  616 For example, \sphinxcode{DEFCCNAME=DIR:/var/run/user/\%\{USERID\}/ccache}
  617 See \DUrole{xref,std,std-ref}{parameter\_expansion} for information about supported
  618 parameter expansions.
  619 
  620 \item[{\sphinxstylestrong{DEFCKTNAME=}\sphinxstyleemphasis{keytabname}}] \leavevmode
  621 Override the built-in default client keytab name.
  622 The format is the same as for \sphinxstyleemphasis{DEFCCNAME}.
  623 
  624 \item[{\sphinxstylestrong{DEFKTNAME=}\sphinxstyleemphasis{keytabname}}] \leavevmode
  625 Override the built-in default keytab name.
  626 The format is the same as for \sphinxstyleemphasis{DEFCCNAME}.
  627 
  628 \item[{\sphinxstylestrong{LD=}\sphinxstyleemphasis{LINKER}}] \leavevmode
  629 Use \sphinxstyleemphasis{LINKER} as the default loader if it should be different from
  630 C compiler as specified above.
  631 
  632 \item[{\sphinxstylestrong{LDFLAGS=}\sphinxstyleemphasis{LDOPTS}}] \leavevmode
  633 This option informs the linker where to get additional libraries
  634 (e.g., \sphinxcode{-L\textless{}lib dir\textgreater{}}).
  635 
  636 \item[{\sphinxstylestrong{LIBS=}\sphinxstyleemphasis{LDNAME}}] \leavevmode
  637 This option allows one to specify libraries to be passed to the
  638 linker (e.g., \sphinxcode{-l\textless{}library\textgreater{}})
  639 
  640 \item[{\sphinxstylestrong{SS\_LIB=}\sphinxstyleemphasis{libs}}] \leavevmode
  641 If \sphinxcode{-lss} is not the correct way to link in your installed ss
  642 library, for example if additional support libraries are needed,
  643 specify the correct link options here.  Some variants of this
  644 library are around which allow for Emacs-like line editing, but
  645 different versions require different support libraries to be
  646 explicitly specified.
  647 
  648 This option is ignored if \sphinxstylestrong{-}\sphinxstylestrong{-with-system-ss} is not specified.
  649 
  650 \item[{\sphinxstylestrong{YACC}}] \leavevmode
  651 The ‘Yet Another C Compiler’ implementation to use. Defaults to
  652 the first program found out of: ‘\sphinxtitleref{bison -y}’, ‘\sphinxtitleref{byacc}’,
  653 \sphinxtitleref{yacc}’.
  654 
  655 \item[{\sphinxstylestrong{YFLAGS}}] \leavevmode
  656 The list of arguments that will be passed by default to \$YACC.
  657 This script will default YFLAGS to the empty string to avoid a
  658 default value of \sphinxcode{-d} given by some make applications.
  659 
  660 \end{description}
  661 
  662 
  663 \subsection{Fine tuning of the installation directories}
  664 \label{\detokenize{build/options2configure:fine-tuning-of-the-installation-directories}}\begin{description}
  665 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-bindir=}\sphinxstyleemphasis{DIR}}] \leavevmode
  666 User executables.  Defaults to \sphinxcode{EXECPREFIX/bin}, where
  667 \sphinxstyleemphasis{EXECPREFIX} is the path specified by \sphinxstylestrong{-}\sphinxstylestrong{-exec-prefix}
  668 configuration option.
  669 
  670 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-sbindir=}\sphinxstyleemphasis{DIR}}] \leavevmode
  671 System admin executables.  Defaults to \sphinxcode{EXECPREFIX/sbin}, where
  672 \sphinxstyleemphasis{EXECPREFIX} is the path specified by \sphinxstylestrong{-}\sphinxstylestrong{-exec-prefix}
  673 configuration option.
  674 
  675 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-sysconfdir=}\sphinxstyleemphasis{DIR}}] \leavevmode
  676 Read-only single-machine data such as krb5.conf.
  677 Defaults to \sphinxcode{PREFIX/etc}, where
  678 \sphinxstyleemphasis{PREFIX} is the path specified by \sphinxstylestrong{-}\sphinxstylestrong{-prefix} configuration
  679 option.
  680 
  681 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-libdir=}\sphinxstyleemphasis{DIR}}] \leavevmode
  682 Object code libraries.  Defaults to \sphinxcode{EXECPREFIX/lib}, where
  683 \sphinxstyleemphasis{EXECPREFIX} is the path specified by \sphinxstylestrong{-}\sphinxstylestrong{-exec-prefix}
  684 configuration option.
  685 
  686 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-includedir=}\sphinxstyleemphasis{DIR}}] \leavevmode
  687 C header files.  Defaults to \sphinxcode{PREFIX/include}, where \sphinxstyleemphasis{PREFIX} is
  688 the path specified by \sphinxstylestrong{-}\sphinxstylestrong{-prefix} configuration option.
  689 
  690 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-datarootdir=}\sphinxstyleemphasis{DATAROOTDIR}}] \leavevmode
  691 Read-only architecture-independent data root.  Defaults to
  692 \sphinxcode{PREFIX/share}, where \sphinxstyleemphasis{PREFIX} is the path specified by
  693 \sphinxstylestrong{-}\sphinxstylestrong{-prefix} configuration option.
  694 
  695 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-datadir=}\sphinxstyleemphasis{DIR}}] \leavevmode
  696 Read-only architecture-independent data.  Defaults to path
  697 specified by \sphinxstylestrong{-}\sphinxstylestrong{-datarootdir} configuration option.
  698 
  699 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-localedir=}\sphinxstyleemphasis{DIR}}] \leavevmode
  700 Locale-dependent data.  Defaults to \sphinxcode{DATAROOTDIR/locale}, where
  701 \sphinxstyleemphasis{DATAROOTDIR} is the path specified by \sphinxstylestrong{-}\sphinxstylestrong{-datarootdir}
  702 configuration option.
  703 
  704 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-mandir=}\sphinxstyleemphasis{DIR}}] \leavevmode
  705 Man documentation.  Defaults to \sphinxcode{DATAROOTDIR/man}, where
  706 \sphinxstyleemphasis{DATAROOTDIR} is the path specified by \sphinxstylestrong{-}\sphinxstylestrong{-datarootdir}
  707 configuration option.
  708 
  709 \end{description}
  710 
  711 
  712 \subsection{Program names}
  713 \label{\detokenize{build/options2configure:program-names}}\begin{description}
  714 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-program-prefix=}\sphinxstyleemphasis{PREFIX}}] \leavevmode
  715 Prepend \sphinxstyleemphasis{PREFIX} to the names of the programs when installing
  716 them. For example, specifying \sphinxcode{-{-}program-prefix=mit-} at the
  717 configure time will cause the program named \sphinxcode{abc} to be
  718 installed as \sphinxcode{mit-abc}.
  719 
  720 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-program-suffix=}\sphinxstyleemphasis{SUFFIX}}] \leavevmode
  721 Append \sphinxstyleemphasis{SUFFIX} to the names of the programs when installing them.
  722 For example, specifying \sphinxcode{-{-}program-suffix=-mit} at the configure
  723 time will cause the program named \sphinxcode{abc} to be installed as
  724 \sphinxcode{abc-mit}.
  725 
  726 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-program-transform-name=}\sphinxstyleemphasis{PROGRAM}}] \leavevmode
  727 Run \sphinxcode{sed -e PROGRAM} on installed program names. (\sphinxstyleemphasis{PROGRAM} is a
  728 sed script).
  729 
  730 \end{description}
  731 
  732 
  733 \subsection{System types}
  734 \label{\detokenize{build/options2configure:system-types}}\begin{description}
  735 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-build=}\sphinxstyleemphasis{BUILD}}] \leavevmode
  736 Configure for building on \sphinxstyleemphasis{BUILD}
  737 (e.g., \sphinxcode{-{-}build=x86\_64-linux-gnu}).
  738 
  739 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-host=}\sphinxstyleemphasis{HOST}}] \leavevmode
  740 Cross-compile to build programs to run on \sphinxstyleemphasis{HOST}
  741 (e.g., \sphinxcode{-{-}host=x86\_64-linux-gnu}).  By default, Kerberos V5
  742 configuration will look for “build” option.
  743 
  744 \end{description}
  745 
  746 
  747 \subsection{Optional features}
  748 \label{\detokenize{build/options2configure:optional-features}}\begin{description}
  749 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-option-checking}}] \leavevmode
  750 Ignore unrecognized \textendash{}enable/\textendash{}with options.
  751 
  752 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-}\sphinxstyleemphasis{FEATURE}}] \leavevmode
  753 Do not include \sphinxstyleemphasis{FEATURE} (same as \textendash{}enable-FEATURE=no).
  754 
  755 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-enable-}\sphinxstyleemphasis{FEATURE}{[}=\sphinxstyleemphasis{ARG}{]}}] \leavevmode
  756 Include \sphinxstyleemphasis{FEATURE} {[}ARG=yes{]}.
  757 
  758 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-enable-maintainer-mode}}] \leavevmode
  759 Enable rebuilding of source files, Makefiles, etc.
  760 
  761 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-delayed-initialization}}] \leavevmode
  762 Initialize library code when loaded.  Defaults to delay until
  763 first use.
  764 
  765 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-thread-support}}] \leavevmode
  766 Don’t enable thread support.  Defaults to enabled.
  767 
  768 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-rpath}}] \leavevmode
  769 Suppress run path flags in link lines.
  770 
  771 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-enable-athena}}] \leavevmode
  772 Build with MIT Project Athena configuration.
  773 
  774 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-kdc-lookaside-cache}}] \leavevmode
  775 Disable the cache which detects client retransmits.
  776 
  777 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-pkinit}}] \leavevmode
  778 Disable PKINIT plugin support.
  779 
  780 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-aesni}}] \leavevmode
  781 Disable support for using AES instructions on x86 platforms.
  782 
  783 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-enable-asan}{[}=\sphinxstyleemphasis{ARG}{]}}] \leavevmode
  784 Enable building with asan memory error checking.  If \sphinxstyleemphasis{ARG} is
  785 given, it controls the -fsanitize compilation flag value (the
  786 default is “address”).
  787 
  788 \end{description}
  789 
  790 
  791 \subsection{Optional packages}
  792 \label{\detokenize{build/options2configure:optional-packages}}\begin{description}
  793 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-}\sphinxstyleemphasis{PACKAGE}{[}=ARG{]}}] \leavevmode
  794 Use \sphinxstyleemphasis{PACKAGE} (e.g., \sphinxcode{-{-}with-imap}).  The default value of \sphinxstyleemphasis{ARG}
  795 is \sphinxcode{yes}.
  796 
  797 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-without-}\sphinxstyleemphasis{PACKAGE}}] \leavevmode
  798 Do not use \sphinxstyleemphasis{PACKAGE} (same as \sphinxcode{-{-}with-PACKAGE=no})
  799 (e.g., \sphinxcode{-{-}without-libedit}).
  800 
  801 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-size-optimizations}}] \leavevmode
  802 Enable a few optimizations to reduce code size possibly at some
  803 run-time cost.
  804 
  805 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-system-et}}] \leavevmode
  806 Use the com\_err library and compile\_et utility that are already
  807 installed on the system, instead of building and installing
  808 local versions.
  809 
  810 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-system-ss}}] \leavevmode
  811 Use the ss library and mk\_cmds utility that are already installed
  812 on the system, instead of building and using private versions.
  813 
  814 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-system-db}}] \leavevmode
  815 Use the berkeley db utility already installed on the system,
  816 instead of using a private version.  This option is not
  817 recommended; enabling it may result in incompatibility with key
  818 databases originating on other systems.
  819 
  820 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-netlib=}\sphinxstyleemphasis{LIBS}}] \leavevmode
  821 Use the resolver library specified in \sphinxstyleemphasis{LIBS}.  Use this variable
  822 if the C library resolver is insufficient or broken.
  823 
  824 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-hesiod=}\sphinxstyleemphasis{path}}] \leavevmode
  825 Compile with Hesiod support.  The \sphinxstyleemphasis{path} points to the Hesiod
  826 directory.  By default Hesiod is unsupported.
  827 
  828 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-ldap}}] \leavevmode
  829 Compile OpenLDAP database backend module.
  830 
  831 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-lmdb}}] \leavevmode
  832 Compile LMDB database backend module.
  833 
  834 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-tcl=}\sphinxstyleemphasis{path}}] \leavevmode
  835 Specifies that \sphinxstyleemphasis{path} is the location of a Tcl installation.
  836 Tcl is needed for some of the tests run by ‘make check’; such tests
  837 will be skipped if this option is not set.
  838 
  839 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-vague-errors}}] \leavevmode
  840 Do not send helpful errors to client.  For example, if the KDC
  841 should return only vague error codes to clients.
  842 
  843 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-crypto-impl=}\sphinxstyleemphasis{IMPL}}] \leavevmode
  844 Use specified crypto implementation (e.g., \sphinxstylestrong{-}\sphinxstylestrong{-with-crypto-impl=}\sphinxstyleemphasis{openssl}).  The default is the native MIT
  845 Kerberos implementation \sphinxcode{builtin}.  The other currently
  846 implemented crypto backend is \sphinxcode{openssl}.  (See
  847 \DUrole{xref,std,std-ref}{mitK5features})
  848 
  849 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-prng-alg=}\sphinxstyleemphasis{ALG}}] \leavevmode
  850 Use specified PRNG algorithm.  For example, to use the OS native
  851 prng specify \sphinxcode{-{-}with-prng-alg=os}.  The default is \sphinxcode{fortuna}.
  852 (See \DUrole{xref,std,std-ref}{mitK5features})
  853 
  854 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-without-libedit}}] \leavevmode
  855 Do not compile and link against libedit.  Some utilities will no
  856 longer offer command history or completion in interactive mode if
  857 libedit is disabled.
  858 
  859 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-readline}}] \leavevmode
  860 Compile and link against GNU readline, as an alternative to libedit.
  861 Building with readline breaks the dejagnu test suite, which is a
  862 subset of the tests run by ‘make check’.
  863 
  864 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-system-verto}}] \leavevmode
  865 Use an installed version of libverto.  If the libverto header and
  866 library are not in default locations, you may wish to specify
  867 \sphinxcode{CPPFLAGS=-I/some/dir} and \sphinxcode{LDFLAGS=-L/some/other/dir} options
  868 at configuration time as well.
  869 
  870 If this option is not given, the build system will try to detect
  871 an installed version of libverto and use it if it is found.
  872 Otherwise, a version supplied with the Kerberos sources will be
  873 built and installed.  The built-in version does not contain the
  874 full set of back-end modules and is not a suitable general
  875 replacement for the upstream version, but will work for the
  876 purposes of Kerberos.
  877 
  878 Specifying \sphinxstylestrong{-}\sphinxstylestrong{-without-system-verto} will cause the built-in
  879 version of libverto to be used unconditionally.
  880 
  881 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-krb5-config=}\sphinxstyleemphasis{PATH}}] \leavevmode
  882 Use the krb5-config program at \sphinxstyleemphasis{PATH} to obtain the build-time
  883 default credential cache, keytab, and client keytab names.  The
  884 default is to use \sphinxcode{krb5-config} from the program path.  Specify
  885 \sphinxcode{-{-}without-krb5-config} to disable the use of krb5-config and
  886 use the usual built-in defaults.
  887 
  888 \item[{\sphinxstylestrong{-}\sphinxstylestrong{-without-keyutils}}] \leavevmode
  889 Build without libkeyutils support.  This disables the KEYRING
  890 credential cache type.
  891 
  892 \end{description}
  893 
  894 
  895 \subsection{Examples}
  896 \label{\detokenize{build/options2configure:examples}}
  897 For example, in order to configure Kerberos on a Solaris machine using
  898 the suncc compiler with the optimizer turned on, run the configure
  899 script with the following options:
  900 
  901 \fvset{hllines={, ,}}%
  902 \begin{sphinxVerbatim}[commandchars=\\\{\}]
  903 \PYG{o}{\PYGZpc{}} \PYG{o}{.}\PYG{o}{/}\PYG{n}{configure} \PYG{n}{CC}\PYG{o}{=}\PYG{n}{suncc} \PYG{n}{CFLAGS}\PYG{o}{=}\PYG{o}{\PYGZhy{}}\PYG{n}{O}
  904 \end{sphinxVerbatim}
  905 
  906 For a slightly more complicated example, consider a system where
  907 several packages to be used by Kerberos are installed in
  908 \sphinxcode{/usr/foobar}, including Berkeley DB 3.3, and an ss library that
  909 needs to link against the curses library.  The configuration of
  910 Kerberos might be done thus:
  911 
  912 \fvset{hllines={, ,}}%
  913 \begin{sphinxVerbatim}[commandchars=\\\{\}]
  914 \PYG{o}{.}\PYG{o}{/}\PYG{n}{configure} \PYG{n}{CPPFLAGS}\PYG{o}{=}\PYG{o}{\PYGZhy{}}\PYG{n}{I}\PYG{o}{/}\PYG{n}{usr}\PYG{o}{/}\PYG{n}{foobar}\PYG{o}{/}\PYG{n}{include} \PYG{n}{LDFLAGS}\PYG{o}{=}\PYG{o}{\PYGZhy{}}\PYG{n}{L}\PYG{o}{/}\PYG{n}{usr}\PYG{o}{/}\PYG{n}{foobar}\PYG{o}{/}\PYG{n}{lib} \PYGZbs{}
  915 \PYG{o}{\PYGZhy{}}\PYG{o}{\PYGZhy{}}\PYG{k}{with}\PYG{o}{\PYGZhy{}}\PYG{n}{system}\PYG{o}{\PYGZhy{}}\PYG{n}{et} \PYG{o}{\PYGZhy{}}\PYG{o}{\PYGZhy{}}\PYG{k}{with}\PYG{o}{\PYGZhy{}}\PYG{n}{system}\PYG{o}{\PYGZhy{}}\PYG{n}{ss} \PYG{o}{\PYGZhy{}}\PYG{o}{\PYGZhy{}}\PYG{k}{with}\PYG{o}{\PYGZhy{}}\PYG{n}{system}\PYG{o}{\PYGZhy{}}\PYG{n}{db}  \PYGZbs{}
  916 \PYG{n}{SS\PYGZus{}LIB}\PYG{o}{=}\PYG{l+s+s1}{\PYGZsq{}}\PYG{l+s+s1}{\PYGZhy{}lss \PYGZhy{}lcurses}\PYG{l+s+s1}{\PYGZsq{}}  \PYG{n}{DB\PYGZus{}HEADER}\PYG{o}{=}\PYG{n}{db3}\PYG{o}{/}\PYG{n}{db\PYGZus{}185}\PYG{o}{.}\PYG{n}{h} \PYG{n}{DB\PYGZus{}LIB}\PYG{o}{=}\PYG{o}{\PYGZhy{}}\PYG{n}{ldb}\PYG{o}{\PYGZhy{}}\PYG{l+m+mf}{3.3}
  917 \end{sphinxVerbatim}
  918 
  919 
  920 \section{osconf.hin}
  921 \label{\detokenize{build/osconf:osconf-hin}}\label{\detokenize{build/osconf::doc}}
  922 There is one configuration file which you may wish to edit to control
  923 various compile-time parameters in the Kerberos distribution:
  924 
  925 \fvset{hllines={, ,}}%
  926 \begin{sphinxVerbatim}[commandchars=\\\{\}]
  927 \PYG{n}{include}\PYG{o}{/}\PYG{n}{osconf}\PYG{o}{.}\PYG{n}{hin}
  928 \end{sphinxVerbatim}
  929 
  930 The list that follows is by no means complete, just some of the more
  931 interesting variables.
  932 \begin{description}
  933 \item[{\sphinxstylestrong{DEFAULT\_PROFILE\_PATH}}] \leavevmode
  934 The pathname to the file which contains the profiles for the known
  935 realms, their KDCs, etc. The default value is \sphinxcode{/etc/krb5.conf}.
  936 
  937 \item[{\sphinxstylestrong{DEFAULT\_KEYTAB\_NAME}}] \leavevmode
  938 The type and pathname to the default server keytab file.  The
  939 default is \DUrole{xref,std,std-ref}{DEFKTNAME}.
  940 
  941 \item[{\sphinxstylestrong{DEFAULT\_KDC\_ENCTYPE}}] \leavevmode
  942 The default encryption type for the KDC database master key.  The
  943 default value is \sphinxcode{aes256-cts-hmac-sha1-96}.
  944 
  945 \item[{\sphinxstylestrong{RCTMPDIR}}] \leavevmode
  946 The directory which stores replay caches.  The default is
  947 \sphinxcode{/var/tmp}.
  948 
  949 \item[{\sphinxstylestrong{DEFAULT\_KDB\_FILE}}] \leavevmode
  950 The location of the default database.  The default value is
  951 \DUrole{xref,std,std-ref}{LOCALSTATEDIR}\sphinxcode{/krb5kdc}\sphinxcode{/principal}.
  952 
  953 \end{description}
  954 
  955 
  956 
  957 \renewcommand{\indexname}{Index}
  958 \printindex
  959 \end{document}