Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 1 May 2006 00:41:52 +0300
From:      Giorgos Keramidas <keramida@ceid.upatras.gr>
To:        Duane Whitty <duane@greenmeadow.ca>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Sendmail Compile-Time Configuration - Success
Message-ID:  <20060430214152.GA65668@gothmog.pc>
In-Reply-To: <4454516F.3080904@greenmeadow.ca>
References:  <4451C500.6090304@greenmeadow.ca> <4451C92A.10103@greenmeadow.ca> <4451CD51.5080605@greenmeadow.ca> <20060428163702.GA7220@gothmog.pc> <4454516F.3080904@greenmeadow.ca>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2006-04-30 02:55, Duane Whitty <duane@greenmeadow.ca> wrote:
>Giorgos Keramidas wrote:
>> No, you probably want something similar to the way SASL2 support is
>> compiled into the base-system version of Sendmail.  In my `make.conf'
>> I have the following:
>>
>>     SENDMAIL_CFLAGS=        -I/usr/local/include -DSASL=2
>>     SENDMAIL_LDFLAGS=       -L/usr/local/lib
>>     SENDMAIL_LDADD=         -lsasl2
>>
>> While adding stuff to these variables please keep in mind that GCC on
>> FreeBSD has a major difference from the default GCC behavior: it does *not*
>> add /usr/local/include to the default include path or /usr/local/lib to the
>> default library search path.  So you will have to add them yourself, as
>> shown above.
>
> Hi,
>
> Thank you Giorgos, this is the right direction.  Your example was most
> fortuitous, maybe even prescient. ;)

Heh!  Sheer luck, sheer luck.

> LDAP support in Sendmail requires that SASL support also be built in.

Great!  I didn't know this, but SASL is one of the examples I could
easily find in /usr/src to copy/ into the reply :-)

> SENDMAIL_CFLAGS=        -I/usr/local/include -DSASL=2 -DLDAPMAP
> SENDMAIL_LDFLAGS=       -L/usr/local/lib
> SENDMAIL_LDADD=         -lsasl2 -lldap -llber
>
> sendmail -d0.1 -bt now includes LDAPMAP and USE_LDAP_INIT

Cool!  Just another useful bit, then, now that you got it all going.

Now you have to make sure you remember to rebuild Sendmail whenever
these libraries change version number.  An easy way to do this is using
something like:

% gothmog:/home/build/src# cat -n ../rebuild-sendmail.sh
%      1  #!/bin/sh
%      2
%      3  DIRS=""
%      4  DIRS="${DIRS} ./bin/rmail"
%      5  DIRS="${DIRS} ./lib/libmilter"
%      6  DIRS="${DIRS} ./lib/libsm"
%      7  DIRS="${DIRS} ./lib/libsmdb"
%      8  DIRS="${DIRS} ./lib/libsmutil"
%      9  DIRS="${DIRS} ./libexec/mail.local"
%     10  DIRS="${DIRS} ./libexec/smrsh"
%     11  DIRS="${DIRS} ./usr.bin/vacation"
%     12  DIRS="${DIRS} ./usr.sbin/editmap"
%     13  DIRS="${DIRS} ./usr.sbin/mailstats"
%     14  DIRS="${DIRS} ./usr.sbin/makemap"
%     15  DIRS="${DIRS} ./usr.sbin/praliases"
%     16  DIRS="${DIRS} ./usr.sbin/sendmail"
%     17
%     18  export MAKEOBJDIRPREFIX=/home/build/obj
%     19
%     20  for dname in ${DIRS} ; do
%     21          ( cd "${dname}" && make clean && make && make install )
%     22          if test $? -ne 0 ; then
%     23                  echo ""
%     24                  echo ">>> FAILED while rebuilding ${dname}"
%     25                  exit 1
%     26          fi
%     27  done
% gothmog:/home/build/src#

I keep this script just one folder upwards of my usual build tree, and
then run it inside `/home/build/src' to rebuild the Sendmail bits.

Have fun,

- Giorgos




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060430214152.GA65668>