This section contains two tables of information that are useful for
building and installing sendmail
:
Table 2-1 (Section 2.2.1
[V8.13]) shows the
directories and files that will populate the source directory after
you extract the sendmail
source.
Table 2-2 (Section 2.2.2
[V8.13]) shows the
m4
directives that determine how the
sendmail
program (and its companion programs)
will be built.
The files and directories that appear
after
you unpack sendmail
into its source directory
are listed in Table 2-1. They are described in
detail in the sections indicated.
Table 2-1. Files and directories in the distribution directory
File/Directory |
sendmail text reference |
Description |
---|---|---|
Build |
2.2.1.1[3ed] |
A top-level |
CACerts |
[V8.13] |
A list of CA certificates used by members of the sendmail consortium |
cf |
4.2[3ed] |
Top of the tree for building a configuration file |
contrib |
2.2.1.2[3ed] |
Unsupported, user-contributed software |
devtools |
2.2.1.3[3ed] |
Top of the tree for |
doc |
2.2.1.4[3ed] |
Current and background documentation |
editmap |
5.2[3ed] |
Edit database file entries |
FAQ | ||
include |
2.2.1.5[3ed] |
Header files common to all programs |
INSTALL |
2.2.1.6[3ed] |
An overview of how to build and install |
KNOWNBUGS |
2.2.1.7[3ed] |
Tough problems that remain unfixed |
libmilter |
2.2.1.8[3ed] |
Library used to create a multithreaded filter |
libsm |
2.2.1.9[3ed] |
Library routines used to build sendmail and its companion programs |
libsmdb |
2.2.1.10[3ed] |
Database library used by some programs |
libsmutil |
2.2.1.11[3ed] |
A library of utilities used by all programs |
LICENSE |
2.2.1.12[3ed] |
Terms for using the source and programs |
mail.local |
5.3[3ed] |
Source tree for the |
mailstats |
5.4[3ed] |
Source tree for the |
Makefile |
2.2.1.13[3ed] |
A top-level way to build everything |
makemap |
5.5[3ed] |
Source tree for the |
PGPKEYS |
2.2.1.14[3ed] |
Keys to validate the |
praliases |
5.6[3ed] |
Source tree for the |
README |
2.2.1.15[3ed] |
The top-level guide to what is where |
RELEASE_NOTES |
2.2.1.16[3ed] |
A comprehensive history of |
rmail |
5.7[3ed] |
Source tree for the |
sendmail |
2.2[3ed] |
Source tree for the |
smrsh |
5.8[3ed] |
Source tree for the |
test |
2.2.1.17[3ed] |
Source tree for some security checks |
vacation |
5.9[3ed] |
Source tree for the |
The Build program builds using the
directives that are shown in
Table 2-2 and described in the sections indicated.
These directives are placed into a Build
-input
file, the name of which is specified by the -f
switch to Build
. One part of such a
Build
-input file might look like this:
define(`confENVDEF´, `-DMATCHGECOS=0´) APPENDDEF(`confMAPDEF´, `-DNIS´)
Note that most macros are defined with the define
m4
directive (as in the first line of the
example above), while a few others are standalone. Those that stand
alone (as in the second line of the example above) are indicated in
the table with trailing parentheses.
If an argument to define
or
APPENDDEF
contains a comma, you must double the
half-quotes surrounding it—for example:
define(`confDAEMON_OPTIONS´, ``Name=MTA-v4, Family=inet´Â´)
Here, the second argument to define
contains a
comma, so the entire second argument must begin with two left
half-quotes and end with two right half-quotes.
Table 2-2. Build m4 directives
Directive |
sendmail text reference |
Description |
---|---|---|
APPENDDEF( ) |
2.8.1[3ed] |
Append to an existing definition |
confBEFORE |
2.8.2[3ed] |
Establish files before compiling |
confBLDVARIANT |
2.8.3[3ed] |
Controls variations on objects |
confBUILDBIN |
2.8.4[3ed] |
Location of |
confCC |
2.8.5[3ed] |
The compiler with which to build |
confCCOPTS |
2.8.6[3ed] |
Command-line switches to pass to the compiler |
confCOPY |
2.8.8[3ed] |
The copy command to use |
confDEPEND_TYPE |
2.8.9[3ed] |
How to build |
confDEPLIBS |
2.8.10[3ed] |
Shared object dependencies |
confDONT_INSTALL_CATMAN |
2.8.11[3ed] |
Don’t install preformatted manual pages |
confEBINDIR |
2.8.12[3ed] |
Bin directory for |
confENVDEF |
2.8.13[3ed] |
Pass |
conf_prog_ENVDEF |
2.8.13[3ed] |
Pass |
confFORCE_RMAIL |
2.8.14[3ed] |
Install the |
confGBIN... |
2.8.15[3ed] |
The set-group-id settings |
confHFDIR |
2.8.16[3ed] |
Where to install the |
confHFFILE |
2.8.17[3ed] |
The name of the |
confINCDIRS |
2.8.18[3ed] |
Compiler |
confINC... |
2.8.19[3ed] |
Permissions and locations for installed |
confINSTALL |
2.8.20[3ed] |
Program to install programs and files |
confINSTALL_RAWMAN |
2.8.21[3ed] |
Install unformatted manuals |
confLD |
2.8.22[3ed] |
The linker to use |
confLDOPTS |
2.8.23[3ed] |
Linker options |
confLIB... |
2.8.25[3ed] |
Location and modes for installed library files |
confLIBDIRS |
2.8.26[3ed] |
Linker |
confLIBS |
2.8.27[3ed] |
Linker |
conf_prog_LIBS |
2.8.27[3ed] |
Linker |
confLIBSEARCH |
2.8.28[3ed] |
Automatic library search |
confLIBSEARCHPATH |
2.8.29[3ed] |
Paths to search for libraries |
confLINKS |
2.8.32[3ed] |
What to link to |
confLN |
2.8.30[3ed] |
Program to link files |
confLNOPTS |
2.8.31[3ed] |
Switches for the program to link files |
confMAN... |
2.8.33[3ed] |
How to install manual pages |
confMAPDEF |
2.8.34[3ed] |
Which database libraries to use |
confMBIN... |
2.8.35[3ed] |
Where and how to install |
confMSPQOWN |
2.8.36[3ed] |
Owner of the MSP queue |
confMSP_QUEUE_DIR |
2.8.37[3ed] |
Location of the MSP queue |
confMSP_STFILE |
Section 2.1.1 [V8.13] |
Location of the MSP statistics file |
confNO_HELPFILE_INSTALL |
2.8.40[3ed] |
Prevent installation of the |
confNO_MAN_BUILD |
2.8.41[3ed] |
Prevent formatting of manuals |
confNO_MAN_INSTALL |
2.8.42[3ed] |
Prevent installation of manuals |
confNO_STATISTICS_INSTALL |
2.8.43[3ed] |
Prevent installation of the |
confNROFF |
2.8.33.5[3ed] |
Program to format the manual pages |
confOBJADD |
2.8.44[3ed] |
Extra |
confOPTIMIZE |
2.8.45[3ed] |
How to optimize the compile |
confRANLIB |
2.8.46[3ed] |
The |
confRANLIBOPTS |
2.8.47[3ed] |
Arguments to give the |
confREQUIRE_LIBSM |
2.8.48[3ed] |
Define if |
confSBINDIR |
2.8.49[3ed] |
Root-oriented program directory |
confSBINGRP |
2.8.50[3ed] |
Group for set-user-id programs |
confSBINMODE |
2.8.51[3ed] |
Permissions for set-user-id programs |
confSBINOWN |
2.8.52[3ed] |
Owner for set-user-id programs |
confSHAREDLIB... |
2.8.53[3ed] |
Shared library definitions |
confSHELL |
2.8.54[3ed] |
SHELL= for Makefile |
confSM_OS_HEADER |
2.8.55[3ed] |
Platform-specific |
confSMOBJADD |
2.8.56[3ed] |
Extra |
confSMSRCADD |
2.8.57[3ed] |
Source |
confSONAME |
2.8.58[3ed] |
Shared object ID flag |
conf_prog_SRCADD |
2.8.60[3ed] |
Extra |
conf_prog_OBJADD |
2.8.59[3ed] |
|
confSRCADD |
2.8.60[3ed] |
Source for |
confSRCDIR |
2.8.61[3ed] |
Location of |
confSTDIOTYPE |
2.8.62[3ed] |
Use |
confSTDIR |
2.8.63[3ed] |
Location of the |
confSTFILE |
2.8.64[3ed] |
Name of the |
confSTMODE |
2.8.64[3ed] |
Name of the |
confSTRIP |
2.8.65[3ed] |
Name of the program to strip the binary |
confSTRIPOPTS |
2.8.66[3ed] |
Command-line arguments for the strip program |
confUBINDIR |
2.8.67[3ed] |
Location of user executables |
confUBINGRP |
2.8.68[3ed] |
Group for user executables |
confUBINMODE |
2.8.69[3ed] |
Permissions for user executables |
confUBINOWN |
2.8.70[3ed] |
Ownership of user executables |
PREPENDDEF( ) |
2.8.71[3ed] |
Prepend to an existing definition |
18.222.115.120