When we describe building sendmail, we will refer
to the source directory by the name src. That directory
is the same as the src directory that is shown when you list
the distribution directory:
%cd sendmail-8.8.4%lsFAQ RELEASE_NOTES mail.local rmail KNOWNBUGS cf mailstats smrsh Makefile contrib makemapsrcnote READ_ME doc praliases test
Change into the src directory and look at what is there:
%cd src%lsMakefile collect.c mailq.0 pathnames.h stats.cMakefiles conf.c mailq.1 queue.c sysexits.cREAD_ME conf.h mailstats.h readcf.c sysexits.hTRACEFLAGS convtime.c main.c recipient.c trace.calias.c daemon.c makesendmail savemail.c udb.caliases deliver.c map.c sendmail.0 useful.haliases.0 domain.c mci.c sendmail.8 usersmtp.caliases.5 envelope.c mime.c sendmail.h util.carpadate.c err.c newaliases.0 sendmail.hf version.ccdefs.h headers.c newaliases.1 srvrsmtp.cclock.c macro.c parseaddr.c stab.c
The files whose names end in .0 are pre-formatted manual pages. The files whose names end in .1, .5, and .8 are unformatted. The method to format them for printing is described in ../READ_ME. [3]
[3] Note that the READ_ME here in the src directory is different from the one in the parent directory (../READ_ME), even though they both have the same name.
The files whose names end in .c and .h are the actual source. The makesendmail file is a shell script that makes building easy, and the READ_ME file contains the latest information about building. You should read the latter now. Pay special attention to the section titled OPERATING SYSTEM AND COMPILE QUIRKS. No matter what your operating system, this section probably contains information that is important to you.