summaryrefslogtreecommitdiff
path: root/debian/README.Build
diff options
context:
space:
mode:
Diffstat (limited to 'debian/README.Build')
-rw-r--r--debian/README.Build114
1 files changed, 114 insertions, 0 deletions
diff --git a/debian/README.Build b/debian/README.Build
new file mode 100644
index 0000000..d9f6868
--- /dev/null
+++ b/debian/README.Build
@@ -0,0 +1,114 @@
+ Welcome to the badlands production of Sendmail
+ 2001/08/07 12:00:00
+
+If you're reading this, I'll assume you'd like to build your own private
+copy of sendmail using the Debian supplied version as a starting point.
+
+I've tried (hard) to make this as easy as possible, and would greatly
+appreciate any feedback.
+
+I've built sendmail 8.7.6 - 8.12.0
+on Debian slink - sid with this setup.
+
+I see a few reasons to build sendmail yourself:
+ 1) You want to build the current package on an older/newer Debian release
+ 2) You want to port to a different architecture
+ 3) You want additional features not included in the stock distribution
+ 4) You want to remove features from the stock distribution
+ 5) You want to further customize/patch the stock distribution
+
+First, you'll need to locate, download, and unpack the source from a
+Debian site (which, I guess you've already done that if you are reading this).
+
+Then, what you do depends upon why you're building:
+
+ 1) You want to build the current package on an older/newer Debian release:
+ Hopefully, autoconf will automagically take care of things for you!
+ A) Build the package using whatever tools you're used to:
+ dpkg-buildpackage -rfakeroot -uc -us
+ debuild -rfakeroot -uc -us
+ etc.
+ B) If you get a successful build, great ! install it and enjoy !!!
+ C) If you get any build errors, contact me and we'll figure out what
+ to do... probably will be a simple update to the autoconf setup.
+
+ 2) You want to port to a different architecture:
+ This is pretty much like 1) except that you're more likely to run
+ into problems ;-( Likely error candidates are kernel/library headers
+ and lack of support for desired add-ons (other -dev packages).
+
+ See Known Issues below and Follow the directions for 1) above.
+
+ 3) You want additional features not included in the stock distribution:
+ This should be fairly rare, as the stock distribution includes just
+ about everything !!!
+
+ Follow the directions for 5) below and let me know - I'll most likely
+ add the support to the stock package, especially if it doesn't conflict
+ with other options.
+
+ 4) You want to remove features from the stock distribution:
+ This is likely to be due to some kind of library conflict, or a
+ desire to reduce the package size.
+
+ To remove most features, just make sure you *DO NOT* have the -dev
+ package for that feature installed - autoconf will do the rest !
+ In these cases, Follow the directions for 1) above.
+
+ Otherwise, Follow the directions for 5) below.
+
+ 5) You want to further customize/patch the stock distribution:
+ A) Decide which features you wish to support (LDAP,SASL,TLS, etc.)
+ B) Install the apropriate -dev packages (libssl-dev, etc.)
+ C) Evaluate the following files for updates:
+ debian/build/site.config.m4.in ==> Sendmail compile config
+ debian/cf/ostype/debian.m4.in ==> Common .mc file config
+ debian/cf/domain/debian-msp.m4.in ==> MSP .mc file config
+ debian/cf/domain/debian-mta.m4.in ==> MTA .mc file config
+ D) Examine debian/rules for possible overrides (listed in the
+ header... Don't change debian/rules because it will get replaced
+ by the configure step.
+ E) Create any necessary patches (or contact me for assistance).
+ Patches go in debian/patches/${version}/ and must be able
+ to be applied with -p0 from debian/.. There's almost always
+ at least one existing patch you can peek at for an example.
+ F) Build the package as outlined in 1) above.
+ G) Please pass the patch on to me, with any description you have
+ so that if it is common, it can get added to the Debian stock
+ distribution, and maybe forwarded upstream (with your approval).
+
+Known issues:
+ Arch:
+ arm: 1)
+ m68k: 2)
+ Sendmail:
+ <8.10.0 3)
+ Misc:
+ IPV6 4)
+
+ 1) Shared memory support requires a 2.2.x; x>=19 or 2.4.x kernel to
+ compile on. Runtime support also requires said kernels, but the
+ support can be turned on/off at runtime, so the real constraint
+ is having an appropriate kernel for building on.
+ - Can be overridden via configure option (see top of debia/rules)
+ - Defaulted by a arch test in configure - if you hit this on
+ your arch, let me know and I'll update the test.
+
+ 2) Compiler miss-optimizing long-long values
+ - Supported via a patch making the test variables volatile so
+ the beast builds. I don't know of any runtime problems, but hey...
+
+ 3) Sendmail <8.10.0 will *NOT* compile against libdb3-dev!
+ - Install libdb2-dev for the compilation (db2 and db3 can coexist
+ with newer libc/libdbx packages) - you can then reinstall libdb3-dev
+ if you need it for other things.
+
+ 4) IPV6 support requires the bind-8 developement package (bind-dev)
+ because the libc folk have changed things above and beyond bind-8,
+ and sendmail can't figure out what to do.
+
+PS: This is obviously a *very* rough draft, please let me know how to make
+ it more useful for you!
+
+--
+Rick Nelson (cowboy@debian.org)