get rid of testing explicitly for clang (using ${CC:T:Mclang}) in
individual Makefiles.
Instead, use the following extra macros, for use with clang:
- NO_WERROR.clang (disables -Werror)
- NO_WCAST_ALIGN.clang (disables -Wcast-align)
- NO_WFORMAT.clang (disables -Wformat and friends)
- CLANG_NO_IAS (disables integrated assembler)
- CLANG_OPT_SMALL (adds flags for extra small size optimizations)
As a side effect, this enables setting CC/CXX/CPP in src.conf instead of
make.conf! For clang, use the following:
CC=clang
CXX=clang++
CPP=clang-cpp
MFC after: 2 weeks
compatible with the old version but includes new functionality and bug fixes.
Since it is not part of the NO_SENDMAIL make.conf option, libsmdb and
libsmutil should always be built for vacation's sake.
PR: 15227
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.
Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.
. prototyped and staticized the internal functions while i was here,
. made the thing -Wall clean,
. fixed an error that causes the recipient name to be matched only
for the first characters, as opposed to a full name (wonder why i'm
concerned? Well, one of my login IDs is `j', and i've noticed that
vacation has been sending out replies to all mailing list messages
that had a jkh@ or jmb@ in it :),
. introduced an option -l to list the contents of the database; mucho
useful if you've got (too) many mailing list messages in your inbox
and wanna make sure you don't miss the `important' mails.